
:root{
  --bg:#f4f7fb;
  --card:#ffffff;
  --text:#142033;
  --muted:#68758a;
  --primary:#0d6efd;
  --primary-dark:#0a58ca;
  --success:#198754;
  --warning:#fd7e14;
  --danger:#dc3545;
  --border:#dfe6ef;
  --shadow:0 12px 30px rgba(20,32,51,.08);
  --radius:18px;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:Arial,Helvetica,sans-serif;
  background:linear-gradient(180deg,#f7f9fc 0%,#edf3f9 100%);
  color:var(--text);
}
a{text-decoration:none;color:var(--primary)}
.container{max-width:1180px;margin:0 auto;padding:18px}
.auth-wrap{
  min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;
}
.auth-card,.card{
  background:var(--card);border:1px solid var(--border);border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.auth-card{
  width:100%;max-width:430px;padding:28px;
}
.brand{
  font-size:28px;font-weight:800;margin:0 0 6px 0;
}
.subtitle{color:var(--muted);margin-bottom:22px}
input,select,button,textarea{
  width:100%;padding:14px 15px;border-radius:14px;border:1px solid var(--border);
  font-size:16px;outline:none;background:#fff;
}
input:focus,select:focus,textarea:focus{
  border-color:#9ec5fe;box-shadow:0 0 0 4px rgba(13,110,253,.12);
}
button{
  background:linear-gradient(180deg,var(--primary),var(--primary-dark));
  color:#fff;border:none;font-weight:700;cursor:pointer;
}
button:hover{filter:brightness(1.03)}
.btn-secondary{background:#eef4ff;color:var(--primary);border:1px solid #cfe2ff}
.btn-success{background:linear-gradient(180deg,#27ae60,#1f8f4e)}
.btn-danger{background:linear-gradient(180deg,#e55362,#c43d4b)}
.grid{display:grid;gap:16px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{padding:18px}
.topbar{
  display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;
}
.title{font-size:28px;font-weight:800;margin:0}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}
.kpi{
  padding:18px;border-radius:18px;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);
}
.kpi .label{font-size:13px;color:var(--muted);margin-bottom:8px}
.kpi .value{font-size:28px;font-weight:800}
.nav{
  display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px;
}
.nav a{
  padding:10px 14px;border-radius:999px;background:#fff;border:1px solid var(--border);
  color:var(--text);font-weight:700;
}
.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:16px}
table{width:100%;border-collapse:collapse;background:#fff}
th,td{padding:13px 12px;border-bottom:1px solid #eef2f7;text-align:left;font-size:14px}
th{background:#f8fbff}
.badge{
  display:inline-flex;padding:6px 10px;border-radius:999px;font-weight:700;font-size:12px;
}
.badge-success{background:#d1e7dd;color:#0f5132}
.badge-warning{background:#fff3cd;color:#664d03}
.badge-danger{background:#f8d7da;color:#842029}
.badge-primary{background:#cfe2ff;color:#084298}
.form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.alert{
  padding:12px 14px;border-radius:14px;margin-bottom:14px;font-weight:700;
}
.alert-success{background:#d1e7dd;color:#0f5132}
.alert-danger{background:#f8d7da;color:#842029}
.alert-info{background:#cff4fc;color:#055160}
.muted{color:var(--muted)}
.small{font-size:13px}
@media (max-width: 900px){
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid-2,.grid-3{grid-template-columns:1fr}
  .topbar{align-items:flex-start;flex-direction:column}
}
@media (max-width: 600px){
  .container{padding:14px}
  .kpis{grid-template-columns:1fr}
  .title{font-size:24px}
  input,select,button{font-size:16px}
}
