:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#0b0d12;--color-surface:#12151c;--color-surface-2:#181c25;--color-surface-3:#1f2430;--color-border:#262c3a;--color-border-strong:#343b4d;--color-fg:#e8eaf0;--color-muted:#a3acbb;--color-subtle:#7d8698;--color-accent:#7b93ff;--color-accent-strong:#5f7bff;--color-accent-soft:#7b93ff24;--color-success:#3ccf91;--color-success-soft:#3ccf911f;--color-warning:#f2b84b;--color-warning-soft:#f2b84b1f;--color-danger:#ff6b7a;--color-danger-soft:#ff6b7a1f;--radius:12px;--radius-small:8px;--shadow:0 1px 0 #ffffff08 inset, 0 8px 24px #00000059;--focus:0 0 0 3px #7b93ff73;--font:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace;--sidebar-width:15rem}*,:before,:after{box-sizing:border-box}html,body{margin:0}body{background:var(--color-bg);min-height:100dvh;color:var(--color-fg);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.5}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{box-shadow:var(--focus);border-radius:var(--radius-small);outline:none}h1,h2,h3{letter-spacing:-.01em;margin:0;font-weight:650;line-height:1.25}h1{font-size:clamp(1.4rem,3vw,1.75rem)}h2{font-size:1.1rem}h3{font-size:.95rem}p{margin:0}.muted{color:var(--color-muted)}.subtle{color:var(--color-subtle);font-size:.875rem}.mono{font-family:var(--font-mono);font-size:.875rem}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.brand{letter-spacing:.02em;color:var(--color-fg);align-items:center;gap:.6rem;font-weight:700;display:inline-flex}.brand-mark{background:linear-gradient(135deg,#7b93ff 0%,#a978ff 55%,#ff8fb1 100%);border-radius:8px;width:1.75rem;height:1.75rem;box-shadow:0 4px 14px #7b93ff59}.brand small{letter-spacing:.08em;text-transform:uppercase;color:var(--color-subtle);font-size:.72rem;font-weight:500;display:block}.stack{gap:1rem;display:grid}.stack-small{gap:.5rem;display:grid}.stack>*,.stack-small>*,.grid-2>*{min-width:0}.table-scroll{overflow-x:auto}.row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem}.card-header{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.9rem;display:flex}.field{gap:.35rem;display:grid}.label{font-size:.875rem;font-weight:600}.input,.select,.textarea{border-radius:var(--radius-small);border:1px solid var(--color-border-strong);background:var(--color-surface-2);width:100%;min-height:2.75rem;color:var(--color-fg);font:inherit;padding:.6rem .8rem}.textarea{resize:vertical;min-height:6rem}.input:focus,.select:focus,.textarea:focus{border-color:var(--color-accent);box-shadow:var(--focus);outline:none}.input[aria-invalid=true]{border-color:var(--color-danger)}.hint{color:var(--color-subtle);font-size:.8rem}.button{border-radius:var(--radius-small);min-height:2.75rem;font:inherit;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.55rem 1.1rem;font-weight:600;text-decoration:none;transition:background .12s,border-color .12s;display:inline-flex}.button:hover{text-decoration:none}.button:disabled{opacity:.55;cursor:not-allowed}.button-primary{background:var(--color-accent-strong);color:#fff}.button-primary:hover:not(:disabled){background:var(--color-accent)}.button-secondary{background:var(--color-surface-3);border-color:var(--color-border-strong);color:var(--color-fg)}.button-secondary:hover:not(:disabled){border-color:var(--color-accent)}.button-ghost{color:var(--color-muted);background:0 0}.button-ghost:hover:not(:disabled){color:var(--color-fg);background:var(--color-surface-2)}.button-danger{background:var(--color-danger-soft);color:var(--color-danger);border-color:#ff6b7a66}.button-block{width:100%}.alert{border-radius:var(--radius-small);border:1px solid var(--color-border);background:var(--color-surface-2);padding:.75rem .9rem;font-size:.9rem}.alert-error{background:var(--color-danger-soft);color:#ffc2c8;border-color:#ff6b7a66}.alert-success{background:var(--color-success-soft);color:#b6f0d6;border-color:#3ccf9159}.alert-warning{background:var(--color-warning-soft);color:#f8dca4;border-color:#f2b84b66}.alert-info{background:var(--color-accent-soft);color:#cdd6ff;border-color:#7b93ff59}.badge{background:var(--color-surface-3);color:var(--color-muted);border:1px solid var(--color-border);white-space:nowrap;border-radius:999px;align-items:center;gap:.3rem;padding:.15rem .55rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-success{color:var(--color-success);background:var(--color-success-soft);border-color:#3ccf914d}.badge-warning{color:var(--color-warning);background:var(--color-warning-soft);border-color:#f2b84b4d}.badge-danger{color:var(--color-danger);background:var(--color-danger-soft);border-color:#ff6b7a4d}.badge-accent{color:var(--color-accent);background:var(--color-accent-soft);border-color:#7b93ff4d}.badge-test{color:#f8dca4;background:var(--color-warning-soft);text-transform:uppercase;letter-spacing:.06em;border-color:#f2b84b59}.code-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.code-grid li{border-radius:var(--radius-small);background:var(--color-surface-2);border:1px solid var(--color-border);font-family:var(--font-mono);text-align:center;padding:.45rem .6rem}.table{border-collapse:collapse;width:100%;font-size:.9rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--color-border);vertical-align:top;padding:.65rem .5rem}.table th{color:var(--color-subtle);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:600}.empty{text-align:center;color:var(--color-subtle);border:1px dashed var(--color-border-strong);border-radius:var(--radius);padding:1.5rem 1rem}.auth-layout{background:radial-gradient(1200px 600px at 10% -10%, #7b93ff1f, transparent 60%), radial-gradient(900px 500px at 110% 110%, #a978ff1a, transparent 60%), var(--color-bg);place-items:center;min-height:100dvh;padding:2rem 1rem;display:grid}.auth-card{gap:1.5rem;width:min(100%,26rem);display:grid}.auth-card .card{padding:1.5rem}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100dvh;display:grid}.sidebar{border-right:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;gap:1.5rem;height:100dvh;padding:1.25rem .9rem;display:flex;position:sticky;top:0}.nav{gap:.2rem;display:grid}.nav-link{border-radius:var(--radius-small);color:var(--color-muted);align-items:center;gap:.6rem;padding:.55rem .7rem;font-weight:550;display:flex}.nav-link:hover{background:var(--color-surface-2);color:var(--color-fg);text-decoration:none}.nav-link[aria-current=page]{background:var(--color-accent-soft);color:var(--color-fg)}.nav-icon{flex:none;width:1.1rem;height:1.1rem}.sidebar-footer{border-top:1px solid var(--color-border);gap:.6rem;margin-top:auto;padding-top:1rem;display:grid}.main{min-width:0;padding:2rem clamp(1rem,3vw,2.5rem) 3rem}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;display:flex}.content{max-width:72rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:1rem;display:grid}.mobile-topbar,.mobile-nav{display:none}@media (max-width:767px){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.mobile-topbar{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border);background:#0b0d12eb;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex;position:sticky;top:0}.mobile-nav{z-index:10;padding:.35rem .5rem calc(.35rem + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--color-border);background:#12151cf5;grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;inset:auto 0 0}.mobile-nav .nav-link{flex-direction:column;justify-content:center;gap:.15rem;padding:.4rem .2rem;font-size:.72rem}.main{padding:1.25rem 1rem calc(5.5rem + env(safe-area-inset-bottom))}.code-grid{grid-template-columns:minmax(0,1fr)}}
