@font-face{font-family:School;src:url(/Arial.ttf) format("truetype");font-display:swap}@font-face{font-family:School;src:url(/Arial-Bold.ttf) format("truetype");font-weight:700;font-display:swap}:root{--blue:#2563eb;--navy:#162b4d;--muted:#718096;--line:#e6ebf2;--bg:#f5f7fb;--green:#148263}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#26364c;font-family:School,Arial,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button,a,input,select,textarea{outline-color:#2563eb}button{transition:background .15s,box-shadow .15s}button:hover:not(:disabled){filter:brightness(.98)}input,select,textarea{border:1px solid #dce3ee;border-radius:9px;padding:10px 12px;background:#fff;color:#25344c;min-width:0}input[type=date],input[type=month]{direction:ltr}textarea{resize:vertical;line-height:1.7}small{display:block;color:var(--muted);font-size:11px;line-height:1.6}.app{display:flex;min-height:100vh}.sidebar{width:248px;flex-shrink:0;background:#fff;border-inline-end:1px solid var(--line);padding:28px 19px;position:fixed;inset-inline-start:0;top:0;bottom:0;display:flex;flex-direction:column;z-index:15}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 26px;border-bottom:1px solid var(--line)}.brand img{width:53px;height:59px;object-fit:contain}.brand b{display:block;letter-spacing:2px;color:#1a2b4b;font-size:21px}.brand span{display:block;color:#607089;font-size:13px;margin-top:5px}.nav-label{font-size:11px;color:#95a0b3;padding:17px 15px 4px}.sidebar nav{display:grid;gap:7px}.sidebar nav button{display:flex;gap:12px;align-items:center;background:transparent;border:0;padding:14px 13px;border-radius:10px;color:#61718a;font-size:14px;text-align:start}.sidebar nav button span{flex:1}.sidebar nav button.active{background:#eaf0ff;color:#2458ca;font-weight:700}.sidebar nav button.active:before{content:"";width:3px;height:22px;background:#2563eb;border-radius:2px;position:absolute;inset-inline-start:20px}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding:21px 9px 0;color:#48617b;font-size:12px}.sidebar-bottom p{color:#8190a2;font-size:11px}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#20ad81;margin-inline-end:6px}.app>main{width:calc(100% - 248px);margin-inline-start:248px;min-width:0}.topbar{height:75px;border-bottom:1px solid var(--line);background:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 35px}.topbar>div{display:flex;align-items:center;gap:13px;color:#596b84;font-size:13px}.date{color:#8793a4}.icon{border:0;border-radius:8px;background:transparent;padding:7px;color:#728096;display:inline-flex}.content{max-width:1600px;margin:auto;padding:32px 34px 45px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.eyebrow{color:#9ba6b7;font-size:11px;margin-bottom:10px}h1{font-size:27px;line-height:1.35;margin:0 0 11px;color:#182e51;letter-spacing:-.4px}.page-heading p{color:#7a879a;margin:0;font-size:13px;line-height:1.8}h2{font-size:16px;margin:0;color:#263953}h3{font-size:14px;margin:0;color:#2d3e59}.heading-actions,.report-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:9px;padding:10px 14px;font-size:12px;font-weight:700;white-space:nowrap;min-height:39px}.primary{background:#2563eb;color:#fff;box-shadow:0 4px 9px #2563eb20}.secondary{background:#fff;border-color:#dce4f0;color:#405d85}.ghost{color:#536d91;background:transparent;border-color:#e1e7f0}.danger{background:#dc3c4c;color:#fff}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:24px}.metric{border:1px solid var(--line);background:#fff;border-radius:13px;padding:20px 21px;position:relative;overflow:hidden}.metric:before{content:"";position:absolute;inset-inline-end:18px;top:20px;width:7px;height:7px;border-radius:50%;background:#6291f3}.metric>span{color:#6b7c95;font-size:12px;display:block;margin-bottom:14px}.metric>b{font-size:30px;color:#243d63;display:block;font-weight:700;margin-bottom:7px}.metric.green:before{background:#30a67d}.metric.amber:before{background:#e6aa39}.metric.red:before{background:#e77281}.panel{border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden;margin-bottom:20px;box-shadow:0 3px 10px #182d511f}.panel-title{padding:21px 23px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);flex-wrap:wrap}.panel-title p{font-size:11px;color:#8190a4;margin:8px 0 0}.report-actions input{width:140px;font-size:12px;padding:8px}.report-actions input[type=number]{width:78px}.report-actions select{font-size:12px;padding:8px;width:128px}.filters{padding:17px 23px;display:flex;align-items:center;gap:11px;background:#fcfdff;border-bottom:1px solid var(--line)}.filters>select{font-size:12px}.search{display:flex;gap:9px;align-items:center;border:1px solid #dee5ef;border-radius:9px;background:#fff;padding:0 11px;color:#95a2b5;min-width:0;flex:1}.search input{border:0;background:transparent;outline:none;width:100%;padding:11px 2px;font-size:12px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:start;white-space:nowrap}th{color:#8090a6;background:#f8fafc;font-size:11px;font-weight:400;padding:16px 15px;border-bottom:1px solid var(--line)}td{padding:17px 15px;font-size:12px;border-bottom:1px solid #edf1f6}td strong{font-size:13px;font-weight:700;display:block;color:#334766}td small{margin-top:5px;max-width:230px;overflow:hidden;text-overflow:ellipsis}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcff}.case-code{display:inline-flex;color:#42608a;background:#f3f6fc;padding:5px 7px;border-radius:5px;font-size:11px}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:6px;padding:5px 9px;font-size:10px;color:#78869b;background:#f1f3f7;white-space:nowrap}.badge.blue{background:#edf3ff;color:#326bce}.badge.green{background:#e7f7ef;color:#228564}.badge.amber{background:#fff5dc;color:#ad8025}.row-actions{display:flex;gap:6px}.row-actions button{padding:6px;background:#fff;border:1px solid #e1e7f1;border-radius:7px;display:flex;color:#6c80a0}.row-actions button.red{color:#d36674;border-color:#f7e0e4}.progress{width:92px;height:5px;background:#eaf0f7;border-radius:9px;overflow:hidden}.progress i{height:100%;background:#60a593;display:block;border-radius:9px}.hint{display:flex;gap:9px;align-items:center;color:#8190a4;font-size:11px;flex-wrap:wrap}.danger-link{border:0;color:#bf7d85;background:transparent;display:flex;gap:5px;align-items:center;font-size:11px;margin-inline-start:auto}.empty{padding:55px 25px 60px;display:flex;align-items:center;flex-direction:column;text-align:center;color:#90a0b6;gap:10px}.empty svg{color:#adc0db;background:#f1f6fc;box-sizing:content-box;padding:17px;border-radius:18px}.empty h3{margin-top:8px;color:#66809f;font-size:16px}.empty p{font-size:12px;line-height:1.8}.case-picker{background:#fff;border:1px solid var(--line);border-radius:11px;padding:17px 20px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}.case-picker label{color:#7787a1;font-size:12px}.case-picker select{flex:1;min-width:240px}.case-summary{display:flex;gap:25px;align-items:center;padding:20px;background:#eef3fb;border:1px solid #dfe7f3;border-radius:12px;margin-bottom:22px;flex-wrap:wrap}.case-summary div:first-child{flex:1;min-width:210px}.case-summary strong{display:block;font-size:15px}.case-summary span{display:block;color:#8292a8;font-size:11px;margin-bottom:8px}.case-summary b{font-size:12px;color:#4c6384;display:block}.case-summary small{margin-top:5px}.subject-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;padding:22px}.subject-card{border:1px solid #e3eaf3;border-radius:12px;padding:19px}.subject-top{display:flex;align-items:center;justify-content:space-between;color:#6e95d9;margin-bottom:16px}.subject-card h3{line-height:1.6;font-size:14px}.subject-card>p{color:#8191aa;font-size:11px;line-height:1.7;min-height:19px}.subject-details{display:flex;gap:14px;border-top:1px solid #f1f3f7;padding:11px 0;font-size:11px;line-height:1.6}.subject-details span{color:#94a1b5;min-width:37px}.subject-details b{color:#687d9d;font-weight:400;max-height:53px;overflow:hidden}.subject-footer{border-top:1px solid #f1f3f7;display:flex;align-items:center;justify-content:space-between;padding-top:14px;gap:7px}.subject-footer>span{font-size:10px;color:#8897ab}.subject-footer em{color:#d0846f;font-style:normal}.subject-footer .btn{font-size:10px;padding:8px 9px;min-height:33px}.two-panels{display:grid;grid-template-columns:1fr 1fr;gap:21px}.stat-line{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 23px;border-bottom:1px solid #eff2f7;color:#8191a7;font-size:12px}.stat-line b{color:#3b5375;font-size:13px}.bars{padding:22px;display:grid;gap:17px}.bars>div{display:flex;align-items:center;gap:13px;font-size:12px}.bars>div>div{flex:1;height:7px;border-radius:7px;background:#edf1f8}.bars i{height:7px;background:#7c9fde;display:block;border-radius:7px}.bars p{color:#8393a8;font-size:12px}.closure-panel>.case-picker{margin:20px;border:0;padding:0}.closure-panel>.btn{margin:0 23px 22px}.closure-panel .notice{margin:22px}.notice{display:flex;align-items:flex-start;gap:12px;background:#eef4fe;border:1px solid #dde9fc;color:#617b9e;border-radius:9px;padding:15px;font-size:12px;line-height:1.8;margin-bottom:18px}.notice p{margin:3px 0}.notice svg{flex-shrink:0;margin-top:3px}.notice strong{color:#41618c}.notice.success{background:#eff9f5;border-color:#d8eee2;color:#428772}.notice.success strong{color:#2a8068}.instructions{padding:24px 28px}.instruction{display:flex;gap:20px;padding:20px 0;border-bottom:1px solid #edf1f6}.instruction:last-child{border:0}.instruction>span{height:33px;width:33px;border-radius:9px;background:#eaf1ff;color:#4e78c7;display:flex;align-items:center;justify-content:center;flex-shrink:0}.instruction p{font-size:13px;color:#7b8da6;line-height:1.95;margin-bottom:0}.subnote{font-size:11px;color:#8596ab}footer{padding:18px 35px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:#a0adbf;font-size:10px}.overlay{position:fixed;inset:0;background:#142b4c66;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:50;display:flex;align-items:center;justify-content:center;padding:24px}.modal{width:740px;max-width:100%;max-height:92vh;border-radius:15px;background:#fff;box-shadow:0 16px 80px #18325040;display:flex;flex-direction:column;overflow:hidden}.modal.wide{width:980px}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:22px 26px;border-bottom:1px solid var(--line)}.modal-head h2{font-size:18px}.modal-head p{font-size:12px;color:#8392a8;margin:8px 0 0}.modal-body{padding:24px 26px;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:10px;background:#fafbfe;border-top:1px solid var(--line);padding:17px 26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid.four{grid-template-columns:1fr 1.3fr 1fr 1.3fr}.full{grid-column:1/-1}.field{display:flex;flex-direction:column;gap:8px;font-size:12px}.field>span{color:#6c7e98}.field b{color:#d99d76;font-weight:400}.field input,.field select,.field textarea{width:100%}.field input:focus,.field select:focus,.field textarea:focus{border-color:#7f9fe8;box-shadow:0 0 0 3px #2563eb10}.field input:disabled,.field select:disabled,.field textarea:disabled{background:#f3f5f9}.checkbox-field{display:flex;align-items:center;gap:9px;font-size:12px;color:#64809e;padding:12px 0}.checkbox-field input{accent-color:#2563eb;width:16px;height:16px}.student-select>.search{margin-bottom:10px}.label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px;color:#69809e}.segmented{display:flex;background:#f1f4fa;border:1px solid #e6ebf3;border-radius:7px;padding:3px}.segmented button{border:0;background:transparent;color:#8798b1;font-size:11px;padding:6px 11px;border-radius:5px}.segmented button.selected{background:#fff;color:#326cc6;box-shadow:0 1px 5px #526d9c18}.student-results{max-height:185px;overflow:auto;border:1px solid #e8edf4;border-radius:9px}.student-results button{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;background:#fff;border:0;border-bottom:1px solid #edf1f7;text-align:start;color:#4f6b8d;font-size:12px}.student-results button>div{flex:1}.student-results button.selected{background:#f0f5ff;color:#2563eb}.student-results strong{font-weight:400;display:block}.student-results small{margin-top:3px}.selected-student{display:flex;flex-direction:column;gap:8px;background:#f4f7fc;border:1px solid #e5ecf6;border-radius:9px;padding:16px;font-size:12px;color:#6b81a0;margin-top:12px}.selected-student b{color:#43638f}.approval{border-top:1px solid var(--line);margin-top:22px;padding-top:21px}.approval h3{display:flex;gap:8px;align-items:center;margin-bottom:15px}.approval .btn{margin-top:12px}.approval p{color:#8794a9;font-size:11px;line-height:1.8}.section-heading{margin:28px 0 15px;font-size:14px}.section-heading small{display:inline;margin-inline-start:9px;font-weight:400}.assessment{padding:17px;border:1px solid #e4ebf5;border-radius:10px;margin-bottom:13px;background:#fcfdff}.assessment>b{font-size:12px;color:#6381a6;display:block;margin-bottom:13px}.assessment>p{font-size:11px;color:#8596ad}.toast{position:fixed;bottom:24px;left:24px;z-index:100;background:#233d61;color:#fff;border-radius:10px;box-shadow:0 5px 20px #17335330;display:flex;align-items:center;gap:10px;padding:15px 18px;max-width:550px;font-size:12px;line-height:1.6}.toast button{border:0;background:transparent;color:#bccbe2;display:flex;margin-inline-start:8px}@media(min-width:1700px){.content{padding-top:40px}.subject-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1200px){.sidebar{width:210px;padding:24px 13px}.app>main{width:calc(100% - 210px);margin-inline-start:210px}.content{padding:26px 22px}.metrics{gap:12px}.metric{padding:18px 15px}.subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-title{align-items:flex-start}.report-actions{width:100%}.topbar{padding:0 23px}}@media(max-width:800px){.sidebar{position:sticky;top:0;width:100%;height:auto;padding:13px 16px;bottom:auto;border:0;border-bottom:1px solid var(--line)}.app{display:block}.brand{padding:0;border:0;gap:9px}.brand img{width:35px;height:40px}.brand b{font-size:16px}.brand span{font-size:11px}.nav-label,.sidebar-bottom{display:none}.sidebar nav{display:flex;gap:5px;overflow-x:auto;margin-top:12px}.sidebar nav button{flex-shrink:0;padding:9px;font-size:11px;gap:6px}.sidebar nav button svg:last-child{display:none}.sidebar nav button.active:before{display:none}.app>main{margin:0;width:100%}.topbar{height:52px;padding:0 18px}.topbar span{font-size:11px}.content{padding:23px 18px}.page-heading{align-items:flex-start;flex-direction:column;gap:18px}h1{font-size:23px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:16px}.metric>span{font-size:11px}.metric>b{font-size:25px}.metric small{font-size:10px}.subject-grid{grid-template-columns:1fr;padding:17px}.filters{padding:13px;flex-wrap:wrap}.filters .search{flex-basis:100%}.filters>select{flex:1;width:90px}.panel-title{padding:18px}.report-actions input{width:130px}.report-actions .btn{padding:9px;font-size:11px}.report-actions select{width:115px}.two-panels{grid-template-columns:1fr}.case-picker{padding:15px;gap:10px}.case-picker select{min-width:100%;width:100%}.case-summary{gap:20px;font-size:12px}.case-summary div:first-child{flex-basis:100%}.hint{line-height:1.9}.overlay{padding:12px}.modal{max-height:94vh}.modal-body,.modal-head{padding:18px}.form-grid,.form-grid.four{grid-template-columns:1fr}.full{grid-column:auto}.toast{left:12px;right:12px;bottom:12px;max-width:none}.instructions{padding:18px}.instruction{gap:13px}.instruction p{font-size:12px}footer{padding:17px;line-height:1.8;font-size:9px}footer span{display:none}}.sidebar nav button svg:last-child{transform:rotate(180deg)}.sidebar nav button{font-size:13px}.report-actions select{width:145px}.subject-footer .btn{white-space:normal}.case-summary div:first-child small,.selected-student span[dir=auto]{text-align:start}.login-page{min-height:100vh;background:linear-gradient(145deg,#f3f7ff,#edf3fb);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px 20px;gap:24px}.login-brand{text-align:center}.login-brand img{width:64px;height:72px;object-fit:contain;margin-bottom:12px}.login-brand h1{font-size:25px;margin-bottom:8px}.login-brand p,.login-intro{font-size:13px;line-height:1.8;color:#75869f}.login-card{background:#fff;border:1px solid #dfe7f4;border-radius:17px;box-shadow:0 15px 60px #24487912;padding:30px;width:440px;max-width:100%}.login-card h2{font-size:21px;margin-top:14px}.login-shield{color:#2563eb}.login-card form{display:grid;gap:18px;margin-top:22px}.login-card form>.btn{width:100%}.login-switch{border:0;background:transparent;color:#2563eb;margin-top:20px;padding:8px 0;text-align:left;font-size:13px}.password-help{font-size:12px;line-height:1.8;color:#7b8ba1;margin-top:14px}.password-help summary{cursor:pointer}.login-footer{font-size:11px;color:#8091ab}.account-form{padding:25px}.account-form>.btn{margin-top:15px}.account-password{max-width:900px}.password-gate{width:800px;max-width:100%}.account-search{flex:1;min-width:150px}.audit-log summary{padding:23px;cursor:pointer;font-weight:700;color:#365783}.temporary-secret{margin:20px}.temporary-secret code{display:block;font-size:19px;color:#193b66;letter-spacing:1px;margin-top:10px;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.sign-out{margin:12px 0 16px;width:100%}.sidebar-bottom strong{display:block;font-size:12px}.sidebar nav{overflow-y:auto}.account-form .notice{margin-top:20px}.account-password .form-grid{max-width:650px}@media(max-width:800px){.login-card{padding:24px}.account-form{padding:18px}.sidebar-bottom{display:block;border:0;padding:0;margin:10px 0 0}.sidebar-bottom strong,.sidebar-bottom small,.sidebar-bottom>.live-dot,.sidebar-bottom p{display:none}.sidebar-bottom .sign-out{width:auto;margin:0;float:right;padding:5px 12px;min-height:28px}.sidebar nav{padding-bottom:4px}.sidebar-bottom{font-size:0}.login-page{justify-content:flex-start}.temporary-secret code{font-size:15px}}.repeat-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 12px}.repeat-heading h3{margin:0}.assessment .repeat-heading{margin-top:0}.actual-return{display:flex;align-items:end;flex-wrap:wrap;gap:16px;padding:20px}.actual-return .field{min-width:220px;flex:1}.brand span{line-height:1.4}.login-brand h1{max-width:650px;margin-left:auto;margin-right:auto}:root{--print:#6845bb;--print-soft:#f1ebfc;--readonly:#eef2f7;--readonly-ink:#52647c}body{background:radial-gradient(ellipse at top right,#eaf0fa 0,transparent 42%),#f5f7fb}.btn{border-radius:11px;min-height:41px;padding:10px 15px;transition:background .18s,box-shadow .18s,transform .18s,border-color .18s}.btn:hover:not(:disabled){transform:translateY(-1px);filter:none;box-shadow:0 5px 14px #22375916}.btn:active:not(:disabled){transform:translateY(0)}.btn:focus-visible,.row-actions button:focus-visible,.sidebar nav button:focus-visible{outline:3px solid #99baf0;outline-offset:3px}.btn.print-action{background:linear-gradient(135deg,#7450c8,#6140ab);border-color:#6946b6;color:#fff;box-shadow:0 3px 9px #6845bb20}.btn.print-action:hover:not(:disabled){background:linear-gradient(135deg,#6944bd,#543493);box-shadow:0 5px 14px #6845bb30}.btn.print-action svg{padding:3px;box-sizing:content-box;background:#ffffff19;border-radius:6px;flex-shrink:0}.btn.export-action{background:#e9f6f0;border-color:#c9e9db;color:#177052}.btn.export-action:hover:not(:disabled){background:#ddf0e6;border-color:#9dd2b9}.btn.primary{background:linear-gradient(135deg,#2c70ee,#245ace);border-color:#2561d7;box-shadow:0 3px 10px #2563eb22}.btn.secondary{background:#fdfefe;border-color:#d6e1ef;color:#3f5f87}.btn.ghost.red{color:#ae4356;background:#fff7f8;border-color:#f4dce1}.btn:disabled,.row-actions button:disabled{opacity:1;background:#edf0f5;color:#91a0b3;border-color:#e1e6ed;box-shadow:none}.row-actions button{width:34px;height:34px;align-items:center;justify-content:center;border-radius:9px;background:#f8faff;color:#5b78a2;transition:background .18s,transform .18s}.row-actions button:hover:not(:disabled){background:#eaf1fc;transform:translateY(-1px)}.row-actions button.print-icon{background:var(--print-soft);color:var(--print);border-color:#dfd2f4}.row-actions button.print-icon:hover:not(:disabled){background:#e6dbf9;border-color:#c8b2eb}.row-actions button.red{background:#fff5f6;color:#bd5265;border-color:#f3dce1}.panel{border-radius:16px;border-color:#e0e7f1;box-shadow:0 4px 16px #2436530b}.panel-title{background:linear-gradient(120deg,#fff,#f9fbff);padding:22px 24px}.panel-title h2{font-size:17px;color:#213c60}.metric{border-radius:15px;box-shadow:0 3px 12px #24365306;border-top:3px solid #6b96ed}.metric.green{border-top-color:#40aa87}.metric.amber{border-top-color:#e5b35a}.metric.red{border-top-color:#df8290}.metric:before{width:8px;height:8px;box-shadow:0 0 0 4px #f3f6fa}.metric>b{letter-spacing:-.8px}.report-actions{border:1px solid #e5def3;background:#faf7fe;border-radius:13px;padding:10px}.report-actions input,.report-actions select{background:#fff;border-color:#e2daef;min-height:39px}.filters{background:#f8faff}.search:focus-within{border-color:#92afe4;box-shadow:0 0 0 3px #2563eb0c}th{font-weight:700;color:#627894;background:#f1f5fb;text-transform:none}tbody tr:nth-child(2n){background:#fcfdff}tbody tr:hover{background:#f2f6fd}.case-code{font-weight:700;background:#eaf0fb;color:#3e6190;border:1px solid #dce6f6;border-radius:7px}.badge{border-radius:20px;padding:6px 11px;font-weight:700}.badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0}.progress{height:6px}.progress i{background:linear-gradient(90deg,#6fb9a3,#2f997b)}.case-picker{box-shadow:0 3px 12px #24365306;border-radius:14px}.case-picker label{font-weight:700;color:#56708f}.case-summary{background:#edf2f8;border:1px solid #dbe4ef;border-inline-start:4px solid #93abc8;gap:22px;border-radius:13px;box-shadow:inset 0 1px #ffffffa0}.case-summary span{color:#6d8098;font-size:11px}.case-summary b,.case-summary strong{color:#465f7c}.case-summary div:not(:first-child){padding-inline-start:15px;border-inline-start:1px solid #d7e1ed}.auto-details{padding:18px;background:linear-gradient(135deg,#f1f5fa,#edf2f8);border:1px solid #d8e2ef;border-radius:13px;margin-top:12px;box-shadow:inset 0 1px #fff}.auto-details-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;gap:10px}.auto-details-heading>span{display:flex;align-items:center;gap:7px;color:#59718f;font-size:12px;font-weight:700}.auto-details-heading small{background:#e1e8f2;color:#60738c;border-radius:20px;padding:4px 9px;font-size:10px}.auto-details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.auto-details-grid .auto-name{grid-column:span 3}.auto-details .field{gap:6px}.auto-details .field>span{font-size:11px;color:#7689a2}.auto-details input[readonly]{background:#e7edf5;border-color:#d5deeb;color:#4c6480;box-shadow:none;font-size:12px;cursor:default;font-weight:700}.field input:disabled,.field select:disabled,.field textarea:disabled{background:#eaf0f6;border-color:#d4dfec;color:#6a7f98;opacity:1;cursor:not-allowed}.auto-calculated{background:#eef2f7;border-color:#dbe3ed;color:#5d7390;border-inline-start:3px solid #96acc7}.auto-calculated svg{color:#7f96b3}.subject-card{background:linear-gradient(150deg,#fff,#fafcff);border-color:#dfe7f2;border-radius:14px;box-shadow:0 2px 9px #24365304;transition:box-shadow .18s,border-color .18s}.subject-card:hover{border-color:#c7d7ec;box-shadow:0 5px 15px #2436530b}.subject-top>svg{background:#edf3ff;border:1px solid #dce8fc;border-radius:9px;padding:8px;box-sizing:content-box}.subject-details b{color:#526b8c}.subject-footer .btn{border-radius:9px}.modal{border-radius:18px;border:1px solid #e0e7f2}.modal-head{background:linear-gradient(115deg,#fff,#f4f7fc)}.modal-head h2{color:#244569}.modal-footer{background:#f4f7fc}.assessment{background:#fafcff;border-color:#dce6f3;border-radius:13px;box-shadow:inset 0 1px #fff}.assessment .repeat-heading>b{color:#41648e;font-size:13px}.field>span{color:#536d8d;font-weight:700}.field input,.field select,.field textarea{border-radius:10px;border-color:#d8e2ef;transition:border-color .16s,box-shadow .16s}.field input::placeholder,.field textarea::placeholder{color:#a1aec0;font-weight:400}.instructions .instruction>span{background:#eaf1ff;border:1px solid #d5e2fa;font-weight:700}.sidebar nav button.active{background:linear-gradient(100deg,#eaf1ff,#f1f5fc);box-shadow:inset 0 0 0 1px #dce7f9}.sidebar .brand{padding-bottom:23px}.brand span{font-size:12px;color:#607897}.eyebrow{color:#7389a7;font-weight:700;letter-spacing:.5px}.login-card{border-radius:20px;box-shadow:0 15px 50px #24487914}.notice{border-radius:12px}.actual-return{background:linear-gradient(120deg,#fff,#f6f9ff);align-items:center}@media(min-width:1100px){.auto-details-grid .auto-name{grid-column:span 3}}@media(max-width:800px){.panel-title{padding:18px}.report-actions{gap:8px;padding:9px}.report-actions .btn{min-height:39px}.auto-details{padding:14px}.auto-details-grid{grid-template-columns:1fr 1fr}.auto-details-grid .auto-name{grid-column:1/-1}.auto-details-grid .field:last-child{grid-column:1/-1}.case-summary div:not(:first-child){padding-inline-start:0;border:0}.repeat-heading{flex-wrap:wrap}.btn.print-action svg{padding:2px}.sidebar .brand{padding-bottom:0}.case-summary{gap:18px}.overlay{padding:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}.btn:hover:not(:disabled),.row-actions button:hover:not(:disabled){transform:none}}.school-wordmark{flex:1;min-width:0}.school-wordmark img{width:560px;max-width:100%;height:auto;max-height:90px;object-fit:contain;object-position:left center}.topbar{height:110px;gap:20px;background:#fff}.login-brand{width:700px;max-width:100%}.login-brand img{width:620px;max-width:100%;height:auto;margin-bottom:22px}.audit-actions{display:flex;justify-content:flex-end;padding:0 23px 18px}.audit-actions .btn{background:#fff5f6;color:#b94357;border-color:#f0cfd7;box-shadow:none}@media(max-width:800px){.topbar{height:auto;min-height:80px;padding:12px 18px;gap:12px;flex-wrap:wrap}.school-wordmark img{width:100%;max-height:70px;min-width:240px}.topbar>.school-wordmark{flex-basis:100%}.topbar>div:last-child{margin-inline-start:auto}.login-brand img{margin-top:8px;margin-bottom:20px}}.language-switch{border:1px solid #ccd8e9;background:#f4f7ff;color:#173f78;border-radius:9px;padding:9px 13px;font-weight:700;display:inline-flex;gap:7px;align-items:center;min-height:40px}.login-language{position:absolute;inset-inline-end:24px;top:20px}.overdue-block{background:#fff5f3!important;border:1px solid #df9c95!important;border-inline-start:4px solid #c63e32!important;border-radius:9px;padding:12px!important}.overdue-date{display:block;color:#a62b24;font-size:12px;font-weight:700;margin-top:6px;line-height:1.6}.overdue-label{color:#a62b24;background:#ffe3de;border-radius:5px;padding:2px 6px;margin-inline-start:7px;font-style:normal;font-size:11px}.overdue-cell{background:#fff0ed;color:#a62b24;box-shadow:inset 0 -2px #cf5b50}.overdue-field input{border:2px solid #c65145;background:#fff4f1}.due-items{display:grid;gap:8px;margin-top:13px}.due-items .overdue-block b{font-size:12px}.closure-panel{border-inline-start:4px solid #2563eb}.closure-panel .actual-return{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px}.closure-panel .actual-return .subnote{margin:0;max-width:650px}html[dir=rtl] .sidebar nav svg:last-child{transform:rotate(180deg)}html[dir=rtl] h1{letter-spacing:0}html[dir=rtl] .subject-card,html[dir=rtl] .login-card{text-align:right}html[dir=rtl] input[type=email],html[dir=rtl] input[type=password],html[dir=rtl] input[type=number]{direction:ltr;text-align:start}@media(max-width:650px){.topbar{padding-inline:12px}.topbar>div{gap:7px}.topbar .date{display:none}.language-switch{padding:8px;font-size:12px}.login-language{top:12px;inset-inline-end:12px}.closure-panel .actual-return{flex-wrap:wrap}.closure-panel .actual-return .btn{width:100%}}
