.app-shell{background:var(--color-background);width:100vw;height:100vh;display:flex;overflow:hidden}.app-sidebar{flex:0 0 var(--sidebar-width);width:var(--sidebar-width);min-width:var(--sidebar-width);height:100vh;color:var(--color-primary-dark);background:var(--color-primary-light);border-right:1px solid #b8d7ec;flex-direction:column;transition:flex-basis .16s,width .16s,min-width .16s;display:flex;overflow:hidden}.app-shell--collapsed .app-sidebar{flex-basis:var(--sidebar-collapsed-width);width:var(--sidebar-collapsed-width);min-width:var(--sidebar-collapsed-width)}.app-sidebar__brand{white-space:nowrap;border-bottom:1px solid #b8d7ec;flex:0 0 74px;align-items:center;gap:10px;padding:12px 16px;display:flex;overflow:hidden}.app-sidebar__logo{color:var(--color-primary-dark);flex:none;font-size:34px}.app-sidebar__brand strong,.app-sidebar__brand span{display:block}.app-sidebar__brand strong{font-size:20px;line-height:24px}.app-sidebar__brand span{color:var(--color-text-secondary);font-size:var(--font-size-caption)}.app-sidebar__scroll-region{scrollbar-color:#8eb9d8 transparent;scrollbar-width:thin;flex:1;min-height:0;overflow:hidden auto}.app-sidebar .ant-menu{color:var(--color-primary-dark);font-size:var(--font-size-body);background:0 0;border-inline-end:0;font-weight:500}.app-sidebar .ant-menu-item,.app-sidebar .ant-menu-submenu-title{border-radius:0;width:100%;margin:0}.app-sidebar .ant-menu-sub .ant-menu-item{padding-left:48px!important}.app-sidebar__version{color:var(--color-text-secondary);font-size:var(--font-size-caption);text-align:center;white-space:nowrap;border-top:1px solid #b8d7ec;flex:0 0 30px;padding:7px 12px;overflow:hidden}.app-main-panel{flex-direction:column;flex:1;min-width:0;height:100vh;display:flex;overflow:hidden}.app-header{flex:0 0 var(--header-height);min-width:0;height:var(--header-height);color:#fff;background:var(--color-primary-dark);box-shadow:var(--shadow-subtle);justify-content:space-between;align-items:center;padding:0 16px;display:flex}.app-header__start,.app-header__actions{align-items:center;display:flex}.app-header__start{gap:12px;min-width:0}.app-header__actions{flex:0 auto;gap:15px;font-size:13px}.app-header__menu-button,.app-header__actions .ant-btn{color:#fff}.app-header__menu-button{font-size:19px}.app-header__system-name{color:var(--color-brand-accent);text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:700;overflow:hidden}.app-header__user{align-items:center;gap:6px;font-weight:600;display:flex}.app-header__school,.app-header__academic-year{color:#d9efff;white-space:nowrap}.app-header__workspace-label{min-width:168px;display:inline-flex}.app-header__workspace-switcher{width:100%;color:var(--color-text)}.app-header__visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-header__actions .ant-select-selector{border-color:#b8d7ec!important}.app-header__user{white-space:nowrap}.app-content-viewport{min-width:0;min-height:0;padding:var(--content-padding);background:var(--color-background);flex:1;overflow:auto}.app-footer{flex:0 0 var(--footer-height);height:var(--footer-height);color:#eef8ff;font-size:var(--font-size-caption);white-space:nowrap;background:var(--color-primary-dark);justify-content:space-between;align-items:center;padding:0 16px;display:flex;overflow:hidden}.app-footer__context-note{color:#d9efff;margin-left:auto}@media (width<=1180px){.app-header__school,.app-header__academic-year,.app-footer span:nth-child(2){display:none}}@media (width<=760px){.app-header{padding:0 8px}.app-header__start{gap:4px}.app-header__system-name{display:none}.app-header__actions{gap:8px}.app-header__workspace-label{min-width:140px}.app-header__user{text-overflow:ellipsis;max-width:120px;overflow:hidden}}.operations-links{flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 16px;font-family:Barlow,sans-serif;display:flex}.operations-links span{color:#475467}.audit-filters{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.audit-filters label{flex-direction:column;gap:6px;display:flex}.audit-filters input,.audit-filters select{color:#101828;min-width:0;font:inherit;border:1px solid #d0d5dd;border-radius:6px;padding:8px}.audit-filters input::placeholder{color:#667085}.operations-audit-page{font-family:Barlow,sans-serif}.audit-detail{border:1px solid #d0d5dd;border-radius:8px;margin-top:16px;padding:16px}.audit-detail dl>div{grid-template-columns:minmax(150px,1fr) minmax(0,3fr);gap:12px;display:grid}.audit-detail dd{overflow-wrap:anywhere;margin:0}.audit-detail dt{font-weight:600}.operations-links a:focus-visible,.audit-filters button:focus-visible,.audit-detail button:focus-visible{outline-offset:3px;outline:2px solid #175cd3}@media (width<=640px){.audit-filters{grid-template-columns:1fr}.audit-detail dl>div{grid-template-columns:1fr;gap:4px;margin-bottom:12px}.audit-filters button{width:100%}}:root{--color-primary-dark:#0d4f8b;--color-primary:#176db1;--color-primary-light:#e5f2fd;--color-primary-hover:#d5e9f8;--color-primary-active:#c6dff2;--color-background:#fff;--color-surface:#fff;--color-text-primary:#212121;--color-text-secondary:#616161;--color-border:#d0d7de;--color-table-alternate:#eaf4fb;--color-success:#2e7d32;--color-warning:#b26a00;--color-error:#c62828;--color-info:#176db1;--color-brand-accent:#ffdc35;--font-family:"Barlow", Arial, sans-serif;--font-size-title:28px;--font-size-section:20px;--font-size-card-title:17px;--font-size-body:14px;--font-size-table:14px;--font-size-label:14px;--font-size-helper:13px;--font-size-caption:12px;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--line-height-body:1.5;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--sidebar-width:260px;--sidebar-collapsed-width:72px;--header-height:64px;--footer-height:32px;--content-padding:24px;--content-gap:20px;--card-padding:16px;--control-height:40px;--button-height:40px;--radius-small:4px;--radius-medium:10px;--border-standard:1px solid var(--color-border);--table-row-min-height:40px;--shadow-subtle:0 1px 4px #0d4f8b1a}html,body,#root{width:100%;min-width:1024px;height:100%;margin:0;overflow:hidden}:root{font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-background);font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}body,button,input,select,textarea{font-family:var(--font-family)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.ant-btn-default{color:var(--color-primary-dark);background:var(--color-primary-light);border-color:#a9cee9}
