:root{--bg0: #070b14;--bg1: #0e1626;--bg2: #152238;--line: #24324a;--text: #e8eefc;--muted: #93a0b8;--accent: #3ecf8e;--accent2: #4ea1ff;--danger: #ff6b7a;--warn: #f0b429;--ok: #3ecf8e;--tile: linear-gradient(160deg, rgba(30, 48, 78, .9), rgba(14, 22, 38, .95));--shadow: 0 18px 50px rgba(0, 0, 0, .35);--radius: 18px;--font-display: "Manrope", sans-serif;--font-body: "IBM Plex Sans", sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--text);font-family:var(--font-body);background:radial-gradient(1200px 600px at 10% -10%,rgba(78,161,255,.18),transparent 55%),radial-gradient(900px 500px at 90% 0%,rgba(62,207,142,.12),transparent 50%),linear-gradient(180deg,var(--bg0),#0a1220 40%,#08101a)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer;border:0;border-radius:12px;padding:.7rem 1rem;background:linear-gradient(135deg,var(--accent),#2aa86f);color:#04140c;font-weight:700}button.secondary{background:transparent;color:var(--text);border:1px solid var(--line)}button.danger{background:linear-gradient(135deg,#ff6b7a,#d9485f);color:#fff}button:disabled{opacity:.5;cursor:not-allowed}input,select{width:100%;background:#0a1322;border:1px solid var(--line);color:var(--text);border-radius:12px;padding:.75rem .9rem}.shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.sidebar{padding:1.4rem 1rem;border-right:1px solid rgba(36,50,74,.8);background:#070b14b8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.brand{font-family:var(--font-display);font-weight:700;font-size:1.35rem;letter-spacing:-.03em;margin:.2rem 0 1.2rem}.brand span{color:var(--accent)}.nav a{display:block;padding:.65rem .8rem;border-radius:12px;color:var(--muted);margin-bottom:.25rem}.nav a.active,.nav a:hover{background:#4ea1ff1f;color:var(--text)}.content{padding:1.5rem}.topbar{display:flex;gap:1rem;align-items:center;justify-content:space-between;margin-bottom:1.2rem}.topbar h1{font-family:var(--font-display);font-size:1.6rem;margin:0;letter-spacing:-.03em}.search{max-width:360px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.tile{background:var(--tile);border:1px solid rgba(78,161,255,.12);border-radius:var(--radius);padding:1rem 1.1rem;box-shadow:var(--shadow);animation:rise .45s ease both}.tile h3{margin:0 0 .35rem;font-size:.92rem;color:var(--muted);font-weight:500}.tile .value{font-family:var(--font-display);font-size:1.7rem;font-weight:700}.tile .hint{color:var(--muted);font-size:.85rem;margin-top:.35rem}.status-ok{color:var(--ok)}.status-bad{color:var(--danger)}.status-warn{color:var(--warn)}.panel{background:#0e1626e0;border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem;margin-top:1rem;box-shadow:var(--shadow)}.row{display:flex;gap:.75rem;flex-wrap:wrap;align-items:end}.row>*{flex:1;min-width:160px}label{display:block;font-size:.85rem;color:var(--muted);margin-bottom:.35rem}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:.7rem .5rem;border-bottom:1px solid var(--line);font-size:.92rem}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:1rem}.login-card{width:min(420px,100%);background:#0e1626eb;border:1px solid var(--line);border-radius:24px;padding:1.6rem;box-shadow:var(--shadow);animation:rise .5s ease both}.login-card h1{font-family:var(--font-display);margin:0 0 .3rem}.muted{color:var(--muted)}.error{background:#ff6b7a1f;border:1px solid rgba(255,107,122,.35);color:#ffd0d5;padding:.7rem .8rem;border-radius:12px;margin:.8rem 0}.okbox{background:#3ecf8e1a;border:1px solid rgba(62,207,142,.3);padding:.7rem .8rem;border-radius:12px;margin:.8rem 0}pre{white-space:pre-wrap;word-break:break-word;background:#071018;border-radius:12px;padding:.8rem;border:1px solid var(--line);max-height:360px;overflow:auto}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (max-width: 900px){.shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.nav{display:flex;flex-wrap:wrap;gap:.3rem}}
