:root{--nav:#14233a;--ink:#172033;--muted:#6b7280;--bg:#f3f6fa;--line:#e5eaf1;--accent:#1769e0}*{box-sizing:border-box}body{margin:0;font:15px/1.45 system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--ink)}aside{position:fixed;inset:0 auto 0 0;width:245px;background:var(--nav);padding:25px 16px;color:#fff;display:flex;flex-direction:column;z-index:3}.brand{font-size:20px;font-weight:800;letter-spacing:.4px}.brand b{color:#55a5ff}nav{display:grid;gap:6px;margin-top:32px}nav a{color:#cbd5e1;text-decoration:none;padding:11px 13px;border-radius:9px}nav a:hover,nav a.active{background:#233b60;color:#fff}.logout{margin-top:auto;width:100%;background:#263b58}aside form{margin-top:auto}main{margin-left:245px;padding:26px 32px}header{display:flex;align-items:center;gap:12px;margin-bottom:24px}header h1{margin:0;font-size:27px}header p{margin:3px 0;color:var(--muted)}.version{margin-left:auto;background:#e6eefb;color:#235a9f;padding:5px 9px;border-radius:20px;font-size:12px}.menu{display:none}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:18px}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 3px 14px #263b5810}.card{padding:20px;border-top:4px solid}.card span{display:block;color:var(--muted);font-size:13px}.card strong{display:block;font-size:25px;margin-top:7px}.card.blue{border-color:#3388f3}.card.green{border-color:#20a36a}.card.orange{border-color:#f59e0b}.card.red{border-color:#ef4444}.card.purple{border-color:#8b5cf6}.panel{padding:20px;margin-bottom:18px}.panel h2{font-size:18px;margin:0 0 14px}.table{overflow:auto}table{border-collapse:collapse;width:100%;min-width:720px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:11px 10px;white-space:nowrap}th{font-size:12px;color:var(--muted);text-transform:uppercase}tr:hover td{background:#fafcff}.badge{display:inline-block;padding:4px 8px;border-radius:20px;font-size:12px;font-weight:700}.badge.ok{background:#dcfce7;color:#147445}.badge.pending{background:#fff1c7;color:#945d00}button{border:0;border-radius:8px;padding:10px 15px;background:var(--accent);color:#fff;font-weight:700;cursor:pointer}input{border:1px solid #ccd5e1;border-radius:8px;padding:10px;width:100%;background:#fff}label{display:grid;gap:5px;color:#4b5563}.grid-form{display:grid;grid-template-columns:2fr 1fr .5fr 1fr auto;gap:12px;align-items:end;margin-top:16px}.inline{display:flex;gap:6px}.inline input{width:120px}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#122138,#20599d)}.login-card{width:min(420px,92vw);background:#fff;padding:30px;border-radius:17px;box-shadow:0 20px 60px #0005;display:grid;gap:16px}.login-card h1{font-size:23px;margin:8px 0 0}.login-card small{text-align:center;color:var(--muted)}.alert{padding:11px;background:#fee2e2;color:#9b1c1c;border-radius:8px}details summary{cursor:pointer;font-weight:700}@media(max-width:900px){aside{transform:translateX(-100%);transition:.2s}body.open aside{transform:none}main{margin:0;padding:18px}.menu{display:block}.cards{grid-template-columns:1fr 1fr}.grid-form{grid-template-columns:1fr 1fr}}@media(max-width:560px){.cards,.grid-form{grid-template-columns:1fr}.card strong{font-size:22px}main{padding:14px}header h1{font-size:22px}}
