:root{--color-bg:#0b0d12;--color-surface:#14171f;--color-surface-raised:#1b1f2a;--color-border:#262b38;--color-text:#e8e9ee;--color-text-muted:#9298a8;--color-accent:#f472b6;--color-accent-strong:#ec4899;--color-accent-contrast:#1a0f16;--color-ok:#34d399;--color-degraded:#fbbf24;--color-failed:#f87171;--color-unknown:#9298a8;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:40px;color-scheme:dark}*{box-sizing:border-box}body,html{padding:0;margin:0}body{background:var(--color-bg);color:var(--color-text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0 0 var(--space-3) 0;font-weight:600}h1{font-size:1.75rem}h2{font-size:1.25rem}h3{font-size:1rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:2px 6px;font-size:.9em}::selection{background:var(--color-accent);color:var(--color-accent-contrast)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface-raised);color:var(--color-text);font-size:.9rem;font-weight:500;cursor:pointer}.btn:hover{border-color:var(--color-accent)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-contrast)}.btn-primary:hover{background:var(--color-accent-strong);border-color:var(--color-accent-strong)}.btn-ghost{background:transparent}.btn-danger{background:var(--color-failed);border-color:var(--color-failed);color:#2a0d0d}.btn-small{padding:var(--space-1) var(--space-2);font-size:.8rem}input,select{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);padding:var(--space-2);font-size:.9rem;font-family:inherit}label{display:flex;flex-direction:column;font-size:.85rem;color:var(--color-text-muted)}.pill,label{gap:var(--space-1)}.pill{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.pill-ok{background:color-mix(in srgb,var(--color-ok) 18%,transparent);color:var(--color-ok)}.pill-degraded{background:color-mix(in srgb,var(--color-degraded) 18%,transparent);color:var(--color-degraded)}.pill-error,.pill-failed{background:color-mix(in srgb,var(--color-failed) 18%,transparent);color:var(--color-failed)}.pill-unknown{background:color-mix(in srgb,var(--color-unknown) 18%,transparent);color:var(--color-unknown)}.badge{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--color-border);font-size:.75rem;color:var(--color-text-muted)}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table td,.data-table th{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);white-space:nowrap}.data-table th{color:var(--color-text-muted);font-weight:500;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.data-table tbody tr:hover{background:var(--color-surface-raised)}.table-scroll{overflow-x:auto}.page-stack{display:flex;flex-direction:column;gap:var(--space-5)}.fine-print{color:var(--color-text-muted);font-size:.8rem}.form-error{color:var(--color-failed);font-size:.9rem}.public-landing{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);text-align:center;padding:var(--space-4)}.status-line{color:var(--color-text-muted)}.admin-link{margin-top:var(--space-3)}.auth-page{min-height:100dvh;justify-content:center;padding:var(--space-4)}.auth-card,.auth-page{display:flex;align-items:center}.auth-card{width:100%;max-width:360px;flex-direction:column;gap:var(--space-3);text-align:center}.admin-shell{min-height:100dvh;display:grid;grid-template-columns:220px 1fr}.admin-nav{background:var(--color-surface);border-right:1px solid var(--color-border);padding:var(--space-4) var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.admin-nav-brand{font-weight:700;color:var(--color-accent);margin-bottom:var(--space-3);font-size:1.1rem}.nav-link{color:var(--color-text-muted);padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm)}.nav-link:hover{color:var(--color-text);text-decoration:none}.nav-link-active,.nav-link:hover{background:var(--color-surface-raised)}.nav-link-active{color:var(--color-accent)}.admin-main{display:flex;flex-direction:column;min-width:0}.admin-header{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}.admin-username{color:var(--color-text-muted);font-size:.9rem}.admin-content{padding:var(--space-4);flex:1 1;min-width:0}.status-panel{display:flex;flex-direction:column;gap:var(--space-2)}.status-row{display:grid;grid-template-columns:1fr auto auto 2fr auto;align-items:center;grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.status-name{font-weight:500}.status-detail{color:var(--color-text-muted);font-size:.85rem}.status-checked-at{color:var(--color-text-muted);font-size:.75rem;white-space:nowrap}.stat-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.stat-tile{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-1)}.stat-value{font-size:1.75rem;font-weight:700}.stat-label{color:var(--color-text-muted);font-size:.8rem}.token-create{flex-direction:column}.inline-form,.token-create{display:flex;gap:var(--space-3)}.inline-form{align-items:flex-end}.inline-form label{flex:1 1;max-width:320px}.token-reveal{border:1px solid var(--color-accent);border-radius:var(--radius-md);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);background:color-mix(in srgb,var(--color-accent) 8%,var(--color-surface))}.token-reveal-warning{color:var(--color-accent);font-size:.85rem;font-weight:500}.token-reveal-value{word-break:break-all;font-size:.95rem}.confirm-delete{display:inline-flex;gap:var(--space-2)}.filter-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.tool-bars{display:flex;flex-direction:column;gap:var(--space-2)}.tool-bar-row{display:grid;grid-template-columns:140px 1fr 48px;align-items:center;grid-gap:var(--space-3);gap:var(--space-3)}.tool-bar-label{font-size:.85rem;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-bar-track{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);height:10px;overflow:hidden}.tool-bar-fill{height:100%;background:var(--color-accent)}.tool-bar-count{font-size:.85rem;text-align:right}.pagination{display:flex;align-items:center;gap:var(--space-3);font-size:.85rem;color:var(--color-text-muted)}.pagination a[aria-disabled=true]{pointer-events:none;opacity:.4}@media (max-width:720px){.admin-shell{grid-template-columns:1fr;grid-template-rows:auto 1fr}.admin-nav{flex-direction:row;align-items:center;overflow-x:auto;border-right:none;border-bottom:1px solid var(--color-border);padding:var(--space-2) var(--space-3)}.admin-nav-brand{margin-bottom:0;margin-right:var(--space-3)}.status-row{grid-template-columns:1fr;gap:var(--space-1)}.inline-form{flex-direction:column;align-items:stretch}.inline-form label{max-width:none}}