:root{--bg:#F6F4EF;--card:#FFFFFF;--ink:#15181C;--ink2:#4A4E55;--ink3:#8A8D93;--line:#E3DFD6;--zhu:#C23B22;--qing:#2F6B6E;--jin:#9A7B2F;--on:#FFFFFF;--sh:0 1px 2px rgba(20,20,20,.04),0 12px 32px -18px rgba(20,25,35,.35);
  --good:var(--qing);--mid:var(--jin);--bad:var(--zhu);--bar-good:var(--qing);--bar-mid:var(--jin);--bar-bad:var(--zhu);--mo:var(--ink);--mo-2:var(--ink2);--mo-3:var(--ink3);--zhi:var(--card);--jin-d:var(--jin);
  --lu:#2E8B57;--quan:#8E44AD;--ke:#3D6FB6;--ji:#C23B22;--wx-mu:#3F8F5A;--wx-huo:#D2513A;--wx-tu:#A57C2C;--wx-jin:#7C8187;--wx-shui:#3B6FA8;
  --f:'WK','LXGW WenKai',ui-serif,'Songti SC',serif;color-scheme:light}
@media (prefers-color-scheme:dark){:root{--bg:#0F1215;--card:#171B20;--ink:#ECEAE4;--ink2:#B9BBC0;--ink3:#80848B;--line:#2A3037;--zhu:#E5674D;--qing:#5FB3B0;--jin:#D2AE5C;--on:#0F1215;--sh:0 12px 32px -18px rgba(0,0,0,.8);--lu:#5BC08A;--quan:#C08BE0;--ke:#7EA7E8;--ji:#E5674D;--wx-mu:#6CC08A;--wx-huo:#F07C62;--wx-tu:#D6AE5E;--wx-jin:#B9BEC4;--wx-shui:#78A6E0;color-scheme:dark}}
*{box-sizing:border-box}[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 var(--f);min-height:100dvh;-webkit-tap-highlight-color:transparent}
button,input,select,textarea{font:inherit;color:inherit}
a{color:var(--zhu);text-decoration:none}
:focus-visible{outline:2px solid var(--zhu);outline-offset:2px;border-radius:8px}
[tabindex="-1"]:focus{outline:none}
h1,h2,h3,h4{font-weight:700;margin:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.muted{color:var(--ink3)}.small{font-size:14px}
.good{color:var(--good)}.mid{color:var(--mid)}.bad{color:var(--bad)}
.top{position:sticky;top:0;z-index:6;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:calc(10px + env(safe-area-inset-top)) 18px 10px;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-size:18px;font-weight:700;letter-spacing:.04em}
.seal{width:30px;height:30px;border-radius:7px;background:var(--zhu);color:var(--on);display:grid;place-items:center;font-size:18px}
.prog{height:4px;background:var(--line);border-radius:2px;overflow:hidden}.prog i{display:block;height:100%;width:25%;background:var(--ink);border-radius:2px;transition:width .35s ease}
.stepTxt{font-size:13px;color:var(--ink3);white-space:nowrap}
.wrap{max-width:1160px;margin:0 auto}
.dossier{margin:4px 16px 0;border:1px solid var(--line);background:var(--card);border-radius:14px;overflow:hidden}
body[data-view=ask] .dossier{display:none}
.dHead{appearance:none;display:flex;align-items:center;gap:10px;width:100%;border:none;background:none;padding:10px 14px;cursor:pointer;text-align:left}
.dHead span{font-size:13px;color:var(--ink3);white-space:nowrap}.dHead b{flex:1;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:400}
.dHead i{width:9px;height:9px;border-right:1.5px solid var(--ink3);border-bottom:1.5px solid var(--ink3);transform:rotate(45deg) translateY(-3px);transition:transform .2s}
.dossier.open .dHead i{transform:rotate(-135deg)}
.dBody{display:none;padding:0 14px 14px}.dossier.open .dBody{display:block}
.dossier dl{margin:0;display:grid;gap:8px}.dossier dl>div{display:grid;grid-template-columns:52px 1fr auto;gap:8px;align-items:baseline;font-size:15px}
.dossier dt{color:var(--ink3);font-size:13px}.dossier dd{margin:0;word-break:break-all}
.flow{display:none}
.priv{font-size:12px;color:var(--ink3);margin:12px 0 0;line-height:1.5}
main{padding:20px 18px calc(120px + env(safe-area-inset-bottom));min-width:0}
.view{animation:fade .3s ease both}@keyframes fade{from{opacity:0}}
.eyebrow{margin:0 0 6px;font-size:13px;letter-spacing:.14em;color:var(--zhu)}
h1,.h{font-size:32px;line-height:1.25;letter-spacing:.02em}
.lede{color:var(--ink2);margin:8px 0 18px;font-size:16px}
.askbox{margin-top:16px;background:var(--card);border:1.5px solid var(--line);border-radius:18px;padding:14px 16px 10px;box-shadow:var(--sh);transition:border-color .15s}
.askbox:focus-within{border-color:var(--ink)}
.askbox textarea{width:100%;border:none;outline:none;resize:none;background:transparent;font-size:20px;line-height:1.55;min-height:96px}
.askbox textarea::placeholder{color:var(--ink3)}
.askFoot{display:flex;justify-content:space-between;gap:10px;font-size:13px;border-top:1px dashed var(--line);padding-top:8px}
.err{color:var(--zhu);font-size:15px;margin:8px 2px 0;min-height:0}.err:empty{display:none}
.catRow{display:flex;gap:10px;align-items:flex-start;margin-top:16px}
.lbl{font-size:13px;color:var(--ink3);white-space:nowrap;padding-top:6px;min-width:44px}
.cats{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;margin-right:-18px;padding-right:18px}.cats::-webkit-scrollbar{display:none}
.chip{appearance:none;border:1px solid var(--line);background:var(--card);border-radius:999px;padding:4px 13px;font-size:15px;white-space:nowrap;cursor:pointer}
.chip[aria-checked=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.sub{font-size:15px;color:var(--ink3);font-weight:400;margin:26px 0 8px}
.exList{display:grid;gap:0;border-top:1px solid var(--line)}
.ex{appearance:none;border:none;border-bottom:1px solid var(--line);background:none;text-align:left;padding:12px 2px;font-size:17px;cursor:pointer;display:flex;justify-content:space-between;align-items:center}
.ex::after{content:"↗";color:var(--ink3);font-family:system-ui,sans-serif;font-size:14px}
.how{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:10px;counter-reset:h}
.how li{counter-increment:h;display:grid;grid-template-columns:30px 1fr;column-gap:10px;font-size:15px;color:var(--ink2)}
.how li::before{content:counter(h);grid-row:span 2;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--ink3);display:grid;place-items:center;font-size:13px;font-family:system-ui,sans-serif;color:var(--ink2)}
.how b{color:var(--ink)}
.demoRow{margin:22px 0 0;font-size:15px;color:var(--ink3)}.demoRow .link{margin-left:6px}
.bar{position:fixed;left:0;right:0;bottom:0;z-index:5;display:flex;gap:10px;align-items:center;justify-content:center;padding:12px 18px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(to top,var(--bg) 72%,transparent)}
.bar .btn{flex:1;max-width:400px}
.btn{appearance:none;border:none;border-radius:14px;background:var(--ink);color:var(--bg);font-size:17px;font-weight:700;padding:14px 16px;cursor:pointer;text-align:center;display:inline-block;letter-spacing:.04em;transition:transform .12s,opacity .15s;white-space:nowrap}
.btn:active{transform:scale(.985)}.btn:disabled{opacity:.4;cursor:not-allowed}
.btn.ghost{background:var(--card);color:var(--ink);border:1.5px solid var(--line)}
.link{appearance:none;background:none;border:none;border-bottom:1px solid var(--ink3);border-radius:0;padding:4px 0;font-size:15px;color:var(--ink2);cursor:pointer;white-space:nowrap}
.tiny{appearance:none;border:1px solid var(--line);background:var(--card);border-radius:7px;padding:1px 9px;font-size:13px;cursor:pointer;color:var(--ink2);white-space:nowrap}
/* 表单 */
.form{display:grid;gap:4px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:6px 16px;box-shadow:var(--sh)}
.fld{display:grid;grid-template-columns:56px 1fr;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line);min-height:58px}
.fld:first-child{border-top:none}.fld .lbl{padding-top:0}
.fld.place{grid-template-columns:56px 1fr auto}
.fld input{width:100%;border:none;background:transparent;outline:none;font-size:17px;padding:6px 0;min-width:0}
.fld input::placeholder{color:var(--ink3)}
.seg{display:inline-flex;background:var(--bg);border-radius:11px;padding:3px;gap:2px;justify-self:start}
.seg button{appearance:none;border:none;background:none;border-radius:9px;padding:5px 18px;font-size:16px;cursor:pointer;color:var(--ink2)}
.seg button[aria-checked=true]{background:var(--card);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.dsel{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:5px}
.trow{display:flex;align-items:center;gap:6px}
.sel{position:relative;display:block}
.sel select{appearance:none;-webkit-appearance:none;width:100%;border:1px solid var(--line);background:var(--bg);border-radius:10px;padding:7px 22px 7px 9px;font-size:16px;cursor:pointer;text-overflow:ellipsis}
.sel::after{content:"";position:absolute;right:9px;top:50%;width:6px;height:6px;border-right:1.5px solid var(--ink3);border-bottom:1.5px solid var(--ink3);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.trow .sel{width:84px}
.combo{position:relative}
#cityList{position:absolute;z-index:8;left:-8px;right:-8px;top:calc(100% + 6px);list-style:none;margin:0;padding:6px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);max-height:280px;overflow:auto}
#cityList li{display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;font-size:16px}
#cityList li span{color:var(--ink3);font-size:13px}
#cityList li[aria-selected=true],#cityList li:hover{background:var(--bg)}
#cityList li.none{color:var(--ink3);cursor:default;font-size:14px}
.peek{margin-top:14px;border:1.5px dashed var(--line);border-radius:18px;padding:14px 16px}
.peek p{margin:6px 0 0;font-size:15px}.peek>p:first-child{margin:0}
.pk .lbl{display:block;padding:0;margin-bottom:6px}
.pk .cols{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;text-align:center}
.pk .cols small{display:block;font-size:12px;color:var(--ink3)}
.pk .cols b{font-size:30px;letter-spacing:.06em;line-height:1.3;font-weight:400}
.w-木{color:var(--wx-mu)}.w-火{color:var(--wx-huo)}.w-土{color:var(--wx-tu)}.w-金{color:var(--wx-jin)}.w-水{color:var(--wx-shui)}
/* 百签盘 */
.board{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;max-width:480px;margin:4px auto 0;user-select:none;-webkit-user-select:none}
.board i{aspect-ratio:1;border-radius:6px;background:color-mix(in srgb,var(--qing) calc(var(--w,.3) * 100%),var(--line));display:grid;place-items:center;font-style:normal;transition:transform .12s,background .12s}
.board i span{font-size:10px;color:var(--ink);opacity:.55;font-family:system-ui,sans-serif}
.board i.on{transform:scale(1.25);background:var(--ink);box-shadow:0 0 0 2px var(--bg);z-index:1}
.board i.on span{color:var(--bg);opacity:1}
.board i.hit{transform:scale(1.4);background:var(--zhu)}
.board i.hit span{color:#fff;font-weight:700;font-size:12px}
.scale{display:flex;align-items:center;gap:8px;max-width:480px;margin:10px auto 0;font-size:12px;color:var(--ink3)}
.scale i{flex:1;height:6px;border-radius:3px;background:linear-gradient(90deg,var(--line),var(--qing))}
.status{text-align:center;min-height:1.7em;margin:14px 0 0;color:var(--ink2)}
.status b{color:var(--zhu)}.status.err{color:var(--zhu)}
.fine{font-size:13px;color:var(--ink3);margin:16px 0 0;line-height:1.6}
.hold{appearance:none;border:none;background:var(--zhu);color:#fff;border-radius:999px;padding:10px 26px 10px 12px;display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none;box-shadow:0 10px 24px -12px var(--zhu);flex:1;max-width:400px;justify-content:center}
.hold svg{width:40px;height:40px;transform:rotate(-90deg)}.hold circle{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;stroke-dasharray:0 100}
.hold::before{content:"";display:none}
.hold.down{transform:scale(.97);background:color-mix(in srgb,var(--zhu) 85%,#000)}
/* 结论 */
.verdict{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:18px 18px 16px;box-shadow:var(--sh)}
.demo{margin:0 0 10px;font-size:13px;color:var(--jin);display:flex;justify-content:space-between;align-items:center;gap:10px}
.qq{margin:0;font-size:15px;color:var(--ink2)}.qq span{color:var(--ink3);margin-right:8px;font-size:13px}
.vt{font-size:34px;line-height:1.25;margin:10px 0 2px;letter-spacing:.02em}
.vs{margin:0 0 14px;font-size:13px;color:var(--ink3)}
.meters{display:grid;gap:9px}
.m{display:grid;grid-template-columns:76px 1fr 72px;align-items:center;gap:10px;font-size:14px}
.ml{color:var(--ink3)}.m b{text-align:right;font-weight:700}
.mt{position:relative;height:6px;border-radius:3px;background:linear-gradient(90deg,color-mix(in srgb,var(--bad) 35%,var(--line)),var(--line) 50%,color-mix(in srgb,var(--good) 35%,var(--line)))}
.mt::after{content:"";position:absolute;left:50%;top:-3px;bottom:-3px;width:1px;background:var(--ink3)}
.mt i{position:absolute;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 3px var(--card)}
.m.main{padding-bottom:9px;border-bottom:1px dashed var(--line);font-size:15px}.m.main .mt{height:8px}.m.main .mt i{width:18px;height:18px;margin:-9px 0 0 -9px;background:var(--zhu)}
.sign{margin-top:14px;display:grid;grid-template-columns:64px 1fr;gap:14px;padding:16px;border-radius:20px;background:var(--ink);color:var(--bg)}
.sNo{display:flex;flex-direction:column;align-items:center;gap:4px;border-right:1px solid color-mix(in srgb,var(--bg) 25%,transparent);padding-right:12px}
.sNo b{font-size:40px;line-height:1;font-weight:400;color:var(--zhu)}.sNo span{writing-mode:vertical-rl;font-size:13px;opacity:.7;letter-spacing:.2em}
.sLv{margin:0;font-size:13px;opacity:.85}.sLv em{font-style:normal;border:1px solid currentColor;border-radius:5px;padding:0 6px;margin-right:4px}
.sign .good{color:color-mix(in srgb,var(--qing) 60%,#fff)}.sign .bad{color:color-mix(in srgb,var(--zhu) 70%,#fff)}.sign .mid{color:color-mix(in srgb,var(--jin) 70%,#fff)}
.sign h3{font-size:24px;margin:4px 0 6px;font-weight:400}
.poem{display:grid;grid-template-columns:1fr;gap:0;font-size:17px}
@media (min-width:600px){.poem{grid-template-columns:1fr 1fr;gap:2px 14px}}.poem p{margin:0}
.gist{margin:8px 0 0;font-size:15px;opacity:.75}
.tabs{position:sticky;top:calc(54px + env(safe-area-inset-top));z-index:4;display:grid;grid-template-columns:repeat(4,1fr);margin:18px 0 0;background:var(--bg);border-bottom:1px solid var(--line)}
.tabs button{appearance:none;border:none;background:none;padding:12px 0 10px;font-size:16px;color:var(--ink3);cursor:pointer;border-bottom:2.5px solid transparent;margin-bottom:-1px;border-radius:0}
.tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--zhu);font-weight:700}
.panel{padding:16px 0 0;animation:fade .25s ease both}
.rd{margin:0;display:grid;gap:14px}.rd>div{display:grid;grid-template-columns:44px 1fr;gap:10px}.rd dt{color:var(--zhu);font-size:14px;padding-top:2px}.rd dd{margin:0}
.lead{margin:0 0 10px;font-size:18px}
.chart svg{width:100%;height:auto;display:block}
#yun-chart .yh{cursor:pointer}#yun-chart .yh.sel{fill:color-mix(in srgb,var(--ink) 6%,transparent)}
.yinfo{min-height:1.6em;font-size:15px;margin-top:6px}.yinfo .tiny{margin-left:6px}
.panel h4{font-size:15px;margin:16px 0 6px;color:var(--ink2)}
.months{display:flex;flex-wrap:wrap;gap:6px}.months span{border:1px solid var(--qing);color:var(--qing);border-radius:8px;padding:2px 10px;font-size:15px}
/* 八字（旧版引擎生成的结构，重新排版） */
.bh h3{font-size:20px}.bh small{display:block;color:var(--ink3);font-size:13px;margin-top:4px;line-height:1.6}
.bz{display:grid;gap:14px;margin-top:12px}
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.pl{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px 4px;text-align:center;display:grid;gap:2px}
.pl.day{border-color:var(--zhu)}
.pl .k{font-size:12px;color:var(--ink3)}.pl .ss{font-size:12px;color:var(--ink2)}
.pl .gz{display:grid;font-size:30px;line-height:1.2}
.pl .hd{font-size:12px;color:var(--ink2);line-height:1.5;border-top:1px dashed var(--line);padding-top:4px;margin-top:2px}
.pl .ny{font-size:11px;color:var(--ink3)}
#wuxing{width:100%;max-width:340px;height:auto;margin:0 auto;display:block}
.kk{font-size:16px;font-weight:700}
.dayun-scroll{overflow-x:auto;margin-top:8px;scrollbar-width:thin}
.dayun{display:flex;gap:6px;width:max-content}
.dayun>div{border:1px solid var(--line);border-radius:12px;padding:8px 10px;font-size:12px;color:var(--ink3);text-align:center;min-width:64px;background:var(--card)}
.dayun>div.cur{border-color:var(--ink);color:var(--ink)}
.dayun b{display:grid;font-size:20px;color:var(--ink);font-weight:400;line-height:1.2}
.dayun i{font-style:normal}.dayun i.good{color:var(--good)}.dayun i.bad{color:var(--bad)}
.notes{margin:14px 0 0;padding-left:1.1em;display:grid;gap:6px;font-size:15px;color:var(--ink2)}
/* 紫微 */
.years{display:grid;grid-template-columns:32px 1fr 32px;gap:6px;align-items:center;margin:12px 0}
.nav{appearance:none;border:1px solid var(--line);background:var(--card);border-radius:10px;height:52px;font-size:20px;cursor:pointer;color:var(--ink2)}
.yrail{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.yrail::-webkit-scrollbar{display:none}
.yr{appearance:none;flex:0 0 auto;border:1px solid var(--line);background:var(--card);border-radius:10px;padding:4px 8px;cursor:pointer;display:grid;text-align:center;line-height:1.25}
.yr b{font-size:16px;font-weight:400}.yr small{font-size:10px;color:var(--ink3)}
.yr.past{opacity:.6}.yr.ask{border-color:var(--zhu)}.yr[aria-pressed=true]{background:var(--ink);color:var(--bg);opacity:1}.yr[aria-pressed=true] small{color:inherit;opacity:.7}
.legend{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;color:var(--ink3);margin-bottom:8px}.legend span{display:flex;align-items:center;gap:4px}.legend i{display:inline-block;width:14px;height:3px;border-radius:2px}
.zw-scroll{overflow-x:auto;margin:0 -18px;padding:0 18px}
.zw-wrap{position:relative;min-width:560px}
.zw{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,minmax(118px,auto));gap:3px}
.fly{display:none}
.cell{position:relative;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:5px 6px 22px;font-size:12px;cursor:pointer;overflow:hidden}
.cell.tgt{border:2px solid var(--zhu)}.cell.tri{background:color-mix(in srgb,var(--jin) 7%,var(--card))}.cell.act{box-shadow:inset 0 0 0 2px var(--ink)}
.cell .yn{display:block;font-size:11px;color:var(--quan)}.cell .ages{position:absolute;right:5px;top:4px;font-size:10px;color:var(--ink3)}
.cell .ms{display:flex;flex-wrap:wrap;gap:0 6px;font-size:14px;font-weight:700;color:var(--ink)}
.cell .ms em{font-style:normal;font-size:10px;color:var(--ink3);font-weight:400}
.cell .mn{display:flex;flex-wrap:wrap;gap:0 5px;color:var(--ink2)}.cell .mn .x{color:var(--ink3);font-size:11px}
.cell .ys{display:flex;flex-wrap:wrap;gap:0 4px;color:var(--quan);font-size:11px}
.cell .pn{position:absolute;left:6px;bottom:3px;font-weight:700;color:var(--ink)}.cell .pn i{font-style:normal;background:var(--zhu);color:#fff;border-radius:3px;font-size:10px;padding:0 2px;margin-left:2px}
.cell .gz{position:absolute;right:6px;bottom:3px;color:var(--ink3)}
.mu{font-style:normal;font-size:10px;border-radius:3px;padding:0 2px;margin-left:1px;color:#fff;font-weight:400}
.mu-禄{background:var(--lu);color:#fff}.mu-权{background:var(--quan);color:#fff}.mu-科{background:var(--ke);color:#fff}.mu-忌{background:var(--ji);color:#fff}
.mu.y{background:none;border:1px solid currentColor}.mu.y.mu-禄{color:var(--lu)}.mu.y.mu-权{color:var(--quan)}.mu.y.mu-科{color:var(--ke)}.mu.y.mu-忌{color:var(--ji)}
#zw-fl span.mu-禄,#zw-fl span.mu-权,#zw-fl span.mu-科,#zw-fl span.mu-忌{background:none;padding:0;font-weight:700}#zw-fl .mu-禄{color:var(--lu)}#zw-fl .mu-权{color:var(--quan)}#zw-fl .mu-科{color:var(--ke)}#zw-fl .mu-忌{color:var(--ji)}
.center{grid-row:2/4;grid-column:2/4;display:grid;align-content:center;gap:2px;text-align:center;font-size:12px;color:var(--ink2);padding:8px}
.center .nm{font-size:18px;color:var(--ink);font-weight:700}.center .pz{font-size:15px;color:var(--ink)}.center .fl{margin-top:6px;font-size:13px;line-height:1.7;color:var(--ink)}
.yread{margin-top:14px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px}
.yt{font-size:28px;line-height:1}.yt small{font-size:15px;color:var(--ink3);margin-left:8px}.ytt{font-size:20px;margin:6px 0 0}
.tables{display:grid;gap:14px;margin-top:16px}.tables h4{font-size:14px;margin:0 0 6px;color:var(--ink2)}
.tscroll{overflow-x:auto}.ft{border-collapse:collapse;width:100%;font-size:13px;min-width:320px}.ft th,.ft td{border-bottom:1px solid var(--line);padding:6px 4px;text-align:left}.ft th{color:var(--ink3);font-weight:400}.ft td.hit{color:var(--zhu);font-weight:700}
dialog{border:none;padding:0;background:transparent;color:var(--ink);max-width:none;max-height:none;width:100%;height:100%;margin:0}
dialog::backdrop{background:rgba(5,8,12,.5)}
.sheet{position:absolute;left:0;right:0;bottom:0;max-height:90dvh;overflow:auto;background:var(--bg);border-radius:20px 20px 0 0;padding:16px 18px calc(18px + env(safe-area-inset-bottom))}
.sheet header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.sheet h2{font-size:20px}
.xbtn{appearance:none;border:1px solid var(--line);background:var(--card);width:34px;height:34px;border-radius:50%;font-size:20px;line-height:1;cursor:pointer}
.sheet .bar{position:static;background:none;padding:12px 0 0}
#shotImg{display:block;width:100%;max-width:340px;margin:0 auto;border-radius:10px;box-shadow:var(--sh)}
.toast{position:fixed;left:50%;bottom:calc(96px + env(safe-area-inset-bottom));transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:8px 16px;border-radius:10px;font-size:15px;z-index:20;max-width:86vw}
.nojs{text-align:center;padding:20px}
body:not(.ready) main{opacity:.55;pointer-events:none}
@media (min-width:1000px){
  .top{padding:14px 32px;grid-template-columns:300px 1fr auto;gap:48px}
  .wrap{display:grid;grid-template-columns:300px 1fr;gap:48px;padding:24px 32px 0}
  .dossier{position:sticky;top:90px;align-self:start;margin:0}
  body[data-view=ask] .dossier{display:block}
  .dHead{display:none}.dBody{display:block;padding:18px}
  .dBody::before{content:"这次所问";display:block;font-size:13px;color:var(--ink3);margin-bottom:10px;letter-spacing:.1em}
  .flow{display:grid;list-style:none;padding:0;margin:18px 0 0;gap:0;border-top:1px solid var(--line);padding-top:12px;counter-reset:f}
  .flow li{counter-increment:f;display:flex;gap:10px;align-items:center;padding:6px 0;color:var(--ink3);font-size:15px}
  .flow li::before{content:counter(f);width:22px;height:22px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;font-size:12px;font-family:system-ui,sans-serif}
  .flow li.done{color:var(--ink2)}.flow li.done::before{background:var(--ink2);border-color:var(--ink2);color:var(--bg)}
  .flow li.cur{color:var(--ink);font-weight:700}.flow li.cur::before{background:var(--zhu);border-color:var(--zhu);color:#fff}
  main{padding:0 0 64px;max-width:760px}
  h1,.h{font-size:44px}
  .bar{position:static;background:none;padding:28px 0 0;justify-content:flex-start}
  .bar .btn,.hold{flex:0 1 240px}
    .board{margin:8px 0 0;max-width:420px}.scale{margin-left:0;max-width:420px}.status{text-align:left}
  .verdict{padding:26px 28px}.vt{font-size:46px}
  .sign{grid-template-columns:90px 1fr;padding:22px 24px}.sNo b{font-size:54px}
  .poem{font-size:19px}
  .tabs{top:72px}
  .bz{grid-template-columns:1.2fr 1fr;align-items:center}
  .zw-scroll{margin:0;padding:0}
  .tables{grid-template-columns:1fr 1fr}
  .sheet{left:50%;right:auto;bottom:auto;top:50%;transform:translate(-50%,-50%);width:420px;border-radius:20px}
  .toast{bottom:40px}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition:none!important}}
