/* =========================================================
   20260919 生活金建議功能（process_getTool134F.php step1 / up_tool134Fbottomdata）
   與 檢視資料 › 生活金（process_historydata.php is_now=5, area=0）
   前綴 lf_；所有 JS 依賴的 id（field_x / field_aeft / show_field_upx …）不變
   ========================================================= */

.lf_wrap{ padding:12px 10px 16px; font-family:Arial, "Microsoft JhengHei", sans-serif; color:#1f2937; }

/* 頂部提示 */
.lf_notice{
	display:flex; align-items:flex-start; gap:10px;
	margin:0 0 14px; padding:12px 16px;
	border-radius:10px; background:#fff8e1; border-left:4px solid #f5b400;
	color:#8a5a00; font-size:13.5px; line-height:1.75; letter-spacing:.3px;
}
.lf_notice > i{ flex:0 0 auto; margin-top:3px; font-size:16px; color:#e07b00; }
.lf_notice b{ color:#7a4a00; }

/* 主體：左比較表 / 右目標卡 */
.lf_grid{ display:grid; grid-template-columns:minmax(0, 1.4fr) minmax(300px, 1fr); gap:14px; align-items:start; }

.lf_card{
	background:#fff; border:1px solid #e3e8ee; border-radius:12px;
	box-shadow:0 2px 8px rgba(0,0,0,.04); overflow:hidden;
}
.lf_card_head{
	display:flex; align-items:center; gap:8px;
	padding:12px 16px; border-bottom:1px solid #eef1f5;
	font-size:15px; font-weight:700; color:#111827;
}
.lf_card_head > i{ color:var(--main-color); }
.lf_card_head .lf_sub{ margin-left:auto; font-size:12px; font-weight:500; color:#9aa3af; }

/* 比較表 */
.lf_table{ width:100%; border-collapse:separate; border-spacing:0; font-size:14px; }
.lf_table th{
	padding:10px 14px; background:#f7f9fb; border-bottom:1px solid #e3e8ee;
	color:#6b7280; font-size:12.5px; font-weight:700; letter-spacing:.3px; text-align:right; white-space:nowrap;
}
.lf_table th:first-child{ text-align:left; }
.lf_table td{ padding:11px 14px; border-bottom:1px solid #eef1f5; vertical-align:middle; text-align:right; font-variant-numeric:tabular-nums; }
.lf_table td:first-child{ text-align:left; }
.lf_table tr:last-child td{ border-bottom:0; }
.lf_table tr:hover td{ background:#f9fbfd; }
.lf_label{ display:inline-flex; align-items:center; gap:6px; font-weight:600; color:#374151; }
.lf_table .info-tag, .lf_table .field_info{
	margin:0; padding:1px 7px; border-radius:999px;
	background:#e6f4fa; color:#006b9a; font-size:11px; font-weight:600; box-shadow:none; gap:3px;
}
.lf_table .info-tag:hover, .lf_table .field_info:hover{ background:var(--main-color); color:#fff; }
.lf_table .info-tag i, .lf_table .field_info i{ font-size:11px; }
.lf_now{ font-weight:600; color:#374151; }
.lf_up{ font-weight:700; color:var(--main-color); }
.lf_up:empty:before, .lf_now:empty:before{ content:'—'; color:#c4ccd6; font-weight:400; }
.lf_ref td{ background:#fbfcfd; }
.lf_ref .lf_now{ color:#b45309; }
.lf_dim{ color:#c4ccd6; }

/* 目標卡 */
.lf_goal{ padding:16px; }
.lf_goal_label{ display:flex; align-items:center; gap:6px; font-size:13px; font-weight:600; color:#374151; margin:0 0 8px; }
.lf_goal_label .info-tag, .lf_goal_label .field_info{
	margin:0; padding:1px 7px; border-radius:999px;
	background:#e6f4fa; color:#006b9a; font-size:11px; font-weight:600; box-shadow:none; gap:3px;
}
.lf_goal_input{ position:relative; }
.lf_goal_input input.form_input_v1{
	width:100%; height:48px; padding:0 14px 0 52px;
	border:2px solid var(--main-color); border-radius:10px; background:#fff;
	font-size:22px; font-weight:700; color:#111827; text-align:left;
	font-variant-numeric:tabular-nums; box-shadow:none;
}
.lf_goal_input input.form_input_v1:focus{ box-shadow:0 0 0 4px rgba(0,122,176,.15); }
.lf_goal_input > span{ position:absolute; left:14px; top:50%; transform:translateY(-50%); font-size:14px; font-weight:700; color:#9aa3af; }
.lf_goal_hint{ margin:8px 0 0; font-size:12px; color:#6b7280; line-height:1.6; }
.lf_quick{ display:flex; gap:6px; flex-wrap:wrap; margin:12px 0 0; }
.lf_quick_l{ width:100%; font-size:12px; color:#9aa3af; margin-bottom:-2px; }
.lf_chip{
	display:inline-flex; align-items:center; gap:5px;
	height:30px; padding:0 11px; border-radius:999px;
	border:1px solid #d9dee5; background:#fff; color:#374151;
	font-size:12.5px; font-weight:600; cursor:pointer; white-space:nowrap; transition:all .15s;
}
.lf_chip b{ color:var(--main-color); font-variant-numeric:tabular-nums; }
.lf_chip:hover{ border-color:var(--main-color); color:var(--main-color); background:#f4fafd; }
.lf_chip.ref{ border-color:#f3d7a5; }
.lf_chip.ref b{ color:#b45309; }
.lf_chip.ref:hover{ border-color:#e07b00; background:#fff7e8; color:#b45309; }

/* 摘要指標（達成年齡） */
.lf_kpis{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:10px; margin:14px 0 0; }
.lf_kpi{ padding:10px 12px; border-radius:10px; background:#f7f9fb; border:1px solid #eef1f5; }
.lf_kpi span{ display:block; font-size:11.5px; color:#6b7280; margin-bottom:4px; }
.lf_kpi b{ display:block; font-size:15px; font-weight:700; color:#111827; line-height:1.35; }
.lf_kpi b:empty:before{ content:'—'; color:#c4ccd6; font-weight:400; }
.lf_kpi.accent b{ color:var(--main-color); }

/* 分析摺疊（覆寫 clean-accordion） */
.lf_wrap .clean-accordion{
	max-width:none; margin:14px 0 0;
	border:1px solid #e3e8ee; border-radius:12px; box-shadow:none; font-family:inherit;
}
.lf_wrap .acc-header{ padding:11px 16px; font-size:14px; color:#374151; }
.lf_wrap .acc-header:hover{ background:#f7f9fb; }
.lf_wrap .acc-icon{
	width:26px; height:26px; margin-right:10px; border-radius:8px;
	background:#f1f4f8; color:var(--main-color); font-size:10px;
	display:inline-flex; align-items:center; justify-content:center;
}
.lf_wrap .acc-content{ background:#fff; }
.lf_wrap .acc-content > .caption_block{ background:#fff; color:#4b5563; padding:4px 16px 16px; letter-spacing:.3px; line-height:1.8; }
.lf_principle{
	margin:0 0 12px; padding:10px 14px; border-radius:8px;
	background:#e6f4fa; color:#0b5d84; font-size:13.5px; line-height:1.7;
}
.lf_sec_title{
	display:flex; align-items:center; gap:8px;
	margin:14px 0 8px; font-size:14.5px; font-weight:700; color:#111827;
}
.lf_sec_title:before{ content:''; width:4px; height:15px; border-radius:2px; background:var(--main-color); }
.lf_wrap .msgshow, .lf_wrap #target_anyresult{
	margin:0; padding:12px 14px; border-radius:8px;
	background:#fff8e1; border-left:3px solid #f5b400; color:#6b5200;
	font-size:13.5px; line-height:1.75; letter-spacing:.3px;
}
.lf_wrap .table_title{ display:none; }
.lf_wrap #tool134F_block{ padding:0 !important; background:transparent !important; }
.lf_wrap #tool134F_block > center{ text-align:left; }
.lf_wrap #tool134F_block .caption_block{
	margin:0 0 10px; padding:10px 14px; border-radius:8px;
	background:#f7f9fb; color:#4b5563; font-size:13px; line-height:1.7;
}
.lf_wrap #tool134F_block h3{ display:none; }

/* 年度表（rwdv1 柔化） */
.lf_wrap .table_blcok{ margin:0 0 6px; border:1px solid #e3e8ee; border-radius:10px; background:#fff; }
.lf_wrap .rwdv1_table{ border:0; margin:0; min-width:100%; }
.lf_wrap .tablev1_thead{ background:#f7f9fb; color:#6b7280; font-size:12.5px; font-weight:700; }
.lf_wrap .tablev1_th{ padding:9px 8px; border-right:1px solid #eceff3; border-bottom:1px solid #e3e8ee; }
.lf_wrap .tablev1_tr{ border-top:1px solid #f1f4f8; }
.lf_wrap .tablev1_tr:nth-child(even){ background:#fff; }
.lf_wrap .tablev1_tr:hover{ background:#f4fafd; }
.lf_wrap .tablev1_td{ padding:8px; border-right:1px solid #f1f4f8; font-size:13.5px; font-variant-numeric:tabular-nums; }
.lf_wrap .tablev1_td .mob_r{ text-align:right; }
.lf_wrap .tablev1_td:first-child .mob_r{ text-align:center; font-weight:600; }

/* 底部按鈕（#footerv3_btn 內） */
#footerv3_btn .lf_footer{ display:inline-flex; align-items:center; gap:10px; }
#footerv3_btn .lf_footer .sendv2_btn{
	display:inline-flex !important; align-items:center; gap:6px;
	min-width:0; height:40px; padding:0 20px; margin:0; border-radius:8px;
	background:var(--main-color); color:#fff; font-size:14.5px; font-weight:600; line-height:1; letter-spacing:0;
	box-shadow:0 2px 6px rgba(0,122,176,.25);
}
#footerv3_btn .lf_footer .sendv2_btn:hover{ background:#00699a; }
#footerv3_btn .lf_footer .field_info{
	margin:0; padding:2px 9px; border-radius:999px;
	background:#eef1f5; color:#6b7280; font-size:12px; font-weight:600; box-shadow:none;
}
#footerv3_btn .lf_footer .field_info:hover{ background:var(--main-color); color:#fff; }

/* 空狀態 */
.lf_empty{
	padding:44px 20px; text-align:center;
	border:1px dashed #cfd6de; border-radius:12px; background:#fbfcfd; color:#6b7280;
}
.lf_empty i{ font-size:34px; color:#c4ccd6; display:block; margin-bottom:10px; }
.lf_empty h4{ margin:0 0 6px; font-size:16px; font-weight:700; color:#374151; }
.lf_empty p{ margin:0; font-size:13.5px; line-height:1.7; }

/* 檢視資料（唯讀） */
.lf_view .lf_goal_value{ font-size:22px; font-weight:700; color:#111827; font-variant-numeric:tabular-nums; }

@media screen and (max-width: 900px)
{
	.lf_grid{ grid-template-columns:minmax(0,1fr); }
}
