:root{font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:#183528;background:#f2f8f3;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #d6e6db;background:#fff;border-radius:11px;padding:10px 14px;font-weight:700;color:#23513b;display:inline-flex;align-items:center;justify-content:center;gap:7px}button:disabled{opacity:.48;cursor:not-allowed}button:hover:not(:disabled){filter:brightness(.97)}input,select,textarea{border:1px solid #cbdcd0;padding:11px 13px;border-radius:11px;width:100%;background:#fff;color:#173b27}label{display:block;font-weight:650;margin:10px 0 6px}h1,h2,h3{margin:0}h1{font-size:19px;letter-spacing:.3px}h2{font-size:24px}h3{font-size:18px;display:flex;gap:7px;align-items:center;margin-bottom:13px}h4{margin-bottom:5px}.muted{color:#6f8274}.small{font-size:12px}.error,.red{color:#bb3440!important}.green,.pos{color:#078a4b}.neg{color:#ca5054}.shell{min-height:100vh;display:flex;flex-direction:column}header{padding:15px max(20px,calc((100vw - 1180px)/2));background:#fff;border-bottom:1px solid #dce8df;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand,.headerRight{display:flex;align-items:center;gap:10px}.brand small{font-size:11px;color:#168847;font-weight:800;letter-spacing:1px}.logo{display:grid;place-items:center;border-radius:13px;width:46px;height:46px;background:linear-gradient(135deg,#0c9c4b,#80d14c);color:#fff;font-size:31px;font-weight:700}.headerRight select{width:160px}.demo{background:#ffedaf;color:#83500a;border-radius:7px;padding:8px;font-size:12px}main{width:min(1180px,calc(100% - 32px));margin:22px auto;flex:1}.topline,.flexbetween{display:flex;align-items:center;justify-content:space-between;gap:12px}.topline p{margin:6px 0}.tabs{display:flex;gap:8px;margin:19px 0;overflow:auto}.tabs button{white-space:nowrap}.tabs button.selected,.primary{background:#118e48;border-color:#118e48;color:#fff}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.metric{background:#fff;border:1px solid #e1ebe4;border-radius:15px;padding:16px 20px}.metric span{color:#708575;font-size:13px;display:flex;gap:6px;align-items:center}.metric strong{display:block;font-size:27px;margin-top:7px}.metric.warn strong{color:#d04444}.alert{background:#fff2ef;border:1px solid #f5cec7;color:#aa3838;padding:12px 15px;border-radius:10px;display:flex;gap:9px;margin-bottom:15px}.tools{display:flex;gap:10px;margin-bottom:13px}.search{flex:1;display:flex;align-items:center;gap:9px;padding:0 12px;background:#fff;border:1px solid #d3e3d8;border-radius:12px}.search input{border:0;outline:0}.panel{background:#fff;border:1px solid #e1ebe4;border-radius:15px;padding:20px;margin-bottom:15px}.list{padding:0;overflow:hidden}.tableHead,.student{display:grid;grid-template-columns:minmax(180px,2fr) minmax(140px,1fr) minmax(270px,1.3fr);align-items:center;gap:14px;padding:12px 18px}.tableHead{background:#ecf8ee;color:#537760;font-size:12px;font-weight:800}.student{border-top:1px solid #edf1ed;min-height:65px}.studentName,.scorevals,.actions{display:flex;align-items:center;gap:9px}.studentName{min-width:0}.studentName strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.number{display:grid;place-items:center;background:#eaf6ed;color:#23894e;border-radius:8px;min-width:31px;height:31px;font-size:13px}.scorevals{justify-content:space-between;max-width:180px}.scorevals span{font-size:14px}.scorevals b{font-size:20px}.actions{justify-content:flex-end;gap:7px}.actions button{min-width:53px;padding:11px 8px;font-size:16px}.add{background:#e5f9eb;color:#09793b;border-color:#b9edc8}.minus{background:#ffeded;color:#bc3a42;border-color:#ffd0d0}.footerActions{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:12px}.footerActions label{display:flex;align-items:center;gap:9px;margin:0}.footerActions input{width:68px}.empty{padding:28px;text-align:center}.history>div{display:grid;grid-template-columns:2fr 60px 100px 1fr;gap:9px;padding:12px;border-bottom:1px solid #eef2ef;align-items:center}.approval{display:flex;align-items:center;gap:10px;justify-content:space-between;border-bottom:1px solid #eef2ef;padding:12px 0}.approval span{flex:1}.manage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.manage .panel{align-self:start}.manage button{margin-top:10px}.toast{position:fixed;bottom:24px;right:20px;background:#184c32;color:#fff;border-radius:12px;padding:15px 20px;box-shadow:0 8px 30px #0003;z-index:20}footer{text-align:center;color:#829487;padding:25px;font-size:12px}.login{display:grid;place-items:center;min-height:100vh;background:radial-gradient(circle at top left,#d2f7cc,#f7fbf7 65%)}.loginbox{width:min(440px,90%);padding:36px}.loginbox .logo{margin-bottom:15px}.loginbox h1{color:#087c3a;font-size:23px}.loginbox p{color:#6d816f}.loginbox form{margin-top:25px}.loginbox button{width:100%;margin-top:20px}.quiet{background:#fff}.loginbox .error{color:#c33}@media(max-width:760px){header{padding:12px}.brand h1{font-size:14px}.brand small{font-size:9px}.brand .logo{width:37px;height:37px;font-size:22px}.headerRight{flex-wrap:wrap;justify-content:flex-end}.headerRight select{width:100px}.demo{font-size:9px}main{width:calc(100% - 20px);margin:14px auto}h2{font-size:19px}.metrics{gap:6px}.metric{padding:10px;border-radius:10px}.metric span{font-size:10px}.metric strong{font-size:21px}.tableHead{display:none}.student{display:grid;grid-template-columns:1fr auto;gap:9px;padding:13px 12px}.studentName{grid-column:1}.scorevals{grid-column:2;gap:11px}.scorevals span{font-size:12px}.scorevals b{font-size:18px}.actions{grid-column:1/-1;justify-content:stretch}.actions button{flex:1;min-width:0;padding:12px 0}.tools{gap:5px}.tools button{font-size:0;padding:10px}.tools button svg{width:18px}.tabs button{font-size:12px;padding:10px}.footerActions{flex-wrap:wrap}.manage{grid-template-columns:1fr}.history>div{grid-template-columns:1fr 40px 60px;font-size:12px}.history small{grid-column:1/-1}.topline .quiet{font-size:0}.topline .quiet svg{font-size:initial}}
