:root{--bg:#f7f8fb;--surface:#fff;--border:#e5e7eb;--ink:#0f172a;--muted:#667085;--brand:#1273ea;}
*{box-sizing:border-box} body.bg{background:var(--bg);font-family:system-ui,'Segoe UI',Tahoma;color:var(--ink)}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}
.brand{font-weight:800;letter-spacing:.2px}
.nav a{margin:0 8px;text-decoration:none;color:#334155}
.container{max-width:1100px;margin:24px auto;padding:0 16px}
.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px;box-shadow:0 8px 24px rgba(16,24,40,.06)}
.card-link{display:block;text-decoration:none;color:inherit;transition:.2s transform,.2s box-shadow}
.card-link:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(16,24,40,.10)}
.title{margin:0 0 12px}
label{display:block;margin-top:12px;color:var(--muted)}
input,select,textarea{width:100%;padding:10px;border:1px solid var(--border);border-radius:10px;margin-top:6px}
.actions{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap}
.btn-primary{background:var(--brand);color:#fff;border:none;padding:10px 16px;border-radius:10px;cursor:pointer}
.btn-secondary{background:#e2e8f0;border:none;padding:10px 16px;border-radius:10px;cursor:pointer}
.toast{margin:8px 0;padding:10px;border-radius:10px}
.toast.success{background:#ecfdf5}
.muted{color:#6b7280;margin-top:4px}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (max-width:720px){.grid{grid-template-columns:1fr}}
.form-grid{display:grid;grid-template-columns:1fr;gap:12px}
.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:900px){.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.cards-grid{grid-template-columns:1fr}}
.icon{font-size:32px;margin-bottom:6px}
.maxw{max-width:520px;margin:40px auto}
.header-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}
table{width:100%;border-collapse:collapse;margin-top:12px}
th,td{border:1px solid var(--border);padding:8px;text-align:right}
.kpis{display:flex;gap:12px;flex-wrap:wrap}
.kpi{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;min-width:130px}
.kpi span{display:block;color:#475569;font-size:12px}
.kpi b{font-size:20px}
