/* 八字論命前台樣式（scoped .bazi-app） */
.bazi-app { max-width: 860px; margin: 0 auto; font-size: 16px; line-height: 1.7; }
.bazi-app .bazi-row { display: flex; flex-wrap: wrap; gap: .6em 1.2em; align-items: center; margin: .6em 0; }
.bazi-app label { display: inline-flex; align-items: center; gap: .35em; }
.bazi-app input[type="number"], .bazi-app input[type="text"], .bazi-app select {
	padding: .3em .5em; border: 1px solid #c9b98f; border-radius: 6px; background: #fffdf7; font-size: 1em;
}
.bazi-app input[name="year"] { width: 6em; }
.bazi-adv { margin: .6em 0; color: #666; }
.bazi-adv label { margin-right: 1.2em; }
.bazi-btn {
	display: inline-block; padding: .55em 2.4em; border: 0; border-radius: 8px; cursor: pointer;
	background: #8b1a1a; color: #fff; font-size: 1.05em; letter-spacing: .3em; text-indent: .3em;
}
.bazi-btn:hover { background: #a52a2a; }
.bazi-btn-sm { padding: .25em 1em; font-size: .85em; letter-spacing: .1em; text-indent: 0; }
.bazi-btn-ghost { background: transparent; color: #8b1a1a; border: 1px solid #8b1a1a; }
.bazi-btn-ghost:hover { background: #fdf2f2; }
a.bazi-btn { text-decoration: none; }
.bazi-err { color: #b00020; }
.bazi-loading { color: #888; }

/* 訪客鎖定完整解讀提示 */
.bazi-locked { text-align: center; background: #fdf6ea; border-color: #d8a63f; }
.bazi-locked-icon { font-size: 1.8em; margin-bottom: .2em; }
.bazi-locked h3 { border-left: 0 !important; padding-left: 0 !important; }
.bazi-locked p { max-width: 520px; margin-left: auto; margin-right: auto; color: #555; }
.bazi-locked-nav { display: flex; gap: .6em; justify-content: center; flex-wrap: wrap; margin-top: .8em !important; }

/* 四柱表 */
.bazi-birth { color: #555; margin: 1em 0 .5em; }
.bazi-table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.bazi-col { border: 1px solid #d8c9a3; background: #fffdf7; text-align: center; padding: .6em .3em; vertical-align: top; }
.bazi-col-name { color: #8b1a1a; font-weight: 700; }
.bazi-ss { color: #666; font-size: .85em; }
.bazi-gz span { display: block; font-size: 1.7em; font-weight: 700; line-height: 1.35; }
.bazi-hides { min-height: 2.2em; margin: .3em 0; }
.bazi-hide { display: inline-block; margin: 0 .15em; font-size: .8em; color: #444; }
.bazi-hide i { font-style: normal; color: #999; display: block; font-size: .85em; }
.bazi-meta { font-size: .78em; color: #777; }
.bazi-unknown { color: #999; padding: 2em 0; }

/* 區塊 */
.bazi-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1em; margin-top: 1em; }
.bazi-sec { border: 1px solid #e6dcc0; border-radius: 10px; background: #fffef9; padding: .8em 1em; margin-top: 1em; }
.bazi-sec h3 { margin: 0 0 .5em; font-size: 1.05em; color: #8b1a1a; border-left: 4px solid #8b1a1a; padding-left: .5em; }
.bazi-reading { color: #2e5e2e; }

/* 五行 */
.bazi-wx-row { display: flex; align-items: center; gap: .5em; margin: .25em 0; }
.bazi-wx-label { width: 1.6em; text-align: center; font-weight: 700; }
.bazi-wx-track { flex: 1; background: #f0ead6; border-radius: 4px; height: .9em; overflow: hidden; }
.bazi-wx-bar { height: 100%; border-radius: 4px; }
.bazi-wx-n { width: 1.5em; text-align: right; color: #666; }
.wx-mu { color: #2e7d32; } .bazi-wx-bar.wx-mu { background: #2e7d32; }
.wx-huo { color: #c62828; } .bazi-wx-bar.wx-huo { background: #c62828; }
.wx-tu { color: #8d6e63; } .bazi-wx-bar.wx-tu { background: #8d6e63; }
.wx-jin { color: #b8860b; } .bazi-wx-bar.wx-jin { background: #b8860b; }
.wx-shui { color: #1565c0; } .bazi-wx-bar.wx-shui { background: #1565c0; }
.bazi-chip { display: inline-block; border: 1px solid currentColor; border-radius: 999px; padding: 0 .6em; margin: 0 .15em; font-weight: 700; }

/* 大運 */
.bazi-qiyun { color: #555; }
.bazi-dy-list { display: flex; gap: .5em; overflow-x: auto; padding-bottom: .4em; }
.bazi-dy {
	flex: 0 0 auto; border: 1px solid #d8c9a3; border-radius: 8px; background: #fffdf7;
	padding: .4em .7em; cursor: pointer; text-align: center; font-size: .9em; line-height: 1.5;
}
.bazi-dy b { display: block; font-size: 1.2em; }
.bazi-dy span { display: block; color: #777; font-size: .85em; }
.bazi-dy.on, .bazi-dy:hover { border-color: #8b1a1a; background: #fdf3f3; }
.bazi-ln h4 { margin: .8em 0 .4em; }
.bazi-ln-table { border-collapse: collapse; width: 100%; max-width: 40em; }
.bazi-ln-table th, .bazi-ln-table td { border: 1px solid #e6dcc0; padding: .25em .6em; text-align: center; }
.bazi-ln-table th { background: #f7f1de; }
.bazi-ln-table tr.ln-now { background: #fff8e6; font-weight: 700; }
.ln-ss { font-style: normal; color: #999; font-size: .8em; margin-left: .3em; }
.ln-sui { color: #1a5276; font-size: .88em; }
.ln-note { color: #a0522d; font-size: .85em; }
.bazi-ln-table tr.ln-click { cursor: pointer; }
.bazi-ln-table tr.ln-click:hover td { background: #f9f4e4; }
.ln-more { color: #8b1a1a; font-size: .78em; white-space: nowrap; }
.bazi-ln-table tr.ln-detail td { text-align: left; background: #fffdf7; padding: .8em 1.1em; cursor: default; }
.bazi-ln-table tr.ln-detail p { margin: 0 0 .6em; line-height: 1.85; }
.bazi-ln-table tr.ln-detail p:last-child { margin-bottom: 0; }
.ln-narrate { margin-top: .5em; }
.ln-narrate p { margin: 0 0 .6em; line-height: 1.85; }
.bazi-ln-table td.yun-good { color: #2e7d32; }
.bazi-ln-table td.yun-mid { color: #8d6e63; }
.bazi-ln-table td.yun-bad { color: #c62828; }
.bazi-chip.yun-good-chip { color: #2e7d32; }
.bazi-chip.yun-mid-chip { color: #8d6e63; }
.bazi-chip.yun-bad-chip { color: #c62828; }

/* 時間校正・合沖刑害 */
.bazi-corr { color: #8b5a00; background: #fff8e6; border: 1px solid #eadfb8; border-radius: 6px; padding: .35em .7em; font-size: .9em; }
.bazi-note { color: #999; font-size: .85em; margin: .3em 0 0; }
.bazi-rel { display: inline-block; margin: .2em .8em .2em 0; }
.bazi-rel b { color: #1a5276; }
.bazi-rel-note { color: #777; font-size: .85em; margin-left: .3em; }
.bazi-wx-pw { width: 5.5em; text-align: right; }

/* 神煞 */
.bazi-ss-item { margin: .4em 0; }
.bazi-ss-item b { color: #8b1a1a; }
.bazi-ss-pos { color: #999; font-size: .88em; }
.bazi-ss-item .bazi-reading { margin: .1em 0 .5em; }

/* 每日干支 */
.bazi-daily { border: 1px solid #e6dcc0; border-radius: 10px; background: #fffef9; padding: .9em 1.1em; }
.bazi-daily-head { display: flex; gap: 1em; color: #555; }
.bazi-daily-gz { font-size: 1.15em; margin: .3em 0; }
.bazi-jieqi { margin-left: .8em; color: #8b1a1a; font-weight: 700; }
.bazi-daily-chong { color: #777; font-size: .9em; }
.bazi-daily-yiji { margin-top: .4em; font-size: .95em; }
.bazi-yi b { color: #2e7d32; margin-right: .4em; }
.bazi-ji b { color: #c62828; margin-right: .4em; }

/* 大運評分・合婚 */
.bazi-dy em.bazi-dy-score { display: block; font-style: normal; font-size: .78em; margin-top: .15em; }
.bazi-dy.yun-good em.bazi-dy-score { color: #2e7d32; }
.bazi-dy.yun-mid em.bazi-dy-score { color: #8d6e63; }
.bazi-dy.yun-bad em.bazi-dy-score { color: #c62828; }
.bazi-hehun-side { border: 1px solid #e6dcc0; border-radius: 10px; margin: .6em 0; padding: .4em .9em .7em; }
.bazi-hehun-side legend { color: #8b1a1a; font-weight: 700; padding: 0 .4em; }
.hehun-score { text-align: center; margin: .8em auto; width: 9em; border: 3px solid #8d6e63; border-radius: 50%; padding: 1.1em 0; }
.hehun-score b { display: block; font-size: 2.4em; line-height: 1.1; }
.hehun-score.yun-good { border-color: #2e7d32; color: #2e7d32; }
.hehun-score.yun-mid { border-color: #8d6e63; color: #6d4c41; }
.hehun-score.yun-bad { border-color: #c62828; color: #c62828; }
.bazi-hehun-pillars { font-size: 1.2em; font-weight: 700; letter-spacing: .1em; }
.hehun-plus { color: #2e7d32; margin-left: .4em; }
.hehun-minus { color: #c62828; margin-left: .4em; }

/* 稱骨・終身卦 */
.bazi-verse { color: #6d4c41; font-family: Georgia, "Noto Serif TC", serif; line-height: 1.9; margin: .4em 0; }

/* AI 解讀 */
.bazi-ai-text { background: #f7f4ec; border-radius: 8px; padding: .9em 1.1em; line-height: 1.9; }

/* 紀錄頁 */
.bazi-card { border: 1px solid #e6dcc0; border-radius: 10px; background: #fffef9; margin: .7em 0; padding: .6em .9em; }
.bazi-card-head { display: flex; flex-wrap: wrap; gap: .6em 1em; align-items: center; }
.bazi-card-time { color: #999; font-size: .85em; margin-left: auto; }

@media (max-width: 600px) {
	.bazi-grid { grid-template-columns: 1fr; }
	.bazi-gz span { font-size: 1.35em; }
	.bazi-card-time { margin-left: 0; }
}
