:root{--b:#0b4f80;--d:#073763;--o:#f58220;--bg:#f4f7fb}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);font-family:Arial,Helvetica,sans-serif;color:#243447}
.side{position:fixed;left:0;top:0;bottom:0;width:250px;background:linear-gradient(180deg,var(--d),var(--b));padding:20px;color:#fff;overflow:auto}
.brand{display:block;font-size:24px;font-weight:800;margin:5px 10px 25px;color:#fff;text-decoration:none}
.brand span{color:var(--o)}
.side a{display:block;color:#dcecff;text-decoration:none;padding:10px 12px;border-radius:8px;margin:2px 0}
.side a.brand{padding:0}
.side a:hover,.side a.active{background:var(--o);color:#fff}
.side a.brand:hover{background:transparent;color:#fff}
.main{margin-left:250px;padding:25px}
.card{background:#fff;border:0;border-radius:14px;box-shadow:0 5px 22px rgba(15,40,70,.07);padding:20px}
.main .card + .card{margin-top:20px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.num{font-size:25px;font-weight:800;color:var(--d)}
.muted{color:#718096}
h1,h2,h3{color:var(--d);margin-top:0}
label{display:block;font-size:13px;font-weight:700;margin-bottom:6px;color:var(--d)}
.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.span-all{grid-column:1/-1}
.form-control{width:100%;padding:10px 12px;border:1px solid #d5deea;border-radius:8px;font:inherit;background:#fff;color:#243447}
.form-control:focus{outline:2px solid rgba(245,130,32,.35);border-color:var(--o)}
.form-actions{display:flex;gap:10px;align-items:center;margin-top:16px}
.btn{display:inline-block;padding:10px 16px;border-radius:8px;font-weight:700;cursor:pointer;text-decoration:none;border:0;font:inherit}
.btn-o{background:var(--o);color:#fff}
.btn-o:hover{background:#d96d0c;color:#fff}
.btn-primary{background:var(--b);color:#fff}
.btn-primary:hover{background:var(--d);color:#fff}
.btn-ghost{background:#e8eef5;color:var(--d)}
.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:10px 12px;border-bottom:1px solid #e6edf5;text-align:left;vertical-align:top}
.table th{color:var(--d);font-size:13px}
.table-wrap{overflow:auto}
.row-actions{display:flex;gap:12px;align-items:center;white-space:nowrap}
.row-actions form{margin:0}
.row-actions a{color:var(--b);font-weight:700}
.link-btn{background:none;border:0;color:#a12626;cursor:pointer;padding:0;font:inherit;font-weight:700}
.alert{padding:12px 14px;border-radius:8px;margin-bottom:16px;background:#eef5fb;color:var(--d)}
.alert-success{background:#e7f7ee;color:#146c43}
.alert-danger{background:#fdecec;color:#a12626}
.page-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}
.login-body{display:grid;place-items:center;min-height:100vh;background:linear-gradient(135deg,#073763,#1261a0,#f58220)}
.login-card{width:420px;max-width:92%}
.login-card .btn{width:100%;text-align:center}
@media(max-width:800px){
  .side{position:relative;width:100%}
  .main{margin-left:0}
  .stats,.form-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:520px){
  .stats,.form-grid{grid-template-columns:1fr}
  .page-head{flex-direction:column;align-items:flex-start}
}
@media print{
  .side,.no-print{display:none !important}
  .main{margin-left:0;padding:0}
  .card{box-shadow:none}
}
