:root{--green:#173d31;--green-darker:#102e25;--green-mid:#2b6650;--green-light:#eaf3ee;--gold:#bca36b;--ink:#1d352a;--muted:#677a70;--border:#dce6de;--surface:#fff;--bg:#f7f9f6;--warn:#9b6628;--danger:#ab4439;--shadow:0 18px 50px rgba(15,48,32,.07)}
*{box-sizing:border-box}body{margin:0;color:var(--ink);font:15px/1.5 Arial,Helvetica,sans-serif;background:var(--bg)}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit}h1,h2,h3,p{margin-top:0}.hidden{display:none!important}.masthead{height:89px;background:var(--green);color:white;display:flex;align-items:center;gap:30px;padding:0 5%;justify-content:space-between}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;min-width:263px}.mark{width:52px;height:52px;border:1.4px solid rgba(255,255,255,.35);border-radius:14px;display:grid;place-items:center;font-family:Georgia,serif;font-style:italic;font-size:34px;line-height:1}.gold-dot{color:var(--gold);margin-left:-3px}.brand strong{letter-spacing:3px;display:block;font-size:15px}.brand small{display:block;font-size:10px;letter-spacing:.4px;color:#cbdad0}.schooltitle{font-size:11px;letter-spacing:2px;font-weight:bold;color:#d9e7dc}.schooltag{display:inline-block;border-left:1px solid rgba(255,255,255,.3);padding-left:15px;margin-left:15px;letter-spacing:.1px;font-weight:normal;font-size:13px}.white{color:white}.ghost{background:transparent;border:1px solid rgba(255,255,255,.35);border-radius:9px;padding:8px 15px}.entry{max-width:1240px;min-height:calc(100vh - 89px);padding:86px 28px;display:grid;grid-template-columns:1.1fr .85fr;align-items:center;gap:10% ;margin:auto}.intro{max-width:570px}.eyebrow,.overline{font-weight:bold;letter-spacing:2.5px;font-size:11px;color:var(--green-mid)}.tinyline{display:inline-block;width:30px;border-top:2px solid var(--gold);vertical-align:middle;margin-right:10px}.intro h1{font-family:Georgia,serif;font-size:clamp(36px,4.8vw,66px);line-height:1.11;font-weight:normal;letter-spacing:-1.8px;margin:28px 0}.intro h1 em{font-weight:normal;color:var(--green-mid);font-style:italic}.intro>p{max-width:480px;color:var(--muted);line-height:1.9;font-size:16px}.intro-stats{display:flex;gap:35px;margin-top:46px;border-top:1px solid var(--border);max-width:445px;padding-top:23px}.intro-stats>div{min-width:120px}.intro-stats b{display:block;font-size:22px}.intro-stats span{display:block;color:var(--muted);font-size:12px}.privacy-note{max-width:500px;color:var(--muted);font-size:12px;margin-top:32px}.login-card{background:white;border:1px solid var(--border);box-shadow:var(--shadow);padding:40px 45px;border-radius:18px;max-width:470px;width:100%}.login-icon{font-size:29px;color:var(--gold);width:54px;height:54px;border-radius:13px;background:var(--green-light);display:grid;place-items:center;margin-bottom:28px}.login-card h2{font:normal 32px/1.2 Georgia,serif;margin:10px 0}.login-card p{color:var(--muted);font-size:13px;line-height:1.7}.login-card label{font-weight:bold;display:block;margin:18px 0 7px;font-size:13px}.login-card input{width:100%;border-radius:9px;border:1px solid #cbd9cf;padding:13px 14px;background:white;color:var(--ink)}.login-card input:focus{outline:2px solid #87b7a3;outline-offset:2px}.primary,.outline{padding:13px 17px;border:0;border-radius:9px;font-weight:bold}.primary{background:var(--green);color:white;display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:23px}.outline{background:white;color:var(--green);border:1px solid var(--green)}.wide{width:100%;display:flex;justify-content:space-between;align-items:center}.login-divider{display:flex;align-items:center;gap:15px;color:#a9b8ac;font-size:12px;margin:20px 0}.login-divider:before,.login-divider:after{content:"";flex:1;border-top:1px solid var(--border)}.mininote{font-size:11px!important;margin:15px 0 0}.form-message{margin:8px 0;color:var(--danger);font-size:12px;min-height:14px}.app{display:grid;grid-template-columns:250px minmax(0,1fr);max-width:1600px;margin:auto;min-height:calc(100vh - 89px)}.sidebar{background:#fff;border-right:1px solid var(--border);padding:36px 17px 25px;display:flex;flex-direction:column}.sidebar-label{color:#82928a;font-weight:bold;font-size:10px;letter-spacing:1.6px;margin:0 13px 17px}.nav-btn{display:flex;align-items:center;gap:13px;width:100%;text-align:left;border:0;background:transparent;color:#556d60;border-radius:9px;padding:12px 14px;margin:3px 0;font-size:13px}.nav-btn span{width:21px;font-size:19px}.nav-btn:hover,.nav-btn.current{background:var(--green-light);color:var(--green);font-weight:bold}.sidebar-spacer{flex:1}.side-foot{font-size:11px;color:#527165;border-top:1px solid var(--border);padding:22px 10px 0;font-weight:bold}.side-foot small{font-weight:normal;color:#819087}.side-foot span,.sitefooter span{color:var(--gold)}.workspace{padding:35px clamp(18px,3.5vw,56px) 28px;min-width:0}.topline{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px;letter-spacing:.6px;text-transform:uppercase;font-weight:bold}.control-group{display:flex;align-items:center;gap:12px}.control-group label{font-size:11px}.control-group select{margin-left:6px;border:1px solid var(--border);border-radius:8px;padding:7px;background:white;color:var(--ink)}.textbtn{border:0;background:none;color:var(--green-mid);font-weight:bold}.page-title{font:normal 38px Georgia,serif;margin:22px 0 4px}.page-subtitle{font-size:14px;color:var(--muted);margin-bottom:30px}.demo-banner{padding:12px 17px;background:#fcf6e7;border:1px solid #e6d5ac;border-radius:9px;color:#725b32;font-size:13px}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.kpi{background:white;border:1px solid var(--border);padding:23px;border-radius:13px}.kpi .num{display:block;font-family:Georgia,serif;font-size:35px;line-height:1.3}.kpi .label{display:block;color:var(--muted);font-size:12px;margin-top:5px}.kpi .caption{display:block;font-size:11px;color:#789084;margin-top:9px}.card{background:white;border:1px solid var(--border);border-radius:14px;padding:25px;margin-bottom:20px;min-width:0}.card h2{font:normal 23px Georgia,serif;margin:0 0 8px}.card p{color:var(--muted);font-size:13px}.twocol{display:grid;grid-template-columns:1.1fr .9fr;gap:17px}.eyelist{list-style:none;padding:0;margin:14px 0}.eyelist li{display:flex;align-items:center;justify-content:space-between;padding:10px 2px;border-bottom:1px solid #e7ede7;gap:15px;font-size:13px}.eyelist small{color:var(--muted)}.chip{display:inline-block;background:#ebf4ee;color:var(--green-mid);border-radius:15px;padding:4px 9px;font-size:11px;font-weight:bold;white-space:nowrap}.chip.warn{background:#fff2e3;color:var(--warn)}.chip.grey{background:#eff3ef;color:#607268}.progresslabel{display:flex;justify-content:space-between;margin:17px 0 6px;font-size:12px}.meter{height:9px;background:#e7efe8;border-radius:9px;overflow:hidden}.meter span{display:block;height:100%;background:var(--green-mid);border-radius:9px}.tablewrap{overflow-x:auto;border:1px solid var(--border);border-radius:11px;margin-top:17px}table{border-collapse:collapse;width:100%;font-size:13px}th,td{padding:13px 14px;text-align:left;border-bottom:1px solid #e8eee8}th{background:#f1f6f2;color:#547064;font-size:11px;text-transform:uppercase;letter-spacing:.4px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcfa}.notice{border-left:3px solid var(--gold);background:#fcfaf2;padding:15px 19px;color:#726042;font-size:13px;line-height:1.6;border-radius:0 8px 8px 0;margin-bottom:18px}.notice strong{color:#4f422f}.notice.info{border-left-color:#719e85;background:#f0f7f1;color:#486455}.buttonrow{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}.smallbtn{border:1px solid var(--green-mid);border-radius:8px;color:var(--green);background:#fff;padding:10px 14px;text-decoration:none;font-size:12px;font-weight:bold}.smallbtn.solid{background:var(--green);color:#fff}.filecontrol{display:block;border:1px dashed #b8cdbc;border-radius:10px;padding:17px;background:#f8faf8;max-width:600px}.report{line-height:1.8;color:#4b6857;font-size:13px;white-space:pre-wrap;margin-top:15px}.sitefooter{color:#799080;font-size:11px;border-top:1px solid var(--border);margin-top:43px;padding-top:20px}.empty{color:#789084;font-style:italic;padding:23px;background:#f7faf7;border:1px dashed #d7e2d9;border-radius:10px;font-size:13px}.barrow{display:grid;grid-template-columns:125px 1fr 25px;align-items:center;gap:10px;margin:13px 0;font-size:12px}.bartrack{height:12px;background:#ecf1ed;border-radius:15px}.bartrack span{display:block;height:12px;background:var(--green-mid);border-radius:15px}.barrow strong{text-align:right}.intro-note{color:var(--muted);font-size:12px}button:disabled{cursor:not-allowed;opacity:.6}
@media(max-width:1020px){.entry{gap:3%;grid-template-columns:1fr 1fr}.login-card{padding:30px}.schooltag{display:none}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.twocol{grid-template-columns:1fr}.app{grid-template-columns:205px minmax(0,1fr)}.workspace{padding:28px 20px}.sidebar{padding:25px 8px}}
@media(max-width:700px){.masthead{padding:15px;gap:10px;height:auto;min-height:78px}.brand{min-width:0}.schooltitle{display:none}.entry{display:block;padding:38px 20px}.intro{margin-bottom:34px}.intro h1{font-size:39px}.login-card{max-width:none;padding:25px}.app{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--border);padding:7px 10px}.sidebar-label,.side-foot,.sidebar-spacer{display:none}.sidebar nav{display:flex;overflow:auto;gap:5px}.nav-btn{white-space:nowrap;width:auto;padding:9px}.nav-btn span{display:none}.page-title{font-size:32px}.kpi-grid{gap:8px}.kpi{padding:14px}.kpi .num{font-size:27px}.topline{align-items:flex-start;gap:12px}.control-group{flex-wrap:wrap;justify-content:flex-end}}