:root{font-family:SF Pro Display,SF Pro Text,PingFang SC,-apple-system,BlinkMacSystemFont,Noto Sans SC,Microsoft YaHei,sans-serif;font-synthesis:none;color-scheme:light;--ink: #101418;--ink-muted: #596368;--ink-soft: #7e888c;--ink-faint: #99a2a5;--leaf-text: #58a021;--blue: #236de9;--blue-hover: #1d61d5;--blue-soft: rgba(35, 109, 233, .1);--lime: #82dd2d;--lime-soft: rgba(130, 221, 45, .14);--red: #ff5a50;--red-text: #e0443b;--red-soft: rgba(255, 90, 80, .11);--focus: rgba(35, 109, 233, .8);--r-xs: 8px;--r-sm: 12px;--r-md: 16px;--r-lg: 20px;--r-xl: 24px;--shade: 46, 58, 62;--line: rgba(var(--shade), .085);--line-strong: rgba(var(--shade), .11);--glass-line: rgba(255, 255, 255, .88);--glass-line-soft: rgba(255, 255, 255, .7);--e1: 0 1px 2px rgba(var(--shade), .05), 0 5px 14px rgba(var(--shade), .04);--e2: 0 1px 3px rgba(var(--shade), .06), 0 12px 30px rgba(var(--shade), .055);--e3: 0 2px 6px rgba(var(--shade), .07), 0 22px 50px rgba(var(--shade), .08);--e-accent: 0 1px 2px rgba(20, 66, 148, .28), 0 8px 18px rgba(35, 109, 233, .24);--e-accent-hover: 0 1px 2px rgba(20, 66, 148, .32), 0 12px 24px rgba(35, 109, 233, .3);--e-danger: 0 1px 2px rgba(150, 40, 34, .26), 0 8px 18px rgba(255, 90, 80, .24);--edge: inset 0 1px 0 rgba(255, 255, 255, .92);--edge-strong: inset 0 1px 0 rgba(255, 255, 255, .98);--stage: #dfe3e2;--frame: #17191d;--canvas: #f6f8f7;--rail-bg: rgba(250, 251, 250, .92);--pill-bg: linear-gradient(145deg, rgba(255, 255, 255, .93), rgba(246, 251, 249, .62));--pill-inset: inset 0 -1px 0 rgba(105, 122, 128, .08);--float-bg: rgba(246, 248, 247, .86);--float-inset: inset 0 0 0 1px rgba(120, 132, 135, .13), inset 0 1px 0 rgba(255, 255, 255, .72);--surface: linear-gradient(145deg, rgba(255, 255, 255, .97), rgba(249, 252, 251, .93));--surface-solid: #fbfcfc;--groove-bg: rgba(225, 231, 229, .5);--groove-inset: inset 0 1px 0 rgba(255, 255, 255, .46);--input-bg: rgba(255, 255, 255, .78);--hover-bg: rgba(var(--shade), .045);--press-bg: rgba(var(--shade), .075);--overlay: rgba(16, 20, 24, .26);--dark-surface: #131619;--font-mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--fs-display-xl: 56px;--fs-display-l: 40px;--fs-display-m: 28px;--track-eyebrow: .14em;--hatch-ink: rgba(var(--shade), .16);--hatch: repeating-linear-gradient(135deg, var(--hatch-ink) 0 1.5px, transparent 1.5px 6px);--tick: rgba(var(--shade), .22);--tick-strong: rgba(var(--shade), .5);--plate-bg: rgba(21, 24, 26, .9);--plate-line: rgba(255, 255, 255, .1);--plate-ink: #f2f5f4;--plate-soft: rgba(255, 255, 255, .56);--cat-1-bg: #f6e7c4;--cat-1-ink: #7a5a16;--cat-2-bg: #d7e7fb;--cat-2-ink: #275a96;--cat-3-bg: #e4dcf7;--cat-3-ink: #5b4597;--cat-4-bg: #f7dce1;--cat-4-ink: #94384c;--cat-5-bg: #d8f0dc;--cat-5-ink: #2d7140;--ambient-a: rgba(130, 221, 45, .07);--ambient-b: rgba(35, 109, 233, .055);--thread: rgba(var(--shade), .2);--thread-active: rgba(35, 109, 233, .62);--pulse-halo: rgba(35, 109, 233, .18);--node-bg: rgba(255, 255, 255, .94);--graph-1: 186, 140, 52;--graph-2: 58, 122, 206;--graph-3: 122, 96, 204;--graph-4: 200, 90, 118;--graph-5: 58, 150, 92;--graph-ink: 46, 58, 62;--graph-accent: 35, 109, 233;--graph-lime: 110, 190, 36;--graph-danger: 224, 68, 59;--graph-paper: 255, 255, 255;--ease-premium: cubic-bezier(.16, 1, .3, 1);--rail-w: 232px;--topbar-h: 64px;--layer-overlay: 200;--layer-toast: 400;--control-h: 36px;--control-h-sm: 30px;--row-h: 48px;--cell-px: 16px}:root[data-density=comfy]{--row-h: 56px;--cell-px: 18px}:root[data-density=compact]{--row-h: 40px;--cell-px: 14px}:root[data-theme=dark]{color-scheme:dark;--ink: #eef2f1;--ink-muted: #b0babd;--ink-soft: #8d979a;--ink-faint: #6c7679;--leaf-text: #9be35a;--blue: #4c8dff;--blue-hover: #3d7ff2;--blue-soft: rgba(76, 141, 255, .16);--lime-soft: rgba(130, 221, 45, .16);--red-text: #ff7a71;--red-soft: rgba(255, 90, 80, .16);--focus: rgba(76, 141, 255, .85);--shade: 0, 0, 0;--line: rgba(255, 255, 255, .07);--line-strong: rgba(255, 255, 255, .1);--glass-line: rgba(255, 255, 255, .1);--glass-line-soft: rgba(255, 255, 255, .07);--e1: 0 1px 2px rgba(0, 0, 0, .3), 0 5px 14px rgba(0, 0, 0, .2);--e2: 0 1px 3px rgba(0, 0, 0, .32), 0 12px 30px rgba(0, 0, 0, .28);--e3: 0 2px 6px rgba(0, 0, 0, .36), 0 22px 50px rgba(0, 0, 0, .42);--e-accent: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 18px rgba(76, 141, 255, .26);--e-accent-hover: 0 1px 2px rgba(0, 0, 0, .4), 0 12px 24px rgba(76, 141, 255, .34);--e-danger: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 18px rgba(255, 90, 80, .26);--edge: inset 0 1px 0 rgba(255, 255, 255, .06);--edge-strong: inset 0 1px 0 rgba(255, 255, 255, .09);--stage: #090b0c;--frame: #000;--canvas: #121517;--rail-bg: rgba(22, 26, 28, .94);--pill-bg: linear-gradient(145deg, rgba(255, 255, 255, .11), rgba(255, 255, 255, .05));--pill-inset: inset 0 -1px 0 rgba(0, 0, 0, .2);--float-bg: rgba(30, 34, 37, .9);--float-inset: inset 0 0 0 1px rgba(255, 255, 255, .04), inset 0 1px 0 rgba(255, 255, 255, .06);--surface: linear-gradient(145deg, rgba(29, 33, 36, .98), rgba(25, 29, 31, .96));--surface-solid: #1b1f21;--groove-bg: rgba(0, 0, 0, .22);--groove-inset: inset 0 1px 2px rgba(0, 0, 0, .28);--input-bg: rgba(255, 255, 255, .04);--hover-bg: rgba(255, 255, 255, .05);--press-bg: rgba(255, 255, 255, .08);--overlay: rgba(0, 0, 0, .5);--hatch-ink: rgba(255, 255, 255, .12);--tick: rgba(255, 255, 255, .16);--tick-strong: rgba(255, 255, 255, .42);--plate-bg: rgba(8, 10, 11, .78);--cat-1-bg: rgba(232, 190, 96, .16);--cat-1-ink: #ecc779;--cat-2-bg: rgba(100, 160, 240, .16);--cat-2-ink: #92bdf5;--cat-3-bg: rgba(160, 132, 236, .17);--cat-3-ink: #bfaaf4;--cat-4-bg: rgba(236, 120, 140, .16);--cat-4-ink: #f2a3b1;--cat-5-bg: rgba(110, 200, 130, .15);--cat-5-ink: #94dca6;--ambient-a: rgba(130, 221, 45, .05);--ambient-b: rgba(76, 141, 255, .07);--thread: rgba(255, 255, 255, .16);--thread-active: rgba(110, 160, 255, .72);--pulse-halo: rgba(76, 141, 255, .28);--node-bg: rgba(32, 37, 40, .94);--graph-1: 236, 199, 121;--graph-2: 146, 189, 245;--graph-3: 191, 170, 244;--graph-4: 242, 163, 177;--graph-5: 148, 220, 166;--graph-ink: 214, 222, 220;--graph-accent: 76, 141, 255;--graph-lime: 155, 227, 90;--graph-danger: 255, 122, 113;--graph-paper: 36, 41, 44}@property --fill{syntax: "<percentage>"; inherits: false; initial-value: 0%;}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%}body{min-width:320px;min-height:100dvh;color:var(--ink);background:var(--stage);font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}#app{min-height:100dvh}button,input,select,textarea{font:inherit;color:inherit}button{border:0;background:none;padding:0;cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin:0}img,svg{display:block}table{border-collapse:collapse;border-spacing:0}::selection{background:var(--blue-soft)}:focus{outline:none}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.tnum{font-variant-numeric:tabular-nums}.mono{font-family:SF Mono,ui-monospace,Menlo,Consolas,monospace;font-size:12px}.muted{color:var(--ink-muted)}.soft{color:var(--ink-soft)}.faint{color:var(--ink-faint)}.ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}*{scrollbar-width:thin;scrollbar-color:rgba(var(--shade),.18) transparent}:root[data-theme=dark] *{scrollbar-color:rgba(255,255,255,.14) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(var(--shade),.16);border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}.section-label{display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:650;letter-spacing:-.01em;color:var(--ink)}.section-label:before{content:"";width:7px;height:7px;border-radius:999px;background:var(--lime);box-shadow:0 0 0 5px var(--lime-soft);flex:none}.grain-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;pointer-events:none;opacity:.032;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px}:root[data-theme=dark] .grain-layer{opacity:.045}@media(prefers-contrast:more){.grain-layer{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}}.m-rail{background:var(--rail-bg);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.m-pill{border:1px solid var(--glass-line);background:var(--pill-bg);box-shadow:var(--e2),var(--edge-strong),var(--pill-inset);backdrop-filter:blur(22px) saturate(1.18);-webkit-backdrop-filter:blur(22px) saturate(1.18)}.m-float{border:1px solid var(--glass-line);background:var(--float-bg);box-shadow:var(--e3),var(--float-inset);backdrop-filter:blur(28px) saturate(1.08);-webkit-backdrop-filter:blur(28px) saturate(1.08)}.m-surface{border:1px solid var(--line-strong);background:var(--surface);box-shadow:var(--edge),var(--e1)}.m-groove{border:1px solid var(--glass-line-soft);background:var(--groove-bg);box-shadow:var(--groove-inset)}.m-glow{--px: 50%;--py: 50%;position:relative;isolation:isolate}.m-glow>.glow-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(circle 120px at var(--px) var(--py),rgba(255,255,255,.9),rgba(130,221,45,.08) 42%,transparent 72%);mix-blend-mode:screen;transition:opacity .28s ease}:root[data-theme=dark] .m-glow>.glow-layer{background:radial-gradient(circle 120px at var(--px) var(--py),rgba(255,255,255,.07),rgba(130,221,45,.05) 42%,transparent 72%);mix-blend-mode:normal}@media(hover:hover){.m-glow:hover>.glow-layer{opacity:.72}}@media(prefers-reduced-transparency:reduce){.m-rail,.m-pill,.m-float{backdrop-filter:none;-webkit-backdrop-filter:none}.m-float,.m-rail{background:var(--surface-solid)}}@media(pointer:coarse),(prefers-reduced-motion:reduce){.m-glow>.glow-layer{display:none}}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:7px;height:var(--control-h);padding:0 15px;border-radius:var(--r-sm);font-size:13px;font-weight:620;letter-spacing:.005em;white-space:nowrap;flex:none;-webkit-user-select:none;user-select:none;transform-origin:50% 68%;transition:color .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}.btn:disabled{opacity:.5}.btn-sm{height:var(--control-h-sm);padding:0 11px;font-size:12.5px;border-radius:var(--r-xs);gap:5px}.btn-block{width:100%}.btn-primary{color:#fff;background:var(--blue);box-shadow:var(--e-accent);font-weight:660}.btn-primary:hover:not(:disabled){background:var(--blue-hover);box-shadow:var(--e-accent-hover)}.btn-secondary{color:var(--ink)}.btn-secondary:hover:not(:disabled){box-shadow:var(--e2),var(--edge-strong),var(--pill-inset);color:var(--ink)}.btn-ghost{color:var(--ink-muted)}.btn-ghost:hover:not(:disabled){color:var(--ink);background:var(--hover-bg)}.btn-text{color:var(--blue);height:auto;padding:4px 6px;border-radius:var(--r-xs);font-weight:600}.btn-text:hover:not(:disabled){background:var(--blue-soft)}.btn-text.is-danger{color:var(--red-text)}.btn-text.is-danger:hover:not(:disabled){background:var(--red-soft)}.btn-danger{color:#fff;background:var(--red);box-shadow:var(--e-danger);font-weight:660}.btn-danger:hover:not(:disabled){background:#f14c42}.btn .spinner{width:14px;height:14px}.spinner{border-radius:999px;border:2px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--r-xs);color:var(--ink-soft);flex:none;transition:color .2s ease,background .2s ease,box-shadow .2s ease}.icon-btn:hover:not(:disabled){color:var(--ink);background:var(--hover-bg)}.icon-btn:disabled{opacity:.45}.icon-btn.is-bordered{border:1px solid var(--line-strong);background:var(--input-bg);box-shadow:var(--edge)}.icon-btn.is-danger:hover:not(:disabled){color:var(--red-text);background:var(--red-soft)}.icon-btn-sm{width:28px;height:28px}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field>.segmented{align-self:flex-start;max-width:100%}.field-label{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--ink-muted)}.field-label .req{color:var(--red-text);font-weight:700}.field-hint{font-size:11.5px;color:var(--ink-soft)}.field-error{font-size:11.5px;color:var(--red-text)}.input-shell{display:flex;align-items:center;gap:8px;min-width:0;height:var(--control-h);padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--input-bg);box-shadow:var(--edge);color:var(--ink-soft);transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.input-shell:hover{border-color:rgba(var(--shade),.18)}:root[data-theme=dark] .input-shell:hover{border-color:#ffffff29}.input-shell:focus-within{outline:2px solid var(--focus);outline-offset:2px;border-color:transparent}.input-shell.is-invalid{border-color:var(--red)}.input-shell.is-invalid:focus-within{outline-color:var(--red)}.input-shell.is-disabled{opacity:.6;background:var(--groove-bg)}.input-shell.is-multiline{height:auto;align-items:stretch;padding:9px 12px}.input-shell input,.input-shell textarea{flex:1;min-width:0;width:100%;height:100%;padding:0;border:0;background:transparent;color:var(--ink);font-size:13px;outline:none}.input-shell textarea{resize:vertical;min-height:64px;line-height:1.55}.input-shell input::placeholder,.input-shell textarea::placeholder{color:var(--ink-faint)}.input-shell input[type=number]::-webkit-inner-spin-button{opacity:.4}.input-shell .input-clear{display:inline-flex;color:var(--ink-faint);border-radius:999px}.input-shell .input-clear:hover{color:var(--ink-muted)}.select-trigger{width:100%;cursor:pointer;justify-content:space-between;text-align:left;color:var(--ink)}.select-trigger .select-value{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px}.select-trigger .select-value.is-placeholder{color:var(--ink-faint)}.select-trigger .select-caret{color:var(--ink-soft);flex:none;transition:color .2s ease}.select-menu{position:fixed;z-index:120;min-width:160px;max-height:300px;display:flex;flex-direction:column;padding:6px;border-radius:var(--r-md);overflow:hidden}.select-search{padding:2px 2px 6px}.select-search .input-shell{height:32px}.select-options{overflow-y:auto;overscroll-behavior:contain}.select-option{display:flex;align-items:center;gap:8px;min-height:34px;padding:0 10px;border-radius:var(--r-xs);font-size:13px;color:var(--ink);cursor:pointer;transition:background .15s ease,color .15s ease}.select-option .opt-label{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.select-option.is-active{background:var(--hover-bg)}.select-option.is-selected{color:var(--blue);font-weight:620}.select-option.is-disabled{color:var(--ink-faint);cursor:not-allowed}.select-empty{padding:14px 10px;font-size:12px;color:var(--ink-soft);text-align:center}.checkbox{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--ink);-webkit-user-select:none;user-select:none}.checkbox.is-disabled{cursor:not-allowed;opacity:.5}.checkbox-box{position:relative;display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:5px;border:1.5px solid rgba(var(--shade),.28);background:var(--input-bg);color:#fff;flex:none;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}:root[data-theme=dark] .checkbox-box{border-color:#ffffff38}.checkbox:hover .checkbox-box{border-color:var(--blue)}.checkbox.is-on .checkbox-box,.checkbox.is-partial .checkbox-box{background:var(--blue);border-color:var(--blue);box-shadow:0 2px 6px #236de947}.checkbox input{position:absolute;opacity:0;width:0;height:0}.checkbox input:focus-visible+.checkbox-box{outline:2px solid var(--focus);outline-offset:2px}.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:13px;color:var(--ink-muted)}.switch.is-disabled{cursor:not-allowed;opacity:.5}.switch-track{--fill: 0%;position:relative;width:38px;height:22px;border-radius:999px;flex:none;background:linear-gradient(90deg,var(--lime) var(--fill),rgba(var(--shade),.14) var(--fill));box-shadow:inset 0 1px 2px rgba(var(--shade),.14);transition:--fill .32s var(--ease-premium)}:root[data-theme=dark] .switch-track{background:linear-gradient(90deg,var(--lime) var(--fill),rgba(255,255,255,.14) var(--fill))}.switch.is-on .switch-track{--fill: 100%}.switch-knob{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:999px;background:#fff;box-shadow:0 1px 3px #10141838,0 2px 6px #1014181a;transition:translate .32s var(--ease-premium)}.switch.is-on .switch-knob{translate:16px 0}.switch input{position:absolute;opacity:0;width:0;height:0}.switch input:focus-visible+.switch-track{outline:2px solid var(--focus);outline-offset:3px}.segmented{position:relative;display:inline-flex;padding:3px;border-radius:var(--r-sm);flex:none}.segmented:has(button:focus-visible){outline:2px solid var(--focus);outline-offset:3px}.segmented .seg-thumb{position:absolute;top:3px;bottom:3px;left:0;border-radius:var(--r-xs);z-index:0;pointer-events:none;animation:fade-in .2s ease both}.segmented button{position:relative;z-index:1;height:28px;padding:0 13px;border-radius:var(--r-xs);font-size:12.5px;font-weight:600;color:var(--ink-soft);white-space:nowrap;outline:none;transition:color .2s ease}.segmented button:hover,.segmented button.is-active{color:var(--ink)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.tag{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 9px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap;color:var(--ink-muted);background:rgba(var(--shade),.065)}:root[data-theme=dark] .tag{background:#ffffff12}.tag-dot{width:6px;height:6px;border-radius:999px;background:currentColor;flex:none}.tag.tone-ok{color:var(--leaf-text);background:var(--lime-soft)}.tag.tone-ok .tag-dot{background:var(--lime);box-shadow:0 0 0 3px var(--lime-soft)}.tag.tone-info{color:var(--blue);background:var(--blue-soft)}.tag.tone-danger{color:var(--red-text);background:var(--red-soft)}.tag.tone-neutral .tag-dot{background:var(--ink-faint)}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;flex:none;font-weight:650;color:#fff;letter-spacing:-.02em;box-shadow:inset 0 1px #ffffff47,0 1px 2px rgba(var(--shade),.12)}.panel{border-radius:var(--r-lg);min-width:0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;padding:14px 20px;flex-wrap:wrap}.panel-head .panel-meta{font-size:12px;color:var(--ink-soft);font-weight:500}.panel-tools{display:flex;align-items:center;gap:6px}.panel-body{padding:0 20px 20px}.table-wrap{position:relative;overflow-x:auto;overflow-y:clip}.table{width:100%;min-width:720px;font-size:13px}.table th{position:sticky;top:0;z-index:1;height:40px;padding:0 var(--cell-px);text-align:left;font-size:12px;font-weight:620;color:var(--ink-soft);white-space:nowrap;background:var(--surface-solid);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.table th.is-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.table th.is-sortable:hover{color:var(--ink)}.table .th-inner{display:inline-flex;align-items:center;gap:4px}.table .sort-ico{color:var(--ink-faint)}.table .sort-ico.is-on{color:var(--blue)}.table td{height:var(--row-h);padding:0 var(--cell-px);border-bottom:1px solid var(--line);color:var(--ink);vertical-align:middle;white-space:nowrap}.table .cell-text{display:inline-block;max-width:280px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.table tbody tr{transition:background .15s ease}.table tbody tr:hover{background:var(--hover-bg)}.table tbody tr.is-selected{background:var(--blue-soft)}.table tbody tr:last-child td{border-bottom:0}.table .col-check{width:44px;padding-right:0}.table .col-actions{text-align:right;white-space:nowrap}.table th.col-actions,.table td.col-actions{position:sticky;right:0;z-index:1;background:var(--surface-solid);box-shadow:inset 1px 0 0 var(--line)}.table th.col-actions{z-index:2}.table tbody tr:hover td.col-actions{background:linear-gradient(var(--hover-bg),var(--hover-bg)),var(--surface-solid)}.table tbody tr.is-selected td.col-actions{background:linear-gradient(var(--blue-soft),var(--blue-soft)),var(--surface-solid)}.row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:2px}.tree-cell{display:inline-flex;align-items:center;gap:4px}.tree-toggle{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;color:var(--ink-soft);flex:none}.tree-toggle:hover{background:var(--hover-bg);color:var(--ink)}.tree-toggle svg{transition:rotate .24s var(--ease-premium)}.tree-toggle.is-open svg{rotate:90deg}.tree-toggle.is-leaf{visibility:hidden}.cell-main{display:flex;align-items:center;gap:11px;min-width:0}.cell-title{font-weight:620;color:var(--ink)}.cell-sub{font-size:12px;color:var(--ink-soft);margin-top:1px}.code-chip{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:6px;font-family:SF Mono,ui-monospace,Menlo,Consolas,monospace;font-size:11.5px;color:var(--ink-muted);background:rgba(var(--shade),.06);white-space:nowrap}:root[data-theme=dark] .code-chip{background:#ffffff0f}.pager{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 20px;border-top:1px solid var(--line)}.pager-info{font-size:12px;color:var(--ink-soft)}.pager-info b{color:var(--ink);font-weight:650}.pager-ctrl{display:flex;align-items:center;gap:4px}.pg-btn{min-width:30px;height:30px;padding:0 8px;border-radius:var(--r-xs);display:inline-flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:600;color:var(--ink-muted);transition:color .2s ease,background .2s ease,box-shadow .2s ease}.pg-btn:hover:not(:disabled):not(.is-active){background:var(--hover-bg);color:var(--ink)}.pg-btn:disabled{opacity:.35}.pg-btn.is-active{color:var(--ink)}.pg-dots{width:22px;text-align:center;color:var(--ink-faint)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--layer-overlay);display:grid;place-items:center;padding:24px;background:var(--overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.modal{width:100%;max-height:calc(100dvh - 48px);display:flex;flex-direction:column;border-radius:var(--r-xl);box-shadow:var(--edge),var(--e3);background:var(--surface-solid)}.modal-head,.drawer-head{flex:none;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px 6px}.modal-title{font-size:16px;font-weight:700;letter-spacing:-.015em}.modal-sub{font-size:12px;color:var(--ink-soft);margin-top:3px}.modal-body{min-height:0;padding:14px 22px 20px;overflow-y:auto}.modal-foot,.drawer-foot{flex:none;display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1px solid var(--line)}.drawer-overlay{place-items:stretch end;grid-template-rows:minmax(0,1fr);padding:8px}.drawer{height:100%;min-height:0;max-width:calc(100vw - 16px);display:flex;flex-direction:column;overflow:hidden;border-radius:var(--r-xl);background:var(--surface-solid);box-shadow:var(--edge),var(--e3)}.drawer-body{flex:1;min-height:0;overflow-y:auto;padding:14px 22px 22px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}.form-grid .span-2{grid-column:1 / -1}.confirm-body{display:flex;gap:14px;align-items:flex-start}.confirm-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--r-sm);flex:none;color:var(--blue);background:var(--blue-soft)}.confirm-icon.is-danger{color:var(--red-text);background:var(--red-soft)}.confirm-text{font-size:13.5px;color:var(--ink-muted);line-height:1.6;padding-top:2px}.confirm-text b{color:var(--ink)}.kv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border-radius:var(--r-md);overflow:hidden;background:var(--line);border:1px solid var(--line)}.kv{padding:12px 14px;background:var(--surface-solid);min-width:0}.kv.span-2{grid-column:1 / -1}.kv-label{font-size:11px;font-weight:600;color:var(--ink-soft);margin-bottom:4px}.kv-value{font-size:13px;color:var(--ink);word-break:break-all}.code-block{margin:0;padding:14px 16px;border-radius:var(--r-md);font-family:SF Mono,ui-monospace,Menlo,Consolas,monospace;font-size:12px;line-height:1.65;color:#d9e1e4;background:var(--dark-surface);box-shadow:inset 0 1px #ffffff0f;overflow:auto;white-space:pre}.toast-host{--toast-h: 44px;position:fixed;left:50%;bottom:28px;z-index:var(--layer-toast);width:min(460px,calc(100vw - 32px));height:var(--toast-h);translate:-50% 0;pointer-events:none}.toast-host:empty{display:none}.toast-slot{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:center;pointer-events:auto;transform-origin:50% 100%;transform:translateY(calc(var(--depth) * -9px)) scale(calc(1 - var(--depth) * .05));opacity:calc(1 - var(--depth) * .28);z-index:calc(10 - var(--depth));transition:transform .42s var(--ease-premium),opacity .3s ease}.toast-host.is-expanded .toast-slot{transform:translateY(calc(var(--depth) * (var(--toast-h) + 8px) * -1));opacity:1}.toast-slot:nth-last-child(n+4){opacity:0}.toast-host.is-expanded .toast-slot:nth-last-child(n+4){opacity:1}.toast{display:inline-flex;align-items:center;gap:10px;max-width:100%;min-height:var(--toast-h);padding:8px 8px 8px 14px;border-radius:999px;font-size:13px;font-weight:560;color:var(--ink)}.toast-msg{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.toast-dot{width:8px;height:8px;border-radius:999px;flex:none;background:var(--blue)}.toast.tone-ok .toast-dot{background:var(--lime);box-shadow:0 0 0 4px var(--lime-soft)}.toast.tone-info .toast-dot{box-shadow:0 0 0 4px var(--blue-soft)}.toast.tone-danger .toast-dot{background:var(--red);box-shadow:0 0 0 4px var(--red-soft)}.toast-close{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;color:var(--ink-faint);flex:none;transition:background .2s ease,color .2s ease}.toast-close:hover{background:var(--hover-bg);color:var(--ink)}.toast-ring{overflow:visible}.toast-ring circle{fill:none;stroke-width:1.6}.toast-ring .ring-track{stroke:var(--line-strong)}.toast-ring .ring-time{stroke:currentColor;stroke-dasharray:44;stroke-dashoffset:0;transform:rotate(-90deg);transform-origin:50% 50%;animation:toast-count linear forwards}.toast.is-paused .ring-time{animation-play-state:paused}.toast-ring path{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}@keyframes toast-count{to{stroke-dashoffset:44}}.empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:44px 16px;font-size:13px;color:var(--ink-soft);text-align:center}.empty-ico{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:var(--r-md);color:var(--ink-faint)}.empty-title{font-weight:620;color:var(--ink-muted)}.skeleton{display:block;height:12px;border-radius:999px;background:rgba(var(--shade),.08);animation:pulse 1.4s ease-in-out infinite}:root[data-theme=dark] .skeleton{background:#ffffff12}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.tree{display:flex;flex-direction:column;gap:1px}.tree-row{display:flex;align-items:center;gap:6px;min-height:34px;padding-right:8px;border-radius:var(--r-xs);font-size:13px;color:var(--ink);cursor:pointer;transition:background .15s ease,color .15s ease}.tree-row:hover{background:var(--hover-bg)}.tree-row.is-selected{background:var(--blue-soft);color:var(--blue);font-weight:620}.tree-row .tree-label{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tree-row .tree-count{font-size:11px;color:var(--ink-faint)}.perm-chips{display:flex;flex-wrap:wrap;gap:6px;padding:2px 0 8px}.perm-chip{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:560;color:var(--ink-muted);border:1px solid var(--line-strong);background:var(--input-bg);transition:color .2s ease,background .2s ease,border-color .2s ease}.perm-chip:hover{border-color:var(--blue);color:var(--ink)}.perm-chip.is-on{color:var(--blue);border-color:transparent;background:var(--blue-soft)}@media(max-width:720px){.form-grid,.kv-grid{grid-template-columns:minmax(0,1fr)}.modal-head,.drawer-head{padding:18px 18px 4px}.modal-body,.drawer-body{padding:12px 18px 18px}.modal-foot,.drawer-foot{padding:12px 18px}.overlay{padding:12px}}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;font-weight:600;letter-spacing:.02em;color:var(--ink-faint);white-space:nowrap}.section-mark{display:flex;flex-direction:column;gap:6px;min-width:0}.section-mark-title{font-size:15px;font-weight:680;letter-spacing:-.012em;color:var(--ink)}.odometer{display:inline-flex;align-items:baseline;line-height:1}.odo-cell{position:relative;display:inline-block;height:1em;overflow:hidden}.odo-cell.is-sep{overflow:visible}.odo-cell.is-fraction{color:var(--ink-faint)}.odo-strip{display:flex;flex-direction:column;transition:transform .9s var(--ease-premium)}.odo-strip>span{display:block;height:1em;line-height:1;text-align:center}.metric{display:flex;flex-direction:column;gap:8px;min-width:0}.metric-label{font-size:12px;font-weight:600;color:var(--ink-soft)}.metric-figure{display:inline-flex;align-items:flex-start;gap:4px;font-weight:720;letter-spacing:-.045em;color:var(--ink);line-height:1}.metric-xl .metric-figure{font-size:var(--fs-display-xl)}.metric-l .metric-figure{font-size:var(--fs-display-l)}.metric-m .metric-figure{font-size:var(--fs-display-m);letter-spacing:-.035em}.metric-s .metric-figure{font-size:20px;letter-spacing:-.02em}.metric-unit{position:relative;top:.12em;font-size:.32em;font-weight:640;letter-spacing:0;color:var(--ink-soft);vertical-align:top}.metric-s .metric-unit,.metric-m .metric-unit{font-size:.46em}.spec-plate{margin:0;min-width:188px;padding:10px 14px;border-radius:var(--r-md);border:1px solid var(--plate-line);background:var(--plate-bg);box-shadow:var(--e2),inset 0 1px #ffffff1a;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);font-family:var(--font-mono);font-size:11px;color:var(--plate-soft)}.spec-title{margin-bottom:4px;letter-spacing:var(--track-eyebrow);text-transform:uppercase;font-size:10px;color:var(--plate-soft)}.spec-row{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding:2px 0}.spec-row dt{letter-spacing:.08em;text-transform:uppercase}.spec-row dd{margin:0;font-weight:650;color:var(--plate-ink)}.spec-row dd.is-lime{color:#a6ec62}.spec-row dd.is-red{color:#ff8a82}.delta-pill{display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 8px 0 6px;border-radius:999px;font-size:11px;font-weight:650;white-space:nowrap;color:var(--ink-soft);background:rgba(var(--shade),.06)}.delta-pill.is-up{color:var(--leaf-text);background:var(--lime-soft)}.delta-pill.is-down{color:var(--red-text);background:var(--red-soft)}.delta-pill.is-new{color:var(--blue);background:var(--blue-soft)}.ruler{position:relative;height:26px}.ruler-ticks{position:absolute;inset:0 0 auto 0;height:8px;background:linear-gradient(90deg,var(--tick-strong) 1px,transparent 1px) 0 0 / calc(100% / var(--ruler-major) - .01px) 8px repeat-x,linear-gradient(90deg,var(--tick) 1px,transparent 1px) 0 0 / calc(100% / var(--ruler-major) / var(--ruler-minor) - .01px) 4px repeat-x}.ruler-labels{position:absolute;top:11px;right:0;bottom:0;left:0}.ruler-labels span{position:absolute;translate:-50% 0;font-family:var(--font-mono);font-size:10px;color:var(--ink-faint);white-space:nowrap}.ruler-labels span:first-child{translate:0 0}.ruler-labels span:last-child{translate:-100% 0}.ruler-marker{position:absolute;top:-2px;width:2px;height:12px;margin-left:-1px;border-radius:2px;background:var(--lime);box-shadow:0 0 0 3px var(--lime-soft)}.ruler-marker-label{position:absolute;bottom:calc(100% + 4px);left:50%;translate:-50% 0;padding:1px 6px;border-radius:999px;font-family:var(--font-mono);font-size:10px;font-weight:650;color:#1c2a0c;background:var(--lime)}.hovercard-trigger{display:inline-flex;min-width:0}.hovercard{position:fixed;z-index:150;padding:14px;border-radius:var(--r-md);font-size:12.5px;color:var(--ink);pointer-events:auto}.hc-head{display:flex;align-items:center;gap:11px}.hc-name{font-size:14px;font-weight:680;letter-spacing:-.01em}.hc-sub{font-size:11.5px;color:var(--ink-soft)}.hc-rows{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 14px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.hc-rows dt{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.hc-rows dd{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-primary,.btn-danger{position:relative;isolation:isolate}.ripple-clip{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;border-radius:inherit;pointer-events:none}.ripple-dot{position:absolute;border-radius:999px;background:radial-gradient(circle,rgba(255,255,255,.42),rgba(255,255,255,.12) 55%,transparent 72%);pointer-events:none}.morph-ghost{position:fixed;z-index:calc(var(--layer-overlay) + 1);border-radius:var(--r-xl);border:1px solid var(--glass-line);background:var(--surface-solid);box-shadow:var(--edge),var(--e3);pointer-events:none}@media(prefers-reduced-motion:reduce){.ripple-clip,.morph-ghost{display:none}}.cat-1{--cat-bg: var(--cat-1-bg);--cat-ink: var(--cat-1-ink)}.cat-2{--cat-bg: var(--cat-2-bg);--cat-ink: var(--cat-2-ink)}.cat-3{--cat-bg: var(--cat-3-bg);--cat-ink: var(--cat-3-ink)}.cat-4{--cat-bg: var(--cat-4-bg);--cat-ink: var(--cat-4-ink)}.cat-5{--cat-bg: var(--cat-5-bg);--cat-ink: var(--cat-5-ink)}.trend{position:relative;width:100%;touch-action:pan-y}.trend svg{display:block;overflow:visible}.trend.tone-blue{--trend-ink: var(--blue)}.trend.tone-ink{--trend-ink: var(--ink)}.trend-stop{stop-color:var(--trend-ink)}.trend-grid line{stroke:var(--line-strong);stroke-dasharray:1 5;stroke-linecap:round}.trend-axis text{font-family:var(--font-mono);font-size:10px;fill:var(--ink-faint);font-variant-numeric:tabular-nums}.trend-line{fill:none;stroke:var(--trend-ink);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.trend-base{stroke:var(--line-strong)}.trend-tick{fill:var(--tick)}.trend-stem{stroke:var(--trend-ink);stroke-width:2;stroke-linecap:round}.trend-stem.is-secondary{stroke:var(--red);stroke-width:1.6;stroke-dasharray:3 3}.trend-stem-label{font-family:var(--font-mono);font-size:11px;font-weight:600;fill:var(--ink)}.trend-line-2{fill:none;stroke:var(--red);stroke-width:1.6;stroke-dasharray:4 4;stroke-linecap:round;opacity:.8}.trend-band{opacity:.9}.hatch-line{stroke:var(--hatch-ink);stroke-width:1.6}.trend-nodes circle{fill:var(--surface-solid);stroke:var(--trend-ink);stroke-width:2}.trend-nodes .trend-halo{fill:var(--blue-soft);stroke:none}.trend-cursor{stroke:var(--tick-strong);stroke-dasharray:2 3}.trend-cursor.is-h{stroke:var(--tick)}.trend-dot{fill:var(--surface-solid);stroke:var(--trend-ink);stroke-width:2.4}.trend-tip{position:absolute;left:0;top:0;display:flex;flex-direction:column;gap:4px;min-width:128px;padding:9px 12px;border-radius:var(--r-sm);font-size:12px;color:var(--ink-muted);pointer-events:none}.trend-tip-row{display:flex;align-items:center;gap:7px}.trend-tip-row b{margin-left:auto;font-size:13px;color:var(--ink)}.tip-key{width:8px;height:3px;border-radius:2px;background:var(--trend-ink, var(--blue))}.tip-key.is-secondary{background:var(--red)}.bars{display:flex;flex-direction:column;gap:8px}.bars-plot{flex:1;min-height:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:10px;align-items:end;padding-top:22px;background:linear-gradient(var(--line) 1px,transparent 1px) 0 100% / 100% 25% repeat-y}.bar-slot{position:relative;height:100%;display:flex;align-items:flex-end;justify-content:center}.bar-col{position:relative;width:min(100%,38px);border-radius:10px 10px 4px 4px;overflow:hidden;transform-origin:50% 100%;background:linear-gradient(180deg,rgba(var(--shade),.2),rgba(var(--shade),.12));transition:background .25s ease}:root[data-theme=dark] .bar-col{background:linear-gradient(180deg,#fff3,#ffffff1a)}.bar-slot.is-hover .bar-col{background:linear-gradient(180deg,rgba(var(--shade),.32),rgba(var(--shade),.2))}.bar-col.is-highlight{background:var(--hatch),linear-gradient(180deg,var(--lime),#a6e86a);box-shadow:0 6px 18px #82dd2d52}.bar-failed{position:absolute;inset:0 0 auto 0;background:var(--red);opacity:.78}.bar-readout{position:absolute;top:0;left:50%;translate:-50% 0;font-family:var(--font-mono);font-size:10.5px;font-weight:650;color:var(--ink)}.bars-labels{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:10px}.bars-labels span{text-align:center;font-family:var(--font-mono);font-size:10px;color:var(--ink-faint)}.bars-labels span.is-highlight{color:var(--leaf-text);font-weight:700}.tick-ring{position:relative;flex:none}.tick-ring svg{display:block;overflow:visible}.ring-tick{stroke:var(--tick);stroke-width:.012;stroke-linecap:round}.ring-tick.is-major{stroke-width:.016}.ring-tick.is-on{stroke:var(--lime)}.ring-cap{fill:var(--lime);filter:drop-shadow(0 0 .02px rgba(130,221,45,.8))}.tick-ring-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;pointer-events:none}.tick-ring-value{display:inline-flex;align-items:flex-start;font-size:30px;font-weight:740;letter-spacing:-.04em;line-height:1}.tick-ring-value sup{font-size:12px;margin-left:2px;margin-top:2px;color:var(--ink-soft);font-weight:650}.tick-ring-label{font-family:var(--font-mono);font-size:10px;letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--ink-faint)}.legend-dot{width:9px;height:9px;border-radius:3px;background:var(--cat-bg);box-shadow:inset 0 0 0 1px var(--cat-ink);flex:none}.legend-label{flex:1;min-width:0;color:var(--ink-muted);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.swimlane{--swim-label-w: 132px;--lane-h: 46px;position:relative}.swimlane.is-compact{--swim-label-w: 92px;--lane-h: 30px}.swim-head{display:grid;grid-template-columns:var(--swim-label-w) minmax(0,1fr);align-items:start;margin-bottom:6px}.swim-corner{padding-top:2px}.swim-zoom{align-self:start;justify-self:start;height:22px;padding:0 9px;border:1px solid var(--line-strong);border-radius:999px;background:var(--hover-bg);color:var(--ink-soft);font:inherit;font-size:11px;cursor:pointer;transition:color .2s,border-color .2s}.swim-zoom:hover{color:var(--blue);border-color:var(--blue)}.swim-zoom:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.swim-body{position:relative}.swim-grid{position:absolute;inset:0 0 0 var(--swim-label-w);pointer-events:none;background:linear-gradient(90deg,var(--line) 1px,transparent 1px) 0 0 / calc(100% / var(--swim-cols)) 100% repeat-x;border-right:1px solid var(--line)}.swim-lane{position:relative;display:grid;grid-template-columns:var(--swim-label-w) minmax(0,1fr);align-items:center;height:var(--lane-h)}.swim-lane+.swim-lane{border-top:1px dashed var(--line)}.swim-label{display:flex;flex-direction:column;min-width:0;padding-right:12px}.swim-name{font-size:12.5px;font-weight:640;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.swim-count{font-family:var(--font-mono);font-size:10px;color:var(--ink-faint)}.is-compact .swim-name{font-size:11.5px}.is-compact .swim-count{display:none}.swim-track{position:relative;height:100%}.lane-block{position:absolute;top:50%;height:calc(var(--lane-h) - 16px);translate:0 -50%;min-width:6px;display:inline-flex;align-items:center;justify-content:flex-end;padding:0 6px;border-radius:999px;color:var(--cat-ink);background:var(--cat-bg);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cat-ink) 22%,transparent);transition:box-shadow .2s ease,filter .2s ease}.is-compact .lane-block{height:calc(var(--lane-h) - 12px)}.lane-block:hover,.lane-block:focus-visible{box-shadow:inset 0 0 0 1.5px var(--cat-ink),var(--e1);z-index:2}.lane-block.is-slow{background-image:var(--hatch)}.lane-block.is-failed{box-shadow:inset 0 0 0 1.5px var(--red),0 0 0 3px var(--red-soft)}.lane-block-count{font-family:var(--font-mono);font-size:10px;font-weight:700}.swim-now{position:absolute;top:-8px;bottom:0;width:2px;margin-left:-1px;border-radius:2px;background:var(--lime);box-shadow:0 0 0 3px var(--lime-soft);pointer-events:none;z-index:3}.swim-tip{position:absolute;z-index:5;display:flex;flex-direction:column;gap:3px;min-width:168px;padding:10px 12px;border-radius:var(--r-sm);font-size:12px;translate:-50% calc(-100% - 8px);pointer-events:none}.swim-tip-row{display:flex;justify-content:space-between;gap:12px;color:var(--ink-soft)}.swim-tip-row b{color:var(--ink)}.swim-tip-row b.is-red{color:var(--red-text)}.swim-more{margin:8px 0 0 var(--swim-label-w);font-size:11.5px}@media(max-width:720px){.swimlane,.swimlane.is-compact{--swim-label-w: 76px}}.float-bar{position:fixed;left:50%;bottom:28px;z-index:140;display:flex;align-items:center;gap:8px;max-width:calc(100vw - 32px);padding:8px 8px 8px 18px;border-radius:999px;translate:-50% 0;color:var(--plate-ink);border:1px solid var(--plate-line);background:var(--plate-bg);box-shadow:var(--e3),inset 0 1px #ffffff1f;backdrop-filter:blur(20px) saturate(1.1);-webkit-backdrop-filter:blur(20px) saturate(1.1);font-size:13px;white-space:nowrap}.float-bar-count{color:var(--plate-soft)}.float-bar-count b{color:var(--plate-ink);font-weight:720}.float-bar-sep{width:1px;height:18px;margin:0 6px;background:var(--plate-line)}.float-bar .btn-text{color:#8fb8ff}.float-bar .btn-text:hover:not(:disabled){background:#ffffff14}.float-bar .btn-text.is-danger{color:#ff8a82}.float-bar .btn-text.is-danger:hover:not(:disabled){background:#ff5a5029}.float-bar .btn-secondary{color:var(--plate-ink);background:#ffffff14;border-color:var(--plate-line);box-shadow:none}.float-bar .float-bar-clear{color:var(--plate-soft)}@media(max-width:720px){.float-bar{bottom:16px;padding-left:14px;overflow-x:auto}}.alt-view{min-width:0}.org-canvas{position:relative;height:max(560px,calc(100dvh - 252px));overflow:hidden;border-radius:var(--r-xl);border:1px solid var(--line-strong);background:radial-gradient(60% 50% at 18% 12%,var(--ambient-a),transparent 70%),radial-gradient(50% 45% at 85% 90%,var(--ambient-b),transparent 70%),var(--surface-solid);box-shadow:var(--edge),var(--e1);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.org-canvas.is-panning{cursor:grabbing}.org-dots{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:radial-gradient(rgba(var(--shade),.14) 1px,transparent 1.2px);background-size:22px 22px;-webkit-mask-image:radial-gradient(80% 80% at 50% 50%,#000 40%,transparent 100%);mask-image:radial-gradient(80% 80% at 50% 50%,#000 40%,transparent 100%)}:root[data-theme=dark] .org-dots{background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 1.2px)}.org-layer{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform}.org-links{position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible;pointer-events:none}.org-link{fill:none;stroke:color-mix(in srgb,var(--cat-ink) 45%,transparent);stroke-width:1.6;stroke-linecap:round}.org-node{position:absolute;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:0 16px 0 20px;border-radius:var(--r-md);border:1px solid var(--line-strong);background:var(--surface);box-shadow:var(--edge),var(--e1);cursor:pointer;transition:box-shadow .3s ease,border-color .3s ease,translate .34s var(--ease-premium)}.org-node:hover{box-shadow:var(--edge),var(--e2);translate:0 -2px}.org-node:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.org-node.is-selected{border-color:color-mix(in srgb,var(--blue) 55%,transparent);box-shadow:var(--edge-strong),var(--e3),0 0 0 4px var(--blue-soft);translate:0 -3px}.org-node.is-root{background:var(--plate-bg);border-color:var(--plate-line);color:var(--plate-ink)}.org-node.is-root .org-meta{color:var(--plate-soft)}.org-node.is-off{opacity:.55}.org-strip{position:absolute;left:8px;top:14px;bottom:14px;width:4px;border-radius:4px;background:var(--cat-bg);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cat-ink) 30%,transparent)}.org-node.is-root .org-strip{background:var(--lime);box-shadow:0 0 10px #82dd2d80}.org-name{font-size:14px;font-weight:680;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.org-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11.5px;color:var(--ink-soft)}.org-leader{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.org-count{font-family:var(--font-mono);font-size:10.5px;padding:1px 7px;border-radius:999px;color:var(--cat-ink);background:var(--cat-bg);flex:none}.org-toggle{position:absolute;left:50%;bottom:-11px;translate:-50% 0;min-width:22px;height:22px;padding:0 6px;border-radius:999px;font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--ink-muted);border:1px solid var(--line-strong);background:var(--surface-solid);box-shadow:var(--e1)}.org-toggle:hover{color:var(--blue);border-color:var(--blue)}.org-panel{position:absolute;z-index:4;max-width:min(320px,calc(50% - 32px));cursor:default}.org-panel:empty{display:none}.org-panel.is-tl{left:16px;top:16px}.org-panel.is-tr{right:16px;top:16px}.org-panel.is-bl{left:16px;bottom:16px}.org-panel.is-br{right:16px;bottom:16px}.org-card{display:flex;flex-direction:column;gap:6px;width:280px;max-width:100%;padding:14px 16px;border-radius:var(--r-lg)}.org-card-title{font-size:18px;font-weight:720;letter-spacing:-.02em}.org-card-rows{margin:6px 0 0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 14px;font-size:12.5px}.org-card-rows dt{color:var(--ink-faint)}.org-card-rows dd{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.org-members{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.org-members li{display:grid;grid-template-columns:26px minmax(0,auto) minmax(0,1fr);align-items:center;gap:9px;font-size:12.5px}.org-members li.faint{display:block}.org-actions{flex-direction:row;flex-wrap:wrap;width:auto}.org-controls{position:absolute;left:50%;bottom:16px;z-index:4;display:flex;gap:2px;padding:4px;border-radius:999px;translate:-50% 0;cursor:default}@media(max-width:1080px){.org-panel.is-bl{display:none}}@media(max-width:720px){.org-canvas{height:520px}.org-panel.is-tr{display:none}.org-panel{max-width:calc(100% - 32px)}.org-controls{left:auto;right:16px;translate:0 0;bottom:auto;top:16px}.org-panel.is-tl{right:76px}}@media(prefers-reduced-motion:reduce){.org-layer{will-change:auto}}.board-toolbar{display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap;margin-bottom:14px}.board-toolbar .input-shell{width:240px}.board-toolbar .spacer{flex:1}.board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(248px,1fr);gap:14px;overflow-x:auto;padding-bottom:6px;align-items:stretch}.board-col{display:flex;flex-direction:column;min-height:280px;max-height:max(420px,calc(100dvh - 300px));border-radius:var(--r-xl);border:1px solid var(--line);background:color-mix(in srgb,var(--cat-bg) 34%,var(--surface-solid));transition:border-color .25s ease,box-shadow .25s ease,background .25s ease}.board-col.is-over{border-color:color-mix(in srgb,var(--cat-ink) 50%,transparent);background:color-mix(in srgb,var(--cat-bg) 62%,var(--surface-solid));box-shadow:0 0 0 4px color-mix(in srgb,var(--cat-bg) 70%,transparent)}.board-col-head{display:flex;align-items:center;gap:9px;padding:14px 16px 10px}.board-dot{width:9px;height:9px;border-radius:3px;background:var(--cat-ink);box-shadow:0 0 0 3px var(--cat-bg)}.board-col-title{flex:1;min-width:0;font-size:13.5px;font-weight:680;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.board-col-count{min-width:24px;height:22px;padding:0 7px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--cat-ink);background:var(--cat-bg)}.board-col-body{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:2px 10px 12px}.board-card{position:relative;padding:12px 12px 12px 14px;border-radius:var(--r-md);border:1px solid var(--line-strong);background:var(--surface);box-shadow:var(--edge),var(--e1);transition:box-shadow .25s ease,opacity .2s ease}.board.is-draggable .board-card{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.board-card:hover{box-shadow:var(--edge),var(--e2)}.board-card.is-placeholder{opacity:.32;box-shadow:none;border-style:dashed}.board.is-busy .board-card{pointer-events:none}.board-ghost{position:fixed;left:0;top:0;z-index:calc(var(--layer-overlay) - 1);pointer-events:none;box-shadow:var(--edge-strong),var(--e3)!important;cursor:grabbing}.board-card-menu{position:absolute;top:8px;right:8px}.board-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;color:var(--ink-faint);opacity:0;transition:opacity .2s ease,background .2s ease}.board-card:hover .board-menu-btn,.board-menu-btn:focus-visible,.board-menu-btn[aria-expanded=true]{opacity:1}.board-menu-btn:hover{background:var(--hover-bg);color:var(--ink)}.board-menu{position:absolute;right:0;top:28px;z-index:20;min-width:150px;padding:8px 6px 6px;border-radius:var(--r-sm);display:flex;flex-direction:column;gap:2px}.board-menu .eyebrow{padding:0 8px 4px}.board-menu .menu-item{display:flex;align-items:center;height:32px;padding:0 10px;border-radius:var(--r-xs);font-size:12.5px;text-align:left}.board-menu .menu-item:hover{background:var(--hover-bg)}.board-empty{margin:12px 0;text-align:center;font-size:12px;color:var(--ink-faint)}.ucard-head{display:flex;align-items:center;gap:10px;padding-right:22px}.ucard-name{font-size:13.5px;font-weight:680;line-height:1.25}.ucard-sub{font-size:11.5px;color:var(--ink-soft)}.ucard-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.ucard-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;padding-top:9px;border-top:1px dashed var(--line-strong)}.ucard-time{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-faint)}.ucard-state{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:640}.ucard-state:before{content:"";width:6px;height:6px;border-radius:999px;background:var(--lime);box-shadow:0 0 0 3px var(--lime-soft)}.ucard-state.is-off{color:var(--ink-faint)}.ucard-state.is-off:before{background:var(--ink-faint);box-shadow:none}.matrix{--mx-label-w: 280px;--mx-col-w: 112px;border-radius:var(--r-xl);border:1px solid var(--line-strong);background:var(--surface);box-shadow:var(--edge),var(--e1);overflow:hidden}.mx-scroll{max-height:max(480px,calc(100dvh - 250px));overflow:auto;overscroll-behavior:contain}.mx-grid{min-width:calc(var(--mx-label-w) + var(--mx-cols) * var(--mx-col-w))}.mx-head,.mx-row{display:grid;grid-template-columns:var(--mx-label-w) repeat(var(--mx-cols),minmax(var(--mx-col-w),1fr))}.mx-head{position:sticky;top:0;z-index:3;border-bottom:1px solid var(--line-strong);background:var(--surface-solid)}.mx-corner{position:sticky;left:0;z-index:1;display:flex;align-items:flex-end;padding:14px 16px;background:var(--surface-solid);border-right:1px solid var(--line-strong)}.mx-role{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:2px;padding:14px 8px 12px;text-align:center;transition:background .2s ease}.mx-role.is-hover{background:var(--blue-soft)}.mx-role-name{font-size:12.5px;font-weight:680;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.mx-role-meta{font-family:var(--font-mono);font-size:10px;color:var(--ink-faint)}.mx-role.is-locked .mx-role-name{color:var(--ink-muted)}.mx-role.is-off{opacity:.5}.mx-row{min-height:40px;border-bottom:1px solid var(--line);transition:background .15s ease}.mx-row:last-child{border-bottom:0}.mx-row.is-hover{background:#236de90b}.mx-row.is-dir{background:rgba(var(--shade),.025)}.mx-label{position:sticky;left:0;z-index:1;display:flex;align-items:center;gap:6px;min-width:0;padding-right:12px;background:var(--surface-solid);border-right:1px solid var(--line-strong);font-size:13px}.mx-row.is-hover .mx-label{background:color-mix(in srgb,var(--blue) 5%,var(--surface-solid))}.mx-row.is-dir .mx-name{font-weight:680}.mx-row.is-btn .mx-name{color:var(--ink-muted);font-size:12.5px}.mx-ico{color:var(--ink-soft);flex:none}.mx-name{flex:1;min-width:0}.mx-type{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--ink-faint);flex:none}.mx-cell{display:flex;align-items:center;justify-content:center;min-height:40px;transition:background .15s ease}.mx-cell.is-col-hover{background:#236de90b}.mx-row.is-hover .mx-cell.is-col-hover{background:var(--blue-soft)}.mx-cell:disabled{cursor:default}.mx-mark{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:7px;color:#1c2a0c;border:1.5px solid rgba(var(--shade),.2);background:var(--input-bg);transition:background .2s ease,border-color .2s ease,transform .3s var(--ease-premium),box-shadow .2s ease}:root[data-theme=dark] .mx-mark{border-color:#ffffff2e}.mx-row.is-btn .mx-mark{width:16px;height:16px;border-radius:6px}.mx-cell.is-on .mx-mark{border-color:transparent;background:var(--lime);box-shadow:0 2px 8px #82dd2d59}.mx-cell.is-partial .mx-mark{border-color:color-mix(in srgb,var(--lime) 70%,transparent);background:linear-gradient(135deg,var(--lime) 0 50%,transparent 50%)}.mx-cell:not(:disabled):hover .mx-mark{transform:scale(1.12);border-color:var(--lime)}.mx-cell.is-locked .mx-mark{opacity:.55}.mx-cell:focus-visible{outline:2px solid var(--focus);outline-offset:-3px;border-radius:8px}@media(max-width:720px){.matrix{--mx-label-w: 180px;--mx-col-w: 88px}.mx-type{display:none}}.rg{position:relative;overflow:hidden;border-radius:var(--r-xl);border:1px solid var(--line-strong);background:radial-gradient(55% 50% at 50% 46%,var(--ambient-b),transparent 72%),radial-gradient(40% 40% at 12% 90%,var(--ambient-a),transparent 70%),var(--surface-solid);box-shadow:var(--edge),var(--e1);outline:none}.rg.is-pannable{cursor:grab;touch-action:none}.rg-stage-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.rg-layer{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:0 0}.rg-links{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.rg-link{color:var(--thread-active)}.rg-link.cat-1,.rg-link.cat-2,.rg-link.cat-3,.rg-link.cat-4,.rg-link.cat-5{color:color-mix(in srgb,var(--cat-ink) 75%,transparent)}.rg-link.is-danger{color:var(--red-text)}.rg-link.is-lime{color:var(--leaf-text)}.rg-path{fill:none;stroke:var(--thread);stroke-width:1.2;stroke-linecap:round;transition:stroke .3s,stroke-width .3s}.rg-link.is-dashed .rg-path{stroke-dasharray:3 4}.rg-link.is-lit .rg-path,.rg-link.is-active .rg-path{stroke:currentColor;stroke-width:1.6}.rg-link.is-danger .rg-path{stroke:color-mix(in srgb,var(--red-text) 55%,transparent)}.rg-link.is-dim .rg-path{stroke-opacity:.35}.rg-pulse{fill:currentColor;opacity:0;stroke:var(--pulse-halo);stroke-width:6;paint-order:stroke}.rg-pulse.is-back{fill:var(--leaf-text);stroke:#82dd2d33}.rg-node{position:absolute;left:0;top:0;width:0;height:0;padding:0;border:0;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer;will-change:transform,opacity;opacity:0;z-index:1}.rg-node.is-static{cursor:default}.rg-node.is-active,.rg-node:hover,.rg-node:focus-visible{z-index:3}.rg-node:focus-visible{outline:none}.rg-node:focus-visible .rg-body{outline:2px solid var(--focus);outline-offset:3px}.rg-body{position:absolute;left:0;top:0;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;translate:-50% -50%;transition:opacity .3s,box-shadow .3s,border-color .3s,background .3s,translate .3s}.rg-node.align-left .rg-body{translate:-7px -50%}.rg-node.align-right .rg-body{translate:calc(-100% + 7px) -50%;flex-direction:row-reverse;text-align:right}.rg-node.is-dim .rg-body{opacity:.26}.rg-dot{flex:none;display:grid;place-items:center;width:14px;height:14px;border-radius:50%;background:var(--node-bg);border:1.5px solid var(--cat-ink, var(--blue));box-shadow:0 0 0 4px color-mix(in srgb,var(--cat-ink, var(--blue)) 12%,transparent);color:var(--cat-ink, var(--blue))}.rg-text{display:flex;flex-direction:column;min-width:0;line-height:1.25}.rg-label{font-size:12.5px;font-weight:620;letter-spacing:-.005em;max-width:220px;overflow:hidden;text-overflow:ellipsis}.rg-sub{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-faint);max-width:220px;overflow:hidden;text-overflow:ellipsis}.rg-badge{font-family:var(--font-mono);font-size:10.5px;padding:1px 7px;border-radius:999px;color:var(--cat-ink, var(--ink-soft));background:var(--cat-bg, var(--hover-bg))}.rg-node.is-item .rg-body{padding:5px 11px 5px 6px;border-radius:999px;background:var(--node-bg);border:1px solid var(--line-strong);box-shadow:var(--edge),var(--e1)}.rg-node.is-item:hover .rg-body,.rg-node.is-item.is-active .rg-body{border-color:color-mix(in srgb,var(--cat-ink, var(--blue)) 55%,transparent);box-shadow:var(--edge),var(--e2)}.rg-node.is-item.is-active .rg-dot{background:var(--cat-ink, var(--blue))}.rg-node.is-dot .rg-dot{width:10px;height:10px;box-shadow:0 0 0 3px color-mix(in srgb,var(--cat-ink, var(--blue)) 12%,transparent)}.rg-node.is-dot .rg-body{gap:6px}.rg-node.is-dot .rg-text{position:absolute;left:16px;top:50%;translate:0 -50%;padding:3px 8px;border-radius:var(--r-xs);background:var(--float-bg);box-shadow:var(--float-inset),var(--e2);opacity:0;pointer-events:none;transition:opacity .2s;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.rg-node.is-dot:hover .rg-text,.rg-node.is-dot:focus-visible .rg-text,.rg-node.is-dot.is-active .rg-text{opacity:1}.rg-node.is-dot.is-active .rg-dot{background:var(--cat-ink, var(--blue))}.rg-node.is-hub .rg-body{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"dot count" "text text";column-gap:10px;row-gap:4px;min-width:150px;padding:12px 16px 13px;border-radius:var(--r-lg);background:var(--pill-bg);border:1px solid var(--glass-line);box-shadow:var(--pill-inset),var(--edge),var(--e2);-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2)}.rg-node.is-hub .rg-dot{grid-area:dot;width:26px;height:26px;border-radius:var(--r-xs);background:var(--cat-bg, var(--blue-soft));border:0;box-shadow:none}.rg-node.is-hub .rg-count{grid-area:count;justify-self:end;font-family:var(--font-mono);font-size:22px;font-weight:600;letter-spacing:-.03em;color:var(--ink)}.rg-node.is-hub .rg-text{grid-area:text}.rg-node.is-hub .rg-label{font-size:13.5px;font-weight:700}.rg-node.is-hub:hover .rg-body,.rg-node.is-hub.is-active .rg-body{box-shadow:var(--pill-inset),var(--edge),var(--e3);border-color:color-mix(in srgb,var(--cat-ink, var(--blue)) 40%,var(--glass-line))}.rg-node.is-core .rg-body{flex-direction:column;justify-content:center;gap:6px;width:112px;height:112px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#2a3136,var(--plate-bg) 70%);color:var(--plate-ink);text-align:center;box-shadow:0 0 0 1px var(--plate-line),0 18px 40px rgba(var(--shade),.22)}.rg-node.is-core .rg-body:before{content:"";position:absolute;top:-18px;right:-18px;bottom:-18px;left:-18px;border-radius:50%;z-index:-1;background:radial-gradient(circle closest-side,var(--pulse-halo),transparent);animation:rg-breathe 5.5s ease-in-out infinite}.rg-node.is-core .rg-dot{width:auto;height:auto;border:0;box-shadow:none;background:none;color:var(--lime)}.rg-node.is-core .rg-text{align-items:center}.rg-node.is-core .rg-label{font-size:13px;font-weight:700}.rg-node.is-core .rg-sub{color:var(--plate-soft)}@keyframes rg-breathe{50%{transform:scale(1.12);opacity:.6}}.rg-node.tone-danger{--cat-ink: var(--red-text);--cat-bg: var(--red-soft)}.rg-node.tone-lime{--cat-ink: var(--leaf-text);--cat-bg: var(--lime-soft)}.rg-node.tone-accent{--cat-ink: var(--blue);--cat-bg: var(--blue-soft)}.rg-node.tone-off .rg-body{opacity:.5}.rg-node.tone-off .rg-label{text-decoration:line-through;text-decoration-color:var(--ink-faint)}.rg-corner{position:absolute;z-index:5;max-width:min(340px,calc(50% - 32px));cursor:default}.rg-corner:empty{display:none}.rg-corner.is-tl{left:16px;top:16px}.rg-corner.is-tr{right:16px;top:16px}.rg-corner.is-bl{left:16px;bottom:16px}.rg-corner.is-br{right:16px;bottom:16px}@media(prefers-reduced-motion:reduce){.rg-node.is-core .rg-body:before{animation:none}}.rg.is-stage{background:radial-gradient(circle,rgba(var(--shade),.07) 1px,transparent 1.2px) 0 0 / 22px 22px,radial-gradient(55% 50% at 50% 46%,var(--ambient-b),transparent 72%),radial-gradient(40% 40% at 10% 92%,var(--ambient-a),transparent 70%),var(--surface-solid)}:root[data-theme=dark] .rg.is-stage{background:radial-gradient(circle,rgba(255,255,255,.06) 1px,transparent 1.2px) 0 0 / 22px 22px,radial-gradient(55% 50% at 50% 46%,var(--ambient-b),transparent 72%),var(--surface-solid)}.rg.is-stage .rg-node.is-core:before,.rg.is-stage .rg-node.is-hub:before{content:"";position:absolute;border-radius:50%;width:var(--size, 96px);height:var(--size, 96px);left:calc(var(--size, 96px) / -2);top:calc(var(--size, 96px) / -2)}.rg.is-stage .rg-node.is-core .rg-body{width:auto;height:auto;padding:0;gap:1px;background:none;box-shadow:none;border-radius:0;color:var(--ink);translate:-50% calc(var(--size, 96px) / 2 + 26px)}.rg.is-stage .rg-node.is-core .rg-body:before{display:none}.rg.is-stage .rg-node.is-core .rg-dot{display:none}.rg.is-stage .rg-node.is-core .rg-label{font-size:14px;font-weight:700}.rg.is-stage .rg-node.is-core .rg-sub{color:var(--ink-faint)}.rg.is-stage .rg-node.is-hub .rg-body{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:var(--size, 104px);height:var(--size, 104px);min-width:0;padding:0;translate:-50% -50%;border:0;border-radius:50%;background:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.rg.is-stage .rg-node.is-hub .rg-dot{width:auto;height:auto;background:none;color:var(--cat-ink, var(--blue))}.rg.is-stage .rg-node.is-hub .rg-count{font-size:calc(var(--size, 104px) * .2);line-height:1;color:var(--ink)}.rg.is-stage .rg-node.is-hub .rg-text{position:absolute;top:calc(100% + 10px);left:50%;translate:-50% 0;align-items:center;text-align:center;padding:2px 8px;border-radius:var(--r-xs);background:color-mix(in srgb,var(--surface-solid) 86%,transparent)}.rg.is-stage .rg-node.is-hub .rg-label{font-size:13.5px;font-weight:700}.rg.is-stage .rg-node.is-hub .rg-sub{font-family:inherit;font-size:11.5px;max-width:180px}.rg.is-stage .rg-node.is-hub:hover .rg-body,.rg.is-stage .rg-node.is-hub.is-active .rg-body{box-shadow:none;border-color:transparent}.rg.is-stage .rg-node.is-hub:hover .rg-label,.rg.is-stage .rg-node.is-hub.is-active .rg-label{color:var(--cat-ink, var(--blue))}.rg.is-stage .rg-node.is-hub:focus-visible .rg-body{outline-offset:6px;border-radius:50%}.rg.is-stage .rg-node.is-dot .rg-dot{width:18px;height:18px;background:none;border:0;box-shadow:none}.rg.is-stage .rg-node.is-slab .rg-body{flex-direction:column;gap:2px;width:var(--size, 140px);padding:12px 10px;border-radius:var(--r-md);text-align:center;white-space:normal;background:var(--pill-bg);border:1px solid var(--glass-line);box-shadow:var(--pill-inset),var(--edge),var(--e2);-webkit-backdrop-filter:blur(14px) saturate(1.15);backdrop-filter:blur(14px) saturate(1.15)}.rg.is-stage .rg-node.is-slab .rg-body:before{content:"";position:absolute;left:16px;right:16px;top:-1px;height:3px;border-radius:0 0 3px 3px;background:var(--cat-ink)}.rg.is-stage .rg-node.is-slab .rg-dot{display:none}.rg.is-stage .rg-node.is-slab .rg-text{align-items:center}.rg-rank{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--cat-ink, var(--ink-faint))}.rg.is-stage .rg-node.is-slab .rg-count{font-family:var(--font-mono);font-size:26px;font-weight:600;letter-spacing:-.03em;line-height:1.1}.rg.is-stage .rg-node.is-slab .rg-count:after{content:" 人";font-size:11px;font-weight:500;color:var(--ink-faint);letter-spacing:0}.rg.is-stage .rg-node.is-slab .rg-label{font-size:13.5px;font-weight:680;max-width:100%}.rg.is-stage .rg-node.is-slab .rg-sub{max-width:100%}.rg.is-stage .rg-node.is-slab:hover .rg-body,.rg.is-stage .rg-node.is-slab.is-active .rg-body{border-color:color-mix(in srgb,var(--cat-ink) 40%,var(--glass-line));box-shadow:var(--pill-inset),var(--edge),0 0 0 4px color-mix(in srgb,var(--cat-ink) 10%,transparent),var(--e3)}.rg.is-stage .rg-node.is-slab.is-dim .rg-body{opacity:.6}.rg.is-stage .rg-node.is-slab.tone-off .rg-label{text-decoration:line-through}.rg-corner.is-tr{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.rg-tools{display:inline-flex;gap:2px;padding:3px;border-radius:999px;border:1px solid var(--glass-line);background:var(--float-bg);box-shadow:var(--float-inset),var(--e1);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.rg-tools button{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 10px;border:0;border-radius:999px;background:none;color:var(--ink-soft);font:inherit;font-size:11.5px;cursor:pointer;transition:color .2s,background .2s}.rg-tools button:hover{color:var(--ink);background:var(--hover-bg)}.rg-tools button[aria-pressed=true]{color:var(--ink);background:var(--press-bg)}.rg-tools button:focus-visible{outline:2px solid var(--focus);outline-offset:1px}@media(prefers-reduced-motion:reduce){.rg-tools{display:none}}.insight{display:flex;flex-direction:column;width:min(360px,100%);max-height:100%;border-radius:var(--r-xl);overflow:hidden}.insight-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 12px 0 16px}.insight-kind{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--ink-soft)}.insight-kind-icon{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;color:var(--cat-ink, var(--blue));background:var(--cat-bg, var(--blue-soft))}.insight-body{display:flex;flex-direction:column;gap:14px;padding:10px 16px 16px;overflow-y:auto;overscroll-behavior:contain}.insight-title h3{margin:0;font-size:20px;font-weight:720;letter-spacing:-.02em}.insight-subtitle{margin:2px 0 0;font-family:var(--font-mono);font-size:11.5px;color:var(--ink-faint)}.insight-status{margin:8px 0 0;font-size:12.5px;color:var(--ink-muted);line-height:1.55}.insight-metric{padding:12px 14px;border-radius:var(--r-md);background:linear-gradient(120deg,color-mix(in srgb,var(--cat-bg, var(--blue-soft)) 90%,transparent),transparent 85%),var(--surface-solid);border:1px solid var(--line)}.insight-metric-label{font-size:11.5px;color:var(--ink-soft)}.insight-metric-row{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.insight-bars{display:flex;align-items:flex-end;gap:3px;height:34px}.insight-bars i{width:6px;height:calc(var(--h) * 100%);border-radius:2px 2px 0 0;background:color-mix(in srgb,var(--cat-ink, var(--blue)) 55%,transparent);transform-origin:bottom;animation:insight-grow .7s var(--ease-premium) var(--d) both}@keyframes insight-grow{0%{transform:scaleY(0)}}.insight-tiles{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px}.insight-tiles div{padding:9px 11px;border-radius:var(--r-sm);background:var(--hover-bg)}.insight-tiles dt{font-size:11px;color:var(--ink-faint)}.insight-tiles dd{margin:2px 0 0;font-family:var(--font-mono);font-size:17px;font-weight:600;letter-spacing:-.02em}.insight-tiles small{margin-left:2px;font-size:10px;color:var(--ink-faint)}.insight-cards{display:flex;flex-direction:column;gap:7px}.insight-card{position:relative;padding:9px 12px 10px 15px;border-radius:var(--r-sm);background:var(--hover-bg)}.insight-card:before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:3px;background:var(--blue)}.insight-card.tone-warn:before{background:#e3a83b}.insight-card.tone-ok:before{background:var(--lime)}.insight-card.tone-danger:before{background:var(--red)}.insight-card h4{margin:0;font-size:12.5px;font-weight:680}.insight-card p{margin:3px 0 0;font-size:12px;line-height:1.55;color:var(--ink-muted)}.insight-group h4{display:flex;align-items:center;gap:6px;margin:0 0 8px;font-size:12px;font-weight:650;color:var(--ink-muted)}.insight-group h4 b{margin-left:auto;font-family:var(--font-mono);font-size:10.5px;font-weight:500;color:var(--ink-faint)}.insight-chips{display:flex;flex-wrap:wrap;gap:6px}.insight-chip{display:inline-flex;align-items:baseline;gap:6px;padding:4px 10px;border-radius:999px;border:1px solid var(--line-strong);background:var(--node-bg);color:var(--ink);font-size:12px;cursor:pointer;transition:border-color .2s,background .2s}.insight-chip:hover{border-color:var(--cat-ink, var(--blue));background:var(--cat-bg, var(--blue-soft))}.insight-chip small{font-family:var(--font-mono);font-size:10px;color:var(--ink-faint)}.insight-chip.tone-danger{border-color:color-mix(in srgb,var(--red-text) 40%,transparent);color:var(--red-text)}.insight-chip.tone-off{opacity:.55}.insight-chip.is-more{cursor:default;color:var(--ink-faint)}.insight-chip:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.ask-dock{display:flex;flex-direction:column;gap:8px;width:min(440px,calc(100vw - 64px))}.ask-panel{padding:8px;border-radius:var(--r-lg);display:flex;flex-direction:column;gap:8px}.ask-form{display:flex;align-items:center;gap:8px;height:40px;padding:0 6px 0 12px;border-radius:var(--r-md);background:var(--input-bg);border:1px solid var(--line-strong)}.ask-form:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}.ask-form-icon{color:var(--ink-faint);flex:none}.ask-form input{flex:1;min-width:0;border:0;outline:none;background:none;color:var(--ink);font:inherit;font-size:13px}.ask-send{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;border:0;background:var(--blue);color:#fff;cursor:pointer;box-shadow:var(--e-accent)}.ask-send:disabled{opacity:.4;cursor:default;box-shadow:none}.ask-presets{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}.ask-presets::-webkit-scrollbar{display:none}.ask-presets button{flex:none;padding:4px 10px;border-radius:999px;border:1px solid var(--line);background:var(--hover-bg);color:var(--ink-muted);font-size:11.5px;cursor:pointer;transition:color .2s,border-color .2s}.ask-presets button:hover{color:var(--blue);border-color:var(--blue)}.ask-dock.is-compact .ask-presets{display:none}.ask-results{max-height:min(46vh,420px);overflow-y:auto;overscroll-behavior:contain;padding:10px;border-radius:var(--r-lg);display:flex;flex-direction:column;gap:8px}.ask-results-head{display:flex;align-items:center;gap:8px;padding:0 0 2px 4px}.ask-results-head span{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:650;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ask-results-head small{margin-left:auto;font-family:var(--font-mono);font-size:10px;color:var(--ink-faint);white-space:nowrap}.ask-card{position:relative;padding:10px 12px 11px 16px;border-radius:var(--r-md);background:var(--surface-solid);border:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.ask-card:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:3px;background:var(--blue)}.ask-card.tone-warn:before{background:#e3a83b}.ask-card.tone-ok:before{background:var(--lime)}.ask-card.tone-danger:before{background:var(--red)}.ask-card h4{margin:0;font-size:13px;font-weight:680}.ask-card p{margin:0;font-size:12px;line-height:1.55;color:var(--ink-muted)}.ask-send .spin{animation:spin .9s linear infinite}.trace-graph{height:max(600px,calc(100dvh - 236px))}.trace-crumbs{display:flex;align-items:center;gap:6px;padding:4px 12px 4px 4px;border-radius:999px;font-size:12.5px}.trace-crumbs:not(:has(.icon-btn)){padding-left:6px}.trace-crumb{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:0;border-radius:999px;background:none;color:var(--ink-muted);font:inherit;cursor:pointer}button.trace-crumb:hover{color:var(--blue)}.trace-crumb.is-current{color:var(--ink);font-weight:650;cursor:default}.trace-sep{color:var(--ink-faint)}.trace-legend{margin:0;display:grid;grid-template-columns:repeat(3,auto);gap:8px 18px;padding:12px 16px;border-radius:var(--r-lg);font-size:12px}.trace-legend dt{display:flex;align-items:center;gap:6px;color:var(--ink-soft);font-size:11px}.trace-legend dt i{width:8px;height:8px;border-radius:50%;background:var(--cat-ink)}.trace-legend dd{margin:2px 0 0;font-family:var(--font-mono);font-size:18px;font-weight:600;letter-spacing:-.02em}.trace-legend .is-warn dd{color:#c98a16}.trace-panel{position:absolute;z-index:6;right:16px;top:16px;bottom:16px;display:flex;width:360px;max-width:calc(100% - 32px);pointer-events:none}.trace-panel>*{pointer-events:auto}.trace-dock{position:absolute;z-index:5;bottom:16px}.trace-dock.is-center{left:50%;translate:-50% 0}.trace-dock.is-side{left:16px}.trace-hint{position:absolute;left:50%;top:22px;translate:-50% 0;margin:0;font-size:12px;pointer-events:none;white-space:nowrap}@media(max-width:899px){.trace-panel{top:auto;height:46%;left:16px;width:auto}.trace-legend,.trace-hint{display:none}.trace-graph:has(.trace-panel) .trace-dock{display:none}}.heat{--cell-gap: 4px;display:flex;flex-direction:column;gap:var(--cell-gap);overflow-x:auto;padding-bottom:2px}.heat.is-loading{opacity:.5}.heat-hours,.heat-row{display:grid;grid-template-columns:40px repeat(24,minmax(18px,1fr));gap:var(--cell-gap);min-width:560px}.heat-hours span{grid-row:1;font-family:var(--font-mono);font-size:10px;color:var(--ink-faint);transition:color .2s}.heat-hours span:first-child{grid-column:2}.heat-hours span.is-on{color:var(--ink)}.heat-day{font-size:11.5px;color:var(--ink-soft);align-self:center;transition:color .2s}.heat-day.is-on{color:var(--ink);font-weight:650}.heat-cell{position:relative;aspect-ratio:1.25;min-height:18px;padding:0;border:0;border-radius:5px;cursor:default;background:var(--hover-bg);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .2s,filter .2s}.heat-cell.lv-1{background:color-mix(in srgb,var(--lime) 18%,var(--surface-solid))}.heat-cell.lv-2{background:color-mix(in srgb,var(--lime) 38%,var(--surface-solid))}.heat-cell.lv-3{background:color-mix(in srgb,var(--lime) 62%,var(--surface-solid))}.heat-cell.lv-4{background:color-mix(in srgb,var(--leaf-text) 88%,var(--surface-solid));box-shadow:0 0 0 1px color-mix(in srgb,var(--leaf-text) 40%,transparent),0 4px 10px #82dd2d40}.heat-cell.is-risky:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--red-text) 70%,transparent) 0 1.5px,transparent 1.5px 4.5px);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--red-text) 55%,transparent)}.heat:has(.is-hover) .heat-cell:not(.is-cross){filter:saturate(.4) opacity(.55)}.heat-cell.is-hover{box-shadow:0 0 0 2px var(--blue),0 6px 14px rgba(var(--shade),.18);z-index:1}.heat-cell:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.heat-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:6px;min-width:0}.heat-readout{font-size:12.5px;color:var(--ink-muted);font-variant-numeric:tabular-nums}.heat-legend{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--ink-faint)}.heat-legend i{position:relative;width:12px;height:12px;border-radius:3px;background:var(--hover-bg)}.heat-legend i.lv-1{background:color-mix(in srgb,var(--lime) 18%,var(--surface-solid))}.heat-legend i.lv-2{background:color-mix(in srgb,var(--lime) 38%,var(--surface-solid))}.heat-legend i.lv-3{background:color-mix(in srgb,var(--lime) 62%,var(--surface-solid))}.heat-legend i.lv-4{background:color-mix(in srgb,var(--leaf-text) 88%,var(--surface-solid));margin-right:4px}.heat-legend i.is-risky{margin-left:10px;background:repeating-linear-gradient(135deg,var(--red-text) 0 1.5px,transparent 1.5px 4px);box-shadow:inset 0 0 0 1px var(--red-text)}.alert-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.alert-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:14px 16px 14px 18px;border-radius:var(--r-lg);border:1px solid color-mix(in srgb,var(--red-text) 22%,var(--line));background:linear-gradient(140deg,var(--red-soft),transparent 70%),var(--surface-solid);text-align:left;color:var(--ink);font:inherit;cursor:pointer;box-shadow:var(--edge),var(--e1);transition:box-shadow .25s,border-color .25s}.alert-card:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:3px;background:var(--red)}.alert-card:hover{border-color:color-mix(in srgb,var(--red-text) 45%,var(--line));box-shadow:var(--edge),var(--e2)}.alert-card:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.alert-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.alert-kind{font-family:var(--font-mono);font-size:10.5px;letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--red-text)}.alert-key{font-family:var(--font-mono);font-size:15px;font-weight:650;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alert-figure{display:flex;align-items:baseline;gap:6px}.alert-figure b{font-family:var(--font-mono);font-size:28px;font-weight:600;letter-spacing:-.03em;color:var(--red-text)}.alert-figure span{font-size:12px;color:var(--ink-soft)}.alert-meta{font-size:11.5px;color:var(--ink-faint);font-variant-numeric:tabular-nums}.alert-calm{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:var(--r-lg);background:var(--lime-soft);color:var(--leaf-text);font-size:13px}.band-tools{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap}.settings{display:grid;grid-template-columns:232px minmax(0,1fr);gap:16px;align-items:start}.settings-nav{position:sticky;top:16px;display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:var(--r-xl)}.settings-nav nav{display:flex;flex-direction:column;gap:2px}.settings-nav-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border:0;border-radius:var(--r-sm);background:none;color:var(--ink-muted);font:inherit;font-size:13px;text-align:left;cursor:pointer}.settings-nav-item:hover{background:var(--hover-bg);color:var(--ink)}.settings-nav-item b{margin-left:auto;font-family:var(--font-mono);font-size:11px;font-weight:500;color:var(--ink-faint)}.settings-nav-note{display:flex;align-items:center;gap:6px;margin:4px 2px 0;font-size:11.5px}.settings-body{display:flex;flex-direction:column;gap:16px;padding-bottom:72px}.settings-group{padding:18px 20px 6px;border-radius:var(--r-xl);scroll-margin-top:16px}.settings-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,340px);gap:6px 24px;align-items:center;padding:14px 0;border-top:1px solid var(--line);transition:background .3s}.settings-group .section-mark+.settings-row{border-top:0}.settings-row.is-dirty:before{content:"";position:absolute;left:-12px;top:18px;width:6px;height:6px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px var(--blue-soft)}.settings-row.is-failed:before{background:var(--red);box-shadow:0 0 0 4px var(--red-soft)}.settings-label{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0}.settings-title{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:650}.settings-remark{font-size:12px;color:var(--ink-soft);line-height:1.5}.settings-control{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0}.settings-control>.input-shell{flex:1}.settings-number{max-width:140px}.settings-readonly{padding:6px 10px;border-radius:var(--r-xs);background:var(--hover-bg);font-size:12.5px;color:var(--ink-muted);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-row.is-locked .settings-title{color:var(--ink-muted)}.settings-was{grid-column:2;display:flex;align-items:center;justify-content:flex-end;gap:10px;font-size:11.5px;color:var(--ink-faint)}.settings-was s{color:var(--ink-soft)}.settings-undo{border:0;background:none;padding:0;color:var(--blue);font:inherit;cursor:pointer}.settings-bar{flex-wrap:wrap}.settings-diff{flex-basis:100%;display:flex;flex-direction:column;gap:6px;max-height:220px;overflow-y:auto;padding:4px 4px 10px;margin-bottom:6px;border-bottom:1px solid var(--plate-line)}.settings-diff-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;font-size:12px;color:var(--plate-soft)}.settings-diff-row.is-failed .settings-diff-name{color:#ff8a80}.settings-diff-name{color:var(--plate-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-diff-from{text-decoration:line-through;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-diff-to{color:#b9f27a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:900px){.settings{grid-template-columns:1fr}.settings-nav{position:static}.settings-row{grid-template-columns:1fr}.settings-control{justify-content:flex-start}.settings-was{grid-column:1;justify-content:flex-start}}.settings-bar:has(.settings-diff){border-radius:var(--r-xl);white-space:normal;width:min(640px,calc(100vw - 32px));padding:12px 10px 8px 18px}.starmap{height:max(620px,calc(100dvh - 236px))}.starmap .nav-preview{position:absolute;z-index:5;left:16px;top:68px;max-height:calc(100% - 84px);width:210px;overflow-y:auto;padding:10px 8px;border-radius:var(--r-lg)}.nav-preview-title{display:block;padding:0 8px 8px;font-size:11.5px;font-weight:650;color:var(--ink-soft)}.nav-preview ul{list-style:none;margin:0;padding:0}.nav-preview ul ul{margin:1px 0 4px 16px;padding-left:8px;border-left:1px solid var(--line)}.nav-preview-item{display:flex;align-items:center;gap:7px;width:100%;padding:5px 8px;border:0;border-radius:var(--r-xs);background:none;color:var(--ink-muted);font:inherit;font-size:12px;text-align:left;cursor:pointer}.nav-preview-item.is-sub{font-size:11.5px;padding:4px 8px}.nav-preview-item:hover{background:var(--hover-bg);color:var(--ink)}.nav-preview-item.is-on{background:var(--blue-soft);color:var(--blue);font-weight:600}.nav-preview-flag{margin-left:auto;color:var(--ink-faint)}.nav-preview li.is-hidden>.nav-preview-item{opacity:.5;font-style:italic}.nav-preview li.is-off>.nav-preview-item{text-decoration:line-through;opacity:.5}@media(max-width:1099px){.starmap .nav-preview{display:none}}.stage-chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px;border-radius:999px;border:1px solid var(--glass-line);background:var(--float-bg);box-shadow:var(--float-inset),var(--e1);color:var(--ink-soft);font:inherit;font-size:11.5px;cursor:pointer;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.stage-chip:hover,.stage-chip[aria-pressed=true]{color:var(--ink)}.stage-chip[aria-pressed=true]{color:var(--blue)}.stage-chip:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.rg.is-stage .trace-hint{color:var(--ink-soft)}.rg.is-stage .trace-crumb.cat-2,.rg.is-stage .trace-crumb.cat-3,.rg.is-stage .trace-crumb.cat-5{color:var(--cat-ink)}.legend-toggle{margin:-4px -6px;padding:4px 6px;border-radius:var(--r-xs);cursor:pointer}.legend-toggle:hover{background:var(--hover-bg)}.legend-toggle.is-on{background:#e3a83b24;box-shadow:inset 0 0 0 1px #e3a83b73}.rg-node.is-item .rg-dot:has(svg){width:22px;height:22px}.legend-toggle dt button{padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer;text-decoration:underline dotted;text-underline-offset:3px}.pipe-steps{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border-radius:var(--r-md);margin-bottom:18px}.pipe-thumb{position:absolute;left:0;top:4px;bottom:4px;border-radius:var(--r-sm);pointer-events:none}.pipe-step{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:8px;height:38px;border:0;border-radius:var(--r-sm);background:none;color:var(--ink-soft);font:inherit;font-size:13px;cursor:pointer;transition:color .25s}.pipe-step.is-on{color:var(--ink);font-weight:650}.pipe-step-n{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;font-family:var(--font-mono);font-size:11px;background:var(--hover-bg);color:var(--ink-soft)}.pipe-step.is-on .pipe-step-n{background:var(--blue);color:#fff}.pipe-step.is-done .pipe-step-n{background:var(--lime-soft);color:var(--leaf-text)}.pipe-stage{min-height:420px}.pipe-info{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}.pipe-readouts{margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.pipe-readouts div{padding:12px 14px;border-radius:var(--r-md);background:var(--hover-bg)}.pipe-readouts dt{font-size:11.5px;color:var(--ink-faint)}.pipe-readouts dd{margin:4px 0 0;font-family:var(--font-mono);font-size:24px;font-weight:600;letter-spacing:-.03em}.pipe-map{position:relative}.pipe-map-head{position:relative;height:22px}.pipe-map-head span{position:absolute;top:0;translate:-50% 0;font-family:var(--font-mono);font-size:10.5px;letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--ink-faint)}.pipe-graph{border-radius:var(--r-lg)}.pipe-note{margin:10px 0 0;font-size:12px}.pipe-dir{display:block;padding:10px 10px 4px;font-size:10.5px;color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pipe-dir:first-child{padding-top:2px}.pipe-code{counter-reset:none;max-height:58vh;overflow:auto}.code-line{display:block;white-space:pre}.code-line i{display:inline-block;width:3.2em;margin-right:1em;color:var(--ink-faint);font-style:normal;text-align:right;-webkit-user-select:none;user-select:none;opacity:.7}@media(max-width:900px){.pipe-info{grid-template-columns:1fr}}.swatchbook{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;align-items:start}.swatch{display:flex;flex-direction:column;gap:12px;padding:14px 16px;border-radius:var(--r-xl);min-width:0}.swatch.is-open{grid-column:1 / -1;box-shadow:var(--edge),var(--e2);border-color:color-mix(in srgb,var(--blue) 30%,var(--line))}.swatch.is-off{opacity:.7}.swatch-head{display:flex;align-items:flex-start;gap:10px;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.swatch-head:focus-visible{outline:2px solid var(--focus);outline-offset:4px;border-radius:var(--r-sm)}.swatch-title{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0;flex:1}.swatch-title b{font-size:15px;font-weight:700;letter-spacing:-.01em}.swatch-count{font-family:var(--font-mono);font-size:22px;font-weight:600;letter-spacing:-.03em;line-height:1}.swatch-count small{margin-left:2px;font-size:11px;font-weight:500;color:var(--ink-faint)}.swatch-chevron{color:var(--ink-faint);margin-top:2px}.swatch-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:24px}.swatch-tags:empty{display:none}.swatch .tag.is-off{opacity:.45;text-decoration:line-through}.swatch-bar{display:flex;gap:2px;height:4px;border-radius:4px;overflow:hidden;background:var(--hover-bg)}.swatch-bar i{display:block;min-width:4px}.swatch-bar i.tone-ok{background:var(--lime)}.swatch-bar i.tone-info{background:var(--blue)}.swatch-bar i.tone-danger{background:var(--red)}.swatch-bar i.tone-neutral{background:var(--ink-faint)}.swatch-foot{display:flex;align-items:center;gap:10px;min-width:0;font-size:12px}.swatch-editor{display:flex;flex-direction:column;gap:2px;padding-top:4px;border-top:1px solid var(--line)}.swatch-row{display:grid;grid-template-columns:minmax(120px,200px) minmax(60px,140px) auto auto auto auto;align-items:center;gap:16px;padding:9px 4px;border-bottom:1px solid var(--line)}.swatch-row:last-of-type{border-bottom:0}.swatch-tones{display:inline-flex;gap:6px}.swatch-tone{width:20px;height:20px;padding:0;border-radius:50%;border:2px solid var(--surface-solid);box-shadow:0 0 0 1px var(--line-strong);cursor:pointer;transition:box-shadow .2s,transform .2s}.swatch-tone.tone-neutral{background:var(--ink-faint)}.swatch-tone.tone-ok{background:var(--lime)}.swatch-tone.tone-info{background:var(--blue)}.swatch-tone.tone-danger{background:var(--red)}.swatch-tone.is-on{box-shadow:0 0 0 2px var(--ink)}.swatch-tone:hover:not(:disabled){transform:scale(1.12)}.swatch-tone:disabled{cursor:default;opacity:.6}.swatch-tone:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.swatch-def{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;border:1px dashed var(--line-strong);background:none;color:var(--ink-faint);font:inherit;font-size:11.5px;cursor:pointer}.swatch-def.is-on{border-style:solid;border-color:transparent;background:var(--lime-soft);color:var(--leaf-text);cursor:default}.swatch-def:hover:not(:disabled){color:var(--blue);border-color:var(--blue)}.swatch-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:10px}@media(max-width:760px){.swatch-row{grid-template-columns:1fr auto;gap:8px 12px}}.ladder{position:relative;overflow-x:auto;border-radius:var(--r-xl)}.ladder-stage{height:max(560px,calc(100dvh - 236px))}.ladder-card{width:240px;padding:14px 16px;border-radius:var(--r-lg);display:flex;flex-direction:column;gap:8px;align-items:flex-start}.ladder-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.ladder-card-rank{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;color:var(--cat-ink)}.ladder-card h3{margin:0;font-size:18px;font-weight:720;letter-spacing:-.02em}.ladder-card dl{margin:2px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.ladder-card dl div{padding:8px 10px;border-radius:var(--r-sm);background:var(--hover-bg)}.ladder-card dt{font-size:11px;color:var(--ink-faint)}.ladder-card dd{margin:2px 0 0;font-family:var(--font-mono);font-size:18px;font-weight:600}.ladder-card dd small{margin-left:3px;font-size:10.5px;color:var(--ink-faint)}.ladder-card-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:2px}.ladder-empty{position:absolute;top:0;right:0;bottom:0;left:0}@media(max-width:899px){.ladder-card{display:none}}.org-link.is-active{stroke:color-mix(in srgb,var(--cat-ink, var(--blue)) 85%,transparent);stroke-width:2}.org-pulse{fill:var(--cat-ink, var(--blue));opacity:0;stroke:var(--pulse-halo);stroke-width:6;paint-order:stroke;pointer-events:none}.stage{position:relative;min-height:100dvh;padding:0;overflow:clip;background:var(--canvas)}.app-frame{position:relative;height:100dvh;min-height:560px;display:grid;grid-template-columns:var(--rail-w) minmax(0,1fr);overflow:clip;border:0;border-radius:0;background:radial-gradient(55% 45% at 92% 0%,var(--ambient-a),transparent 70%),radial-gradient(45% 40% at 20% 100%,var(--ambient-b),transparent 70%),var(--canvas);box-shadow:none}.app-frame.is-collapsed{--rail-w: 76px}.app-frame:not(.is-entrance-ready) .rail-brand,.app-frame:not(.is-entrance-ready) .nav-group,.app-frame:not(.is-entrance-ready) .topbar>*{opacity:0}.rail{position:relative;z-index:5;display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--line-strong)}.rail-brand{display:flex;align-items:center;gap:11px;height:var(--topbar-h);padding:0 18px;flex:none}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--r-sm);flex:none;color:#fff;background:var(--dark-surface);box-shadow:0 1px 3px #0e121429,0 6px 16px #0e121429,inset 0 1px #ffffff1f}.brand-mark .brand-dot{width:9px;height:9px;border-radius:999px;background:var(--lime);box-shadow:0 0 0 4px #82dd2d33,0 0 12px #82dd2d99}.brand-text{min-width:0}.brand-name{font-size:15px;font-weight:720;letter-spacing:-.02em;white-space:nowrap}.brand-sub{font-size:10px;letter-spacing:.08em;color:var(--ink-soft);white-space:nowrap;text-transform:uppercase}.rail-nav{position:relative;flex:1;min-height:0;overflow-y:auto;overflow-x:clip;padding:8px 12px 16px}.nav-group+.nav-group{margin-top:14px}.nav-group-title{padding:6px 10px;font-size:11px;font-weight:650;letter-spacing:.06em;color:var(--ink-faint);white-space:nowrap}.nav-list{position:relative;display:flex;flex-direction:column;gap:2px}.nav-thumb{position:absolute;left:12px;right:12px;top:0;height:38px;border-radius:var(--r-sm);z-index:0;pointer-events:none;animation:fade-in .24s ease both}.nav-item{position:relative;z-index:1;display:flex;align-items:center;gap:11px;width:100%;height:38px;padding:0 11px;border-radius:var(--r-sm);font-size:13px;font-weight:560;color:var(--ink-muted);text-align:left;white-space:nowrap;transform-origin:50% 60%;transition:color .2s ease,opacity .2s ease}.nav-item .nav-ico{color:var(--ink-soft);transition:color .2s ease}.nav-item:hover{color:var(--ink)}.nav-item.is-active{color:var(--ink);font-weight:650}.nav-item.is-active .nav-ico{color:var(--blue)}.nav-item:focus-visible{outline-offset:-2px}.nav-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}@media(hover:hover){.nav-list:has(.nav-item:hover) .nav-item:not(:hover):not(.is-active){opacity:.62}}.rail-foot{padding:10px 12px 14px;border-top:1px solid var(--line);flex:none}.app-frame.is-collapsed .brand-text,.app-frame.is-collapsed .nav-label,.app-frame.is-collapsed .nav-group-title,.app-frame.is-collapsed .rail-foot .nav-label{display:none}.app-frame.is-collapsed .rail-brand{padding:0;justify-content:center}.app-frame.is-collapsed .nav-item{justify-content:center;padding:0}.app-frame.is-collapsed .nav-group+.nav-group{margin-top:6px;padding-top:6px;border-top:1px solid var(--line)}.workspace{position:relative;min-width:0;min-height:0;display:grid;grid-template-rows:var(--topbar-h) minmax(0,1fr)}.topbar{position:relative;z-index:2;display:flex;align-items:center;gap:10px;padding:0 20px 0 14px;border-bottom:1px solid var(--line);min-width:0}.topbar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;opacity:0;background:var(--rail-bg);box-shadow:0 1px 0 var(--line-strong),0 10px 26px rgba(var(--shade),.07);transition:opacity .3s ease}.workspace.is-scrolled .topbar:before{opacity:1}.topbar .spacer{flex:1}.crumbs{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-soft);min-width:0;white-space:nowrap}.crumbs .crumb-current{color:var(--ink);font-weight:620}.crumbs .crumb-sep{color:var(--ink-faint)}.cmd-trigger{display:inline-flex;align-items:center;gap:8px;width:240px;height:34px;padding:0 8px 0 11px;border-radius:var(--r-sm);font-size:12.5px;color:var(--ink-faint);transition:box-shadow .2s ease,border-color .2s ease}.cmd-trigger .cmd-text{flex:1;text-align:left}.kbd{display:inline-flex;align-items:center;height:20px;padding:0 6px;border-radius:6px;font-size:11px;font-weight:600;color:var(--ink-soft);border:1px solid var(--line-strong);background:var(--input-bg)}.user-chip{display:inline-flex;align-items:center;gap:9px;height:40px;padding:0 10px 0 4px;border-radius:999px;transition:background .2s ease}.user-chip:hover{background:var(--hover-bg)}.user-chip .user-name{font-size:12.5px;font-weight:640;line-height:1.2;text-align:left}.user-chip .user-role{font-size:11px;color:var(--ink-soft);line-height:1.2;text-align:left}.menu-pop{position:fixed;z-index:120;min-width:220px;padding:6px;border-radius:var(--r-md)}.menu-pop .menu-head{padding:10px 10px 12px;border-bottom:1px solid var(--line);margin-bottom:6px}.menu-pop .menu-item{display:flex;align-items:center;gap:10px;width:100%;height:36px;padding:0 10px;border-radius:var(--r-xs);font-size:13px;color:var(--ink);text-align:left;transition:background .15s ease,color .15s ease}.menu-pop .menu-item:hover{background:var(--hover-bg)}.menu-pop .menu-item.is-danger{color:var(--red-text)}.content{position:relative;min-height:0;overflow-y:auto;overflow-x:clip;overscroll-behavior:contain}.page{padding:26px 28px 40px;transform-origin:50% 0}.page:not(.is-entrance-ready) .reveal{opacity:0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 24px;flex-wrap:wrap;margin-bottom:20px}.page-head-main{min-width:0;display:flex;flex-direction:column}.page-head-side{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}.page-title{font-size:28px;font-weight:740;line-height:1.15;letter-spacing:-.03em;text-wrap:balance}.page-desc{margin-top:6px;max-width:680px;font-size:13px;color:var(--ink-muted);text-wrap:pretty}.page-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:16px}.search-form{display:flex;align-items:flex-end;flex-wrap:wrap;gap:14px 16px;padding:16px 20px;border-radius:var(--r-lg)}.search-form .field{width:200px}.search-form .field.is-wide{width:260px}.search-form .search-actions{display:flex;gap:8px;margin-left:auto}.split{display:grid;grid-template-columns:256px minmax(0,1fr);gap:16px;align-items:start}.split-side{position:sticky;top:0;border-radius:var(--r-lg);padding:14px 10px;max-height:calc(100dvh - 140px);overflow-y:auto}.split-side-head{padding:2px 8px 10px}@media(max-width:1180px){.app-frame:not(.is-collapsed){--rail-w: 208px}.cmd-trigger{width:200px}}@media(max-width:1080px){.cmd-trigger{width:34px;padding:0;justify-content:center}.cmd-trigger .cmd-text,.cmd-trigger .kbd,.user-chip .user-meta{display:none}.split{grid-template-columns:minmax(0,1fr)}.split-side{position:static;max-height:280px}}@media(max-width:820px){.stage{padding:0}.app-frame{height:100dvh;border:0;border-radius:0;grid-template-columns:minmax(0,1fr)}.rail{position:fixed;inset:0 auto 0 0;width:260px;z-index:110;box-shadow:var(--e3);translate:-105% 0;transition:translate .42s var(--ease-premium)}.app-frame.is-mobile-open .rail{translate:0 0}.app-frame.is-collapsed{--rail-w: 0px}.app-frame.is-collapsed .brand-text,.app-frame.is-collapsed .nav-label,.app-frame.is-collapsed .nav-group-title{display:revert}.rail-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:105;background:var(--overlay)}.page{padding:18px 16px 32px}.page-title{font-size:22px}.page-head-side{width:100%;justify-content:space-between}.crumbs{display:none}.search-form .field,.search-form .field.is-wide{width:100%}.search-form .search-actions{margin-left:0}}.login{position:relative;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(400px,1fr);gap:0;padding:14px;background:var(--stage);overflow:clip}.login:not(.is-entrance-ready) .login-brand,.login:not(.is-entrance-ready) .hero-line,.login:not(.is-entrance-ready) .cap-item,.login:not(.is-entrance-ready) .login-plate,.login:not(.is-entrance-ready) .login-dial,.login:not(.is-entrance-ready) .login-card{opacity:0}.login-canvas{position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:calc(100dvh - 28px);padding:34px 40px 28px;border-radius:30px;overflow:hidden;color:#f2f5f4;background:#0f1214;box-shadow:0 24px 70px #11171b47,inset 0 1px #ffffff14}.canvas-grid{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px) 0 0 / 56px 56px,linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px) 0 0 / 56px 56px;-webkit-mask-image:radial-gradient(90% 80% at 60% 45%,#000 30%,transparent 100%);mask-image:radial-gradient(90% 80% at 60% 45%,#000 30%,transparent 100%)}.canvas-glow{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(40% 45% at 72% 42%,rgba(130,221,45,.2),transparent 70%),radial-gradient(35% 40% at 18% 92%,rgba(76,141,255,.18),transparent 70%)}.login-brand{display:flex;align-items:center;gap:12px}.login-brand .brand-name{font-size:16px;color:#fff}.login-brand .brand-sub{color:#ffffff80}.login-brand .brand-mark{background:#ffffff14;box-shadow:inset 0 1px #ffffff24,0 0 0 1px #ffffff14}.login-canvas .eyebrow{color:#ffffff80}.canvas-main{flex:1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:32px;padding:40px 0 24px}.canvas-copy{display:flex;flex-direction:column;gap:18px;max-width:600px;min-width:0}.login-title{display:flex;flex-direction:column;font-size:clamp(34px,3.5vw,58px);font-weight:760;line-height:1.08;letter-spacing:-.04em;color:#fff}.login-title .hero-line{white-space:nowrap}.login-lead{display:block;max-width:460px;font-size:14.5px;line-height:1.75;color:#ffffff9e;text-wrap:pretty}.login-dial{position:relative;width:clamp(200px,21vw,300px);aspect-ratio:1;flex:none}.login-dial svg{width:100%;height:100%;overflow:visible}.dial-tick{stroke:#ffffff29;stroke-width:.7;stroke-linecap:round;transition:stroke .35s ease}.dial-tick.is-major{stroke-width:1.1;stroke:#ffffff4d}.dial-tick.is-on{stroke:var(--lime)}.dial-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.dial-time{font-family:var(--font-mono);font-size:clamp(24px,2.6vw,34px);font-weight:650;letter-spacing:-.02em;color:#fff}.dial-date{font-family:var(--font-mono);font-size:10.5px;letter-spacing:var(--track-eyebrow);color:#ffffff80}.canvas-plates{display:flex;align-items:stretch;gap:14px;flex-wrap:wrap}.login-plate{border-radius:var(--r-lg);border:1px solid rgba(255,255,255,.1);background:#ffffff0f;box-shadow:inset 0 1px #ffffff14,0 12px 30px #00000040;backdrop-filter:blur(18px) saturate(1.1);-webkit-backdrop-filter:blur(18px) saturate(1.1)}.login-plate.is-health{display:grid;grid-template-columns:auto auto;align-items:center;gap:6px 10px;padding:14px 18px;font-size:13px}.login-plate.is-health .eyebrow{grid-column:1 / -1}.health-dot{width:8px;height:8px;border-radius:999px;background:var(--red);box-shadow:0 0 0 4px #ff5a5033}.health-dot.is-ok{background:var(--lime);box-shadow:0 0 0 4px #82dd2d33,0 0 12px #82dd2d99}.plate-sub{grid-column:1 / -1;font-family:var(--font-mono);font-size:11px;color:#ffffff80}.cap-list{list-style:none;margin:0;padding:14px 16px;display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:12px 20px;flex:1;min-width:0}.cap-item{display:flex;gap:10px;align-items:flex-start}.cap-ico{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--r-xs);color:var(--lime);background:#82dd2d1f;flex:none}.cap-title{display:block;font-size:12.5px;font-weight:650;color:#fff}.cap-desc{display:block;margin-top:1px;font-size:11.5px;color:#ffffff80;line-height:1.45}.login-foot{margin-top:18px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;color:#ffffff5c}.login-side{position:relative;display:grid;place-items:center;padding:32px clamp(20px,4vw,64px);perspective:1200px}.login-side:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(50% 40% at 50% 30%,rgba(255,255,255,.8),transparent 70%),radial-gradient(45% 40% at 80% 85%,var(--ambient-a),transparent 70%)}:root[data-theme=dark] .login-side:before{background:radial-gradient(45% 40% at 80% 85%,var(--ambient-b),transparent 70%)}.login-card{position:relative;z-index:1;width:100%;max-width:420px;border-radius:var(--r-xl);transform-style:preserve-3d;will-change:transform}.login-card-inner{position:relative;z-index:1;padding:32px 32px 30px}.login-card-title{margin-top:8px;font-size:26px;font-weight:740;letter-spacing:-.03em}.login-card-sub{margin-top:4px;font-size:13px;color:var(--ink-soft)}.login-form{display:flex;flex-direction:column;gap:16px;margin-top:24px}.login-form .input-shell{height:42px}.captcha-row{display:flex;gap:10px}.captcha-row .input-shell{flex:1}.captcha-box{width:116px;height:42px;border-radius:var(--r-sm);display:inline-flex;align-items:center;justify-content:center;color:var(--ink-soft);flex:none;overflow:hidden;padding:0;cursor:pointer}.captcha-box:disabled{opacity:.6;cursor:not-allowed}.captcha-img{width:100%;height:100%;object-fit:contain;display:block;-webkit-user-select:none;user-select:none}.captcha-code{display:inline-flex;gap:4px;font-family:var(--font-mono);font-size:20px;font-weight:700;color:var(--ink);letter-spacing:.02em}.captcha-code span{display:inline-block}.login-options{display:flex;align-items:center;justify-content:space-between}.login-error{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:var(--r-sm);font-size:12.5px;color:var(--red-text);background:var(--red-soft)}.login-submit-slot{display:flex;justify-content:center;margin-top:4px;min-height:46px}.login-submit{height:46px;font-size:14px;border-radius:var(--r-md)}.success-orb{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:999px;color:#fff;background:var(--blue);box-shadow:var(--e-accent)}.success-orb svg{flex:none}.success-orb circle{fill:none;stroke:#ffffff8c;stroke-width:2.4;transform:rotate(-90deg);transform-origin:50% 50%}.success-orb path{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}@media(max-width:1180px){.canvas-main{grid-template-columns:minmax(0,1fr)}.login-dial{display:none}}@media(max-width:960px){.login{grid-template-columns:minmax(0,1fr);padding:0}.login-canvas{display:none}.login-side{min-height:100dvh;padding:32px 16px}}@media(prefers-reduced-motion:reduce){.login-card{will-change:auto}}.bento-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.bento{position:relative;min-width:0;padding:20px 22px;border-radius:var(--r-xl);border:1px solid var(--line-strong);background:var(--surface);box-shadow:var(--edge),var(--e1)}.bento>:not(.glow-layer){position:relative;z-index:1}.bento-hero{grid-column:span 8;grid-row:span 2;display:flex;flex-direction:column;gap:14px;overflow:hidden}.bento-side{grid-column:span 4;display:flex;flex-direction:column;justify-content:space-between;gap:14px;min-height:176px}.bento-third{grid-column:span 4}.bento-wide{grid-column:span 8}.bento-narrow{grid-column:span 4}.bento-half{grid-column:span 6}.bento-full{grid-column:1 / -1}.bento-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.bento-meta{font-family:var(--font-mono);font-size:11px;color:var(--ink-faint);white-space:nowrap;padding-top:2px}.bento-hero{border-color:var(--glass-line);background:radial-gradient(120% 90% at 0% 0%,rgba(130,221,45,.26),transparent 58%),radial-gradient(90% 80% at 100% 100%,rgba(255,255,255,.9),transparent 60%),linear-gradient(150deg,#eef8e2,#f8fbf6 55%,#fbfcfb);box-shadow:var(--edge-strong),var(--e2)}:root[data-theme=dark] .bento-hero{background:radial-gradient(120% 90% at 0% 0%,rgba(130,221,45,.16),transparent 58%),linear-gradient(150deg,#1b2316,#171b1c 60%,#15191a)}.hero-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.hero-body{flex:1;display:grid;grid-template-columns:minmax(200px,260px) minmax(0,1fr);gap:20px;align-items:end}.hero-figure{display:flex;flex-direction:column;gap:12px;padding-bottom:28px}.hero-delta{display:flex;align-items:center;gap:8px;font-size:12px}.hero-readouts{margin:8px 0 0;display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:4px 22px;padding-top:14px;border-top:1px solid var(--line-strong)}.hero-readouts dt,.ring-readouts dt{font-size:11px;color:var(--ink-faint)}.hero-readouts dd,.ring-readouts dd{margin:3px 0 0;font-size:15px;font-weight:680}.hero-chart{min-width:0}.hero-actions{display:flex;gap:8px;flex-wrap:wrap}.pill-btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 14px;border-radius:999px;font-size:12.5px;font-weight:640;color:var(--ink);border:1px solid var(--line-strong);background:#ffffffb8;box-shadow:var(--edge);transition:background .2s ease,box-shadow .25s ease}:root[data-theme=dark] .pill-btn{background:#ffffff0f}.pill-btn:hover:not(:disabled){box-shadow:var(--edge),var(--e1)}.pill-btn:disabled{opacity:.5}.pill-btn.is-dark{color:#fff;border-color:transparent;background:var(--dark-surface);box-shadow:0 6px 16px #0e12142e,inset 0 1px #ffffff1f}:root[data-theme=dark] .pill-btn.is-dark{background:var(--lime);color:#142008}.side-top{display:flex;align-items:center;justify-content:space-between}.side-label{font-size:12.5px;font-weight:600;color:var(--ink-soft)}.page-date{display:block;margin-bottom:8px;font-size:12px;letter-spacing:.02em;color:var(--ink-faint)}.share-list{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}.share-list li{display:grid;grid-template-columns:88px minmax(0,1fr) auto;align-items:center;gap:12px;font-size:12.5px}.share-label{color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.share-track{position:relative;height:8px;border-radius:999px;background:var(--hover-bg);overflow:hidden}.share-track i{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:color-mix(in srgb,var(--cat-ink) 70%,transparent);transform-origin:left;animation:share-grow .9s var(--ease-premium) both}.share-value{font-weight:650;min-width:76px;text-align:right}.share-value small{font-weight:500;color:var(--ink-faint)}@keyframes share-grow{0%{transform:scaleX(0)}}@media(prefers-reduced-motion:reduce){.share-track i{animation:none}}.side-ico{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--r-xs);color:var(--ink-soft)}.side-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px}.ring-wrap{display:flex;align-items:center;justify-content:space-around;gap:18px;flex-wrap:wrap}.ring-readouts{margin:0;display:flex;flex-direction:column;gap:14px}.mono-time{font-family:var(--font-mono);font-size:10.5px}.trend-foot{display:flex;gap:12px;margin-top:12px}.readout{flex:1;padding:12px 14px;border-radius:var(--r-md);background:var(--groove-bg)}.readout-label{display:block;font-size:11.5px;color:var(--ink-soft)}.readout-value{display:block;margin-top:4px;font-size:22px;font-weight:720;letter-spacing:-.02em}.readout-value small{font-size:13px;font-weight:600;color:var(--ink-soft);margin-left:2px}.activity-list{margin:-6px -8px 0}.activity{display:flex;align-items:center;gap:11px;padding:9px 8px;border-radius:var(--r-sm)}.activity+.activity{border-top:1px solid var(--line);border-radius:0}.activity-main{flex:1;min-width:0;font-size:12.5px}.shortcut-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:10px}.quick-link{display:flex;align-items:center;gap:11px;padding:12px;border-radius:var(--r-md);text-align:left;transition:box-shadow .25s ease,border-color .25s ease}.quick-link:hover{box-shadow:var(--edge),var(--e2)}.quick-ico{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--r-sm);color:var(--blue);flex:none}.quick-text{flex:1;min-width:0}.quick-title{display:block;font-size:13px;font-weight:640}.quick-sub{display:block;font-size:11.5px;color:var(--ink-soft)}.quick-go{color:var(--ink-faint);transition:color .2s ease}.quick-link:hover .quick-go{color:var(--blue)}.page:not(.is-entrance-ready) .bento{opacity:0}@media(max-width:1280px){.bento-hero{grid-column:1 / -1;grid-row:auto}.bento-side,.bento-third,.bento-ring{grid-column:span 6}.bento-wide,.bento-narrow,.bento-half{grid-column:1 / -1}}@media(max-width:760px){.bento-grid{gap:12px}.bento{padding:16px;border-radius:var(--r-lg)}.bento-side,.bento-third,.bento-ring{grid-column:1 / -1}.hero-body{grid-template-columns:minmax(0,1fr)}.hero-figure{padding-bottom:0}.metric-xl .metric-figure{font-size:44px}}.drawer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.scope-list{display:flex;flex-direction:column;gap:8px}.scope-option{display:flex;align-items:flex-start;gap:12px;width:100%;padding:13px 14px;border-radius:var(--r-md);border:1px solid var(--line-strong);text-align:left;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.scope-option:hover:not(.is-on){border-color:rgba(var(--shade),.2);background:var(--hover-bg)}.scope-option.is-on{border-color:var(--glass-line)}.scope-radio{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-top:1px;border-radius:999px;border:1.5px solid rgba(var(--shade),.28);color:#fff;flex:none}.scope-option.is-on .scope-radio{background:var(--blue);border-color:var(--blue)}.scope-name{display:block;font-size:13.5px;font-weight:640}.scope-desc{display:block;margin-top:2px;font-size:12px;color:var(--ink-soft)}.pref-list{display:flex;flex-direction:column}.pref-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;flex-wrap:wrap}.pref-row+.pref-row{border-top:1px solid var(--line)}.pref-title{font-size:13.5px;font-weight:640}.pref-desc{font-size:12px;color:var(--ink-soft);margin-top:2px}.cmd-overlay{place-items:start center;padding-top:min(16vh,140px)}.cmd-panel{max-width:560px;border-radius:var(--r-xl);overflow:hidden}.cmd-input{display:flex;align-items:center;gap:10px;height:56px;padding:0 18px;border-bottom:1px solid var(--line);color:var(--ink-soft)}.cmd-input input{flex:1;border:0;background:transparent;font-size:15px;color:var(--ink);outline:none}.cmd-input input::placeholder{color:var(--ink-faint)}.cmd-results{position:relative;max-height:min(420px,56vh);overflow-y:auto;padding:6px 8px 8px}.cmd-thumb{position:absolute;left:8px;right:8px;top:0;height:44px;border-radius:var(--r-sm);pointer-events:none;z-index:0}.cmd-group{display:block;padding:10px 10px 4px}.cmd-item{position:relative;z-index:1;display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:7px 10px;border-radius:var(--r-sm);text-align:left}.cmd-ico{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--r-xs);color:var(--ink-muted);flex:none}.cmd-item.is-active .cmd-ico{color:var(--blue)}.cmd-label{font-size:13.5px;font-weight:580;white-space:nowrap}.cmd-sub{flex:1;min-width:0;font-size:12px;color:var(--ink-faint);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cmd-go{margin-left:auto;color:var(--ink-faint);opacity:0;transition:opacity .15s ease;flex:none}.cmd-item.is-active .cmd-go{opacity:1;color:var(--blue)}.cmd-foot{display:flex;align-items:center;gap:14px;padding:10px 16px;border-top:1px solid var(--line);font-size:11.5px;color:var(--ink-soft)}.cmd-foot .kbd{margin-right:3px}.cmd-foot .spacer{flex:1}.link-btn{font-weight:640;color:var(--ink);border-radius:6px;text-align:left;transition:color .2s ease}.link-btn:hover{color:var(--blue)}.row-ico{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--r-xs);color:var(--ink-soft);flex:none}.flag-row{display:inline-flex;gap:4px;flex-wrap:wrap}.import-search{display:flex;gap:8px;margin-bottom:12px}.import-search .input-shell{flex:1}.import-list{max-height:360px;overflow-y:auto;border-radius:var(--r-md);padding:4px}.import-row{display:flex;align-items:center;gap:12px;min-height:42px;padding:0 12px;border-radius:var(--r-sm);font-size:13px;cursor:pointer;transition:background .15s ease}.import-row:hover:not(.is-disabled){background:var(--hover-bg)}.import-row.is-on{background:var(--blue-soft)}.import-row.is-disabled{cursor:default;opacity:.6}.preview{display:grid;grid-template-columns:240px minmax(0,1fr);gap:14px;min-height:420px}.preview-files{display:flex;flex-direction:column;gap:2px;max-height:60vh;overflow-y:auto}.preview-file{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 10px;border-radius:var(--r-sm);text-align:left;transition:background .15s ease}.preview-file:hover{background:var(--hover-bg)}.preview-file.is-active{background:var(--blue-soft)}.preview-name{font-size:12.5px;font-weight:620;font-family:SF Mono,ui-monospace,Menlo,monospace}.preview-file.is-active .preview-name{color:var(--blue)}.preview-dir{font-size:10.5px;color:var(--ink-faint);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-code{display:flex;flex-direction:column;gap:8px;min-width:0}.preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px}.preview-code .code-block{flex:1;max-height:60vh}@media(max-width:760px){.preview{grid-template-columns:minmax(0,1fr)}.preview-files{flex-direction:row;overflow-x:auto}}.band{margin-bottom:20px;padding:20px 24px 22px;border-radius:var(--r-xl);border:1px solid var(--line-strong);background:var(--surface);box-shadow:var(--edge),var(--e1)}.band-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px 16px;flex-wrap:wrap;margin-bottom:18px}.band-label{margin:34px 0 14px;padding:0 4px}.band-empty{padding:36px 0;text-align:center;font-size:13px}.readout-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:0}.readout-strip .metric{padding:4px 20px}.readout-strip .metric:first-child{padding-left:0}.readout-strip .metric+.metric{border-left:1px solid var(--line-strong)}.readout-strip .metric.is-alert .metric-figure{color:var(--red-text)}@media(max-width:760px){.band{padding:16px;border-radius:var(--r-lg)}.readout-strip{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px}.readout-strip .metric{padding:0 12px}.readout-strip .metric:nth-child(odd){padding-left:0;border-left:0}}.cmd-ask{display:flex;flex-direction:column;gap:10px;padding:8px 4px 4px}.cmd-ask-hint{margin:0;font-size:11.5px}.cmd-ask-results{display:flex;flex-direction:column;gap:8px}.dash-net{height:232px;border:0;box-shadow:none;background:none;border-radius:var(--r-lg)}
