:root{font-family:Inter,"PingFang SC","Microsoft Yahei",system-ui,sans-serif;color:#20334a;background:#f2f5f9;line-height:1.65;--navy:#10263e;--gold:#dcc08a}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #ba9550;outline-offset:4px}header{height:94px;padding:0 max(5%,calc((100vw - 1250px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dfe5ed;background:#fff}.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:24px;letter-spacing:2px}.brand small{display:block;font-size:10px;letter-spacing:3px;font-weight:500}.mark{background:var(--navy);color:var(--gold);height:42px;width:42px;display:grid;place-items:center;border-radius:4px;font-family:serif}.edition,.badge{font-size:12px;border:1px solid #d6dfe9;border-radius:4px;padding:5px 10px;color:#5a6b7d;white-space:nowrap}nav{display:flex;gap:32px;font-size:14px}.textbtn{border:0;background:none;padding:0;color:inherit;font-size:14px}.intro{max-width:1250px;margin:40px auto 28px;padding:0 24px}.eyebrow{font-size:12px;letter-spacing:2px;color:#7c6b46;font-weight:600}h1{font-family:"Songti SC","SimSun",serif;font-size:38px;font-weight:500;letter-spacing:2px;line-height:1.4;margin:10px 0}p{margin:10px 0;color:#64748b;font-size:16px}h2{font-size:21px;font-weight:600;margin:0}h3{font-size:18px;font-weight:600}.mobile{display:none}.workspace{max-width:1202px;margin:auto;display:grid;grid-template-columns:350px minmax(0,1fr);box-shadow:0 12px 45px #10263e0a;border:1px solid #dce3eb;border-radius:10px;background:#fff;overflow:hidden}.inputpanel{padding:30px;background:#f9fbfd;border-right:1px solid #dce3eb}.sectiontop{display:flex;align-items:center;gap:12px}.step{font-family:serif;color:#a28550;border:1px solid #d9d0bc;padding:2px 8px;font-size:16px}.muted{font-size:14px;color:#708096}.inputpanel>p{margin:14px 0 25px}label{font-size:14px;font-weight:500;display:block;margin-bottom:9px}label span{float:right;font-size:12px;color:#8492a2}input:not([type=checkbox]),select{width:100%;background:white;color:#26384d;border:1px solid #d5deea;border-radius:5px;height:46px;padding:10px;font-size:14px;min-width:0}input:focus,select:focus{outline:2px solid #b9995d;outline-offset:2px}.formrow{display:grid;grid-template-columns:1fr 1.35fr;gap:12px;margin-top:20px}.check{display:flex;align-items:flex-start;gap:8px;font-size:13px;font-weight:400;line-height:1.6;margin-top:19px}.check input{accent-color:var(--navy);margin-top:4px;flex-shrink:0;width:15px;height:15px}.privacy{display:flex;gap:10px;margin-top:22px;padding:14px 0;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}.privacy span{color:#a28550;font-size:24px}.privacy p{font-size:12px;margin:0;line-height:1.8}.primary,.secondary{border:0;border-radius:5px;padding:12px 18px;font-size:14px;font-weight:600}.primary{background:var(--navy);color:var(--gold);width:100%;margin-top:15px}.primary:hover{background:#1e3d5d}.secondary{background:#edf1f6;color:#20334a;border:1px solid #d9e1eb}.samplebtn{display:block;margin:auto;border:0;background:none;color:#7f6a40;font-size:14px}.error{font-size:13px;color:#b03333;min-height:5px}.resultpanel{padding:30px 34px}.resulthead{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.resulthead h2{margin-top:6px}.resulthead p{margin:8px 0}.resulthead .badge{margin-top:5px}.emptygrid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:25px;gap:12px}.emptygrid>span{height:140px;border:1px solid #dce5ef;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#b8c4d0;font-family:serif;font-size:40px;background:linear-gradient(#f9fbfe,#fff)}.emptygrid small{font:11px system-ui;letter-spacing:2px;color:#8c9aac;margin-top:5px}#empty h3{text-align:center;margin-top:40px}#empty>p{text-align:center;font-size:14px;max-width:460px;margin:10px auto}.emptybottom{display:flex;justify-content:space-between;gap:10px;margin-top:48px;border-top:1px solid #e3e9ef;padding-top:20px;font-size:12px;color:#7a8999}.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px}.pillar{text-align:center;background:#10263e;color:#e7d4ad;border-radius:6px;padding:15px 8px}.pillar>small{font-size:12px;color:#b3c1d1;display:block}.pillar strong{display:block;font-size:30px;font-family:serif;letter-spacing:5px;line-height:1.6}.pillar em{font-style:normal;font-size:12px;color:#b3c1d1}.tabs{display:flex;gap:26px;margin:22px 0;border-bottom:1px solid #e4e9ef}.tabs button{border:0;background:none;padding:10px 0 12px;font-size:14px;color:#738397;border-bottom:2px solid transparent}.tabs button[aria-selected=true]{color:#10263e;border-color:#ac8a4b;font-weight:600}.chartheading{display:flex;justify-content:space-between;align-items:center;gap:8px}.chartheading h3{margin:0}.chartheading span{font-size:12px;color:#8895a5}.elements{display:grid;gap:9px;margin-top:16px}.element{display:grid;grid-template-columns:30px 1fr 35px;align-items:center;gap:14px;font-size:14px}.track{height:9px;background:#eff3f7;border-radius:10px;overflow:hidden}.fill{height:100%;border-radius:10px;transition:width .4s}.element small{font-size:12px;color:#8190a1;text-align:right}.footnote{font-size:12px;line-height:1.7;margin-top:16px}.daycard{background:#f5f7fa;padding:18px 22px;margin-top:18px;border-left:3px solid #bca16c}.daycard>span{font-size:12px;color:#7e8b9c}.daycard h3{margin:4px 0;font-family:serif;font-size:23px}.daycard p{font-size:14px;margin-bottom:0}.reportactions{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:24px}.notice{padding:12px 15px;border:1px solid #dfe6ee;color:#6c7e92;background:#f8fafc;font-size:13px}.readingsection{margin-top:22px}.readingsection h3{margin-bottom:6px}.readingsection p{font-size:14px}.prompts{padding-left:22px;color:#4d6178}.prompts li{padding:10px 0;font-size:16px}.pricing{max-width:1202px;margin:36px auto;display:grid;grid-template-columns:1fr 300px;gap:40px;background:var(--navy);color:white;border-radius:10px;padding:35px 40px}.pricing h2{font-family:serif;font-size:28px;font-weight:400;margin:8px 0}.pricing .eyebrow{color:var(--gold)}.pricing p{color:#b2c0d0;font-size:14px}.inclusions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:25px;font-size:14px;color:#d5dfe9}.pricebox{border-left:1px solid #385069;padding-left:30px}.pricebox .badge{color:#d9c497;border-color:#516076}.price{font-size:52px;font-weight:500;line-height:1.4;color:#e5d0a7;margin-top:10px}.price sup{font-size:22px;margin-right:5px}.price span{font-size:14px;color:#a7b7c8;margin-left:8px}.pricebox .secondary{width:100%}.pricebox small{font-size:12px;display:block;margin-top:12px;color:#9eafc1}.faq{max-width:1202px;margin:38px auto 55px}.faq h2{margin-bottom:18px}details{border-bottom:1px solid #dce3eb;padding:17px 0}summary{font-size:16px;cursor:pointer}details p{font-size:14px;max-width:850px;line-height:1.9}footer{padding:25px 5%;background:white;border-top:1px solid #dce3eb;display:flex;gap:22px;align-items:center}footer .brand{font-size:18px}footer p{font-size:12px;margin-right:auto}footer>a:last-child{font-size:12px;color:#7c8b9b}dialog{border:1px solid #dce3eb;border-radius:10px;max-width:450px;width:calc(100% - 40px);padding:30px;color:#20334a;box-shadow:0 20px 80px #0003}dialog::backdrop{background:#10263e88}dialog p{font-size:16px;line-height:1.9;white-space:pre-line}.close{float:right;font-size:25px;border:0;background:none;color:#6d7e91}html{scroll-behavior:smooth}[hidden]{display:none!important}@media(max-width:900px){header{padding:0 24px}nav{gap:18px}.workspace,.pricing,.faq{margin-left:24px;margin-right:24px}.workspace{grid-template-columns:310px minmax(0,1fr)}.inputpanel{padding:24px}.resultpanel{padding:24px}.chartheading{display:block}.inclusions{grid-template-columns:1fr}.emptygrid{gap:6px}.pricing{gap:20px;padding:30px}.pillars{gap:7px}.pillar strong{font-size:25px}}@media(max-width:700px){header{height:74px;padding:0 20px}.brand{font-size:21px}.mark{width:35px;height:35px}nav{gap:16px}nav a:first-child{display:none}.edition{display:none}.intro{margin-top:25px;padding:0 20px}h1{font-size:30px}.intro p{font-size:14px}.mobile{display:block}.workspace{grid-template-columns:minmax(0,1fr);margin:0 16px}.inputpanel{border-right:0;border-bottom:1px solid #dce3eb;padding:24px}.resultpanel{padding:24px 20px}.resulthead .badge{font-size:11px}.resulthead h2{font-size:20px}.emptygrid>span{height:110px}#empty h3{font-size:16px}.emptybottom{gap:6px;font-size:11px;margin-top:25px}.tabs{gap:24px}.pricing{grid-template-columns:1fr;margin:24px 16px;padding:26px;gap:24px}.pricebox{border-left:0;border-top:1px solid #385069;padding:24px 0 0}.inclusions{grid-template-columns:1fr;gap:9px}.faq{margin:30px 22px}footer{flex-wrap:wrap;gap:14px;padding:24px}footer p{width:calc(100% - 100px);font-size:11px}.pillar strong{font-size:27px}.chartheading span{display:block;margin-top:5px}.reportactions .secondary{padding:10px 14px}.eyebrow{letter-spacing:1.4px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fill{transition:none}}@media print{header,.intro,.inputpanel,.pricing,.faq,footer,.tabs,.reportactions,dialog,#empty{display:none!important}body{background:white}.workspace{display:block;border:0;box-shadow:none;margin:0;max-width:none}.resultpanel{padding:0}.resulthead{margin-bottom:20px}.pillar{background:#fff!important;color:#10263e!important;border:1px solid #cbd5e1}.pillar>small,.pillar em{color:#52647a!important}.resultpanel [role=tabpanel]{display:block!important;break-inside:avoid}#reading,#reflection{margin-top:25px}.notice{margin-top:15px}.daycard{break-inside:avoid}.resulthead .badge{display:none}.fill{print-color-adjust:exact;-webkit-print-color-adjust:exact}h3{break-after:avoid}.readingsection{break-inside:avoid}}

.tablewrap{overflow-x:auto;margin:16px 0;border:1px solid #dce4ee;border-radius:6px}.data-table{border-collapse:collapse;width:100%;font-size:14px;min-width:480px}.data-table caption{text-align:left;padding:12px 14px;font-weight:600;background:#f5f7fa}.data-table th,.data-table td{padding:12px 10px;text-align:center;border-bottom:1px solid #e7ecf2;border-right:1px solid #e7ecf2;vertical-align:middle}.data-table thead th{background:#10263e;color:#e0cfaa;font-weight:500}.data-table tbody th{background:#f5f7fa;color:#65768a;font-weight:400;white-space:nowrap}.data-table tr:last-child>*{border-bottom:0}.data-table tr>*:last-child{border-right:0}.data-table td{line-height:1.8}.data-table .ganzhi-cell{font-family:serif;font-size:25px;color:#10263e}.metagrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}.metaitem{background:#f5f7fa;border:1px solid #e4e9f0;padding:13px 16px;border-radius:5px}.metaitem small{display:block;color:#7c899a;font-size:12px}.metaitem strong{font-size:15px;font-weight:500;overflow-wrap:anywhere}.cyclepicker{display:block;width:100%;margin:15px 0}.detailnote{font-size:13px;color:#6a7d93;line-height:1.8}.report-section{margin-top:25px}.report-section h3{margin-bottom:8px}.report-section p{font-size:14px}.charttitle{font-size:17px;margin:5px 0 10px}.tabs{overflow-x:auto;gap:22px}.tabs button{flex-shrink:0;white-space:nowrap}.readingsection p{line-height:1.95}.readingsection{border-bottom:1px solid #edf0f5;padding-bottom:18px}.readingsection:last-child{border:0}.reportactions{border-top:1px solid #e5eaf0;padding-top:18px}@media(max-width:700px){.metagrid{grid-template-columns:1fr}.data-table{font-size:13px}.data-table th,.data-table td{padding:10px 8px}.tabs{gap:21px}.tabs button{font-size:14px}}@media print{.tablewrap{overflow:visible;break-inside:avoid}.data-table{min-width:0;font-size:11px}.data-table th,.data-table td{padding:7px}.data-table thead th{background:#fff;color:#10263e;border:1px solid #cbd5e1}.cyclepicker{display:none}.metagrid{grid-template-columns:1fr 1fr}.report-section{break-inside:avoid}#chart,#cycles,#overview{margin-top:20px}.resultpanel [role=tabpanel]{break-inside:auto}}

.fortune-intro{padding:20px 22px;background:#10263e;border-radius:6px;color:#e1c898;margin:14px 0 20px}.fortune-intro h3{font-family:serif;font-size:25px;font-weight:500;margin:5px 0 10px}.fortune-intro p{color:#c1ccd9;font-size:14px;line-height:1.9}.fortune-evidence{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.fortune-evidence span{font-size:12px;background:#eef2f7;border:1px solid #dce4ee;padding:5px 9px;border-radius:4px}.fortune-section{margin:24px 0;border-bottom:1px solid #e4eaf1;padding-bottom:20px}.fortune-section h3{font-size:19px;margin:0 0 12px}.fortune-section p{font-size:15px;line-height:2;margin:10px 0}.fortune-section .basis{font-size:12px;color:#8a7552;border-left:2px solid #c3a56e;padding-left:12px}.fortune-year{display:flex;gap:14px;align-items:center;margin:16px 0}.fortune-year label{margin:0;white-space:nowrap}.fortune-year select{max-width:220px}.fortune-empty{padding:14px;background:#f5f7fa;border:1px solid #e0e7ee;font-size:14px;color:#60748c}.fortune-months{font-size:13px}.fortune-months p{margin:8px 0}@media print{.fortune-year{display:none}.fortune-intro{background:white;border:1px solid #cbd5e1;color:#20334a}.fortune-intro p{color:#52647a}.fortune-section{break-inside:avoid}.fortune-section p{font-size:12px}#fortune{margin-top:20px}}

/* Keep wide tables inside the report grid instead of clipping them. */
.inputpanel,.resultpanel,.resulthead>div,#results,[role=tabpanel],.formrow>div,.tableframe{min-width:0;max-width:100%}
.formrow{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}
.tablewrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:auto;scrollbar-width:thin;scrollbar-color:#9aaabd #edf2f7}
.tableframe{margin:20px 0}.tableframe .tablewrap{margin:8px 0 0}
.tabletools{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#728397;font-size:12px}.tableshift{display:flex;gap:6px;flex-shrink:0}.tableshift button{border:1px solid #d3deea;background:#f6f8fb;color:#354e68;border-radius:4px;padding:7px 11px;font-size:13px;min-height:36px}.tableshift button:hover{background:#e9eff6}
.tablewrap:focus-visible{outline:2px solid #b9995d;outline-offset:3px}.resulthead>div{overflow-wrap:anywhere}
@media(max-width:700px){
.tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 8px;overflow:visible;border-bottom:0;margin:22px 0 20px}
.tabs button{width:100%;min-width:0;padding:11px 3px;background:#f2f5f9;border:1px solid #e0e6ef;border-radius:5px;font-size:14px;white-space:normal}
.tabs button[aria-selected=true]{background:#10263e;color:#e4cfaa;border-color:#10263e}
.pillars,.emptygrid{grid-template-columns:repeat(4,minmax(0,1fr))}.pillar{padding:13px 4px}.pillar strong{font-size:clamp(1.375rem,6vw,1.6875rem);letter-spacing:1px}.pillar em{font-size:11px}
.fortune-year{flex-wrap:wrap;gap:8px}.fortune-year select{max-width:100%}.emptybottom{flex-wrap:wrap}
}
@media print{.tabletools{display:none}.tablewrap{width:100%;max-width:none;overflow:visible}.tableframe{break-inside:avoid}.tableframe .tablewrap{margin-top:0}}
/* A brighter reading room: ink blue, amber, jade and berry. */
.starlead{font-size:15px;line-height:1.9}.star-summary{display:flex;flex-wrap:wrap;gap:9px;margin:20px 0 24px}.starbadge{font-size:12px;padding:6px 11px;border-radius:20px;border:1px solid #dce3ec}.starbadge.present{color:#215c58;background:#e6f5ee;border-color:#b4dbcd}.starbadge.absent{color:#68788e;background:#f4f6f9}.star-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.starcard{padding:23px;border:1px solid #dce5ef;border-radius:12px;min-width:0;break-inside:avoid}.starcardtop{display:flex;justify-content:space-between;align-items:center;gap:10px}.star-number{font-family:Georgia,serif;font-size:24px;color:#b08536}.star-kind{font-size:12px;color:#6c7d91;letter-spacing:1px}.starcard h3{font-family:"Songti SC",serif;font-size:25px;margin:10px 0 6px}.starcard p{font-size:14px;line-height:1.95;color:#50627a}.starcard .star-position{font-weight:600;color:#1d5a63;margin-top:0}.starcard .star-calculation{font-size:12px;background:#ffffffa6;padding:10px 12px;border:1px solid #e0e8ef;border-radius:5px}.starcard .star-result{border-top:1px dashed #c6d2df;padding-top:14px;font-size:13px}.starcard details{padding:10px 0 0;border:0}.starcard summary{font-size:13px;color:#485f7a}.starcard details a{font-size:12px;color:#315d94;text-decoration:underline}.term-guide{margin-top:30px;padding:24px;background:#f3f6fb;border-radius:10px;border:1px solid #dae4ef}.term-guide>h3{margin-top:0}.god-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.god-card{background:white;border:1px solid #dce5ef;border-radius:7px;padding:17px;min-width:0}.god-card h4{margin:0;font-size:17px;color:#243d63}.god-card small{display:block;font-size:12px;color:#9a752e;margin-top:4px}.god-card p{font-size:14px;line-height:1.85;margin-bottom:0}
@media screen{
body{background:radial-gradient(ellipse at 96% 18%,#dcecf6 0,transparent 38%),radial-gradient(ellipse at 0 46%,#ece5f7 0,transparent 38%),#f0f4fa}
header{background:linear-gradient(110deg,#152c4c,#253759 65%,#403858);color:#f0f4fa;border-bottom:3px solid #cca55f;box-shadow:0 4px 18px #17305712}
header .brand{color:#f0d7a1}.mark{background:#ffffff0d;border:1px solid #d2ae68;color:#f2cf8b}.edition{color:#e7d0a7;border-color:#ffffff33;background:#ffffff08}nav{color:#e4eafa}nav a:hover,nav button:hover{color:#f0ce84}
.intro{position:relative;isolation:isolate;overflow:hidden;max-width:1202px;padding:24px 30px 22px;margin-top:30px;background:linear-gradient(115deg,#fff 30%,#edf4fd);border:1px solid #d8e2ef;border-left:4px solid #b89551;border-radius:8px}
.intro:after{content:"";position:absolute;right:-40px;top:-35px;width:235px;height:235px;border-radius:50%;background:repeating-radial-gradient(circle at center,transparent 0 20px,#7894bb20 21px 22px,transparent 23px 30px);z-index:-1;pointer-events:none}
.intro .eyebrow{color:#926e2c;letter-spacing:3px}.intro h1{color:#223953}.intro p{color:#64758e}.workspace{border-color:#ccd8e8;box-shadow:0 14px 48px #2139550c}.inputpanel{background:linear-gradient(180deg,#eef3fb,#f9fbff);border-color:#dbe4f0}.step{background:#fffaf0;border-color:#d8ba7d;color:#977124;border-radius:3px}.inputpanel .primary{background:linear-gradient(100deg,#233f6b,#454a76);color:#f2dcae;box-shadow:0 5px 14px #283f6620}.inputpanel .primary:hover{background:#1c355b}
.resultpanel{background:#ffffffed}.resulthead .eyebrow{color:#9a752e}.resulthead h2{font-family:"Songti SC",serif;font-size:26px;color:#253957}.resulthead .badge{background:#edf5f7;color:#2c6871;border-color:#cadde2}
.pillar{border:1px solid #ffffff33;box-shadow:0 5px 10px #18395612}.pillar[data-element="木"]{background:linear-gradient(145deg,#195e60,#247f73)}.pillar[data-element="火"]{background:linear-gradient(145deg,#914536,#b25d4e)}.pillar[data-element="土"]{background:linear-gradient(145deg,#785c2f,#947442)}.pillar[data-element="金"]{background:linear-gradient(145deg,#505573,#697394)}.pillar[data-element="水"]{background:linear-gradient(145deg,#245779,#317a96)}.pillar strong{color:#fff4d9}.pillar>small,.pillar em{color:#f5f8fbdd}
.tabs{gap:10px;border-bottom:0}.tabs button{border:1px solid #dce4ef;background:#f4f7fc;border-radius:6px;padding:9px 11px;color:#58708a}.tabs button:hover{background:#eaf0f9}.tabs button[aria-selected=true]{background:#253f68;color:#f3dcae;border-color:#253f68;box-shadow:0 3px 8px #283f6618}
.fortune-intro{position:relative;overflow:hidden;background:linear-gradient(115deg,#24385a,#394468 65%,#564865);border-left:4px solid #d6b378;padding:24px;color:#e8ca96;box-shadow:0 6px 20px #24385814}.fortune-intro:after{content:"";position:absolute;width:120px;height:120px;right:-55px;bottom:-70px;border:18px double #ffffff0e;border-radius:50%;pointer-events:none}.fortune-intro .eyebrow{color:#f1d5a4}.fortune-intro h3{color:#fff0d2;letter-spacing:1px}.fortune-intro p{color:#e3e8f2;line-height:1.95}.fortune-evidence span:nth-child(3n+1){color:#316879;background:#e9f4f7;border-color:#d1e8ee}.fortune-evidence span:nth-child(3n+2){color:#6d527d;background:#f1ecf6;border-color:#e1d8ec}.fortune-evidence span:nth-child(3n){color:#8b6a34;background:#fff5e4;border-color:#eddebd}
.fortune-section h3{border-left:4px solid #bba06a;padding-left:12px;color:#294266}.fortune-section:nth-of-type(3n+1) h3{border-color:#428c93}.fortune-section:nth-of-type(3n+2) h3{border-color:#9878a5}.fortune-section p{color:#4e627c}.fortune-section .basis{background:#f6f8fc;padding:8px 12px;border-left:2px solid #c3ab79;border-radius:0 4px 4px 0;line-height:1.8;color:#8d7144}.notice{border-left:3px solid #649da6;background:#f0f7fa;color:#4e6e80}.daycard{background:linear-gradient(110deg,#f7f1e6,#f6f8fc);border-left-color:#b6924e}.daycard h3{color:#3b4b6b}
.data-table caption{background:#eef3fa;color:#344f74}.data-table thead th{background:#2b4266;color:#f5dfb3}.data-table tbody tr:nth-child(even) td{background:#f6f9fd}.data-table tbody th{background:#eef3fa;color:#526d91}.tablewrap{border-color:#d4dfed;border-radius:7px}.tableshift button{background:#eaf2fa;border-color:#d0dfee;color:#345d88}.metaitem:nth-child(4n+1){background:#f0f6f8;border-color:#d9e6eb}.metaitem:nth-child(4n+2){background:#f5f0f8;border-color:#e4dced}.metaitem:nth-child(4n+3){background:#fbf5ea;border-color:#ebdfc6}.metaitem:nth-child(4n){background:#edf2fa;border-color:#d7e0ef}
.starcard[data-tone="0"]{background:linear-gradient(150deg,#fff7e9,#fff 55%);border-top:3px solid #c79c51}.starcard[data-tone="1"]{background:linear-gradient(150deg,#eaf5f4,#fff 55%);border-top:3px solid #5f9794}.starcard[data-tone="2"]{background:linear-gradient(150deg,#f3ebf7,#fff 55%);border-top:3px solid #9b7ca9}.starcard[data-tone="3"]{background:linear-gradient(150deg,#edf3fe,#fff 55%);border-top:3px solid #708fb9}.starcard h3{color:#344867}.starcard .star-number{color:#ae8c52}.starcard:hover{box-shadow:0 6px 22px #2b456b0b}
.readingsection h3{color:#2d456a}.term-guide{background:linear-gradient(120deg,#edf3fb,#f5f0f8)}.god-card:nth-child(3n+1){border-top:3px solid #698fbd}.god-card:nth-child(3n+2){border-top:3px solid #72a3a0}.god-card:nth-child(3n){border-top:3px solid #a88eb7}
.pricing{position:relative;overflow:hidden;background:linear-gradient(120deg,#19354d,#294f62 60%,#5b5262);border-top:3px solid #d4ae6a}.pricing .inclusions span:nth-child(2n){color:#e4cfba}.faq details{background:#ffffffb5;margin-bottom:9px;border:1px solid #d8e3ee;border-radius:7px;padding:16px 20px}.faq summary{color:#3c5577}footer{background:#eaf0f9;color:#415979;border-top-color:#cbd9eb}
}
@media(max-width:700px){.star-grid,.god-grid{grid-template-columns:minmax(0,1fr)}.starcard{padding:21px}.term-guide{padding:20px}.intro{margin-left:16px;margin-right:16px;padding:22px 20px}.intro:after{right:-110px;opacity:.8}.intro h1{font-size:31px}.tabs{gap:7px 8px}.tabs button{padding:11px 3px}.resulthead h2{font-size:23px}.fortune-intro{padding:20px}.fortune-intro h3{font-size:24px;line-height:1.5}.faq details{padding:15px}.starcard .star-position{font-size:15px}.star-kind{letter-spacing:0}}
@media print{.star-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.starcard{padding:14px}.starcard p{font-size:11px}.starcard details{display:block}.god-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.starcard details p{display:block}.star-summary{display:none}.term-guide{break-inside:avoid}.starcard details a{font-size:10px}.starcard h3{font-size:20px}}
.dategroup{border:0;margin:0;padding:0;min-width:0}.dategroup legend{font-size:14px;font-weight:500;width:100%;padding:0;margin-bottom:12px}.dategroup legend span{float:right;font-size:12px;color:#8492a2}.date-selects{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);gap:9px}.date-selects>div{min-width:0}.date-selects label{font-size:14px;color:#748399;margin-bottom:6px}.date-selects select{padding:8px 7px;font-size:14px}.date-summary{font-size:12px;margin:9px 0 0;line-height:1.7;color:#72849b}.starcard .star-calculation{overflow-wrap:anywhere}.data-table td{overflow-wrap:anywhere}
@media(max-width:360px){.date-selects{gap:6px}.date-selects select{padding:8px 4px}}
.portrait-chart{--paper:#fcfaf5;--rule:#e6dfd2;margin:22px 0;background:var(--paper);border:1px solid var(--rule);border-radius:18px;overflow:hidden;box-shadow:0 14px 32px #49391c0a;isolation:isolate}
.portrait-heading{padding:24px 26px 16px;display:flex;align-items:center;justify-content:space-between;background:radial-gradient(ellipse at top right,#dfcba447,transparent 65%);border-top:4px solid #b18b51}
.portrait-heading small{font-size:10px;letter-spacing:2px;color:#84765e}.portrait-heading h3{font-family:'Songti SC','SimSun',serif;font-size:29px;letter-spacing:5px;margin:4px 0;color:#253f44}.portrait-seal{border:1px solid #a84e42;color:#a84e42;writing-mode:vertical-rl;letter-spacing:4px;padding:8px 4px;font-family:serif;border-radius:3px;font-size:15px}
.portrait-legend{display:flex;justify-content:center;gap:20px;padding:0 10px 14px;font-size:12px}.portrait-chart [data-wx='木']{color:#27745d}.portrait-chart [data-wx='火']{color:#bd4b40}.portrait-chart [data-wx='土']{color:#846143}.portrait-chart [data-wx='金']{color:#a8751f}.portrait-chart [data-wx='水']{color:#2d6da5}
.portrait-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:14px;line-height:1.6;color:#34464c}.portrait-table caption{padding:8px 12px 16px;color:#7a766d;font-size:11px;caption-side:bottom}.portrait-table th,.portrait-table td{border:0;border-bottom:1px solid var(--rule);border-right:1px solid #e6dfd266;text-align:center;vertical-align:top;padding:12px 5px;overflow-wrap:anywhere;white-space:normal}.portrait-table tr> :first-child{width:64px;vertical-align:middle}.portrait-table thead th{background:#25474b;color:#f8f3e8;font-weight:500;letter-spacing:2px;padding:15px 4px}.portrait-table thead th.portrait-day{background:#88683d;color:#fff8e6}.portrait-table tbody tr:nth-child(even){background:#f3eee4}.portrait-table td.portrait-day{background:#d6b36613;box-shadow:inset 1px 0 #c8a86a44,inset -1px 0 #c8a86a44}.portrait-help{padding:6px 0;border:0;background:none;color:#776f61;font-size:12px;line-height:1.7;font-weight:400;white-space:normal}
.portrait-glyph{display:block;font-family:'Songti SC','Noto Serif CJK SC','SimSun',serif;font-size:42px;font-weight:600;line-height:1.35}.portrait-sub{display:block;color:#877e71;font-size:11px;font-weight:400;margin-top:2px}.portrait-table .portrait-major td{padding:12px 3px}.portrait-hidden{min-height:55px;padding:4px 0}.portrait-hidden>span{font-size:15px;font-weight:600}.portrait-hidden small{display:block;color:#7a756a;font-size:12px}.portrait-star{display:block;max-width:100%;width:100%;border:1px solid #d4deda;border-radius:5px;background:#edf3ef;color:#345d50;font-size:12px;padding:6px 2px;margin:0 0 6px;line-height:1.6;white-space:normal;overflow-wrap:anywhere;transition:background .15s}.portrait-star:hover{background:#dce9e0;border-color:#a4bfae}.portrait-day .portrait-star{background:#f4ecd9;border-color:#e2d3af;color:#80622e}.portrait-foot{font-size:11px;text-align:center;padding:0 12px 16px;margin:0;color:#87775d}.portrait-unknown{color:#9b978e}
#modalbody{white-space:pre-line}.portrait-chart button:focus-visible{outline:2px solid #2d6da5;outline-offset:1px}
@media(max-width:700px){.portrait-chart{margin:16px -8px;border-radius:12px}.portrait-heading{padding:18px 15px 12px}.portrait-heading h3{font-size:26px}.portrait-table{font-size:12px}.portrait-table tr> :first-child{width:43px}.portrait-table th,.portrait-table td{padding:10px 3px}.portrait-help{font-size:10px}.portrait-glyph{font-size:34px}.portrait-hidden>span{font-size:13px}.portrait-hidden small{font-size:11px}.portrait-legend{gap:16px}.portrait-star{font-size:11px;padding:7px 1px;letter-spacing:0}.portrait-table thead th{letter-spacing:0;font-size:13px}.portrait-table caption{font-size:10px}}
@media(max-width:360px){.portrait-chart{margin-left:-10px;margin-right:-10px}.portrait-table tr> :first-child{width:34px}.portrait-glyph{font-size:29px}.portrait-star{font-size:10px}.portrait-hidden>span{font-size:12px}}
@media print{.portrait-chart{box-shadow:none;break-inside:avoid;border-radius:0}.portrait-heading{padding:10px}.portrait-star{font-size:10px;padding:2px}.portrait-glyph{font-size:28px}.portrait-table th,.portrait-table td{padding:5px 3px}.portrait-legend{padding:5px}.portrait-table{font-size:11px}}
/* A single visual language for the reading desk. */
@media screen{
:root{--navy:#24474b;--gold:#e2c48d;background:#f5f2eb;color:#2e4549}body{background:radial-gradient(ellipse at 0 20%,#dae9e355,transparent 45%),radial-gradient(ellipse at 100% 65%,#eedcbc55,transparent 45%),#f5f2eb}header{height:82px;background:#203f43;border-bottom:1px solid #c5a56b;box-shadow:none}header .brand{color:#f6e9ce}.mark{border-radius:9px;background:#f8efd90a}nav{font-size:13px;color:#e3eae5}.edition{border-radius:20px;font-size:11px;padding:5px 13px}
.intro{margin-top:32px;margin-bottom:24px;padding:38px 42px;background:linear-gradient(115deg,#fffcf6 30%,#edf3ed);border:1px solid #deddd0;border-radius:20px;box-shadow:0 8px 30px #29443d04}.intro:after{width:300px;height:300px;right:30px;top:-25px;background:repeating-radial-gradient(circle,transparent 0 25px,#8a9d7924 26px 27px,transparent 28px 46px);border:1px solid #b4a27644}.intro:before{content:'四柱 · 五行 · 岁时';position:absolute;right:80px;top:95px;font-family:serif;color:#7d8e79;font-size:14px;letter-spacing:5px}.intro .eyebrow{color:#8c703f;font-size:11px;letter-spacing:3px}.intro h1{font-size:40px;letter-spacing:3px;color:#25474b;margin:12px 0}.intro p{color:#6e7c75;max-width:600px;font-size:15px}
.workspace{border:1px solid #dbdfd4;border-radius:20px;box-shadow:0 16px 45px #293e3110;grid-template-columns:330px minmax(0,1fr);background:#fffefa}.inputpanel{background:linear-gradient(180deg,#eaf0e9,#f6f5ee);padding:30px 26px;border-color:#dce2d7}.sectiontop h2{font-family:'Songti SC',serif;font-size:22px;color:#294a47}.step{border-radius:50%;width:32px;height:32px;padding:2px;display:grid;place-items:center;background:#fffcf4;border-color:#d6c8a8}.inputpanel .muted,.inputpanel .footnote{color:#6a7c72}.inputpanel input:not([type=checkbox]),.inputpanel select{border:1px solid #d6ddd1;border-radius:9px;background:#fffefa;height:48px;color:#324c48}.inputpanel input:focus,.inputpanel select:focus{outline-color:#739689}.formrow{gap:10px}.inputpanel .primary{border-radius:10px;background:#294e49;color:#fff3d9;padding:14px;box-shadow:0 5px 14px #244d4920;letter-spacing:1px}.inputpanel .primary:hover{background:#38665f}.samplebtn{color:#5b766b;padding:12px}.privacy{border-color:#d6dfd2}.privacy span{color:#70917b}.privacy p{color:#6c7e71}.date-summary{color:#7c877a}
.resultpanel{padding:30px;background:#fffefa}.resulthead{border-bottom:1px solid #e7e7dc;padding-bottom:16px;margin-bottom:18px}.resulthead h2{color:#29474a;font-size:26px;letter-spacing:1px}.resulthead .eyebrow{font-size:10px;letter-spacing:2px;color:#9b7c48}.resulthead .badge{border-radius:20px;background:#edf2e9;border-color:#d8e2d0;color:#536e52}.resulthead p{font-size:12px;color:#78847b}.pillars{gap:9px;margin-top:15px}.pillar{border-radius:12px;box-shadow:none;padding:12px 5px}.pillar strong{font-size:29px;letter-spacing:3px}.tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:7px;background:#f0f2e9;border:1px solid #e2e5d9;border-radius:13px;gap:5px;margin:20px 0 24px}.tabs button{background:transparent;border:1px solid transparent;border-radius:8px;color:#69796c;padding:10px 3px;font-size:13px}.tabs button:hover{background:#fffdf6}.tabs button[aria-selected=true]{background:#294d48;color:#fff1cd;border-color:#294d48;box-shadow:0 3px 7px #284a4617}.metagrid{gap:9px}.metaitem{border-radius:10px;padding:12px 14px}.metaitem small{font-size:11px}.metaitem strong{font-size:14px}.metaitem:nth-child(4n+1){background:#eff4ed;border-color:#e0e6d9}.metaitem:nth-child(4n+2){background:#f7f0e5;border-color:#eae0cd}.metaitem:nth-child(4n+3){background:#edf3f4;border-color:#dce6e7}.metaitem:nth-child(4n){background:#f3eff4;border-color:#e6dfe7}.charttitle{color:#49655a;font-size:16px;letter-spacing:1px}.detailnote{color:#738075;font-size:12px}.portrait-chart{box-shadow:0 8px 22px #4f44200a}
.emptygrid{gap:12px;margin-top:28px}.emptygrid>span{height:165px;background:linear-gradient(155deg,#f8f3e8,#f0f3e9);color:#829580;border:1px solid #dadfcf;border-radius:50px 50px 12px 12px;font-size:43px}.emptygrid>span:nth-child(2){background:#eef4ee;color:#669382}.emptygrid>span:nth-child(3){background:#faf0e2;color:#b59361}.emptygrid>span:nth-child(4){background:#edf1f5;color:#7892a1}.emptygrid small{color:#8c9789;font-size:9px}.emptybottom{color:#7d8b78;border-color:#e1e5d9}#empty h3{font-family:'Songti SC',serif;color:#566e5b;font-weight:500;line-height:1.8}.fortune-intro{border-radius:14px;background:linear-gradient(120deg,#294d48,#3f6559);border-color:#ceb079;box-shadow:none}.fortune-section h3,.readingsection h3{color:#34594e}.fortune-section p,.readingsection p{color:#5e7167;line-height:2}.fortune-section .basis{background:#f4f3e9}.starcard{border-radius:13px}.starcard h3{color:#38574b}.notice{border-color:#d4e0d5;background:#f0f5ee;color:#557363;border-radius:9px}.term-guide{border-radius:14px;background:#eff3ea}.daycard{border-radius:10px;background:#f5f1e5}.reportactions{border-color:#e1e5d9}.secondary{border-radius:9px;background:#eef2e9;border-color:#d6e0d1;color:#35564b}.reportactions .textbtn{color:#71816e}
.pricing{margin-top:30px;border-radius:20px;background:linear-gradient(115deg,#254742,#3f6050);border-top:2px solid #cbae78;padding:36px 40px}.pricing h2{letter-spacing:2px}.pricing p{color:#d0dacf}.pricebox{border-color:#78917b66}.pricing .inclusions{color:#e2e8dc}.pricebox .secondary{background:#eee5ce;border-color:#eee5ce;color:#3c5140}.faq h2{font-family:'Songti SC',serif;color:#365348}.faq details{border-radius:11px;border-color:#e0e3d7;background:#fffdf7;padding:18px 22px}.faq summary{color:#50654f;font-size:15px}.faq details p{color:#6c7a68}footer{background:#e9eee3;color:#5b6e57;border-color:#dbe2d2}dialog{border-radius:18px;background:#fffdf7;border-color:#d8dece}dialog h2{font-family:'Songti SC',serif;color:#355649}dialog p{color:#617363;font-size:15px}
}
@media screen and (max-width:1000px){.intro:before{display:none}.intro:after{right:-120px;opacity:.6}.workspace{grid-template-columns:290px minmax(0,1fr)}.resultpanel{padding:24px}.inputpanel{padding:24px 20px}}
@media screen and (max-width:700px){header{height:70px}.intro{padding:25px 22px;margin:20px 16px;border-radius:16px}.intro h1{font-size:31px;letter-spacing:2px}.intro p{font-size:13px;line-height:1.9}.intro:after{right:-185px}.workspace{grid-template-columns:minmax(0,1fr);border-radius:16px;margin:0 12px}.inputpanel{padding:24px 22px}.resultpanel{padding:24px 18px}.resulthead h2{font-size:22px}.resulthead .badge{font-size:10px;padding:4px 8px}.tabs{grid-template-columns:repeat(4,minmax(0,1fr));padding:5px;gap:4px}.tabs button{font-size:12px;padding:12px 1px;line-height:1.6}.tabs button:first-child,.tabs button:nth-child(2){grid-column:span 2;font-size:14px}.metagrid{grid-template-columns:repeat(2,minmax(0,1fr))}.metaitem{padding:10px}.metaitem strong{font-size:12px}.metaitem small{font-size:10px}.emptygrid>span{height:125px;font-size:34px}.emptygrid{gap:8px}.pricing{margin:24px 12px;padding:26px;border-radius:16px}.pricing h2{font-size:25px}.faq{margin:30px 16px}.faq details{padding:16px}.portrait-chart{margin-left:-6px;margin-right:-6px}.fortune-intro{padding:20px}}
@media(prefers-reduced-motion:reduce){.portrait-star{transition:none}}
