/* Chart-led reading. Shared hall navigation remains in navigation.css. */
.bazi-body{--paper:#eee8da;--ink:#344c47;--muted:#707c6e;--gold:#997c4f;background-color:var(--paper);background-image:radial-gradient(ellipse at 20% 8%,#fcf9ed 0,transparent 62%),linear-gradient(115deg,#eee9dc,#e4e5d8);font-size:18px}
.bazi-body .eyebrow{font-size:12px}.bazi-body .text-button{font-size:16px;min-height:44px}.bazi-body .explore-view{max-width:1220px;padding:20px 32px calc(var(--primary-nav-height,72px) + var(--primary-nav-safe,0px) + 40px)}
.explore-header{max-width:none;border-bottom:1px solid #a4967540;padding-bottom:14px;height:auto;gap:12px}.explore-header>span{font-size:20px;letter-spacing:.1em;color:#536251}
.bazi-body .explore-layout{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(390px,1.12fr);gap:58px;max-width:none;margin:32px auto 0;align-items:start}
.chart-column{position:sticky;top:20px;min-width:0}.chart-context{position:relative;background:radial-gradient(ellipse at top,#fffdf3ad,transparent 80%);padding:20px 18px 12px;border:1px solid #a6966a60;border-radius:4px 22px 4px 22px;box-shadow:inset 0 0 0 5px #f9f5e87a,0 8px 30px #67745909}
.chart-context:before,.chart-context:after{content:'';position:absolute;width:24px;height:24px;border-color:#a18c5b80;pointer-events:none}.chart-context:before{left:8px;top:8px;border-left:1px solid;border-top:1px solid;border-color:#a18c5b80}.chart-context:after{right:8px;bottom:8px;border-right:1px solid;border-bottom:1px solid;border-color:#a18c5b80}
.chart-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px}.chart-heading>span{font-size:22px;letter-spacing:.08em}.chart-heading button{border:0;background:none;padding:7px 0;font-size:14px;color:#7c795e}
.bazi-body .position-strip{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;max-width:none;margin:0;padding:0;border:0}
.compass-pillar{min-width:0;border-radius:40px 40px 6px 6px;transition:background .2s}.compass-pillar.is-pillar-active{background:#af9c6b18;outline:1px solid #aa936553}
.compass-pillar-title{position:relative;z-index:2;display:block;width:100%;border:0;background:none;color:#6c705c;padding:6px 0 9px;font-size:17px}.compass-pillar-title span{font:14px var(--sans);color:#9e8b65;margin-left:2px}
.compass-cell{position:relative;text-align:center;margin-bottom:6px}.bazi-body .position-button{width:100%;min-height:72px;border:1px solid transparent;border-radius:3px 11px 3px 11px;padding:9px 0 5px;gap:6px;background:#faf7ee44;z-index:2}
.bazi-body .position-button strong{font:42px/1.1 SimSun,serif}.compass-noun{font-size:15px;color:#7c8170;letter-spacing:.08em}.bazi-body .position-button[aria-current=true]{border-color:#859276;background:linear-gradient(135deg,#fefcf1,#dce2cf);box-shadow:inset 0 0 0 3px #faf7e9b0,0 4px 10px #6073590b}.bazi-body .position-button.is-related{border-color:#ac855b;background:#efe0c54f}.bazi-body .position-button.is-related:after{display:none}
.compass-self{position:absolute;top:2px;right:2px;border:1px solid #a55d4980;padding:2px;color:#a55d49;font-size:13px;background:#f6f1df}
.compass-position{position:relative;z-index:2;border:0;border-bottom:1px dotted #9b896080;background:none;color:#777a66;padding:4px 7px;font-size:14px;min-height:30px}.compass-position:hover{color:#8e4b34;border-color:currentColor}
#compass-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:3}#compass-lines path{stroke:#ab7747;stroke-width:2;fill:none;pointer-events:stroke;cursor:pointer;filter:drop-shadow(0 1px 1px #fff8)}#compass-lines path:hover,#compass-lines path:focus{stroke-width:4;stroke-dasharray:none;outline:none}
.compass-hint{min-height:24px;font-size:14px;line-height:1.65;color:#7a775f;text-align:center;margin:12px 0 0}.compass-hint button{border:0;background:none;padding:0;font-size:inherit;line-height:inherit;color:#795d3e}
.bazi-body .scene-section{position:relative;top:auto;margin-top:18px;min-width:0;align-self:auto}.bazi-body .scene-caption,.bazi-body .scene-section:has(#focus-model) .scene-caption{position:relative;left:auto;top:auto;margin:0 10px;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.bazi-body .scene-caption h1{font-size:25px;letter-spacing:.08em;margin:0}.bazi-body .scene-caption .eyebrow{font-size:15px;letter-spacing:.03em}.bazi-body .scene-caption>span:last-child{font-size:14px;color:#7c816d}
.bazi-body .scene-stage,.bazi-body .scene-section:has(#focus-model) .scene-stage{aspect-ratio:2;max-height:235px;min-height:155px;margin:4px 0 0;overflow:hidden}.bazi-body .scene-stage iframe,.bazi-body .scene-section:has(#focus-model) .scene-stage iframe{height:150%;top:-23%;mask-image:radial-gradient(ellipse at 50% 51%,#000 30%,#000e 52%,transparent 76%)}.scene-halo{display:none}.bazi-body .scene-tools{gap:12px;margin-top:-4px;font-size:14px}.bazi-body .scene-tools .text-button{font-size:14px}
.bazi-body .hidden-stems{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin:5px 0}.hidden-caption{font-size:15px;color:#7a7d66;width:100%;text-align:center}.bazi-body .hidden-stems button{display:flex;align-items:center;gap:6px;border:1px solid #b3a37c70;padding:8px 12px;font-size:16px;background:#fbf7e799;border-radius:3px}.bazi-body .hidden-stems b{font:23px SimSun,serif}.bazi-body .hidden-stems .is-selected{border-color:#77846a;background:#dce3cf}
.bazi-body .reading-section{position:relative;padding:8px 0 0;min-width:0}.focus-breadcrumb{font-size:15px;color:#7f795f;letter-spacing:.04em;padding-bottom:20px;border-bottom:1px solid #a9966c45;margin-bottom:24px}.bazi-body .lesson-head{gap:10px;font-size:16px}.bazi-body .small-seal{font-size:18px;padding:5px;border-color:#a4654b99;color:#a4654b}.bazi-body #lesson-kicker{font-size:15px;color:#8a7c61}.bazi-body .reading-section>h2{font-size:clamp(26px,2.5vw,33px);font-weight:400;line-height:1.45;letter-spacing:.04em;margin:16px 0 24px;color:#304a42}
.bazi-body .lesson-selector{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 20px}.bazi-body .lesson-selector button{position:relative;min-height:47px;border:1px solid #a998725c;background:linear-gradient(130deg,#faf7eac2,#e7e7d8a8);color:#65725d;font-size:18px;padding:10px 9px;border-radius:2px 9px 2px 9px;box-shadow:inset 0 0 0 3px #fff9ed5e;letter-spacing:.04em}.bazi-body .lesson-selector button.is-active{background:linear-gradient(125deg,#4b685a,#324e47);color:#f3eed8;border-color:#7a8862;box-shadow:inset 0 0 0 3px #b5bb8c25,0 3px 8px #28443712}.lesson-selector button.is-active:after{content:'◆';font-size:8px;position:absolute;right:6px;top:50%;transform:translateY(-50%);color:#d1ba84}
.bazi-body .scene-detail-selector{display:block;margin:4px 0 22px;max-height:266px;overflow:auto;border-top:1px solid #a3916a4f;border-bottom:1px solid #a3916a4f;padding:10px 0;scrollbar-width:thin;scrollbar-color:#a6ad97 transparent}.fact-list-heading{display:flex;justify-content:space-between;font-size:16px;margin:0 3px 10px;color:#68725f}.fact-list-heading span{color:#928261;font-size:14px}.bazi-body .fact-choice{display:flex;width:100%;flex-direction:column;gap:7px;padding:12px 14px;margin:0 0 6px;text-align:left;border:1px solid transparent;border-left:2px solid #a3997a55;background:#faf8ec5c;border-radius:0;font-size:17px;line-height:1.55}.fact-roles em{font-style:normal;color:#9c8058;margin:0 4px}.fact-description{display:flex;justify-content:space-between;color:#8c8066;font-size:14px}.bazi-body .fact-choice.is-active{border-color:#98a184;border-left-color:#566f59;background:#dce3d381;color:#2f4e41}
.relation-location{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:16px 0 20px;border-bottom:1px solid #b4a17a44;margin-bottom:18px}.location-label{width:100%;font-size:14px;color:#8b7d61}.relation-location strong{font-size:19px;font-weight:400;line-height:1.5}.relation-location strong>span{display:block;color:#7f8571;font-size:15px}.location-link{font-size:14px;color:#a07b50}
.bazi-body .reading-tabs{display:flex;gap:26px;border-bottom:1px solid #a9987047;margin:14px 0 24px}.bazi-body .reading-tabs button{padding:10px 0 12px;font-size:18px;background:transparent;border:0;border-bottom:2px solid transparent;color:#8b8b75}.bazi-body .reading-tabs button[aria-selected=true]{color:#405c4d;border-bottom-color:#7a8c6b}
.bazi-body .reading-content{font-size:20px;line-height:1.95;color:#4b5d50;min-height:130px}.bazi-body .reading-content p{font-size:20px;line-height:1.95;margin:0 0 18px}.bazi-body .reading-content h3{font-size:23px;font-weight:400;line-height:1.6;margin:10px 0 15px;color:#425847}.recognition-equation{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:12px 0 25px;color:#5d6d59}.recognition-equation b{font:44px SimSun,serif}.recognition-equation>span{font-size:16px;color:#8b8167}.recognition-equation strong{font-size:28px;font-weight:400;color:#425b4d}
.bazi-body .reading-content .branch-guide,.bazi-body .reading-content .reading-intro{font-size:17px;color:#7a806d}.bazi-body .continue-life{display:block;text-align:left;width:100%;background:linear-gradient(100deg,#d9dfcbd9,#f6f0ddad);border:1px solid #a39b7470;box-shadow:inset 0 0 0 3px #f7f3e96e;padding:14px 18px;font-size:19px;line-height:1.65;color:#4c6451;border-radius:2px 12px 2px 12px;margin:18px 0}.life-bridge{margin:30px 0 16px;padding-top:22px;border-top:1px solid #b2a17a55}.bazi-body .life-bridge p{font-size:17px;color:#7b806c}.subject-nav{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0 22px}.subject-nav button{font-size:17px;line-height:1.5;border:1px solid #a99e7d6b;background:#faf5e68c;padding:9px 13px;border-radius:2px;color:#66715c}.subject-nav button.is-active{background:#586d56;color:#fff5df;border-color:#586d56}.passage-category{font-size:15px;letter-spacing:.06em;color:#9b8054}.life-passage{padding:20px 0 25px;border-bottom:1px solid #a99b7644}.life-passage:first-of-type{padding-top:4px}.identity-first{border-left:2px solid #b49a6580;padding-left:18px}.bazi-body .identity-first p{font-size:20px;color:#3c5547}.original-answer{color:#78816c;margin:18px 0 0}.original-answer summary{cursor:pointer;font-size:16px;padding:8px 0;list-style:none}.original-answer summary span{float:right}.original-answer[open] summary{margin-bottom:12px}.bazi-body .original-answer p{font-size:18px;color:#6c7763}.deeper-questions{display:flex;flex-direction:column;margin-top:25px;gap:12px}.deeper-questions button{border:0;border-bottom:1px solid #a497704a;background:none;font-size:18px;text-align:left;padding:12px 0;color:#6a765e}
.bazi-body .lesson-footer button{font-size:15px;padding:14px 0}.bazi-body .journey-footer{margin-top:25px;padding-top:18px;border-top:1px solid #a9967544;gap:8px}.bazi-body .journey-footer>span{font-size:14px}.bazi-body .next-step{font-size:17px}.bazi-body .home-view{padding-bottom:calc(var(--primary-nav-height,72px) + 40px)}.bazi-body .cell-noun{visibility:visible;font-size:17px}.bazi-body .pillar-title{font-size:17px}.bazi-body .chart-caption{font-size:17px}.bazi-body .scope-note,.bazi-body .scope-note button{font-size:14px}.bazi-body .exploration-kinds{font-size:17px}.bazi-body .score-invitation-copy small{font-size:14px}
@media(max-width:850px){
 .bazi-body .explore-view{padding:12px 18px calc(var(--primary-nav-height,72px) + var(--primary-nav-safe,0px) + 28px)}.explore-header>span{font-size:18px}.explore-header .text-button{font-size:15px}.bazi-body .explore-layout{display:contents}.chart-column{display:contents}.chart-context{position:sticky;top:0;z-index:8;margin:16px 0 0;padding:10px 12px 8px;border-radius:3px 15px 3px 15px;background:linear-gradient(120deg,#f4efdf,#e7e7d8);box-shadow:inset 0 0 0 4px #fbf7eb7a,0 8px 22px #39493312}.chart-heading{margin-bottom:3px}.chart-heading>span{font-size:18px}.chart-heading button{font-size:13px;padding:4px 0}.bazi-body .position-strip{gap:9px}.compass-pillar-title{font-size:15px;padding:0 0 4px}.compass-cell{margin:0}.bazi-body .position-button{min-height:46px;padding:4px 0;flex-direction:row;justify-content:center;gap:5px;border-radius:2px 7px 2px 7px}.bazi-body .position-button strong{font-size:29px}.compass-noun{font-size:13px;letter-spacing:0;writing-mode:vertical-rl;line-height:1.1}.compass-self{font-size:10px;top:-2px;right:-2px}.compass-position{font-size:13px;padding:1px 5px;min-height:24px}.compass-hint{font-size:13px;line-height:1.5;margin:5px 0 0;min-height:20px}.bazi-body .scene-section{margin-top:20px}.bazi-body .scene-caption{gap:8px}.bazi-body .scene-caption h1{font-size:24px}.bazi-body .scene-stage,.bazi-body .scene-section:has(#focus-model) .scene-stage{min-height:155px;max-height:190px;aspect-ratio:2}.bazi-body .reading-section{padding-top:16px}.focus-breadcrumb{margin-bottom:18px;padding-bottom:14px}.bazi-body .reading-section>h2{font-size:27px;margin:14px 0 20px}.bazi-body .reading-content p{font-size:19px}.bazi-body .scene-detail-selector{max-height:230px}.bazi-body .lesson-selector button{font-size:18px}.bazi-body .reading-tabs button{font-size:18px}.bazi-body .journey-footer .text-button,.bazi-body .next-step{font-size:15px}.life-passage{scroll-margin-top:240px}.bazi-body .book-page{padding:24px}
}
@media(max-width:360px){.bazi-body .explore-view{padding-left:12px;padding-right:12px}.chart-heading button{font-size:12px}.bazi-body .lesson-selector button{font-size:17px}.compass-noun{display:none}.explore-header>span{font-size:16px}.bazi-body .reading-content p{font-size:18px}}
.bazi-body .question-options{display:grid;grid-template-columns:1fr;gap:14px;overflow:visible;padding:0}
.bazi-body .question-options .question-option{display:flex;align-items:center;gap:16px;white-space:normal;text-align:left;margin:0;padding:19px 18px;min-height:91px;border-radius:3px 17px 3px 17px;background:linear-gradient(115deg,#fffbeddb,#e1e7d5b8);border:1px solid #a392646b;box-shadow:inset 0 0 0 4px #fffced69,0 5px 16px #40554809}
.question-mark{flex-shrink:0;display:grid;place-items:center;width:42px;height:48px;border:1px solid #a28c6066;border-radius:3px 9px;color:#8b7048;font:25px SimSun,serif;background:#eee5cb66}
.question-copy{display:flex;flex:1;flex-direction:column;gap:8px}.question-copy strong{font-size:21px;line-height:1.5;font-weight:400;color:#314f44}.question-copy>span{font-size:16px;color:#777860;line-height:1.5}.question-arrow{font-size:23px;color:#8d774d}
.bazi-body .question-option:hover{border-color:#74896a;background:#e5ead9;transform:translateY(-1px)}
.bazi-body .question-back-only{display:block}.bazi-body .lesson-selector .question-back{display:block;background:none;border:0;border-bottom:1px solid #a998725c;border-radius:0;box-shadow:none;margin:0;padding:10px 0;text-align:left;font-size:17px;min-height:44px;color:#6d755f}
.is-question-stage .reading-section{background:none}.is-question-stage .focus-breadcrumb{margin-bottom:16px}.is-question-stage .scene-detail-selector{max-height:none}
@media(max-width:850px){.is-question-stage .chart-context{position:relative}.bazi-body .question-options .question-option{padding:16px 13px;gap:12px;min-height:84px}.question-copy strong{font-size:20px}.question-copy>span{font-size:16px}.is-question-stage .reading-section{padding-top:28px}}
@media(prefers-reduced-motion:reduce){.bazi-body *{animation:none!important;transition:none!important}}

#compass-lines marker polygon{fill:#ab7747;stroke:none}
