:root{color-scheme:dark;--bg: #0c0f13;--line: rgba(232, 236, 241, .08);--text: #e8edf2;--muted: #8e9aa6;--faint: #66727e;--red: #e23a2f;--red-soft: rgba(226, 58, 47, .14);--gold: #d6b56a;--aluminum: #d7dee6;--ease-out: cubic-bezier(.23, 1, .32, 1);font-family:Segoe UI,Microsoft JhengHei UI,Microsoft JhengHei,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;overflow:hidden}body{background:radial-gradient(1100px 480px at 78% -12%,rgba(226,58,47,.18),transparent 55%),var(--bg);color:var(--text)}button,input,select{font:inherit;color:inherit}button{cursor:pointer}code{font-family:Consolas,Cascadia Code,monospace;color:var(--aluminum);font-size:12px}.app{position:relative;height:100%;display:grid;grid-template-rows:60px minmax(0,1fr) 34px;grid-template-columns:minmax(0,1fr)}.topbar,.stage,.status{grid-column:1}.topbar{grid-row:1;display:flex;align-items:center;gap:16px;padding:0 16px;border-bottom:1px solid var(--line);background:#0c0f13eb;z-index:5}.stage{grid-row:2}.status{grid-row:3}.brand{display:flex;align-items:center;gap:12px}.brand h1{margin:0;font-size:15px;font-weight:640;letter-spacing:.01em}.brand p{margin:2px 0 0;color:var(--muted);font-size:12px}.top-actions{margin-left:auto;display:flex;gap:8px}.btn{border:1px solid var(--line);background:#1b2128;border-radius:999px;padding:7px 12px;transition:background .16s ease,border-color .16s ease,transform .16s var(--ease-out)}.btn:hover{background:#242b34}.btn:active{transform:scale(.98)}.btn[aria-pressed=true]{background:var(--red-soft);border-color:#e23a2f73;color:#ffd0cc}.btn:disabled{opacity:.45;cursor:default}.panel{position:absolute;top:60px;bottom:34px;width:min(340px,calc(100vw - 28px));z-index:4;background:#11151bf0;transition:transform .2s var(--ease-out)}.panel-left{left:0;border-right:1px solid var(--line);transform:translate(-105%)}.panel-right{right:0;border-left:1px solid var(--line);transform:translate(105%)}.left-open .panel-left,.right-open .panel-right{transform:translate(0)}.panel-scroll{height:100%;overflow:auto;padding:14px 14px 28px}.stage{position:relative;min-width:0;min-height:0;background:#090b0e}.viewport{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:none}.viewport canvas{width:100%;height:100%;display:block}.viewport.is-measure,.viewport.is-measure canvas{cursor:crosshair}.viewport-loading,.measure-label{position:absolute}.viewport-loading{top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--muted);background:#090b0e47;pointer-events:none}.viewport-loading[hidden],.measure-label[hidden]{display:none}.measure-label{transform:translate(-50%,-140%);background:#101318eb;border:1px solid var(--line);border-radius:8px;padding:4px 8px;font-size:12px;pointer-events:none;font-variant-numeric:tabular-nums;z-index:2}.dock{position:absolute;left:50%;bottom:16px;transform:translate(-50%);display:flex;flex-wrap:wrap;justify-content:center;gap:6px;align-items:center;width:max-content;max-width:calc(100% - 24px);padding:6px;border-radius:18px;background:#101318db;border:1px solid var(--line);z-index:2}.dock .btn{white-space:nowrap}.dock-slider{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;padding:0 6px}.dock-slider input{width:88px;accent-color:var(--red)}.status{display:flex;gap:18px;align-items:center;padding:0 16px;border-top:1px solid var(--line);color:var(--faint);font-size:12px;background:#0c0f13f0;z-index:5}.status strong{color:var(--muted);font-weight:600}.status-keys{margin-left:auto}.eyebrow{margin:0;color:var(--faint);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.hero{margin:4px 0 0;font-size:52px;line-height:.95;font-weight:620;letter-spacing:-.045em;font-variant-numeric:tabular-nums}.hero span{font-size:18px;margin-left:6px;letter-spacing:0;color:var(--muted);font-weight:520}.hero.is-over{color:var(--red)}.sub{margin:8px 0 0;color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.note{margin:14px 0 0;color:var(--muted);font-size:12.5px;line-height:1.55}.gauge-row{display:grid;grid-template-columns:54px 1fr;gap:12px;margin-top:16px}.height-gauge{position:relative;height:188px;border-radius:8px;background:#0e1216;border:1px solid var(--line);overflow:hidden}.height-gauge-fill{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(to top,rgba(215,222,230,.12),var(--aluminum))}.height-gauge.is-over .height-gauge-fill{background:linear-gradient(to top,rgba(226,58,47,.25),var(--red))}.tick{position:absolute;left:4px;font-size:10px;color:var(--gold);transform:translateY(50%)}.tick-50{color:#ffb1ab}.bars{display:flex;flex-direction:column;gap:10px;justify-content:center}.bar-label{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.bar{height:8px;border-radius:99px;background:#0e1216;overflow:hidden}.bar>span{display:block;height:100%;background:var(--aluminum)}.bar.is-over>span{background:var(--red)}.search,.select{width:100%;margin-top:10px;border-radius:10px;border:1px solid var(--line);background:#0e1216;padding:8px 10px}.search:focus,.select:focus{outline:2px solid rgba(226,58,47,.45);outline-offset:1px}.switches{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.switch{border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);padding:6px 10px;font-size:12px}.switch[aria-pressed=true]{color:#ffd0cc;background:var(--red-soft);border-color:#e23a2f66}.tree-row{display:flex;align-items:center;gap:4px;min-height:28px}.tree-chevron{width:18px;border:0;background:transparent;color:var(--faint);padding:0}.tree-name{flex:1;text-align:left;background:transparent;border:0;border-radius:6px;padding:4px 6px;color:var(--text)}.tree-name:hover{background:#ffffff0a}.tree-name.is-selected{background:#e23a2f29}.tag{font-size:10px;color:var(--faint);border:1px solid var(--line);border-radius:99px;padding:1px 6px}.alert{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:4;margin:0;padding:8px 12px;border-radius:8px;background:var(--red-soft);color:#ffd0cc;font-size:13px}.empty{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center;padding:24px;color:var(--muted)}.empty>div{max-width:34rem}.empty h2{color:var(--text);font-weight:600;margin:0 0 8px}.veil{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#080a0c9e;z-index:3}.check{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:13px;margin-top:12px}.isolate-banner{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;margin:8px 0;border-radius:8px;background:#1b2128;font-size:13px}.field{margin-top:16px}.field label{display:block;color:var(--faint);font-size:12px;margin-bottom:6px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
