:root{--ink:#20283e;--muted:#828ca1;--faint:#a7b0c2;--line:#e9ecf3;--bg:#f7f9fd;--white:#fff;--brand:#4d5bd5;--brand-deep:#3547c7;--violet-bg:#eff0ff;--green:#23a879;--green-bg:#e9f8f1;--amber:#c78a2b;--amber-bg:#fff5e4;--red:#d96965;--red-bg:#fff0ef;--shadow:0 5px 22px rgba(42,58,100,.035);--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}a{color:inherit;text-decoration:none}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b4bbfd;outline-offset:2px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,'DM Sans',sans-serif;letter-spacing:-.035em}h1{font-size:30px;line-height:1.23}h2{font-size:21px;line-height:1.3}h3{font-size:16px}small,.small{font-size:12px}svg{flex-shrink:0}.muted{color:var(--muted)}.semibold{font-weight:700}.right{text-align:right}.hidden{display:none!important}.full{width:100%}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--faint)}
.shell{display:flex;min-height:100vh}.sidebar{width:242px;min-width:242px;background:#fff;border-right:1px solid #ecedf3;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;padding:30px 16px 19px;z-index:20}.brand{display:flex;align-items:center;gap:11px;padding:0 12px;margin-bottom:39px;font:800 19px/1 Manrope,sans-serif;letter-spacing:-.05em}.brand-mark{width:36px;height:36px;border-radius:12px;background:var(--brand);display:grid;place-items:center;color:white;position:relative}.brand-mark:after{content:'';width:7px;height:7px;position:absolute;right:7px;top:7px;border-radius:50%;background:#c7f5db}.nav-heading{font-size:10px;letter-spacing:.16em;color:#b3bbca;font-weight:800;padding:0 14px;margin:0 0 10px}.side-nav{display:flex;flex-direction:column;gap:6px}.nav-link{display:flex;align-items:center;gap:12px;border:0;width:100%;padding:12px 13px;background:transparent;border-radius:11px;color:#788298;font-weight:700;text-align:left;transition:background .15s,color .15s}.nav-link:hover{background:#f4f6fc;color:#394461}.nav-link.active{background:#eef0ff;color:var(--brand)}.nav-link .count{margin-left:auto;font-size:11px;font-weight:800;color:var(--brand);background:#fff;border-radius:7px;padding:1px 6px}.sidebar-foot{margin-top:auto}.help-card{background:#f1f3ff;border-radius:15px;padding:17px 16px;margin:0 4px 21px}.help-card .help-icon{height:34px;width:34px;border-radius:11px;display:grid;place-items:center;background:#dfe4ff;color:var(--brand);margin-bottom:12px}.help-card strong{font-size:12px}.help-card p{font-size:11px;color:#7b86a4;line-height:1.6;margin-top:4px}.side-school{display:flex;align-items:center;gap:9px;border-top:1px solid var(--line);padding:18px 5px 0}.school-mini-icon{width:35px;height:35px;background:#edf4fe;color:#598cc8;border-radius:11px;display:grid;place-items:center}.side-school .school-name{font-size:12px;font-weight:800;line-height:1.3}.side-school .school-sub{font-size:10px;color:var(--muted)}
.main{flex:1;min-width:0}.topbar{height:85px;background:rgba(255,255,255,.78);border-bottom:1px solid #edf0f5;display:flex;align-items:center;justify-content:space-between;padding:0 43px;gap:20px}.breadcrumbs{display:flex;align-items:center;gap:12px;color:#a4adbd;font-size:12px;font-weight:700}.breadcrumbs b{color:#677188;font-weight:800}.top-actions{display:flex;align-items:center;gap:13px}.top-greeting{font-size:12px;color:#7f8799;margin-right:9px}.icon-button{border:1px solid #e9edf4;background:#fff;width:37px;height:37px;display:grid;place-items:center;border-radius:11px;color:#798399}.icon-button:hover{color:var(--brand);border-color:#bfc5f7}.avatar{background:#e2e8fe;color:#4b5db5;border-radius:11px;width:37px;height:37px;display:grid;place-items:center;font-size:12px;font-weight:800}.avatar.green{background:#dff4e9;color:#279b6d}.avatar.pink{background:#ffe9ef;color:#b5647d}.avatar.yellow{background:#fff1da;color:#bd8743}.workspace{max-width:1460px;margin:0 auto;padding:35px 43px 65px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px}.page-head .subtitle{margin-top:8px;color:#8b94a7;font-size:13px}.page-actions{display:flex;gap:9px;align-items:center}.btn{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border-radius:10px;padding:10px 15px;font-weight:800;font-size:12px;line-height:1.4;transition:.17s;box-shadow:none}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--brand);color:white;box-shadow:0 5px 13px rgba(77,91,213,.16)}.btn-primary:hover{background:var(--brand-deep)}.btn-plain{background:#fff;border-color:#e6eaf3;color:#64708a}.btn-plain:hover{border-color:#b9c0f1;color:var(--brand)}.btn-subtle{background:#eef0ff;color:var(--brand)}.btn-sm{padding:7px 11px;font-size:11px}.btn-danger{background:#fff0ee;color:#c95a59}.btn-link{color:var(--brand);font-weight:800;background:none;border:0;padding:0;font-size:12px}.btn .spinner{width:14px;height:14px;border:2px solid #ffffff55;border-top-color:white;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.demo-banner{background:#fff9ed;border:1px solid #ffeac4;color:#986b2d;border-radius:11px;margin-bottom:22px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px}.demo-banner strong{font-weight:800}.demo-switch{display:flex;align-items:center;gap:7px;white-space:nowrap}.demo-switch select{border:1px solid #ecd29f;border-radius:7px;padding:5px 24px 5px 8px;background:#fffdf8;color:#7b5a2a;max-width:148px}
.welcome-strip{background:linear-gradient(110deg,#4e5dd5,#7382e4 95%);color:white;display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden;border-radius:18px;padding:26px 33px 26px;min-height:143px;margin-bottom:24px}.welcome-strip:before{content:'';height:220px;width:220px;border:28px solid rgba(255,255,255,.07);border-radius:50%;position:absolute;right:63px;top:-126px}.welcome-strip:after{content:'';height:115px;width:115px;border:25px solid rgba(255,255,255,.06);border-radius:50%;position:absolute;right:-44px;bottom:-69px}.welcome-strip h2{font-size:21px;margin:8px 0 8px;color:#fff;position:relative;z-index:1}.welcome-strip p{font-size:12px;opacity:.84;position:relative;z-index:1}.welcome-strip .sun-art{height:95px;width:110px;position:relative;margin:0 60px 0 10px;display:grid;place-items:center;z-index:1}.sun-art .sun{width:66px;height:66px;border-radius:50%;background:#f6d58c;box-shadow:0 0 0 12px #f7db9c20;display:grid;place-items:center;color:#c48b44}.sun-art .cloud{position:absolute;bottom:3px;right:0;width:70px;height:19px;border-radius:30px;background:#f0f4ff;box-shadow:-26px -2px 0 6px #f0f4ff;opacity:.95}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:24px}.stat{background:#fff;border:1px solid #eef0f6;border-radius:16px;padding:18px 19px 16px;box-shadow:var(--shadow)}.stat-top{display:flex;justify-content:space-between;align-items:center}.stat-label{font-weight:700;font-size:12px;color:#8390a3}.stat-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center}.stat-icon.violet{background:#eef0ff;color:#6874d5}.stat-icon.gold{background:#fff5e5;color:#cf9b45}.stat-icon.mint{background:#e9f9f2;color:#43b387}.stat-icon.blue{background:#ebf5ff;color:#6ca4d4}.stat-value{font:800 26px/1.25 Manrope,sans-serif;letter-spacing:-.055em;margin-top:14px}.stat-foot{color:#a0a9b8;font-size:10px;margin-top:6px}.stat-foot strong{color:#2aa47c;font-weight:800}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(270px,.92fr);gap:22px}.panel{background:#fff;border:1px solid #edf0f4;border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.panel-pad{padding:23px}.panel-head{padding:21px 22px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px}.panel-head h3{font-size:15px}.panel-head p{font-size:11px;color:#a1a9b8;margin-top:4px}.panel-actions{display:flex;gap:6px}.request-list{display:flex;flex-direction:column}.request-row{display:grid;grid-template-columns:39px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 22px;border-top:1px solid #f0f2f6;text-align:left;background:#fff;border-left:none;border-right:none;border-bottom:none;width:100%;cursor:pointer;transition:background .15s}.request-row:hover{background:#fbfcff}.request-row h4{font-size:12px;margin:0 0 3px;font-weight:800;color:#354058}.request-row p{font-size:10px;color:#9ea8ba;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.request-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center}.request-icon.violet{background:#f0efff;color:#7274cf}.request-icon.gold{background:#fff5e5;color:#e2a14c}.request-icon.blue{background:#edf6ff;color:#70a9d8}.request-icon.green{background:#e8f9f0;color:#3bb08c}.request-icon.rose{background:#fff0f4;color:#c987a1}.request-right{display:flex;align-items:center;gap:9px}.chip{display:inline-flex;align-items:center;gap:5px;border-radius:7px;padding:4px 9px;font-size:10px;font-weight:800;white-space:nowrap}.chip.open{background:#fff4e5;color:#c68f3e}.chip.progress{background:#edf1ff;color:#6979d3}.chip.resolved{background:#e9f8f0;color:#269c70}.chip.high{background:#fff0ee;color:#d56e6d}.chip.normal{background:#f3f5f9;color:#7f8aa1}.row-chevron{color:#b4bcce}.list-footer{border-top:1px solid #f0f2f6;padding:14px 20px;text-align:center}.list-footer button{font-weight:800;color:var(--brand);font-size:11px;border:0;background:none}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-action{display:flex;flex-direction:column;gap:11px;border:1px solid #edf0f6;background:#fff;border-radius:13px;padding:15px 13px;text-align:left;min-height:114px;transition:.15s}.quick-action:hover{border-color:#bfc6f4;background:#fcfcff}.quick-action .mini-icon{height:34px;width:34px;display:grid;place-items:center;border-radius:10px;background:#eef0ff;color:#5e6cda}.quick-action:nth-child(2) .mini-icon{background:#e8f9f1;color:#30a77a}.quick-action:nth-child(3) .mini-icon{background:#edf6ff;color:#6d9cc8}.quick-action:nth-child(4) .mini-icon{background:#fff4e7;color:#c59a5b}.quick-action strong{font-size:11px}.quick-action small{color:#9ca6b6;font-size:10px}.activity-item{display:flex;align-items:start;gap:10px;padding:13px 0;border-bottom:1px solid #f0f2f6}.activity-item:last-child{border-bottom:0}.activity-dot{width:7px;height:7px;border-radius:50%;background:#8b95e6;margin-top:6px;box-shadow:0 0 0 4px #f0f2ff}.activity-item .act-body{font-size:11px;color:#68758a}.activity-item .act-body strong{color:#303950}.activity-item .act-time{color:#a8b2c1;font-size:10px;margin-top:4px}
.section-card{background:#fff;border:1px solid #ecf0f5;border-radius:18px;padding:22px;margin-top:20px}.filters-bar{display:flex;align-items:center;justify-content:space-between;gap:13px;margin-bottom:20px}.search-box{display:flex;align-items:center;gap:9px;color:#a0a9bb;background:#fff;border:1px solid #e6eaf2;padding:0 13px;border-radius:10px;height:41px;min-width:260px;flex:1;max-width:420px}.search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font-size:12px}.search-box:focus-within{border-color:#949ff0;box-shadow:0 0 0 3px #e8eafd}.filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.filter{background:white;color:#788297;border:1px solid #e6eaf2;border-radius:9px;padding:9px 12px;font-weight:700;font-size:11px}.filter.active{background:#eef0ff;color:var(--brand);border-color:#dce0ff}.table-card{background:white;border:1px solid #e9edf5;border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}.table-heading{display:grid;grid-template-columns:minmax(160px,2fr) 110px minmax(105px,1fr) 110px 91px 26px;gap:10px;color:#98a2b5;background:#fbfcfe;padding:15px 21px;font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:800}.table-row{display:grid;grid-template-columns:minmax(160px,2fr) 110px minmax(105px,1fr) 110px 91px 26px;gap:10px;align-items:center;padding:17px 21px;border-top:1px solid #f0f2f7;width:100%;text-align:left;background:#fff;border-right:none;border-left:none;border-bottom:none}.table-row:hover{background:#fbfcff}.table-row .primary-text{font-size:12px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-row .secondary-text{font-size:10px;color:#a2aabc;margin-top:4px}.table-cell{font-size:11px;color:#748097;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-row .chip{justify-self:start}.empty-state{text-align:center;padding:50px 20px;color:var(--muted)}.empty-state .empty-icon{height:56px;width:56px;border-radius:20px;background:#f0f2ff;color:var(--brand);display:grid;place-items:center;margin:0 auto 16px}.empty-state h3{color:var(--ink);margin-bottom:7px}.empty-state p{max-width:320px;margin:0 auto 17px;font-size:12px}
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.person-card{display:flex;gap:12px;align-items:center;border:1px solid #edf0f5;padding:16px;border-radius:12px}.person-card .name{font-size:12px;font-weight:800}.person-card .email{font-size:10px;color:#97a2b3;word-break:break-word}.person-card .role{margin-left:auto}.insight-row{margin-bottom:17px}.insight-row .labels{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin-bottom:8px}.insight-row .labels strong{font-weight:800}.track{height:9px;background:#f1f3f9;overflow:hidden;border-radius:10px}.fill{background:#7985e4;border-radius:10px;height:100%}.settings-list{display:flex;flex-direction:column;gap:15px}.settings-item{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid var(--line);padding:17px;border-radius:12px}.settings-item strong{font-size:12px}.settings-item p{font-size:11px;color:var(--muted);margin-top:3px}
.backdrop{position:fixed;inset:0;background:rgba(29,35,57,.35);z-index:100;display:flex;justify-content:flex-end;animation:fade .18s ease}.backdrop.centered{align-items:center;justify-content:center;padding:18px}.drawer{width:min(520px,100%);height:100%;overflow-y:auto;background:#fff;padding:30px;box-shadow:-10px 0 55px #17204422;animation:slide .2s ease}.modal{width:min(530px,100%);max-height:calc(100vh - 38px);overflow:auto;background:#fff;border-radius:19px;box-shadow:0 20px 70px #1720442a;padding:27px;animation:scale .16s ease}.modal-head{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-bottom:24px}.modal-head h2{font-size:21px;margin:0 0 7px}.modal-head p{font-size:12px;color:var(--muted)}.close-button{height:32px;width:32px;display:grid;place-items:center;border:0;background:#f3f5f9;color:#718096;border-radius:9px}.close-button:hover{background:#eaeef7}.form-field{display:flex;flex-direction:column;gap:7px;margin:0 0 17px}.form-field label{font-size:11px;font-weight:800;color:#4d5971}.form-field input,.form-field select,.form-field textarea{border:1px solid #e2e7f0;background:#fff;border-radius:10px;min-height:42px;padding:11px 12px;outline:0;color:#324059;width:100%;font-size:12px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#9ba6ea;box-shadow:0 0 0 3px #edf0ff}.form-field textarea{resize:vertical;min-height:100px}.form-field .hint{font-size:10px;color:#abb3c2}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:21px}.drawer-title{font-size:24px;line-height:1.35;margin:12px 0 12px}.drawer-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#8994a8;font-size:11px}.drawer-description{margin:20px 0 23px;padding:18px;border-radius:12px;background:#f7f9fd;color:#59667a;font-size:12px;line-height:1.7;white-space:pre-wrap;word-break:break-word}.detail-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#a3aebe;margin-bottom:7px}.detail-value{font-size:12px;color:#46526a;font-weight:700}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0 0 29px}.drawer-section{border-top:1px solid var(--line);padding-top:22px;margin-top:24px}.update-card{border-left:2px solid #dfe3fc;padding:3px 0 14px 13px;margin:12px 0;color:#677286;font-size:12px}.update-card strong{color:#333d57}.update-card time{display:block;color:#adb5c3;font-size:10px;margin-top:3px}.inline-error{color:#bf5f5e;background:#fff1ef;padding:10px 12px;border-radius:9px;margin:12px 0;font-size:12px}.invite-link{background:#f4f6fa;border:1px solid #e7eaf2;border-radius:8px;word-break:break-all;font-size:11px;padding:13px;margin:13px 0;color:#5f6a81}.hint-note{background:#f0f3ff;border-radius:10px;padding:13px;color:#6f7bb2;font-size:11px;line-height:1.65}
#toast{position:fixed;bottom:24px;right:25px;z-index:999;pointer-events:none}#toast .toast-item{background:#263348;color:#fff;padding:12px 17px;border-radius:11px;box-shadow:0 9px 32px #1d274d33;font-size:12px;font-weight:700;max-width:355px;animation:fade .16s ease}#toast .toast-item.error{background:#aa4e54}
.auth-page{min-height:100vh;background:#f7f9fd;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(450px,.98fr)}.auth-showcase{background:linear-gradient(145deg,#4857cf,#7585e5);color:#fff;position:relative;overflow:hidden;padding:50px clamp(30px,6vw,100px);display:flex;flex-direction:column;justify-content:space-between;min-height:100vh}.auth-showcase:before,.auth-showcase:after{content:'';position:absolute;border:2px solid #ffffff27;border-radius:50%;width:680px;height:680px;right:-340px;top:19%}.auth-showcase:after{width:480px;height:480px;right:-240px;top:33%}.auth-brand{font:800 22px Manrope,sans-serif;display:flex;align-items:center;gap:11px;position:relative;z-index:1}.auth-brand .brand-mark{background:#fff;color:#4d5bd6}.auth-brand .brand-mark:after{background:#c5efda}.auth-hero{position:relative;z-index:1;margin-top:80px}.auth-hero .pill{display:inline-block;border:1px solid #ffffff5c;border-radius:50px;padding:8px 13px;background:#ffffff15;color:#ffffffda;letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:800;margin-bottom:28px}.auth-hero h1{font:800 clamp(36px,4.2vw,62px)/1.13 Manrope,sans-serif;letter-spacing:-.065em;max-width:570px}.auth-hero p{font-size:15px;color:#eef0ffdd;max-width:450px;margin-top:22px;line-height:1.8}.auth-preview{margin-top:48px;background:#fff;border:1px solid #ffffffa1;border-radius:18px;padding:22px 24px;color:#2d3751;max-width:460px;box-shadow:0 20px 50px #172b6d20}.auth-preview .mini-top{display:flex;justify-content:space-between;gap:10px;align-items:center;padding-bottom:14px;border-bottom:1px solid #edf0f7;font-size:11px}.auth-preview .mini-task{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #f1f3f9}.auth-preview .mini-task:last-child{border:0;padding-bottom:0}.auth-preview .mini-task strong{font-size:11px}.auth-preview .mini-task small{color:#98a2b5;font-size:10px}.auth-footer{font-size:11px;color:#d8defd;margin-top:35px;position:relative;z-index:1}.auth-main{display:flex;align-items:center;justify-content:center;padding:60px 30px}.auth-content{max-width:410px;width:100%}.auth-content .overline{color:var(--brand);text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.14em;margin-bottom:15px}.auth-content h1{font-size:32px;line-height:1.24;margin-bottom:11px}.auth-content .auth-desc{color:#8c96a9;font-size:13px;line-height:1.8;margin-bottom:30px}.auth-content .form-field input{min-height:49px;font-size:13px}.auth-content .btn{min-height:46px;font-size:13px}.auth-content .security-note{display:flex;gap:9px;margin-top:26px;padding-top:23px;border-top:1px solid #e8ecf3;color:#9ca6b6;font-size:11px;line-height:1.6}.auth-or{display:flex;align-items:center;gap:10px;color:#aab2bf;font-size:11px;margin:24px 0}.auth-or:before,.auth-or:after{content:'';flex:1;height:1px;background:#e7ebf3}.inline-badge{background:#edf6f1;color:#32956f;font-size:10px;font-weight:800;padding:4px 8px;border-radius:7px}.boot{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:100vh;color:#8290a7}.boot-mark{width:60px;height:60px;border-radius:19px;background:#4d5bd6;color:white;font-size:35px;display:grid;place-items:center;margin-bottom:17px}@keyframes fade{from{opacity:0}to{opacity:1}}@keyframes slide{from{transform:translateX(20px);opacity:.6}to{transform:none;opacity:1}}@keyframes scale{from{transform:scale(.98);opacity:.65}to{transform:scale(1);opacity:1}}
@media(max-width:1200px){.workspace{padding:30px 28px 45px}.topbar{padding:0 28px}.stats-grid{gap:12px}.stat{padding:16px}.dashboard-grid{grid-template-columns:1fr 300px;gap:15px}}
@media(max-width:1020px){.sidebar{width:205px;min-width:205px}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid .panel:last-child{display:grid;grid-template-columns:1fr 1fr;gap:0}.dashboard-grid .panel:last-child .panel-head{grid-column:1/-1}.dashboard-grid .panel:last-child .quick-actions{padding-bottom:22px}.stats-grid{grid-template-columns:repeat(2,1fr)}.table-heading,.table-row{grid-template-columns:minmax(160px,2fr) 100px 100px 70px 26px}.table-heading>*:nth-child(3),.table-row>*:nth-child(3){display:none}.auth-page{grid-template-columns:1fr 1fr}.auth-showcase{padding:40px}.auth-hero h1{font-size:39px}}
@media(max-width:720px){.shell{display:block;padding-bottom:65px}.sidebar{position:fixed;top:auto;bottom:0;left:0;right:0;height:66px;width:100%;min-width:0;z-index:30;flex-direction:row;border-right:0;border-top:1px solid var(--line);padding:6px 8px;background:#fff}.sidebar .brand,.sidebar .nav-heading,.sidebar .sidebar-foot{display:none}.sidebar .side-nav{width:100%;flex-direction:row;justify-content:space-around;gap:2px}.sidebar .nav-link{flex:1;min-width:0;padding:8px 0 5px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:9px;font-size:9px;line-height:1.1}.sidebar .nav-link svg{width:18px;height:18px}.sidebar .nav-link .count{display:none}.topbar{height:64px;padding:0 18px}.breadcrumbs{font-size:11px}.top-greeting{display:none}.workspace{padding:21px 16px 34px}.page-head{align-items:flex-start;gap:13px;margin-bottom:22px}.page-head h1{font-size:24px}.page-head .subtitle{font-size:11px}.page-actions .btn{padding:10px 12px}.page-actions .btn .btn-text-long{display:none}.welcome-strip{padding:20px;margin-bottom:16px}.welcome-strip h2{font-size:18px}.welcome-strip .sun-art{margin:0 10px;transform:scale(.78)}.stats-grid{gap:9px;margin-bottom:15px}.stat{padding:14px}.stat-value{font-size:23px;margin-top:9px}.stat-label{font-size:10px}.stat-foot{font-size:9px}.dashboard-grid{display:block}.dashboard-grid>.panel{margin-bottom:16px}.dashboard-grid .panel:last-child{display:block}.panel-head{padding:18px 16px 13px}.request-row{padding:13px 15px}.quick-actions{padding:0 16px 16px}.filters-bar{flex-direction:column;align-items:stretch}.search-box{min-width:0;max-width:none}.filters{gap:5px}.filter{padding:8px 10px}.table-heading{display:none}.table-row{grid-template-columns:minmax(120px,1fr) 85px 24px;gap:8px;padding:16px}.table-row>*:nth-child(2),.table-row>*:nth-child(3),.table-row>*:nth-child(5){display:none}.team-grid{grid-template-columns:1fr}.demo-banner{align-items:flex-start;flex-direction:column}.drawer{padding:22px 18px}.modal{padding:21px}.form-row{grid-template-columns:1fr}.auth-page{display:block}.auth-showcase{display:none}.auth-main{min-height:100vh;padding:28px 22px}.auth-content h1{font-size:28px}.settings-item{align-items:flex-start;flex-direction:column}}
@media(max-width:390px){.welcome-strip .sun-art{display:none}.topbar{padding:0 12px}.workspace{padding:17px 12px 26px}.page-head{flex-direction:column}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:12px}.request-row .chip{padding:3px 5px;font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* SchoolHandoff 2.0 — better focus, task prioritization and admin controls */
.skip-link{position:fixed;left:12px;top:-80px;background:#1f2b62;color:#fff;padding:10px 16px;border-radius:10px;z-index:2000;font-weight:800}
.skip-link:focus{top:12px}
.bell-button{position:relative}
.bell-count{position:absolute;top:-6px;right:-5px;min-width:17px;height:17px;border-radius:20px;background:#cc5968;color:#fff;font-size:10px;display:grid;place-items:center;padding:0 3px;border:2px solid #fff;font-weight:800}
.extra-filters{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:-8px 0 22px}
.extra-filters label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:#67748b}
.extra-filters select{min-height:37px;color:#34415b;max-width:185px;background:#fff}
.due-pill{display:inline-flex;font-size:10px;font-weight:800;color:#6a548e;background:#f2edfb;border-radius:6px;padding:2px 6px;margin-left:4px;white-space:nowrap}
.due-pill.late{background:#fff0ed;color:#bd4d46}
.due-alert{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:#fff8e9;color:#8f621e;border:1px solid #f6dfaf;border-radius:12px;padding:13px 16px;margin:0 0 20px}
.due-alert .btn-link{color:#82591c;margin-left:auto}
.section-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}
.notification-entry{display:flex;align-items:flex-start;gap:14px;padding:17px 6px;border-top:1px solid var(--line)}
.notification-entry.unread{background:#f7f8ff;border-radius:9px;padding:17px 13px;border-top-color:transparent;margin:0 -7px}
.notification-mark{flex-shrink:0;width:38px;height:38px;border-radius:12px;background:#ebedff;color:#5767c9;display:grid;place-items:center}
.notification-text{flex:1;min-width:0}.notification-text strong{font-size:13px}.notification-text p{font-size:12px;color:#626f87;margin-top:3px}.notification-text small{font-size:11px;color:#8b96aa}
.notification-buttons{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.team-controls{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.team-controls select{background:#fff;border:1px solid #e2e7f0;border-radius:7px;padding:8px;color:#526076;max-width:112px;font-size:12px}
.team-grid .person-card{flex-wrap:wrap;gap:10px}.team-grid .person-card .role{margin-left:auto}
.inline-field{display:flex;gap:8px;flex-wrap:wrap}.inline-field input{min-width:150px;max-width:210px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 11px}
.safety-check{display:flex;align-items:flex-start;gap:9px;background:#f6f8fd;border:1px solid #e9eefa;border-radius:10px;padding:13px;margin:15px 0;font-size:12px;color:#505e76;font-weight:700;cursor:pointer}
.safety-check input{margin-top:3px;accent-color:var(--brand);width:17px;height:17px;flex-shrink:0}
.update-card.event-card{border-left:3px solid #d8def9;background:#f8f9fd}
@media(max-width:760px){.extra-filters{align-items:stretch;gap:8px}.extra-filters label{flex:1 1 135px;display:flex;flex-direction:column;align-items:stretch;gap:3px}.extra-filters select{max-width:none}.notification-entry{flex-wrap:wrap}.notification-buttons{margin-left:51px}.top-actions{gap:6px}.top-greeting{display:none}.team-controls{width:100%}.team-grid .person-card .role{margin-left:auto}}
@media print{.sidebar,.topbar,.demo-banner,.page-actions,.form-actions,.close-button,.btn,.nav-link,.drawer-section form,.settings-list,.bell-button,.notification-buttons{display:none!important}.shell,.main,.workspace{display:block!important;width:auto!important;padding:0!important;margin:0!important;background:#fff!important}.backdrop{position:static!important;background:#fff!important;display:block!important}.drawer{position:static!important;width:100%!important;max-width:none!important;box-shadow:none!important;height:auto!important;overflow:visible!important;border:0!important}.drawer-title{font-size:24pt!important}.update-card{break-inside:avoid}.drawer-meta{margin-bottom:20px}}

.request-quickbuttons{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
@media(max-width:500px){.request-quickbuttons{margin-top:7px}.drawer .section-toolbar{align-items:flex-start;flex-wrap:wrap}}

.help-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.help-guide-grid .guide-icon{width:42px;height:42px;border-radius:12px;background:#ecedff;color:#5463cc;display:grid;place-items:center;margin-bottom:17px}.help-guide-grid h3{margin-bottom:13px}.help-guide-grid ol{padding-left:19px;color:#647087;font-size:13px;line-height:1.9}.help-guide-grid li{margin-bottom:8px}@media(max-width:900px){.help-guide-grid{grid-template-columns:1fr}}

/* Version 3: QR room administration */
.room-guide,.qr-room-banner{display:flex;align-items:center;gap:12px;border:1px solid #d5e3ef;background:#f1f7fe;border-radius:13px;padding:16px;color:#2b4762;line-height:1.5}
.qr-room-banner{margin:14px 0;background:#eef9f1;border-color:#c8e6d1;justify-content:space-between;color:#234c36}
.room-create-form{display:flex;gap:10px;align-items:center}.room-create-form input{flex:1;min-width:0;border:1px solid #d6dce8;border-radius:10px;padding:12px 14px;font:inherit}
.room-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:15px}.room-card{padding:20px;min-height:180px;display:flex;flex-direction:column;gap:8px}.room-card-top{display:flex;justify-content:space-between;align-items:center}.room-avatar{width:42px;height:42px;border-radius:13px;background:#eef0ff;display:grid;place-items:center;color:#5662b0}.room-card h3{font-size:19px;margin:7px 0 1px}.room-card-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:12px}
.room-modal{max-width:500px}.room-qr-image{width:min(100%,300px);margin:10px auto;background:white;border:1px solid #e5e9ef;border-radius:16px;padding:12px}.room-qr-image svg{display:block;width:100%;height:auto}.room-instructions{text-align:center;line-height:1.7;color:#35415c}.room-modal-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:24px 0}.room-rotate{margin-top:20px;border-top:1px solid #edf0f4;padding-top:15px;text-align:center}
@media(max-width:640px){.room-create-form{flex-direction:column;align-items:stretch}.room-grid{grid-template-columns:1fr}.room-modal-actions .btn{flex:1}.qr-room-banner{flex-wrap:wrap}}

/* Dashboard clarity refresh (V4): concise identity and comfortable sections. */
.topbar-identity{display:flex;align-items:center;gap:12px;min-width:0}
.topbar-identity-icon{width:37px;height:37px;border-radius:12px;background:#eef2ff;color:#5468c6;display:grid;place-items:center;flex-shrink:0}
.topbar-identity-copy{display:flex;flex-direction:column;min-width:0;line-height:1.2;gap:4px}
.topbar-identity-copy strong{font-size:12px;font-weight:800;color:#39465c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:290px}
.topbar-identity-copy small{font-size:10px;letter-spacing:.01em;color:#98a4b7}
.dashboard-overview-grid{grid-template-columns:minmax(0,1.67fr) minmax(288px,.93fr);align-items:start;gap:24px}
.dashboard-overview-grid>.panel{align-self:start}
.dashboard-overview-grid .dashboard-requests-panel{min-width:0}
.dashboard-overview-grid .dashboard-actions-panel{display:block}
.dashboard-overview-grid .panel-head{padding:24px 25px 21px;gap:14px}
.dashboard-overview-grid .panel-head h3{font-size:16px}
.dashboard-overview-grid .panel-head p{font-size:12px;line-height:1.55;margin-top:6px}
.dashboard-overview-grid .request-row{padding:17px 24px;grid-template-columns:42px minmax(0,1fr) auto;gap:14px;min-height:76px}
.dashboard-overview-grid .request-row h4{font-size:13px;line-height:1.4;margin-bottom:5px}
.dashboard-overview-grid .request-row p{font-size:11px;line-height:1.5}
.dashboard-overview-grid .request-row .request-icon{width:40px;height:40px}
.dashboard-overview-grid .request-list .empty-state{padding:52px 25px 58px}
.dashboard-overview-grid .list-footer{padding:19px 22px}
.dashboard-actions-body{padding:0 24px 24px}
.dashboard-actions-panel .quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.dashboard-actions-panel .quick-action{padding:20px 15px 17px;min-height:143px;gap:14px;border-radius:15px}
.dashboard-actions-panel .quick-action .mini-icon{width:38px;height:38px;border-radius:12px}
.dashboard-actions-panel .quick-action strong{font-size:12px;line-height:1.3}
.dashboard-actions-panel .quick-action small{font-size:11px;line-height:1.4;display:inline-block;margin-top:5px}
.dashboard-actions-note{display:flex;align-items:flex-start;gap:11px;color:#8590a3;background:#f7f9fe;border:1px solid #eef1f8;border-radius:13px;padding:16px 15px;margin-top:19px;font-size:11px;line-height:1.6}
.dashboard-actions-note svg{color:#8491c8;flex-shrink:0;margin-top:1px}
@media(max-width:1200px){.dashboard-overview-grid{grid-template-columns:minmax(0,1.4fr) minmax(260px,.86fr);gap:17px}.dashboard-actions-body{padding:0 19px 19px}.dashboard-actions-panel .quick-action{padding:17px 12px;min-height:131px}}
@media(max-width:1020px){.dashboard-overview-grid{grid-template-columns:minmax(0,1fr)}.dashboard-overview-grid .dashboard-actions-panel{display:block}.dashboard-actions-panel .quick-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-actions-panel .quick-action{min-height:125px}.dashboard-overview-grid>.panel{margin:0}}
@media(max-width:720px){
  .topbar-identity-icon{width:34px;height:34px}.topbar-identity-copy strong{max-width:170px;font-size:11px}.topbar-identity-copy small{font-size:9px}.top-actions{gap:7px}
  .sidebar .side-nav .nav-link[data-view="notifications"],.sidebar .side-nav .nav-link[data-view="insights"]{display:none}
  .sidebar .side-nav .nav-link>span:not(.count){display:none}
  .sidebar .side-nav .nav-link::after{content:attr(data-mobile-label);font-size:10px;line-height:1.15;font-weight:750;white-space:nowrap}
  .dashboard-overview-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:19px}
  .dashboard-overview-grid>.panel{margin:0}
  .dashboard-overview-grid .panel-head{padding:20px 18px 16px}
  .dashboard-overview-grid .request-row{padding:15px 16px;grid-template-columns:37px minmax(0,1fr) auto;gap:10px}
  .dashboard-overview-grid .request-row .request-icon{width:36px;height:36px}
  .dashboard-overview-grid .request-row h4{font-size:12px}
  .dashboard-overview-grid .request-row p{font-size:10px}
  .dashboard-actions-body{padding:0 18px 19px}
  .dashboard-actions-panel .quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0}
  .dashboard-actions-panel .quick-action{min-height:131px;padding:16px 14px}
  .dashboard-actions-note{margin-top:16px}
  .workspace{padding-bottom:76px}
}
@media(max-width:390px){.topbar-identity-copy strong{max-width:126px}.dashboard-overview-grid .request-row .request-right .chip{font-size:9px}.dashboard-actions-body{padding:0 15px 16px}}

@media(max-width:720px){.page-head .btn-text-long{display:inline!important}}

/* V5: simple account access and optional-cookie preference. */
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#f0f3f9;padding:5px;border-radius:13px;margin:22px 0 22px;gap:5px}
.auth-tabs button{border:0;border-radius:10px;background:transparent;padding:12px 14px;color:#657089;font:inherit;font-size:13px;font-weight:750;cursor:pointer}
.auth-tabs button.selected{background:#fff;color:#4358b8;box-shadow:0 1px 5px #212a421c}
.auth-extras{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:16px 0}
.auth-extras .btn-link,.auth-cookie-link{font-size:12px}
.auth-cookie-link{display:block;margin:24px auto 0;color:#8490a4;background:none;border:0;text-decoration:underline;cursor:pointer}
.auth-detail{color:#8590a2;font-size:12px;line-height:1.6;margin-top:14px}
.cookie-panel{position:fixed;z-index:10000;bottom:22px;left:50%;transform:translateX(-50%);width:min(660px,calc(100vw - 32px));padding:22px 23px;border-radius:17px;background:#fff;border:1px solid #e5e9f3;box-shadow:0 18px 50px #16204133;display:flex;gap:20px;align-items:center;color:#2a344b}
.cookie-panel strong{display:block;font-size:15px;margin-bottom:5px}
.cookie-panel p{font-size:12px;line-height:1.65;color:#66728b;margin:0}
.cookie-actions{display:flex;flex-direction:column;gap:8px;min-width:153px}
.cookie-actions button{white-space:nowrap;min-height:40px}
.cookie-settings-button{position:fixed;bottom:8px;right:10px;background:#f0f3f9e6;border:1px solid #dce2ee;color:#64708a;opacity:.75;font-size:10px;padding:7px 10px;border-radius:9px;cursor:pointer;z-index:300;transition:opacity .12s}
.cookie-settings-button:hover,.cookie-settings-button:focus-visible{opacity:1}
body:has(.cookie-panel) .cookie-settings-button{display:none}
@media(max-width:720px){
  .cookie-panel{bottom:76px;display:block;padding:18px 17px;box-shadow:0 12px 40px #1620413d}
  .cookie-actions{display:grid;grid-template-columns:1fr 1fr;min-width:0;margin-top:15px}
  .cookie-actions button{min-width:0;white-space:normal;font-size:11px;padding:8px 6px}
  .cookie-settings-button{bottom:76px;right:8px;font-size:9px}
  .auth-extras{align-items:flex-start}
}


/* SchoolHandoff / Institutional UI refresh */
:root {--ink:#1c2c31;--muted:#626f73;--faint:#82908e;--line:#dfe5e3;--bg:#f5f6f3;--brand:#234a43;--brand-deep:#183b34;--violet-bg:#eaf0ed;--shadow:none;--radius:10px}
body{font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--ink)}
h1,h2,h3{font-family:inherit;letter-spacing:-.024em}
.btn{border-radius:7px;font-weight:650;box-shadow:none}
.btn-primary{background:var(--brand);box-shadow:none}.btn-primary:hover{background:var(--brand-deep)}
.btn-plain{border-color:#d4ddda;color:#24413b}.btn-subtle{background:#e9f0ed;color:var(--brand)}
.btn-link{color:var(--brand);font-weight:650}
.brand,.auth-brand{letter-spacing:-.025em;font-family:inherit;font-weight:730}
.brand-mark{border-radius:6px;background:var(--brand);color:#fff;font:bold 20px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.brand-mark:after{display:none}
.sidebar{border-right:1px solid #e0e6e2;padding-top:28px}
.nav-link{border-radius:7px;color:#5d6b6d;font-weight:600}.nav-link.active{background:#eaf0ec;color:#214c40;border-left:3px solid #214c40;padding-left:10px}
.nav-link:hover{background:#edf2ef;color:var(--brand)}
.help-shortcut{width:100%;display:flex;align-items:center;gap:9px;border:1px solid #dce4df;background:#fbfcfb;border-radius:8px;padding:11px 12px;font-size:12px;text-align:left;color:#48615a;margin-bottom:19px}.help-shortcut svg:last-child{margin-left:auto}
.topbar{background:#fff;border-color:#e1e6e3;height:74px}.workspace{padding-top:32px}
.panel,.stat,.section-card,.person-card{border-radius:9px;box-shadow:none;border-color:#e0e6e2}
.welcome-strip{background:#fff;color:var(--ink);border:1px solid #e0e6e2;border-radius:9px;min-height:112px;padding:24px 27px}
.welcome-strip:before,.welcome-strip:after{display:none}.welcome-strip h2{color:var(--ink);font-size:22px;margin:8px 0 5px}.welcome-strip p{color:#6b7875;opacity:1;font-size:13px}
.stat{padding:20px}.stat-value{font-family:inherit}.stat-icon.violet,.stat-icon.blue,.stat-icon.mint,.stat-icon.gold{background:#edf2ef;color:#42635a}
.request-icon.violet,.request-icon.gold,.request-icon.blue,.request-icon.green,.request-icon.rose{background:#eff2f0;color:#49645a}
.chip{border-radius:5px}.chip.progress{color:#485c72;background:#eef1f3}.chip.open{color:#805c32;background:#f7f0e7}.chip.resolved{color:#336953;background:#e9f2eb}
.quick-action{border-color:#e3e7e4;border-radius:8px}
/* Authentication: one intentional column, no marketing split */
.auth-page.auth-page--clean{min-height:100svh;background:#f6f7f5;display:flex;flex-direction:column}
.auth-page--clean .auth-site-header{width:100%;flex:0 0 auto;background:#fff;border-bottom:1px solid #e1e6e2}
.auth-page--clean .auth-site-inner{width:min(100% - 48px,1160px);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.auth-page--clean .auth-site-header .auth-site-inner{height:83px}
.auth-page--clean .auth-brand{position:static;font-size:19px;display:flex;align-items:center;gap:10px;color:#1d3330}
.auth-page--clean .auth-brand .brand-mark{width:34px;height:34px;display:grid;place-items:center;font-size:19px;background:#254b43;color:#fff}
.auth-page--clean .auth-portal-label{font-size:10px;font-weight:750;letter-spacing:.14em;color:#788680}
.auth-page--clean .auth-main{flex:1;display:flex;min-height:auto;align-items:center;justify-content:center;padding:68px 20px 78px}
.auth-page--clean .auth-content{width:100%;max-width:464px;background:#fff;border:1px solid #dbe1dd;border-radius:9px;padding:43px 44px 37px;box-shadow:none}
.auth-page--clean .auth-kicker{color:#49675d;font-size:10px;letter-spacing:.14em;font-weight:750;margin:0 0 12px}
.auth-page--clean .auth-intro{padding:0 0 6px}.auth-page--clean .auth-content h1{font-size:27px;font-weight:730;letter-spacing:-.034em;line-height:1.2;margin-bottom:12px;color:#203330}
.auth-page--clean .auth-content .auth-desc{font-size:13px;line-height:1.6;color:#66746e;margin-bottom:22px}
.auth-page--clean .auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0;background:transparent;border-bottom:1px solid #dce4df;border-radius:0;padding:0;margin:10px 0 25px}
.auth-page--clean .auth-tabs button{border:0;border-radius:0;background:none;box-shadow:none;padding:0 12px 13px;font-size:13px;color:#7e8985;font-weight:620;position:relative}
.auth-page--clean .auth-tabs button.selected{color:#1b4338;background:none;box-shadow:none}
.auth-page--clean .auth-tabs button.selected:after{content:"";height:2px;background:#1f5846;position:absolute;bottom:-1px;left:0;right:0}
.auth-page--clean .form-field{margin-bottom:19px}
.auth-page--clean .form-field label{font-size:12px;color:#34443e;font-weight:675;display:block;margin-bottom:7px}
.auth-page--clean .form-field input{height:46px;min-height:46px;border-radius:6px;border:1px solid #cfd9d3;padding:0 13px;background:#fff;font-size:14px;color:#20302c;box-shadow:none}
.auth-page--clean .form-field input::placeholder{color:#a3aca6}
.auth-page--clean form .btn-primary{min-height:45px;margin-top:7px;font-size:13px;border-radius:6px;letter-spacing:0}
.auth-page--clean .auth-extras{margin:18px 0 0;gap:10px}.auth-page--clean .auth-extras .btn-link{font-weight:550;font-size:12px;text-decoration:underline;text-decoration-color:#b4c4bd;text-underline-offset:3px}
.auth-page--clean .auth-security-note{display:flex;align-items:flex-start;gap:9px;border-top:1px solid #e6eae7;padding-top:19px;margin-top:30px;color:#85908a;font-size:11px;line-height:1.6}
.auth-page--clean .auth-security-note svg{margin-top:1px;flex-shrink:0;color:#708077}
.auth-page--clean .auth-detail{margin-top:15px;color:#67746f;line-height:1.6}
.auth-page--clean .auth-signed-in{background:#f5f7f5;border:1px solid #e1e7e2;border-radius:6px;padding:10px 12px;color:#53645d;font-size:12px;margin:0 0 20px;overflow-wrap:anywhere}
.auth-page--clean .auth-signout{display:flex;align-items:center;gap:5px;margin-top:24px}
.auth-page--clean .auth-site-footer{border-top:1px solid #e2e7e4;background:#fff}
.auth-page--clean .auth-site-footer .auth-site-inner{min-height:62px;font-size:11px;color:#7b8880}
.auth-page--clean .auth-site-footer div>div{display:flex;align-items:center;gap:12px}
.auth-page--clean .auth-site-footer button{border:0;background:transparent;padding:0;color:#52695d;font-size:11px}
.auth-page--clean .auth-site-footer a{color:#52695d}
.auth-page--clean .auth-footer-divider{color:#bac3bc}
.auth-page--clean .auth-or{letter-spacing:.07em;font-weight:700;font-size:10px}
.boot-mark{background:#234a43;border-radius:8px}
.cookie-settings-button{background:#fff;border-radius:6px;border-color:#dae2dd;color:#405b52}
@media(max-width:720px){
  .auth-page--clean .auth-site-inner{width:min(100% - 36px,1160px)}
  .auth-page--clean .auth-site-header .auth-site-inner{height:69px}
  .auth-page--clean .auth-portal-label{font-size:9px}
  .auth-page--clean .auth-main{padding:28px 16px 40px;align-items:flex-start}
  .auth-page--clean .auth-content{max-width:460px;border-radius:8px;padding:32px 25px 30px;margin:0 auto}
  .auth-page--clean .auth-content h1{font-size:24px}
  .auth-page--clean .auth-site-footer .auth-site-inner{min-height:66px;flex-wrap:wrap;padding:14px 0;row-gap:6px}
  .welcome-strip{padding:19px 18px;min-height:auto}.welcome-strip h2{font-size:19px}
  .nav-link.active{border-left:0;border-top:2px solid #214c40;padding-left:0}
}
@media(max-width:390px){.auth-page--clean .auth-content{padding:27px 20px}.auth-page--clean .auth-portal-label{letter-spacing:.09em}}

/* SchoolHandoff custom logo and bright staff-access page */
.brand-mark{display:block;width:36px;height:36px;object-fit:contain;border-radius:0;background:transparent;padding:0;flex:none}
.brand-mark:after{display:none}
.auth-page--clean .auth-brand .brand-mark,.auth-brand .brand-mark{width:36px;height:36px;background:transparent;color:transparent}
.boot-mark{width:60px;height:60px;border-radius:0;background:transparent;color:transparent;display:grid;place-items:center;margin-bottom:17px}
.boot-mark img{width:60px;height:60px;object-fit:contain;display:block}
.auth-page.auth-page--clean{background:linear-gradient(180deg,#f5f8ff 0%,#ffffff 58%,#f7f9ff 100%)}
.auth-page--clean .auth-site-header{background:#fff;border-bottom-color:#e8edf7}
.auth-page--clean .auth-brand{color:#1e3150}
.auth-page--clean .auth-portal-label{color:#6e7f98}
.auth-page--clean .auth-main{padding:46px 20px 64px}
.auth-page--clean .auth-stack{width:100%;max-width:464px;margin:0 auto}
.auth-page--clean .auth-what{text-align:center;margin:0 0 23px}
.auth-page--clean .auth-what-eyebrow{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:#4d5bd5;margin:0 0 10px}
.auth-page--clean .auth-what h2{font-size:clamp(21px,2.1vw,26px);letter-spacing:-.035em;line-height:1.24;font-weight:760;color:#182b4b;margin:0 0 10px}
.auth-page--clean .auth-what>p:last-child{font-size:12.5px;line-height:1.7;color:#61718a;margin:0 auto;max-width:425px}
.auth-page--clean .auth-content{max-width:none;width:100%;border-color:#e2e7f2;border-radius:13px;box-shadow:0 15px 44px rgba(60,78,125,.075)}
.auth-page--clean .auth-kicker{color:#4d5bd5}
.auth-page--clean .auth-content h1{color:#1b2b47}
.auth-page--clean .auth-content .auth-desc{color:#697891}
.auth-page--clean .auth-tabs{border-bottom-color:#e1e8f3}
.auth-page--clean .auth-tabs button.selected{color:#3d51c8}
.auth-page--clean .auth-tabs button.selected:after{background:#4d5bd5}
.auth-page--clean .form-field input:focus{border-color:#6576df;box-shadow:0 0 0 3px rgba(77,91,213,.12)}
.auth-page--clean .auth-security-note{border-top-color:#e8edf5;color:#7b879e}
.auth-page--clean form .btn-primary{background:#4d5bd5;color:#fff}
.auth-page--clean form .btn-primary:hover{background:#3547c7}
.auth-page--clean .auth-site-footer{border-top-color:#e9edf5}
@media(max-width:720px){.auth-page--clean .auth-main{padding:26px 16px 40px}.auth-page--clean .auth-stack{max-width:460px}.auth-page--clean .auth-what{margin-bottom:19px;padding:0 8px}.auth-page--clean .auth-what h2{font-size:22px}.auth-page--clean .auth-what>p:last-child{font-size:12px}}
