:root{--ink: #0e1119;--ink-2: #161b28;--panel: #171d2c;--line: #3a4358;--gold: #c9a86a;--gold-soft: #e6cf9a;--cinnabar: #b0402f;--paper: #ede2c6;--paper-2: #e3d5b0;--paper-ink: #2b2418;--txt: #e8e2d2;--txt-dim: #a9a58f;--radius: 10px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:"Noto Serif SC",Songti SC,STSong,SimSun,serif;background:var(--ink);color:var(--txt);line-height:1.65}.bg-pattern{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.35;background:radial-gradient(ellipse 60% 40% at 50% -5%,rgba(201,168,106,.14),transparent),radial-gradient(ellipse 40% 30% at 90% 100%,rgba(176,64,47,.08),transparent)}main{max-width:880px;margin:0 auto;padding:0 14px 40px;position:relative}.site-head{text-align:center;padding:34px 16px 10px;position:relative}.brand{display:inline-flex;align-items:center;gap:14px}.seal{width:58px;height:58px;flex:none;background:var(--cinnabar);color:#f7ecd8;border-radius:8px;display:grid;place-items:center;font-size:21px;font-weight:700;letter-spacing:2px;line-height:1.15;padding:6px;transform:rotate(-3deg);box-shadow:0 2px 10px #b0402f73;writing-mode:vertical-rl}.brand h1{margin:0;font-size:clamp(30px,7vw,42px);letter-spacing:6px;color:var(--gold-soft);font-weight:700}.tagline{margin:2px 0 0;color:var(--txt-dim);letter-spacing:4px;font-size:13px}.head-note{margin:14px 0 0;font-size:12.5px;color:var(--gold);letter-spacing:2px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px 18px 20px;margin-top:18px;box-shadow:inset 0 0 0 1px #c9a86a14,0 6px 24px #00000059}.panel h2{margin:0 0 14px;font-size:19px;letter-spacing:3px;color:var(--gold-soft);font-weight:700}.h-orn{color:var(--cinnabar);margin-right:6px}.grid-form{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 14px}.grid-form label{display:flex;flex-direction:column;gap:5px;font-size:13.5px;color:var(--txt-dim);letter-spacing:1px}input,select{font:inherit;font-size:15.5px;color:var(--txt);background:var(--ink-2);border:1px solid var(--line);border-radius:7px;padding:9px 10px;width:100%;color-scheme:dark}input:focus,select:focus{outline:1.5px solid var(--gold);border-color:var(--gold)}.checks{margin:14px 0 4px;display:flex;flex-direction:column;gap:7px}.check{font-size:14px;color:var(--txt);display:flex;gap:8px;align-items:flex-start;cursor:pointer}.check input{width:17px;height:17px;margin-top:4px;accent-color:var(--cinnabar);flex:none}.dst-check{color:#e8b4a6}.btn-main{margin-top:14px;width:100%;font:inherit;font-size:18px;letter-spacing:10px;font-weight:700;color:#f7ecd8;background:linear-gradient(180deg,#c04a36,var(--cinnabar));border:1px solid #d06a55;border-radius:8px;padding:12px 0;cursor:pointer}.btn-main:active{transform:translateY(1px)}.privacy-note{margin:10px 0 0;font-size:12.5px;color:var(--txt-dim);text-align:center}.correction-panel ul{margin:0;padding-left:20px}.correction-panel li{margin:3px 0;font-size:14.5px}.chart-panel{padding:10px;background:#10141f}.chart-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,minmax(104px,auto));gap:3px}.palace{background:linear-gradient(160deg,var(--paper),var(--paper-2));color:var(--paper-ink);border-radius:4px;padding:6px 7px;display:flex;flex-direction:column;min-height:104px;box-shadow:inset 0 0 0 1px #5a461e59}.palace.is-soul{box-shadow:inset 0 0 0 2px var(--cinnabar)}.p-head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid rgba(90,70,30,.3);padding-bottom:2px}.p-head b{font-size:14.5px;letter-spacing:1px}.p-head span{font-size:11.5px;color:#7a6a44}.p-stars{padding:4px 0 2px;display:flex;flex-wrap:wrap;gap:1px 6px;align-content:flex-start;flex:1}.star{white-space:nowrap}.star.major{font-size:15.5px;font-weight:700;color:#33270e}.star.minor{font-size:12px;color:#5d5136}.star em{font-style:normal;font-size:10.5px;color:#977f45;margin-left:1px}.star .mg{font-style:normal;font-size:10.5px;margin-left:2px;padding:0 2px;border-radius:2px;color:#fff}.mg-lu{background:#7a8c2f}.mg-quan{background:#6d4a9e}.mg-ke{background:#33648c}.mg-ji{background:var(--cinnabar)}.p-adj{font-size:10.5px;color:#97865e;line-height:1.45}.p-foot{display:flex;justify-content:space-between;font-size:11px;color:#7a6a44;border-top:1px solid rgba(90,70,30,.25);padding-top:2px;margin-top:3px}.body-mark{color:var(--cinnabar);font-weight:700}.empty{color:#a28f5f;font-size:13px}.center-cell{background:var(--ink-2);border:1px solid var(--gold);border-radius:4px;color:var(--txt);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:10px 8px;gap:2px}.c-brand{font-size:21px;letter-spacing:5px;color:var(--gold-soft);font-weight:700;margin-bottom:5px}.c-line{font-size:13.5px}.c-small{color:var(--txt-dim);font-size:12px}.reading article{padding:10px 0;border-bottom:1px dashed var(--line)}.reading article:last-child{border-bottom:none}.reading h3{margin:0 0 4px;font-size:16px;color:var(--gold-soft);letter-spacing:2px}.reading p{margin:0;font-size:15px}.decadals{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.dec-item{background:var(--ink-2);border:1px solid var(--line);border-radius:7px;padding:8px 10px;display:flex;flex-direction:column;gap:1px}.dec-item b{font-size:13px;color:var(--txt-dim);font-weight:400}.dec-item span{font-size:15.5px}.dec-item em{font-style:normal;font-size:12.5px;color:var(--txt-dim)}.dec-item i{font-style:normal;align-self:flex-start;font-size:11px;color:#fff;background:var(--cinnabar);border-radius:3px;padding:0 5px;margin-top:3px}.dec-item.current{border-color:var(--gold)}.year-note{margin:12px 0 0;font-size:14px;color:var(--gold-soft)}.ai-intro{margin:0 0 12px;font-size:14px;color:var(--txt-dim)}.ts-widget{margin:0 0 12px;min-height:65px}.btn-ai{font:inherit;font-size:16px;letter-spacing:4px;font-weight:700;color:var(--gold-soft);background:transparent;border:1.5px solid var(--gold);border-radius:8px;padding:10px 26px;cursor:pointer}.btn-ai:active{transform:translateY(1px)}.btn-ai:disabled{opacity:.55;cursor:wait}.ai-out{margin-top:14px;border-top:1px dashed var(--line);padding-top:6px}.ai-out h3{margin:14px 0 4px;font-size:16px;color:var(--gold-soft);letter-spacing:2px}.ai-out p{margin:0 0 8px;font-size:15px}.ai-out .ai-loading{color:var(--txt-dim)}.ai-out .ai-error{color:#e8b4a6}.site-foot{text-align:center;padding:8px 18px 34px;color:var(--txt-dim);font-size:12.5px;position:relative}.site-foot p{margin:3px 0}.credits{opacity:.75}@media (max-width: 640px){main{padding:0 8px 30px}.panel{padding:14px 12px 16px;margin-top:12px}.grid-form{grid-template-columns:1fr 1fr}.chart-panel{padding:5px}.chart-grid{grid-template-rows:repeat(4,minmax(96px,auto));gap:2px}.palace{min-height:96px;padding:4px 5px}.p-head b{font-size:12.5px}.p-head span{font-size:10px}.star.major{font-size:12.5px}.star.minor{font-size:10.5px}.star em,.star .mg,.p-adj{font-size:9px}.p-foot{font-size:9.5px}.c-brand{font-size:15px;letter-spacing:3px}.c-line{font-size:11px}.c-small{font-size:10px}.decadals{grid-template-columns:1fr 1fr}.brand h1{letter-spacing:4px}.seal{width:50px;height:50px;font-size:18px}}
