:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#06090d;--text:#eaf0f5;--dim:#eaf0f5ad;--faint:#eaf0f538;--accent:#39d5ff;--warm:#ffb840;--plate:#080d13b8;--shadow:0 1px 3px #000000e6, 0 0 18px #000000bf;--font:"PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", system-ui, sans-serif}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--ink);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;overflow:hidden}#app{position:fixed;inset:0}#app canvas{display:block}.labels{pointer-events:none;position:absolute;inset:0;overflow:hidden}#clip{object-fit:cover;opacity:0;pointer-events:none;background:#000;width:100%;height:100%;transition:opacity .35s;position:fixed;inset:0}#clip.show{opacity:1}.labels.off{visibility:hidden}#ui{pointer-events:none;position:fixed;inset:0}[hidden]{display:none!important}button{font:inherit;color:inherit;cursor:pointer;pointer-events:auto}#boot{background:var(--ink);z-index:20;letter-spacing:.3em;color:var(--dim);place-items:center;font-size:18px;transition:opacity .6s;display:grid;position:fixed;inset:0}#boot.done{opacity:0;pointer-events:none}.fatal{color:#ffd9d4;z-index:30;background:#3a0f0f;border:1px solid #ff6b5a;padding:16px 20px;font-size:16px;position:fixed;bottom:24px;left:24px;right:24px}.top{background:linear-gradient(#06090dd1,#0000);align-items:center;gap:28px;padding:18px 28px 34px;display:flex;position:absolute;top:0;left:0;right:0}.brand{letter-spacing:.14em;white-space:nowrap;font-size:17px;font-weight:600}.tabs{flex-wrap:wrap;flex:1;gap:6px;display:flex}.tab{color:var(--dim);background:0 0;border:1px solid #0000;border-radius:999px;padding:7px 18px;font-size:15px}.tab:hover{color:var(--text)}.tab.on{color:var(--ink);background:var(--text);font-weight:600}.light{color:var(--dim);white-space:nowrap;border:1px solid var(--faint);border-radius:999px;padding:4px 12px;font-size:13px}.light[data-mode=yellow]{color:#ffc928;border-color:#ffc928}.status{color:var(--dim);white-space:nowrap;font-size:13px}.where{text-shadow:var(--shadow);position:absolute;top:78px;left:28px}.zone{letter-spacing:.14em;color:var(--accent);border-left:3px solid var(--accent);padding-left:10px;font-size:13px}.chapter{letter-spacing:.04em;margin-top:8px;font-size:clamp(20px,3.4vh,30px);font-weight:700}.subtitle{text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;width:min(1000px,100vw - 80px);text-shadow:var(--shadow);background:#060a0f9e;border-radius:14px;padding:12px 24px;transition:opacity .45s;position:absolute;bottom:78px;left:50%;translate:-50%}.subtitle.show{opacity:1}.plain{text-wrap:balance;margin:0;font-size:clamp(15px,min(1.35vw,2.7vh),24px);line-height:1.55}.pro{max-width:920px;color:var(--dim);text-wrap:pretty;margin:10px auto 0;font-size:clamp(12px,min(.95vw,1.9vh),16px);line-height:1.65}.params{justify-content:center;gap:8px;margin-bottom:10px;display:grid}.param{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.param-name{color:var(--dim);margin-right:4px;font-size:13px}.chip{background:var(--plate);border:1px solid var(--faint);color:var(--dim);border-radius:8px;padding:6px 12px;font-size:14px}.chip:hover{border-color:var(--text);color:var(--text)}.chip.on{border-color:var(--warm);color:var(--warm)}.bottom{background:linear-gradient(#0000,#06090de0);align-items:center;gap:24px;padding:40px 28px 18px;display:flex;position:absolute;bottom:0;left:0;right:0}.rail{flex:1;min-width:0;height:34px;position:relative}.track{background:var(--faint);border-radius:2px;height:3px;position:absolute;top:50%;left:0;right:0;overflow:hidden;translate:0 -50%}.track-fill{background:var(--accent);width:0;height:100%;display:block}.marks{position:absolute;inset:0}.mark{background:0 0;border:0;width:18px;height:18px;padding:0;position:absolute;top:50%;translate:-50% -50%}.mark:after{content:"";background:var(--ink);border:2px solid var(--dim);border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:50%;translate:-50% -50%}.mark:hover:after{border-color:var(--text)}.mark.on:after{background:var(--accent);border-color:var(--accent)}.mark:hover{z-index:5}.mark:hover:before{content:attr(aria-label);white-space:nowrap;color:var(--text);border:1px solid var(--accent);pointer-events:none;background:#060a0ff0;border-radius:6px;padding:5px 12px;font-size:14px;line-height:1.3;position:absolute;bottom:24px;left:50%;translate:-50%}.mark[data-side=l]:hover:before{left:0;translate:0}.mark[data-side=r]:hover:before{left:auto;right:0;translate:0}.controls{gap:8px;display:flex}.btn{background:var(--plate);border:1px solid var(--faint);white-space:nowrap;border-radius:8px;padding:8px 14px;font-size:14px}.btn:hover{border-color:var(--text)}.btn.on{border-color:var(--accent);color:var(--accent)}.panel{background:var(--plate);border:1px solid var(--faint);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);opacity:0;pointer-events:none;border-radius:14px;width:min(520px,100vw - 56px);max-height:calc(100vh - 272px);padding:16px 20px;transition:opacity .5s,translate .5s;position:absolute;top:84px;right:28px;overflow:auto;translate:24px}.panel.show{opacity:1;pointer-events:auto;translate:0}.panel h2{margin:0 0 8px;font-size:19px}.panel table{border-collapse:collapse;width:100%;font-size:14px}.panel th,.panel td{text-align:left;border-bottom:1px solid var(--faint);vertical-align:top;padding:6px 8px;line-height:1.5}.panel th{color:var(--accent);font-weight:600}.panel td:first-child{color:var(--dim);white-space:nowrap}.panel td:nth-child(2):not(:last-child){width:46%}.panel .note{color:var(--dim);margin:8px 0 0;font-size:12.5px}.panel:has(.fields){width:min(1320px,100vw - 56px);max-height:calc(100vh - 310px);top:150px;left:50%;right:auto;translate:-50% 16px}.panel.show:has(.fields){translate:-50%}.fields .cols{grid-template-columns:repeat(5,1fr);gap:14px;display:grid}.fields section{border:1px solid var(--faint);background:#ffffff08;border-radius:10px;padding:12px 14px}.fields h3{color:var(--accent);margin:0 0 4px;font-size:18px}.fields .temp{color:var(--dim);margin:0 0 8px;font-size:12.5px}.fields ul{margin:0;padding:0 0 0 1.1em;font-size:14px;line-height:1.75}@media (width<=1100px){.fields .cols{grid-template-columns:repeat(3,1fr)}}.lbl{border:1px solid var(--faint);color:var(--text);white-space:nowrap;background:#060a0fc7;border-radius:6px;padding:4px 10px;font-size:14px;line-height:1.3}.lbl.left{translate:-50%}.lbl.right{translate:50%}.lbl.title{letter-spacing:.1em;border-color:var(--accent);padding:6px 18px;font-size:22px;font-weight:700}.lbl.accent{color:var(--accent);border-color:var(--accent)}.lbl.dim{color:var(--dim);background:0 0;border-color:#0000}.lbl.area{letter-spacing:.12em;padding:6px 16px;font-size:17px;font-weight:600}.lbl.area.hot{color:#1c1400;background:#ffc928;border-color:#ffc928}.lbl.area{text-align:center}.lbl.area .sub{letter-spacing:.04em;opacity:.85;margin-top:2px;font-size:13px;font-weight:400;display:block}.lbl.area.brief .sub{display:none}.lbl.area.kind{letter-spacing:.03em;padding:5px 10px;font-size:15px}.lbl.area.kind .sub{font-size:12px}.toast{background:var(--plate);border:1px solid var(--faint);opacity:0;border-radius:999px;padding:10px 20px;font-size:15px;transition:opacity .25s;position:absolute;top:84px;left:50%;translate:-50%}.toast.show{opacity:1}.flash{opacity:0;background:radial-gradient(circle at 50% 55%,#fff,#c9a0ff 60%,#7a4dff);position:absolute;inset:0}.flash.go{animation:.9s ease-out flash}@keyframes flash{0%{opacity:.95}to{opacity:0}}@media (width<=900px){.brand,.light{display:none}.chapter{font-size:22px}}@media (prefers-reduced-motion:reduce){#boot,.toast,.subtitle,.panel{transition:none}.flash.go{animation:none}}
