
:root{--bg:#f8fafc;--card:#fff;--text:#0f172a;--muted:#475569;--border:#e2e8f0;--prim:#2563eb;}
*{box-sizing:border-box} body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial}
.container{max-width:1100px;margin:24px auto;padding:0 16px}
.center-box{max-width:420px;margin:48px auto;padding:0 16px}
h1{font-size:28px;margin:8px 0 16px} h2{font-size:20px;margin:0 0 12px}
.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:16px;margin:16px 0;box-shadow:0 1px 2px rgba(0,0,0,.03)}
input,select,button{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text)}
button{background:var(--prim);color:#fff;border-color:var(--prim);cursor:pointer}
button.ghost{background:#fff;color:var(--prim)}
label{display:block;margin:10px 0 6px;color:var(--muted);font-size:14px}
.table{width:100%;border-collapse:collapse} .table th,.table td{border-bottom:1px solid var(--border);padding:8px}
.table thead th{background:#0ea5e9;color:#fff} .right{text-align:right}
.flex{display:flex;gap:12px;flex-wrap:wrap} .badge{background:#eef2ff;color:#3730a3;border:1px solid #c7d2fe;border-radius:999px;padding:2px 8px;font-size:12px}
.kpis{display:flex;gap:12px;flex-wrap:wrap;margin:8px 0} .kpi{flex:1 1 180px;border:1px solid var(--border);border-radius:12px;padding:12px;background:#fff}
.kpi .small{font-size:12px;color:var(--muted)} .kpi .sum{font-size:18px;font-weight:700}
nav .wrap{display:flex;gap:10px;align-items:center} nav a{color:#0f172a;text-decoration:none;padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:#fff}
.alert{padding:10px;border:1px solid #a7f3d0;border-radius:10px}
