:root{--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", "PingFang TC", "Noto Sans TC", "Microsoft JhengHei", "Heiti TC", system-ui, sans-serif;--font-display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", "PingFang TC", "Noto Sans TC", "Microsoft JhengHei", system-ui, sans-serif;--font-serif:"New York", "Iowan Old Style", "Charter", "Songti TC", "Noto Serif TC", "PMingLiU", Georgia, serif;--font-mono:"SF Mono", ui-monospace, "JetBrains Mono", Menlo, Consolas, "PingFang TC", monospace;--radius-sm:6px;--radius:10px;--radius-lg:14px;--radius-xl:20px;--ease-out:cubic-bezier(.22, 1, .36, 1);--spring:cubic-bezier(.2, .9, .25, 1);--editor-size:17px;--sidebar-w:260px;--list-w:320px}:root,[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#000;--bg-elev:#0d0d0f;--surface:#161618;--surface-2:#1c1c1e;--surface-3:#2c2c2e;--hover:#ffffff0f;--active:#ffffff1a;--selected:#ffffff17;--sep:#ffffff14;--sep-strong:#ffffff24;--text:#f5f5f7;--text-2:#a1a1a6;--text-3:#6e6e73;--text-4:#48484a;--accent:#2997ff;--accent-strong:#0a84ff;--accent-soft:#2997ff29;--on-accent:#fff;--danger:#ff453a;--success:#30d158;--material:#161618b8;--material-heavy:#0c0c0ed1;--material-border:#ffffff1a;--shadow-pop:0 0 0 .5px #ffffff1f, 0 12px 40px #0000008c, 0 2px 8px #0006;--shadow-card:0 0 0 .5px #ffffff0f;--scrim:#0000008c;--code-bg:#111113;--heat-0:#1c1c1e;--heat-1:#2997ff4d;--heat-2:#2997ff80;--heat-3:#2997ffbf;--heat-4:#2997ff}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff;--bg-elev:#fbfbfd;--surface:#f5f5f7;--surface-2:#ececf0;--surface-3:#d2d2d7;--hover:#0000000b;--active:#00000014;--selected:#0000000f;--sep:#00000014;--sep-strong:#00000024;--text:#1d1d1f;--text-2:#6e6e73;--text-3:#86868b;--text-4:#c7c7cc;--accent:#0071e3;--accent-strong:#06c;--accent-soft:#0071e31a;--on-accent:#fff;--danger:#e30000;--success:#1d9b46;--material:#ffffffc7;--material-heavy:#f5f5f7db;--material-border:#00000014;--shadow-pop:0 0 0 .5px #0000001f, 0 12px 40px #00000024, 0 2px 8px #0000000f;--shadow-card:0 0 0 .5px #00000014, 0 1px 2px #00000008;--scrim:#00000038;--code-bg:#f5f5f7;--heat-0:#ececf0;--heat-1:#0071e338;--heat-2:#0071e36b;--heat-3:#0071e3ad;--heat-4:#0071e3}.theme-transition,.theme-transition *{transition:background-color .32s,color .32s,border-color .32s,fill .32s!important}@media (prefers-contrast:more){[data-theme=dark]{--sep:#ffffff38;--text-2:#c7c7cc;--text-3:#a1a1a6}[data-theme=light]{--sep:#00000038;--text-2:#3a3a3c;--text-3:#48484a}}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-sans);letter-spacing:-.006em;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"kern";font-size:14px;line-height:1.45;overflow:hidden}:lang(zh-Hant) body{letter-spacing:0}button{font:inherit;color:inherit;cursor:default;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0}input,textarea,select{font:inherit;color:inherit}a{color:var(--accent);text-decoration:none}::selection{background:var(--accent-soft)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.muted{color:var(--text-3)}.dim{color:var(--text-2)}.small{font-size:12px}.spacer{flex:1}.num{font-variant-numeric:tabular-nums}:root{--up:var(--danger);--down:var(--success)}:root[data-updown=us]{--up:var(--success);--down:var(--danger)}[data-theme=dark]{--num:#ffb340}[data-theme=light]{--num:#c25e00}.up{color:var(--up)}.down{color:var(--down)}.n-up,.n-down,.n-hl{font-variant-numeric:tabular-nums;font-weight:600}.n-up{color:var(--up)}.n-down{color:var(--down)}.n-hl{color:var(--num)}.flat{color:var(--text-3)}.dot{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.row{align-items:center;gap:8px;display:flex}.wrap{flex-wrap:wrap}.stack{flex-direction:column;gap:10px;display:flex}.app{height:100%;display:flex}.sidebar-wrap{width:var(--sidebar-w);transition:width .34s var(--spring);flex:none;overflow:hidden}.sidebar{width:var(--sidebar-w);background:var(--bg-elev);border-right:.5px solid var(--sep);height:100%;padding:10px 10px 8px;padding-top:calc(10px + env(safe-area-inset-top));-webkit-user-select:none;user-select:none;flex-direction:column;display:flex}[data-theme=light] .sidebar{background:var(--surface)}.brand-row{justify-content:space-between;align-items:center;padding:6px 10px 2px;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-2);font-size:15px;font-weight:600}.side-clock{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;gap:8px;padding:2px 10px 10px;display:flex}.side-clock-time{font-family:var(--font-display);letter-spacing:-.02em;font-size:22px;font-weight:600;line-height:1.1}.side-clock-time .sec{color:var(--text-3);font-weight:500}.side-scroll{flex:1;margin:0 -4px;padding:0 4px;overflow-y:auto}.side-group{flex-direction:column;gap:1px;display:flex}.side-section{color:var(--text-3);padding:18px 8px 6px 10px;font-size:11.5px;font-weight:600}.side-item{text-align:left;border-radius:8px;align-items:center;gap:10px;width:100%;height:32px;padding:0 10px;font-size:13.5px;transition:background-color .12s;display:flex}.side-item:hover{background:var(--hover)}.side-item:active{background:var(--active)}.side-item.on{background:var(--selected);font-weight:500}.side-item.on .side-icon{color:var(--accent)}.side-icon{width:20px;color:var(--text-2);flex:none;place-items:center;display:grid}.side-label{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.side-count{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:12px}.side-count.hot{color:var(--accent);font-weight:600}.side-bottom{border-top:.5px solid var(--sep);align-items:center;gap:4px;margin-top:6px;padding-top:6px;display:flex}.side-bottom .side-item{flex:1}.main{-webkit-overflow-scrolling:touch;flex:1;min-width:0;height:100%;position:relative;overflow-y:auto}.page{max-width:980px;margin:0 auto;padding:72px 56px 96px}.page.narrow{max-width:760px}.mobile-menu{display:none}.page-back{height:30px;color:var(--accent);border-radius:8px;align-items:center;gap:2px;margin:-36px 0 18px -6px;padding:0 8px 0 2px;font-size:15px;display:inline-flex}.page-back:hover{background:var(--hover)}.eyebrow{color:var(--text-2);letter-spacing:-.01em;margin:0 0 6px;font-size:15px;font-weight:600}.display{font-family:var(--font-display);letter-spacing:-.022em;margin:0;font-size:clamp(34px,5vw,52px);font-weight:700;line-height:1.07}:lang(zh-Hant) .display{letter-spacing:-.015em;line-height:1.12}.lede{color:var(--text-2);max-width:640px;margin:12px 0 0;font-size:17px;line-height:1.5}.section-h{font-family:var(--font-display);letter-spacing:-.02em;margin:44px 0 14px;font-size:21px;font-weight:600}.section-row{justify-content:space-between;align-items:flex-end;gap:12px;margin:44px 0 14px;display:flex}.section-row .section-h{margin:0}.sub-h{color:var(--text-3);margin:22px 0 8px;font-size:12px;font-weight:600}.prose{color:var(--text);white-space:pre-wrap;word-break:break-word;font-size:15px;line-height:1.7}.prose.dim{color:var(--text-2)}.md p{margin:0 0 10px}.md ul,.md ol{margin:0 0 10px;padding-left:20px}.md li{margin:3px 0}.md h3,.md h4{margin:16px 0 6px;font-size:14px;font-weight:600}.md strong{font-weight:600}.md code{font-family:var(--font-mono);background:var(--hover);border-radius:5px;padding:1px 5px;font-size:.9em}.md blockquote{background:var(--hover);color:var(--text-2);border-radius:12px;margin:0 0 10px;padding:10px 14px}.ticker{z-index:5;background:var(--material);-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);border-bottom:.5px solid var(--sep);align-items:center;height:38px;display:flex;position:sticky;top:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 40px calc(100% - 40px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 40px calc(100% - 40px),#0000 100%)}.ticker-track{white-space:nowrap;animation:ticker-scroll var(--ticker-dur,90s) linear infinite;will-change:transform;gap:28px;padding-left:28px;display:flex}.ticker:hover .ticker-track{animation-play-state:paused}@keyframes ticker-scroll{to{transform:translate(-50%)}}.tick{font-variant-numeric:tabular-nums;align-items:baseline;gap:7px;font-size:12.5px;display:inline-flex}.tick-n{color:var(--text-2);font-weight:500}.tick-v{font-weight:600}.tick-c{font-size:12px}.ticker-hidden{color:var(--text-3);padding:0 18px;font-size:12.5px}.board{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px;display:grid}.quote{border-radius:var(--radius-lg);background:var(--surface);font-variant-numeric:tabular-nums;text-align:left;flex-direction:column;gap:2px;padding:14px 16px 13px;display:flex}.quote-n{color:var(--text-2);font-size:12px;font-weight:500}.quote-v{font-family:var(--font-display);letter-spacing:-.02em;font-size:22px;font-weight:600}.quote-c{background:var(--hover);border-radius:999px;align-self:flex-start;margin-top:4px;padding:2px 8px;font-size:12.5px;font-weight:600}.quote-c.up{background:color-mix(in srgb, var(--up) 16%, transparent)}.quote-c.down{background:color-mix(in srgb, var(--down) 16%, transparent)}.quote.up{background:linear-gradient(180deg, var(--surface) 55%, color-mix(in srgb, var(--up) 7%, var(--surface)))}.quote.down{background:linear-gradient(180deg, var(--surface) 55%, color-mix(in srgb, var(--down) 7%, var(--surface)))}.card{border-radius:var(--radius-xl);background:var(--surface);text-align:left;width:100%;padding:18px 20px;display:block;position:relative}.card.tap{transition:background-color .16s, transform .22s var(--spring)}.card.tap:hover{background:var(--surface-2)}.card.tap:active{transform:scale(.99)}.card+.card{margin-top:10px}.card-k{color:var(--text-3);align-items:center;gap:8px;margin-bottom:4px;font-size:12px;font-weight:600;display:flex}.card-t{font-family:var(--font-display);letter-spacing:-.015em;font-size:19px;font-weight:600;line-height:1.3}.card-s{color:var(--text-2);margin-top:6px;font-size:13.5px;line-height:1.55}.card-arrow{color:var(--text-3);position:absolute;top:50%;right:18px;transform:translateY(-50%)}.grid2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.grid3{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.stats{border-top:.5px solid var(--sep);border-bottom:.5px solid var(--sep);flex-wrap:wrap;align-items:flex-end;gap:40px;padding:22px 0 24px;display:flex}.stats.bare{border:0;padding:8px 0 0}.stat{flex-direction:column;display:flex}.stat-v{font-family:var(--font-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:34px;font-weight:600;line-height:1.1}.stat-unit{color:var(--text-2);margin-left:2px;font-size:15px;font-weight:500}.stat-l{color:var(--text-3);margin-top:2px;font-size:12px}.list{border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;padding:4px;display:flex}.list.plain{background:0 0;padding:0}.lrow{text-align:left;border-radius:10px;align-items:flex-start;gap:12px;width:100%;padding:12px 14px;transition:background-color .12s;display:flex;position:relative}.lrow+.lrow:before{content:"";background:var(--sep);height:.5px;position:absolute;top:0;left:14px;right:14px}button.lrow:hover,a.lrow:hover{background:var(--hover)}.lrow:hover:before,.lrow:hover+.lrow:before{opacity:0}.lrow-main{flex:1;min-width:0}.lrow-t{letter-spacing:-.01em;color:var(--text);font-size:14.5px;font-weight:600;line-height:1.4}.lrow-s{color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:3px;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.lrow-s.full{-webkit-line-clamp:unset;display:block}.lrow-m{color:var(--text-3);flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;font-size:11.5px;display:flex}.lrow-side{color:var(--text-3);flex-direction:column;flex:none;align-items:flex-end;gap:6px;font-size:12px;display:flex}.rank{width:22px;font-family:var(--font-display);color:var(--text-3);font-variant-numeric:tabular-nums;flex:none;font-size:17px;font-weight:600;line-height:1.35}.empty{text-align:center;color:var(--text-3);padding:36px 16px;font-size:13.5px;line-height:1.6}.empty b{color:var(--text-2);margin-bottom:4px;font-size:15px;font-weight:600;display:block}.btn{white-space:nowrap;height:32px;transition:transform .12s var(--ease-out), background-color .16s ease, opacity .16s;-webkit-user-select:none;user-select:none;border-radius:980px;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:13px;font-weight:500;display:inline-flex}.btn:active{transform:scale(.97)}.btn.sm{height:28px;padding:0 12px;font-size:12.5px}.btn.lg{height:44px;padding:0 22px;font-size:15px}.btn.full{width:100%}.btn:disabled{opacity:.4;pointer-events:none}.btn-primary{background:var(--accent-strong);color:var(--on-accent)}.btn-primary:hover{background:var(--accent)}.btn-secondary{background:var(--surface-2);color:var(--text)}.btn-secondary:hover,.card .btn-secondary{background:var(--surface-3)}.btn-plain{color:var(--accent)}.btn-plain:hover{background:var(--hover)}.btn-danger{color:var(--danger)}.btn-danger:hover{background:var(--hover)}.icon-btn{width:30px;height:30px;color:var(--text-2);transition:background-color .14s ease, color .14s ease, transform .1s var(--ease-out);border-radius:8px;flex:none;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--hover);color:var(--text)}.icon-btn:active{background:var(--active);transform:scale(.94)}.quiet-action{height:32px;color:var(--accent);border-radius:980px;align-items:center;gap:6px;padding:0 12px;font-size:13.5px;font-weight:500;display:inline-flex}.quiet-action:hover{background:var(--accent-soft)}.btn-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field+.field{margin-top:14px}.label{color:var(--text-2);font-size:12px;font-weight:600}.hint{color:var(--text-3);font-size:12px;line-height:1.5}.input,.textarea,.select{background:var(--hover);border:0;border-radius:11px;outline:none;width:100%;min-height:40px;padding:9px 13px;font-size:15px;line-height:1.45;transition:box-shadow .14s,background-color .14s}.card .input,.card .textarea,.card .select{background:var(--surface-2)}.input:focus,.textarea:focus,.select:focus{box-shadow:inset 0 0 0 2px var(--accent)}.textarea{resize:none;min-height:96px;display:block}.textarea.writer{background:0 0;border-radius:0;min-height:260px;padding:16px 18px;font-size:17px;line-height:1.75}.textarea.writer:focus{box-shadow:none}.select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-3) 50%), linear-gradient(135deg, var(--text-3) 50%, transparent 50%);background-position:calc(100% - 17px),calc(100% - 12px);background-repeat:no-repeat;background-size:5px 5px;padding-right:32px}.input::placeholder,.textarea::placeholder{color:var(--text-3)}.title-input{width:100%;font-family:var(--font-display);letter-spacing:-.01em;resize:none;background:0 0;border:0;outline:0;padding:0;font-size:18px;font-weight:600;line-height:1.45;display:block;overflow:hidden}.title-input::placeholder{color:var(--text-4)}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-grid .field+.field{margin-top:0}.form-grid .span2{grid-column:1/-1}.scale{grid-template-columns:repeat(11,1fr);gap:4px;display:grid}.scale button{background:var(--hover);font-variant-numeric:tabular-nums;height:34px;color:var(--text-2);transition:background-color .14s, color .14s, transform .12s var(--spring);border-radius:8px;font-size:13px}.card .scale button{background:var(--surface-2)}.scale button:active{transform:scale(.94)}.scale button.on{background:var(--accent-strong);color:#fff;font-weight:600}.segmented{grid-template-columns:repeat(var(--n), 1fr);background:var(--hover);border-radius:9px;padding:2px;display:grid;position:relative}.segmented button{z-index:1;height:28px;color:var(--text-2);white-space:nowrap;border-radius:7px;padding:0 10px;font-size:12.5px;font-weight:500;transition:color .16s;position:relative}.segmented button.on{color:var(--text)}.segmented-thumb{width:calc((100% - 4px) / var(--n));background:var(--surface-3);transform:translateX(calc(100% * var(--i)));transition:transform .3s var(--spring);border-radius:7px;position:absolute;top:2px;bottom:2px;left:2px;box-shadow:0 1px 3px #00000040,0 0 0 .5px #0000000a}[data-theme=light] .segmented-thumb{background:#fff;box-shadow:0 1px 3px #0000001f,0 0 0 .5px #0000000a}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--hover);height:30px;color:var(--text-2);transition:background-color .14s, color .14s, transform .12s var(--spring);border-radius:980px;padding:0 13px;font-size:13px}.card .chip{background:var(--surface-2)}.chip:active{transform:scale(.95)}.chip.on{background:var(--accent-strong);color:#fff;font-weight:500}.pill{height:22px;color:var(--text-2);background:var(--hover);white-space:nowrap;border-radius:980px;align-items:center;gap:5px;padding:0 9px;font-size:11.5px;font-weight:500;display:inline-flex}.pill.accent{color:var(--accent);background:var(--accent-soft)}.pill.good{color:var(--success);background:color-mix(in srgb, var(--success) 14%, transparent)}.pill.bad{color:var(--danger);background:color-mix(in srgb, var(--danger) 14%, transparent)}.pill.warn{color:#ff9f0a;background:#ff9f0a24}.pill .dot{width:6px;height:6px}.pulse{animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.3}}.scrim{z-index:80;background:var(--scrim);place-items:center;padding:24px;animation:.18s fade-in;display:grid;position:fixed;inset:0}.sheet{background:var(--surface);width:min(560px,100%);max-height:calc(100vh - 48px);box-shadow:var(--shadow-pop);animation:sheet-in .28s var(--spring);border-radius:16px;padding:18px 20px;overflow:auto}[data-theme=light] .sheet{background:#fff}.sheet .input,.sheet .textarea,.sheet .select{background:var(--hover)}.sheet-head{align-items:center;gap:10px;margin-bottom:16px;display:flex}.sheet-title{font-family:var(--font-display);letter-spacing:-.02em;flex:1;font-size:17px;font-weight:600}.sheet-actions{align-items:center;gap:8px;margin-top:18px;display:flex}@keyframes fade-in{0%{opacity:0}}@keyframes sheet-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}.login-sheet{text-align:center;flex-direction:column;gap:10px;width:min(360px,100%);padding:28px 22px 18px;display:flex}.login-mark{font-family:var(--font-display);letter-spacing:-.02em;font-size:28px;font-weight:700}.toasts{left:50%;bottom:calc(28px + env(safe-area-inset-bottom));z-index:90;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;transform:translate(-50%)}.toast{pointer-events:auto;background:var(--material);-webkit-backdrop-filter:saturate(180%)blur(30px);backdrop-filter:saturate(180%)blur(30px);box-shadow:var(--shadow-pop);animation:toast-in .32s var(--spring);border-radius:980px;align-items:center;gap:14px;padding:10px 18px;font-size:13.5px;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(16px)scale(.96)}}.score{width:44px;height:44px;font-family:var(--font-display);font-variant-numeric:tabular-nums;background:conic-gradient(var(--c,var(--accent)) calc(var(--p) * 1%), var(--surface-3) 0);border-radius:50%;flex:none;place-items:center;font-size:16px;font-weight:700;display:inline-grid;position:relative}.score:before{content:"";background:var(--surface);border-radius:50%;position:absolute;inset:4px}.score span{position:relative}.score.sm{width:34px;height:34px;font-size:12.5px}.score.sm:before{inset:3px}.list .score:before{background:var(--surface)}.rubric{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.rub{background:var(--surface-2);border-radius:12px;padding:12px 14px}.rub-l{color:var(--text-3);font-size:12px}.rub-v{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:22px;font-weight:600}.rub-bar{background:var(--surface-3);border-radius:2px;height:4px;margin-top:6px;overflow:hidden}.rub-bar i{background:var(--accent);border-radius:2px;height:100%;display:block}.bars{align-items:flex-end;gap:3px;height:120px;padding-bottom:18px;display:flex;position:relative}.bar{background:var(--accent);opacity:.85;border-radius:4px 4px 2px 2px;flex:1;min-width:4px;transition:opacity .12s;position:relative}.bar:hover{opacity:1}.bar.empty{background:var(--surface-3);opacity:1}.bar-x{color:var(--text-3);white-space:nowrap;font-size:10px;position:absolute;bottom:-17px;left:50%;transform:translate(-50%)}.spark{width:100%;height:56px;display:block;overflow:visible}.heat{gap:3px;display:flex}.heat-col{flex-direction:column;gap:3px;display:flex}.heat-cell{background:var(--heat-0);border-radius:3px;width:11px;height:11px}.heat-cell[data-l="1"]{background:var(--heat-1)}.heat-cell[data-l="2"]{background:var(--heat-2)}.heat-cell[data-l="3"]{background:var(--heat-3)}.heat-cell[data-l="4"]{background:var(--heat-4)}.heat-cell.future{opacity:0}.ladder{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.rung{background:var(--surface-2);color:var(--text-3);border-radius:12px;flex-direction:column;gap:2px;min-height:64px;padding:10px 10px 9px;font-size:12px;display:flex}.rung b{font-family:var(--font-display);color:var(--text-2);font-size:15px}.rung.done{background:var(--accent-soft);color:var(--accent)}.rung.done b{color:var(--accent)}.rung.cur{background:var(--accent-strong);color:#ffffffd9}.rung.cur b{color:#fff}.progress{background:var(--surface-3);border-radius:3px;height:6px;overflow:hidden}.progress i{background:var(--accent);height:100%;transition:width .4s var(--spring);border-radius:3px;display:block}.stages{gap:4px;display:flex}.stages i{background:var(--surface-3);border-radius:2px;flex:1;height:4px}.stages i.on{background:var(--accent)}.event-mode{z-index:85;background:var(--bg);padding:calc(18px + env(safe-area-inset-top)) 22px calc(22px + env(safe-area-inset-bottom));flex-direction:column;animation:.2s fade-in;display:flex;position:fixed;inset:0}.em-head{align-items:center;gap:10px;display:flex}.em-timer{font-family:var(--font-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:18px 0 4px;font-size:56px;font-weight:700}.em-qs{flex-direction:column;flex:1;gap:10px;margin:14px 0;display:flex;overflow-y:auto}.em-q{background:var(--surface);border-radius:16px;padding:16px 18px;font-size:18px;line-height:1.5}.em-btns{grid-template-columns:1fr 1fr;gap:10px;display:grid}.em-btn{height:84px;transition:transform .14s var(--spring);border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:18px;font-weight:600;display:flex}.em-btn:active{transform:scale(.96)}.em-btn small{opacity:.8;font-variant-numeric:tabular-nums;font-size:13px;font-weight:500}.em-btn.a{background:var(--accent-strong);color:#fff}.em-btn.b{background:var(--surface-2)}.writer-wrap{border-radius:var(--radius-xl);background:var(--surface);margin-top:22px;overflow:hidden}.writer-foot{border-top:.5px solid var(--sep);color:var(--text-3);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px 12px 18px;font-size:12px;display:flex}.source-card{border-radius:var(--radius-lg);background:var(--surface);border:.5px solid var(--sep);margin-top:18px;padding:16px 18px}.source-card .src-meta{color:var(--text-3);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.source-card .src-title{margin-top:8px;font-size:15px;font-weight:600;line-height:1.45}.source-card .src-sum{color:var(--text-2);margin-top:6px;font-size:14px;line-height:1.6}.source-card .callout{margin-top:12px}.feedback{margin-top:22px}.callout{background:var(--accent-soft);color:var(--text);border-radius:14px;padding:14px 16px;font-size:14px;line-height:1.6}.callout.plain{background:var(--surface)}.callout.warn{background:#ff9f0a1f}.tabs{scrollbar-width:none;gap:4px;margin:22px 0 14px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{height:30px;color:var(--text-2);white-space:nowrap;border-radius:980px;padding:0 13px;font-size:13px;font-weight:500}.tab:hover{background:var(--hover)}.tab.on{background:var(--text);color:var(--bg)}.tab .n{opacity:.6;font-variant-numeric:tabular-nums;margin-left:5px}.queue-bar{background:var(--surface);color:var(--text-2);border-radius:14px;align-items:center;gap:10px;padding:12px 16px;font-size:13px;display:flex}.guess-row{grid-template-columns:1fr 140px 110px;align-items:center;gap:12px;padding:10px 14px;display:grid}.guess-row+.guess-row{border-top:.5px solid var(--sep)}.guess-row .input{text-align:right;font-variant-numeric:tabular-nums;min-height:34px;padding:6px 10px;font-size:15px}.dirs{grid-template-columns:repeat(3,1fr);gap:3px;display:grid}.dirs button{background:var(--surface-2);height:34px;color:var(--text-3);border-radius:8px;font-size:14px}.dirs button.on.u{background:var(--success);color:#fff}.dirs button.on.d{background:var(--danger);color:#fff}.dirs button.on.f{background:var(--text-3);color:#fff}@media screen and (width<=1100px){.page{padding:64px 36px 96px}}@media screen and (width<=860px){html,body{position:fixed;inset:0}.sidebar-wrap{z-index:50;transition:transform .34s var(--spring);box-shadow:var(--shadow-pop);position:fixed;inset:0 auto 0 0;transform:translate(-100%);width:min(260px,86vw)!important}.sidebar-wrap.open{transform:none}.drawer-scrim{z-index:49;background:var(--scrim);animation:.2s fade-in;position:fixed;inset:0}.mobile-menu{top:calc(44px + env(safe-area-inset-top));z-index:6;background:var(--material);-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);border-radius:10px;width:36px;height:36px;display:grid;position:fixed;left:10px}.ticker{padding-top:env(safe-area-inset-top);height:calc(38px + env(safe-area-inset-top))}.page{padding:64px 20px calc(96px + env(safe-area-inset-bottom))}.page-back{margin:-22px 0 14px 34px}.input,.textarea,.select,.title-input{font-size:16px!important}.title-input{font-size:17px!important}.grid2,.grid3,.form-grid{grid-template-columns:1fr}.rubric{grid-template-columns:1fr 1fr}.ladder{grid-template-columns:repeat(3,1fr)}.stats{gap:26px}.stat-v{font-size:28px}.guess-row{grid-template-columns:1fr 104px}.guess-row .dirs{grid-column:1/-1}.board{grid-template-columns:repeat(2,1fr)}.heat{display:none}}@media (prefers-reduced-motion:reduce){.ticker-track{flex-wrap:wrap;animation:none}.sheet,.toast{animation:.12s fade-in}.sidebar-wrap{transition:none}}@media (prefers-reduced-transparency:reduce){.ticker,.toast,.mobile-menu{background:var(--surface-2);-webkit-backdrop-filter:none;backdrop-filter:none}}.tnum{font-variant-numeric:tabular-nums}.flash-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);border-radius:50%;display:inline-block}.search-box{align-items:center;display:flex;position:relative}.search-box svg{color:var(--text-3);pointer-events:none;position:absolute;left:12px}.search-box .input{width:100%;padding-left:36px}.cat-group{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.cat-group-h,.tab-group{color:var(--text-3);letter-spacing:.02em;white-space:nowrap;font-size:12px}.cat-group-h{width:56px}.tab-group{align-self:center;padding:0 4px 0 10px}
