*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;color:var(--text);font:400 1rem/1.6 var(--font);
background:radial-gradient(1200px 700px at 12% -10%,var(--bg3),transparent 60%),radial-gradient(900px 600px at 100% 20%,#3b6dff,transparent 55%),linear-gradient(160deg,var(--bg1),var(--bg2));background-attachment:fixed}
body::before,body::after{content:"";position:fixed;z-index:-1;border-radius:50%;filter:blur(70px);opacity:.55;pointer-events:none}
body::before{width:380px;height:380px;background:#22d3ee;top:55%;left:-120px}
body::after{width:320px;height:320px;background:var(--accent);opacity:.3;top:8%;right:-90px}
h1,h2,h3{line-height:1.12;margin:0;font-weight:700;letter-spacing:-.01em}
a{color:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.glass{background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--r);
-webkit-backdrop-filter:blur(var(--blur)) saturate(160%);backdrop-filter:blur(var(--blur)) saturate(160%);
box-shadow:0 10px 40px rgba(2,12,40,.35),inset 0 1px 0 rgba(255,255,255,.25)}
.glass.strong{background:var(--glass-strong)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.glass{background:rgba(12,36,92,.92)}}
@media (prefers-reduced-transparency:reduce){.glass{background:rgba(12,36,92,.95);backdrop-filter:none;-webkit-backdrop-filter:none}}
.btn{display:inline-block;border:1px solid var(--glass-line);background:var(--glass-strong);color:var(--text);padding:.7rem 1.2rem;border-radius:12px;font:600 .95rem var(--font);cursor:pointer;text-decoration:none}
.btn:hover{background:rgba(255,255,255,.3)}
.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:transparent}.btn.primary:hover{filter:brightness(1.08)}
.btn.sm{padding:.35rem .7rem;font-size:.85rem}
.input,select,textarea{width:100%;font:inherit;color:var(--text);background:rgba(255,255,255,.1);border:1px solid var(--glass-line);border-radius:12px;padding:.7rem .85rem}
select option{color:#111}.input::placeholder,textarea::placeholder{color:var(--mute)}
label{display:grid;gap:.3rem;font-weight:600;font-size:.92rem}
.table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.table th{text-align:left;color:var(--mute);font-weight:600;font-size:.85rem}
.table th,.table td{padding:.6rem .7rem;border-bottom:1px solid rgba(255,255,255,.14)}
.badge{display:inline-block;padding:.1rem .6rem;border-radius:99px;font-size:.8rem;background:rgba(255,255,255,.18)}
.badge.ok{background:rgba(89,232,174,.2);color:var(--ok)}.badge.bad{background:rgba(255,138,152,.2);color:var(--bad)}
.muted{color:var(--mute)}.stack{display:grid;gap:1rem}.row{display:flex;gap:.75rem;flex-wrap:wrap;align-items:end}
.scroll-x{overflow-x:auto}
