/* Final School visual fidelity layer.
 * Reference screenshots were captured at ~30% browser zoom. Their hierarchy,
 * composition and visual language are the reference; screenshot pixels are not.
 * This file is loaded last and defines the usable 100% browser scale.
 */
:root{--school-ui-sidebar:248px;--school-ui-topbar:72px;--school-ui-content-x:32px;--school-ui-border:#e9ecf1;--school-ui-primary:#536ff1;--school-ui-primary-soft:#eef1ff}
html{font-size:16px}body{font-size:14px!important;line-height:1.5!important;background:#fff!important;color:#263149!important}
.school-shell{--school-sidebar:var(--school-ui-sidebar)!important;--school-topbar:var(--school-ui-topbar)!important;background:#fff!important}
.school-shell .school-shell__sidebar{width:var(--school-ui-sidebar)!important;padding:20px 16px 16px!important;background:#fbfbfc!important;border-inline-end:1px solid var(--school-ui-border)!important;box-shadow:none!important}
.school-shell .school-shell__brand{gap:8px!important;padding:6px 8px 20px!important}.school-shell .school-shell__brand-logo{width:72px!important;height:72px!important}.school-shell .school-shell__brand-mark{width:58px!important;height:58px!important;font-size:21px!important}.school-shell .school-shell__brand-copy strong{max-width:194px!important;font-size:15px!important;line-height:1.3!important}.school-shell .school-shell__brand-copy>span{font-size:12px!important}.school-shell .school-shell__brand-copy small{font-size:11px!important}
.school-shell .school-shell__nav{gap:4px!important;padding:18px 0 12px!important}.school-shell .school-shell__nav-item{min-height:44px!important;gap:11px!important;padding:10px 12px!important;border-radius:8px!important;font-size:14px!important;line-height:1.3!important}.school-shell .school-shell__nav-item .school-icon{width:18px!important;height:18px!important}.school-shell .school-shell__nav-item.is-active{background:var(--school-ui-primary-soft)!important;color:var(--school-ui-primary)!important}.school-shell .school-shell__nav-item.is-active::before{inset-block:5px!important;width:3px!important}
.school-shell .school-shell__sidebar-footer{gap:8px!important;padding:16px 8px 4px!important}.school-shell .school-shell__footer-mark{width:30px!important;height:30px!important;font-size:12px!important}.school-shell .school-shell__sidebar-footer strong{font-size:14px!important}.school-shell .school-shell__sidebar-footer small{font-size:11px!important}
.school-shell .school-shell__topbar{height:var(--school-ui-topbar)!important;min-height:var(--school-ui-topbar)!important;gap:10px!important;padding:0 28px!important;background:#fff!important;border-bottom:1px solid #eff1f4!important;box-shadow:none!important}.school-shell .school-shell__search{width:min(430px,34vw)!important;height:44px!important;gap:9px!important;padding:0 14px!important;border-radius:9px!important;background:#fafafa!important}.school-shell .school-shell__search .school-icon{width:18px!important;height:18px!important}.school-shell .school-shell__search input{height:42px!important;min-height:42px!important;font-size:14px!important}.school-shell .school-shell__tasks{height:42px!important;min-width:108px!important;gap:8px!important;padding:0 13px!important;font-size:13px!important}.school-shell .school-shell__tasks .school-icon{width:16px!important;height:16px!important}
.school-shell .school-shell__icon-button,.school-shell .school-shell__language,.school-shell .school-shell__profile{height:42px!important;min-height:42px!important;border-radius:9px!important}.school-shell .school-shell__icon-button{width:42px!important}.school-shell .school-shell__icon-button .school-icon{width:18px!important;height:18px!important}.school-shell .school-shell__language{min-width:64px!important;padding:0 10px!important}.school-shell .school-shell__language strong{font-size:13px!important}.school-shell .school-shell__language .school-icon{width:13px!important;height:13px!important}.school-shell .school-shell__profile{min-width:168px!important;gap:8px!important;padding:3px 9px!important}.school-shell .school-shell__avatar{width:34px!important;height:34px!important;font-size:12px!important}.school-shell .school-shell__profile-copy{max-width:112px!important}.school-shell .school-shell__profile-copy strong{font-size:13px!important}.school-shell .school-shell__profile>.school-icon{width:13px!important;height:13px!important}
.school-shell .school-shell__content{max-width:none!important;padding:32px var(--school-ui-content-x) 64px!important;background:#fff!important}.school-shell .school-page-header{margin:0 0 28px!important;padding:0!important;min-height:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}.school-shell .school-page-header::after{display:none!important}.school-shell .school-page-header__crumb{font-size:12px!important}.school-shell .school-page-header h1{margin:9px 0 0!important;font-size:28px!important;line-height:1.22!important;font-weight:750!important;letter-spacing:-.02em!important}.school-shell .school-page-header p{max-width:850px!important;margin:8px 0 0!important;font-size:14px!important;line-height:1.6!important;color:#80899a!important}
.school-shell .school-card{border:1px solid var(--school-ui-border)!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important}.school-shell .school-card h2{font-size:19px!important;line-height:1.35!important}.school-shell .school-card h3{font-size:15px!important;line-height:1.4!important}.school-shell .school-button{min-height:42px!important;padding:9px 15px!important;border-radius:8px!important;font-size:14px!important;line-height:1.2!important;box-shadow:none!important;transform:none!important}.school-shell .school-input,.school-shell input:not([type="checkbox"]):not([type="radio"]),.school-shell select,.school-shell textarea{min-height:44px!important;border-radius:8px!important;font-size:14px!important;line-height:1.4!important;box-shadow:none!important}.school-shell textarea{min-height:110px!important;padding:11px 12px!important}.school-shell label{font-size:13px!important;line-height:1.4!important}.school-shell small{font-size:12px!important;line-height:1.45!important}.school-shell code{font-size:12px!important}
.school-shell .school-table-wrap{border-radius:10px!important}.school-shell .school-table{border-collapse:collapse!important}.school-shell .school-table th{padding:13px 15px!important;background:#fff!important;color:#727d90!important;font-size:12px!important;line-height:1.3!important}.school-shell .school-table td{padding:14px 15px!important;color:#47536a!important;font-size:14px!important;line-height:1.45!important}.school-shell .school-table tr{border-bottom:1px solid #eef0f4!important}.school-shell .school-badge{min-height:28px!important;padding-inline:10px!important;border-radius:999px!important;font-size:12px!important}
.school-shell .portal-state,.school-shell .school-empty-state,.school-shell .operations-empty,.school-shell .student-empty,.school-shell .teacher-empty,.school-shell .parent-empty{min-height:260px!important;padding:28px!important}.school-shell .portal-state h2,.school-shell .school-empty-state h2,.school-shell .operations-empty h2{font-size:18px!important}.school-shell .portal-state p,.school-shell .school-empty-state p,.school-shell .operations-empty p{font-size:14px!important;line-height:1.55!important}
.school-shell[data-role="admin"] .school-stack>.school-grid:first-child>.school-card,.school-shell[data-role="academicAdmin"] .school-stack>.school-grid:first-child>.school-card,.school-shell[data-role="superAdmin"] .school-stack>.school-grid:first-child>.school-card{min-height:118px!important;padding:18px!important;border-radius:12px!important}.school-shell[data-role="admin"] .school-stack>.school-grid:first-child h3,.school-shell[data-role="academicAdmin"] .school-stack>.school-grid:first-child h3,.school-shell[data-role="superAdmin"] .school-stack>.school-grid:first-child h3{font-size:12px!important}.school-shell[data-role="admin"] .school-stack>.school-grid:first-child strong,.school-shell[data-role="academicAdmin"] .school-stack>.school-grid:first-child strong,.school-shell[data-role="superAdmin"] .school-stack>.school-grid:first-child strong{font-size:30px!important}.school-shell[data-role="admin"] .school-table thead th,.school-shell[data-role="academicAdmin"] .school-table thead th,.school-shell[data-role="superAdmin"] .school-table thead th{font-size:12px!important}
.school-shell[data-role="teacher"] .teacher-class-grid,.school-shell[data-role="student"] .student-subject-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}.school-shell[data-role="teacher"] .teacher-dashboard__hero,.school-shell[data-role="parent"] .parent-family-hero,.school-shell[data-role="admin"] .ops-admin-summary,.school-shell[data-role="academicAdmin"] .ops-admin-summary,.school-shell[data-role="superAdmin"] .ops-admin-summary{border-radius:12px!important;box-shadow:none!important}
.school-shell .school-shell__language-wrap{position:relative;margin:0;padding:0;border:0;background:transparent}.school-shell .school-shell__language-wrap>summary{list-style:none;cursor:pointer}.school-shell .school-shell__language-wrap>summary::-webkit-details-marker{display:none}.school-shell .school-shell__language-menu{position:absolute;z-index:90;inset-block-start:calc(100% + 8px);inset-inline-end:0;width:132px!important;padding:7px 0!important;border:1px solid var(--school-ui-border)!important;border-radius:9px!important;background:#fff!important;box-shadow:0 12px 30px rgba(28,36,57,.13)!important}.school-shell .school-shell__language-menu button{width:100%;min-height:40px;padding:8px 14px;border:0;background:#fff;color:#667185;font-size:13px;font-weight:680;text-align:start}.school-shell .school-shell__profile-menu{width:274px!important;padding:8px 0!important;border:1px solid var(--school-ui-border)!important;border-radius:10px!important;background:#fff!important;box-shadow:0 12px 30px rgba(28,36,57,.13)!important}.school-shell .school-shell__profile-menu a{min-height:44px!important;padding:9px 16px!important;gap:11px!important;font-size:14px!important}.school-shell .school-shell__profile-menu .school-icon{width:18px!important;height:18px!important}
html body .school-shell__panel-scrim{background:rgba(35,39,49,.42)!important;backdrop-filter:none!important}html body .school-shell__utility-panel{width:min(420px,100vw)!important;padding:0!important;border-inline-start:1px solid var(--school-ui-border)!important;background:#fff!important;box-shadow:none!important}html body .school-shell__utility-panel .school-utility-panel__head{min-height:64px!important;height:64px!important;padding:0 18px!important;border-bottom:1px solid var(--school-ui-border)!important}html body .school-shell__utility-panel .school-utility-panel__head strong{font-size:16px!important}html body .school-shell__utility-panel .school-utility-row{min-height:76px!important;padding:13px 16px!important;gap:11px!important}html body .school-shell__utility-panel .school-utility-row__title strong{font-size:14px!important}html body .school-shell__utility-panel .school-utility-row__subject{font-size:13px!important}html body .school-shell__utility-panel .school-utility-row__copy p{font-size:12.5px!important;line-height:1.45!important}
[dir="rtl"] .school-shell .school-shell__profile-menu,[dir="rtl"] .school-shell__utility-panel,[dir="rtl"] .school-shell__language-menu{text-align:right!important}[dir="rtl"] .school-shell .school-table th,[dir="rtl"] .school-shell .school-table td,[dir="rtl"] .school-shell label{text-align:right!important}
@media(max-width:1200px){:root{--school-ui-sidebar:224px;--school-ui-content-x:24px}.school-shell .school-shell__search{width:min(340px,32vw)!important}}
@media(max-width:900px){.school-shell{display:block!important}.school-shell .school-shell__sidebar{width:min(300px,86vw)!important}.school-shell .school-shell__topbar{padding-inline:14px!important}.school-shell .school-shell__search{width:auto!important;max-width:360px!important}.school-shell .school-shell__content{padding:24px 16px 48px!important}.school-shell[data-role="teacher"] .teacher-class-grid,.school-shell[data-role="student"] .student-subject-grid{grid-template-columns:1fr!important}}
@media(max-width:600px){:root{--school-ui-topbar:64px}.school-shell .school-shell__content{padding:20px 12px 40px!important}.school-shell .school-page-header h1{font-size:24px!important}.school-shell .school-page-header p{font-size:13px!important}.school-shell .school-button{min-height:44px!important}.school-shell .school-input,.school-shell input:not([type="checkbox"]):not([type="radio"]),.school-shell select{min-height:46px!important}html body .school-shell__utility-panel{width:100vw!important}}
