:root,[data-theme=dark]{color-scheme:dark;--bg: #101013;--surface: #17171b;--surface2: #1d1d23;--surface3: #23232b;--hover: #24242b;--border: #2a2a31;--border-subtle: #212127;--divider: rgb(42 42 49 / .55);--accent: #e8a33d;--accent-soft: #c98528;--accent-2: #57c7d4;--text: #edeef0;--text-muted: #8d8d97;--text-subtle: #5c5c66;--success: #6fcf97;--error: #e5484d;--warning: #e8a33d;--info: #57c7d4;--magenta: #c77dff;--rail: #141418;--sheet-head: #17171b;--sheet-row-even: #1b1d22;--sheet-row-odd: #17181d;--sheet-row-hover: #242830;--sheet-row-selected: #1a2a3d;--accent-dim: rgba(232, 163, 61, .14);--error-dim: rgba(229, 72, 77, .15);--info-dim: rgba(87, 199, 212, .14);--success-dim: rgba(111, 207, 151, .14);--magenta-dim: rgba(199, 125, 255, .14);--chrome-hover: rgba(255, 255, 255, .07);--input-bg: #1d1d23;--input-border: #2a2a31;--pill-ok-bg: #1a3d2a;--pill-ok-fg: #5dffb0;--pill-err-bg: #4a1210;--pill-err-fg: #ff6b5c;--pill-wip-bg: #1e3050;--pill-wip-fg: #6ec8ff;--pill-hold-bg: #3a3010;--pill-hold-fg: #ffd060;--scrollbar-thumb: rgb(42 42 49);--scrollbar-thumb-hover: rgb(58 58 66);--scrollbar-track: rgb(16 16 19);--font-sans: "Inter", "Segoe UI", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-display: "Space Grotesk", "Inter", "Segoe UI", ui-sans-serif, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}[data-theme=light]{color-scheme:light;--bg: #e6e6e9;--surface: #f4f4f5;--surface2: #ffffff;--surface3: #ebebf0;--hover: #e0e0e4;--border: #c8c8cf;--border-subtle: #d6d6dc;--divider: rgb(160 160 170 / .55);--accent: #c98528;--accent-soft: #a66b1a;--accent-2: #0d9488;--text: #1a1a1a;--text-muted: #3f3f46;--text-subtle: #63636e;--success: #15803d;--error: #dc2626;--warning: #ca8a04;--info: #0d9488;--magenta: #9333ea;--rail: #ececef;--sheet-head: #e8e8ec;--sheet-row-even: #ffffff;--sheet-row-odd: #f6f6f8;--sheet-row-hover: #e8e8ee;--sheet-row-selected: #e4ecf8;--accent-dim: rgba(201, 133, 40, .14);--error-dim: rgba(220, 38, 38, .12);--info-dim: rgba(13, 148, 136, .12);--success-dim: rgba(21, 128, 61, .12);--magenta-dim: rgba(147, 51, 234, .11);--chrome-hover: rgba(0, 0, 0, .06);--input-bg: #ffffff;--input-border: #c8c8cf;--pill-ok-bg: #d1fae5;--pill-ok-fg: #047857;--pill-err-bg: #fee2e2;--pill-err-fg: #b91c1c;--pill-wip-bg: #e0f2fe;--pill-wip-fg: #0369a1;--pill-hold-bg: #fef3c7;--pill-hold-fg: #a16207;--scrollbar-thumb: rgb(140 140 150);--scrollbar-thumb-hover: rgb(110 110 120);--scrollbar-track: rgb(230 230 232)}*,*:before,*:after{box-sizing:border-box}html{font-size:13px;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}#root{min-height:100vh}a{color:var(--accent-2);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}.cockpit-shell{display:grid;grid-template-columns:15.5rem minmax(0,1fr);min-height:100vh;background:var(--bg)}@media(max-width:960px){.cockpit-shell{grid-template-columns:minmax(0,1fr)}}.cockpit-rail{background:var(--rail);border-right:1px solid var(--border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;padding:.75rem .65rem;gap:.85rem}@media(max-width:960px){.cockpit-rail{position:static;height:auto;border-right:none;border-bottom:1px solid var(--border);padding:.6rem .75rem}}.rail-brand{display:flex;align-items:center;gap:.6rem;padding:.35rem .5rem;border-radius:.5rem;color:var(--text);text-decoration:none}.rail-brand:hover{background:var(--chrome-hover);text-decoration:none}.rail-brand img{border-radius:.45rem;flex-shrink:0}.rail-brand-title{font-family:var(--font-display);font-weight:700;font-size:.98rem;letter-spacing:-.01em;line-height:1.15}.rail-brand-title span{color:var(--accent)}.rail-brand-sub{font-size:.68rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.rail-studio-box{background:var(--surface);border:1px solid var(--border);border-radius:.5rem;padding:.55rem .65rem;display:grid;gap:.2rem}.rail-studio-name{font-weight:600;font-size:.82rem;display:flex;align-items:center;justify-content:space-between;gap:.4rem}.rail-studio-slug{font-family:var(--font-mono);font-size:.68rem;color:var(--text-muted)}.rail-section-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);padding:.25rem .5rem .1rem}.rail-nav{display:grid;gap:.2rem}.rail-link{display:flex;align-items:center;justify-content:space-between;gap:.55rem;padding:.5rem .65rem;border-radius:.42rem;color:var(--text-muted);font-weight:500;font-size:.84rem;text-decoration:none;border:1px solid transparent;transition:background .12s ease,color .12s ease}.rail-link:hover{background:var(--chrome-hover);color:var(--text);text-decoration:none}.rail-link.active{background:var(--accent-dim);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 32%,transparent);font-weight:600}.rail-link-left{display:flex;align-items:center;gap:.55rem;min-width:0}.rail-badge{font-family:var(--font-mono);font-size:.68rem;font-weight:600;padding:.05rem .4rem;border-radius:999px;background:var(--surface2);color:var(--text-muted);border:1px solid var(--border)}.rail-footer{margin-top:auto;border-top:1px solid var(--border);padding-top:.65rem;display:grid;gap:.5rem}.cockpit-body{display:flex;flex-direction:column;min-width:0;min-height:100vh}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:.65rem;min-height:3.25rem;padding:.4rem 1.1rem;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.main{flex:1;width:100%;max-width:1560px;margin:0 auto;padding:1.15rem 1.25rem 2.5rem}.panel{background:var(--surface);border:1px solid var(--border);border-radius:.55rem;padding:1rem}.panel-muted{background:var(--surface2)}.panel-tight{background:var(--surface);border:1px solid var(--border);border-radius:.55rem;padding:.7rem .85rem}.row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.row-between{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;justify-content:space-between}.spacer{margin-left:auto}.muted{color:var(--text-muted)}.subtle{color:var(--text-subtle)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.h1{margin:0;font-size:1.3rem;font-weight:700;letter-spacing:-.015em}.h2{margin:0;font-size:.92rem;font-weight:600;letter-spacing:-.01em}.h3{margin:0;font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.stack{display:grid;gap:.85rem}.stack-sm{display:grid;gap:.45rem}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:.75rem}.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:.55rem;padding:.85rem .95rem;display:flex;flex-direction:column;justify-content:space-between;gap:.45rem;transition:border-color .15s ease,transform .12s ease}.kpi-card.interactive{cursor:pointer}.kpi-card.interactive:hover{border-color:var(--accent);transform:translateY(-1px)}.kpi-card-head{display:flex;align-items:center;justify-content:space-between;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.kpi-card-val{font-size:1.65rem;font-weight:700;font-family:var(--font-mono);font-variant-numeric:tabular-nums;line-height:1.1}.kpi-card-sub{font-size:.74rem;color:var(--text-muted);display:flex;align-items:center;gap:.35rem}.dash-grid-2{display:grid;gap:.85rem;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}.dash-grid-equal{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}@media(max-width:1024px){.dash-grid-2{grid-template-columns:minmax(0,1fr)}}.pill{display:inline-flex;align-items:center;gap:.28rem;border-radius:.28rem;padding:.12rem .48rem;font-size:.68rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.pill-wip{background:var(--pill-wip-bg);color:var(--pill-wip-fg)}.pill-hold{background:var(--pill-hold-bg);color:var(--pill-hold-fg)}.pill-ok{background:var(--pill-ok-bg);color:var(--pill-ok-fg)}.pill-err{background:var(--pill-err-bg);color:var(--pill-err-fg)}.pill-info{background:var(--info-dim);color:var(--accent-2)}.pill-magenta{background:var(--magenta-dim);color:var(--magenta)}.pill-muted{background:var(--hover);color:var(--text-muted)}.pill-accent{background:var(--accent-dim);color:var(--accent)}.ctx-pill{display:inline-flex;align-items:center;gap:.3rem;border-radius:.28rem;padding:.1rem .45rem;font-size:.68rem;font-weight:600;background:var(--surface2);border:1px solid var(--border);color:var(--text);font-family:var(--font-mono)}.ctx-pill .prefix{color:var(--accent-2);font-weight:700}.btn-accent,.btn-secondary,.btn-ghost,.btn-danger{border-radius:.4rem;padding:.42rem .82rem;font-size:.8rem;font-weight:600;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.38rem;border:1px solid transparent;transition:background .12s ease,border-color .12s ease,color .12s ease;white-space:nowrap}.btn-sm{padding:.25rem .55rem;font-size:.73rem}.btn-accent{background:var(--accent);color:#161005;border:none}.btn-accent:hover:not(:disabled){background:var(--accent-soft);color:#fff;text-decoration:none}.btn-secondary{background:var(--info-dim);color:var(--accent-2);border-color:color-mix(in srgb,var(--accent-2) 35%,transparent)}.btn-secondary:hover:not(:disabled){background:color-mix(in srgb,var(--accent-2) 24%,transparent);text-decoration:none}.btn-ghost{background:transparent;color:var(--text-muted);border-color:var(--border)}.btn-ghost:hover:not(:disabled){background:var(--chrome-hover);color:var(--text);text-decoration:none}.btn-danger{background:var(--error-dim);color:var(--error);border-color:color-mix(in srgb,var(--error) 30%,transparent)}button:disabled{opacity:.55;cursor:not-allowed}.view-tabs{display:flex;flex-wrap:wrap;gap:.35rem;border-bottom:1px solid var(--border);padding-bottom:.55rem}.view-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.38rem .7rem;border-radius:.4rem;font-size:.78rem;font-weight:600;color:var(--text-muted);background:transparent;border:1px solid transparent;cursor:pointer}.view-tab:hover{background:var(--chrome-hover);color:var(--text)}.view-tab.active{background:var(--surface2);color:var(--accent);border-color:var(--border)}.view-tab .count{font-family:var(--font-mono);font-size:.68rem;padding:.04rem .35rem;border-radius:999px;background:var(--hover);color:var(--text)}.field{display:grid;gap:.28rem}.field label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.input,.select,.field input,.field select,.field textarea{background:var(--input-bg);border:1px solid var(--input-border);color:var(--text);border-radius:.4rem;padding:.45rem .65rem;font-size:.82rem;outline:none}.input:focus,.select:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}.field textarea{min-height:7.5rem;resize:vertical;line-height:1.5}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:.55rem;overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:.82rem}.table th,.table td{text-align:left;padding:.6rem .72rem;border-bottom:1px solid var(--border-subtle);vertical-align:middle}.table th{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:var(--sheet-head);border-bottom:1px solid var(--border);white-space:nowrap}.table tbody tr:nth-child(2n) td{background:var(--sheet-row-even)}.table tbody tr:nth-child(odd) td{background:var(--sheet-row-odd)}.table tbody tr:hover td{background:var(--sheet-row-hover)}.table tbody tr.selected td{background:var(--sheet-row-selected)}.table tbody tr.kb-focused td{outline:1px solid var(--accent);outline-offset:-1px}.unread-dot{width:.5rem;height:.5rem;border-radius:999px;background:var(--accent);box-shadow:0 0 8px var(--accent);display:inline-block;flex-shrink:0}.avatar-chip{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem}.avatar-circle{width:1.45rem;height:1.45rem;border-radius:999px;background:var(--surface3);border:1px solid var(--border);color:var(--accent);font-size:.64rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.bulk-bar{background:color-mix(in srgb,var(--accent-dim) 80%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:.5rem;padding:.55rem .85rem;display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.detail-grid{display:grid;gap:.9rem}@media(min-width:980px){.detail-grid{grid-template-columns:minmax(0,1fr) 21rem;align-items:start}}.timeline{display:grid;gap:.7rem}.msg{border:1px solid var(--border);border-radius:.5rem;padding:.85rem .95rem;background:var(--surface2)}.msg.internal{background:var(--magenta-dim);border-color:color-mix(in srgb,var(--magenta) 40%,var(--border))}.msg .meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.75rem;color:var(--text-muted);margin-bottom:.45rem}.msg .body{white-space:pre-wrap;line-height:1.52;font-size:.86rem}.event-line{display:flex;align-items:center;gap:.55rem;padding:.4rem .65rem;border-left:2px solid var(--border);font-size:.76rem;color:var(--text-muted)}.rail-card{border:1px solid var(--border);border-radius:.55rem;background:var(--surface);padding:.85rem;display:grid;gap:.75rem}.bar-row{display:grid;gap:.25rem}.bar-track{height:.45rem;width:100%;background:var(--surface2);border-radius:999px;overflow:hidden;border:1px solid var(--border-subtle)}.bar-fill{height:100%;border-radius:999px;transition:width .25s ease}.trend-chart{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;align-items:end;height:8.5rem;padding-top:.75rem}.trend-col{display:flex;flex-direction:column;align-items:center;gap:.35rem;height:100%;justify-content:flex-end}.trend-bars{display:flex;align-items:flex-end;gap:4px;height:6rem;width:100%;justify-content:center}.trend-bar{width:.7rem;border-radius:3px 3px 0 0;min-height:4px}.kbd{font-family:var(--font-mono);font-size:.68rem;padding:.08rem .38rem;border-radius:.25rem;background:var(--surface2);border:1px solid var(--border);color:var(--text-muted)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#000000a6;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-box{background:var(--surface);border:1px solid var(--border);border-radius:.65rem;max-width:36rem;width:100%;padding:1.15rem;box-shadow:0 24px 60px #00000073}.error-text{color:var(--error)}.ok-text{color:var(--success)}.empty{padding:2.25rem 1rem;text-align:center;color:var(--text-muted)}.login-page{min-height:100vh;background:var(--bg);color:var(--text);display:grid}@media(min-width:768px){.login-page{grid-template-columns:45% 55%}}.login-hero{position:relative;display:none;min-height:100vh;overflow:hidden;flex-direction:column;justify-content:space-between}@media(min-width:768px){.login-hero{display:flex}}.login-hero-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center}.login-hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom right,#0003,#0009,#000000e6);pointer-events:none}.login-hero-body{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;justify-content:center;padding:3rem 2.5rem}.login-hero-brand{display:flex;align-items:center;gap:1rem}.login-hero-brand img{width:4.5rem;height:4.5rem;border-radius:1rem;box-shadow:0 12px 40px #0006}.login-hero-brand h1,.login-mobile-brand h1,.app-brand-title{font-family:var(--font-display)}.login-hero-brand h1{margin:0;font-size:1.875rem;font-weight:700;letter-spacing:-.02em;color:#fff}.login-hero-brand p{margin:.25rem 0 0;font-size:.875rem;color:#ffffffb3}.login-hero-copy{margin:2rem 0 0;max-width:28rem;font-size:1rem;line-height:1.6;color:#fff9}.login-hero-foot{position:relative;z-index:1;margin:0;padding:0 2.5rem 2rem;font-size:.75rem;color:#fff6}.login-main{display:flex;min-height:100vh;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem 1rem}.login-wrap{width:100%;max-width:28rem}.login-mobile-brand{display:block;text-align:center;margin-bottom:2rem}.login-mobile-brand img{margin:0 auto .75rem;width:3.5rem;height:3.5rem;border-radius:1rem;box-shadow:0 8px 24px #e8a33d33}.login-mobile-brand h1{margin:0;font-size:1.5rem;font-weight:700}.login-mobile-brand p{margin:.25rem 0 0;font-size:.875rem;color:var(--text-muted)}@media(min-width:768px){.login-mobile-brand{display:none}}.login-card{border-radius:1rem;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 95%,transparent);padding:2rem;box-shadow:0 20px 50px #0000001f;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.login-card-head{display:none;margin-bottom:1.5rem}.login-card-head h2{margin:0;font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.login-card-head p{margin:.25rem 0 0;font-size:.875rem;color:var(--text-muted)}@media(min-width:768px){.login-card-head{display:block}}.login-form{display:grid;gap:1.1rem}.login-input{width:100%;border-radius:.75rem;border:1px solid var(--border);background:color-mix(in srgb,var(--surface2) 80%,transparent);padding:.75rem .85rem;font-size:.875rem;color:var(--text);outline:none}.login-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.login-password-wrap{position:relative}.login-password-wrap .login-input{padding-right:3.5rem}.login-eye{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--text-muted);font-size:.7rem;font-weight:600;cursor:pointer;padding:.35rem .5rem;border-radius:.5rem}.login-eye:hover{background:var(--hover);color:var(--text)}.login-submit{width:100%;border-radius:.75rem;padding:.75rem;font-size:.875rem}.login-legal{margin:1.5rem 0 0;text-align:center;font-size:.75rem;line-height:1.5;color:var(--text-subtle)}
