:root{color-scheme:light;--navy:#092446;--navy2:#123b6a;--blue:#246bce;--ice:#eef5ff;--ink:#132033;--muted:#65748a;--line:#dbe5f1;--ok:#167c52;--warn:#a66300;--bad:#b42318;--card:#fff;--shadow:0 10px 30px rgba(9,36,70,.08)}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f4f7fb;color:var(--ink)}body{margin:0}a{color:inherit}.shell{min-height:100vh}.topbar{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;padding:18px clamp(18px,4vw,52px);display:flex;gap:24px;align-items:center;justify-content:space-between;box-shadow:var(--shadow)}.brand{display:flex;gap:12px;align-items:center}.brand-mark{width:42px;height:42px;border-radius:13px;background:#fff;color:var(--navy);display:grid;place-items:center;font-weight:900;letter-spacing:-1px}.brand strong{display:block}.brand small{color:#cfe2ff}.userbox{display:flex;align-items:center;gap:14px;font-size:.9rem}.userbox form{margin:0}.btn{appearance:none;border:0;border-radius:10px;padding:10px 15px;background:var(--blue);color:#fff;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn.secondary{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.24)}.main{max-width:1260px;margin:0 auto;padding:28px clamp(16px,4vw,42px) 56px}.hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.hero h1{margin:0;font-size:clamp(1.65rem,3vw,2.25rem);letter-spacing:-.04em}.hero p{margin:7px 0 0;color:var(--muted)}.filters{background:var(--card);padding:16px;border:1px solid var(--line);border-radius:16px;display:flex;gap:12px;align-items:end;flex-wrap:wrap;box-shadow:var(--shadow);margin-bottom:20px}.field{display:grid;gap:6px;min-width:150px}.field label{font-size:.78rem;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.field input,.field select{height:42px;border:1px solid #cbd8e8;border-radius:10px;padding:0 11px;background:#fff;color:var(--ink)}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.card,.panel{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.card{padding:20px}.card span{display:block;color:var(--muted);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.card strong{display:block;font-size:2rem;margin-top:8px;letter-spacing:-.04em}.card small{color:var(--muted)}.grid{display:grid;grid-template-columns:1.4fr 1fr;gap:20px}.panel{padding:20px;margin-bottom:20px;overflow:hidden}.panel h2{font-size:1.05rem;margin:0 0 16px}.chart{width:100%;height:auto;display:block}.chart text{font-size:10px;fill:#65748a}.chart .bar{fill:#246bce}.chart .gridline{stroke:#dbe5f1;stroke-width:1}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:720px}.table th,.table td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:.88rem;vertical-align:middle}.table th{color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.badge{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:.75rem;font-weight:800;background:#edf2f8;color:#526175}.badge.ok{background:#e6f7ef;color:var(--ok)}.badge.bad{background:#ffebe9;color:var(--bad)}.badge.warn{background:#fff3dc;color:var(--warn)}.empty{padding:52px 24px;text-align:center;background:linear-gradient(180deg,#fff,var(--ice));border:1px dashed #b8cbe2;border-radius:16px}.empty-icon{width:58px;height:58px;border-radius:18px;margin:0 auto 16px;background:#dceaff;color:var(--blue);display:grid;place-items:center;font-size:1.6rem}.empty h2{margin:0 0 8px}.empty p{max-width:560px;margin:0 auto;color:var(--muted)}.login-page{min-height:100vh;background:radial-gradient(circle at 20% 0,#275f9d 0,var(--navy) 42%,#06172e 100%);display:grid;place-items:center;padding:24px}.login-card{width:min(440px,100%);background:#fff;border-radius:22px;padding:34px;box-shadow:0 24px 80px rgba(0,0,0,.32)}.login-card .brand{color:var(--ink);margin-bottom:30px}.login-card .brand small{color:var(--muted)}.login-card h1{margin:0 0 8px}.login-card>p{margin:0 0 24px;color:var(--muted)}.login-card .field{margin-bottom:15px}.login-card input{height:48px}.login-card .btn{width:100%;height:48px;margin-top:4px}.alert{padding:12px 14px;border-radius:10px;background:#ffebe9;color:var(--bad);margin-bottom:16px;font-size:.9rem}.footnote{color:var(--muted);font-size:.78rem;text-align:center;margin-top:22px}.technical{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.tech-item{padding:14px;border:1px solid var(--line);border-radius:12px}.tech-item span{display:block;color:var(--muted);font-size:.78rem}.tech-item strong{display:block;margin-top:5px}.muted{color:var(--muted)}
@media(max-width:900px){.cards{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}.technical{grid-template-columns:1fr}.topbar{align-items:flex-start}.userbox{align-items:flex-end;flex-direction:column}.hero{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.cards{grid-template-columns:1fr}.topbar{padding:15px}.brand small,.userbox>span{display:none}.main{padding-top:20px}.login-card{padding:26px 22px}.filters .field,.filters .btn{width:100%}}
