/* Profesional Akademik: Navy + Emas */
:root{
  --navy:#0b1e3a; --navy-2:#13315c; --gold:#c9a227; --bg:#f6f7fb;
  --text:#1a2540; --muted:#6b7280; --border:#e5e7eb; --danger:#b91c1c; --success:#15803d;
}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}
.nav{background:var(--navy);color:#fff;padding:.75rem 1.25rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.nav .brand{font-weight:700;color:var(--gold);margin-right:1rem}
.nav a{color:#fff;text-decoration:none;font-size:.95rem}
.nav a:hover{color:var(--gold)}
.nav .spacer{flex:1}
.container{max-width:1200px;margin:1.5rem auto;padding:0 1rem}
h1,h2{color:var(--navy)}
.card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:1.25rem;margin-bottom:1rem;box-shadow:0 1px 3px rgba(0,0,0,.04)}
table{width:100%;border-collapse:collapse;background:#fff}
th,td{padding:.6rem .75rem;border-bottom:1px solid var(--border);text-align:left;font-size:.92rem}
th{background:var(--navy);color:#fff;font-weight:600}
tfoot td{font-weight:700;background:#fff7e0}
.btn{display:inline-block;padding:.5rem 1rem;border-radius:6px;border:1px solid var(--navy);background:var(--navy);color:#fff;cursor:pointer;text-decoration:none;font-size:.9rem}
.btn:hover{background:var(--navy-2)}
.btn.gold{background:var(--gold);border-color:var(--gold);color:var(--navy)}
.btn.danger{background:var(--danger);border-color:var(--danger)}
.btn.ghost{background:transparent;color:var(--navy)}
input,select,textarea{width:100%;padding:.5rem .65rem;border:1px solid var(--border);border-radius:6px;font:inherit}
label{display:block;font-size:.85rem;margin-bottom:.25rem;color:var(--muted)}
.grid{display:grid;gap:1rem}
.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:1fr 1fr 1fr}.grid-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:720px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}
.flash{padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem}
.flash.success{background:#dcfce7;color:var(--success)}
.flash.error{background:#fee2e2;color:var(--danger)}
.muted{color:var(--muted);font-size:.85rem}
.right{text-align:right}
.actions{display:flex;gap:.5rem;flex-wrap:wrap}
.kpi{background:#fff;border-left:4px solid var(--gold);padding:1rem;border-radius:8px}
.kpi .label{color:var(--muted);font-size:.8rem}
.kpi .val{font-size:1.4rem;font-weight:700;color:var(--navy)}
.login-wrap{max-width:380px;margin:6rem auto}
.login-wrap .brand{text-align:center;font-size:1.5rem;font-weight:700;color:var(--navy)}
.login-wrap .brand small{display:block;color:var(--gold);font-size:.85rem;font-weight:500}
