:root{--navy:#00003a;--cy:#3adbed;--bg:#EDF0F8;--surface:#fff;--ink:#0B0C3D;--mute:#565F82;--line:#D5DAEB;--acc:#00748D;--pri-bg:var(--navy);--pri-fg:var(--cy);--ok:#1E7A4C;--warn:#965800;--bad:#B3322A}
@media(prefers-color-scheme:dark){:root{--bg:#00012B;--surface:#0A0C4D;--ink:#E7ECFA;--mute:#9AA3C9;--line:#1E2266;--acc:#3adbed;--pri-bg:var(--cy);--pri-fg:var(--navy);--ok:#5CD6A0;--warn:#F0B54A;--bad:#FF8A7A}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 Manrope,system-ui,sans-serif}
h1,h2,h3,.stat b,.tot{font-family:Unbounded,Manrope,system-ui,sans-serif;margin:0}
h2{font-size:1rem;font-weight:700;margin-bottom:12px}
h3{font-size:.95rem;margin:0 0 8px}
header{background:var(--navy);padding:14px 20px 0}
.top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.logo{height:38px;width:auto;display:block}
.who{display:flex;gap:10px;align-items:center;color:#9fb0e0;font-size:.9rem}
nav{display:flex;gap:4px;overflow-x:auto}
nav a{color:#9fb0e0;text-decoration:none;font-weight:600;padding:8px 14px;border-bottom:3px solid transparent;white-space:nowrap}
nav a[aria-current="true"]{color:var(--cy);border-bottom-color:var(--cy)}
main{max-width:1000px;margin:0 auto;padding:20px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.stat,.panel{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:14px}
.stat b{display:block;font-size:1.25rem;font-weight:700;margin-top:2px}
.stat span{color:var(--mute);font-size:.88rem}
.panel{margin-top:16px;padding:16px}
.login{max-width:420px;margin:40px auto}
.tw{overflow-x:auto}
table{width:100%;border-collapse:collapse}
th,td{padding:8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{font-weight:700;color:var(--mute);font-size:.82rem;white-space:nowrap}
.r{text-align:right}
small{color:var(--mute)}
input,select,textarea{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--line);border-radius:4px;padding:8px;width:100%}
label{display:block;font-size:.85rem;color:var(--mute);margin-top:8px}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;align-items:end}
.row label{margin-top:0}
.chk{display:flex;gap:8px;align-items:center;color:var(--ink);font-size:1rem}
.chk input{width:auto}
button,.btn{font:inherit;font-weight:600;cursor:pointer;border-radius:4px;border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:7px 12px;text-decoration:none;display:inline-block}
button:hover,.btn:hover{border-color:var(--acc)}
.pri{background:var(--pri-bg);color:var(--pri-fg);border-color:var(--pri-bg);font-weight:700}
.bad{color:var(--bad)}
.sm{padding:3px 9px;font-size:.9rem}
button.sm.bad{color:var(--bad)}
a{color:var(--acc)}
:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.tag{padding:1px 8px;border-radius:10px;font-size:.8rem;border:1px solid currentColor;white-space:nowrap}
.ok{color:var(--ok)}.warn{color:var(--warn)}
.empty{color:var(--mute);padding:8px 0}
.tot{font-size:1.1rem;font-weight:700;margin:12px 0}
.acts{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.inl{display:inline}
.search{display:flex;gap:8px;margin-bottom:12px}
.flash{padding:10px 14px;border-radius:6px;margin-bottom:12px;border:1px solid var(--line);background:var(--surface)}
.flash.ok{border-color:var(--ok);color:var(--ok)}
.flash.err{border-color:var(--bad);color:var(--bad)}
.banner{border:2px solid var(--ink);padding:8px;text-align:center;font-weight:700;margin:8px 0}
[hidden]{display:none!important}

.meter{height:14px;border-radius:7px;background:var(--line);overflow:hidden;margin:6px 0 10px}.meter i{display:block;height:100%;background:var(--ok)}.meter i.warn{background:var(--warn)}.meter i.bad{background:var(--bad)}

@media(max-width:640px){
main{padding:12px}
header{padding:10px 12px 0}
.logo{height:30px}
.panel,.stat{padding:12px}
nav a{padding:8px 10px}
.acts>.btn,.acts>button,.acts>form,.acts>form>button{flex:1 1 auto;text-align:center}
button,.btn{padding:10px 14px}
.sm{padding:6px 10px}
th,td{padding:6px 5px;font-size:.92rem}
.who span{display:none}
}
