*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:#f4f7fb;color:#172033}a{text-decoration:none;color:inherit}
:root{--blue:#123B74;--orange:#F47A20;--border:#dbe3ee}
.container{max-width:1280px;margin:auto;padding:24px}.header{background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}
.header-in{max-width:1280px;margin:auto;padding:12px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.brand{display:flex;align-items:center;gap:12px}.brand img{width:56px;height:56px;object-fit:contain}.brand h1{font-size:19px;margin:0;color:var(--blue)}.brand small{color:#68758a}
.nav{display:flex;gap:8px;flex-wrap:wrap}.nav a{background:#f3f6fb;color:var(--blue);font-weight:700;padding:9px 11px;border-radius:10px;font-size:13px}
.hero{background:linear-gradient(135deg,#123B74,#24599b);color:#fff;border-radius:20px;padding:28px}.hero h2{font-size:30px;margin:8px 0}
.grid{display:grid;gap:18px}.grid3{grid-template-columns:repeat(3,1fr)}.grid2{grid-template-columns:repeat(2,1fr)}
.card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px;box-shadow:0 8px 25px rgba(18,59,116,.08)}
.stat{font-size:30px;font-weight:800;color:var(--blue);margin-top:7px}.muted{color:#6f7d91;font-size:14px}.badge{display:inline-block;background:#fff0e6;color:#a84700;border-radius:999px;padding:6px 9px;font-weight:800;font-size:12px}
.module{background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px}.module h3{color:var(--blue);margin:0 0 6px}.module:hover{box-shadow:0 10px 25px rgba(18,59,116,.11)}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px}.btn{border:0;background:var(--blue);color:#fff;padding:11px 15px;border-radius:11px;font-weight:800}.btn.orange{background:var(--orange)}
.table{overflow:auto}.table table{width:100%;border-collapse:collapse;min-width:720px}.table th,.table td{padding:11px;border-bottom:1px solid #e7edf5;text-align:left}.table th{background:#f5f8fc;color:var(--blue)}
.field{display:grid;gap:6px}.field label{font-size:13px;color:#617086;font-weight:700}.field input,.field textarea{border:1px solid #ccd6e4;border-radius:10px;padding:11px}
.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#edf4ff,#fff3e9)}.loginbox{width:min(450px,100%);background:#fff;border-radius:22px;padding:28px;box-shadow:0 18px 60px rgba(18,59,116,.15)}.loginbox img{width:110px;display:block;margin:auto}
@media(max-width:900px){.grid3,.grid2{grid-template-columns:1fr}.header-in{align-items:flex-start;flex-direction:column}}
.studentbar{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:14px 16px;margin-bottom:18px}.studentbar select{min-width:320px;max-width:100%;border:1px solid #ccd6e4;border-radius:11px;padding:10px 12px;background:#fff}.errorbox{color:#b42318;font-weight:700;margin-top:4px}.successbox{color:#067647;font-weight:700}.danger{background:#b42318!important}.smallbtn{border:0;border-radius:9px;padding:8px 10px;font-weight:800;cursor:pointer;background:#eef4fb;color:#123B74}.smallbtn.orange{background:#fff0e6;color:#a84700}.smallbtn.red{background:#fee4e2;color:#b42318}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.modalish{background:#f8fbff;border:1px solid #d8e4f3;border-radius:16px;padding:18px}.student-list{display:grid;gap:12px}.student-row{display:grid;grid-template-columns:1.5fr .8fr .8fr auto;gap:12px;align-items:center;padding:14px;border:1px solid #e2e8f0;border-radius:14px;background:#fff}.student-row strong{color:#123B74}.empty{padding:28px;text-align:center;color:#6f7d91;background:#fff;border:1px dashed #cbd5e1;border-radius:16px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.tabs a{background:#fff;border:1px solid #dbe3ee;padding:10px 12px;border-radius:10px;color:#123B74;font-weight:800}.metricline{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #edf1f6}.metricline:last-child{border-bottom:0}@media(max-width:900px){.studentbar{align-items:stretch;flex-direction:column}.studentbar select{min-width:0;width:100%}.formgrid{grid-template-columns:1fr}.student-row{grid-template-columns:1fr}}

@media print{.header,.studentbar,.toolbar .btn,.nav{display:none!important}.container{max-width:none;padding:0}.card,.hero{box-shadow:none;break-inside:avoid}.hero{color:#000;background:#fff;border:1px solid #ccc}}

@media print{
  @page{size:A4;margin:14mm}
  .header,.nav,.no-print,button{display:none!important}
  body{background:#fff!important;color:#000!important}
  .container{max-width:none!important;padding:0!important}
  .card,.hero{box-shadow:none!important;background:#fff!important;color:#000!important}
}
