body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--color-primary:#1e40af;--color-primary-light:#3b82f6;--color-primary-hover:#2563eb;--color-primary-50:#eff6ff;--color-secondary:#059669;--color-secondary-light:#10b981;--color-danger:#dc2626;--color-danger-light:#fee2e2;--color-warning:#d97706;--color-warning-light:#fef3c7;--color-success:#16a34a;--color-success-light:#dcfce7;--color-info:#0891b2;--color-info-light:#cffafe;--color-bg:#f1f5f9;--color-surface:#fff;--color-text:#0f172a;--color-text-secondary:#475569;--color-text-muted:#94a3b8;--color-border:#e2e8f0;--color-border-light:#f1f5f9;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--radius:8px;--radius-lg:12px}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f1f5f9;background:var(--color-bg);color:#0f172a;color:var(--color-text);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.App,body{min-height:100vh}.container{margin:2rem auto;max-width:1400px;padding:0 1.5rem}.loading{color:#94a3b8;color:var(--color-text-muted);font-size:1rem;padding:3rem 1rem;text-align:center}.alert{border-radius:8px;border-radius:var(--radius);font-size:.9rem;line-height:1.5;margin-bottom:1rem;padding:.75rem 1rem}.alert-success{background:#dcfce7;background:var(--color-success-light);border:1px solid #bbf7d0;color:#15803d}.alert-error{background:#fee2e2;background:var(--color-danger-light);border:1px solid #fecaca;color:#b91c1c}.alert-warning{background:#fef3c7;background:var(--color-warning-light);border:1px solid #fde68a;color:#92400e}.alert-info{background:#cffafe;background:var(--color-info-light);border:1px solid #a5f3fc;color:#0e7490}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem}.form-row .form-group{margin-bottom:0}.form-group label{color:#0f172a;color:var(--color-text);font-size:.85rem;font-weight:600}.form-group input,.form-group select,.form-group textarea{background:#fff;background:var(--color-surface);border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:8px;border-radius:var(--radius);color:#0f172a;color:var(--color-text);font-family:inherit;font-size:.9rem;padding:.625rem .75rem;transition:border-color .15s,box-shadow .15s;width:100%}.form-group textarea{min-height:5rem;resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;border-color:var(--color-primary-light);box-shadow:0 0 0 3px #3b82f626;outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:#94a3b8;color:var(--color-text-muted)}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:#f1f5f9;background:var(--color-bg);color:#94a3b8;color:var(--color-text-muted);cursor:not-allowed}.form-group small{color:#94a3b8;color:var(--color-text-muted);font-size:.75rem}@media (max-width:640px){.form-row{grid-template-columns:1fr}}.calendarPill{display:block;font-size:.68rem;overflow:hidden;padding:1px 5px;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:#f1f5f9;background:var(--color-border-light);border-radius:3px}::-webkit-scrollbar-thumb{background:#94a3b8;background:var(--color-text-muted);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#475569;background:var(--color-text-secondary)}@media (max-width:768px){.container{margin:1rem auto;padding:0 .75rem}}@media print{.navbar,.no-print{display:none}body{background:#fff}}.Button_btn__ofeFi{align-items:center;border:none;border-radius:var(--radius);cursor:pointer;display:inline-flex;font-weight:500;gap:.5rem;justify-content:center;line-height:1;text-decoration:none;transition:all .15s ease;white-space:nowrap}.Button_btn__ofeFi:disabled{cursor:not-allowed;opacity:.5}.Button_sm__SpEbe{font-size:.8rem;padding:.375rem .75rem}.Button_md__eCBTo{font-size:.9rem;padding:.625rem 1.25rem}.Button_lg__\+YLOL{font-size:1rem;padding:.75rem 1.5rem}.Button_primary__dQH6j{background:var(--color-primary);color:#fff}.Button_primary__dQH6j:hover:not(:disabled){background:var(--color-primary-hover)}.Button_secondary__zC\+XT{background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text)}.Button_secondary__zC\+XT:hover:not(:disabled){background:var(--color-border)}.Button_danger__zzv1M{background:var(--color-danger);color:#fff}.Button_danger__zzv1M:hover:not(:disabled){background:#b91c1c}.Button_ghost__d0x\+e{background:#0000;color:var(--color-text-secondary)}.Button_ghost__d0x\+e:hover:not(:disabled){background:var(--color-bg);color:var(--color-text)}.Button_success__-5CBn{background:var(--color-success);color:#fff}.Button_success__-5CBn:hover:not(:disabled){background:#15803d}.Button_loading__AuEU7{position:relative}.Button_spinner__bnTfS{animation:Button_spin__YWmrZ .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}@keyframes Button_spin__YWmrZ{to{transform:rotate(1turn)}}.Card_card__48SLx{animation:Card_fadeIn__lPIy4 .3s ease-out;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.5rem}.Card_header__\+W2T3{border-bottom:1px solid var(--color-border-light);color:var(--color-text);font-size:1.1rem;font-weight:600;margin-bottom:1rem;padding-bottom:.75rem}@keyframes Card_fadeIn__lPIy4{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.Table_wrapper__UETg\+{border:1px solid var(--color-border);border-radius:var(--radius);overflow-x:auto}.Table_table__6K4gt{border-collapse:collapse;font-size:.9rem;width:100%}.Table_table__6K4gt th{background:var(--color-bg);border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);font-size:.8rem;font-weight:600;letter-spacing:.05em;padding:.75rem 1rem;text-align:left;text-transform:uppercase}.Table_table__6K4gt td{border-bottom:1px solid var(--color-border-light);color:var(--color-text);padding:.75rem 1rem}.Table_table__6K4gt tbody tr:last-child td{border-bottom:none}.Table_table__6K4gt tbody tr:hover{background:var(--color-primary-50)}.Table_clickable__wEMnQ{cursor:pointer}.Table_empty__0muc4{color:var(--color-text-muted);padding:3rem 1rem;text-align:center}.Table_skeleton__wxRIn{animation:Table_shimmer__1\+ZGJ 1.5s infinite;background:linear-gradient(90deg,var(--color-border-light) 25%,var(--color-border) 50%,var(--color-border-light) 75%);background-size:200% 100%;border-radius:4px;height:1rem;max-width:80%}@keyframes Table_shimmer__1\+ZGJ{0%{background-position:200% 0}to{background-position:-200% 0}}.Modal_overlay__Pw71U{align-items:center;animation:Modal_fadeIn__bceZc .15s ease;background:#0f172a80;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}.Modal_content__zFIsM{animation:Modal_slideUp__A2GVD .2s ease;background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:90vh;max-width:540px;overflow-y:auto;padding:1.5rem;width:100%}.Modal_header__gMyjG{align-items:center;border-bottom:1px solid var(--color-border-light);display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.Modal_title__QApl0{color:var(--color-text);font-size:1.1rem;font-weight:600}.Modal_close__ECd5F{background:none;border:none;border-radius:4px;color:var(--color-text-muted);cursor:pointer;display:flex;padding:4px;transition:color .15s}.Modal_close__ECd5F:hover{color:var(--color-text)}@keyframes Modal_fadeIn__bceZc{0%{opacity:0}to{opacity:1}}@keyframes Modal_slideUp__A2GVD{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.Badge_badge__1xRhP{align-items:center;border-radius:9999px;display:inline-flex;font-size:.75rem;font-weight:600;line-height:1.4;padding:.2rem .6rem}.Badge_success__dPfX6{background:var(--color-success-light);color:#15803d}.Badge_warning__5K4Q\+{background:var(--color-warning-light);color:#92400e}.Badge_danger__ga3hX{background:var(--color-danger-light);color:#b91c1c}.Badge_info__VPmaa{background:var(--color-info-light);color:#0e7490}.Badge_default__ElPBe{background:var(--color-bg);color:var(--color-text-secondary)}.Badge_primary__\+8iMk{background:var(--color-primary-50);color:var(--color-primary)}.Toast_container__bvaix{display:flex;flex-direction:column;gap:.5rem;max-width:400px;position:fixed;right:1rem;top:1rem;z-index:2000}.Toast_toast__hQCS0{align-items:center;animation:Toast_slideIn__5dsCN .2s ease;border-radius:var(--radius);box-shadow:var(--shadow-lg);display:flex;font-size:.9rem;gap:.75rem;padding:.75rem 1rem}.Toast_success__nNScx{background:var(--color-success);color:#fff}.Toast_error__FaGJy{background:var(--color-danger);color:#fff}.Toast_warning__\+uc9N{background:var(--color-warning);color:#fff}.Toast_info__yUJWv{background:var(--color-primary);color:#fff}.Toast_message__4QCMI{flex:1 1}.Toast_close__chlo6{background:none;border:none;color:inherit;cursor:pointer;display:flex;opacity:.7;padding:2px;transition:opacity .15s}.Toast_close__chlo6:hover{opacity:1}@keyframes Toast_slideIn__5dsCN{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.LoadingSkeleton_textBlock__\+jZvk{display:flex;flex-direction:column;gap:.75rem}.LoadingSkeleton_label__G0nKI,.LoadingSkeleton_line__nXjt5,.LoadingSkeleton_titleBar__Pk\+ZS,.LoadingSkeleton_value__4w6IC{animation:LoadingSkeleton_shimmer__Xf1Uh 1.5s infinite;background:linear-gradient(90deg,var(--color-border-light) 25%,var(--color-border) 50%,var(--color-border-light) 75%);background-size:200% 100%;border-radius:4px;height:1rem}.LoadingSkeleton_titleBar__Pk\+ZS{height:1.25rem;margin-bottom:.5rem;width:60%}.LoadingSkeleton_lineShort__DKu0z{animation:LoadingSkeleton_shimmer__Xf1Uh 1.5s infinite;background:linear-gradient(90deg,var(--color-border-light) 25%,var(--color-border) 50%,var(--color-border-light) 75%);background-size:200% 100%;border-radius:4px;height:.75rem;margin-top:.5rem;width:40%}.LoadingSkeleton_cardGrid__6lP9g{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.LoadingSkeleton_card__HilwD{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem}.LoadingSkeleton_statGrid__TwaFW{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.LoadingSkeleton_stat__fPO6I{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.25rem}.LoadingSkeleton_label__G0nKI{height:.75rem;margin-bottom:.75rem;width:50%}.LoadingSkeleton_value__4w6IC{height:2rem;width:70%}@keyframes LoadingSkeleton_shimmer__Xf1Uh{0%{background-position:200% 0}to{background-position:-200% 0}}.EmptyState_container__DxD-C{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:3rem 1.5rem;text-align:center}.EmptyState_icon__CfxoA{color:var(--color-text-muted);height:48px;margin-bottom:1rem;width:48px}.EmptyState_title__V7tXM{color:var(--color-text);font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.EmptyState_message__OO0mj{color:var(--color-text-secondary);font-size:.9rem;line-height:1.5;max-width:360px}.EmptyState_action__OMA2\+{margin-top:1.25rem}.Pagination_pagination__\+fAkv{align-items:center;display:flex;gap:.25rem;justify-content:center;padding:1rem 0}.Pagination_pageBtn__ErE9s{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-secondary);cursor:pointer;display:inline-flex;font-size:.85rem;height:36px;justify-content:center;min-width:36px;padding:0 .5rem;transition:all .15s ease}.Pagination_pageBtn__ErE9s:hover:not(:disabled):not(.Pagination_active__8lC-w){background:var(--color-primary-50);border-color:var(--color-primary-light);color:var(--color-primary)}.Pagination_pageBtn__ErE9s:disabled{cursor:not-allowed;opacity:.4}.Pagination_active__8lC-w{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.PasswordInput_wrap__rq-3U{display:block;position:relative;width:100%}.PasswordInput_wrap__rq-3U input{padding-right:2.5rem}.PasswordInput_toggle__jf95Z{align-items:center;background:none;border:none;border-radius:var(--radius);color:var(--color-text-muted);cursor:pointer;display:inline-flex;height:2rem;justify-content:center;padding:0;position:absolute;right:.375rem;top:50%;transform:translateY(-50%);width:2rem}.PasswordInput_toggle__jf95Z:focus-visible,.PasswordInput_toggle__jf95Z:hover{color:var(--color-text)}.PasswordInput_toggle__jf95Z svg{height:18px;width:18px}.FilterBar_bar__EhLlS{align-items:flex-end;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.FilterBar_field__Hs2zx{display:flex;flex-direction:column;gap:.25rem;min-width:140px}.FilterBar_label__3Zgt4{color:var(--color-text-secondary);font-size:.75rem;font-weight:600}.FilterBar_control__kuj6z{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);font-size:.85rem;padding:.5rem .75rem}.FilterBar_control__kuj6z:focus{border-color:var(--color-primary-light);outline:none}.FilterBar_search__9E9wp{flex:1 1 200px;max-width:280px}.FilterBar_meta__NGox8{align-items:center;color:var(--color-text-secondary);display:flex;font-size:.8rem;gap:.75rem;margin-left:auto;padding-bottom:.5rem}.FilterBar_clear__gDNWL{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:.8rem;font-weight:600;padding:0}.FilterBar_clear__gDNWL:hover{text-decoration:underline}.App_navbar__gqftH{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;gap:1rem;height:64px;justify-content:space-between;padding:0 1.5rem;position:sticky;top:0;z-index:100}.App_brand__mc7nA{align-items:center;display:flex;flex-shrink:0;gap:.75rem;text-decoration:none}.App_brandIcon__ka8qo{align-items:center;background:var(--color-primary);border-radius:8px;color:#fff;display:flex;height:36px;justify-content:center;width:36px}.App_brandName__VrGbc{color:var(--color-text);font-size:1.15rem;font-weight:700}.App_brandSub__XiAQ3{color:var(--color-text-muted);display:block;font-size:.7rem;margin-top:-2px}.App_navDesktop__L-8Ng{align-items:center;display:flex;flex:1 1;gap:.25rem;justify-content:center}.App_navGroup__oqM8Y{position:relative}.App_navTrigger__aZlRz{align-items:center;background:#0000;border:none;border-radius:var(--radius);color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:.375rem;padding:.5rem .75rem;transition:all .15s;white-space:nowrap}.App_navTriggerActive__3q-C9,.App_navTrigger__aZlRz:hover{background:var(--color-primary-50);color:var(--color-primary)}.App_navDropdown__k0woO{animation:App_slideDown__cjSuL .15s ease;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);left:0;margin-top:4px;min-width:200px;padding:.375rem;position:absolute;top:100%;z-index:200}.App_dropdownItem__tgTcD{align-items:center;background:none;border:none;border-radius:6px;color:var(--color-text);cursor:pointer;display:flex;font-size:.85rem;gap:.625rem;padding:.5rem .75rem;text-decoration:none;transition:all .1s;width:100%}.App_dropdownItem__tgTcD:hover{background:var(--color-primary-50);color:var(--color-primary)}.App_dropdownItem__tgTcD svg{color:var(--color-text-muted);flex-shrink:0;height:18px;width:18px}.App_dropdownItem__tgTcD:hover svg{color:var(--color-primary)}.App_navRight__PFSNk{align-items:center;display:flex;flex-shrink:0;gap:1rem}.App_userInfo__UEmqj{align-items:center;background:var(--color-bg);border-radius:var(--radius);color:var(--color-text-secondary);display:flex;font-size:.85rem;gap:.5rem;padding:.375rem .75rem}.App_userRole__Bf\+F5{color:var(--color-primary-light);font-size:.7rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.App_logoutBtn__bTlY9{align-items:center;background:#0000;border:none;border-radius:var(--radius);color:var(--color-text-muted);cursor:pointer;display:flex;font-size:.85rem;gap:.375rem;padding:.5rem .75rem;transition:all .15s}.App_logoutBtn__bTlY9:hover{background:var(--color-danger-light);color:var(--color-danger)}.App_mobileToggle__ITDS1{align-items:center;background:#0000;border:none;border-radius:var(--radius);color:var(--color-text);cursor:pointer;display:none;height:40px;justify-content:center;width:40px}.App_mobileToggle__ITDS1:hover{background:var(--color-bg)}.App_mobileMenu__VawXQ{animation:App_slideDown__cjSuL .2s ease;background:var(--color-surface);bottom:0;display:none;left:0;overflow-y:auto;padding:1rem;position:fixed;right:0;top:64px;z-index:99}.App_mobileMenu__VawXQ.App_open__lgJmw{display:block}.App_mobileGroup__uHm3M{margin-bottom:1rem}.App_mobileGroupLabel__QlOUf{color:var(--color-text-muted);font-size:.7rem;font-weight:600;letter-spacing:.08em;margin-bottom:.25rem;padding:.5rem .75rem;text-transform:uppercase}.App_mobileItem__7tXSg{align-items:center;border-radius:var(--radius);color:var(--color-text);display:flex;font-size:.9rem;gap:.75rem;padding:.75rem;text-decoration:none;transition:background .1s}.App_mobileItem__7tXSg:hover{background:var(--color-primary-50)}.App_mobileItem__7tXSg svg{color:var(--color-text-muted);height:20px;width:20px}@media (max-width:1024px){.App_navDesktop__L-8Ng{display:none}.App_mobileToggle__ITDS1{display:flex}}@media (max-width:640px){.App_navbar__gqftH{gap:.5rem;padding:0 1rem}.App_logoutText__DacHg,.App_userInfo__UEmqj{display:none}.App_logoutBtn__bTlY9{padding:.5rem}.App_brandSub__XiAQ3{display:none}}@keyframes App_slideDown__cjSuL{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes App_fadeIn__AtT-p{0%{opacity:0}to{opacity:1}}.Login_container__2pcnf{align-items:center;background:linear-gradient(135deg,#1e40af,#1e3a8a 50%,#0f172a);display:flex;justify-content:center;min-height:100vh;padding:1rem}.Login_card__IRduH{animation:Login_fadeIn__KLVin .4s ease;background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:0 25px 50px -12px #00000040;max-width:400px;padding:2.5rem;width:100%}.Login_header__E5fGS{margin-bottom:2rem;text-align:center}.Login_iconWrap__AJBsN{align-items:center;background:var(--color-primary);border-radius:14px;display:flex;height:56px;justify-content:center;margin:0 auto 1rem;width:56px}.Login_icon__5Cq7W{color:#fff;height:28px;width:28px}.Login_title__jk6Rr{color:var(--color-text);font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.Login_subtitle__ny6UR{color:var(--color-text-muted);font-size:.9rem}.Login_error__6iUM9{background:var(--color-danger-light);border:1px solid #fecaca;border-radius:var(--radius);color:#b91c1c;font-size:.85rem;margin-bottom:1rem;padding:.75rem 1rem}.Login_field__9A1QH{margin-bottom:1.25rem}.Login_label__zlJQ-{color:var(--color-text);display:block;font-size:.85rem;font-weight:600;margin-bottom:.5rem}.Login_inputWrap__U0Kvx{position:relative}.Login_inputIcon__ZF\+Tv{color:var(--color-text-muted);height:18px;left:.75rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);width:18px}.Login_input__ADhfa{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);font-family:inherit;font-size:.9rem;padding:.75rem .75rem .75rem 2.5rem;transition:border-color .15s,box-shadow .15s;width:100%}.Login_input__ADhfa:focus{background:var(--color-surface);border-color:var(--color-primary-light);box-shadow:0 0 0 3px #3b82f626;outline:none}.Login_input__ADhfa::placeholder{color:var(--color-text-muted)}.Login_submitBtn__CjL17{align-items:center;background:var(--color-primary);border:none;border-radius:var(--radius);color:#fff;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.95rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem;transition:background .15s;width:100%}.Login_submitBtn__CjL17:hover:not(:disabled){background:var(--color-primary-hover)}.Login_submitBtn__CjL17:disabled{cursor:not-allowed;opacity:.6}.Login_spinner__BHrtF{animation:Login_spin__7xS\+N .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:18px;width:18px}.Login_footer__FdTO-{color:var(--color-text-muted);font-size:.8rem;margin-top:1.5rem;text-align:center}.Login_success__Q5B1k{background:#dcfce7;background:var(--color-success-light,#dcfce7);border:1px solid #bbf7d0;border-radius:var(--radius);color:#15803d;font-size:.85rem;margin-bottom:1rem;padding:.75rem 1rem}.Login_linkRow__eEBIG{font-size:.85rem;margin-top:1rem;text-align:center}.Login_link__sOg7c{color:var(--color-primary);font-weight:600;text-decoration:none}.Login_link__sOg7c:hover{text-decoration:underline}@keyframes Login_fadeIn__KLVin{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes Login_spin__7xS\+N{to{transform:rotate(1turn)}}.Accounts_hint__T8AzG{color:var(--color-text-secondary);font-size:.85rem;margin-bottom:1rem}.Accounts_actions__noGAP{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem}.Accounts_choiceGroup__-x0Pq{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.Accounts_choiceLabel__pPFnk{color:var(--color-text);font-size:.85rem;font-weight:600}.Accounts_choice__aTRm2{align-items:flex-start;color:var(--color-text);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem}.Accounts_choice__aTRm2 input{flex-shrink:0;margin-top:.2rem}.Accounts_choice__aTRm2 small{color:var(--color-text-muted);display:block;font-size:.78rem}.Accounts_picker__Qh\+M-{border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:1rem;overflow:hidden}.Accounts_pickerSearch__DArFA{background:var(--color-surface);border:none;border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:.85rem;padding:.5rem .75rem;width:100%}.Accounts_pickerSearch__DArFA:focus{background:var(--color-border-light);outline:none}.Accounts_pickerList__WGpUj{max-height:220px;overflow-y:auto}.Accounts_pickerRow__t8ifD{align-items:center;border-bottom:1px solid var(--color-border-light);cursor:pointer;display:flex;font-size:.875rem;gap:.625rem;padding:.5rem .75rem}.Accounts_pickerRow__t8ifD:last-child{border-bottom:none}.Accounts_pickerRow__t8ifD:hover{background:var(--color-border-light)}.Accounts_pickerName__9L7Au{flex:1 1;min-width:0;overflow-wrap:anywhere}.Accounts_pickerMeta__HaQTY{color:var(--color-text-muted);font-size:.78rem;white-space:nowrap}.Accounts_pickerEmpty__ij5tY{color:var(--color-text-muted);font-size:.85rem;padding:.875rem .75rem}.Accounts_pickerCount__H5noY{background:var(--color-border-light);border-top:1px solid var(--color-border);color:var(--color-text-secondary);font-size:.78rem;padding:.375rem .75rem}.Accounts_linkRow__FEp3n{display:flex;gap:.5rem;margin-top:.5rem}.Accounts_linkInput__a9S7Q{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);flex:1 1;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;min-width:0;padding:.5rem .625rem}.Accounts_summary__ezJwm{grid-gap:.25rem 1rem;display:grid;font-size:.875rem;gap:.25rem 1rem;grid-template-columns:auto 1fr;margin-bottom:1rem}.Accounts_summary__ezJwm dt{color:var(--color-text-secondary)}.Accounts_summary__ezJwm dd{font-weight:600;margin:0;overflow-wrap:anywhere}.Portal_header__qv3FM{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:1.25rem}.Portal_title__t0Dfz{color:var(--color-text);font-size:1.25rem;font-weight:700}.Portal_subtitle__TNptx{color:var(--color-text-secondary);font-size:.875rem;margin-top:.25rem}.Portal_backLink__ObZZw{align-items:center;color:var(--color-primary);display:inline-flex;font-size:.85rem;gap:.375rem;margin-bottom:.75rem;text-decoration:none}.Portal_backLink__ObZZw:hover{text-decoration:underline}.Portal_sectionTitle__7FMd5{color:var(--color-text);font-size:1rem;font-weight:700;margin:1.5rem 0 .75rem}.Portal_sectionTitle__7FMd5:first-child{margin-top:0}.Portal_grid__vb3ll{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.Portal_tile__KiA2m{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.75rem;padding:1.25rem}.Portal_tileLink__Zghzr{color:inherit;text-decoration:none;transition:box-shadow .15s ease,border-color .15s ease}.Portal_tileLink__Zghzr:focus-visible,.Portal_tileLink__Zghzr:hover{border-color:var(--color-primary-light);box-shadow:var(--shadow-md)}.Portal_tileHead__LMqd8{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between}.Portal_tileName__e-E8M{color:var(--color-text);font-size:1.05rem;font-weight:700;overflow-wrap:anywhere}.Portal_tileMeta__X4u5s{color:var(--color-text-secondary);font-size:.85rem}.Portal_tileFooter__2T6IG{color:var(--color-primary);font-size:.85rem;font-weight:600;margin-top:auto}.Portal_stats__gtjEG{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.Portal_stat__\+YYl9{background:var(--color-bg);border-radius:var(--radius);padding:.75rem}.Portal_statsOnPage__LtaAT{margin-bottom:1rem}.Portal_statsOnPage__LtaAT .Portal_stat__\+YYl9{background:var(--color-surface);border:1px solid var(--color-border)}.Portal_statLabel__SRRnV{color:var(--color-text-secondary);font-size:.75rem}.Portal_statValue__viRwc{font-feature-settings:"tnum";color:var(--color-text);font-size:1.25rem;font-variant-numeric:tabular-nums;font-weight:700}.Portal_statGood__5nWWw{color:var(--color-success)}.Portal_statWarn__4vCFJ{color:var(--color-warning)}.Portal_statBad__u\+4FR{color:var(--color-danger)}.Portal_tabs__cH4gM{border-bottom:1px solid var(--color-border);display:flex;gap:.25rem;margin-bottom:1.25rem;overflow-x:auto}.Portal_tab__EHjwx{background:none;border:none;border-bottom:2px solid #0000;color:var(--color-text-secondary);cursor:pointer;font-size:.9rem;font-weight:600;padding:.625rem 1rem;white-space:nowrap}.Portal_tab__EHjwx:hover{color:var(--color-text)}.Portal_tabActive__h\+LSZ{border-bottom-color:var(--color-primary);color:var(--color-primary)}.Portal_details__8H3so{grid-gap:1rem 1.5rem;display:grid;gap:1rem 1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0}.Portal_details__8H3so dt{color:var(--color-text-secondary);font-size:.75rem;margin-bottom:.125rem}.Portal_details__8H3so dd{color:var(--color-text);font-size:.925rem;font-weight:600;margin:0;overflow-wrap:anywhere}.Portal_toolbar__Z2rqN{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.Portal_toolbar__Z2rqN label{color:var(--color-text);font-size:.85rem;font-weight:600}.Portal_select__IF2ec{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);font-size:.875rem;padding:.5rem .75rem}.Portal_lessons__hbdU3{list-style:none;margin:0;padding:0}.Portal_lesson__sfcG0{align-items:baseline;border-bottom:1px solid var(--color-border-light);display:flex;font-size:.9rem;gap:1rem;padding:.625rem 0}.Portal_lesson__sfcG0:last-child{border-bottom:none}.Portal_lessonTime__M7HJj{font-feature-settings:"tnum";color:var(--color-text);flex:0 0 6.5rem;font-variant-numeric:tabular-nums;font-weight:700}.Portal_lessonSubject__O2MJh{color:var(--color-text);flex:1 1;min-width:0}.Portal_lessonMeta__WcSQE{color:var(--color-text-secondary);font-size:.85rem;white-space:nowrap}.Portal_quickLinks__\+BGan{display:flex;flex-wrap:wrap;gap:.5rem}.Portal_muted__I3N6T{color:var(--color-text-secondary);font-size:.875rem}.Portal_stack__jPGfa>*+*{margin-top:1.5rem}.StudentForm_pageTitle__4yiOz{color:var(--color-text);font-size:1.25rem;font-weight:700;margin-bottom:1rem}.StudentForm_section__E8Zgs{margin-bottom:1rem}.StudentForm_sectionHead__sxeI9{align-items:baseline;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:1rem}.StudentForm_sectionTitle__0iLru{color:var(--color-text);font-size:1.05rem;font-weight:700;margin:0}.StudentForm_sectionHint__pEDVf{color:var(--color-text-secondary);font-size:.8rem;margin:.15rem 0 0}.StudentForm_optional__wV4Lo{color:var(--color-text-secondary);font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.StudentForm_guardian__mT\+4F{border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:1rem;padding:1rem}.StudentForm_guardianHead__NDCQY{align-items:center;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.75rem}.StudentForm_guardianTitle__1Sd85{color:var(--color-text);font-size:.9rem;font-weight:700;margin:0}.StudentForm_guardianNote__0\+An1{color:var(--color-text-secondary);font-weight:400}.StudentForm_threeColumns__lHpDV{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:1rem}.StudentForm_threeColumns__lHpDV .form-group{margin-bottom:0}.StudentForm_actions__WhsWB{display:flex;flex-wrap:wrap;gap:.5rem}@media (max-width:640px){.StudentForm_threeColumns__lHpDV{grid-template-columns:1fr}}.Reports_statsGrid__SZi\+p{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.Reports_statCard__qhS9L{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.25rem;text-align:center}.Reports_statNumber__AO4cS{color:var(--color-primary);font-size:1.75rem;font-weight:700;margin-bottom:.25rem}.Reports_statLabel__XIDCb{color:var(--color-text-secondary);font-size:.85rem}.Reports_reportHeader__xZHxA{color:var(--color-text-secondary);font-size:.9rem;margin-bottom:1rem}.Reports_genderList__hkmpA{list-style:none;margin:.5rem 0;padding:0}.Reports_genderList__hkmpA li{color:var(--color-text-secondary);font-size:.9rem;padding:.4rem 0}.Reports_filters__mZw7C{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.Reports_formGroup__jsMno{display:flex;flex-direction:column;gap:.35rem}.Reports_formGroup__jsMno label{color:var(--color-text-secondary);font-size:.85rem;font-weight:500}.Reports_formGroup__jsMno input,.Reports_formGroup__jsMno select{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);font-size:.9rem;min-width:200px;padding:.5rem .75rem}.Reports_formGroup__jsMno input:focus,.Reports_formGroup__jsMno select:focus{border-color:var(--color-primary-light);box-shadow:0 0 0 3px var(--color-primary-50);outline:none}.Reports_actions__PS8NW{display:flex;gap:.75rem;margin-top:.5rem}.Reports_complianceBanner__cmWVC{background:var(--color-success-light);border:1px solid #bbf7d0;border-radius:var(--radius);color:#15803d;font-weight:500;margin-top:1rem;padding:1rem}.Documents_header__c5f35{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:1rem}.Documents_title__0kJil{color:var(--color-text);font-size:1.25rem;font-weight:700}.Documents_subtitle__bczb3{color:var(--color-text-secondary);font-size:.85rem;margin-top:.25rem}.Documents_controls__e3NCe{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.Documents_select__q1-fT{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);font-size:.85rem;padding:.5rem .75rem}.Documents_docTitle__x4lCj{color:var(--color-text);font-weight:600;overflow-wrap:anywhere}.Documents_docDescription__Ho7fo{color:var(--color-text-secondary);font-size:.8rem;margin-top:.125rem;overflow-wrap:anywhere}.Documents_rowActions__FQMi4{display:flex;flex-wrap:wrap;gap:.5rem}.Documents_hint__E\+o24{color:var(--color-text-secondary);font-size:.85rem;margin-bottom:1rem}.Documents_choiceGroup__fRUYW{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.Documents_choiceLabel__6znW9{color:var(--color-text);font-size:.85rem;font-weight:600}.Documents_choice__wNgOP{align-items:center;color:var(--color-text);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem}.Documents_classGrid__bxAMw{grid-gap:.5rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius);display:grid;gap:.5rem 1rem;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));max-height:180px;overflow-y:auto;padding:.75rem}.Documents_modalActions__UgdxS{display:flex;gap:.5rem;margin-top:1.25rem}.Houses_swatch__aAJgC{background:var(--color-text-muted);border-radius:50%;display:inline-block;flex-shrink:0;height:.75rem;width:.75rem}.Houses_houseName__\+SaIx{align-items:center;display:inline-flex;font-weight:600;gap:.5rem}.Houses_standing__THjy8{border-top:4px solid var(--color-text-muted)}.Houses_rank__eNvN\+{color:var(--color-text-secondary);font-size:.8rem;font-weight:700;white-space:nowrap}.Houses_points__x4d1j{font-feature-settings:"tnum";color:var(--color-text);font-size:2rem;font-variant-numeric:tabular-nums;font-weight:700;line-height:1}.Houses_pointsLabel__KGI63{color:var(--color-text-secondary);font-size:.8rem}.Houses_plus__OHEOs{color:var(--color-success)}.Houses_minus__iiQpd,.Houses_plus__OHEOs{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700}.Houses_minus__iiQpd{color:var(--color-danger)}.Houses_rowActions__17vv3{display:flex;flex-wrap:wrap;gap:.375rem}.Houses_entryTitle__BZuNJ{color:var(--color-text);font-weight:600;overflow-wrap:anywhere}.Houses_entryDescription__-PL2F{color:var(--color-text-secondary);font-size:.8rem;margin-top:.125rem;overflow-wrap:anywhere}.Houses_hint__d0ZHG{color:var(--color-text-secondary);font-size:.85rem;margin-bottom:1rem}.Houses_modalActions__YP8\+o{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem}.Houses_choiceGroup__M\+fIv{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.Houses_choiceLabel__ubIgk{color:var(--color-text);font-size:.85rem;font-weight:600}.Houses_choiceRow__RunJN{display:flex;flex-wrap:wrap;gap:1.25rem}.Houses_choice__uK6zO{align-items:center;color:var(--color-text);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem}.Houses_colorRow__a2kAF{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem}.Houses_colorInput__EmokH{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;height:2.25rem;padding:.125rem;width:3rem}.Houses_studentSearch__Uk05-{margin-bottom:.375rem}.OutstandingFees_sub__77jjC{color:var(--color-text-secondary);font-size:.8rem;overflow-wrap:anywhere}.OutstandingFees_balance__NR2nM{font-feature-settings:"tnum";align-items:center;color:var(--color-danger);display:inline-flex;font-variant-numeric:tabular-nums;font-weight:700;gap:.5rem}.OutstandingFees_overdue__MHu1c{font-weight:600}.OutstandingFees_progress__Y5Pwf{margin-bottom:1rem}.OutstandingFees_progress__Y5Pwf p{margin:.25rem 0 .75rem}.OutstandingFees_confirmText__U-QfS{color:var(--color-text);font-size:.9rem;margin-bottom:1rem}.OutstandingFees_checkLine__wI6iX{align-items:center;color:var(--color-text);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem}.OutstandingFees_actions__-P53W{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem}.Reports_sheet__sLILQ{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.Reports_sheetHead__WcP0p{align-items:flex-start;background:var(--color-primary);color:#fff;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:1rem 1.25rem}.Reports_sheetName__qvn6h{font-size:1.15rem;font-weight:700;overflow-wrap:anywhere}.Reports_sheetMeta__hWzNM{font-size:.85rem;opacity:.9}.Reports_sheetBody__zrGh6{padding:1.25rem}.Reports_sectionTitle__3VQzk{color:var(--color-text);font-size:.95rem;font-weight:700;margin:1.25rem 0 .5rem}.Reports_sectionTitle__3VQzk:first-child{margin-top:0}.Reports_tableWrap__0kRCM{overflow-x:auto}.Reports_marks__Kyw5R{border-collapse:collapse;font-size:.875rem;width:100%}.Reports_marks__Kyw5R td,.Reports_marks__Kyw5R th{border:1px solid var(--color-border);padding:.5rem .625rem;text-align:left;vertical-align:middle}.Reports_marks__Kyw5R th{background:var(--color-bg);color:var(--color-text-secondary);font-size:.75rem;font-weight:700;white-space:nowrap}.Reports_num__Lh9TZ{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.Reports_final__r8bLN,.Reports_grade__KbiCM{font-weight:700}.Reports_descriptor__cYD\+9{color:var(--color-text-secondary);font-size:.78rem;margin-left:.375rem}.Reports_empty__J1-Ge{color:var(--color-text-muted);font-size:.875rem;padding:.75rem 0}.Reports_comment__35kDS{border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:.5rem;padding:.75rem}.Reports_commentLabel__F08tb{color:var(--color-text-secondary);font-size:.75rem;font-weight:700;margin-bottom:.25rem}.Reports_commentText__40Nvt{color:var(--color-text);font-size:.9rem;overflow-wrap:anywhere;white-space:pre-wrap}.Reports_commentAuthor__h7ZAE{color:var(--color-text-muted);font-size:.78rem;margin-top:.25rem}.Reports_legend__6ViQq{color:var(--color-text-secondary);font-size:.78rem;margin-top:1rem}.Reports_scoreInput__VrG22{text-align:right;width:4.5rem}.Reports_remarkInput__6WNfq,.Reports_scoreInput__VrG22{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);font-size:.875rem;padding:.375rem .5rem}.Reports_remarkInput__6WNfq{min-width:12rem;width:100%}.Reports_remarkInput__6WNfq:focus,.Reports_scoreInput__VrG22:focus,.Reports_templateSelect__LVBoj:focus,.Reports_textarea__f-L5i:focus{border-color:var(--color-primary-light);outline:none}.Reports_remarkCell__N0T7B{display:flex;flex-direction:column;gap:.375rem}.Reports_templateSelect__LVBoj{background:var(--color-bg);color:var(--color-text-secondary);font-size:.8rem;max-width:100%;padding:.375rem .5rem}.Reports_templateSelect__LVBoj,.Reports_textarea__f-L5i{border:1px solid var(--color-border);border-radius:var(--radius)}.Reports_textarea__f-L5i{background:var(--color-surface);color:var(--color-text);font-family:inherit;font-size:.9rem;padding:.5rem .625rem;resize:vertical;width:100%}.Reports_commentEditor__9T1cJ{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem}.Reports_commentEditor__9T1cJ label{color:var(--color-text);font-size:.85rem;font-weight:600}.Reports_editorFoot__XH3\+x{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.Reports_counter__-sJsl{color:var(--color-text-muted);font-size:.78rem}.Reports_addMark__rioxU{align-items:flex-end;border-top:1px solid var(--color-border-light);display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem;padding-top:1rem}.Reports_addMark__rioxU label{color:var(--color-text-secondary);display:flex;flex-direction:column;font-size:.75rem;font-weight:600;gap:.25rem}.Reports_addMark__rioxU select{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);font-size:.875rem;padding:.375rem .5rem}.Reports_statusLine__IMnns{color:var(--color-text-secondary);font-size:.85rem;margin:0 0 1rem}.Reports_actions__XCprB{display:flex;flex-wrap:wrap;gap:.5rem}.Reports_step__zCpHl{margin-top:1rem}.Reports_hint__\+4TVR{color:var(--color-text-secondary);font-size:.85rem;margin:0 0 .75rem}.Reports_scopeRow__T2qgl{align-items:center;display:flex;flex-wrap:wrap;font-size:.875rem;gap:1rem;padding-bottom:.5rem}.Reports_scopeRow__T2qgl label{align-items:center;cursor:pointer;display:inline-flex;gap:.375rem}.Reports_skipped__oNvQE{font-size:.85rem;margin:.5rem 0 0;padding-left:1.1rem}.StudentImport_step__hx2gN{margin-top:1rem}.StudentImport_rules__1TnDi{color:var(--color-text);font-size:.9rem;line-height:1.6;margin:0 0 1rem;padding-left:1.25rem}.StudentImport_note__7KNgY{color:var(--color-text-secondary);font-size:.85rem;margin:0 0 .75rem}.StudentImport_lists__l71OT{grid-gap:1rem 2rem;display:grid;gap:1rem 2rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin:1.25rem 0}.StudentImport_listTitle__JCMaA{color:var(--color-text-secondary);font-size:.8rem;font-weight:600;margin-bottom:.5rem}.StudentImport_chips__iPKkn{display:flex;flex-wrap:wrap;gap:.375rem}.StudentImport_uploadRow__Q2z2C{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.StudentImport_uploadRow__Q2z2C .StudentImport_note__7KNgY{margin:0}.StudentImport_sectionHead__ts4m2{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-top:1.5rem}.StudentImport_sectionHead__ts4m2 h3{margin:0 0 .75rem}.StudentImport_reasons__lkIpa{color:var(--color-danger);font-size:.85rem;margin:0;padding-left:1rem}
/*# sourceMappingURL=main.713d684f.css.map*/