:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: #e74c3c;--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient( to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55 );--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;padding:4px;width:var(--toastify-toast-width);box-sizing:border-box;color:#fff}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%)}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right)}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%)}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right)}@media only screen and (max-width : 480px){.Toastify__toast-container{width:100vw;padding:0;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}}.Toastify__toast{--y: 0;position:relative;-ms-touch-action:none;touch-action:none;min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);cursor:default;direction:ltr;z-index:0;overflow:hidden}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{margin:auto 0;-ms-flex:1 1 auto;flex:1 1 auto;padding:6px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.Toastify__toast-body>div:last-child{word-break:break-word;-ms-flex:1;flex:1}.Toastify__toast-icon{-webkit-margin-end:10px;margin-inline-end:10px;width:20px;-ms-flex-negative:0;flex-shrink:0;display:-ms-flexbox;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}@media only screen and (max-width : 480px){.Toastify__toast{margin-bottom:0;border-radius:0}}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;-ms-flex-item-align:start;align-self:flex-start;z-index:1}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:var(--toastify-z-index);opacity:.7;transform-origin:left;border-bottom-left-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial;border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp{position:absolute;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--primary: #3b82f6;--primary-dark: #2563eb;--primary-darker: #1d4ed8;--primary-light: #eff6ff;--primary-glow: rgba(59, 130, 246, .15);--success: #10b981;--success-light: #ecfdf5;--success-dark: #059669;--danger: #ef4444;--danger-light: #fef2f2;--danger-dark: #dc2626;--warning: #f59e0b;--warning-light: #fffbeb;--leave: #f97316;--leave-light: #fff7ed;--purple: #8b5cf6;--purple-light: #f5f3ff;--bg: #f1f5f9;--bg-subtle: #f8fafc;--surface: #ffffff;--text: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--border: #e2e8f0;--border-light: #f1f5f9;--sidebar-bg: #0f172a;--sidebar-hover: rgba(255, 255, 255, .06);--sidebar-active: rgba(59, 130, 246, .2);--sidebar-width: 272px;--navbar-height: 72px;--radius: 10px;--radius-lg: 16px;--radius-xl: 20px;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .07), 0 2px 4px -2px rgba(15, 23, 42, .05);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -4px rgba(15, 23, 42, .04);--shadow-xl: 0 20px 25px -5px rgba(15, 23, 42, .08), 0 8px 10px -6px rgba(15, 23, 42, .04);--transition: .2s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased}.app-layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);position:fixed;top:0;left:0;height:100vh;display:flex;flex-direction:column;z-index:200;transition:transform var(--transition)}.sidebar-header{padding:24px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.06)}.sidebar-brand{display:flex;align-items:center;gap:12px}.brand-logo{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,var(--primary),var(--primary-darker));color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.brand-logo-lg{width:64px;height:64px;border-radius:16px}.brand-logo-lg svg{width:36px;height:36px}.sidebar-brand h3{color:#fff;font-size:1.15rem;font-weight:700;letter-spacing:-.02em}.sidebar-brand p{color:var(--text-muted);font-size:.72rem;font-weight:500}.sidebar-close{display:none;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px}.sidebar-nav{flex:1;padding:16px 12px;overflow-y:auto}.nav-section-label{display:block;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8b3;padding:0 12px;margin-bottom:8px}.sidebar-link{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:var(--radius);color:#94a3b8;text-decoration:none;font-weight:500;font-size:.875rem;margin-bottom:2px;transition:all var(--transition)}.sidebar-link:hover{background:var(--sidebar-hover);color:#e2e8f0}.sidebar-link.active{background:var(--sidebar-active);color:#60a5fa;font-weight:600;position:relative}.sidebar-link.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:#60a5fa;border-radius:0 4px 4px 0}.sidebar-link.active .link-icon{color:#60a5fa}.link-icon{display:flex;align-items:center;opacity:.85}.sidebar-footer{padding:16px;border-top:1px solid rgba(255,255,255,.06)}.sidebar-user{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius);background:#ffffff0a}.sidebar-user-info{display:flex;flex-direction:column;min-width:0}.sidebar-user-name{color:#e2e8f0;font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-role{color:var(--text-muted);font-size:.72rem;text-transform:capitalize}.sidebar-backdrop{display:none}.main-content{margin-left:var(--sidebar-width);flex:1;min-height:100vh;display:flex;flex-direction:column}.navbar{height:var(--navbar-height);background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb}.navbar-left{display:flex;align-items:center;gap:16px}.menu-btn{display:none;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:8px;cursor:pointer;color:var(--text-secondary);transition:all var(--transition)}.menu-btn:hover{background:var(--primary-light);color:var(--primary);border-color:transparent}.navbar-title h2{font-size:1.15rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.navbar-breadcrumb{font-size:.75rem;color:var(--text-muted);font-weight:500}.navbar-right{display:flex;align-items:center;gap:12px}.navbar-user{display:flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;background:var(--bg-subtle);border-radius:50px;border:1px solid var(--border-light)}.navbar-user-text{display:flex;flex-direction:column;gap:1px}.user-name{font-size:.8rem;font-weight:600;color:var(--text);line-height:1.2}.avatar{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,var(--primary),var(--primary-darker));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;flex-shrink:0}.avatar-sm{width:32px;height:32px;font-size:.7rem;border-radius:8px}.role-badge{font-size:.65rem;font-weight:600;text-transform:capitalize;padding:1px 0;line-height:1}.role-admin{color:var(--purple)}.role-teacher{color:var(--primary)}.role-student{color:var(--success)}.page-content{padding:28px;flex:1;background:radial-gradient(circle at 20% 20%,rgba(59,130,246,.04) 0%,transparent 50%),radial-gradient(circle at 80% 0%,rgba(139,92,246,.04) 0%,transparent 40%),var(--bg)}.page-enter{animation:pageEnter .35s ease}@keyframes pageEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-header-actions{display:flex;gap:10px;flex-shrink:0}.welcome-banner{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;margin-bottom:28px;border-radius:var(--radius-lg);background:linear-gradient(135deg,#1e3a8a,#2563eb,#3b82f6);color:#fff;box-shadow:0 8px 24px #2563eb40;position:relative;overflow:hidden}.welcome-banner:after{content:"";position:absolute;right:-40px;top:-40px;width:200px;height:200px;background:#ffffff14;border-radius:50%}.welcome-greeting{font-size:.8rem;font-weight:500;opacity:.85;text-transform:capitalize}.welcome-banner h2{font-size:1.5rem;font-weight:800;letter-spacing:-.03em;margin:4px 0}.welcome-banner p{font-size:.85rem;opacity:.8}.welcome-role{padding:8px 16px;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:capitalize;background:#ffffff26;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);position:relative;z-index:1}.section-panel{margin-bottom:28px}.section-panel-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px;gap:12px}.section-panel-title{font-size:1.05rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.section-panel-subtitle{font-size:.82rem;color:var(--text-muted);margin-top:2px}.section-panel-warning .section-panel-title{color:var(--warning)}.stats-grid-3{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.empty-text{color:var(--text-muted);font-size:.9rem;padding:8px 0}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-input-icon{position:absolute;left:14px;color:var(--text-muted);pointer-events:none}.search-input{padding-left:42px!important}.search-input-grow{flex:1;min-width:220px;max-width:360px}.input-with-icon{position:relative}.input-with-icon .input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.input-with-icon .form-input{padding-left:42px}.action-buttons{display:flex;gap:6px}.btn-icon{width:34px;height:34px;border-radius:8px;border:1.5px solid var(--border);background:var(--surface);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition);color:var(--text-muted)}.btn-icon-edit:hover{border-color:var(--primary);background:var(--primary-light);color:var(--primary-dark)}.btn-icon-delete:hover{border-color:#fecaca;background:var(--danger-light);color:var(--danger)}.progress-bar-wrap{display:flex;align-items:center;gap:10px;min-width:120px}.progress-bar-track{flex:1;height:8px;background:var(--border-light);border-radius:10px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:10px;transition:width .5s ease}.progress-bar-success{background:linear-gradient(90deg,var(--success),#34d399)}.progress-bar-warning{background:linear-gradient(90deg,var(--warning),#fbbf24)}.progress-bar-danger{background:linear-gradient(90deg,var(--danger),#f87171)}.progress-bar-label{font-size:.78rem;font-weight:700;color:var(--text-secondary);min-width:36px}.row-with-icon{display:inline-flex;align-items:center;gap:8px}.row-with-icon svg{color:var(--warning);flex-shrink:0}.login-feature-icon{width:36px;height:36px;border-radius:10px;background:#ffffff1a;display:flex;align-items:center;justify-content:center;color:#93c5fd;flex-shrink:0}.login-feature-icon.present{color:#6ee7b7;background:#10b98126}.login-feature-icon.leave{color:#fdba74;background:#f9731626}.login-card{width:100%;max-width:400px;background:var(--surface);padding:36px;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);border:1px solid var(--border-light)}.page-header{margin-bottom:28px}.page-header h1{font-size:1.65rem;font-weight:800;letter-spacing:-.03em;margin-bottom:4px}.page-header p{color:var(--text-secondary);font-size:.9rem}.flex-between{display:flex;justify-content:space-between;align-items:center;gap:16px}.section-title{font-size:1.05rem;font-weight:700;margin:32px 0 16px;letter-spacing:-.02em;color:var(--text)}.warning-title{color:var(--warning)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:28px}.stat-card{background:var(--surface);border-radius:var(--radius-lg);padding:22px 24px;box-shadow:var(--shadow);border:1px solid var(--border-light);display:flex;align-items:center;gap:18px;transition:all var(--transition);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-card.blue:before{background:linear-gradient(90deg,var(--primary),#60a5fa)}.stat-card.green:before{background:linear-gradient(90deg,var(--success),#34d399)}.stat-card.purple:before{background:linear-gradient(90deg,var(--purple),#a78bfa)}.stat-card.orange:before{background:linear-gradient(90deg,var(--leave),#fb923c)}.stat-card h3{font-size:2rem;font-weight:800;letter-spacing:-.03em;line-height:1}.stat-card p{color:var(--text-muted);font-size:.8rem;font-weight:500;margin-top:4px}.stat-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-card.blue .stat-icon{background:var(--primary-light);color:var(--primary-dark)}.stat-card.green .stat-icon{background:var(--success-light);color:var(--success-dark)}.stat-card.purple .stat-icon{background:var(--purple-light);color:var(--purple)}.stat-card.orange .stat-icon{background:var(--leave-light);color:#ea580c}.stat-card.present-card .stat-icon{background:#10b98126;color:var(--success-dark)}.stat-card.absent-card .stat-icon{background:#ef44441f;color:var(--danger-dark)}.stat-card.leave-card .stat-icon{background:#f973161f;color:#ea580c}.stat-card.present-card{background:linear-gradient(135deg,var(--success-light),#fff);border-color:#a7f3d0}.stat-card.present-card:before{background:var(--success)}.stat-card.absent-card{background:linear-gradient(135deg,var(--danger-light),#fff);border-color:#fecaca}.stat-card.absent-card:before{background:var(--danger)}.stat-card.leave-card{background:linear-gradient(135deg,var(--leave-light),#fff);border-color:#fed7aa}.stat-card.leave-card:before{background:var(--leave)}.stat-card.present-card h3{color:var(--success-dark)}.stat-card.absent-card h3{color:var(--danger-dark)}.stat-card.leave-card h3{color:#ea580c}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.info-card{background:var(--surface);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow);border:1px solid var(--border-light);transition:all var(--transition);position:relative}.info-card-icon{width:40px;height:40px;border-radius:10px;background:var(--primary-light);color:var(--primary-dark);display:flex;align-items:center;justify-content:center;margin-bottom:14px}.info-card:hover{box-shadow:var(--shadow-md);border-color:var(--border)}.info-card h3,.info-card h4{margin-bottom:10px;color:var(--text);font-weight:700;font-size:1rem}.info-card p{color:var(--text-secondary);font-size:.85rem;margin-bottom:4px}.class-card{border-top:3px solid var(--primary)}.card-actions{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}.table-container{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--border-light);overflow:hidden}.table-header-bar{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-light)}.table-header-bar h3{font-size:.95rem;font-weight:700}.table-count{font-size:.8rem;color:var(--text-muted);background:var(--bg);padding:4px 12px;border-radius:20px;font-weight:500}.data-table{width:100%;border-collapse:collapse}.data-table th{background:var(--bg-subtle);padding:13px 20px;text-align:left;font-weight:600;font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border)}.data-table td{padding:14px 20px;border-bottom:1px solid var(--border-light);font-size:.875rem;color:var(--text-secondary)}.data-table tbody tr{transition:background var(--transition)}.data-table tbody tr:hover{background:var(--bg-subtle)}.data-table tbody tr:last-child td{border-bottom:none}.roll-badge{display:inline-flex;align-items:center;justify-content:center;min-width:36px;padding:4px 10px;background:var(--primary-light);color:var(--primary-dark);border-radius:8px;font-weight:700;font-size:.8rem}.student-name-cell{font-weight:600;color:var(--text)!important}.text-center{text-align:center}.text-present{color:var(--success-dark);font-weight:700}.text-absent{color:var(--danger-dark);font-weight:700}.text-leave{color:#ea580c;font-weight:700}.text-warning{color:var(--warning);font-weight:700}.low-attendance-row{background:var(--warning-light)!important}.empty-state{padding:48px 20px;text-align:center;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:12px}.empty-state svg{opacity:.4}.empty-state p{font-size:.9rem}.status-pills{display:flex;gap:6px;justify-content:center}.status-pill{padding:6px 14px;border-radius:20px;border:1.5px solid var(--border);background:var(--surface);font-size:.75rem;font-weight:600;cursor:pointer;transition:all var(--transition);color:var(--text-muted);display:inline-flex;align-items:center;gap:5px}.status-pill:hover:not(:disabled){transform:scale(1.04)}.status-pill-present.active{background:var(--success);border-color:var(--success);color:#fff;box-shadow:0 2px 8px #10b98159}.status-pill-absent.active{background:var(--danger);border-color:var(--danger);color:#fff;box-shadow:0 2px 8px #ef444459}.status-pill-leave.active{background:var(--leave);border-color:var(--leave);color:#fff;box-shadow:0 2px 8px #f9731659}.status-pill:disabled{cursor:default;opacity:.8}.status-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;font-size:.72rem;font-weight:600;text-transform:capitalize;letter-spacing:.02em}.status-present,.status-active{background:var(--success-light);color:var(--success-dark);border:1px solid #a7f3d0}.status-absent,.status-inactive{background:var(--danger-light);color:var(--danger-dark);border:1px solid #fecaca}.status-leave{background:var(--leave-light);color:#ea580c;border:1px solid #fed7aa}.form-group{margin-bottom:16px}.form-section-body .form-row{margin-bottom:0}.form-section-body .form-row .form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:7px;font-weight:600;font-size:.8rem;color:var(--text-secondary)}.form-input{width:100%;padding:11px 14px;border:1.5px solid var(--border);border-radius:var(--radius);font-size:.875rem;font-family:inherit;transition:all var(--transition);background:var(--surface);color:var(--text)}.form-input::placeholder{color:var(--text-muted)}.form-input:hover{border-color:#cbd5e1}.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-glow)}.form-input.input-error{border-color:var(--danger);box-shadow:0 0 0 4px #ef44441f}.form-input:disabled{background:var(--bg-subtle);color:var(--text-muted);cursor:not-allowed}.form-input:-webkit-autofill,.form-input:-webkit-autofill:hover,.form-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0 1000px var(--surface) inset;box-shadow:0 0 0 1000px var(--surface) inset;transition:background-color 5000s ease-in-out 0s}.required{color:var(--danger)}.field-error{display:block;margin-top:6px;font-size:.78rem;font-weight:500;color:var(--danger)}.field-hint{display:block;margin-top:6px;font-size:.78rem;color:var(--text-muted)}.date-input-wrapper{position:relative}.date-input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none;z-index:1}.date-input{padding-left:42px!important;color-scheme:light}.date-input::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.filters-bar{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap;padding:18px 20px;background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-xs)}.filters-bar .form-input{max-width:200px;min-width:140px}.attendance-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;background:var(--surface);padding:24px;border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--border-light);margin-bottom:24px}.attendance-setup-card{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow);margin-bottom:20px;overflow:hidden}.attendance-setup-header{display:flex;align-items:center;gap:12px;padding:16px 20px;background:var(--bg-subtle);border-bottom:1px solid var(--border-light)}.attendance-setup-card .form-alert{margin:16px 20px 0}.attendance-filters-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:20px}.attendance-filters-grid .form-group{margin-bottom:0}.attendance-summary-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:14px 18px;background:var(--primary-light);border:1px solid #bfdbfe;border-radius:var(--radius-lg);margin-bottom:16px}.summary-chips{display:flex;flex-wrap:wrap;gap:8px}.summary-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--surface);border-radius:20px;font-size:.78rem;font-weight:600;color:var(--primary-dark);border:1px solid #bfdbfe}.summary-stats{display:flex;gap:12px;flex-wrap:wrap}.mini-stat{font-size:.78rem;font-weight:700;display:inline-flex;align-items:center;gap:4px}.mini-stat.present{color:var(--success-dark)}.mini-stat.absent{color:var(--danger-dark)}.mini-stat.leave{color:#ea580c}.table-toolbar{display:flex;justify-content:flex-end;margin-bottom:12px}.submit-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-top:20px;padding:18px 22px;background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow);position:sticky;bottom:16px;z-index:10}.submit-bar-hint{font-size:.85rem;color:var(--text-secondary);font-weight:500}.empty-state-card{text-align:center;padding:56px 24px;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-lg);color:var(--text-muted)}.empty-state-card svg{opacity:.35;margin-bottom:12px}.empty-state-card h3{font-size:1rem;font-weight:700;color:var(--text);margin-bottom:6px}.empty-state-card p{font-size:.85rem;margin-bottom:16px}.empty-state-card.muted{background:var(--bg-subtle)}.checkbox-group{display:flex;flex-wrap:wrap;gap:10px}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:.85rem;cursor:pointer;padding:8px 14px;border:1.5px solid var(--border);border-radius:var(--radius);transition:all var(--transition);color:var(--text-secondary)}.checkbox-label:has(input:checked){border-color:var(--primary);background:var(--primary-light);color:var(--primary-dark)}.remarks-input{min-width:140px}.btn{padding:10px 18px;border:none;border-radius:var(--radius);font-size:.85rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all var(--transition);display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-darker));color:#fff;box-shadow:0 2px 8px #3b82f64d}.btn-primary:hover:not(:disabled){box-shadow:0 4px 14px #3b82f666;transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-outline{background:var(--surface);border:1.5px solid var(--border);color:var(--text-secondary)}.btn-outline:hover{background:var(--bg);border-color:#cbd5e1;color:var(--text)}.btn-ghost{background:transparent;border:1.5px solid var(--border);color:var(--text-secondary);padding:8px 14px}.btn-ghost:hover{background:var(--danger-light);border-color:#fecaca;color:var(--danger)}.btn-danger{background:var(--danger);color:#fff;box-shadow:0 2px 6px #ef444440}.btn-danger:hover{background:var(--danger-dark)}.btn-sm{padding:6px 12px;font-size:.78rem;border-radius:8px}.btn-lg{padding:14px 32px;font-size:.95rem;border-radius:12px}.btn-full{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.form-actions{margin-top:24px;display:flex;justify-content:flex-end}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease}.modal{background:var(--surface);border-radius:var(--radius-xl);width:100%;max-width:540px;max-height:92vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl);border:1px solid var(--border-light);animation:slideUp .25s ease;overflow:hidden}.modal-lg{max-width:720px}.modal h2{margin-bottom:0;font-size:1.25rem;font-weight:800;letter-spacing:-.02em}.modal-subtitle{font-size:.82rem;color:var(--text-muted);margin-top:4px;font-weight:500}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 28px 20px;border-bottom:1px solid var(--border-light);flex-shrink:0}.modal-body{padding:20px 28px;overflow-y:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 28px 24px;border-top:1px solid var(--border-light);background:var(--bg-subtle);flex-shrink:0}.modal-close{width:36px;height:36px;border-radius:8px;border:1px solid var(--border);background:var(--surface);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-muted);transition:all var(--transition);flex-shrink:0}.modal-close:hover{background:var(--bg);color:var(--text)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-light)}.form-section{background:var(--bg-subtle);border:1px solid var(--border-light);border-radius:var(--radius-lg);margin-bottom:16px;overflow:hidden}.form-section:last-child{margin-bottom:0}.form-section-header{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--surface);border-bottom:1px solid var(--border-light)}.form-section-icon{width:36px;height:36px;border-radius:10px;background:var(--primary-light);color:var(--primary-dark);display:flex;align-items:center;justify-content:center;flex-shrink:0}.form-section-title{font-size:.9rem;font-weight:700;color:var(--text);letter-spacing:-.01em}.form-section-desc{font-size:.75rem;color:var(--text-muted);margin-top:1px}.form-section-body{padding:18px}.form-section-body .form-group:last-child{margin-bottom:0}.form-alert{display:flex;gap:14px;padding:14px 16px;background:var(--warning-light);border:1px solid #fde68a;border-radius:var(--radius);margin-bottom:16px;color:#92400e}.form-alert svg{flex-shrink:0;margin-top:2px}.form-alert strong{display:block;font-size:.85rem;margin-bottom:2px}.form-alert p{font-size:.8rem;line-height:1.5;opacity:.9}.form-alert-link{color:var(--primary-dark);font-weight:600;text-decoration:underline}.gender-pills{display:flex;gap:8px;flex-wrap:wrap}.gender-pill{padding:9px 20px;border-radius:20px;border:1.5px solid var(--border);background:var(--surface);font-size:.82rem;font-weight:600;font-family:inherit;color:var(--text-secondary);cursor:pointer;transition:all var(--transition)}.gender-pill:hover{border-color:var(--primary);color:var(--primary)}.gender-pill.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 2px 8px #3b82f64d}.textarea-icon-wrap .textarea-icon{top:14px;transform:none}.form-textarea{min-height:80px;resize:vertical;padding-left:42px!important;line-height:1.5}.input-with-icon select.form-input{padding-left:42px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.filter-select{max-width:200px;min-width:160px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-hero{background:linear-gradient(145deg,#0f172a,#1e3a5f,#1d4ed8);display:flex;align-items:center;justify-content:center;padding:48px;position:relative;overflow:hidden}.login-hero:before{content:"";position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(59,130,246,.2) 0%,transparent 70%);top:-100px;right:-100px;border-radius:50%}.login-hero:after{content:"";position:absolute;width:300px;height:300px;background:radial-gradient(circle,rgba(139,92,246,.15) 0%,transparent 70%);bottom:-50px;left:-50px;border-radius:50%}.login-hero-content{position:relative;z-index:1;max-width:440px}.login-hero-content h1{color:#fff;font-size:2rem;font-weight:800;letter-spacing:-.03em;margin:24px 0 16px;line-height:1.2}.login-hero-content>p{color:#94a3b8;font-size:1rem;line-height:1.7;margin-bottom:32px}.login-features{display:flex;flex-direction:column;gap:14px}.login-feature{display:flex;align-items:center;gap:12px;color:#cbd5e1;font-size:.9rem;font-weight:500}.feature-dot{width:8px;height:8px;border-radius:50%;background:var(--primary);flex-shrink:0}.feature-dot.present{background:var(--success)}.feature-dot.leave{background:var(--leave)}.login-panel{display:flex;align-items:center;justify-content:center;padding:48px;background:var(--bg-subtle)}.login-header{margin-bottom:32px}.login-header h2{font-size:1.65rem;font-weight:800;letter-spacing:-.03em;margin-bottom:6px}.login-header p{color:var(--text-muted);font-size:.9rem}.login-form .form-group{margin-bottom:20px}.login-footer{margin-top:28px}.demo-credentials{display:flex;flex-direction:column;gap:6px;padding:16px;background:var(--primary-light);border-radius:var(--radius);border:1px solid #bfdbfe}.demo-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--primary-dark)}.demo-credentials code{font-size:.82rem;color:var(--text-secondary);font-family:Inter,monospace}.alert{padding:14px 18px;border-radius:var(--radius);margin-bottom:20px;font-size:.875rem;font-weight:500;display:flex;align-items:center;gap:10px}.alert-warning{background:var(--warning-light);color:#b45309;border:1px solid #fde68a}.alert-warning svg{flex-shrink:0}.percentage-cell{display:inline-flex;align-items:center;gap:6px}.inline-warning-icon{display:inline-flex;color:var(--warning);vertical-align:middle}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px;gap:16px;color:var(--text-muted)}.spinner{width:44px;height:44px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:24px}.pagination button{padding:8px 18px;border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;font-family:inherit;font-weight:600;font-size:.85rem;color:var(--text-secondary);transition:all var(--transition)}.pagination button:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination span{font-size:.85rem;color:var(--text-muted);font-weight:500}.Toastify__toast{font-family:Inter,sans-serif!important;border-radius:var(--radius)!important;font-size:.85rem!important;font-weight:500!important}@media (max-width: 1024px){.login-page{grid-template-columns:1fr}.login-hero{padding:40px 32px;min-height:auto}.login-hero-content h1{font-size:1.5rem}.login-panel{padding:32px}}@media (max-width: 768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0);box-shadow:var(--shadow-xl)}.sidebar-close{display:flex}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;z-index:150;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.main-content{margin-left:0}.menu-btn{display:flex}.navbar{padding:0 16px}.page-content{padding:20px 16px}.navbar-user-text,.logout-text,.navbar-breadcrumb{display:none}.form-row{grid-template-columns:1fr}.filters-bar .form-input{max-width:100%;flex:1;min-width:100%}.flex-between{flex-direction:column;align-items:flex-start}.stats-grid{grid-template-columns:1fr 1fr;gap:12px}.stat-card{padding:16px;gap:12px}.stat-card h3{font-size:1.5rem}.stat-icon{width:42px;height:42px;font-size:1.2rem}.attendance-filters-grid{grid-template-columns:1fr}.attendance-summary-bar{flex-direction:column;align-items:flex-start}.submit-bar{flex-direction:column;align-items:stretch}.submit-bar .btn{width:100%;justify-content:center}.status-pill{padding:5px 10px;font-size:.7rem}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}}
