:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:14px;color:#1c2b43;background:#f5f7fb;font-synthesis:none;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:#345bc4}a:hover{text-decoration:underline}h1,h2,h3,h4,p{margin-top:0}h1{font-size:28px;letter-spacing:-.8px;margin-bottom:6px}h2{font-size:19px;letter-spacing:-.35px;margin-bottom:14px}h3{font-size:16px}small,.muted{color:#75839a}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a5b9ff;outline-offset:2px}.layout{min-height:100vh;display:grid;grid-template-columns:240px minmax(0,1fr)}aside{position:sticky;top:0;height:100vh;background:#101e37;color:#dce5f8;display:flex;flex-direction:column;padding:22px 14px}.brand{display:flex;align-items:center;gap:11px;color:white;padding:8px 12px 28px;font-weight:760;font-size:20px;letter-spacing:-.6px}.brand-mark{display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#4a82e1,#7a62c9);border-radius:12px;width:38px;height:38px;font-weight:780;font-size:14px}.brand-sub{display:block;color:#a1b1d0;font-size:10px;text-transform:uppercase;font-weight:500;letter-spacing:1.2px}.nav-section{font-size:10px;font-weight:720;color:#7f93b6;text-transform:uppercase;letter-spacing:1.3px;padding:14px 12px 7px}.navbtn{display:flex;width:100%;align-items:center;gap:11px;border:0;background:none;color:#becbe2;text-align:left;padding:12px;border-radius:10px;margin:2px 0;font-weight:500}.navbtn:hover{background:#20334f;color:#fff}.navbtn.active{background:#2d4566;color:white;box-shadow:inset 3px 0 #74a0ff}.navbtn svg{width:17px;height:17px}.aside-footer{margin-top:auto;padding:16px 12px 4px;border-top:1px solid #2b3f5c;font-size:12px}.aside-footer strong{display:block;color:white;margin-bottom:5px}.aside-footer button{margin-top:12px;background:none;color:#afc5ed;border:0;padding:0}.main{min-width:0}.topbar{height:72px;background:white;border-bottom:1px solid #e8edf5;display:flex;align-items:center;justify-content:space-between;padding:0 34px;gap:12px}.crumb{font-size:12px;color:#8391a6}.role-chip{border:1px solid #e5eaf2;color:#576984;border-radius:20px;padding:8px 12px;font-size:11px;font-weight:700;background:#f9fafc}.content{padding:30px 34px 60px;max-width:1550px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.page-heading p{margin-bottom:0;color:#71809a}.button-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.btn{border-radius:10px;border:1px solid #d6dfed;padding:10px 16px;font-weight:650;background:white;color:#263b57;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none}.btn:hover{background:#f7f9fe;text-decoration:none}.btn-primary{color:white;background:#365cca;border-color:#365cca;box-shadow:0 3px 8px rgba(37,74,171,.15)}.btn-primary:hover{background:#294cb4}.btn-danger{color:#9f3141;border-color:#f0c6ca}.btn-sm{min-height:32px;padding:7px 11px;font-size:12px;border-radius:8px}.btn-ghost{background:transparent;border-color:transparent}.grid-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.card{background:#fff;border:1px solid #e7ebf2;border-radius:15px;box-shadow:0 4px 25px rgba(30,54,101,.025);padding:22px;min-width:0}.stat-card{min-height:128px}.stat-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#eef3ff;color:#4268c6;font-size:18px;margin-bottom:15px}.stat-label{font-size:12px;color:#71819a;font-weight:590}.stat-value{font-size:28px;font-weight:760;letter-spacing:-.8px;margin-top:4px}.row{display:flex;gap:14px;align-items:center}.between{justify-content:space-between}.two-columns{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:20px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-size:12px;font-weight:700;color:#42536c}.field input,.field textarea,.field select{display:block;width:100%;border:1px solid #dbe3ee;background:#fff;border-radius:9px;color:#233753;padding:11px 12px;min-height:42px;outline:none}.field textarea{min-height:100px;resize:vertical;line-height:1.5}.field input:focus,.field textarea:focus,.field select:focus{border-color:#5a7dd2;box-shadow:0 0 0 3px #dde7ff}.field-help{font-size:11px;color:#71829d;line-height:1.5}.required{color:#ce5867}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:12.5px}.table th{color:#7a899f;font-size:11px;font-weight:720;text-align:left;padding:15px 11px;white-space:nowrap;border-bottom:1px solid #ebeff5;text-transform:uppercase;letter-spacing:.4px}.table td{padding:16px 11px;border-bottom:1px solid #edf0f5;vertical-align:middle}.table tr:last-child td{border-bottom:0}.table tbody tr:hover{background:#fafbfe}.school-link{font-weight:700;text-decoration:none;color:#253955}.school-link:hover{color:#4169c9}.badge{display:inline-flex;padding:5px 8px;border-radius:7px;font-size:10px;font-weight:750;white-space:nowrap;background:#eef3ff;color:#4462a7;text-transform:capitalize}.badge.active,.badge.approved,.badge.live,.badge.done,.badge.initialized{background:#e5f6ef;color:#167851}.badge.draft,.badge.not_ready,.badge.todo,.badge.unconfigured{background:#f0f3f7;color:#64758f}.badge.partial,.badge.changes_requested,.badge.blocked,.badge.delayed{background:#ffedeb;color:#b6453e}.badge.submitted,.badge.in_progress,.badge.reviewing{background:#fff1d9;color:#995f16}.progress{height:7px;background:#e8edf5;border-radius:20px;overflow:hidden;min-width:60px}.bar{height:100%;background:#4c7ddd;border-radius:20px;transition:width .2s}.bar.green{background:#27a783}.bar.purple{background:#856adb}.progress-caption{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#65768e;margin-bottom:7px}.progress-caption strong{color:#2d4059}.progress-set{min-width:110px;max-width:220px}.pill-tabs{display:flex;gap:5px;flex-wrap:wrap;border-bottom:1px solid #e7ebf3;margin-bottom:21px}.tab{padding:12px 13px;background:none;border:none;border-bottom:2px solid transparent;color:#73839d;font-weight:650}.tab.active{border-bottom-color:#3d67ca;color:#2b53b6}.alert{padding:12px 15px;border:1px solid #eedcab;border-radius:10px;background:#fff8e9;color:#795e23;line-height:1.55;margin-bottom:18px;font-size:12px}.alert.success{background:#edf9f4;border-color:#c3e8d8;color:#236d53}.alert.error{background:#fff0ef;border-color:#f4cbc7;color:#9b4946}.notice{padding:14px 16px;border:1px solid #e4eafb;background:#f7f9ff;border-radius:10px;line-height:1.6;font-size:12px}.steps{display:flex;justify-content:space-between;gap:5px;padding:8px 0 26px;overflow-x:auto}.step{display:flex;align-items:center;gap:8px;white-space:nowrap;color:#8490a4;font-size:12px;font-weight:680}.step-dot{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:#edf0f6;color:#7a899e}.step.active{color:#355aba}.step.active .step-dot,.step.complete .step-dot{background:#3c63cb;color:white}.step.complete{color:#33785f}.wizard{max-width:950px}.contact-form{border:1px solid #e8edf5;border-radius:12px;padding:16px;margin-bottom:16px;background:#fbfcff}.toggle{display:flex;align-items:center;gap:8px;font-size:12px}.toggle input{width:15px;height:15px}.wizard-footer{display:flex;justify-content:space-between;border-top:1px solid #e9edf4;padding-top:22px;margin-top:12px}.section-card{border:1px solid #e5ebf4;background:white;border-radius:12px;margin-bottom:13px;overflow:hidden}.section-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;cursor:pointer;gap:10px}.section-body{border-top:1px solid #edf0f6;padding:20px}.submission-field{border:1px solid #edf0f5;border-radius:12px;padding:17px;margin:12px 0}.submission-field .field{margin:12px 0}.upload-area{border:1.5px dashed #aebdda;background:#f9fbff;border-radius:11px;padding:20px 18px;text-align:center;position:relative}.upload-area input{max-width:100%}.file-chip{display:inline-block;margin:3px 5px 3px 0;padding:6px 9px;border-radius:7px;border:1px solid #dae5f2;background:#f5f8fc;font-size:11px}.empty{text-align:center;padding:60px 20px;color:#7a8aa2}.empty-emoji{font-size:30px;display:block;margin-bottom:12px}.loading-screen{height:100vh;display:flex;justify-content:center;align-items:center;flex-direction:column;color:#7a8aa2}.loading-logo{width:56px;height:56px;background:#365cca;color:white;display:grid;place-items:center;border-radius:15px;font-weight:800;font-size:22px}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:25px;background:radial-gradient(circle at top left,#e4e9ff 0%,#f7f9fc 45%,#edf3fc 100%)}.auth-card{width:100%;max-width:430px;padding:36px;background:white;border:1px solid #e8edf5;box-shadow:0 25px 70px rgba(35,55,90,.12);border-radius:18px}.auth-logo{display:flex;align-items:center;gap:10px;margin-bottom:32px;font-size:20px;font-weight:800}.auth-card h1{font-size:25px}.auth-card p{color:#8090a4;line-height:1.6;margin-bottom:25px}.auth-card .btn{width:100%}#toast{position:fixed;bottom:24px;right:22px;max-width:420px;background:#18354c;color:white;border-radius:10px;box-shadow:0 18px 40px #1c344233;padding:13px 18px;opacity:0;transform:translateY(20px);pointer-events:none;transition:all .25s;z-index:100;line-height:1.5}#toast.visible{opacity:1;transform:none}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;word-break:break-all}.break{word-break:break-word}.checkline{padding:10px 0;border-bottom:1px solid #eff2f6;display:flex;justify-content:space-between;align-items:center;gap:10px}.skeleton{height:15px;background:#eef1f6;border-radius:6px}.mini-list{display:grid;gap:9px}.mini-card{background:#f9fbff;border:1px solid #edf0f5;padding:14px 15px;border-radius:10px}.mini-card strong{display:block;margin-bottom:6px}.form-note{font-size:11px;color:#7d8ba0;margin:0 0 15px}.inline-form{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.inline-form .field{flex:1;margin:0;min-width:180px}.metric-hero{border-left:3px solid #4268c6;padding-left:12px}.divider{height:1px;background:#edf1f6;margin:17px 0}.drive-summary{padding:15px;border-radius:12px;background:#f7f9fe;border:1px solid #e4eafa}.fit{width:fit-content}.prewrap{white-space:pre-wrap}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.section-title{margin:0 0 7px}.contact-box{margin:0 0 12px;padding:14px;background:#fafbfe;border:1px solid #e9edf5;border-radius:11px}.page-back{background:none;border:0;color:#4b69bb;padding:0 0 13px;font-weight:650}.select-small{padding:8px 10px;border-radius:8px;border:1px solid #dbe2ed;background:white;color:#354761;font-size:12px;max-width:100%}@media(max-width:1100px){.grid-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.two-columns{grid-template-columns:1fr}.grid-3{grid-template-columns:1fr 1fr}}@media(max-width:760px){.layout{display:block}aside{height:auto;position:static;padding:12px 14px;display:block}.brand{padding:3px 0 10px}.nav-section,.aside-footer{display:none}.navigation{display:flex;gap:4px;overflow-x:auto}.navbtn{width:auto;white-space:nowrap;flex-shrink:0;padding:10px}.topbar{height:52px;padding:0 18px}.content{padding:23px 16px 55px}.page-heading{align-items:flex-start;flex-direction:column;gap:13px}.page-heading h1{font-size:25px}.grid-cards{gap:10px}.stat-card{min-height:112px}.card{padding:17px}.field-grid,.grid-3{grid-template-columns:1fr}.pill-tabs{flex-wrap:nowrap;overflow-x:auto}.tab{white-space:nowrap}.wizard-footer{gap:10px}.steps{font-size:10px}.step{font-size:10px}.step-dot{width:22px;height:22px}.section-head{padding:13px}.role-chip{max-width:160px;overflow:hidden;text-overflow:ellipsis}.auth-card{padding:26px}}
