:root{color-scheme:dark;--bg: #090b10;--bg-glow: radial-gradient(1200px 600px at 85% -10%, rgba(124, 92, 255, .1), transparent 60%), radial-gradient(900px 500px at -10% 110%, rgba(56, 189, 248, .06), transparent 60%);--surface: rgba(20, 23, 32, .72);--surface-solid: #141720;--surface-2: rgba(255, 255, 255, .03);--surface-3: rgba(255, 255, 255, .06);--border: rgba(255, 255, 255, .07);--border-strong: rgba(255, 255, 255, .12);--text: #eef0f6;--text-muted: #a1a7b8;--text-faint: #6b7184;--accent: #7c5cff;--accent-hover: #8f74ff;--accent-soft: rgba(124, 92, 255, .14);--accent-gradient: linear-gradient(135deg, #7c5cff 0%, #4f8cff 100%);--success: #34d399;--success-bg: rgba(52, 211, 153, .12);--warning: #fbbf24;--warning-bg: rgba(251, 191, 36, .12);--danger: #f43f5e;--danger-text: #fb7185;--danger-bg: rgba(244, 63, 94, .1);--info: #60a5fa;--info-bg: rgba(96, 165, 250, .12);--radius-sm: 8px;--radius: 12px;--radius-lg: 16px;--shadow: 0 1px 0 rgba(255, 255, 255, .03) inset, 0 8px 24px rgba(0, 0, 0, .25);--ease: cubic-bezier(.22, 1, .36, 1);--transition: .18s var(--ease);--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{font-family:var(--font);font-feature-settings:"cv11","ss01";background:var(--bg-glow),var(--bg);background-attachment:fixed;color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.5;font-size:14px}button,input,select{font:inherit;color:inherit}a{color:inherit}::selection{background:var(--accent-soft)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.page{padding:2rem 2.25rem 3rem;max-width:1280px;animation:fade-up .26s var(--ease)}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.page-title{font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.page-subtitle{color:var(--text-muted);margin-top:.15rem}.back{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-muted);text-decoration:none;font-size:.85rem;margin-bottom:.75rem}.back:hover{color:var(--text)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);backdrop-filter:blur(12px)}.card-pad{padding:1.25rem 1.4rem}.card-title{font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);margin-bottom:.9rem}.grid{display:grid;gap:1rem}.grid-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.grid-2{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.stack{display:flex;flex-direction:column;gap:1rem}.stat-label{color:var(--text-muted);font-size:.8rem;font-weight:500}.stat-value{font-size:1.9rem;font-weight:700;letter-spacing:-.03em;margin-top:.2rem}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);padding:.75rem 1rem;border-bottom:1px solid var(--border);white-space:nowrap}td{padding:.7rem 1rem;border-bottom:1px solid var(--border);vertical-align:top}tr:last-child td{border-bottom:none}tr.clickable{cursor:pointer;transition:background var(--transition)}tr.clickable:hover td{background:var(--surface-2)}.empty{padding:2.5rem 1rem;text-align:center;color:var(--text-faint)}.toolbar{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}.input,.select{background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:.55rem .8rem;min-width:0;transition:border-color var(--transition),background var(--transition)}.input:focus,.select:focus{outline:none;border-color:var(--accent);background:var(--surface-3)}.select option{background:var(--surface-solid)}.input-wide{width:320px;max-width:100%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid var(--border-strong);background:var(--surface-3);border-radius:var(--radius-sm);padding:.55rem .95rem;font-weight:600;cursor:pointer;transition:background var(--transition),border-color var(--transition)}.btn:hover:not(:disabled){background:#ffffff17}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--accent-gradient);border-color:transparent;color:#fff;box-shadow:0 6px 20px #7c5cff4d}.btn-primary:hover:not(:disabled){filter:brightness(1.08);background:var(--accent-gradient)}.badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:600;padding:.15rem .55rem;border-radius:999px;background:var(--surface-3);color:var(--text-muted);white-space:nowrap}.badge-success{background:var(--success-bg);color:var(--success)}.badge-warning{background:var(--warning-bg);color:var(--warning)}.badge-danger{background:var(--danger-bg);color:var(--danger-text)}.badge-info{background:var(--info-bg);color:var(--info)}.badge-accent{background:var(--accent-soft);color:#b9a8ff}.dot{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block}.muted{color:var(--text-muted)}.faint{color:var(--text-faint)}.mono{font-family:var(--mono);font-size:.85em}.nowrap{white-space:nowrap}.link{color:#b9a8ff;text-decoration:none}.link:hover{text-decoration:underline}.reason{max-width:420px;word-break:break-word}.alert{padding:.75rem 1rem;border-radius:var(--radius-sm);background:var(--danger-bg);color:var(--danger-text);border:1px solid rgba(244,63,94,.25)}.skeleton{border-radius:var(--radius-lg);background:linear-gradient(90deg,var(--surface-2) 0%,var(--surface-3) 50%,var(--surface-2) 100%);background-size:800px 100%;animation:shimmer 1.4s linear infinite}dl.facts{display:grid;grid-template-columns:max-content 1fr;gap:.55rem 1.25rem}dl.facts dt{color:var(--text-faint);font-size:.82rem}dl.facts dd{font-weight:500}@media(max-width:760px){.page{padding:1.25rem 1rem 2rem}.input-wide{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;transition-duration:1ms!important}}
