:root{color:#18312c;font-synthesis:none;background:#f4f7f5;font-family:DM Sans,Arial,sans-serif}*{box-sizing:border-box}body{margin:0}h1,h2,h3{letter-spacing:-.035em;font-family:Manrope,Arial,sans-serif}h1{margin:6px 0 12px;font-size:30px}h2{margin-top:0;font-size:20px}p{line-height:1.65}a{color:#14735c;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button{color:#fff;cursor:pointer;background:#14644f;border:1px solid #0000;border-radius:8px;padding:11px 18px;font-weight:600}button:hover{background:#104e3e}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{color:#29483b;background:#fff;border-color:#d4dfd9}button.link-button{color:#14735c;background:0 0;padding:5px}input,select,textarea{color:#18312c;background:#fff;border:1px solid #cfdbd4;border-radius:7px;width:100%;margin-top:7px;padding:11px 12px;display:block}input:focus,select:focus,textarea:focus{border-color:#14735c;outline:3px solid #d2ece2}label{margin-bottom:18px;font-size:14px;font-weight:500;display:block}form button{margin:6px 0 16px}small,.muted{color:#64776d}.eyebrow{letter-spacing:.15em;color:#4e7865;font-size:11px;font-weight:700}.brand-mark{color:#173f31;background:#d9f477;border-radius:10px;place-items:center;width:52px;height:52px;font-size:18px;font-weight:800;display:inline-grid}.auth-page{grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.auth-brand{color:#f4ffef;background:#123c30;flex-direction:column;justify-content:center;padding:12vh 10%;display:flex}.auth-brand h1{font-size:clamp(34px,4vw,58px);line-height:1.17}.auth-brand .eyebrow{color:#b8d5c6;margin-top:40px}.auth-card{align-self:center;width:min(450px,85%);margin:40px auto}.auth-card h2{font-size:28px}.auth-card>p{color:#6a7b71}.center{justify-content:center;align-items:center;min-height:100vh;padding:30px;display:flex}.narrow{width:100%;max-width:600px;margin:auto}.layout{min-height:100vh;display:flex}aside{color:#d8e9df;background:#123c30;flex-shrink:0;width:260px;height:100vh;padding:26px 18px;position:sticky;top:0;overflow:auto}.school-brand{color:#fff;align-items:center;gap:12px;margin:4px 4px 36px;font-size:14px;display:flex}.school-brand strong{color:#abc6b7;font-weight:500}.sidebar-label{letter-spacing:.15em;color:#9cbaaa;padding:0 14px;font-size:10px}nav>a,nav summary{color:#d8e9df;cursor:pointer;border-radius:7px;padding:12px 14px;font-size:14px;display:block}nav>a:hover,nav summary:hover{background:#204c3d;text-decoration:none}nav details a{color:#c0d8c9;padding:9px 12px 9px 27px;font-size:12px;display:block}nav details[open]{background:#173f33;border-radius:8px}.signout{margin:30px 12px 0}.main{flex:1;min-width:0}header{color:#567060;background:#fff;border-bottom:1px solid #e2e8e3;justify-content:space-between;align-items:center;height:76px;padding:0 36px;font-size:13px;display:flex}header>span:first-child{color:#284f3d;font-weight:700}.content{max-width:1600px;margin:auto;padding:36px}footer{color:#7e9185;padding:20px 36px;font-size:11px}.cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:30px;display:grid}.card{background:#fff;border:1px solid #e0e7e1;border-radius:13px;padding:25px;box-shadow:0 3px 10px #153a2910}.card ul{margin-bottom:0;padding-left:18px}.card li{margin:12px 0;font-size:14px}.toolbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px;display:flex}.toolbar h1,.toolbar h2,.toolbar p{margin-bottom:0}.search{width:340px;max-width:100%;margin:0}.table-scroll{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}th{letter-spacing:.025em;color:#627968;white-space:nowrap;background:#f4f7f4;padding:13px;font-size:11px}td{overflow-wrap:anywhere;border-bottom:1px solid #e9eee9;max-width:250px;padding:16px 13px}tr:hover td{background:#fbfdfb}.empty{text-align:center;color:#789080;padding:60px 20px}.empty h2{color:#45644f}.pagination{justify-content:flex-end;align-items:center;gap:18px;margin-top:22px;font-size:12px;display:flex}.error{color:#9d2828;background:#fff0ee;border:1px solid #f3d1ca;border-radius:8px;padding:12px}.modal-backdrop{z-index:5;background:#122d2780;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:14px;width:900px;max-width:100%;max-height:90vh;padding:28px;overflow:auto;box-shadow:0 20px 80px #0003}.form-grid{grid-template-columns:1fr 1fr;gap:0 22px;display:grid}.secret{overflow-wrap:anywhere;background:#eef6ef;padding:15px;display:block}pre{white-space:pre-wrap}dt{color:#718476;margin-top:16px;font-size:12px}dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0}@media (width<=850px){aside{width:200px}.content{padding:22px}header{padding:0 22px}header>span:first-child{display:none}.auth-page{grid-template-columns:1fr}.auth-brand{padding:35px 8%}.auth-brand h1{font-size:32px}.auth-brand .eyebrow{margin-top:22px}}@media (width<=600px){.layout{display:block}aside{width:100%;height:auto;padding:18px;position:relative}.school-brand{margin:0 0 15px}nav{max-height:220px;overflow:auto}.sidebar-label{display:none}.signout{margin:12px}header{height:55px}.content{padding:20px 14px}.form-grid{grid-template-columns:1fr}.toolbar{flex-wrap:wrap;align-items:flex-start}.card{padding:18px}.modal{padding:20px}.auth-brand h1{display:none}h1{font-size:25px}}
