:root{--bg:#0e0e10;--surface:#161618;--surface-2:#1e1e21;--surface-3:#26262a;--sidebar:#101012;--border:#2a2a2e;--border-soft:#212125;--text:#e8e8ea;--text-2:#b3b3ba;--text-3:#6e6e76;--accent:#8ab4f8;--accent-soft:#8ab4f824;--accent-strong:#0b1c3d;--green:#81c995;--green-soft:#81c9951f;--amber:#fdd663;--amber-soft:#fdd6631f;--red:#f28b82;--red-soft:#f28b821f;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--font-body:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--bg-elev:var(--surface);--bg-card:var(--surface);--bg-hover:var(--surface-2);--text-muted:var(--text-2);--text-dim:var(--text-3);--accent-text:var(--accent);--primary:var(--accent);--primary-light:var(--accent);--font-heading:var(--font-body);--shadow-sm:none;--shadow-md:none;--shadow-lg:none}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.55}a{color:inherit;text-decoration:none}h1,h2,h3,h4{letter-spacing:-.01em;font-weight:500}.btn{border-radius:var(--radius-md);font-family:var(--font-body);cursor:pointer;background:var(--surface-2);color:var(--text);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:500;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.btn:hover{background:var(--surface-3)}.btn.primary,.btn-primary{background:var(--accent);color:var(--accent-strong);font-weight:600}.btn.primary:hover,.btn-primary:hover{background:#a3c3fa}.btn.tonal{background:var(--accent-soft);color:var(--accent)}.btn.tonal:hover{background:#8ab4f838}.btn.ghost,.btn-outlined{border-color:var(--border);color:var(--text);background:0 0}.btn.ghost:hover,.btn-outlined:hover{background:var(--surface-2)}.btn.text{color:var(--accent);background:0 0;padding:8px 12px}.btn.text:hover{background:var(--accent-soft)}.btn.sm{padding:5px 12px;font-size:13px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:disabled:hover{background:var(--surface-2)}.btn.primary:disabled:hover,.btn-primary:disabled:hover{background:var(--accent)}.input,.select,.textarea{border-radius:var(--radius-md);background:var(--surface);width:100%;color:var(--text);border:1px solid var(--border);padding:9px 12px;font-family:inherit;font-size:14px;transition:border-color .12s}.input::placeholder,.textarea::placeholder{color:var(--text-3)}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);outline:none}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%236e6e76' fill='none' stroke-width='1.5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:30px}.textarea{resize:vertical;min-height:90px;line-height:1.55}.field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.field label{color:var(--text-2);font-size:12px;font-weight:500}.field .hint{color:var(--text-3);font-size:12px;font-weight:400}.card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:20px}table.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);border-bottom:1px solid var(--border);padding:10px 14px;font-size:11px;font-weight:500}.table td{border-bottom:1px solid var(--border-soft);vertical-align:middle;padding:12px 14px}.table tbody tr{transition:background .1s}.table tbody tr:hover{background:var(--surface-2)}.table tr:last-child td{border-bottom:none}.badge{border:1px solid var(--border);color:var(--text-2);white-space:nowrap;border-radius:100px;align-items:center;padding:2px 9px;font-size:11px;font-weight:500;display:inline-flex}.badge.accent{color:var(--accent);background:var(--accent-soft);border-color:#8ab4f859}.badge.green{color:var(--green);background:var(--green-soft);border-color:#81c9954d}.badge.red{color:var(--red);background:var(--red-soft);border-color:#f28b824d}.badge.amber{color:var(--amber);background:var(--amber-soft);border-color:#fdd6634d}.chip{border:1px solid var(--border);color:var(--text-2);cursor:pointer;background:0 0;border-radius:100px;padding:6px 13px;font-size:13px;transition:all .12s}.chip:hover{border-color:var(--text-3);color:var(--text)}.chip.on{background:var(--accent-soft);color:var(--accent);border-color:#8ab4f866}.switch{flex-shrink:0;width:40px;height:22px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.switch .track{background:var(--surface-3);border:1px solid var(--border);cursor:pointer;border-radius:100px;transition:background .15s;position:absolute;inset:0}.switch .track:after{content:"";background:var(--text-2);border-radius:50%;width:16px;height:16px;transition:transform .15s,background .15s;position:absolute;top:2px;left:2px}.switch input:checked+.track{background:var(--accent);border-color:var(--accent)}.switch input:checked+.track:after{background:var(--accent-strong);transform:translate(18px)}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.page-head h1{margin-bottom:4px;font-size:22px;font-weight:500}.page-head .sub{color:var(--text-2);font-size:14px}.page-head .actions{align-items:center;gap:8px;display:flex}.stat{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);flex-direction:column;gap:2px;padding:16px 18px;display:flex}.stat .num{color:var(--text);font-size:26px;font-weight:500}.stat .num.accent{color:var(--accent)}.stat .lbl{color:var(--text-3);font-size:12px}.err{color:var(--red);margin-bottom:12px;font-size:13px}.ok{color:var(--green);margin-bottom:12px;font-size:13px}.dim{color:var(--text-2)}.faint{color:var(--text-3)}.mono{font-family:var(--font-mono)}.small{font-size:12px}.row{align-items:center;gap:10px;display:flex}.spread{justify-content:space-between;align-items:center;gap:12px;display:flex}.stack{flex-direction:column;gap:8px;display:flex}.link{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:none;padding:0}.link:hover{text-decoration:underline}.divider{background:var(--border-soft);border:none;height:1px;margin:16px 0}.empty{text-align:center;border:1px dashed var(--border);border-radius:var(--radius-lg);color:var(--text-2);padding:48px 24px}.empty h3{color:var(--text);margin-bottom:6px;font-size:16px}.modal-overlay{z-index:200;background:#0009;justify-content:center;align-items:flex-start;padding:80px 20px 20px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:480px;padding:24px}.modal h2{margin-bottom:4px;font-size:18px}.modal .sub{color:var(--text-2);margin-bottom:18px;font-size:13px}.drawer-overlay{z-index:190;background:#00000080;position:fixed;inset:0}.drawer{background:var(--bg);border-left:1px solid var(--border);z-index:195;flex-direction:column;width:min(560px,92vw);display:flex;position:fixed;top:0;bottom:0;right:0}.drawer-head{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.drawer-body{flex:1;padding:20px;overflow-y:auto}.drawer-foot{border-top:1px solid var(--border-soft);gap:8px;padding:14px 20px;display:flex}.shell.svelte-12qhfyh{flex-direction:column;min-height:100vh;display:flex}.topbar.svelte-12qhfyh{border-bottom:1px solid var(--border-soft);-webkit-backdrop-filter:blur(12px);z-index:100;background:#0a0a0ad9;justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex;position:sticky;top:0}.brand.svelte-12qhfyh{letter-spacing:-.02em;color:var(--text);align-items:center;gap:9px;font-size:16px;font-weight:600;display:flex}.brand-logo.svelte-12qhfyh{width:28px;height:28px;display:block}.nav.svelte-12qhfyh{gap:2px;display:flex}.nav.svelte-12qhfyh a:where(.svelte-12qhfyh){color:var(--text-muted);border-radius:8px;padding:6px 12px;font-size:14px;transition:color .12s,background .12s}.nav.svelte-12qhfyh a:where(.svelte-12qhfyh):hover,.nav.svelte-12qhfyh a.active:where(.svelte-12qhfyh){color:var(--text);background:var(--bg-hover)}.nav-cta.svelte-12qhfyh{align-items:center;gap:14px;display:flex}.cta-link.svelte-12qhfyh{color:var(--text-muted);cursor:pointer;font-size:14px;font:inherit;background:0 0;border:none;padding:0;transition:color .12s}.cta-link.svelte-12qhfyh:hover{color:var(--text)}.cta-btn.svelte-12qhfyh{color:#fff;background:var(--accent);border-radius:8px;padding:7px 14px;font-size:13px;font-weight:500;transition:background .12s}.cta-btn.svelte-12qhfyh:hover{background:#3d6bf2}main.svelte-12qhfyh{flex:1;width:100%;max-width:1040px;margin:0 auto;padding:40px 24px 80px}.footer.svelte-12qhfyh{border-top:1px solid var(--border-soft)}.footer-inner.svelte-12qhfyh{flex-wrap:wrap;gap:48px;max-width:1040px;margin:0 auto;padding:44px 24px 28px;display:flex}.footer-brand.svelte-12qhfyh{flex-direction:column;flex:260px;gap:10px;display:flex}.footer-name.svelte-12qhfyh{font-size:16px;font-weight:600}.footer-name.svelte-12qhfyh em:where(.svelte-12qhfyh){color:var(--text-dim);font-size:13px;font-style:normal;font-weight:500}.footer-tag.svelte-12qhfyh{color:var(--text-dim);max-width:280px;font-size:13px;line-height:1.6}.footer-cols.svelte-12qhfyh{flex-wrap:wrap;gap:48px;display:flex}.footer-col.svelte-12qhfyh{flex-direction:column;gap:8px;display:flex}.footer-col.svelte-12qhfyh h4:where(.svelte-12qhfyh){text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);font-size:11px;font-family:var(--font-mono);margin-bottom:6px}.footer-col.svelte-12qhfyh a:where(.svelte-12qhfyh){color:var(--text-muted);font-size:14px;transition:color .12s}.footer-col.svelte-12qhfyh a:where(.svelte-12qhfyh):hover{color:var(--text)}.footer-bottom.svelte-12qhfyh{border-top:1px solid var(--border-soft);max-width:1040px;color:var(--text-dim);flex-wrap:wrap;justify-content:space-between;gap:12px;margin:0 auto;padding:20px 24px;font-size:12px;display:flex}@media (width<=700px){.nav.svelte-12qhfyh a:where(.svelte-12qhfyh){padding:5px 8px;font-size:13px}.cta-link.svelte-12qhfyh{display:none}.topbar.svelte-12qhfyh{padding:0 14px}.footer-inner.svelte-12qhfyh{gap:28px}}
