:root{
  --noir:#0b241b;
  --noir-2:#123127;
  --ink:#17231d;
  --ivory:#eee9dd;
  --paper:#f8f5ec;
  --stone:#d8d2c3;
  --muted:#6d746d;
  --muted-dark:#a8a39a;
  --gold:#ae9361;
  --gold-soft:#d5c39a;
  --burgundy:#365f4c;
  --burgundy-dark:#1e4434;
  --line:rgba(25,20,16,.14);
  --line-dark:rgba(255,255,255,.12);
  --shadow:0 28px 80px rgba(18,14,10,.12);
  --serif:"Noto Serif TC","Cormorant Garamond",serif;
  --sans:"Noto Sans TC",system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--noir)}
body{margin:0;color:var(--ink);font-family:var(--sans);background:var(--ivory);overflow-x:hidden}
button,input,select{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
[hidden]{display:none!important}
::selection{background:rgba(100,19,28,.18)}

.noise{position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.65'/%3E%3C/svg%3E")}
.scroll-progress{position:fixed;left:0;right:0;top:0;height:2px;z-index:1001;background:transparent}.scroll-progress span{display:block;width:0;height:100%;background:var(--gold)}

.site-header{position:fixed;z-index:1000;left:0;right:0;top:0;display:flex;align-items:center;justify-content:space-between;height:82px;padding:0 5vw;color:#f4efe5;border-bottom:1px solid rgba(255,255,255,.11);background:linear-gradient(180deg,rgba(8,9,10,.72),rgba(8,9,10,.24));backdrop-filter:blur(12px)}
.brand{display:flex;align-items:center;gap:14px;min-width:0}.brand-seal{width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(215,194,154,.62);font-family:var(--serif);font-size:16px;color:var(--gold-soft)}.brand-copy{display:flex;flex-direction:column;line-height:1.05}.brand-copy strong{font-family:"Cormorant Garamond",var(--serif);font-size:20px;letter-spacing:.18em;font-weight:600}.brand-copy small{margin-top:6px;font-size:10px;letter-spacing:.12em;color:#bcb7ae}
.main-nav{display:flex;align-items:center;gap:30px;font-size:12px;letter-spacing:.08em}.main-nav a{position:relative;color:#e8e3d9}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--gold);transition:.28s}.main-nav a:hover:after{right:0}.nav-cta{border:1px solid rgba(215,194,154,.62);background:transparent;color:#f3ead8;padding:11px 18px;letter-spacing:.08em}.menu-toggle{display:none;border:0;background:transparent;color:#fff}

.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;background:var(--noir);color:white;padding:140px 6vw 92px}.hero-scene{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(5,6,7,.76) 0%,rgba(5,6,7,.44) 38%,rgba(5,6,7,.08) 67%,rgba(5,6,7,.22) 100%),url('./assets/ziwei-night.svg');background-size:cover;background-position:center center;transform:scale(1.015)}.hero-vignette{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,5,6,.18),transparent 38%,rgba(4,5,6,.58)),radial-gradient(circle at 76% 28%,rgba(192,157,96,.08),transparent 24%)}
.hero-copy{position:relative;z-index:2;max-width:910px}.eyebrow{margin:0 0 18px;font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase}.eyebrow.light{color:var(--gold-soft)}.eyebrow.dark{color:var(--burgundy)}
.hero h1{margin:0;font-family:var(--serif);font-weight:500;font-size:clamp(48px,6.8vw,104px);line-height:1.12;letter-spacing:-.055em;text-wrap:balance}.hero h1 span{color:#e7d8ba;font-weight:400}.hero-lead{max-width:760px;margin:28px 0 0;color:#d3cec5;font-family:var(--serif);font-size:clamp(17px,1.5vw,22px);line-height:1.95;letter-spacing:.025em}.hero-actions{display:flex;gap:12px;margin-top:36px;flex-wrap:wrap}
.btn{appearance:none;border-radius:0;border:1px solid transparent;min-height:46px;padding:0 23px;display:inline-flex;align-items:center;justify-content:center;letter-spacing:.075em;font-size:13px;transition:transform .22s,background .22s,border-color .22s,color .22s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:#f4efe4;color:#12100e;border-color:#f4efe4}.btn-primary:hover{background:white}.btn-ghost{color:#f4efe4;border-color:rgba(244,239,228,.38);background:rgba(255,255,255,.015)}.btn-ghost:hover{border-color:#f4efe4}.btn-ink{background:var(--ink);color:white;border-color:var(--ink)}.btn-gold{background:transparent;color:var(--gold-soft);border-color:rgba(215,194,154,.62)}.btn-gold:hover{background:rgba(215,194,154,.08)}.wide{width:100%}
.hero-notes{display:flex;gap:0;margin-top:48px;border-top:1px solid rgba(255,255,255,.16);max-width:900px}.hero-notes span{padding:15px 26px 0 0;margin-right:26px;border-right:1px solid rgba(255,255,255,.12);font-size:11px;color:#b7b0a5;letter-spacing:.04em}.hero-notes span:last-child{border-right:0}.hero-scroll{position:absolute;z-index:2;right:5vw;bottom:56px;display:flex;align-items:center;gap:12px;color:#a9a399;font-size:9px;letter-spacing:.24em}.hero-scroll i{display:block;width:62px;height:1px;background:rgba(255,255,255,.35)}

.section-ivory{background:var(--ivory)}.section-noir{background:var(--noir);color:#f2ede4}.section-shell{width:min(1440px,92vw);margin:0 auto}.editorial-intro{padding:115px 8vw 126px;text-align:center;border-bottom:1px solid var(--line)}.editorial-kicker{font-size:10px;letter-spacing:.26em;color:var(--burgundy);font-weight:600;margin-bottom:24px}.editorial-intro h2{font-family:var(--serif);font-size:clamp(32px,4.1vw,62px);line-height:1.45;font-weight:500;letter-spacing:-.035em;margin:0 auto;max-width:1120px}.editorial-intro p{max-width:870px;margin:30px auto 0;color:#635a51;line-height:2.05;font-family:var(--serif);font-size:17px}

.chart-section,.cycles-section,.method-section{padding:120px 0}.section-heading{max-width:870px;margin-bottom:54px}.section-heading h2{margin:0;font-family:var(--serif);font-size:clamp(38px,4.2vw,64px);line-height:1.2;font-weight:500;letter-spacing:-.045em}.section-heading>p:last-child{margin:20px 0 0;color:#736a61;line-height:1.9;max-width:760px}.section-heading.inverse>p:last-child{color:#bdb6ac}
.workbench-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);gap:26px;align-items:stretch}.birth-card,.chart-summary{background:var(--paper);border:1px solid var(--line);box-shadow:0 16px 50px rgba(44,33,24,.05);padding:40px}.card-overline{font-family:var(--serif);font-size:19px;margin-bottom:28px;padding-bottom:18px;border-bottom:1px solid var(--line)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:9px}.field.span-2{grid-column:span 2}.field span{font-size:11px;letter-spacing:.08em;color:#5c554d}.field input,.field select{height:50px;border:1px solid #cfc7ba;background:#fffdf8;padding:0 14px;color:#1c1814;outline:none;border-radius:0}.field input:focus,.field select:focus{border-color:var(--burgundy);box-shadow:0 0 0 1px var(--burgundy)}.form-note{margin:22px 0 18px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:80px 1fr;gap:15px}.form-note b{font-size:11px;color:var(--burgundy);letter-spacing:.08em}.form-note p{margin:0;font-size:12px;line-height:1.75;color:#766e64}.form-status{min-height:22px;font-size:12px;line-height:1.55;margin-bottom:12px;color:#7b7166}.form-status.ok{color:#45624b}.form-status.error{color:#8d3434}.privacy-mini{font-size:10px;color:#90867a;line-height:1.65;margin:14px 0 0}
.chart-summary{display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#171516,#0c0d0e);color:#f3eee4;position:relative;overflow:hidden}.chart-summary:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle at 70% 30%,rgba(185,154,97,.14),transparent 22%),repeating-radial-gradient(circle at 70% 30%,transparent 0 84px,rgba(215,194,154,.055) 85px 86px)}.summary-empty{position:relative;text-align:center;max-width:360px}.summary-glyph{display:grid;place-items:center;width:74px;height:74px;margin:0 auto 22px;border:1px solid rgba(215,194,154,.48);font-family:var(--serif);font-size:30px;color:var(--gold-soft)}.summary-empty h3{font-family:var(--serif);font-size:28px;font-weight:500;margin:0 0 12px}.summary-empty p{font-size:12px;line-height:1.9;color:#aba59b;margin:0}
.summary-head{position:relative;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:22px;border-bottom:1px solid var(--line-dark)}.summary-title h3{margin:4px 0 10px;font-family:var(--serif);font-size:34px;font-weight:500}.summary-title p{margin:0;color:#aaa39a;font-size:11px}.summary-badge{border:1px solid rgba(215,194,154,.36);padding:8px 10px;color:var(--gold-soft);font-size:10px;white-space:nowrap}.summary-grid{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:24px;border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}.summary-item{padding:16px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);min-width:0}.summary-item span{display:block;color:#8f8980;font-size:10px;margin-bottom:7px}.summary-item b{font-family:var(--serif);font-size:14px;font-weight:500}.mutagen-row{position:relative;display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.mutagen-pill{border:1px solid var(--line-dark);padding:7px 9px;font-size:10px;color:#c4beb4}.mutagen-pill strong{margin-right:5px;color:var(--gold-soft)}

.chart-panel{margin-top:26px;padding:34px;background:#fffdf8;border:1px solid var(--line);box-shadow:var(--shadow)}.panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding-bottom:24px;border-bottom:1px solid var(--line)}.panel-head h3{margin:0;font-family:var(--serif);font-weight:500;font-size:32px}.chart-tools{display:flex;border:1px solid #d3cabc}.chip-btn{border:0;border-right:1px solid #d3cabc;background:transparent;color:#6c635a;padding:9px 15px;font-size:11px}.chip-btn:last-child{border-right:0}.chip-btn.active{background:var(--ink);color:white}.ziwei-grid{margin-top:26px;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,minmax(145px,1fr));gap:1px;background:#c8beb0;border:1px solid #c8beb0;min-height:660px}.palace{position:relative;min-width:0;border:0;background:#fbf8f0;padding:15px;text-align:left;color:var(--ink);overflow:hidden}.palace:hover{background:#f3ede1}.palace.is-soul:before{content:"命";position:absolute;right:8px;bottom:4px;font-family:var(--serif);font-size:48px;color:rgba(100,19,28,.08)}.palace.is-body:after{content:"身";position:absolute;right:14px;top:12px;border:1px solid rgba(100,19,28,.28);color:var(--burgundy);font-size:9px;padding:2px 4px}.palace-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.palace-name{font-family:var(--serif);font-size:15px;font-weight:600}.palace-branch{font-size:9px;color:#8d8378}.major-stars{display:flex;flex-wrap:wrap;gap:6px 9px;margin-top:17px}.star{font-family:var(--serif);font-size:14px;white-space:nowrap;position:relative}.star small{font-family:var(--sans);font-size:8px;margin-left:2px;color:#8c8175}.star-mutagen{font-family:var(--sans);font-style:normal;font-size:8px;margin-left:2px}.mutagen-祿,.mutagen-禄{color:#7b5c1b}.mutagen-權,.mutagen-权{color:#7e2d1f}.mutagen-科{color:#31566d}.mutagen-忌{color:#7b3145}.minor-stars{display:flex;flex-wrap:wrap;gap:5px 7px;margin-top:12px;color:#7d7368;font-size:9px;line-height:1.45}.palace-stage,.palace-decade{position:absolute;bottom:8px;font-size:8px;color:#9b9186}.palace-stage{left:10px}.palace-decade{right:10px}.chart-center{grid-row:2/4;grid-column:2/4;background:#171516;color:#eee8dc;display:grid;place-items:center;text-align:center;padding:34px 26px;position:relative;overflow:hidden}.chart-center:before{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(215,194,154,.15);border-radius:50%}.chart-center:after{content:"";position:absolute;width:270px;height:270px;border:1px solid rgba(215,194,154,.09);border-radius:50%}.chart-center>div{position:relative;z-index:1}.center-mark{width:64px;height:64px;border:1px solid rgba(215,194,154,.5);display:grid;place-items:center;margin:0 auto 16px;font-family:var(--serif);font-size:28px;color:var(--gold-soft)}.chart-center h4{font-family:var(--serif);font-size:30px;margin:0 0 12px;font-weight:500;line-height:1.12}.chart-center p{font-size:14px;line-height:1.72;color:#c7beb2;margin:0}.center-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px}.center-chips span{font-size:11px;border:1px solid rgba(255,255,255,.14);padding:6px 8px;color:#ddd5c8}.legend-row{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding-top:18px;font-size:14px;line-height:1.58;color:#6f665d}.legend-row span{display:flex;align-items:center;gap:7px}.dot{width:10px;height:10px;border-radius:50%}.dot-lu{background:#96742b}.dot-quan{background:#933d2f}.dot-ke{background:#52778a}.dot-ji{background:#82405a}.legend-muted{margin-left:auto;color:#8f8579}

.palace-drawer{position:fixed;z-index:1200;right:0;top:0;height:100vh;width:min(460px,94vw);background:#f7f2e9;color:var(--ink);box-shadow:-20px 0 70px rgba(0,0,0,.24);padding:58px 36px 36px;overflow:auto;border-left:1px solid #cfc5b6}.drawer-close{position:absolute;right:20px;top:16px;border:0;background:transparent;font-family:var(--serif);font-size:34px;color:#40372f}.drawer-title{font-family:var(--serif);font-size:42px;font-weight:500;margin:0}.drawer-sub{margin-top:6px;color:#8c8175;font-size:11px}.drawer-section{margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}.drawer-section h4{font-size:11px;color:var(--burgundy);letter-spacing:.12em;margin:0 0 13px}.drawer-star-list{display:flex;flex-wrap:wrap;gap:7px}.drawer-star-list span{border:1px solid #d8cfc2;padding:7px 8px;font-family:var(--serif);font-size:12px;background:#fffaf2}.drawer-copy{font-family:var(--serif);line-height:1.9;color:#5f574f;font-size:14px}

.analysis-section{padding:126px 0 138px;position:relative}.analysis-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 12%,rgba(185,154,97,.09),transparent 28%);pointer-events:none}.analysis-shell{position:relative;border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.analysis-tabs{display:flex;border-bottom:1px solid var(--line-dark)}.analysis-tab{flex:0 0 auto;min-width:200px;padding:18px 24px;border:0;border-right:1px solid var(--line-dark);background:transparent;color:#8f8980;font-family:var(--serif);font-size:15px}.analysis-tab.active{color:#f0e7d8;background:rgba(255,255,255,.025);box-shadow:inset 0 -1px var(--gold)}.analysis-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;border-bottom:1px solid var(--line-dark)}.analysis-state{color:#9e978e;font-size:11px;line-height:1.6}.analysis-content{padding:42px 0 20px;max-width:1080px}.analysis-placeholder{padding:42px 0}.placeholder-rule{display:block;width:44px;height:1px;background:var(--gold);margin-bottom:25px}.analysis-placeholder h3{font-family:var(--serif);font-size:34px;font-weight:500;margin:0 0 14px}.analysis-placeholder p{color:#aaa39a;line-height:1.95;max-width:700px}.report-overview{padding:26px 0 30px;border-bottom:1px solid var(--line-dark)}.report-overview b{font-family:var(--serif);font-size:28px;font-weight:500;color:#eee7da}.report-overview p{margin:10px 0 0;color:#9f988f;font-size:12px;line-height:1.8}.report-section{padding:32px 0;border-bottom:1px solid var(--line-dark)}.report-section:last-child{border-bottom:0}.report-section h3{font-family:var(--serif);font-size:28px;font-weight:500;margin:0 0 14px;color:#eee7da}.report-section p{margin:0;color:#c3bcb2;font-family:var(--serif);font-size:15px;line-height:2}.loading-lines{display:grid;gap:11px;padding:50px 0}.loading-lines span{height:1px;background:linear-gradient(90deg,transparent,rgba(215,194,154,.55),transparent);animation:loading 1.25s infinite}.loading-lines span:nth-child(2){animation-delay:.18s;width:84%}.loading-lines span:nth-child(3){animation-delay:.32s;width:68%}@keyframes loading{0%,100%{opacity:.25;transform:translateX(-2%)}50%{opacity:1;transform:translateX(2%)}}

.cycles-layout{display:grid;grid-template-columns:minmax(340px,.8fr) minmax(0,1.4fr);gap:28px}.decadal-list,.yearly-panel{background:var(--paper);border:1px solid var(--line)}.decadal-item{width:100%;display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:14px;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;padding:17px 18px;color:var(--ink)}.decadal-item:last-child{border-bottom:0}.decadal-item:hover{background:#f2ece1}.decadal-item.active{background:var(--ink);color:white}.decadal-index{font-family:"Cormorant Garamond",serif;color:#9e8a67;font-size:18px}.decadal-main{display:flex;align-items:baseline;gap:9px}.decadal-main b{font-family:var(--serif);font-weight:500}.decadal-main span,.decadal-range{font-size:9px;color:#8d8377}.decadal-item.active .decadal-main span,.decadal-item.active .decadal-range{color:#aaa39b}.yearly-panel{padding:26px}.yearly-head{display:flex;justify-content:space-between;align-items:flex-end;gap:15px;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid var(--line)}.yearly-head h3{font-family:var(--serif);font-size:27px;font-weight:500;margin:0}.yearly-head .summary-badge{color:var(--burgundy);border-color:#cdbfac}.yearly-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#d8cec0;border:1px solid #d8cec0}.year-card{border:0;background:#fffaf2;padding:17px;text-align:left;display:flex;flex-direction:column;gap:5px}.year-card:hover{background:#f1eade}.year-card.is-current{box-shadow:inset 3px 0 var(--burgundy)}.year-card b{font-family:"Cormorant Garamond",var(--serif);font-size:20px;font-weight:500}.year-card span{font-size:9px;color:#81776d}.empty-block{padding:28px;color:#8a8075;font-size:12px;line-height:1.7}

.philosophy-section{background:#5d1119;color:#f6eee4;padding:130px 0;position:relative;overflow:hidden}.philosophy-section:before{content:"";position:absolute;right:-200px;top:-340px;width:700px;height:700px;border:1px solid rgba(231,216,186,.12);border-radius:50%;box-shadow:0 0 0 120px rgba(231,216,186,.025),0 0 0 240px rgba(231,216,186,.018)}.philosophy-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.18);border-left:1px solid rgba(255,255,255,.18);position:relative}.philosophy-card{min-height:390px;padding:34px;border-right:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);display:flex;flex-direction:column}.philosophy-number{font-family:"Cormorant Garamond",serif;font-size:26px;color:#d6b987}.philosophy-card small{margin-top:auto;color:#cfbda9;font-size:9px;letter-spacing:.17em}.philosophy-card h3{font-family:var(--serif);font-size:29px;line-height:1.45;font-weight:500;margin:14px 0}.philosophy-card p{font-family:var(--serif);font-size:14px;line-height:1.95;color:#e1d3c6;margin:0}

.method-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.method-step{padding:31px;min-height:250px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.method-step b{font-family:"Cormorant Garamond",serif;color:var(--burgundy);font-size:20px}.method-step h3{font-family:var(--serif);font-size:23px;font-weight:500;margin:36px 0 12px}.method-step p{font-family:var(--serif);color:#6e655c;line-height:1.9;font-size:13px;margin:0}.method-quote{margin:70px auto 0;padding:45px 7vw;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--serif);font-size:clamp(23px,2.4vw,36px);line-height:1.65;text-align:center;color:#302923}

.ethics-section{padding:95px 0}.ethics{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:end}.ethics h2{font-family:var(--serif);font-size:45px;font-weight:500;margin:0}.ethics-copy{border-left:1px solid var(--line-dark);padding-left:42px}.ethics-copy p{margin:0;color:#aaa39a;font-family:var(--serif);font-size:14px;line-height:2}
footer{min-height:130px;background:#070809;color:#aaa39a;border-top:1px solid rgba(255,255,255,.09);display:flex;align-items:center;justify-content:space-between;padding:30px 5vw;font-size:10px}.footer-brand{display:flex;flex-direction:column;gap:5px}.footer-brand strong{font-family:"Cormorant Garamond",serif;color:#e7e0d5;font-size:18px;letter-spacing:.18em}.footer-brand span{letter-spacing:.08em}
.toast{position:fixed;z-index:1400;left:50%;bottom:28px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#171412;color:#f4eee3;border:1px solid rgba(215,194,154,.28);padding:12px 18px;font-size:11px;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}
.reveal{opacity:1;transform:none;transition:none}.reveal.visible{opacity:1;transform:none}

@media (max-width:1050px){
  .main-nav{position:fixed;top:82px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:12px 5vw 24px;background:rgba(8,9,10,.97);border-bottom:1px solid var(--line-dark)}.main-nav.open{display:flex}.main-nav a,.nav-cta{padding:15px 0;border:0;border-bottom:1px solid rgba(255,255,255,.08);text-align:left}.menu-toggle{display:block}.workbench-grid,.cycles-layout{grid-template-columns:1fr}.chart-summary{min-height:420px}.method-grid{grid-template-columns:repeat(2,1fr)}.philosophy-grid{grid-template-columns:1fr}.philosophy-card{min-height:300px}.ethics{grid-template-columns:1fr;gap:35px}.ethics-copy{border-left:0;border-top:1px solid var(--line-dark);padding-left:0;padding-top:30px}
}
@media (max-width:760px){
  .site-header{height:70px;padding:0 20px}.brand-copy strong{font-size:17px}.brand-copy small{font-size:8px}.brand-seal{width:30px;height:30px}.main-nav{top:70px;padding-left:20px;padding-right:20px}.hero{min-height:100svh;padding:118px 22px 66px;align-items:center}.hero-scene{background-position:62% center}.hero h1{font-size:46px;line-height:1.18}.hero-lead{font-size:16px;line-height:1.85}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.hero-notes{display:none}.hero-scroll{display:none}.editorial-intro{padding:85px 24px}.editorial-intro h2{font-size:34px;line-height:1.5}.editorial-intro p{font-size:15px}.chart-section,.cycles-section,.method-section{padding:82px 0}.section-shell{width:min(100% - 36px,1440px)}.section-heading{margin-bottom:36px}.section-heading h2{font-size:38px}.birth-card,.chart-summary{padding:25px}.field-grid{grid-template-columns:1fr}.field.span-2{grid-column:span 1}.chart-summary{min-height:360px}.summary-head{flex-direction:column}.summary-grid{grid-template-columns:repeat(2,1fr)}.chart-panel{padding:18px;margin-left:-9px;margin-right:-9px}.panel-head{align-items:flex-start;flex-direction:column}.ziwei-grid{grid-template-columns:repeat(4,minmax(110px,1fr));grid-template-rows:repeat(4,142px);min-height:0;overflow:auto}.palace{padding:10px}.star{font-size:12px}.chart-center{padding:12px}.chart-center:before,.chart-center:after{display:none}.center-mark{width:42px;height:42px}.legend-muted{width:100%;margin-left:0}.analysis-section,.philosophy-section{padding:88px 0}.analysis-tabs{overflow:auto}.analysis-tab{min-width:165px}.analysis-toolbar{align-items:flex-start;flex-direction:column}.analysis-toolbar .btn{width:100%}.analysis-content{padding-top:28px}.report-section h3{font-size:24px}.report-section p{font-size:14px}.yearly-grid{grid-template-columns:1fr}.method-grid{grid-template-columns:1fr}.method-step{min-height:220px}.philosophy-card{padding:26px;min-height:330px}.philosophy-card h3{font-size:25px}.ethics h2{font-size:34px}footer{flex-direction:column;align-items:flex-start;gap:22px}.palace-drawer{padding:54px 24px 30px}.drawer-title{font-size:35px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1;transform:none;transition:none}.btn{transition:none}}

.future-window{margin-top:34px;padding-top:34px;border-top:1px solid rgba(33,30,25,.14)}
.future-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:32px;align-items:end;margin-bottom:22px}
.future-head h3{font-family:'Noto Serif TC',serif;font-size:clamp(24px,3vw,38px);font-weight:500;line-height:1.35;margin:.25rem 0 0;color:#171512}
.future-head>p{margin:0;color:#6e675d;line-height:1.9;font-size:14px}
.future-decadals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:22px}
.future-decadal-card{background:#151514;color:#eee7d9;border:1px solid rgba(188,157,91,.22);padding:18px;min-height:165px;position:relative;overflow:hidden}
.future-decadal-card:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 90% 0,rgba(183,145,71,.14),transparent 42%);pointer-events:none}
.future-decadal-card.is-current{border-color:rgba(191,156,79,.75);box-shadow:inset 0 0 0 1px rgba(191,156,79,.16)}
.future-decadal-card small{display:block;color:#b89a61;letter-spacing:.14em;font-size:10px;margin-bottom:8px}
.future-decadal-card h4{font-family:'Noto Serif TC',serif;font-size:22px;font-weight:500;margin:0 0 10px}
.future-decadal-card p{font-size:13px;line-height:1.75;color:#b9b4aa;margin:0}
.future-years{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.future-year-card{appearance:none;text-align:left;border:1px solid rgba(39,35,29,.13);background:#f5f0e6;padding:18px;min-height:205px;cursor:pointer;transition:.22s ease;color:#1e1b17}
.future-year-card:hover,.future-year-card:focus-visible{transform:translateY(-2px);border-color:#ad8b4b;box-shadow:0 12px 30px rgba(48,38,21,.08);outline:none}
.future-year-card.is-current{background:#e8dcc5;border-color:#a98443}
.future-year-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.future-year-top b{font-family:'Cormorant Garamond','Noto Serif TC',serif;font-size:30px;line-height:1;font-weight:600}
.future-year-top span{font-size:10px;letter-spacing:.11em;color:#8c7348;text-transform:uppercase}
.future-year-meta{font-size:11px;color:#766e62;margin-bottom:11px;line-height:1.6}
.future-year-card h5{font-family:'Noto Serif TC',serif;font-size:16px;margin:0 0 8px;font-weight:600}
.future-year-card p{font-size:13px;line-height:1.75;color:#5f594f;margin:0}
.future-year-tech{margin-top:12px;padding-top:10px;border-top:1px solid rgba(55,48,38,.1);font-size:10px;line-height:1.65;color:#8b806f}
.future-year-detail{grid-column:1/-1;background:#111211;color:#e9e2d5;border:1px solid rgba(183,148,79,.25);padding:24px;margin-top:4px}
.future-year-detail h4{font-family:'Noto Serif TC',serif;font-size:25px;font-weight:500;margin:0 0 8px}
.future-year-detail p{line-height:1.9;color:#bbb6ac;font-size:14px}
.future-year-detail .dual-reading{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}
.future-year-detail .dual-reading>div{border-top:1px solid rgba(190,157,90,.25);padding-top:14px}
.future-year-detail small{color:#b79a64;letter-spacing:.1em}
.bridge-section{padding-top:96px;padding-bottom:96px}
.bridge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(29,26,22,.13);border:1px solid rgba(29,26,22,.13)}
.bridge-grid article{background:#f7f2e8;padding:34px 28px;min-height:260px}
.bridge-grid span{font-family:'Cormorant Garamond',serif;font-size:44px;color:#b18c4c;display:block;line-height:1;margin-bottom:24px}
.bridge-grid small{font-size:10px;letter-spacing:.16em;color:#827763;text-transform:uppercase}
.bridge-grid h3{font-family:'Noto Serif TC',serif;font-size:22px;font-weight:500;margin:10px 0 12px;color:#1b1916}
.bridge-grid p{font-size:14px;line-height:1.9;color:#655f55;margin:0}
.timeline-loading{padding:20px;border:1px dashed rgba(36,31,25,.18);color:#746d62;font-size:13px}
@media(max-width:900px){.future-head{grid-template-columns:1fr}.future-decadals,.future-years,.bridge-grid{grid-template-columns:1fr 1fr}.future-year-detail .dual-reading{grid-template-columns:1fr}}
@media(max-width:620px){.future-decadals,.future-years,.bridge-grid{grid-template-columns:1fr}.future-year-card{min-height:auto}.future-window{margin-top:26px;padding-top:26px}}

.ziwei-grid{position:relative;isolation:isolate}
.palace,.chart-center{z-index:2;transition:background .2s ease,box-shadow .2s ease,outline-color .2s ease}
.structure-overlay{position:absolute;inset:0;z-index:4;pointer-events:none;overflow:visible}
.structure-overlay line{vector-effect:non-scaling-stroke;stroke-linecap:round}
.relation-opposite{stroke:rgba(101,45,48,.66);stroke-width:1.65;stroke-dasharray:7 5}
.relation-trine{stroke:rgba(150,116,58,.62);stroke-width:1.35;stroke-dasharray:4 5}
.mutagen-line{stroke-width:1.35;stroke-dasharray:2 5;opacity:.85}
.mutagen-line-lu{stroke:#8f6f2b}.mutagen-line-quan{stroke:#943f32}.mutagen-line-ke{stroke:#4a7085}.mutagen-line-ji{stroke:#82435a}
.structure-line-label{font-family:"Noto Sans TC",sans-serif;font-size:12px;font-weight:700;paint-order:stroke;stroke:#fffdf8;stroke-width:3.4px;stroke-linejoin:round;letter-spacing:.04em}
.relation-opposite-label{fill:#6d3738}.relation-trine-label{fill:#8c6b32}
.mutagen-line-lu-label{fill:#7b5c1b}.mutagen-line-quan-label{fill:#7e2d1f}.mutagen-line-ke-label{fill:#31566d}.mutagen-line-ji-label{fill:#7b3145}
.palace.is-structure-self{background:#eee2cf;box-shadow:inset 0 0 0 2px rgba(112,37,40,.48)}
.palace.is-structure-opposite{background:#f6eee6;box-shadow:inset 0 0 0 1px rgba(112,37,40,.28)}
.palace.is-structure-trine{background:#f5efdf;box-shadow:inset 0 0 0 1px rgba(142,108,52,.28)}
.structure-panel{margin-top:18px;border-top:1px solid var(--line);padding-top:20px}
.structure-panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.structure-panel-head h4{font-family:var(--serif);font-size:22px;font-weight:500;margin:2px 0 0}
.structure-switches{display:flex;border:1px solid #d3cabc}
.structure-btn{appearance:none;border:0;border-right:1px solid #d3cabc;background:#fffdf8;color:#756a5f;padding:8px 13px;font-size:10px;letter-spacing:.05em;cursor:pointer}
.structure-btn:last-child{border-right:0}.structure-btn.active{background:#25211d;color:#f3eadb}
.structure-reading{margin-top:15px;display:grid;grid-template-columns:minmax(240px,1.1fr) minmax(290px,.9fr) minmax(300px,1.25fr);gap:1px;background:#d6cec1;border:1px solid #d6cec1}
.structure-reading>div{background:#faf6ed;padding:17px 18px;min-width:0}
.structure-empty{grid-column:1/-1;color:#746b60;font-size:12px;line-height:1.8}
.structure-focus small,.structure-mutagens>small{font-size:8px;letter-spacing:.14em;color:#927545;text-transform:uppercase}
.structure-focus h5{font-family:var(--serif);font-size:19px;margin:6px 0 8px;font-weight:600}
.structure-focus p,.structure-mutagens p{font-family:var(--serif);font-size:12px;line-height:1.85;color:#6d655a;margin:0}
.structure-relations{display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important;background:#f1eadf!important}
.structure-relations div{padding:10px;border:1px solid rgba(78,67,53,.12);background:rgba(255,255,255,.45)}
.structure-relations span{display:block;color:#928575;font-size:8px;letter-spacing:.1em;margin-bottom:4px}
.structure-relations b{font-family:var(--serif);font-size:14px;font-weight:600;color:#2f2923}
.structure-mutagens>div{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0 10px}
.structure-mutagen-tag{display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(45,40,33,.13);background:#fffdf8;padding:6px 8px;font-size:9px;color:#5e564c}
.structure-mutagen-tag b{font-size:9px}.structure-muted{font-size:10px;color:#8b8277}

@media(max-width:1000px){.structure-reading{grid-template-columns:1fr 1fr}.structure-mutagens{grid-column:1/-1}}
@media(max-width:760px){
  .structure-panel-head{align-items:flex-start;flex-direction:column}.structure-switches{width:100%}.structure-btn{flex:1}
  .structure-reading{grid-template-columns:1fr}.structure-mutagens{grid-column:auto}
  .structure-line-label{font-size:10px}.structure-overlay{min-width:440px}
}



.modern-analysis{margin-top:18px;padding:16px 18px;border-left:2px solid rgba(162,124,66,.65);background:rgba(162,124,66,.06);border-radius:0 10px 10px 0}
.modern-analysis b{display:block;margin-bottom:7px;font-size:.78rem;letter-spacing:.16em;color:#9a713d}
.modern-analysis p{margin:0;line-height:1.9}
.report-section>p{line-height:1.95}
@media (min-width:900px){.report-section{padding-top:30px;padding-bottom:30px}.report-section>p{max-width:78ch}}


body{background:#eee9dd;background-image:radial-gradient(circle at 15% 5%,rgba(86,114,91,.06),transparent 26%),linear-gradient(180deg,#f0ecdf 0,#ebe6d9 100%)}
.site-header{background:linear-gradient(180deg,rgba(7,31,23,.93),rgba(7,31,23,.72));border-bottom-color:rgba(224,211,176,.16)}
.hero{background:#08241a}.hero-scene{background-image:linear-gradient(90deg,rgba(5,30,21,.92) 0%,rgba(8,39,28,.80) 44%,rgba(14,52,37,.56) 72%,rgba(8,31,23,.74) 100%),url('./assets/ziwei-night.svg');filter:saturate(.6) sepia(.08)}.hero-vignette{background:linear-gradient(180deg,rgba(4,27,19,.05),transparent 45%,rgba(4,24,17,.68)),radial-gradient(circle at 75% 28%,rgba(170,151,102,.12),transparent 28%)}
.section-noir{background:#0b241b;color:#f1eddf}.analysis-section:before{background:radial-gradient(circle at 82% 12%,rgba(177,154,98,.10),transparent 30%),linear-gradient(120deg,rgba(84,116,88,.07),transparent 45%)}
.chart-summary{background:linear-gradient(150deg,#163c2e,#09261c)}
.btn-ink{background:#123c2c;border-color:#123c2c}.btn-primary{background:#ebe4d3;border-color:#ebe4d3;color:#173326}.nav-cta{border-color:rgba(215,195,154,.5)}
.birth-card{padding:46px 52px}.field-grid{grid-template-columns:1fr;gap:26px}.field.span-2{grid-column:span 1}.card-overline{font-size:30px;margin-bottom:34px;padding-bottom:24px}.field span{font-size:14px;letter-spacing:.045em;color:#575f59}.field input,.field select{height:66px;background:#fbfaf5;border:1px solid #c9c4b8;padding:0 20px;font-size:20px;color:#17231d}.field input:focus,.field select:focus{border-color:#365f4c;box-shadow:0 0 0 1px #365f4c}.form-note{grid-template-columns:105px 1fr;margin-top:32px;padding:22px 0}.form-note b{color:#214f3b;font-size:12px}.form-note p{font-size:13px}.privacy-mini{font-size:11px}
.analysis-tab{min-width:240px;padding:22px 30px;font-size:20px}.analysis-tab.active{color:#f3eddf;background:rgba(255,255,255,.035);box-shadow:inset 0 -2px #b59b67}.analysis-content{max-width:1120px}.report-section{padding:38px 0}.report-section h3{font-size:30px;letter-spacing:.02em}.report-section p{font-family:var(--sans);font-size:16px;line-height:2;color:#d8d1c5}.report-overview p{font-size:13px}.report-evidence{margin-top:22px;padding:18px 0;border-top:1px solid rgba(255,255,255,.09);display:flex;gap:9px;flex-wrap:wrap}.report-evidence span{font-size:11px;border:1px solid rgba(215,195,154,.20);padding:7px 9px;color:#c8b990}
.visit-watermark{position:fixed;right:-16px;bottom:22px;z-index:0;pointer-events:none;writing-mode:vertical-rl;text-orientation:mixed;font-family:"Cormorant Garamond",var(--serif);font-size:11px;letter-spacing:.18em;color:rgba(31,69,52,.16);user-select:none}.section-noir .visit-watermark{color:rgba(215,195,154,.12)}
.eyebrow.dark,.editorial-kicker{color:#2e5c47}.scroll-progress span{background:#b59b67}
@media(max-width:760px){.birth-card{padding:30px 24px}.card-overline{font-size:26px}.field input,.field select{height:62px;font-size:18px}.analysis-tab{min-width:180px;font-size:17px}.visit-watermark{right:-22px;bottom:18px;font-size:9px}}


.birth-stage{width:min(100%,980px);margin:0 auto;display:grid;grid-template-columns:1fr;gap:28px}
.birth-stage .birth-card{padding:58px 62px;background:#f6f3e9;border:1px solid rgba(32,70,51,.18);box-shadow:0 20px 60px rgba(16,45,32,.07)}
.birth-stage .card-overline{font-size:34px;color:#142c21;border-bottom:1px solid rgba(32,70,51,.18);padding-bottom:28px;margin-bottom:42px}
.birth-stage .field-grid{display:grid;grid-template-columns:1fr;gap:30px}
.birth-stage .field{gap:12px}
.birth-stage .field span{font-size:16px;color:#4d554f;letter-spacing:.035em}
.birth-stage .field input,.birth-stage .field select{height:78px;padding:0 28px;font-size:25px;background:#fbfaf5;border:1px solid #c8c2b4;color:#12251b}
.birth-stage .form-note{grid-template-columns:120px 1fr;margin:38px 0 24px;padding:26px 0}
.birth-stage .form-note b{font-size:14px;color:#214f3b}.birth-stage .form-note p{font-size:15px;line-height:1.8}
.birth-stage .chart-summary{min-height:0;padding:34px 42px;border-radius:0}
.birth-stage .chart-summary[hidden]{display:none!important}
.chart-summary--hidden{display:none!important}


@media(max-width:760px){.birth-stage .birth-card{padding:34px 24px}.birth-stage .card-overline{font-size:29px;margin-bottom:32px}.birth-stage .field input,.birth-stage .field select{height:68px;font-size:21px;padding:0 18px}.birth-stage .field span{font-size:14px}.birth-stage .form-note{grid-template-columns:1fr;gap:10px}}

.future-decadal-card{font:inherit;text-align:left;cursor:pointer;width:100%}.future-card-more{display:inline-block;margin-top:14px;font-size:11px;letter-spacing:.08em;color:#8b7443}
.future-decadal-detail,.future-year-detail{grid-column:1/-1;border:1px solid rgba(28,70,50,.18);background:#f7f3e8;padding:30px;margin-top:10px}
.flow-relations{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:rgba(28,70,50,.14);margin:20px 0 26px;border:1px solid rgba(28,70,50,.14)}
.flow-relations>small{grid-column:1/-1;background:#173d2d;color:#f4eee0;padding:10px 14px;letter-spacing:.08em}.flow-relations>span{background:#fbf8ef;padding:14px;display:flex;flex-direction:column;gap:5px;font-size:12px;color:#4f5b54}.flow-relations b{color:#173d2d;font-size:11px}
@media(max-width:760px){.flow-relations{grid-template-columns:1fr 1fr}.future-decadal-detail,.future-year-detail{padding:22px}}


.birth-stage{width:min(100%,900px)}
.birth-stage .birth-card{position:relative;overflow:hidden;padding:54px 56px 50px;background:#f7f4ea;border:1px solid rgba(29,70,50,.16);box-shadow:0 18px 56px rgba(13,44,31,.055)}
.birth-stage .birth-card>*:not(.birth-time-watermark){position:relative;z-index:1}
.birth-time-watermark{position:absolute;right:34px;top:32px;z-index:0;pointer-events:none;font-family:"Cormorant Garamond",var(--serif);font-size:11px;letter-spacing:.19em;color:rgba(35,78,58,.28);white-space:nowrap;user-select:none}
.birth-stage .card-overline{margin:0 0 34px;padding:0 0 26px;font-size:31px;line-height:1.15}
.birth-stage .field-grid{gap:24px}
.birth-stage .field{display:grid;grid-template-columns:1fr;gap:10px}
.birth-stage .field input,.birth-stage .field select{height:70px;font-size:22px;padding:0 24px}
.birth-stage .form-note{margin:32px 0 22px;padding:22px 0}
.visit-watermark{display:none}
@media(max-width:760px){
  .birth-stage .birth-card{padding:34px 22px 30px}
  .birth-time-watermark{right:22px;top:22px;font-size:9px;letter-spacing:.14em}
  .birth-stage .card-overline{font-size:28px;margin-bottom:28px;padding-bottom:22px;padding-right:120px}
  .birth-stage .field-grid{gap:22px}
  .birth-stage .field input,.birth-stage .field select{height:64px;font-size:20px}
}


.structure-panel-inline{margin:0;padding:20px 0 18px;border-top:0;border-bottom:1px solid var(--line)}
.structure-panel-inline .structure-panel-head{align-items:center}
.structure-panel-inline .structure-panel-head h4{font-size:19px}
.structure-panel-inline .eyebrow{margin-bottom:6px}
.structure-panel-inline .structure-reading{margin-top:14px}
.ziwei-grid{margin-top:24px}


.structure-overlay .mutagen-line{stroke-width:2;stroke-dasharray:none;stroke-linecap:round;opacity:.9}
.structure-overlay .mutagen-line-lu{stroke:#2f7a55}
.structure-overlay .mutagen-line-quan{stroke:#a34035}
.structure-overlay .mutagen-line-ke{stroke:#b48a32}
.structure-overlay .mutagen-line-ji{stroke:#3f6f96}
.mutagen-line-lu-label{fill:#286c4a}.mutagen-line-quan-label{fill:#94382f}.mutagen-line-ke-label{fill:#9a7428}.mutagen-line-ji-label{fill:#365f82}
.dot-lu{background:#2f7a55}.dot-quan{background:#a34035}.dot-ke{background:#b48a32}.dot-ji{background:#3f6f96}
.mutagen-祿,.mutagen-禄{color:#2f7a55}.mutagen-權,.mutagen-权{color:#a34035}.mutagen-科{color:#9f7728}.mutagen-忌{color:#3f6f96}


.report-palace-meaning{margin:10px 0 22px;padding:11px 14px;border-left:2px solid rgba(213,195,154,.48);font-size:12px!important;line-height:1.75!important;color:#b9b2a7!important}
.report-modern-assessment{font-size:17px!important;line-height:2!important;color:#eee6d9!important}
.report-result{margin-top:20px;padding-top:18px;border-top:1px solid rgba(255,255,255,.10);font-size:15px!important;color:#d4c9b7!important}
.report-result b{color:#d5c39a;font-weight:600;margin-right:6px}


.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.date-part-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.78fr) minmax(0,.78fr);gap:12px}
.time-part-grid{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:center;max-width:520px}
.part-field{display:block;min-width:0}
.birth-stage .part-field input{width:100%;height:72px;border:1px solid #c9c4b8;background:#fbfaf5;color:#17231d;padding:0 18px;font-size:22px;line-height:1;text-align:center;outline:none;border-radius:0;font-variant-numeric:tabular-nums}
.birth-stage .part-field input::placeholder{color:rgba(60,67,62,.42);opacity:1;letter-spacing:.035em}
.birth-stage .part-field input:focus{border-color:#365f4c;box-shadow:0 0 0 1px #365f4c;background:#fffefa}
.time-colon{font-family:var(--serif);font-size:29px;color:#365f4c;line-height:1;transform:translateY(-1px)}
@media(max-width:760px){
  .date-part-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr) minmax(0,.8fr);gap:8px}
  .birth-stage .part-field input{height:64px;padding:0 10px;font-size:18px}
  .time-part-grid{max-width:none;gap:8px}
  .time-colon{font-size:25px}
}



html,body{max-width:100%;overflow-x:hidden}
.birth-stage,.birth-stage .birth-card,.birth-stage .field-grid,.date-part-grid,.time-part-grid{min-width:0;max-width:100%;box-sizing:border-box}
.birth-stage{display:block;width:100%}
.birth-stage .birth-card{width:min(100%,860px);margin:0 auto;padding:42px 48px 38px;overflow:hidden}
.birth-stage .card-overline{padding-right:0;margin-bottom:28px}
.birth-time-watermark,.visit-watermark{display:none!important}
.date-part-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.8fr) minmax(0,.8fr);gap:10px;width:100%;max-width:610px}
.time-part-grid{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center;width:100%;max-width:410px}
.birth-stage .part-field input{width:100%;height:58px;min-width:0;padding:0 12px;font-size:19px;box-sizing:border-box}
.birth-stage .field input,.birth-stage .field select{width:100%;max-width:100%;height:60px;font-size:18px;box-sizing:border-box}
.time-colon{font-size:24px}
@media (min-width:761px) and (max-width:1100px){
  .birth-stage .birth-card{width:min(100%,760px);padding:38px 34px 34px}
  .date-part-grid{max-width:560px;gap:9px}
  .time-part-grid{max-width:390px}
  .birth-stage .part-field input{height:56px;font-size:18px}
  .birth-stage .field input,.birth-stage .field select{height:58px;font-size:18px}
}
@media (max-width:760px){
  .section-shell{width:min(100% - 24px,1180px)}
  .birth-stage .birth-card{width:100%;padding:28px 16px 26px}
  .birth-stage .card-overline{font-size:26px;margin-bottom:22px;padding-bottom:18px}
  .birth-stage .field-grid{gap:18px}
  .date-part-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,.82fr) minmax(0,.82fr);gap:6px;max-width:none}
  .time-part-grid{grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr);gap:5px;max-width:none}
  .birth-stage .part-field input{height:52px;padding:0 7px;font-size:16px}
  .birth-stage .field input,.birth-stage .field select{height:54px;padding:0 14px;font-size:17px}
  .time-colon{font-size:20px;text-align:center}
  .field>span{font-size:15px}
}
@media (max-width:390px){
  .section-shell{width:min(100% - 16px,1180px)}
  .birth-stage .birth-card{padding:24px 12px}
  .date-part-grid{gap:4px}
  .birth-stage .part-field input{height:50px;padding:0 4px;font-size:15px}
}



.palace-drawer{background:rgba(10,31,23,.28);backdrop-filter:blur(5px)}
.palace-drawer>div{max-width:760px}
.drawer-hero{padding-bottom:28px;border-bottom:1px solid rgba(25,50,39,.14);margin-bottom:10px}.drawer-hero .drawer-title{font-size:clamp(40px,6vw,64px);margin:8px 0}.drawer-hero .drawer-sub{font-size:13px;letter-spacing:.12em;color:#8b8378}
.drawer-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}.drawer-section{border:1px solid rgba(33,72,54,.13);background:rgba(255,253,247,.74);padding:22px;margin:0}.drawer-section.drawer-wide{grid-column:1/-1}.drawer-section h4{margin:0 0 14px;color:#2c6249;font-size:12px;letter-spacing:.12em}.drawer-star-list{display:flex;flex-wrap:wrap;gap:8px}.drawer-star-list span{background:#fffdf7;border:1px solid rgba(33,72,54,.16);padding:8px 11px;font-size:12px}.drawer-copy{margin:14px 0 0;color:#655f57;line-height:1.85;font-size:13px}.drawer-relations{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.drawer-relation{padding:12px;border:1px solid rgba(33,72,54,.14);background:#fbf8ef}.drawer-relation small{display:block;color:#91877a;font-size:10px;margin-bottom:6px}.drawer-relation b{font-family:var(--serif);font-weight:500}
@media(max-width:760px){.drawer-grid{grid-template-columns:1fr}.drawer-section.drawer-wide{grid-column:auto}.drawer-relations{grid-template-columns:1fr 1fr}.drawer-section{padding:18px}}


.reading-explainer{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);margin:-12px 0 36px}.reading-explainer article{padding:24px 26px;background:rgba(255,255,255,.025)}.reading-explainer small{color:#d5c39a;letter-spacing:.12em;font-size:10px}.reading-explainer h3{font-family:var(--serif);font-weight:500;font-size:24px;margin:10px 0}.reading-explainer p{margin:0;color:#bdb6ac;line-height:1.9;font-size:13px}.reading-explainer strong{color:#f0e9de;font-weight:500}
@media(max-width:760px){.reading-explainer{grid-template-columns:1fr}.reading-explainer article{padding:20px}}


.analysis-section .reading-explainer,.analysis-section .analysis-shell{opacity:1!important;transform:none!important;visibility:visible!important}
.analysis-content{min-height:180px}


.cycles-section .cycles-layout,.cycles-section .future-window{opacity:1!important;transform:none!important;visibility:visible!important;display:grid}
.cycles-section .future-window{display:block}



.report-modern-block{margin:18px 0;padding:0 0 0 16px;border-left:2px solid rgba(180,151,94,.45)}
.report-modern-block small,.report-highlights small{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;opacity:.7;margin-bottom:8px}
.report-modern-block p{margin:0!important}
.report-highlights{margin:20px 0;padding:16px 18px;border:1px solid rgba(180,151,94,.25);border-radius:14px;background:rgba(255,255,255,.025)}
.report-highlights span{display:block;line-height:1.8;margin:5px 0}


.report-chart-basis{margin:.25rem 0 1rem;padding:.7rem .85rem;border:1px solid rgba(116,94,61,.18);border-radius:12px;background:rgba(248,244,235,.72);font-size:.9rem;line-height:1.65;color:var(--muted,#6b675f)}
.report-chart-basis small{display:block;margin-bottom:.2rem;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:inherit;opacity:.76}
.report-reading p{font-size:1.02rem;line-height:1.9}
.report-risks span{font-weight:500}


.report-integrated-section{padding-top:36px;padding-bottom:36px}
.report-integrated-reading{max-width:86ch;font-size:16px!important;line-height:2.08!important;letter-spacing:.01em;color:#e0d8cc!important}
.report-integrated-evidence{align-items:center;margin-top:18px;padding-top:14px}
.report-integrated-evidence small{font-size:11px;letter-spacing:.12em;color:#9f947f;margin-right:4px}
.report-integrated-evidence span{font-size:11px;line-height:1.45}
@media (max-width:720px){.report-integrated-reading{font-size:15px!important;line-height:2!important}.report-integrated-evidence{gap:7px}.report-integrated-evidence span{font-size:10.5px}}



.report-modern-detail-grid{display:grid;grid-template-columns:minmax(180px,.34fr) minmax(0,1fr);gap:28px;align-items:start}
.report-palace-focus{position:relative;padding:16px 18px;border-left:2px solid rgba(180,151,94,.7);background:rgba(180,151,94,.055);border-radius:0 10px 10px 0}
.report-palace-focus small{display:block;margin-bottom:8px;font-size:11px;letter-spacing:.14em;color:#b9a477}
.report-palace-focus p{margin:0!important;font-family:var(--serif);font-size:16px;line-height:1.85;color:#f0e6d7}
.report-modern-detail-main{min-width:0}
@media (max-width:720px){.report-modern-detail-grid{grid-template-columns:1fr;gap:16px}.report-palace-focus{padding:14px 16px}.report-palace-focus p{font-size:15px;line-height:1.8}}


.palace-card-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}
.palace-card-head h3{margin:0}
.palace-mode-toggle{display:inline-flex;gap:6px;padding:4px;border:1px solid rgba(183,149,86,.26);border-radius:999px;background:rgba(255,255,255,.025);flex:0 0 auto}
.palace-mode-btn{appearance:none;border:0;border-radius:999px;padding:7px 12px;background:transparent;color:rgba(239,232,214,.7);font:inherit;font-size:12px;letter-spacing:.02em;cursor:pointer;transition:.2s ease}
.palace-mode-btn:hover{color:#f4e8c8;background:rgba(255,255,255,.04)}
.palace-mode-btn.active{background:rgba(184,148,82,.18);color:#f1dca7;box-shadow:inset 0 0 0 1px rgba(205,170,103,.22)}
.palace-mode-panel[hidden]{display:none!important}
.report-pro-block{padding:0 0 14px;margin:0 0 14px;border-bottom:1px solid rgba(184,148,82,.12)}
.report-pro-block:last-of-type{border-bottom:0}
.report-pro-block small{display:block;color:#baa270;font-size:11px;letter-spacing:.12em;margin-bottom:6px}
.report-pro-block p{margin:0;line-height:1.9}
@media(max-width:700px){.palace-card-head{align-items:flex-start;flex-direction:column;gap:10px}.palace-mode-toggle{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.palace-mode-btn{width:100%;padding:9px 8px}.analysis-tabs{display:none}}


.report-simple-reading{padding:22px 24px;border-left:3px solid rgba(205,170,103,.72);background:rgba(205,170,103,.055);border-radius:0 18px 18px 0}
.report-simple-reading small{display:block;color:#cdb17a;letter-spacing:.12em;font-size:11px;margin-bottom:12px}
.report-simple-reading p{margin:0;color:#eee6d7;font-size:18px;line-height:2;letter-spacing:.01em}
@media(max-width:700px){.report-simple-reading{padding:18px}.report-simple-reading p{font-size:16px;line-height:1.9}}


.report-modern-detail-main{display:grid;gap:18px}
.report-modern-block{padding:0 0 16px;border-bottom:1px solid rgba(184,148,82,.10)}
.report-modern-block:last-child{border-bottom:0;padding-bottom:0}
.report-modern-block small{display:block;color:#baa270;font-size:11px;letter-spacing:.12em;margin-bottom:7px}
.report-modern-block p{margin:0;line-height:2}
.report-pro-structure{margin:4px 0 24px;padding:18px 18px 14px;border:1px solid rgba(184,148,82,.20);border-radius:14px;background:rgba(184,148,82,.045)}
.report-pro-structure>small{display:block;color:#d1b97f;font-size:11px;letter-spacing:.13em;margin-bottom:12px}
.report-pro-structure-grid{display:flex;flex-wrap:wrap;gap:8px}
.report-pro-structure-grid span{font-size:11px;line-height:1.55;color:#d8c79e;border:1px solid rgba(215,195,154,.16);background:rgba(255,255,255,.025);border-radius:999px;padding:7px 10px}
@media(max-width:700px){.report-pro-structure-grid{display:grid;grid-template-columns:1fr}.report-pro-structure-grid span{border-radius:10px}.report-modern-detail-main{gap:15px}}


.flying-mutagen-wrap{margin-top:26px;border-top:1px solid #d9d0c3;padding-top:18px}.flying-mutagen-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #d7cdbf;background:#faf6ee;color:#342f2b;padding:15px 17px;text-align:left;cursor:pointer;transition:.18s ease}.flying-mutagen-toggle:hover{background:#f4ede1;border-color:#c6b596}.flying-mutagen-toggle>span:first-child{display:flex;flex-direction:column;gap:4px}.flying-mutagen-toggle small{font-size:8px;letter-spacing:.14em;color:#997a45}.flying-mutagen-toggle b{font-family:var(--serif);font-size:15px;font-weight:600}.flying-mutagen-toggle-state{font-size:10px;color:#83786b;white-space:nowrap}.flying-mutagen-toggle-state i{display:inline-block;font-style:normal;margin-left:5px;transition:transform .18s ease}.flying-mutagen-wrap.is-open .flying-mutagen-toggle-state i{transform:rotate(180deg)}.flying-mutagen-panel{border:1px solid #ded5c9;border-top:0;background:#fffdf8;padding:18px}.flying-mutagen-note{font-size:10px;line-height:1.8;color:#857b70;padding:0 0 15px;border-bottom:1px solid #e8e1d7}.flying-mutagen-panel section{padding:18px 0;border-bottom:1px solid #ece5db}.flying-mutagen-panel section:last-child{border-bottom:0;padding-bottom:2px}.flying-mutagen-panel h4{margin:0 0 12px;font-family:var(--serif);font-size:14px;font-weight:600;color:#4b423a}.flying-mutagen-item{padding:13px 0}.flying-mutagen-item+.flying-mutagen-item{border-top:1px dashed #e4dbcf}.flying-mutagen-line{display:flex;align-items:center;flex-wrap:wrap;gap:7px;font-size:11px;color:#63594f}.flying-mutagen-line b{font-weight:600}.flying-mutagen-line strong{font-weight:700}.flying-mutagen-item p,.flying-mutagen-panel section>p{margin:7px 0 0;font-size:11px;line-height:1.9;color:#6e655c}.flying-mutagen-item.compact p{color:#756c63}.flying-mutagen-empty{color:#93897e!important}.fm-lu{color:#7b5c1b}.fm-quan{color:#7e2d1f}.fm-ke{color:#31566d}.fm-ji{color:#7b3145}.flying-mutagen-summary{background:#f8f2e8;margin:18px -4px -2px;padding:16px!important;border:1px solid #e2d5c2!important}.flying-mutagen-summary h4{color:#6b4f22}.flying-mutagen-summary p{color:#524940!important}@media(max-width:700px){.flying-mutagen-toggle{padding:13px 14px}.flying-mutagen-panel{padding:14px}.flying-mutagen-line{gap:5px}.flying-mutagen-item p,.flying-mutagen-panel section>p{font-size:10.5px}}


.time-navigator{margin:18px 0 0;border:1px solid rgba(30,62,46,.16);background:#f8f4ea;padding:12px 14px 10px;display:grid;gap:10px}
.time-tier-row{display:flex;gap:1px;border:1px solid rgba(30,62,46,.18);width:max-content;max-width:100%;background:rgba(30,62,46,.12)}
.time-tier-btn{appearance:none;border:0;background:#fffaf1;color:#686056;min-height:38px;padding:8px 17px;font-size:11px;letter-spacing:.06em;cursor:pointer}
.time-tier-btn.active{background:#173b2d;color:#f7f0e4}
.time-choice-row{display:flex;gap:7px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;padding:1px 0 4px;max-width:100%}
.time-choice-btn{appearance:none;flex:0 0 auto;border:1px solid rgba(35,64,49,.16);background:#fffdf7;color:#665e54;min-height:36px;padding:7px 12px;font-size:10px;cursor:pointer;white-space:nowrap}
.time-choice-btn.active{background:#213e31;color:#fffaf0;border-color:#213e31}
.time-choice-static{font-size:10px;color:#8d8377;padding:8px 2px}
.time-current-state{border-top:1px solid rgba(35,64,49,.12);padding-top:8px;color:#2f5c47;font-family:var(--serif);font-size:12px;line-height:1.5}
.palace-meta-stack{margin-top:8px;display:grid;gap:5px;min-width:0}
.palace-meta-stack .palace-branch{display:block;font-size:9px;color:#8d8378;letter-spacing:.08em}
.palace-meta-stack .minor-stars{margin-top:0}
.palace-drawer{display:none!important}
.cycles-section[hidden]{display:none!important}

@media(max-width:760px){
  .chart-panel{padding:12px 8px 14px;margin-left:-10px;margin-right:-10px}
  .panel-head{padding:0 4px 10px;margin-bottom:0}
  .panel-head .eyebrow{font-size:8px}
  .panel-head h3{font-size:26px}
  .time-navigator{margin-top:10px;padding:8px 6px 7px;gap:7px}
  .time-tier-row{width:100%;display:grid;grid-auto-flow:column;grid-auto-columns:1fr}
  .time-tier-btn{min-width:0;padding:7px 6px;min-height:36px;font-size:10px}
  .time-choice-row{gap:5px;padding-bottom:2px}
  .time-choice-btn{min-height:34px;padding:6px 10px;font-size:9px}
  .time-current-state{font-size:10px;padding:7px 2px 0}
  .structure-panel-inline{display:none}
  .ziwei-grid{margin-top:10px;width:100%;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(104px,27vw));min-height:0;overflow:visible;gap:1px}
  .palace{padding:6px 5px 14px;overflow:hidden}
  .palace-head{min-height:18px}
  .palace-name{font-size:11px;line-height:1.18}
  .palace-name small{font-size:6.5px!important;margin-top:1px!important}
  .major-stars{margin-top:5px;gap:2px 4px;line-height:1.15}
  .star{font-size:10px;white-space:normal}
  .star small,.star-mutagen{font-size:6px}
  .palace-meta-stack{margin-top:5px;gap:3px}
  .palace-meta-stack .palace-branch{font-size:7px;line-height:1.1}
  .minor-stars{font-size:6.5px;line-height:1.2;gap:1px 4px;max-height:31px;overflow:hidden}
  .palace-stage,.palace-decade{bottom:4px;font-size:6px}
  .palace-stage{left:5px}.palace-decade{right:5px}
  .palace.is-body:after{right:4px;top:4px;font-size:6px;padding:1px 2px}
  .palace.is-soul:before{font-size:26px;right:2px;bottom:3px}
  .chart-center{padding:10px 8px}
  .center-mark{width:34px;height:34px;margin-bottom:7px;font-size:18px}
  .chart-center h4{font-size:17px;margin-bottom:5px}
  .chart-center p{font-size:8px;line-height:1.48}
  .center-chips{gap:4px;margin-top:7px}
  .center-chips span{font-size:7px;padding:3px 4px}
  .structure-line-label{font-size:9px}
  .legend-row{gap:10px;padding:9px 2px 0;font-size:10px;line-height:1.5}
  .legend-muted{display:none!important}
}

@media(max-width:390px){
  .ziwei-grid{grid-template-rows:repeat(4,minmax(98px,26vw))}
  .palace{padding-left:4px;padding-right:4px}
  .palace-name{font-size:10.5px}
  .star{font-size:9.5px}
  .minor-stars{font-size:6.2px;max-height:29px}
  .center-mark{width:32px;height:32px;font-size:17px}
  .chart-center h4{font-size:16px}
}
.cycles-layout[hidden]{display:none!important}


.chart-mode-bar{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(30,62,46,.16);background:#fffaf1;padding:8px 10px}
.chart-mode-label{font-size:9px;letter-spacing:.08em;color:#857a6d;white-space:nowrap}
.chart-mode-buttons{display:flex;gap:1px;min-width:0;background:rgba(30,62,46,.12);border:1px solid rgba(30,62,46,.12)}
.chart-mode-btn{appearance:none;border:0;background:#fffdf7;color:#696158;min-height:36px;padding:7px 14px;font-size:10px;cursor:pointer;white-space:nowrap}
.chart-mode-btn.active{background:#173b2d;color:#fffaf0}

.temporal-mutagen-set{display:inline-flex;align-items:center;gap:2px;margin-left:3px;vertical-align:middle;flex-wrap:wrap}
.temporal-mutagen-set.is-compact{margin-left:2px;gap:1px}
.temporal-mutagen-badge{display:inline-flex;align-items:center;justify-content:center;gap:1px;min-width:20px;height:15px;padding:0 3px;border:1px solid currentColor;background:#fffdf8;font-family:var(--sans);font-style:normal;font-size:7px;line-height:1;white-space:nowrap}
.temporal-mutagen-badge b{font-size:6px;font-weight:700;padding-right:1px;border-right:1px solid currentColor;opacity:.78}
.temporal-mutagen-badge.m-lu{color:#2f7a55}.temporal-mutagen-badge.m-quan{color:#a34035}.temporal-mutagen-badge.m-ke{color:#a87c25}.temporal-mutagen-badge.m-ji{color:#3f6f96}
.temporal-mutagen-badge.source-origin{background:#f0ede8}.temporal-mutagen-badge.source-decadal{box-shadow:inset 2px 0 0 #3f7b5a}.temporal-mutagen-badge.source-yearly{box-shadow:inset 2px 0 0 #3f72a4}.temporal-mutagen-badge.source-monthly{box-shadow:inset 2px 0 0 #c7772e}
.minor-star-item{display:inline-flex;align-items:center;flex-wrap:wrap;gap:1px;min-width:0}

.center-mutagen-stack{display:grid;gap:5px;margin-top:11px;max-width:340px}
.center-mutagen-source{display:block;font-family:var(--sans);font-size:11px;line-height:1.55;color:#d0c7bb;white-space:normal;text-align:left}
.center-mutagen-source b{display:inline-grid;place-items:center;width:20px;height:20px;margin-right:6px;border:1px solid currentColor;font-size:10px}
.center-mutagen-source.source-origin{color:#b7b0a7}.center-mutagen-source.source-decadal{color:#73a58b}.center-mutagen-source.source-yearly{color:#74a1d0}.center-mutagen-source.source-monthly{color:#d99a5f}

.structure-mutagen-tag i{display:inline-grid;place-items:center;width:17px;height:17px;border-radius:50%;font-style:normal;font-size:8px;font-weight:700;background:#eee9df;color:#5a544c}
.structure-mutagen-tag.source-origin i{background:#e7e3dd;color:#49443f}.structure-mutagen-tag.source-decadal i{background:#deeee4;color:#2d6a49}.structure-mutagen-tag.source-yearly i{background:#e0ebf6;color:#315f91}.structure-mutagen-tag.source-monthly i{background:#f5e6d7;color:#a85f24}

.structure-overlay .source-line-origin{opacity:.30;stroke-width:1.25}.structure-overlay .source-line-decadal{opacity:.56;stroke-width:1.55}.structure-overlay .source-line-yearly{opacity:.82;stroke-width:1.9}.structure-overlay .source-line-monthly{opacity:.96;stroke-width:2.2}
.structure-line-label.source-line-origin-label{fill:#4f4a45}.structure-line-label.source-line-decadal-label{fill:#2f7a55}.structure-line-label.source-line-yearly-label{fill:#3f72a4}.structure-line-label.source-line-monthly-label{fill:#bd6d2b}

.legend-stack{display:grid;gap:2px;padding-top:10px}
.legend-stack .legend-row{padding-top:7px}
.legend-title{font-weight:700;color:#534c44;font-size:15px}
.legend-source-row{gap:8px}
.source-key{display:inline-grid!important;place-items:center;width:28px;height:28px;border:1px solid transparent;font-size:12px;font-weight:700}
.source-origin{color:#4f4a45}.source-key.source-origin{background:#e7e3dd;border-color:#d2ccc4}
.source-decadal{color:#2f7a55}.source-key.source-decadal{background:#deeee4;border-color:#bad8c7}
.source-yearly{color:#3f72a4}.source-key.source-yearly{background:#e0ebf6;border-color:#bfd1e3}
.source-monthly{color:#bd6d2b}.source-key.source-monthly{background:#f5e6d7;border-color:#e8c7a6}

@media(max-width:760px){
  .chart-mode-bar{margin-top:9px;padding:6px;gap:6px;display:grid;grid-template-columns:auto 1fr}
  .chart-mode-label{font-size:7px}
  .chart-mode-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
  .chart-mode-btn{min-width:0;min-height:32px;padding:5px 3px;font-size:8px}
  .temporal-mutagen-badge{min-width:15px;height:12px;padding:0 2px;font-size:5.5px}
  .temporal-mutagen-badge b{font-size:5px}
  .center-mutagen-stack{gap:4px;margin-top:8px;max-width:210px}
  .center-mutagen-source{font-size:8.6px;line-height:1.42}
  .center-mutagen-source b{width:16px;height:16px;margin-right:4px;font-size:7px}
  .legend-stack{padding-top:6px;gap:2px}
  .legend-stack .legend-row{padding-top:7px}
  .legend-source-row{gap:7px}
  .source-key{width:20px;height:20px;font-size:9px}
  .dot{width:9px;height:9px}
}


.palace{padding-right:50px;padding-bottom:38px}
.palace-mutagen-layer{position:absolute;inset:0;z-index:3;pointer-events:none}
.palace-mutagen-rail{position:absolute;right:6px;top:36px;display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.palace-mutagen-bottom{position:absolute;left:8px;right:8px;bottom:18px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}
.palace-mutagen-layer .temporal-mutagen-badge{min-width:34px;height:21px;padding:0 5px;border-width:1.5px;border-radius:2px;background:#fffdf8;font-size:10px;font-weight:700;box-shadow:none}
.palace-mutagen-layer .temporal-mutagen-badge b{font-size:8px;padding-right:3px;margin-right:1px;opacity:1}
.palace-mutagen-layer .temporal-mutagen-badge.source-origin{background:#eeeae4}
.palace-mutagen-layer .temporal-mutagen-badge.source-decadal{background:#edf7f0;box-shadow:inset 3px 0 0 #2f7a55}
.palace-mutagen-layer .temporal-mutagen-badge.source-yearly{background:#eef5fb;box-shadow:inset 3px 0 0 #3f72a4}
.palace-mutagen-layer .temporal-mutagen-badge.source-monthly{background:#fff3e8;box-shadow:inset 3px 0 0 #c7772e}
.palace-mutagen-layer .temporal-mutagen-badge.m-lu{color:#24784f;border-color:#24784f}
.palace-mutagen-layer .temporal-mutagen-badge.m-quan{color:#a1372f;border-color:#a1372f}
.palace-mutagen-layer .temporal-mutagen-badge.m-ke{color:#a87614;border-color:#a87614}
.palace-mutagen-layer .temporal-mutagen-badge.m-ji{color:#2f6798;border-color:#2f6798}
.structure-overlay .source-line-origin,.structure-overlay .source-line-decadal,.structure-overlay .source-line-yearly,.structure-overlay .source-line-monthly{opacity:.92;stroke-width:2.15}
@media(max-width:760px){
  .palace{padding:6px 37px 34px 5px}
  .palace-name{font-size:12px;line-height:1.16}.palace-name small{font-size:7px!important;margin-top:2px!important}
  .major-stars{margin-top:6px;gap:3px 5px;line-height:1.2}.star{font-size:11px;line-height:1.2}.star small,.star-mutagen{font-size:6.8px}
  .palace-meta-stack{margin-top:6px;gap:4px}.palace-meta-stack .palace-branch{font-size:8px;line-height:1.15;font-weight:600}
  .minor-stars{font-size:7.4px;line-height:1.28;gap:2px 4px;max-height:32px}
  .palace-mutagen-rail{right:4px;top:32px;gap:2px}.palace-mutagen-bottom{left:5px;right:5px;bottom:14px;gap:2px}
  .palace-mutagen-layer .temporal-mutagen-badge{min-width:27px;height:18px;padding:0 3px;font-size:8.4px;border-width:1.25px}
  .palace-mutagen-layer .temporal-mutagen-badge b{font-size:6.7px;padding-right:2px}
  .palace-stage,.palace-decade{bottom:3px;font-size:6.2px}.structure-line-label{font-size:9px;font-weight:700;paint-order:stroke;stroke:#fffdf8;stroke-width:2.8px;stroke-linejoin:round}
}
@media(max-width:390px){
  .palace{padding:5px 34px 32px 4px}.palace-name{font-size:11.5px}.star{font-size:10.5px}.palace-meta-stack .palace-branch{font-size:7.6px}.minor-stars{font-size:7px;max-height:30px}
  .palace-mutagen-rail{right:3px;top:30px}.palace-mutagen-layer .temporal-mutagen-badge{min-width:25px;height:17px;font-size:7.8px;padding:0 2px}.palace-mutagen-layer .temporal-mutagen-badge b{font-size:6.2px}
}


.palace-mutagen-rail{top:12px}
@media(max-width:760px){
  .palace-mutagen-rail{top:7px;right:4px;gap:2px}
  .chart-center{padding:12px 10px}
  .center-mark{width:40px;height:40px;margin-bottom:8px;font-size:20px}
  .chart-center h4{font-size:20px;line-height:1.15;margin-bottom:6px}
  .chart-center p{font-size:10px;line-height:1.56;color:#c5bdaf}
  .center-mutagen-stack{gap:4px;margin-top:8px;max-width:210px;width:100%}
  .center-mutagen-source{font-size:8.6px;line-height:1.42;color:#d2c8ba;text-align:left}
  .center-mutagen-source b{width:16px;height:16px;margin-right:4px;font-size:7.5px;vertical-align:middle}
  .center-chips{gap:5px;margin-top:9px}
  .center-chips span{font-size:8.4px;line-height:1.25;padding:4px 6px}
}
@media(max-width:390px){
  .palace-mutagen-rail{top:6px;right:3px}
  .center-mark{width:36px;height:36px;font-size:18px}
  .chart-center h4{font-size:18.5px}
  .chart-center p{font-size:8.6px}
  .center-mutagen-stack{max-width:186px;gap:3px;margin-top:7px}
  .center-mutagen-source{font-size:7.4px;line-height:1.36}
  .center-mutagen-source b{width:14px;height:14px;font-size:6.8px;margin-right:3px}
  .center-chips{margin-top:7px;gap:4px}
  .center-chips span{font-size:7.2px;padding:3px 4px}
}


.future-decadal-detail.decadal-dual-card{background:#f8f4ea;padding:0;border:1px solid rgba(28,70,50,.18);overflow:hidden}
.decadal-card-head{padding:22px 24px 18px;border-bottom:1px solid #d9d0c3;background:#fbf8f0}
.decadal-card-head>div:first-child{min-width:0}
.decadal-card-head>div:first-child>small{display:block;color:#8b7443;font-size:10px;letter-spacing:.08em;margin-bottom:7px}
.decadal-card-head h4{font-family:var(--serif);font-size:27px;font-weight:600;line-height:1.3;margin:0;color:var(--ink)}
.decadal-dual-card>.palace-mode-panel{padding:24px}
.decadal-dual-card .report-simple-reading,.decadal-dual-card .report-modern-block,.decadal-dual-card .report-pro-block{margin:0}
.decadal-dual-card .flow-relations{margin:0 0 22px}
.decadal-dual-card .decadal-flying-wrap{margin-top:24px}
@media(max-width:700px){
  .decadal-card-head{padding:18px 16px 14px;align-items:flex-start}
  .decadal-card-head h4{font-size:23px}
  .decadal-dual-card>.palace-mode-panel{padding:18px 16px}
  .decadal-mode-toggle{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}
  .decadal-mode-toggle .palace-mode-btn{min-width:0;padding:10px 4px;font-size:9px}
}


.future-decadals{display:flex;flex-direction:column;gap:18px;margin-bottom:30px}
.future-decadals .future-decadal-detail{margin:0;width:100%;grid-column:auto;background:#f7f2e7;border:1px solid rgba(28,70,50,.20);box-shadow:0 8px 28px rgba(39,31,20,.035)}
.decadal-dual-card .decadal-card-head{background:#eee6d5;border-bottom:1px solid rgba(28,70,50,.14);padding:24px 26px}
.decadal-dual-card .decadal-card-head small{color:#8b7042;font-size:12px;letter-spacing:.09em}
.decadal-dual-card .decadal-card-head h4{color:#17271f;font-size:30px;line-height:1.25;margin-top:7px}
.decadal-dual-card .palace-mode-toggle{background:#f8f4ea;border-color:rgba(161,128,65,.32)}
.decadal-dual-card .palace-mode-btn{color:#736a5d}
.decadal-dual-card .palace-mode-btn.active{background:#e3d7bd;color:#173a2c;border-color:#cbb486}
.decadal-dual-card>.palace-mode-panel{background:#fbf8f0}
.decadal-dual-card .report-simple-reading{background:#f2ead8;border-left-color:#b89554}
.decadal-dual-card .report-simple-reading small,.decadal-dual-card .report-modern-block small,.decadal-dual-card .report-pro-block small{color:#8a6c37}
.decadal-dual-card .report-simple-reading p,.decadal-dual-card .report-modern-block p,.decadal-dual-card .report-pro-block p{color:#1f2823!important;font-size:17px;line-height:1.95}
.decadal-dual-card .report-modern-block,.decadal-dual-card .report-pro-block{background:#f8f3e8;border:1px solid rgba(52,73,61,.10);padding:22px}
.decadal-dual-card .flow-relations{background:#edf1eb;border-color:rgba(28,70,50,.16)}

.future-years{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.future-year-card.yearly-three-mode-card{display:block;min-height:0;padding:0;background:#f8f4ea;border:1px solid rgba(28,70,50,.18);overflow:hidden;color:#1f2823;transform:none}
.future-year-card.yearly-three-mode-card:hover,.future-year-card.yearly-three-mode-card:focus-within{transform:none;box-shadow:0 10px 30px rgba(46,36,20,.055);border-color:#aa8a50}
.yearly-three-mode-card.is-current{background:#f5ecda;border-color:#9c7d46;box-shadow:inset 4px 0 #9c7d46}
.year-card-head{padding:22px 22px 18px;border-bottom:1px solid rgba(28,70,50,.13);background:rgba(255,255,255,.24)}
.year-card-head .future-year-top{margin-bottom:8px}
.year-card-head .future-year-top b{font-size:34px;color:#17372a}
.year-card-head .future-year-top span{color:#98753d;font-weight:600}
.year-card-head h5{font-size:20px;color:#17271f;margin:6px 0 14px}
.year-mode-toggle{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.year-mode-toggle .palace-mode-btn{width:100%;padding:9px 6px;font-size:11px;color:#6f685e}
.year-mode-toggle .palace-mode-btn.active{background:#e4d8bf;color:#183a2c;border-color:#c9b27f}
.yearly-three-mode-card>.palace-mode-panel{padding:20px 22px 24px;background:#fbf8f1}
.year-reading{border-left:3px solid #b99858;padding:15px 17px;background:#f3ecdd}
.year-reading small{display:block;color:#947644;font-size:10px;letter-spacing:.1em;margin-bottom:9px}
.year-reading p{margin:0;color:#202923;font-size:16px;line-height:1.9}
.year-modern-reading{background:#eef1eb;border-left-color:#476b58}
.year-professional-reading{background:#f0ede6;border-left-color:#263d32}
.yearly-three-mode-card .flow-relations{margin:0 0 18px;background:#eef2ed;border:1px solid rgba(28,70,50,.14)}
.yearly-three-mode-card .year-flying-wrap{margin-top:20px}

@media(max-width:760px){
  .future-years{grid-template-columns:1fr;gap:16px}
  .decadal-dual-card .decadal-card-head{padding:20px 16px}
  .decadal-dual-card .decadal-card-head h4{font-size:25px}
  .decadal-dual-card .report-simple-reading p,.decadal-dual-card .report-modern-block p,.decadal-dual-card .report-pro-block p{font-size:16px;line-height:1.9}
  .year-card-head{padding:18px 16px 16px}
  .yearly-three-mode-card>.palace-mode-panel{padding:17px 16px 20px}
  .year-reading p{font-size:15px;line-height:1.85}
}


:root{
  --ww-ivory:#f3efe4;
  --ww-paper:#faf7ef;
  --ww-ink:#10251d;
  --ww-forest:#0b2a1f;
  --ww-gold:#b89a60;
  --ww-gold-soft:#d9c79f;
}
body{
  background:
    radial-gradient(circle at 18% 8%,rgba(184,154,96,.07),transparent 24%),
    radial-gradient(circle at 82% 22%,rgba(32,73,55,.035),transparent 28%),
    linear-gradient(180deg,#f7f3e9 0%,#f0ebdf 100%);
}
.section-ivory{
  background:
    linear-gradient(135deg,rgba(255,255,255,.34),transparent 38%),
    radial-gradient(circle at 78% 16%,rgba(184,154,96,.055),transparent 27%),
    var(--ww-ivory);
}
.section-noir{
  background:
    radial-gradient(circle at 78% 14%,rgba(185,157,99,.09),transparent 30%),
    linear-gradient(145deg,#081f18 0%,#0d2b21 56%,#071b15 100%);
}
.site-header{
  background:linear-gradient(90deg,rgba(8,31,24,.96),rgba(12,44,33,.95));
  border-bottom:1px solid rgba(205,176,116,.28);
  box-shadow:0 12px 34px rgba(10,27,21,.08);
}
.brand-seal{border-color:rgba(211,186,133,.55);color:#d8c59a;background:rgba(255,255,255,.018)}
.hero{min-height:min(780px,92vh);border-bottom:1px solid rgba(202,173,112,.28)}
.hero:after{content:"";position:absolute;inset:20px;pointer-events:none;border:1px solid rgba(210,184,130,.12)}
.hero-copy{max-width:920px}
.hero-copy h1{letter-spacing:-.025em;max-width:15ch}
.hero-copy h1 span{color:#e2d1aa}
.hero-lead{max-width:760px}
.hero-notes span{border-top:1px solid rgba(220,198,151,.22);padding-top:13px}
.chart-section{padding-top:84px}
.section-heading-compact{margin-bottom:28px!important}
.section-heading-compact h2{font-size:clamp(34px,5vw,58px);margin-bottom:10px}
.section-heading-compact p{max-width:680px}
.birth-card,.chart-summary,.chart-panel,.analysis-shell,.future-window{
  border-color:rgba(132,112,77,.28)!important;
  box-shadow:0 24px 80px rgba(24,37,29,.055);
}
.birth-card,.chart-summary,.chart-panel,.future-window{
  background:
    linear-gradient(135deg,rgba(255,255,255,.58),rgba(255,255,255,.16)),
    #f7f2e7;
}
.birth-card:before,.chart-panel:before,.future-window:before{
  content:"";display:block;height:1px;background:linear-gradient(90deg,transparent,#b99a61,transparent);opacity:.55;
}
.analysis-section{padding-top:76px;padding-bottom:76px}
.analysis-section .section-heading{padding-bottom:4px}
.analysis-tabs{border-color:rgba(220,198,151,.18)}
.analysis-tab{background:rgba(255,255,255,.018)}
.analysis-tab.active{background:rgba(205,174,111,.07);box-shadow:inset 0 -2px #c0a36a}
.cycles-section{padding-top:82px;padding-bottom:90px}
.future-head{border-bottom:1px solid rgba(115,92,53,.18);padding-bottom:22px;margin-bottom:28px}
.ethics-compact{padding-top:54px;padding-bottom:54px;border-top:1px solid rgba(206,178,118,.18)}
.ethics-compact .ethics{gap:28px}
.ethics-compact h2{font-size:clamp(28px,4vw,44px)}
footer{background:#071b15;border-top:1px solid rgba(205,176,116,.24);color:#d8d0c1}
footer .footer-brand strong{color:#e0cfa6}
@media(max-width:760px){
  .hero{min-height:660px}
  .hero:after{inset:10px}
  .hero-copy h1{font-size:clamp(46px,14vw,68px);line-height:1.12}
  .hero-lead{font-size:16px;line-height:1.95}
  .hero-notes{grid-template-columns:1fr;gap:10px}
  .chart-section,.analysis-section,.cycles-section{padding-top:58px;padding-bottom:58px}
  .section-heading-compact{margin-bottom:20px!important}
  .section-heading-compact h2{font-size:38px}
  .ethics-compact{padding-top:42px;padding-bottom:42px}
}



:root{
  --ww-reading:clamp(15px,1.02vw,17px);
  --ww-reading-lg:clamp(16px,1.12vw,18px);
}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{min-width:320px}
img,svg{max-width:100%}
.section-shell{width:min(1500px,calc(100% - 64px))}
.birth-card,.chart-summary,.chart-panel,.analysis-shell,.future-window{min-width:0}
.field input,.field select{font-size:16px}
.report-section p,.report-modern-block p,.report-pro-block p,.report-simple-reading p,
.decadal-dual-card .report-simple-reading p,.decadal-dual-card .report-modern-block p,.decadal-dual-card .report-pro-block p,
.year-reading p{overflow-wrap:anywhere}


@media (min-width:1181px){
  .site-header{padding-left:max(48px,5vw);padding-right:max(48px,5vw)}
  .section-shell{width:min(1500px,calc(100% - 96px))}
  .workbench-grid{grid-template-columns:minmax(0,1.08fr) minmax(410px,.92fr);gap:32px}
  .chart-panel{padding:38px}
  .ziwei-grid{grid-template-rows:repeat(4,minmax(166px,1fr));min-height:720px}
  .palace{padding-left:17px;padding-top:16px}
  .palace-name{font-size:16px}.star{font-size:14.5px}.minor-stars{font-size:9.5px;line-height:1.5}
  .chart-center h4{font-size:32px}.chart-center p{font-size:13px;line-height:1.7}
  .center-mutagen-source{font-size:10.5px;line-height:1.5}
  .analysis-content{max-width:1280px;margin-left:auto;margin-right:auto}
  .report-section p{font-size:var(--ww-reading-lg);line-height:2}
  .future-window{padding-left:34px;padding-right:34px;padding-bottom:34px}
}


@media (min-width:761px) and (max-width:1180px){
  .section-shell{width:min(100% - 48px,1100px)}
  .hero{padding-left:5vw;padding-right:5vw;min-height:760px}
  .hero-copy{max-width:760px}.hero h1{font-size:clamp(54px,7.4vw,82px)}
  .workbench-grid{grid-template-columns:1fr 1fr;gap:20px}
  .birth-card,.chart-summary{padding:30px}.chart-summary{min-height:390px}
  .chart-panel{padding:22px}
  .panel-head{align-items:flex-start}.panel-head h3{font-size:30px}
  .time-tier-btn{padding-left:12px;padding-right:12px}.time-choice-btn{font-size:10.5px}
  .ziwei-grid{grid-template-rows:repeat(4,minmax(132px,17vw));min-height:590px}
  .palace{padding:11px 46px 34px 10px}
  .palace-name{font-size:14px}.star{font-size:12.5px}.star small,.star-mutagen{font-size:7px}
  .palace-meta-stack .palace-branch{font-size:8.5px}.minor-stars{font-size:8px;line-height:1.35}
  .palace-mutagen-layer .temporal-mutagen-badge{min-width:31px;height:20px;font-size:9px}
  .chart-center{padding:16px 12px}.center-mark{width:46px;height:46px;font-size:22px}
  .chart-center h4{font-size:24px}.chart-center p{font-size:10.5px;line-height:1.58}
  .center-mutagen-source{font-size:8.8px;line-height:1.42}.center-chips span{font-size:8.8px;padding:4px 6px}
  .analysis-content{padding-top:32px}.report-section p{font-size:16px;line-height:1.95}
  .future-years{grid-template-columns:repeat(2,minmax(0,1fr))}
  .decadal-dual-card .report-simple-reading p,.decadal-dual-card .report-modern-block p,.decadal-dual-card .report-pro-block p{font-size:16px}
}


@media (max-width:760px){
  .section-shell{width:calc(100% - 24px)}
  .site-header{padding-left:14px;padding-right:14px}.brand{gap:10px}.brand-copy strong{font-size:16px}.brand-copy small{font-size:8px}
  .menu-toggle{min-width:44px;min-height:44px;font-size:16px}
  .hero{min-height:620px;padding:106px 18px 52px}.hero h1{font-size:clamp(42px,12vw,60px)}
  .hero-lead{font-size:16px;line-height:1.85}.btn{min-height:48px;font-size:14px}
  .chart-section,.analysis-section,.cycles-section{padding-top:50px;padding-bottom:54px}
  .section-heading-compact h2,.section-heading h2{font-size:clamp(32px,9vw,40px);line-height:1.28}
  .section-heading>p:last-child{font-size:15px;line-height:1.85}
  .birth-card,.chart-summary{padding:22px 18px}.card-overline{font-size:24px}
  .field>span,.birth-stage .field>span{font-size:14px}.field input,.field select,.birth-stage .field input,.birth-stage .field select{font-size:17px;min-height:54px}
  .form-note{grid-template-columns:1fr;gap:7px}.form-note b{font-size:12px}.form-note p{font-size:13px}
  .chart-panel{margin-left:-3px;margin-right:-3px;padding:10px 5px 12px}
  .panel-head{padding-left:5px;padding-right:5px}.panel-head h3{font-size:25px}
  .chart-mode-bar{grid-template-columns:1fr}.chart-mode-label{font-size:9px}.chart-mode-btn{min-height:38px;font-size:9.5px}
  .time-tier-btn{min-height:40px;font-size:10.5px}.time-choice-btn{min-height:38px;font-size:10px}.time-current-state{font-size:11px;line-height:1.55}
  .ziwei-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(108px,28.3vw));overflow:visible}
  .palace{padding:6px 36px 34px 5px}
  .palace-name{font-size:12px;line-height:1.18}.star{font-size:10.8px;line-height:1.22}.star small,.star-mutagen{font-size:6.8px}
  .palace-meta-stack .palace-branch{font-size:8px}.minor-stars{font-size:7.3px;line-height:1.28;max-height:33px}
  .palace-mutagen-rail{top:5px}.palace-mutagen-layer .temporal-mutagen-badge{min-width:27px;height:18px;font-size:8.2px}
  .chart-center{padding:12px 9px}.center-mark{width:38px;height:38px;font-size:19px}.chart-center h4{font-size:20px}
  .chart-center p{font-size:9.4px;line-height:1.54}.center-mutagen-source{font-size:8px;line-height:1.4}.center-chips span{font-size:8px;padding:4px 5px}
  .legend-row{font-size:11px;line-height:1.58;gap:10px}.source-key{width:20px;height:20px;font-size:9px}.dot{width:8px;height:8px}
  .palace-card{padding-left:0;padding-right:0}.palace-card-head h3{font-size:25px}
  .palace-mode-btn{min-height:42px;font-size:12px}
  .report-section p,.report-simple-reading p,.report-modern-block p,.report-pro-block p{font-size:16px!important;line-height:1.9!important}
  .report-chart-basis{font-size:14px;line-height:1.75}.report-chart-basis small{font-size:11px}
  .report-pro-structure-grid span{font-size:12px;line-height:1.55}
  .flying-mutagen-toggle{min-height:52px}.flying-mutagen-toggle b{font-size:16px}.flying-mutagen-toggle small{font-size:10px}
  .flying-mutagen-note{font-size:12px}.flying-mutagen-line{font-size:13px}.flying-mutagen-item p,.flying-mutagen-panel section>p{font-size:13px;line-height:1.8}
  .decadal-card-head h4{font-size:25px}.decadal-mode-toggle .palace-mode-btn{font-size:11px;min-height:42px}
  .decadal-dual-card .report-simple-reading p,.decadal-dual-card .report-modern-block p,.decadal-dual-card .report-pro-block p{font-size:16px;line-height:1.9}
  .year-mode-toggle .palace-mode-btn{font-size:11px;min-height:42px}.year-card-head .future-year-top b{font-size:32px}.year-card-head h5{font-size:20px}
  .year-reading p{font-size:16px;line-height:1.9}
  .future-window{padding-left:0;padding-right:0}.future-head>p{font-size:15px}
  footer{padding-left:18px;padding-right:18px;font-size:11px;line-height:1.65}
}


@media (max-width:390px){
  .section-shell{width:calc(100% - 16px)}
  .hero{padding-left:14px;padding-right:14px}.hero h1{font-size:40px}
  .chart-panel{padding-left:3px;padding-right:3px}
  .ziwei-grid{grid-template-rows:repeat(4,minmax(104px,29vw))}
  .palace{padding-left:4px;padding-right:32px}.palace-name{font-size:11.3px}.star{font-size:10.2px}.minor-stars{font-size:6.9px;max-height:31px}
  .palace-mutagen-layer .temporal-mutagen-badge{min-width:24px;padding-left:2px;padding-right:2px;font-size:7.5px}
  .chart-center h4{font-size:18px}.chart-center p{font-size:8.4px}.center-mutagen-source{font-size:7.1px}.center-chips span{font-size:7.1px;padding:3px 4px}
  .palace-mode-btn,.decadal-mode-toggle .palace-mode-btn,.year-mode-toggle .palace-mode-btn{font-size:10.5px;padding-left:3px;padding-right:3px}
}


.decadal-deep-card .decadal-modern-deep{padding:clamp(18px,3vw,34px);background:linear-gradient(145deg,rgba(255,253,246,.96),rgba(245,240,226,.78));border-left:2px solid rgba(176,143,79,.58)}
.decadal-deep-card .decadal-modern-deep>small,.decadal-pro-deep>section>small{display:block;color:#9b7b43;letter-spacing:.08em;margin-bottom:14px;font-size:clamp(13px,1.3vw,16px)}
.decadal-deep-card .decadal-modern-deep p{font-size:clamp(17px,1.75vw,21px);line-height:1.95;color:#25322e;margin:0 0 1.1em}
.decadal-pro-deep{display:grid;gap:18px}
.decadal-pro-deep section{background:rgba(252,250,242,.82);border:1px solid rgba(27,70,56,.16);padding:clamp(16px,2.4vw,28px)}
.decadal-pro-deep h5{font-family:"Noto Serif TC",serif;font-size:clamp(19px,1.9vw,25px);font-weight:600;color:#173d31;margin:0 0 14px}
.decadal-12-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(176,143,79,.32);border-left:1px solid rgba(176,143,79,.32)}
.decadal-12-grid span{display:flex;gap:7px;align-items:baseline;min-width:0;padding:10px 9px;border-right:1px solid rgba(176,143,79,.32);border-bottom:1px solid rgba(176,143,79,.32);font-size:clamp(13px,1.3vw,16px)}
.decadal-12-grid span b{color:#9b7b43;flex:0 0 auto}.decadal-12-grid span{color:#25322e}
.decadal-evidence-row{display:grid;grid-template-columns:minmax(90px,120px) 1fr;gap:14px;padding:12px 0;border-bottom:1px solid rgba(27,70,56,.12)}
.decadal-evidence-row:last-child{border-bottom:0}.decadal-evidence-row>b{color:#173d31;font-size:clamp(15px,1.4vw,18px)}
.decadal-evidence-row p,.decadal-pro-subsection p,.decadal-pro-note{margin:0;color:#36413d;font-size:clamp(15px,1.45vw,18px);line-height:1.85}
.decadal-pro-subsection p+p{margin-top:12px}.decadal-mutagen-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.decadal-mutagen-list li{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;background:rgba(27,70,56,.055);border:1px solid rgba(27,70,56,.12);font-size:clamp(14px,1.35vw,17px)}
.decadal-mutagen-list li b{color:#173d31}.decadal-mutagen-list li span{color:#7a7468}.decadal-pro-note{margin-top:14px!important;color:#777064!important}
@media(max-width:760px){.decadal-12-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.decadal-evidence-row{grid-template-columns:1fr;gap:5px}.decadal-mutagen-list{grid-template-columns:1fr}.decadal-pro-deep section{padding:16px 14px}.decadal-deep-card .decadal-modern-deep p{font-size:17px;line-height:1.9}}
@media(max-width:390px){.decadal-12-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.decadal-12-grid span{font-size:13px;padding:9px 7px}}


/* S4.3.4｜悟得 Logo integration */
.brand{gap:16px}
.brand-logo-frame,.footer-logo-frame{display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#020303,#111917);border:1px solid rgba(212,184,129,.48);box-shadow:0 10px 24px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.03)}
.brand-logo-frame{width:52px;height:52px;border-radius:12px}
.brand-logo,.footer-logo,.hero-logo-image{display:block;width:100%;height:100%;object-fit:cover}
.brand-copy strong{letter-spacing:.16em}
.hero{grid-template-columns:minmax(0,1.05fr) minmax(280px,.48fr);column-gap:min(5vw,52px)}
.hero-copy{max-width:880px}
.hero-logo-showcase{position:relative;z-index:2;justify-self:end;align-self:center;display:grid;gap:14px;width:min(100%,380px)}
.hero-logo-shell{padding:18px;background:linear-gradient(155deg,rgba(11,17,15,.95),rgba(14,27,22,.90));border:1px solid rgba(216,189,134,.30);box-shadow:0 26px 65px rgba(0,0,0,.36);backdrop-filter:blur(4px)}
.hero-logo-shell:before{content:"";display:block;height:1px;margin-bottom:16px;background:linear-gradient(90deg,transparent,rgba(216,189,134,.48),transparent)}
.hero-logo-shell:after{content:"";display:block;height:1px;margin-top:16px;background:linear-gradient(90deg,transparent,rgba(216,189,134,.28),transparent)}
.hero-logo-image{aspect-ratio:1.65/1;border:1px solid rgba(255,255,255,.03);box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
.hero-logo-caption{padding:0 6px;color:#d8d0c3}
.hero-logo-caption span{display:block;margin-bottom:5px;font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:#d9c79f}
.hero-logo-caption small{display:block;font-size:12px;line-height:1.8;color:#bdb7ab}
.footer-brand-main{display:flex;align-items:center;gap:14px}
.footer-logo-frame{width:44px;height:44px;border-radius:10px;flex:0 0 auto}
.footer-brand-main>div{display:flex;flex-direction:column;gap:5px}

@media (min-width:761px) and (max-width:1180px){
  .hero{grid-template-columns:minmax(0,1fr) minmax(220px,.42fr);align-items:center}
  .hero-logo-showcase{width:min(100%,280px)}
  .brand-logo-frame{width:46px;height:46px}
}

@media (max-width:760px){
  .brand{gap:10px}
  .brand-logo-frame{width:38px;height:38px;border-radius:10px}
  .hero{grid-template-columns:1fr;row-gap:22px}
  .hero-copy{max-width:none}
  .hero-logo-showcase{justify-self:start;width:min(100%,320px)}
  .hero-logo-shell{padding:12px}
  .hero-logo-shell:before,.hero-logo-shell:after{margin-top:10px;margin-bottom:10px}
  .hero-logo-caption{padding:0 2px}
  .hero-logo-caption small{font-size:11px;line-height:1.7}
  .footer-brand-main{align-items:flex-start}
  .footer-logo-frame{width:38px;height:38px;border-radius:10px}
}


/* S4.3.5｜runtime resilience: core content never depends on JS visibility */
.runtime-fallback-note{margin-top:14px;padding:11px 13px;border:1px solid rgba(151,120,66,.28);background:rgba(184,154,96,.06);color:#725f3b;font-size:12px;line-height:1.65}


/* S4.3.6｜Logo placement refinement: header only */
.hero{grid-template-columns:1fr!important;column-gap:0!important}
.hero-copy{max-width:920px!important}
.hero-logo-showcase,.footer-logo-frame{display:none!important}
.footer-brand-main{display:contents}
@media (min-width:761px) and (max-width:1180px){.hero{grid-template-columns:1fr!important}}
@media (max-width:760px){.hero{grid-template-columns:1fr!important;row-gap:0!important}}


/* S4.3.8 | Da-Geng interpretation upgrade; presentation baseline preserved */
#birthForm,#chart,#analysis,#cycles{scroll-margin-top:104px}
.hero-brand-title{display:grid!important;gap:.08em;max-width:none!important;text-wrap:nowrap!important}
.hero-brand-title .hero-title-line{display:block;width:max-content;max-width:100%;font-weight:500;line-height:1.08}
.hero-brand-title .hero-title-line-one{color:#f4efe5}
.hero-brand-title .hero-title-line-two{color:#d9b77a}
.hero-brand-title .hero-title-line-three{color:#f4efe5;font-size:.70em;letter-spacing:-.02em}
.form-status.runtime-loading-note{color:#8b6a35}
.form-status.runtime-error-note{color:#9b4038}
.birth-card.runtime-pending .btn[type="submit"]{opacity:.78}
@media (min-width:1181px){
  .hero-brand-title{font-size:clamp(58px,6vw,92px)!important}
  .hero-brand-title .hero-title-line-three{font-size:.68em}
}
@media (min-width:761px) and (max-width:1180px){
  .hero-brand-title{font-size:clamp(54px,7.1vw,78px)!important}
  .hero-brand-title .hero-title-line-three{font-size:.65em}
}
@media (max-width:760px){
  #birthForm,#chart,#analysis,#cycles{scroll-margin-top:82px}
  .hero-brand-title{font-size:clamp(46px,12vw,60px)!important;gap:.12em}
  .hero-brand-title .hero-title-line-three{font-size:.61em;letter-spacing:-.035em}
}
@media (max-width:390px){
  .hero-brand-title{font-size:44px!important}
  .hero-brand-title .hero-title-line-three{font-size:.60em}
}

/* S4.3.10 | 十年大限／流年聚焦主軸 */
.cycle-focus-axis{margin:16px 0 18px;padding:15px 16px;border:1px solid rgba(41,83,62,.18);background:linear-gradient(145deg,#fbf7ed,#f4efe3)}
.cycle-focus-axis>small{display:block;margin-bottom:9px;font-size:12px;font-weight:700;letter-spacing:.12em;color:#275440}
.cycle-focus-tags{display:flex;flex-wrap:wrap;gap:8px}.cycle-focus-tags span{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border:1px solid rgba(41,83,62,.22);background:#fffdf7;color:#293a32;font-size:13px;font-weight:600}
.cycle-focus-axis p{margin:9px 0 0;color:#71675d;font-size:12px;line-height:1.7}
@media(max-width:760px){.cycle-focus-axis{margin:12px 0 14px;padding:13px 12px}.cycle-focus-axis>small{font-size:12px}.cycle-focus-tags{gap:6px}.cycle-focus-tags span{font-size:12px;min-height:28px;padding:4px 8px}.cycle-focus-axis p{font-size:11.5px;line-height:1.65}}

.year-reading h6{margin:18px 0 7px;font-family:var(--serif);font-size:17px;line-height:1.5;font-weight:600;color:#2c3a32}.year-reading h6:first-of-type{margin-top:4px}.year-reading p+p{margin-top:16px}.year-simple-reading p{font-size:15px;line-height:1.85}.year-professional-reading h6{color:#33433b}.year-professional-reading p{line-height:1.92}


/* S4.3.15 | 專業術語版閱讀排版修正（不改判讀架構） */
.report-pro-block{padding:15px 0 18px;margin:0;border-bottom:1px solid rgba(184,148,82,.14)}
.report-pro-block+.report-pro-block{margin-top:2px}
.report-pro-block small{font-size:12px;font-weight:700;letter-spacing:.11em;margin-bottom:9px}
.report-pro-block p{font-size:16px;line-height:1.95}
.report-pro-structure{margin-bottom:22px}
.report-pro-structure+.report-pro-block{padding-top:2px}
.decadal-conclusion-section{padding-top:clamp(20px,2.8vw,32px)!important}
.decadal-judgment-body{display:grid;gap:16px}
.decadal-judgment-body>p{margin:0;color:#36413d;font-size:clamp(15px,1.45vw,18px);line-height:1.92}
.decadal-judgment-item{padding:16px 18px;background:rgba(27,70,56,.045);border-left:3px solid rgba(155,123,67,.52)}
.decadal-judgment-item h6{margin:0 0 8px;font-family:"Noto Serif TC",serif;font-size:clamp(16px,1.55vw,20px);font-weight:600;color:#173d31}
.decadal-judgment-item p{margin:0;color:#36413d;font-size:clamp(15px,1.45vw,18px);line-height:1.92}
.decadal-judgment-item p+p{margin-top:11px}
@media(max-width:760px){.report-pro-block{padding:13px 0 16px}.report-pro-block small{font-size:12px}.report-pro-block p{font-size:16px;line-height:1.9}.decadal-judgment-body{gap:13px}.decadal-judgment-item{padding:14px 13px}.decadal-judgment-item h6{font-size:17px}.decadal-judgment-item p,.decadal-judgment-body>p{font-size:16px;line-height:1.9}}

/* S4.3.17｜完整輔曜顯示＋流年／流月祿羊陀宮位標記 */
.minor-stars{max-height:none!important;overflow:visible!important;align-content:flex-start}
.minor-star-empty{opacity:.45}
.minor-star-item.is-featured-aux{font-weight:700;color:#7a3d4e}
.flow-luyt-strip{display:flex;flex-wrap:wrap;gap:3px;margin-top:7px;padding-right:2px;position:relative;z-index:3}
.flow-luyt-badge{display:inline-flex;align-items:center;justify-content:center;min-height:18px;padding:2px 5px;border:1px solid currentColor;background:#fffdf8;font-family:var(--sans);font-size:8px;font-weight:700;line-height:1.1;white-space:nowrap}
.flow-luyt-badge.source-yearly{box-shadow:inset 2px 0 0 #3f72a4}
.flow-luyt-badge.source-monthly{box-shadow:inset 2px 0 0 #c7772e}
.flow-luyt-badge.flow-lu{color:#2f7a55;background:#f2f8f3}
.flow-luyt-badge.flow-yang{color:#9a4037;background:#fbf2ef}
.flow-luyt-badge.flow-tuo{color:#72547f;background:#f7f2f8}
@media (min-width:1181px){.ziwei-grid{grid-template-rows:repeat(4,minmax(184px,auto));min-height:780px}.palace{padding-bottom:38px}.minor-stars{font-size:9.5px;line-height:1.5}}
@media (min-width:761px) and (max-width:1180px){.ziwei-grid{grid-template-rows:repeat(4,minmax(158px,auto));min-height:650px}.palace{padding-bottom:40px}.minor-stars{font-size:8px;line-height:1.38}}
@media (max-width:760px){.ziwei-grid{grid-template-rows:repeat(4,minmax(148px,auto))}.palace{padding-bottom:38px}.minor-stars{font-size:7.2px;line-height:1.3;gap:2px 4px}.flow-luyt-strip{gap:2px;margin-top:5px}.flow-luyt-badge{font-size:7px;min-height:16px;padding:2px 3px}}
@media (max-width:390px){.ziwei-grid{grid-template-rows:repeat(4,minmax(144px,auto))}.minor-stars{font-size:6.9px;line-height:1.28}.flow-luyt-badge{font-size:6.5px;padding:2px}}

/* S4.3.18｜疊宮宮位名稱累積顯示：本命標題＋大限／流年／流月縮寫 */
.palace-natal-name{display:block;min-width:0}
.palace-time-labels{display:flex;flex-wrap:wrap;gap:3px;margin-top:5px;font-family:var(--sans);font-size:8px;font-weight:700;line-height:1}
.palace-time-label{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:17px;padding:2px 4px;border:1px solid currentColor;border-radius:2px;background:#fffdf8;white-space:nowrap;letter-spacing:.02em}
.palace-time-label.source-decadal{color:#2f7a55;background:#edf7f0}
.palace-time-label.source-yearly{color:#3f72a4;background:#eef5fb}
.palace-time-label.source-monthly{color:#c36f27;background:#fff3e8}
@media (max-width:760px){
  .palace-time-labels{gap:2px;margin-top:3px;font-size:6.8px}
  .palace-time-label{min-width:19px;min-height:14px;padding:1px 3px}
}
@media (max-width:390px){
  .palace-time-labels{font-size:6.2px;gap:1px}
  .palace-time-label{min-width:17px;min-height:13px;padding:1px 2px}
}

/* K4.3.19｜WESTWOOD 十二宮高密度繪製規格
   參考專業命盤的資訊層級，不複製第三方視覺。四化顏色固定：本命紅／大限橙／流年綠／流月藍。 */
.ziwei-grid{background:#bfb4a5;border-color:#bfb4a5}
.palace{background:#fbf8ef;padding:12px 12px 38px;isolation:isolate}
.palace:hover,.palace:focus-visible{background:#f6f0e4}
.palace-head{position:relative;z-index:5;padding-right:18px}
.palace-name{font-size:clamp(12px,1.25vw,16px);line-height:1.12;color:#211c18;font-weight:700}
.palace.is-soul:before{font-size:40px;right:7px;bottom:22px;color:rgba(100,19,28,.055)}
.palace.is-body:after{right:7px;top:7px;font-size:8px;padding:2px 3px;background:#fbf8ef;z-index:7}
.major-stars{margin-top:8px;gap:5px 8px;align-items:flex-start;position:relative;z-index:4}
.star-item{display:inline-flex;align-items:center;gap:3px;flex-wrap:wrap;max-width:100%;font-weight:700}
.star-core{display:inline-flex;align-items:baseline;white-space:nowrap}
.star{font-size:clamp(11px,1.18vw,15px);line-height:1.14;color:#211c18}
.star small{font-size:.62em;font-weight:500;color:#80766b;margin-left:2px}
.palace-meta-stack{margin-top:7px;display:block;position:relative;z-index:4}
.minor-stars{margin-top:0;gap:3px 6px;color:#675f56;font-size:clamp(7.6px,.78vw,10px);line-height:1.32}
.minor-star-item{gap:2px}
.minor-star-item.is-natal-malefic{font-weight:800;color:#3b302a}
.minor-star-item.is-void-star{font-weight:600;color:#62566a}
.minor-star-item.is-featured-aux{font-weight:700;color:#755044}
.palace-corner-meta{position:absolute;right:8px;bottom:6px;display:flex;flex-direction:column;align-items:flex-end;gap:1px;z-index:8;font-family:var(--sans);line-height:1.05}
.palace-corner-meta .palace-branch{font-size:8.5px;font-weight:700;letter-spacing:.07em;color:#6f665d}
.palace-corner-meta .palace-decade{position:static;font-size:8px;font-weight:600;color:#8c8175}
.palace-stage{left:8px;bottom:6px;font-size:7.5px;color:#998e81;z-index:8}

/* 四化直接綁定星曜；只顯示祿／權／科／忌一字。顏色表達時間來源，而非四化種類。 */
.temporal-mutagen-set{display:inline-flex;align-items:center;gap:2px;margin-left:1px;vertical-align:middle;flex-wrap:nowrap}
.temporal-mutagen-set.is-compact{margin-left:1px;gap:1px}
.temporal-mutagen-badge,.palace-mutagen-layer .temporal-mutagen-badge{
  box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;
  min-width:17px;width:17px;height:17px;padding:0;border:0;border-radius:3px;
  font-family:var(--sans);font-style:normal;font-size:10px;font-weight:800;line-height:1;
  color:#fff!important;box-shadow:none!important;text-shadow:none
}
.temporal-mutagen-badge.source-origin,.palace-mutagen-layer .temporal-mutagen-badge.source-origin{background:#a94a4a!important}
.temporal-mutagen-badge.source-decadal,.palace-mutagen-layer .temporal-mutagen-badge.source-decadal{background:#c77b32!important}
.temporal-mutagen-badge.source-yearly,.palace-mutagen-layer .temporal-mutagen-badge.source-yearly{background:#4d8459!important}
.temporal-mutagen-badge.source-monthly,.palace-mutagen-layer .temporal-mutagen-badge.source-monthly{background:#4779a8!important}
.temporal-mutagen-badge b{display:none!important}
.palace-mutagen-layer{display:none!important}

/* 年／月祿羊陀：名稱固定為年祿年羊年陀／月祿月羊月陀，採低飽和時間層辨識。 */
.flow-luyt-strip{display:flex;flex-wrap:wrap;gap:3px;margin-top:6px;padding-right:0;position:relative;z-index:4}
.flow-luyt-badge{min-height:17px;padding:2px 4px;border-radius:2px;font-size:8px;font-weight:800;background:#fffdf8}
.flow-luyt-badge.source-yearly{color:#3d7449;border-color:#7da386;box-shadow:inset 2px 0 0 #4d8459;background:#f1f7f1}
.flow-luyt-badge.source-monthly{color:#3d6d99;border-color:#7f9fbd;box-shadow:inset 2px 0 0 #4779a8;background:#f0f5fa}

/* 疊宮名稱仍保留 S4.3.18 功能，但縮成次要資訊。 */
.palace-time-labels{margin-top:3px;gap:2px;font-size:7px}
.palace-time-label{min-width:19px;min-height:14px;padding:1px 3px;background:#fffaf1}
.palace-time-label.source-decadal{color:#9b632e;background:#fff3e6}
.palace-time-label.source-yearly{color:#397047;background:#eff7f0}
.palace-time-label.source-monthly{color:#3e6d98;background:#eef5fb}

/* 圖例改為四化時間層。 */
.mutagen-source-legend{gap:16px}
.legend-mutagen{display:inline-flex!important;align-items:center;justify-content:center;width:20px;height:20px;border-radius:3px;color:#fff;font-style:normal;font-size:11px;font-weight:800}
.legend-mutagen.source-origin{background:#a94a4a}.legend-mutagen.source-decadal{background:#c77b32}.legend-mutagen.source-yearly{background:#4d8459}.legend-mutagen.source-monthly{background:#4779a8}

@media (min-width:1181px){
  .ziwei-grid{grid-template-rows:repeat(4,minmax(180px,auto));min-height:760px}
  .palace{padding:13px 13px 40px}.minor-stars{font-size:9px}.palace-corner-meta .palace-branch{font-size:9px}.palace-corner-meta .palace-decade{font-size:8.5px}
}
@media (min-width:761px) and (max-width:1180px){
  .ziwei-grid{grid-template-rows:repeat(4,minmax(160px,auto));min-height:650px}
  .palace{padding:10px 10px 38px}.minor-stars{font-size:8px}
}
@media (max-width:760px){
  .chart-panel{padding-left:3px;padding-right:3px}
  .ziwei-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(142px,auto));overflow:visible;width:100%;min-height:0}
  .palace{padding:6px 5px 31px;min-width:0}
  .palace-head{padding-right:11px}.palace-name{font-size:10px}
  .major-stars{margin-top:5px;gap:2px 4px}.star{font-size:9.5px}.star small{font-size:5.8px}
  .minor-stars{font-size:6.6px;line-height:1.25;gap:2px 3px}
  .temporal-mutagen-set{gap:1px}.temporal-mutagen-badge,.palace-mutagen-layer .temporal-mutagen-badge{min-width:13px;width:13px;height:13px;font-size:7.5px;border-radius:2px}
  .flow-luyt-strip{gap:2px;margin-top:4px}.flow-luyt-badge{font-size:6.3px;min-height:14px;padding:1px 2px}
  .palace-corner-meta{right:4px;bottom:4px}.palace-corner-meta .palace-branch{font-size:6.5px}.palace-corner-meta .palace-decade{font-size:6px}
  .palace-stage{left:4px;bottom:4px;font-size:5.8px}
  .palace.is-body:after{right:3px;top:3px;font-size:6px;padding:1px 2px}
  .palace-time-labels{font-size:5.9px;gap:1px;margin-top:2px}.palace-time-label{min-width:15px;min-height:11px;padding:1px 2px}
  .chart-center{padding:9px 6px}.chart-center h4{font-size:18px}.chart-center p{font-size:8px;line-height:1.45}.center-chips span{font-size:6.7px;padding:3px 4px}
}
@media (max-width:390px){
  .ziwei-grid{grid-template-rows:repeat(4,minmax(138px,auto))}
  .palace{padding-left:4px;padding-right:4px}.palace-name{font-size:9.2px}.star{font-size:8.8px}.minor-stars{font-size:6.1px}
  .temporal-mutagen-badge,.palace-mutagen-layer .temporal-mutagen-badge{min-width:12px;width:12px;height:12px;font-size:7px}
  .flow-luyt-badge{font-size:5.9px}
}

/* K4.3.20｜疊宮右上文字化＋年/月祿羊陀純文字＋中央墨綠 */
.chart-center{
  background:var(--noir)!important;
}
.palace-head{padding-right:32px}
.palace-time-labels{
  position:absolute!important;
  top:10px!important;
  right:9px!important;
  z-index:6;
  display:flex!important;
  flex-direction:column!important;
  flex-wrap:nowrap!important;
  align-items:flex-end!important;
  gap:3px!important;
  margin:0!important;
  font-family:var(--sans);
  font-size:9px!important;
  font-weight:800!important;
  line-height:1.05!important;
  pointer-events:none;
}
.palace-time-label{
  display:block!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  white-space:nowrap;
  letter-spacing:.02em;
}
.palace-time-label.source-decadal{color:#b36c25!important;background:transparent!important}
.palace-time-label.source-yearly{color:#3f7f50!important;background:transparent!important}
.palace-time-label.source-monthly{color:#3f73a5!important;background:transparent!important}

.flow-luyt-strip{
  display:flex;
  flex-wrap:wrap;
  gap:3px 7px!important;
  margin-top:6px;
  padding-right:0;
  position:relative;
  z-index:4;
}
.flow-luyt-badge{
  display:inline!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-family:var(--sans);
  font-size:8px!important;
  font-weight:800!important;
  line-height:1.2!important;
  white-space:nowrap;
}
.flow-luyt-badge.source-yearly{color:#3f7f50!important;border:0!important;background:transparent!important;box-shadow:none!important}
.flow-luyt-badge.source-monthly{color:#3f73a5!important;border:0!important;background:transparent!important;box-shadow:none!important}
.flow-luyt-badge.flow-lu,.flow-luyt-badge.flow-yang,.flow-luyt-badge.flow-tuo{background:transparent!important}

@media (max-width:760px){
  .palace-head{padding-right:27px}
  .palace-time-labels{top:7px!important;right:6px!important;gap:2px!important;font-size:7px!important}
  .flow-luyt-strip{gap:2px 5px!important;margin-top:4px}
  .flow-luyt-badge{font-size:6.5px!important}
}
@media (max-width:390px){
  .palace-head{padding-right:24px}
  .palace-time-labels{top:6px!important;right:5px!important;font-size:6.3px!important}
  .flow-luyt-badge{font-size:6px!important}
}

/* K4.3.21｜疊宮標示貼齊右上＋十二宮外框墨綠粗框 */
.ziwei-grid{
  border:4px solid var(--noir)!important;
  box-sizing:border-box;
}
.palace-time-labels{
  top:3px!important;
  right:3px!important;
  gap:2px!important;
}
@media (max-width:760px){
  .palace-time-labels{
    top:2px!important;
    right:2px!important;
    gap:1px!important;
  }
}
@media (max-width:390px){
  .palace-time-labels{
    top:1px!important;
    right:1px!important;
  }
}

/* K4.3.22｜十二宮固定垂直錨點：宮名貼頂／疊宮放大／文昌右弼主星級／低階星曜 3/4／歲限祿羊陀置底中央 */
.palace{
  --k4322-edge-x:10px;
  --k4322-head-top:5px;
  --k4322-primary-top:48px;
  --k4322-low-top:72%;
}
.palace-head{
  position:absolute!important;
  top:var(--k4322-head-top)!important;
  left:var(--k4322-edge-x)!important;
  right:var(--k4322-edge-x)!important;
  z-index:9;
  padding-right:0!important;
  margin:0!important;
  line-height:1!important;
  pointer-events:none;
}
.palace-name{line-height:1!important}
.palace-natal-name{display:inline-block;line-height:1!important}

/* 大限／流年／流月：純文字、右上、提高一級字級。 */
.palace-time-labels{
  top:4px!important;
  right:4px!important;
  gap:2px!important;
  font-size:11px!important;
  line-height:1.02!important;
}

/* 主星＋文昌＋右弼固定逐行閱讀；四化仍跟隨各自星曜。 */
.major-stars.palace-primary-stack{
  display:flex!important;
  flex-direction:column!important;
  flex-wrap:nowrap!important;
  align-items:flex-start!important;
  gap:4px!important;
  margin-top:var(--k4322-primary-top)!important;
  position:relative;
  z-index:5;
}
.palace-primary-stack .star{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  width:100%;
  min-width:0;
  font-size:clamp(11px,1.18vw,15px)!important;
  line-height:1.08!important;
}
.palace-primary-stack .star-core{flex:0 0 auto}
.palace-primary-stack .temporal-mutagen-set{flex:0 0 auto}

/* 其餘重要輔星仍留在主要閱讀區；低階 adjective stars 才下移到約 3/4 高度。 */
.palace-support-stack{
  margin-top:5px;
  position:relative;
  z-index:5;
  padding-right:1px;
}
.palace-support-stars{margin-top:0!important}
.palace-low-tier{
  position:absolute;
  top:var(--k4322-low-top);
  left:var(--k4322-edge-x);
  right:var(--k4322-edge-x);
  z-index:4;
  transform:translateY(-50%);
  pointer-events:none;
}
.palace-low-stars{
  margin:0!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:3px 7px!important;
  color:#675f56;
}

/* 年祿／年羊／年陀、月祿／月羊／月陀固定宮格底部中央。 */
.flow-luyt-strip{
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  bottom:7px!important;
  top:auto!important;
  transform:translateX(-50%);
  width:max-content;
  max-width:43%;
  margin:0!important;
  padding:0!important;
  justify-content:center;
  align-items:center;
  z-index:10;
  line-height:1!important;
}

@media (min-width:1181px){
  .palace{--k4322-edge-x:10px;--k4322-head-top:5px;--k4322-primary-top:50px;--k4322-low-top:73%}
}
@media (min-width:761px) and (max-width:1180px){
  .palace{--k4322-edge-x:8px;--k4322-head-top:4px;--k4322-primary-top:45px;--k4322-low-top:72%}
  .palace-time-labels{top:3px!important;right:3px!important;font-size:10px!important}
}
@media (max-width:760px){
  .palace{--k4322-edge-x:4px;--k4322-head-top:3px;--k4322-primary-top:35px;--k4322-low-top:72%;padding-top:6px}
  .palace-head{left:4px!important;right:4px!important}
  .palace-time-labels{top:3px!important;right:2px!important;gap:1px!important;font-size:8.5px!important}
  .major-stars.palace-primary-stack{gap:2px!important}
  .palace-primary-stack .star{font-size:9.5px!important}
  .palace-support-stack{margin-top:3px}
  .palace-low-tier{left:4px;right:4px}
  .flow-luyt-strip{bottom:5px!important;max-width:46%;gap:2px 4px!important}
}
@media (max-width:390px){
  .palace{--k4322-head-top:3px;--k4322-primary-top:33px;--k4322-low-top:71%}
  .palace-time-labels{top:2px!important;right:1px!important;font-size:7.8px!important}
  .palace-primary-stack .star{font-size:8.8px!important}
  .flow-luyt-strip{bottom:4px!important;max-width:47%}
}

/* K4.3.23｜十二宮文字去重與專業證據分段 */
.report-pro-evidence p{margin:0 0 1.05em!important;line-height:1.95}
.report-pro-evidence p:last-child{margin-bottom:0!important}
@media(max-width:760px){.report-pro-evidence p{margin-bottom:1.2em!important;line-height:1.9}}

/* =========================================================
   K4.4.1｜Desktop / Tablet / Mobile responsive hardening
   UI-only overrides. No judgment/runtime logic is changed.
   ========================================================= */
:root{
  --responsive-gutter:clamp(16px,4vw,72px);
}
html,body{max-width:100%;overflow-x:hidden}
img,svg,canvas,video{max-width:100%;height:auto}
.section-shell{width:min(1440px,calc(100% - (var(--responsive-gutter) * 2)))}
.site-header{padding-left:max(5vw,env(safe-area-inset-left));padding-right:max(5vw,env(safe-area-inset-right))}
.hero{padding-left:max(6vw,env(safe-area-inset-left));padding-right:max(6vw,env(safe-area-inset-right))}
button,.btn,.analysis-tab,.palace-mode-btn,.chart-mode-btn{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.birth-card,.chart-summary,.chart-panel,.analysis-shell,.future-window,.yearly-panel,.decadal-list{min-width:0;max-width:100%}
.field input,.field select{width:100%;min-width:0}
.analysis-content,.report-section,.report-pro-block,.palace-mode-panel{min-width:0;max-width:100%;overflow-wrap:anywhere}

/* Desktop: preserve spacious two-column composition and large chart. */
@media (min-width:1181px){
  .section-shell{width:min(1480px,calc(100% - 8vw))}
  .workbench-grid{grid-template-columns:minmax(0,1.06fr) minmax(420px,.94fr);gap:30px}
  .chart-panel{padding:38px}
  .ziwei-grid{width:100%;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible}
  .analysis-tabs{overflow:visible}
  .report-section p,.report-pro-block p{max-width:1120px}
}

/* Tablet: one-column workbench, full-width 4×4 chart, larger touch targets. */
@media (min-width:761px) and (max-width:1180px){
  :root{--responsive-gutter:clamp(24px,4.5vw,48px)}
  .site-header{padding-left:var(--responsive-gutter);padding-right:var(--responsive-gutter)}
  .section-shell{width:calc(100% - (var(--responsive-gutter) * 2))}
  .workbench-grid,.cycles-layout{grid-template-columns:1fr!important}
  .birth-card,.chart-summary{padding:30px}
  .field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chart-panel{padding:18px 14px 20px}
  .ziwei-grid{width:100%;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(162px,auto));overflow:visible;min-height:680px}
  .palace{min-width:0;padding-left:9px;padding-right:44px}
  .palace-name{font-size:14px}.palace-primary-stack .star{font-size:12.2px!important}
  .minor-stars{font-size:8px;line-height:1.38}
  .chart-center h4{font-size:24px}.chart-center p{font-size:10.5px}
  .analysis-tabs{overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}
  .analysis-tab{min-width:180px;min-height:48px}
  .palace-mode-btn,.chart-mode-btn,.decadal-mode-toggle .palace-mode-btn,.year-mode-toggle .palace-mode-btn{min-height:44px}
  .analysis-content{max-width:none}
  .report-section p,.report-pro-block p{font-size:16px;line-height:1.95}
  .future-decadals{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Mobile: keep the entire 12-palace chart on one screen width; no horizontal chart scrolling. */
@media (max-width:760px){
  :root{--responsive-gutter:16px}
  body{font-size:16px}
  .site-header{height:70px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-top:env(safe-area-inset-top)}
  .main-nav{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}
  .hero{padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right));padding-bottom:max(58px,env(safe-area-inset-bottom))}
  .section-shell{width:calc(100% - 24px)}
  .section-heading h2{font-size:clamp(32px,10vw,40px)}
  .workbench-grid,.cycles-layout{grid-template-columns:1fr!important;gap:18px}
  .birth-card,.chart-summary{padding:20px 16px}
  .field-grid{grid-template-columns:1fr!important;gap:14px}
  .field.span-2{grid-column:auto!important}
  .field input,.field select{min-height:48px;font-size:16px}
  .btn,.nav-cta,.analysis-toolbar .btn{min-height:46px}
  .chart-panel{width:calc(100% + 8px);margin-left:-4px;margin-right:-4px;padding:9px 4px 12px;overflow:hidden}
  .panel-head{padding-left:5px;padding-right:5px}
  .ziwei-grid{
    width:100%!important;
    min-width:0!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(4,minmax(148px,auto))!important;
    overflow:visible!important;
    min-height:0!important;
  }
  .palace{min-width:0!important;width:auto!important;padding-left:4px!important;padding-right:32px!important;padding-bottom:38px!important}
  .palace-head{min-width:0}
  .palace-name{font-size:11.5px!important;white-space:nowrap}
  .palace-time-labels{max-width:42%;justify-content:flex-end}
  .palace-primary-stack .star{font-size:9.4px!important;max-width:100%}
  .minor-stars,.palace-low-stars{overflow-wrap:anywhere}
  .flow-luyt-strip{max-width:48%!important;white-space:nowrap}
  .chart-center{min-width:0;padding:10px 7px!important}
  .chart-center h4{font-size:18px!important;overflow-wrap:anywhere}.chart-center p{font-size:8.5px!important;line-height:1.48!important}
  .center-chips{gap:3px}.center-chips span{font-size:7px!important;padding:3px 4px!important}
  .legend-row{gap:10px 14px;font-size:11px}
  .analysis-tabs{width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
  .analysis-tab{min-width:148px;min-height:46px;padding:14px 16px;scroll-snap-align:start}
  .analysis-content{width:100%;max-width:none;padding-top:24px}
  .structure-overlay{min-width:0!important;max-width:100%!important;width:100%!important}
  .chart-tools{max-width:100%;flex-wrap:wrap}
  table{max-width:100%}
  .report-section{padding:26px 0}.report-section h3{font-size:23px;line-height:1.35}.report-section p{font-size:15px;line-height:1.9}
  .report-pro-block p,.report-pro-evidence p{font-size:15px!important;line-height:1.9!important}
  .palace-mode-btn,.chart-mode-btn,.decadal-mode-toggle .palace-mode-btn,.year-mode-toggle .palace-mode-btn{min-height:44px}
  .future-head{grid-template-columns:1fr}.future-decadals{grid-template-columns:1fr}
  .yearly-grid{grid-template-columns:1fr}
  .palace-drawer{width:100vw;max-width:100vw;padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right));padding-bottom:max(28px,env(safe-area-inset-bottom))}
  footer{padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right));padding-bottom:max(30px,env(safe-area-inset-bottom))}
}

/* Narrow phones: retain full chart without clipping; reduce only chart typography. */
@media (max-width:390px){
  .section-shell{width:calc(100% - 16px)}
  .chart-panel{width:calc(100% + 4px);margin-left:-2px;margin-right:-2px;padding-left:2px;padding-right:2px}
  .ziwei-grid{grid-template-rows:repeat(4,minmax(144px,auto))!important}
  .palace{padding-left:3px!important;padding-right:29px!important}
  .palace-name{font-size:10.8px!important}
  .palace-time-labels{font-size:7.5px!important}
  .palace-primary-stack .star{font-size:8.5px!important}
  .minor-stars{font-size:6.7px!important;line-height:1.24!important}
  .flow-luyt-badge{font-size:6.3px!important}
  .chart-center h4{font-size:17px!important}.chart-center p{font-size:7.9px!important}
  .analysis-tab{min-width:136px;font-size:12px}
  .report-section p,.report-pro-block p,.report-pro-evidence p{font-size:14.5px!important}
}

/* Landscape phones and small tablets: reclaim vertical space without changing content. */
@media (max-width:920px) and (orientation:landscape){
  .hero{min-height:680px}
  .site-header{height:64px}.main-nav{top:64px}
  .chart-section,.analysis-section,.cycles-section{padding-top:44px;padding-bottom:48px}
}


/* W5.0.4-Fly2-C12-UI2｜時間來源／身宮位置／疊宮字級，UI only */
/* 時間來源固定視覺語言：本=黑、大=橘、年=綠、月=藍。 */
.legend-source-row .source-key.source-origin{color:#302c28!important;background:#ece9e4!important;border-color:#cbc4ba!important}
.legend-source-row .source-key.source-decadal{color:#ad6424!important;background:#f7eadc!important;border-color:#ddb98f!important}
.legend-source-row .source-key.source-yearly{color:#39764a!important;background:#e7f2e9!important;border-color:#b7d2bd!important}
.legend-source-row .source-key.source-monthly{color:#3d70a0!important;background:#e8f0f8!important;border-color:#b8cce0!important}

/* 身宮標記改放在本命宮名正下方；停用舊的右上角偽元素，避免與疊宮資訊重疊。 */
.palace.is-body:after{display:none!important;content:none!important}
.palace-body-marker{
  display:flex!important;
  align-items:center;
  justify-content:center;
  width:max-content;
  min-width:16px;
  height:15px;
  margin-top:4px;
  padding:0 3px;
  box-sizing:border-box;
  border:1px solid rgba(100,19,28,.28);
  border-radius:2px;
  background:#fbf8ef;
  color:var(--burgundy);
  font-family:var(--sans);
  font-size:8px;
  font-weight:800;
  line-height:1;
}

/* 大限／流年／流月疊宮標示提高可讀性，並保留主星＋四化的垂直安全區。 */
.palace-time-labels{font-size:12.5px!important;line-height:1.04!important;gap:2px!important;max-width:42%}
@media (min-width:761px) and (max-width:1180px){
  .palace{--k4322-primary-top:48px}
  .palace-time-labels{font-size:11.5px!important}
}
@media (max-width:760px){
  .palace{--k4322-primary-top:43px}
  .palace-time-labels{font-size:10px!important;line-height:1.04!important;gap:1px!important}
  .palace-body-marker{min-width:14px;height:13px;margin-top:3px;padding:0 2px;font-size:7px}
}
@media (max-width:390px){
  .palace{--k4322-primary-top:40px}
  .palace-time-labels{font-size:9.2px!important}
  .palace-body-marker{min-width:13px;height:12px;font-size:6.5px}
}

/* W5.0.4-Fly2-C12-UI3｜十二宮用途精簡說明，UI only */
.palace-card-title{min-width:0}
.palace-card-title h3{margin:0}
.palace-purpose{margin:7px 0 0!important;color:rgba(241,235,219,.58)!important;font-family:var(--sans);font-size:12.5px!important;font-weight:400;line-height:1.55!important;letter-spacing:.035em}
@media(max-width:700px){
  .palace-card-title{width:100%}
  .palace-purpose{margin-top:6px!important;font-size:11.5px!important;line-height:1.5!important}
}

/* W5.0.4-Fly2-C12-UI3-S1A-ZW｜前台防一般複製，Security UI only */
html.westwood-copy-guard,
html.westwood-copy-guard body,
html.westwood-copy-guard body *{
  -webkit-user-select:none!important;
  user-select:none!important;
  -webkit-touch-callout:none!important;
}

/* 輸入、編輯與可操作控制必須維持正常。 */
html.westwood-copy-guard input,
html.westwood-copy-guard textarea,
html.westwood-copy-guard select,
html.westwood-copy-guard option,
html.westwood-copy-guard [contenteditable="true"],
html.westwood-copy-guard [contenteditable="plaintext-only"]{
  -webkit-user-select:text!important;
  user-select:text!important;
  -webkit-touch-callout:default!important;
}

html.westwood-copy-guard img,
html.westwood-copy-guard svg{
  -webkit-user-drag:none;
  user-drag:none;
}


/* W5.0.4 commercial shell M1 — member identity foundation. Core/renderer untouched. */
.nav-member{border:1px solid rgba(220,195,137,.52);background:transparent;color:inherit;border-radius:999px;padding:.72rem 1rem;font:inherit;font-size:.85rem;cursor:pointer;transition:.2s ease;white-space:nowrap}
.nav-member:hover,.nav-member:focus-visible{background:rgba(220,195,137,.12);border-color:rgba(220,195,137,.86);outline:none}
.nav-member.is-authenticated{background:rgba(220,195,137,.14)}
.member-modal[hidden]{display:none!important}
.member-modal{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:20px}
.member-modal-backdrop{position:absolute;inset:0;background:rgba(4,14,10,.76);backdrop-filter:blur(8px)}
.member-dialog{position:relative;width:min(520px,100%);max-height:min(760px,calc(100dvh - 40px));overflow:auto;background:#f4efe3;color:#14231c;border:1px solid rgba(115,92,42,.25);border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.35);padding:30px}
.member-close{position:absolute;right:18px;top:16px;width:38px;height:38px;border:0;border-radius:50%;background:rgba(11,36,27,.07);font-size:25px;line-height:1;color:#173329;cursor:pointer}
.member-dialog-head{padding-right:42px}.member-dialog-head h2{margin:.2rem 0 .5rem;font-size:clamp(1.8rem,5vw,2.4rem)}.member-dialog-head>p:last-child{margin:0;color:#5c665f;line-height:1.7}
.member-message{min-height:1.4em;margin:14px 0 4px;font-size:.88rem;color:#5c665f}.member-message.is-error{color:#8a302b}.member-message.is-success{color:#236342}
.member-config-note{margin:14px 0;padding:12px 14px;border:1px solid rgba(153,111,38,.28);background:rgba(205,173,105,.13);border-radius:12px;font-size:.86rem;line-height:1.6}
.member-signed-out{display:grid;gap:11px;margin-top:18px}.member-provider-btn{width:100%;min-height:50px;border:1px solid rgba(23,51,41,.18);background:#fff;color:#1c2e27;border-radius:12px;display:flex;align-items:center;gap:12px;padding:0 16px;font:inherit;font-weight:600;cursor:pointer}.member-provider-btn:hover:not(:disabled){border-color:rgba(23,51,41,.48);box-shadow:0 4px 15px rgba(13,33,25,.06)}.member-provider-btn:disabled{opacity:.55;cursor:not-allowed}.member-provider-btn small{margin-left:auto;color:#7c847f;font-size:.72rem;font-weight:500}.member-provider-mark{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#f3f3f3;font-family:Arial,sans-serif;font-size:.9rem}
.member-divider{display:flex;align-items:center;gap:12px;color:#8a918d;font-size:.75rem;margin:3px 0}.member-divider:before,.member-divider:after{content:"";height:1px;background:rgba(23,51,41,.13);flex:1}
.member-email-form{display:grid;gap:8px}.member-email-form>label{font-size:.8rem;font-weight:600}.member-email-row{display:flex;gap:8px}.member-email-row input{min-width:0;flex:1;border:1px solid rgba(23,51,41,.2);background:#fff;border-radius:10px;padding:12px 13px;font:inherit;color:#172820}.member-email-submit{border:0;border-radius:10px;background:#173329;color:#fff;padding:0 14px;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer}.member-email-form>p{margin:0;color:#858d88;font-size:.74rem;line-height:1.5}
.member-signed-in{margin-top:18px}.member-identity-card{display:flex;align-items:center;gap:12px;padding:15px;border-radius:14px;background:#fff;border:1px solid rgba(23,51,41,.12)}.member-state-dot{width:11px;height:11px;border-radius:50%;background:#2b8b5a;box-shadow:0 0 0 5px rgba(43,139,90,.12)}.member-identity-card div{min-width:0}.member-identity-card small{display:block;color:#7b847f;margin-bottom:2px}.member-identity-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.92rem}
.member-meta{display:grid;gap:0;margin:14px 0;border:1px solid rgba(23,51,41,.12);border-radius:14px;overflow:hidden;background:rgba(255,255,255,.48)}.member-meta>div{display:flex;justify-content:space-between;gap:14px;padding:12px 14px;border-bottom:1px solid rgba(23,51,41,.09)}.member-meta>div:last-child{border-bottom:0}.member-meta dt{color:#737d77;font-size:.78rem}.member-meta dd{margin:0;text-align:right;font-size:.82rem;font-weight:600;word-break:break-word}.member-phase-note{font-size:.78rem;line-height:1.6;color:#7b847f}.member-signout-btn{width:100%;border:1px solid rgba(23,51,41,.24);background:transparent;color:#173329;border-radius:11px;padding:12px;font:inherit;font-weight:600;cursor:pointer}
body.member-modal-open{overflow:hidden}
@media(max-width:720px){.nav-member{padding:.65rem .8rem}.member-dialog{padding:24px 18px;border-radius:20px}.member-email-row{display:grid}.member-email-submit{min-height:44px}}


/* M1-FIX1 — persistent mobile member entry + clearer auth retry UX. */
.header-actions{display:flex;align-items:center;gap:8px}
.member-quick{display:none;border:1px solid rgba(220,195,137,.52);background:rgba(220,195,137,.08);color:#f4efe5;border-radius:999px;padding:.58rem .78rem;font:inherit;font-size:.8rem;letter-spacing:.04em;cursor:pointer;white-space:nowrap}
.member-quick:hover,.member-quick:focus-visible{background:rgba(220,195,137,.16);border-color:rgba(220,195,137,.86);outline:none}
.member-quick.is-authenticated{background:rgba(220,195,137,.16)}
.member-email-submit:disabled{opacity:.64;cursor:not-allowed}
@media(max-width:1050px){.member-quick{display:inline-flex;align-items:center;justify-content:center;min-height:40px}.main-nav .nav-member{display:none}}
@media(max-width:420px){.member-quick{padding:.5rem .66rem;font-size:.74rem}.header-actions{gap:5px}.menu-toggle{font-size:14px!important}.brand-copy small{display:none}}
