.NavBar_navbar__jmUgL{align-items:center;background-color:#fff;display:flex;height:56px;justify-content:space-between;padding:0 1rem;position:-webkit-sticky;position:sticky;top:0;transition:box-shadow .3s ease,background-color .3s ease;z-index:50}.NavBar_title__qLziM{font-size:1.5rem;font-weight:700;margin:0;transition:color .3s ease}.NavBar_scrolled__6LoHh .NavBar_title__qLziM{color:#1f2937}.NavBar_leftSection__PGUNL{align-items:center;display:flex}.NavBar_backButton__bRQbV{background:none;border:none;color:#4f46e5;cursor:pointer;font-size:1rem;font-weight:500;margin-right:.5rem}.NavBar_backButton__bRQbV:hover{text-decoration:underline}.NavBar_backButton__bRQbV:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.NavBar_scrolled__6LoHh{background-color:#fffffff2;box-shadow:0 2px 6px #00000026}.NavBar_navLinks__qXqxR{align-items:center;display:flex}.NavBar_navLinks__qXqxR a{color:#374151;font-weight:500;margin-left:1rem;text-decoration:none;transition:color .2s ease,border-bottom .2s ease}.NavBar_navLinks__qXqxR a:hover{color:#1f2937}.NavBar_navLinks__qXqxR a.NavBar_active__hHrt8{border-bottom:2px solid #4f46e5;font-weight:700}.NavBar_navLinks__qXqxR a:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.NavBar_actions__aUs6g{margin-left:auto;position:relative}.NavBar_dropdown__AbDje{background-color:#fff;border-radius:.5rem;box-shadow:0 12px 36px #00000029;min-width:180px;opacity:0;pointer-events:none;position:absolute;right:0;top:calc(100% + 8px);transform:translateY(-6px);transition:opacity .15s ease,transform .15s ease}.NavBar_open__4M74j{opacity:1;pointer-events:auto;transform:translateY(0)}.NavBar_item__MV5cM{cursor:pointer;font-size:.9rem;outline:none;padding:.6rem .75rem}.NavBar_item__MV5cM:hover{background-color:#f1f5f9}.NavBar_item__MV5cM:focus{background-color:#e2e8f0}.Sidebar_sidebar__ftIxy{background-color:#0f172a;color:#e5e7eb;display:flex;flex-direction:column;overflow:hidden;transition:width .25s ease;width:240px}.Sidebar_collapsed__SphKx{width:72px}.Sidebar_nav__aZsCj{display:flex;flex-direction:column;padding:.5rem}.Sidebar_link__5s7wW{align-items:center;border-radius:.375rem;color:inherit;display:flex;gap:.75rem;padding:.6rem .75rem;text-decoration:none;transition:background-color .15s ease,color .15s ease}.Sidebar_link__5s7wW:hover{background-color:#ffffff14}.Sidebar_active__lIwRs{background-color:#3b82f640;color:#bfdbfe}.Sidebar_icon__RTRKb{flex-shrink:0;height:20px;width:20px}.Sidebar_label__tsI0u{opacity:1;transition:opacity .2s ease;white-space:nowrap}.Sidebar_labelCollapsed__YkpGP{opacity:0}.Sidebar_collapsed__SphKx .Sidebar_link__5s7wW{justify-content:center}.Sidebar_subLinks__bSx4X{display:flex;flex-direction:column;gap:.125rem;margin-left:1.75rem;margin-top:.25rem}.Sidebar_subLink__D40n6{align-items:center;border-radius:.375rem;color:#cbd5f5;display:flex;font-size:.875rem;padding:.45rem .75rem;text-decoration:none;transition:background-color .15s ease,color .15s ease}.Sidebar_subLink__D40n6:hover{background-color:#ffffff0f}.Sidebar_subLink__D40n6.Sidebar_active__lIwRs{background-color:#3b82f62e;color:#bfdbfe}.Sidebar_subLabel__zrtVJ{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.Footer_footer__AcWGP{background-color:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -1px 3px #0000000a;margin-top:auto;padding:1rem 1.5rem;width:100%}.Footer_inner__X-XDt{align-items:center;color:#6b7280;display:flex;font-size:.875rem;justify-content:space-between;margin:0 auto;max-width:1200px}.Footer_links__nI2fs{display:flex;flex-wrap:wrap;gap:1rem}.Footer_link__ljLIL{color:inherit;position:relative;text-decoration:none;transition:color .2s ease}.Footer_link__ljLIL:focus-visible,.Footer_link__ljLIL:hover{color:#2563eb}.Footer_link__ljLIL:after{background-color:#2563eb;bottom:-2px;content:"";height:2px;left:0;opacity:.8;position:absolute;transform:scaleX(0);transform-origin:left;transition:transform .3s ease,opacity .3s ease;width:100%}.Footer_link__ljLIL:focus-visible:after,.Footer_link__ljLIL:hover:after{opacity:1;transform:scaleX(1)}@media (max-width:640px){.Footer_inner__X-XDt{flex-direction:column;gap:.75rem}.Footer_footer__AcWGP{padding:1rem}}.MainLayout_layout__Ya0cb{display:flex;height:100vh}.MainLayout_mainContent__lk1IV{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.MainLayout_outlet__nRTnr{flex:1 1;overflow-y:auto;padding:1rem}.LoadingSpinner_loading-spinner__dO4NW{align-items:center;display:flex;height:100%;justify-content:center}.LoadingSpinner_spinner__UnICz{animation:LoadingSpinner_spin__UPoAk 1s linear infinite;border:6px solid #f3f3f3;border-radius:50%;border-top-color:#3498db;height:50px;width:50px}@keyframes LoadingSpinner_spin__UPoAk{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.AddClassForm_formCard__ad8Uy{animation:AddClassForm_fadeInUp__KI-Dt .5s forwards;background-color:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin:1rem auto;max-width:400px;opacity:0;padding:2rem;transform:translateY(20px)}.AddClassForm_formCard__ad8Uy:hover{box-shadow:0 6px 16px #0000001f}.AddClassForm_label__xI452{color:#374151;display:block;font-weight:600;margin-bottom:.25rem}.AddClassForm_inputField__RQj-x{border:1px solid #ccc;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;transition:border-color .3s,box-shadow .3s;width:100%}.AddClassForm_inputField__RQj-x:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e533;outline:none}.AddClassForm_submitButton__rgrhY{background-color:#4f46e5;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:.75rem 1rem;transition:background-color .3s,transform .1s;width:100%}.AddClassForm_submitButton__rgrhY:hover{background-color:#4338ca}.AddClassForm_submitButton__rgrhY:active{transform:scale(.97)}.AddClassForm_submitButton__rgrhY:disabled{background-color:#a5b4fc;cursor:not-allowed;transform:none}.AddClassForm_loading__MK9yy{opacity:.7;pointer-events:none;position:relative}.AddClassForm_loading__MK9yy:after{animation:AddClassForm_spin__XgMbG 1s linear infinite;border:2px solid #fff;border-radius:50%;border-top-color:#ffffff4d;content:"";height:1.2rem;left:50%;margin:-.6rem 0 0 -.6rem;position:absolute;top:50%;width:1.2rem}.AddClassForm_inputError__DQDUp{border-color:#dc2626}.AddClassForm_inputError__DQDUp:focus{box-shadow:0 0 0 3px #dc262633}@keyframes AddClassForm_fadeInUp__KI-Dt{to{opacity:1;transform:translateY(0)}}@keyframes AddClassForm_spin__XgMbG{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.AddClassForm_formCard__ad8Uy{animation:none;opacity:1;transform:none}}.ClassCard_card__ubhAZ{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;cursor:pointer;outline:none;padding:1rem;transition:transform .2s ease,box-shadow .2s ease}.ClassCard_card__ubhAZ:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.ClassCard_card__ubhAZ:focus-visible{box-shadow:0 0 0 3px #3b82f680;outline:none}.ClassCard_card__ubhAZ:active{box-shadow:0 4px 10px #0000000f;transform:translateY(0)}.ClassCard_selected__I8NlU{border:2px solid #3b82f6;box-shadow:0 0 0 2px #3b82f640}.ClassCard_truncate__FIx2t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ClassCard_cardFooter__Nod6i{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.ClassCard_actionButton__fLY4q{border:1px solid #0000;border-radius:.5rem;cursor:pointer;font-size:.75rem;font-weight:500;padding:.4rem .6rem;transition:background-color .15s ease,border-color .15s ease,transform .08s ease}.ClassCard_actionButton__fLY4q:active{transform:scale(.95)}.ClassCard_view__fBgeI:hover{background-color:#e0f2fe;border-color:#38bdf8}.ClassCard_edit__xlIJE:hover{background-color:#fef3c7;border-color:#f59e0b}.ClassCard_delete__y6zY7:hover{background-color:#fee2e2;border-color:#ef4444}.ClassCard_actionButton__fLY4q:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.Alert_success__LVC0v{background-color:#d1fa35;border:1px solid #86efac;color:#065f46}.Alert_error__ZMlev{background-color:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.Alert_warning__ibGGz{background-color:#f3f9c3;border:1px solid #fde68a;color:#78350f}.Alert_info__MjkQN{background-color:#dbeafe;border:1px solid #93c5fd;color:#1e40af}.Alert_alertContainer__MDTjp{align-items:flex-start;border-radius:.5rem;box-shadow:0 1px 2px #0000000d;display:flex;font-size:.875rem;gap:.5rem;justify-content:space-between;line-height:1.25rem;padding:1rem;transition:opacity .3s ease,transform .3s ease}.Alert_fadeIn__uyJtm{animation:Alert_fadeInAnim__2YLMq .3s forwards;opacity:0;transform:translateY(-10px)}.Alert_fadeOut__KHiS-{animation:Alert_fadeOutAnim__vOlXd .3s forwards;opacity:1;transform:translateY(0)}@keyframes Alert_fadeInAnim__2YLMq{to{opacity:1;transform:translateY(0)}}@keyframes Alert_fadeOutAnim__vOlXd{to{opacity:0;transform:translateY(-10px)}}.Alert_closeBtn__athoa{background:#0000;border:none;cursor:pointer;transition:opacity .2s ease}.Alert_closeBtn__athoa:hover{opacity:.6}.Alert_closeBtn__athoa:focus{outline:none}.Dashboard_section__YA2HP{margin-top:2rem}.Dashboard_sectionHeader__tar1\+{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.Dashboard_sectionDivider__5sUu2{background:linear-gradient(90deg,#0000,#00000014,#0000);height:1px;margin-bottom:1rem}.Dashboard_widgetGrid__F1ktd{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.Dashboard_widget__6HSKY{animation:Dashboard_fadeUp__YUuyn .35s cubic-bezier(.22,1,.36,1) both}.Dashboard_widgetDelay1__T2i3C{animation-delay:50ms}.Dashboard_widgetDelay2__DwgVV{animation-delay:.1s}.Dashboard_widgetDelay3__-eEbp{animation-delay:.15s}@keyframes Dashboard_fadeUp__YUuyn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.Dashboard_widget__6HSKY{animation:none}}.Dashboard_page__nGm-R{animation:Dashboard_pageFadeIn__rmCt8 .25s ease-out;background-color:#f9fafb;background-color:var(--app-bg,#f9fafb);min-height:100vh;padding:1.5rem 2rem}@media (max-width:768px){.Dashboard_page__nGm-R{padding:1rem}}@keyframes Dashboard_pageFadeIn__rmCt8{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.NotFound_container__xh0hi{align-items:center;animation:NotFound_fadeIn__Ctrt4 .4s ease forwards;display:flex;flex-direction:column;justify-content:center;min-height:60vh;text-align:center}.NotFound_title__0-I9s{color:#111827;font-size:3rem;font-weight:700;margin-bottom:.75rem}.NotFound_message__nAMEz{color:#6b7280;font-size:1rem;margin-bottom:1.5rem}.NotFound_homeButton__U0IHx{background-color:#2563eb;border:1px solid #2563eb;border-radius:.5rem;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:transform .15s ease,box-shadow .15s ease}.NotFound_homeButton__U0IHx:hover{background-color:#1d4ed8;box-shadow:0 4px 10px #2563eb40;transform:translateY(-1px)}.NotFound_homeButton__U0IHx:active{box-shadow:none;transform:translateY(0)}@keyframes NotFound_fadeIn__Ctrt4{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.SignupForm_card__Ce7US{animation:SignupForm_fadeInUp__JJVmP .25s ease-out;background-color:#fff;border-radius:16px;box-shadow:0 6px 18px #0000000f;padding:24px}.SignupForm_input__JhK-u{background-color:#f9fafb;border:1px solid #d1d5db;border-radius:9999px;padding:12px 16px;transition:box-shadow .15s ease,border-color .15s ease;width:100%}.SignupForm_input__JhK-u:focus{border-color:#16a34a;box-shadow:0 0 0 2px #16a34a40;outline:none}.SignupForm_inputError__PHsaK{animation:SignupForm_shake__hjzVH .3s ease;background-color:#fef2f2;border-color:#dc2626}.SignupForm_inputError__PHsaK:focus{box-shadow:0 0 0 2px #dc262659;outline:none}.SignupForm_helperText__34j9g{color:#6b7280;font-size:.75rem}.SignupForm_errorText__-aiRZ{color:#dc2626;font-size:.875rem}.SignupForm_fieldError__i4ZdI{animation:SignupForm_fadeInUp__JJVmP .25s ease-out;background-color:#fee2e2;border-radius:12px;box-shadow:0 3px 6px #00000014;color:#dc2626;font-size:.75rem;font-weight:500;margin-top:.25rem;padding:6px 12px}.SignupForm_passwordStrength__mAlY4{border-radius:9999px;height:6px;transition:width .3s ease-in-out,background-color .3s ease}.SignupForm_weak__sKqz4{background-color:#f87171}.SignupForm_medium__4eBCp{background-color:#facc15}.SignupForm_strong__BAh5F{background-color:#4ade80}.SignupForm_submitBtn__LIXLL{background-color:#2563eb;border-radius:9999px;color:#fff;font-weight:600;padding:12px 0;transition:transform .1s ease,box-shadow .1s ease;width:100%}.SignupForm_submitBtn__LIXLL:hover:not(:disabled){background-color:#1e40af;box-shadow:0 2px 6px #0000001f}.SignupForm_submitBtn__LIXLL:active{transform:scale(.97)}.SignupForm_submitBtn__LIXLL:disabled{cursor:not-allowed;opacity:.6}.SignupForm_submitBtnLoading__jksXs{opacity:.7;pointer-events:none}@keyframes SignupForm_fadeInUp__JJVmP{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes SignupForm_shake__hjzVH{0%{transform:translateX(0)}25%{transform:translateX(-4px)}50%{transform:translateX(4px)}75%{transform:translateX(-4px)}to{transform:translateX(0)}}.LoginForm_card__QXmE\+{animation:LoginForm_fadeInUp__3pC0x .25s ease-out;background-color:#fff;border-radius:16px;box-shadow:0 6px 18px #0000000f;padding:24px}.LoginForm_input__NlOfY{background-color:#f9fafb;border:1px solid #d1d5db;border-radius:9999px;padding:12px 16px;transition:box-shadow .15s ease,border-color .15s ease;width:100%}.LoginForm_input__NlOfY:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb40;outline:none}.LoginForm_inputError__yyiZP{animation:LoginForm_shake__1NN\+i .3s ease;background-color:#fef2f2;border-color:#dc2626}.LoginForm_inputError__yyiZP:focus{box-shadow:0 0 0 2px #dc262640}.LoginForm_fieldError__NTKmb{animation:LoginForm_fadeInUp__3pC0x .25s ease-out;background-color:#fee2e2;border-radius:12px;box-shadow:0 3px 6px #00000014;color:#b91c1c;font-size:.875rem;font-weight:500;margin-top:4px;padding:6px 12px}.LoginForm_submitBtn__w66Bo{background-color:#2563eb;border-radius:9999px;color:#fff;font-weight:600;padding:12px 0;transition:transform .1s ease,box-shadow .1s ease,background-color .1s ease;width:100%}.LoginForm_submitBtn__w66Bo:hover:not(:disabled){background-color:#1e40af;box-shadow:0 2px 6px #0000001f}.LoginForm_submitBtn__w66Bo:active{transform:scale(.97)}.LoginForm_submitBtnLoading__F28sO{opacity:.7;pointer-events:none}@keyframes LoginForm_fadeInUp__3pC0x{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes LoginForm_shake__1NN\+i{0%{transform:translateX(0)}20%{transform:translateX(-4px)}40%{transform:translateX(4px)}60%{transform:translateX(-2px)}80%{transform:translateX(2px)}to{transform:translateX(0)}}.LoginForm_react-hot-toast__WgF3C{z-index:9999!important}.StudentCard_card__cGi6J{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;cursor:pointer;outline:none;padding:1rem;position:relative;transition:box-shadow .2s ease,transform .15s ease}.StudentCard_card__cGi6J:hover{box-shadow:0 6px 16px #00000014;transform:translateY(-1px)}.StudentCard_card__cGi6J:focus-visible{box-shadow:0 0 0 3px #3b82f680;outline:none}.StudentCard_card__cGi6J:active{box-shadow:0 4px 10px #0000000f;transform:translateY(0)}.StudentCard_selected__A5-IR{background:#eff6ff;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb33}.StudentCard_header__DSXb2{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.75rem}.StudentCard_name__SCBRD{color:#111827;font-size:1rem;font-weight:600;line-height:1.25}.StudentCard_meta__EBr9p{color:#6b7280;font-size:.75rem;margin-top:.125rem}.StudentCard_truncate__NPebM{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.StudentCard_statusDot__5JUCE{border-radius:9999px;height:.6rem;position:absolute;right:.75rem;top:.75rem;width:.6rem}.StudentCard_active__8sCO6{background-color:#22c55e}.StudentCard_warning__7xaxh{background-color:#f59e0b}.StudentCard_inactive__YihDP{background-color:#9ca3af}.StudentCard_actions__H-1yW{bottom:.5rem;display:flex;gap:.25rem;opacity:0;position:absolute;right:.5rem;transform:translateY(4px);transition:opacity .15s ease,transform .15s ease}.StudentCard_card__cGi6J:focus-visible .StudentCard_actions__H-1yW,.StudentCard_card__cGi6J:hover .StudentCard_actions__H-1yW{opacity:1;transform:translateY(0)}.StudentCard_actionButton__jA6-R{background:#f3f4f6;border:1px solid #0000;border-radius:.5rem;color:#111827;cursor:pointer;font-size:.75rem;font-weight:500;padding:.4rem .6rem;transition:background-color .15s ease,border-color .15s ease,transform .08s ease}.StudentCard_actionButton__jA6-R:active{transform:scale(.95)}.StudentCard_actionButton__jA6-R:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.StudentCard_view__bu3LP:hover{background-color:#e0f2fe;border-color:#38bdf8}.StudentCard_quickLog__0DMMD:hover{background-color:#dcfce7;border-color:#22c55e}.StudentCard_delete__XeJ6k:hover{background-color:#fee2e2;border-color:#ef4444}.AddStudentForm_form__dLhXz{animation:AddStudentForm_popIn__U11qJ .2s ease;display:flex;flex-direction:column;gap:.75rem}.AddStudentForm_card__11I1M{background:#fff;border-radius:.75rem;box-shadow:0 2px 6px #0000000f;box-shadow:var(--shadow-sm,0 2px 6px #0000000f);padding:1rem}.AddStudentForm_field__obY-M{display:flex;flex-direction:column;gap:.25rem}.AddStudentForm_label__cMSEp{font-weight:600}.AddStudentForm_input__MQ\+PP{border:1px solid #d1d5db;border-radius:.375rem;padding:.5rem;transition:border-color .14s ease,box-shadow .14s ease}.AddStudentForm_input__MQ\+PP:focus{border-color:#3b82f6;border-color:var(--primary,#3b82f6);box-shadow:0 0 0 2px #3b82f626}.AddStudentForm_input__MQ\+PP:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.8}.AddStudentForm_fieldError__NIFqS{color:#ef4444;font-size:.875rem;min-height:1.1em}.AddStudentForm_button__OF5-g{align-self:flex-start;background:#3b82f6;border-radius:.375rem;color:#fff;font-weight:500;padding:.5rem 1rem;transition:transform .12s ease,box-shadow .12s ease}.AddStudentForm_button__OF5-g:hover:not(:disabled){background:#2563eb;box-shadow:0 4px 12px #0000001f;box-shadow:var(--shadow-md,0 4px 12px #0000001f)}.AddStudentForm_button__OF5-g:active:not(:disabled){transform:scale(.96)}.AddStudentForm_button__OF5-g:disabled{cursor:not-allowed;opacity:.6}@keyframes AddStudentForm_popIn__U11qJ{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.AddStudentForm_button__OF5-g,.AddStudentForm_form__dLhXz{animation:none}}.Modal_overlay__lypxW{animation:Modal_overlayFadeIn__WVMq\+ .2s ease forwards;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:#0006;inset:0;opacity:0;position:fixed;z-index:50}.Modal_modal__MEQp-{animation:Modal_modalScaleIn__DBEZ2 .2s ease forwards;background:#fff;border-radius:.75rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;opacity:0;transform:scale(.95);z-index:60}@keyframes Modal_overlayFadeIn__WVMq\+{to{opacity:1}}@keyframes Modal_modalScaleIn__DBEZ2{to{opacity:1;transform:scale(1)}}.BehaviorLogForm_card__AGSHk{animation:BehaviorLogForm_popIn__YZE3p .2s ease;background:#fff;border-radius:.75rem;box-shadow:0 4px 12px #0000000f;margin-top:1rem;padding:1rem}.BehaviorLogForm_form__NPoNu{display:flex;flex-direction:column;gap:.75rem}.BehaviorLogForm_title__Od-we{color:#111827;font-size:1rem;font-weight:600;margin-bottom:.75rem}.BehaviorLogForm_input__k4QeT,.BehaviorLogForm_textarea__Kn7Ee{border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;padding:.5rem;transition:border-color .15s ease,box-shadow .15s ease}.BehaviorLogForm_input__k4QeT:focus,.BehaviorLogForm_textarea__Kn7Ee:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626;outline:none}.BehaviorLogForm_input__k4QeT:disabled,.BehaviorLogForm_textarea__Kn7Ee:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.8}.BehaviorLogForm_inputError__0Lwxx{background-color:#fef2f2;border-color:#ef4444}.BehaviorLogForm_fieldError__WL9eM{color:#ef4444;font-size:.875rem;margin-top:.25rem;min-height:1.1em}.BehaviorLogForm_actions__OxhPn{display:flex;gap:.5rem;margin-top:.5rem}.BehaviorLogForm_submitButton__NVO03{background-color:#2563eb;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-weight:500;padding:.6rem 1rem;transition:background-color .15s ease,transform .08s ease}.BehaviorLogForm_submitButton__NVO03:active{transform:scale(.97)}.BehaviorLogForm_submitButton__NVO03:disabled{background-color:#9ca3af;cursor:not-allowed;transform:none}.BehaviorLogForm_cancelButton__znBhJ{background-color:#e5e7eb;border:none;border-radius:.5rem;color:#111827;cursor:pointer;padding:.5rem .75rem}.BehaviorLogForm_modalButton__pfOXq{background-color:#2563eb;border:none;border-radius:.5rem;color:#fff;cursor:pointer;margin-top:1rem;padding:.5rem .75rem}.BehaviorLogForm_history__VdEFo{border-top:1px solid #e5e7eb;margin-top:1.5rem;padding-top:1rem}.BehaviorLogForm_historyTitle__Erovx{font-weight:600;margin-bottom:.5rem}.BehaviorLogForm_historyEmpty__XBsuw{color:#6b7280;font-size:.875rem}.BehaviorLogForm_historyList__RZ3jf{list-style:none;margin:0;padding:0}.BehaviorLogForm_historyItem__ivzOG{border-bottom:1px solid #f1f5f9;padding:.75rem 0}.BehaviorLogForm_historyHeader__StLQg{align-items:center;display:flex;justify-content:space-between}.BehaviorLogForm_category__-xkIx{font-weight:500}.BehaviorLogForm_date__DhWWz{color:#6b7280;font-size:.75rem}.BehaviorLogForm_comment__SomTt{color:#374151;font-size:.875rem;margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.BehaviorLogForm_value__v2Y-4{color:#2563eb;display:inline-block;font-size:.75rem;margin-top:.25rem}@keyframes BehaviorLogForm_popIn__YZE3p{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.BehaviorLogForm_card__AGSHk,.BehaviorLogForm_submitButton__NVO03{animation:none}}.QuickActionButtons_container__651bw{display:flex;gap:.5rem;margin-top:.75rem}.QuickActionButtons_button__RiHyy{background-color:#f3f4f6;border:1px solid #0000;border-radius:.5rem;color:#111827;cursor:pointer;font-size:.75rem;font-weight:500;padding:.25rem .6rem;transition:background-color .15s ease,transform .08s ease,box-shadow .15s ease}.QuickActionButtons_button__RiHyy:active{transform:scale(.95)}.QuickActionButtons_button__RiHyy:disabled{cursor:not-allowed;opacity:.6;transform:none}.QuickActionButtons_positive__Fks1S:hover:not(:disabled){background-color:#dcfce7;border-color:#22c55e}.QuickActionButtons_neutral__p-Sk1:hover:not(:disabled){background-color:#e0f2fe;border-color:#38bdf8}.QuickActionButtons_negative__kSGyb:hover:not(:disabled){background-color:#fee2e2;border-color:#ef4444}.QuickActionButtons_modalButton__X1kMN{background-color:#2563eb;border:none;border-radius:.5rem;color:#fff;cursor:pointer;margin-top:1rem;padding:.5rem .75rem}.ClassroomView_page__ucThW{margin:0 auto;max-width:72rem;padding:1.5rem}.ClassroomView_headerActions__9D8Av{display:flex;gap:.75rem;margin-bottom:1rem}.ClassroomView_title__pz0Hn{font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.ClassroomView_subtitle__jzx2r{color:#6b7280;margin-bottom:1rem}.ClassroomView_studentGrid__KF1kf{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.ClassroomView_studentTitle__oBHz4{background:#fff;border:1px solid #e5e7eb;border:1px solid var(--border-muted,#e5e7eb);border-radius:.75rem;display:flex;flex-direction:column;justify-content:space-between;padding:1rem;transition:box-shadow .18s ease,transform .18s ease}.ClassroomView_studentTitle__oBHz4:hover{box-shadow:0 4px 6px #00000014;box-shadow:var(--shadow-md,0 4px 6px #00000014);transform:translateY(-2px)}.ClassroomView_section__0qajX{margin-top:2.5rem}.ClassroomView_sectionTitle__beUUE{font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.ClassroomView_logItem__rTxt0{animation:ClassroomView_fadeIn__ymKJG .18s ease;background:#fff;border-radius:.5rem;box-shadow:0 1px 2px #0000000f;box-shadow:var(--shadow-sm,0 1px 2px #0000000f);display:flex;gap:1rem;justify-content:space-between;padding:.75rem}@keyframes ClassroomView_fadeIn__ymKJG{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.StudentReportSummary_customCard__DOMrF{background:#fff;border-radius:.75rem;box-shadow:0 1px 3px #00000014;padding:1rem}.StudentReportSummary_summaryGrid__QNc4\+{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.StudentReportSummary_statCard__XSXri{border-radius:.5rem;padding:.75rem}.StudentReportSummary_statValue__H3hBm{font-size:1.5rem;font-weight:700}.StudentReportSummary_statLabel__\+N6QT{color:#6b7280;font-size:.875rem}.StudentReportSummary_scorePositive__Y8I3c{background:#ecfdf5;color:#047857}.StudentReportSummary_scoreNeutral__Vb9\+h{background:#fffbeb;color:#92400e}.StudentReportSummary_scoreNegative__mAhQS{background:#fef2f2;color:#991b1b}.StudentReportSummary_dateRange__mfIr1{color:#6b7280;font-size:.75rem;margin-bottom:.75rem}.StudentView_page__kzFdM{margin:0 auto;max-width:48rem;padding:1.5rem}.StudentView_backButton__cQ-rE{margin-bottom:1rem}.StudentView_title__vo6vA{font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.StudentView_subtitle__TTt6e{color:#6b7280;margin-bottom:1rem}.StudentView_infoPanel__AJBM9{animation:StudentView_fadeIn__FL5u\+ .18s ease;background:#fff;border-radius:.75rem;box-shadow:0 2px 6px #0000000f;box-shadow:var(--shadow-sm,0 2px 6px #0000000f);margin-bottom:1.5rem;padding:1rem}.StudentView_actions__5ZXTd{margin:1rem 0}.StudentView_section__iaQN2{margin-top:2rem}.StudentView_sectionTitle__4WBws{font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.StudentView_logList__xx5XB{display:flex;flex-direction:column;gap:.75rem}.StudentView_logItem__rTpAR{animation:StudentView_fadeSlideIn__07i-N .16s ease;background:#fff;border-radius:.5rem;box-shadow:0 1px 4px #0000000f;box-shadow:var(--shadow-sm,0 1px 4px #0000000f);padding:.75rem;position:relative}.StudentView_logActions__IFvfs{opacity:0;position:absolute;right:.75rem;top:.75rem;transform:translateY(-2px);transition:opacity .14s ease,transform .14s ease}.StudentView_logItem__rTpAR:hover .StudentView_logActions__IFvfs{opacity:1;transform:translateY(0)}.StudentView_reportSection__zdNbN{animation:StudentView_fadeSlideIn__07i-N .22s ease;margin-top:3rem}.StudentView_truncate__6RmN-{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes StudentView_fadeIn__FL5u\+{0%{opacity:0}to{opacity:1}}@keyframes StudentView_fadeSlideIn__07i-N{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ReportFilters_filterCard__0wyYj{animation:ReportFilters_fadeIn__zv25g .35s ease forwards;background:#fff;border-radius:12px;box-shadow:0 6px 18px #0000000d;display:flex;flex-direction:column;gap:1rem;opacity:0;padding:1rem 1.5rem;transform:translateY(8px)}.ReportFilters_fadeIn__zv25g{to{animation:ReportFilters_fadeIn__zv25g .35s ease forwards;opacity:1;transform:translateY(8px)}}@keyframes ReportFilters_fadeIn__zv25g{to{opacity:1;transform:translateY(0)}}.ReportFilters_formRow__s8-kA{display:flex;flex-direction:column;gap:.25rem}.ReportFilters_label__Mfzpw{font-size:.95rem;font-weight:500}.ReportFilters_input__oLKq-,.ReportFilters_select__GBxF5{border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;padding:.5rem .75rem;transition:border-color .2s,box-shadow .2s}.ReportFilters_input__oLKq-:focus,.ReportFilters_select__GBxF5:focus{border-color:#4ade80;box-shadow:0 0 0 3px #4ade804d;outline:none}.ExportButton_button__CSaIL{align-items:center;display:inline-flex;gap:.5rem;position:relative}.ExportButton_spinner__6Wdl9{animation:ExportButton_spin__V6iFS .7s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:initial;height:16px;width:16px}@keyframes ExportButton_spin__V6iFS{to{transform:rotate(1turn)}}.ExportButton_success__AK-zH{animation:ExportButton_pulse__Krsdv .4s ease-out}@keyframes ExportButton_pulse__Krsdv{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.ReportsView_page__cYP0F{animation:ReportsView_fadeIn__mmy50 .2s ease-out;display:flex;flex-direction:column;gap:1.5rem;margin:0 auto;max-width:72rem;padding:2rem}@keyframes ReportsView_fadeIn__mmy50{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ReportsView_section__cO8h7{animation:ReportsView_fadeSlideIn__DrCst .4s ease forwards;background:#fff;border-radius:12px;border-top:1px solid #e5e7eb;border-top:1px solid var(--border-muted,#e5e7eb);box-shadow:0 8px 24px #0000000f;margin-top:1.5rem;opacity:0;padding:1.5rem;transform:translateY(12px)}@keyframes ReportsView_fadeSlideIn__DrCst{to{opacity:1;transform:translateY(0)}}.ReportsView_sectionTitle__Jwsp1{font-size:1.125rem;font-weight:600;margin-bottom:.75rem}.ReportsView_backButton__sqI7j{align-self:flex-start;background:#e5e7eb;border-radius:8px;font-size:.9rem;padding:.4rem .75rem;transition:background .2s ease}.ReportsView_backButton__sqI7j:hover{background:#d1d5db}.ReportsView_controls__nBtez{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.BehaviorChart_chartWrapper__b0h82{margin-top:1rem;min-height:300px;width:100%}.BehaviorChart_tooltip__21C2k{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 4px 10px #00000014;font-size:.875rem;padding:.5rem .75rem}.BehaviorChart_tooltipLabel__Mo5as{font-weight:600;margin-bottom:.25rem}.BehaviorChart_legend__7wucd{display:flex;gap:1rem;justify-content:center;margin-top:.75rem}.BehaviorChart_legendItem__9MOPL{align-items:center;display:flex;font-size:.875rem;gap:.375rem}.Reports_page__-zOF9{animation:Reports_fadeIn__G1Z77 .3s ease;min-height:100vh;padding:2rem}@keyframes Reports_fadeIn__G1Z77{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.Privacy_pageContainer__v7-4B{color:#374151;line-height:1.6;margin:2rem auto;max-width:900px;padding:0 1rem}.Privacy_pageContainer__v7-4B h1{color:#111827;font-size:2rem;margin-bottom:1.5rem}.Privacy_updated__0c5vR{color:#6b7280;font-size:.875rem;margin-bottom:1.5rem}.Privacy_pageContainer__v7-4B h2{color:#111827;font-size:1.25rem;margin-bottom:.75rem;margin-top:2rem}.Privacy_pageContainer__v7-4B h3{color:#1f2937;font-size:1.1rem;margin-bottom:.5rem;margin-top:1.25rem}.Privacy_pageContainer__v7-4B p{margin-bottom:1rem}.Privacy_pageContainer__v7-4B ul{margin-bottom:1.25rem;padding-left:1.25rem}.Privacy_pageContainer__v7-4B li{margin-bottom:.5rem}.Support_pageContainer__M4QQ9{color:#374151;line-height:1.6;margin:2rem auto;max-width:900px;padding:0 1rem}.Support_pageContainer__M4QQ9 h1{color:#111827;font-size:2rem;margin-bottom:1rem}.Support_pageContainer__M4QQ9 h2{color:#111827;font-size:1.25rem;margin-bottom:.75rem;margin-top:2rem}.Support_pageContainer__M4QQ9 h3{color:#1f2937;font-size:1.1rem;margin-bottom:.5rem;margin-top:1.25rem}.Support_pageContainer__M4QQ9 p{margin-bottom:1rem}.Support_pageContainer__M4QQ9 h3+p{margin-bottom:1.25rem}.Terms_pageContainer__v1jpv{color:#374151;line-height:1.6;margin:2rem auto;max-width:900px;padding:0 1rem}.Terms_pageContainer__v1jpv h1{color:#111827;font-size:2rem;margin-bottom:1.5rem}.Terms_updated__YGVqP{color:#6b7280;font-size:.875rem;margin-bottom:1.5rem}.Terms_pageContainer__v1jpv h2{color:#111827;font-size:1.25rem;margin-bottom:.75rem;margin-top:2rem}.Terms_pageContainer__v1jpv h3{color:#1f2937;font-size:1.1rem;margin-bottom:.5rem;margin-top:1.25rem}.Terms_pageContainer__v1jpv p{margin-bottom:1rem}.Terms_pageContainer__v1jpv ul{margin-bottom:1.25rem;padding-left:1.25rem}.Terms_pageContainer__v1jpv li{margin-bottom:.5rem}.Classes_page__Uacou{padding:1.25rem}.Classes_title__m6J51{font-size:1.75rem;font-weight:600;margin-bottom:.25rem}.Classes_subtitle__E7ZMe{color:#6b7280;margin-bottom:1rem}.Classes_grid__wJGhB{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.Classes_card__OmTh\+{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;cursor:pointer;padding:1rem;text-align:left;transition:box-shadow .15s ease,transform .15s ease}.Classes_card__OmTh\+:hover{box-shadow:0 8px 16px #00000014;transform:translateY(-2px)}.Classes_cardTitle__fIBOU{font-size:1.1rem;font-weight:500}.Classes_cardDescription__tH8P8{color:#6b7280;font-size:.875rem;margin-top:.25rem}.PublicHome_container__Nwm5J{align-items:center;background:linear-gradient(180deg,#f9fafb,#fff);display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:2rem;text-align:center}.PublicHome_title__I\+xeW{color:#111827;font-size:3rem;font-weight:700;margin-bottom:1rem}.PublicHome_subtitle__Zwb7e{color:#4b5563;font-size:1.125rem;margin-bottom:2rem;max-width:600px}.PublicHome_actions__Ajp1Q{display:flex;gap:1rem;margin-bottom:3rem}.PublicHome_primaryButton__EVE\+Z{background-color:#2563eb;border-radius:10px;color:#fff;font-weight:600;padding:.75rem 1.75rem;text-decoration:none;transition:background-color .2s ease}.PublicHome_primaryButton__EVE\+Z:hover{background-color:#1d4ed8}.PublicHome_secondaryButton__BZz9n{border:1px solid #d1d5db;border-radius:10px;color:#111827;font-weight:500;padding:.75rem 1.75rem;text-decoration:none;transition:background-color .2s ease}.PublicHome_secondaryButton__BZz9n:hover{background-color:#fef4f6}.PublicHome_features__sSY3h{color:#374151;list-style:none;margin:0;padding:0}.PublicHome_featureItem__iFpBB{font-size:1rem;margin-bottom:.75rem}.PublicHome_logo__EqCFV{height:auto;margin-bottom:1.25rem;width:88px}.app-container{background-color:#f8fafc;display:flex;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;min-height:100vh}.content{display:flex;flex:1 1;flex-direction:column;min-width:0}main{background-color:#f1f5f9;flex:1 1;overflow-y:auto;padding:1rem;scrollbar-color:#64748b80 #0000;scrollbar-width:thin}main::-webkit-scrollbar{width:8px}main::-webkit-scrollbar-thumb{background-color:#64748b80;border-radius:4px}main::-webkit-scrollbar-track{background-color:initial}.react-hot-toast{pointer-events:auto;z-index:99999!important}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
/*# sourceMappingURL=main.c71dc8f1.css.map*/