:root{--aw-primary:#0b3a7d;--aw-primary-deep:#062f6d;--aw-primary-soft:#174f95;--aw-blue:#2563a8;--aw-blue-soft:#edf4fb;--aw-silver:#aeb6c0;--aw-silver-soft:#e8ecf0;--aw-bg:#f4f7fb;--aw-surface:#fff;--aw-surface-soft:#f9fbfd;--aw-text:#172033;--aw-text-soft:#667386;--aw-text-muted:#8b96a7;--aw-border:#e1e7ef;--aw-border-strong:#d1d9e4;--aw-success:#16855b;--aw-warning:#b77a14;--aw-danger:#bd3f49;--aw-danger-soft:#fff1f2;--aw-radius-sm:10px;--aw-radius-md:16px;--aw-radius-lg:24px;--aw-shadow-sm:0 1px 3px #1423370d, 0 9px 24px #1423370a;--aw-shadow-md:0 18px 50px #122b4e1a;--aw-transition:.18s cubic-bezier(.2,.8,.2,1)}*{box-sizing:border-box}html{background:var(--aw-bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-text-size-adjust:100%;min-height:100%}body{background:radial-gradient(circle at 100% 0%, #0b3a7d0d, transparent 32rem), var(--aw-bg);min-width:320px;min-height:100vh;color:var(--aw-text);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-family:Segoe UI,Tahoma,Arial,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}img,svg{max-width:100%;display:block}button{touch-action:manipulation}::selection{background:#0b3a7d29}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #2563a833}.aw-page-head{justify-content:space-between;align-items:end;gap:20px;margin:24px 0 26px;display:flex}.aw-page-head h1{letter-spacing:-.03em;margin:0;font-size:clamp(28px,4vw,40px);line-height:1.2}.aw-page-head p{color:var(--aw-text-soft);margin:10px 0 0;font-size:13px;line-height:1.8}.aw-eyebrow{letter-spacing:.02em;font-weight:900;color:var(--aw-primary)!important;margin:0 0 7px!important;font-size:11px!important}.aw-btn{cursor:pointer;min-height:42px;transition:all var(--aw-transition);border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 15px;font-size:12px;font-weight:800;display:inline-flex}.aw-btn-primary{color:#fff;background:linear-gradient(135deg, var(--aw-primary-soft), var(--aw-primary-deep));box-shadow:0 10px 24px #0b3a7d2e}.aw-btn-primary:hover{transform:translateY(-1px);box-shadow:0 14px 28px #0b3a7d3b}.aw-btn-soft{color:var(--aw-primary);border-color:var(--aw-border);background:#fff}.aw-btn-soft:hover{border-color:var(--aw-border-strong);background:var(--aw-blue-soft)}.aw-btn-danger{color:var(--aw-danger);background:var(--aw-danger-soft);border-color:#bd3f492e}.aw-btn:disabled{opacity:.55;cursor:wait;transform:none}.aw-card{border:1px solid var(--aw-border);border-radius:var(--aw-radius-md);background:var(--aw-surface);box-shadow:var(--aw-shadow-sm)}.aw-card-head{border-bottom:1px solid var(--aw-border);justify-content:space-between;align-items:center;gap:18px;padding:19px 20px;display:flex}.aw-card-head h2{margin:0;font-size:15px}.aw-card-body{padding:20px}.aw-grid{gap:16px;display:grid}.aw-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.aw-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.aw-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.aw-field{gap:7px;display:grid}.aw-field label{color:var(--aw-text);font-size:11px;font-weight:800}.aw-input,.aw-select,.aw-textarea{border:1px solid var(--aw-border);width:100%;min-height:43px;color:var(--aw-text);transition:border-color var(--aw-transition), box-shadow var(--aw-transition);background:#fff;border-radius:11px}.aw-input,.aw-select{padding:0 12px}.aw-textarea{resize:vertical;min-height:92px;padding:11px 12px}.aw-input:hover,.aw-select:hover,.aw-textarea:hover{border-color:var(--aw-border-strong)}.aw-input:focus,.aw-select:focus,.aw-textarea:focus{border-color:var(--aw-primary-soft);outline:0;box-shadow:0 0 0 4px #0b3a7d12}.aw-error{color:var(--aw-danger);font-size:10px}.aw-check{color:var(--aw-text-soft);align-items:center;gap:8px;font-size:11px;font-weight:700;display:inline-flex}.aw-check input{width:16px;height:16px;accent-color:var(--aw-primary)}.aw-table-wrap{overflow:auto}.aw-table{border-collapse:collapse;width:100%;min-width:680px}.aw-table th,.aw-table td{border-bottom:1px solid var(--aw-border);text-align:right;vertical-align:middle;padding:13px 14px}.aw-table th{color:var(--aw-text-soft);background:var(--aw-surface-soft);white-space:nowrap;font-size:10px;font-weight:900}.aw-table td{font-size:12px}.aw-table tbody tr:hover{background:#fbfcfe}.aw-table tbody tr:last-child td{border-bottom:0}.aw-badge{border-radius:999px;align-items:center;gap:5px;min-height:25px;padding:0 8px;font-size:10px;font-weight:800;display:inline-flex}.aw-badge-success{color:#0f6e4a;background:#16855b17}.aw-badge-muted{color:var(--aw-text-soft);background:#eef2f6}.aw-badge-primary{color:var(--aw-primary);background:#0b3a7d14}.aw-empty{color:var(--aw-text-soft);text-align:center;padding:34px 20px;font-size:12px}.aw-actions{flex-wrap:wrap;gap:8px;display:flex}.aw-modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#08193075;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.aw-modal{background:#fff;border:1px solid #ffffff59;border-radius:22px;width:min(100%,720px);max-height:min(90vh,850px);overflow:auto;box-shadow:0 28px 80px #0819303d}.aw-modal-head{z-index:2;border-bottom:1px solid var(--aw-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;display:flex;position:sticky;top:0}.aw-modal-head h3{margin:0;font-size:16px}.aw-modal-close{width:34px;height:34px;color:var(--aw-text-soft);background:var(--aw-surface-soft);cursor:pointer;border:0;border-radius:10px;place-items:center;font-size:20px;display:grid}.aw-modal-body{padding:20px}.aw-modal-foot{justify-content:flex-end;gap:9px;padding:0 20px 20px;display:flex}@media (width<=1000px){.aw-grid-4,.aw-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.aw-page-head{flex-direction:column;align-items:stretch;margin-top:18px}.aw-grid-2,.aw-grid-3,.aw-grid-4{grid-template-columns:1fr}.aw-card-head{flex-direction:column;align-items:flex-start}.aw-modal-backdrop{padding:10px}.aw-modal{border-radius:17px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}html.aw-nav-open,html.aw-nav-open body{overscroll-behavior:none;overflow:hidden}@media (width<=980px){body{overflow-x:hidden}.app-shell .workspace{width:100%;max-width:100vw;overflow-x:clip}.app-shell .workspace>:not(.topbar){max-width:100%}.app-shell .workspace :is(.page-head,.head,.hero,.teacher-hero){flex-direction:column!important;align-items:stretch!important;gap:12px!important}.app-shell .workspace :is(.page-head,.head,.hero,.teacher-hero) h1{letter-spacing:-.02em!important;font-size:clamp(23px,5.8vw,29px)!important;line-height:1.3!important}.app-shell .workspace :is(.page-head,.head,.hero,.teacher-hero) p,.app-shell .workspace :is(.page-head,.head,.hero,.teacher-hero) span{line-height:1.7}.app-shell .workspace :is(.head-actions,.actions,.hero-actions,.filters){width:100%;max-width:100%;flex-wrap:wrap!important}.app-shell .workspace :is(.head-actions,.actions,.hero-actions,.filters)>:is(button,a,select,input){min-width:0}.app-shell .workspace :is(.stats-grid,.stats,.quick-grid,.summary-grid,.teacher-stats){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.app-shell .workspace :is(.grid.two,.grid.attendance-layout,.security-grid,.session-layout,.recovery-card,.detail-grid,.lower-grid,.layout){grid-template-columns:1fr!important}.app-shell .workspace .context-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}.app-shell .workspace :is(.aw-table-wrap,.table-wrap,.table){-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#bac6d4 transparent;width:100%;max-width:100%;overflow-y:hidden;overflow-x:auto!important}.app-shell .workspace :is(.aw-table-wrap,.table-wrap,.table)::-webkit-scrollbar{height:7px}.app-shell .workspace :is(.aw-table-wrap,.table-wrap,.table)::-webkit-scrollbar-thumb{background:#bac6d4;border-radius:99px}.app-shell .workspace :is(.aw-card,.card,.panel,.empty-card){max-width:100%}}@media (width<=720px){:root{--aw-radius-md:14px;--aw-radius-lg:18px}.aw-page-head{flex-direction:column;align-items:stretch;gap:11px;margin:14px 0 16px}.aw-page-head h1{font-size:25px}.aw-page-head p{margin-top:6px;font-size:11px;line-height:1.7}.aw-card-head{flex-direction:column;align-items:stretch;gap:10px;padding:14px}.aw-card-body{padding:14px}.aw-btn{border-radius:11px;min-height:44px;padding-inline:13px}.aw-actions{gap:7px;width:100%}.aw-actions>*{flex:auto}.aw-input,.aw-select,.aw-textarea,.app-shell .workspace input:not([type=checkbox]):not([type=radio]),.app-shell .workspace select,.app-shell .workspace textarea{font-size:16px!important}.app-shell .workspace :is(.card,.panel){border-radius:14px!important;padding:14px!important}.app-shell .workspace :is(.page-head,.head,.hero,.teacher-hero){margin-top:12px!important;margin-bottom:14px!important}.app-shell .workspace :is(.page-head,.head)>div:last-child,.app-shell .workspace :is(.hero-actions,.head-actions,.actions){align-items:stretch!important}.app-shell .workspace :is(.hero-actions,.head-actions,.actions)>:is(button,a){text-align:center;justify-content:center;align-items:center;min-height:42px;display:inline-flex}.app-shell .workspace :is(.toolbar,.selector-card,.enroll-form){grid-template-columns:1fr!important}.app-shell .workspace :is(.toolbar,.selector-card,.filters)>*{width:100%!important;max-width:100%!important}.app-shell .workspace :is(.stats-grid,.stats,.quick-grid,.summary-grid,.teacher-stats) article{min-width:0!important;min-height:88px!important;padding:13px!important}.app-shell .workspace :is(.stats-grid,.stats,.quick-grid,.summary-grid,.teacher-stats) article b,.app-shell .workspace :is(.stats-grid,.stats,.quick-grid,.summary-grid,.teacher-stats) article strong{font-size:20px!important}.app-shell .workspace :is(.portal-tabs,.tabs){z-index:18;top:calc(62px + env(safe-area-inset-top));scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;position:sticky;border-inline:0!important;border-radius:0!important;margin-inline:-12px!important;padding:6px 12px!important;overflow-x:auto!important}.app-shell .workspace :is(.portal-tabs,.tabs)>button{scroll-snap-align:start;min-height:38px}.app-shell .workspace :is(.result-list,.attendance-list,.notification-list,.document-grid,.item-list,.list) article{max-width:100%}.app-shell .workspace .document-grid,.app-shell .workspace .event-grid,.app-shell .workspace .grade-grid{grid-template-columns:1fr!important}.app-shell .workspace .featured{grid-column:auto!important}.app-shell .workspace .module-card{min-height:0!important}.aw-modal-backdrop{align-items:end;padding:0}.aw-modal{border-radius:20px 20px 0 0;width:100%;max-height:92dvh}.aw-modal-head{padding:14px 15px}.aw-modal-body{padding:15px}.aw-modal-foot{z-index:2;padding:11px 15px calc(11px + env(safe-area-inset-bottom));border-top:1px solid var(--aw-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff7;flex-wrap:wrap;position:sticky;bottom:0}.aw-modal-foot>*{flex:auto}.app-shell .workspace :is(.form-grid.cols,.info-grid,.roles-box,.permission-groups,.role-list,.codes){grid-template-columns:1fr!important}.app-shell .workspace :is(.check,.client,.review-head,.panel-title,.card-title,.section-title){max-width:100%}.app-shell .workspace .manual-key strong,.app-shell .workspace code,.app-shell .workspace pre{overflow-wrap:anywhere;max-width:100%}}@media (width<=520px){.aw-page-head h1{font-size:23px}.app-shell .workspace :is(.stats-grid,.stats,.quick-grid,.summary-grid,.teacher-stats){grid-template-columns:repeat(2,minmax(0,1fr))!important}.app-shell .workspace :is(.stats-grid,.stats,.quick-grid,.summary-grid,.teacher-stats) article{min-height:82px!important;padding:11px!important}.app-shell .workspace :is(.stats-grid,.stats,.quick-grid,.summary-grid,.teacher-stats) article span,.app-shell .workspace :is(.stats-grid,.stats,.quick-grid,.summary-grid,.teacher-stats) article p{font-size:9px!important}.app-shell .workspace :is(.stats-grid,.stats,.quick-grid,.summary-grid,.teacher-stats) article b,.app-shell .workspace :is(.stats-grid,.stats,.quick-grid,.summary-grid,.teacher-stats) article strong{font-size:18px!important}.app-shell .workspace .hero,.app-shell .workspace .teacher-hero{border-radius:16px!important;padding:16px!important}.app-shell .workspace :is(.hero-actions,.head-actions,.actions){grid-template-columns:repeat(2,minmax(0,1fr));display:grid!important}.app-shell .workspace :is(.hero-actions,.head-actions,.actions)>:only-child{grid-column:1/-1}.app-shell .workspace .attendance-list article{grid-template-columns:1fr!important}.app-shell .workspace .attendance-list .bar{grid-column:auto!important}.app-shell .workspace .result-list article{grid-template-columns:1fr auto!important}.app-shell .workspace .result-list em{justify-self:start;grid-column:1/-1!important}.app-shell .workspace .context-strip{grid-template-columns:1fr 1fr!important}.app-shell .workspace .context-strip>div{min-height:56px!important;padding:9px!important}}@media (width<=900px){.login-page .identity-panel{min-height:220px!important;padding:24px 18px 28px!important}.login-page .identity-content h1{max-width:440px!important;font-size:28px!important;line-height:1.28!important}.login-page .identity-description{max-width:520px!important;margin-top:10px!important;font-size:12px!important;line-height:1.7!important}.login-page .form-panel{min-height:auto!important;padding:30px 18px 38px!important}.login-page .mobile-logo{border-width:5px!important;border-radius:20px!important;width:82px!important;height:82px!important;margin-top:-62px!important;margin-bottom:16px!important}.login-page .login-card header{margin-bottom:22px!important}.login-page .login-card h2{font-size:27px!important}.login-page input{font-size:16px!important}}@media (width<=520px){.login-page .identity-panel{min-height:185px!important}.login-page .identity-line{margin-bottom:12px!important}.login-page .identity-content h1{font-size:24px!important}.login-page .identity-description{display:none}.login-page .form-panel{padding-inline:14px!important}}
