:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:6px;--radius:10px;--radius-lg:14px;--radius-pill:999px;--control-height:40px;--page-width:1120px;--page-gutter:var(--space-5);--font:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace;--text-xs:12px;--text-sm:13px;--text-md:15px;--text-lg:18px;--text-xl:24px;--bg:#f4f5f8;--surface:#fff;--surface-2:#f0f1f5;--text:#171923;--muted:#646a7e;--border:#e1e3ea;--border-strong:#cdd0da;--accent:#3657d6;--accent-hover:#2b48b8;--accent-soft:#e7ecfc;--on-accent:#fff;--success:#16794a;--success-soft:#e3f4ea;--warning:#9a6200;--warning-soft:#fbf0d9;--danger:#c0352b;--danger-soft:#fbe6e4;--focus:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent);--shadow:0 1px 2px #10121b0f, 0 4px 16px #10121b0f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1117;--surface:#181b25;--surface-2:#1f2330;--text:#e9eaf1;--muted:#9195a8;--border:#272b3a;--border-strong:#353a4d;--accent:#7c97ff;--accent-hover:#95acff;--accent-soft:#232c4d;--on-accent:#0f1117;--success:#5fd39a;--success-soft:#16301f;--warning:#f2c063;--warning-soft:#33290f;--danger:#ff8b7f;--danger-soft:#3a1c1a;--shadow:0 1px 2px #0000004d, 0 8px 24px #00000040;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1117;--surface:#181b25;--surface-2:#1f2330;--text:#e9eaf1;--muted:#9195a8;--border:#272b3a;--border-strong:#353a4d;--accent:#7c97ff;--accent-hover:#95acff;--accent-soft:#232c4d;--on-accent:#0f1117;--success:#5fd39a;--success-soft:#16301f;--warning:#f2c063;--warning-soft:#33290f;--danger:#ff8b7f;--danger-soft:#3a1c1a;--shadow:0 1px 2px #0000004d, 0 8px 24px #00000040;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (width<=640px){:root{--page-gutter:var(--space-4)}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font:var(--text-md) / 1.5 var(--font);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,p{margin:0}h1{font-size:var(--text-xl);letter-spacing:-.01em;font-weight:700;line-height:1.25}h2{font-size:var(--text-lg);font-weight:650;line-height:1.3}h3{font-size:var(--text-md);font-weight:650}a{color:var(--accent)}code,.mono{font-family:var(--font-mono);font-size:.92em}.muted{color:var(--muted)}h1+p,h2+p,h3+p{margin-top:var(--space-1)}.error{color:var(--danger)}:focus-visible{box-shadow:var(--focus);outline:none}.app{flex-direction:column;min-height:100vh;display:flex}.page{width:100%;max-width:var(--page-width);padding:var(--space-6) var(--page-gutter) var(--space-7);flex:1;margin:0 auto}.page>section{gap:var(--space-5);display:grid}:where(.page>section>*,.panel,.panel>*,.columns>*){min-width:0}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-head .subtitle{color:var(--muted);margin-top:var(--space-1)}.page-head .actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.stack{gap:var(--space-4);display:grid}.stack-sm{gap:var(--space-2);display:grid}.cluster{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.columns{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start;display:grid}.topbar{z-index:10;background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0}.topbar-inner{max-width:var(--page-width);padding:0 var(--page-gutter);align-items:center;gap:var(--space-5);height:60px;margin:0 auto;display:flex}.brand{align-items:center;gap:var(--space-2);letter-spacing:-.01em;color:var(--text);white-space:nowrap;font-weight:750;text-decoration:none;display:inline-flex}.brand-mark{flex:none;width:26px;height:26px}.brand small{color:var(--muted);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em}.nav{gap:var(--space-1);scrollbar-width:none;flex:1;display:flex;overflow-x:auto}.nav a{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--muted);white-space:nowrap;font-weight:550;text-decoration:none}.nav a:hover{color:var(--text);background:var(--surface-2)}.nav a.active{color:var(--text);background:var(--accent-soft)}@media (width<=640px){.topbar-inner{height:auto;padding-top:var(--space-3);padding-bottom:var(--space-2);row-gap:var(--space-2);flex-wrap:wrap}.topbar-inner .logout{margin-left:auto}.nav{margin:0 calc(-1 * var(--space-3));flex-basis:100%;order:3}}button,.button{justify-content:center;align-items:center;gap:var(--space-2);height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-sm);background:var(--accent);color:var(--on-accent);font:600 var(--text-md) / 1 var(--font);white-space:nowrap;cursor:pointer;border:1px solid #0000;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}button:hover:not(:disabled),.button:hover{background:var(--accent-hover)}button:disabled{opacity:.45;cursor:not-allowed}button.secondary,.button.secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong)}button.secondary:hover:not(:disabled),.button.secondary:hover{background:var(--surface-2)}button.ghost{color:var(--muted);background:0 0}button.ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text)}button.danger{background:var(--danger);color:#fff}button.danger:hover:not(:disabled){background:color-mix(in srgb, var(--danger) 85%, #000)}button.danger-ghost{color:var(--danger);background:0 0}button.danger-ghost:hover:not(:disabled){background:var(--danger-soft)}button.small,.button.small{height:32px;padding:0 var(--space-3);font-size:var(--text-sm)}button.icon{width:32px;height:32px;padding:0}button.link{height:auto;color:var(--accent);background:0 0;padding:0;font-weight:550}button.link:hover:not(:disabled){background:0 0;text-decoration:underline}button.block{width:100%}input,select,textarea{font:var(--text-md) / 1.4 var(--font);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;min-width:0;transition:border-color .15s,box-shadow .15s}input,select{height:var(--control-height);padding:0 var(--space-3)}textarea{padding:var(--space-3);font-family:var(--font-mono);font-size:var(--text-sm);resize:vertical;line-height:1.6}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.8}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:var(--focus);outline:none}input[type=number]{width:80px}.field{gap:var(--space-2);font-size:var(--text-sm);font-weight:600;display:grid}.field .hint{color:var(--muted);font-weight:400}.check{align-items:center;gap:var(--space-2);font-size:var(--text-sm);cursor:pointer;font-weight:600;display:inline-flex}.check input[type=checkbox]{width:auto;height:auto;accent-color:var(--accent);box-shadow:none;margin:0}.check .hint{color:var(--muted);font-weight:400}.form-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end;display:grid}.inline-form{gap:var(--space-3);flex-wrap:wrap;display:flex}.inline-form>input,.inline-form>select{flex:200px;width:auto}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--space-5);gap:var(--space-4);align-content:start;display:grid}.panel.flush{gap:0;padding:0;overflow:hidden}.panel-head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.panel.flush>.panel-head{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.panel-head p{color:var(--muted);font-size:var(--text-sm);margin-top:var(--space-1)}@media (width<=640px){.panel{padding:var(--space-4)}.panel.flush>.panel-head{padding:var(--space-3) var(--space-4)}}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--text-md)}th{text-align:left;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--surface-2);font-weight:650}th,td{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border);vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:color-mix(in srgb, var(--surface-2) 55%, transparent)}td.num,th.num{text-align:right}td .secondary-text{overflow-wrap:anywhere;color:var(--muted);font-size:var(--text-sm);display:block}@media (width<=640px){th,td{padding:var(--space-3) var(--space-4)}}.badge{align-items:center;gap:var(--space-1);height:24px;padding:0 var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-xs);white-space:nowrap;background:var(--surface-2);color:var(--muted);font-weight:650;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge.success,.badge.ok{background:var(--success-soft);color:var(--success)}.badge.warning{background:var(--warning-soft);color:var(--warning)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.badge.accent{background:var(--accent-soft);color:var(--accent)}.chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{height:32px;padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--surface);color:var(--text);border:1px solid var(--border-strong);font-size:var(--text-sm);font-weight:550}.chip:hover:not(:disabled){background:var(--surface-2)}.chip.active,.chip.active:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--text)}.notice{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap;display:flex}.notice>p{flex:240px}.notice.info{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 30%, transparent)}.notice.success{background:var(--success-soft);border-color:color-mix(in srgb, var(--success) 30%, transparent)}.notice.warning{background:var(--warning-soft);border-color:color-mix(in srgb, var(--warning) 30%, transparent)}.notice.error{color:var(--text);background:var(--danger-soft);border-color:color-mix(in srgb, var(--danger) 35%, transparent)}.copy-field{gap:var(--space-2);width:100%;display:flex}.copy-field input{font-family:var(--font-mono);font-size:var(--text-sm)}.empty-state{justify-items:center;gap:var(--space-3);text-align:center;padding:var(--space-7) var(--space-5);color:var(--muted);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);display:grid}.empty-state h2{color:var(--text)}.issues{padding-left:var(--space-5);gap:var(--space-1);color:var(--danger);margin:0;display:grid}.list{margin:0;padding:0;list-style:none;display:grid}.list li{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:52px;padding:var(--space-2) 0;border-bottom:1px solid var(--border);display:flex}.list li:last-child{border-bottom:0}.panel.flush .list li{padding:var(--space-2) var(--space-5)}.list a{font-weight:600;text-decoration:none}.list a:hover{text-decoration:underline}.stats{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);gap:var(--space-1);display:grid}.stat .label{font-size:var(--text-sm);color:var(--muted)}.stat .value{letter-spacing:-.02em;font-size:28px;font-weight:750}.legal{max-width:var(--page-width);padding:var(--space-5) var(--page-gutter);font-size:var(--text-xs);color:var(--muted);border-top:1px solid var(--border);margin:0 auto}.auth{align-content:center;place-items:center;gap:var(--space-5);min-height:100vh;padding:var(--space-6) var(--page-gutter);display:grid}.auth-card{gap:var(--space-5);width:min(400px,100%);padding:var(--space-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);display:grid}.auth-card header{justify-items:center;gap:var(--space-2);text-align:center;display:grid}.auth-card header .brand-mark{width:44px;height:44px}.auth-card header p{color:var(--muted)}.auth-card form{gap:var(--space-4);display:grid}.auth .legal{text-align:center;border-top:0;max-width:560px;padding:0}.panel-pad{padding:var(--space-4) var(--space-5)}select.compact{width:auto;height:32px;font-size:var(--text-sm)}.stepper{align-items:center;gap:var(--space-2);display:inline-flex}.stepper .count{text-align:center;font-variant-numeric:tabular-nums;min-width:24px;font-weight:650}.facts{gap:var(--space-2) var(--space-4);grid-template-columns:auto 1fr;margin:0;display:grid}.facts dt{color:var(--muted)}.facts dd{margin:0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}label.button{position:relative}label.button.disabled{opacity:.45;pointer-events:none}@media (width<=640px){.hide-sm{display:none}}.deck-editor{gap:var(--space-5);grid-template-columns:minmax(220px,300px) minmax(0,1fr);align-items:start;display:grid}@media (width<=860px){.deck-editor{grid-template-columns:1fr}}.deck-picker li button.link{text-align:left}.deck-picker li.selected{background:var(--accent-soft)}.coverage-bar{border-radius:var(--radius-pill);background:var(--surface-2);height:8px;overflow:hidden}.coverage-bar span{background:var(--success);height:100%;display:block}.row-editor td{background:var(--surface-2)}fieldset.chips{border:0;min-width:0;margin:0;padding:0}
