@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-grotesk-latin-400-normal-C_H9aji2.woff2) format("woff2"),url(/assets/space-grotesk-latin-400-normal-BXeG7fug.woff) format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-500-normal-KYfcXlvK.woff2) format("woff2"),url(/assets/space-grotesk-latin-500-normal-Day7EzAn.woff) format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-latin-600-normal-0SbvWzVy.woff2) format("woff2"),url(/assets/space-grotesk-latin-600-normal-S69mFOY_.woff) format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-700-normal-B7Rq4K4l.woff2) format("woff2"),url(/assets/space-grotesk-latin-700-normal-eHWw8XUM.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-600-normal-C8RAYTDA.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-600-normal-BfsvjouI.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-700-normal-D3wTyLJW.woff) format("woff")}:root{--color-bg: #0a0e1a;--color-nav: #0d1224;--color-card: #12182b;--color-elevated: #182238;--color-border: #1c2744;--color-border-strong: #2a3a5c;--color-text: #e6edf7;--color-muted: #8b9bb8;--color-inverse: #0a0e1a;--color-accent: #5b8cff;--color-accent-soft: rgba(91, 140, 255, .14);--color-accent-border: rgba(91, 140, 255, .4);--color-success: #00e5a8;--color-success-soft: rgba(0, 229, 168, .12);--color-success-on: #0a0e1a;--color-warn: #ffb020;--color-warn-soft: rgba(255, 176, 32, .12);--color-danger: #ff5c7a;--color-danger-soft: rgba(255, 92, 122, .12);--font-sans: "Space Grotesk", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--nav-height: 56px;--sidebar-width: 220px;--radius-xs: 4px;--radius-sm: 7px;--radius-md: 10px;--radius-pill: 999px;--focus-ring: 0 0 0 3px rgba(91, 140, 255, .35);--shadow-card: 0 0 0 1px rgba(91, 140, 255, .08), 0 12px 32px rgba(0, 0, 0, .45);--ease-out: cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}:focus-visible{outline:none;box-shadow:var(--focus-ring)}.mono{font-family:var(--font-mono)}.app{min-height:100vh}nav{height:var(--nav-height);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 20px;background:var(--color-nav);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:40}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:700}.mark{width:28px;height:28px;border-radius:7px;background:var(--color-accent);color:var(--color-inverse);display:grid;place-items:center;font-size:12px;font-weight:800}.nav-tabs{display:flex;gap:4px;height:var(--nav-height)}.nav-tab{display:flex;align-items:center;padding:0 12px;color:var(--color-muted);text-decoration:none;border-bottom:2px solid transparent;font-size:13px;font-weight:500}.nav-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.pill{display:flex;align-items:center;gap:8px;color:var(--color-muted);font-size:12px}.avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--color-accent-soft);color:var(--color-accent);font-weight:700;font-size:11px}.demo-banner{background:var(--color-warn-soft);color:var(--color-text);border-bottom:1px solid var(--color-border);padding:10px 20px;font-size:13px}.demo-banner strong{color:var(--color-warn)}.content{padding:28px 32px 48px}h1{font-size:28px;margin:0 0 6px;letter-spacing:-.3px}.sub{color:var(--color-muted);margin:0 0 18px;font-size:14px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;min-width:0;max-width:100%}.spread{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;flex-wrap:wrap;min-width:0;max-width:100%}.btn{height:34px;padding:0 14px;border-radius:var(--radius-sm);border:1px solid transparent;font-weight:600;display:inline-flex;align-items:center;gap:8px;text-decoration:none;transition:background .12s var(--ease-out),border-color .12s var(--ease-out)}.btn-primary{background:var(--color-accent);color:var(--color-inverse)}.btn-secondary,.btn-ghost{background:var(--color-card);border-color:var(--color-border)}.btn-ghost{color:var(--color-muted);background:transparent}.btn-success{background:var(--color-success);color:var(--color-success-on)}.btn-danger{background:var(--color-danger);color:#fff}.btn:disabled,.is-disabled{opacity:.45;pointer-events:none}.btn.compact{height:28px}.input,.select,textarea.input{height:36px;padding:0 12px;border-radius:var(--radius-sm);border:1.5px solid var(--color-border);background:var(--color-nav);width:100%}textarea.input{height:auto;padding:10px 12px;resize:vertical}.label{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted);margin-bottom:6px}.card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.badge{display:inline-flex;align-items:center;border-radius:var(--radius-pill);padding:3px 8px;font-size:12px;font-weight:600}.badge-ok{background:var(--color-success-soft);color:var(--color-success)}.badge-warn,.badge-draft{background:var(--color-warn-soft);color:var(--color-warn)}.badge-danger{background:var(--color-danger-soft);color:var(--color-danger)}.chip{height:28px;padding:0 10px;border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-elevated);display:inline-flex;align-items:center;font-size:12px;color:var(--color-muted)}.chip.toggle-on{background:var(--color-accent-soft);color:var(--color-accent);border-color:var(--color-accent-border)}.stat{padding:12px 16px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-card);min-width:120px}.stat b{display:block;font-size:18px}.stat span{color:var(--color-muted);font-size:11px;overflow-wrap:anywhere}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted);padding:10px 12px;border-bottom:1px solid var(--color-border)}.table td{padding:12px;border-bottom:1px solid var(--color-border);vertical-align:middle}.table tr:last-child td{border-bottom:0}.banner{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 14px;margin-bottom:16px;font-size:13px}.banner.warn{background:var(--color-warn-soft)}.banner.danger{background:var(--color-danger-soft)}.banner.ok{background:var(--color-success-soft)}.lock-note{background:var(--color-elevated);border-bottom:1px solid var(--color-border);padding:10px 20px;font-size:13px}.grid-3{display:grid;grid-template-columns:280px minmax(0,1fr) 300px;gap:16px}.grid-2{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px}.sidebar{width:var(--sidebar-width);background:var(--color-nav);border-right:1px solid var(--color-border);padding:16px 12px}.with-side{display:flex;align-items:stretch;min-height:calc(100vh - 120px)}.step{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:var(--radius-md);color:var(--color-muted);background:transparent;border:1px solid transparent;width:100%;text-align:left}.step.active{background:var(--color-accent-soft);color:var(--color-accent);border-color:var(--color-accent-border)}.step.done{color:var(--color-text)}.step-num{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700;background:var(--color-elevated)}.step.done .step-num{background:var(--color-success);color:var(--color-success-on)}.step.active .step-num{background:var(--color-accent);color:var(--color-inverse)}.wheel-canvas{background-color:var(--color-card);background-image:radial-gradient(var(--color-border) 1px,transparent 1px);background-size:18px 18px;display:flex;flex-direction:column;align-items:center;padding:14px}.wheel-canvas svg{width:min(540px,100%);height:auto}.swatch{width:14px;height:14px;border-radius:4px;display:inline-block;border:1px solid var(--color-border)}.diag-warn{background:var(--color-warn-soft);border-radius:var(--radius-sm);padding:10px 12px;font-size:13px}.diag-ok{background:var(--color-success-soft);border-radius:var(--radius-sm);padding:10px 12px;font-size:13px;margin-top:12px}.check-item{display:flex;gap:10px;align-items:flex-start;padding:8px 0;font-size:13px}.check-box{width:18px;height:18px;border-radius:4px;border:1px solid var(--color-border-strong);display:grid;place-items:center;flex:none}.check-item.done .check-box{background:var(--color-success);color:var(--color-success-on);border-color:transparent}.progress{height:8px;border-radius:var(--radius-pill);background:var(--color-elevated);overflow:hidden}.progress>i{display:block;height:100%;background:var(--color-accent)}.toast{position:fixed;right:16px;bottom:16px;z-index:60;min-width:280px;padding:12px 14px;background:var(--color-card);border:1px solid var(--color-border);border-left:3px solid var(--color-accent);border-radius:var(--radius-sm);box-shadow:var(--shadow-card)}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0e1ab8;display:grid;place-items:center;z-index:70;padding:16px}.modal{width:min(480px,100%);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:22px}.skeleton{height:42px;margin:8px 12px;border-radius:8px;background:var(--color-elevated)}.cards{display:none}.live-hub{width:min(320px,100%);max-height:320px;border-radius:12px;background:#000;display:block;margin-bottom:16px}.live-strip{display:flex;flex-wrap:wrap;gap:8px;max-width:100%}.live-strip figure{margin:0;width:84px}.live-strip img{width:84px;height:84px;object-fit:contain;background:var(--color-elevated);border-radius:8px;border:1px solid var(--color-border)}.live-strip figcaption{font-size:11px;color:var(--color-muted);overflow-wrap:anywhere}.field-error{color:var(--color-danger);font-size:12px;margin-top:6px}@media(max-width:1100px){.grid-3{grid-template-columns:1fr}.content{padding:20px 16px 40px}}@media(max-width:800px){nav{height:auto;flex-wrap:wrap;padding:10px 12px;max-width:100%}.nav-tabs{height:auto;flex-wrap:wrap;max-width:100%}.content,.with-side,.demo-banner,.lock-note,.content .input{max-width:100%}.grid-2,.with-side{display:block}.sidebar{width:auto;border-right:0;border-bottom:1px solid var(--color-border)}.table-wrap{display:none}.cards{display:grid;gap:10px}.stat{min-width:0;flex:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}
