.pwa-install{margin:12px 0}.pwa-install>button{display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid #c6dcf5;background:#edf5ff;color:#164b89;border-radius:12px;padding:12px 16px;min-height:46px;width:100%;font:inherit;font-size:13px;font-weight:650;cursor:pointer}.pwa-install>button:disabled{opacity:.6}.pwa-install-help{position:relative;margin-top:9px;padding:16px 32px 14px 14px;border-radius:12px;background:#f3f8fe;color:#234468;font-size:13px;line-height:1.5;border:1px solid #cddff3}.pwa-install-help>button{position:absolute!important;right:0;top:0;display:grid!important;place-items:center;min-height:32px!important;width:32px;padding:4px!important;border:0;background:transparent;color:#294a72}.pwa-install-help p{margin:8px 0 0}.pwa-installed{display:flex;gap:6px;align-items:center;font-size:12px;color:#188060}.student-drawer .pwa-install>button,.staff-drawer .pwa-install>button{background:#e6f1ff;color:#164b89}.pwa-install button:focus-visible{outline:3px solid #2886ed;outline-offset:2px}:root{--brand-blue: #0d2c6c;--brand-blue-hover: #0a2356;--brand-blue-light: #3b82f6;--brand-red: #e11d48;--brand-red-hover: #be123c;--bg-main: #f8fafc;--bg-card: #ffffff;--bg-sidebar: #091124;--text-primary: #1e293b;--text-secondary: #64748b;--text-on-dark: #f8fafc;--border: #e2e8f0;--border-focus: #3b82f6;--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--radius-sm: 6px;--radius: 10px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 24px;--glass-bg: rgba(255, 255, 255, .75);--glass-border: rgba(255, 255, 255, .4);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .05)}*{box-sizing:border-box;margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}body{background-color:var(--bg-main);color:var(--text-primary);overflow-x:hidden;min-height:100vh;margin:0}.card,.glass{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--glass-shadow);transition:all .3s ease}.card-hover:hover{transform:translateY(-2px);box-shadow:0 12px 40px #1f26871a}.glass-panel{background:#fff9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.5);box-shadow:0 4px 30px #00000008}.glass-nav-item{position:relative;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-nav-item:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#ffffff1a,#fff0);opacity:0;transition:opacity .3s ease}.glass-nav-item:hover:before{opacity:1}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .3s ease-out forwards}button{cursor:pointer;transition:all .2s ease;font-weight:500;font-size:14px;border:none;background:transparent;outline:none;-webkit-appearance:none;appearance:none}.btn-primary{background:var(--brand-blue);color:#fff;border:none;padding:10px 18px;border-radius:var(--radius-sm)}.btn-primary:hover{background:var(--brand-blue-hover);box-shadow:0 2px 4px #0d2c6c33}.btn-danger{background:var(--brand-red);color:#fff;border:none;padding:10px 18px;border-radius:var(--radius-sm)}.btn-danger:hover{background:var(--brand-red-hover)}input,select,textarea{background:#fff;border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-sm);padding:10px 12px;font-size:14px;transition:all .2s ease;width:100%}input:focus,select:focus{outline:none;border-color:var(--brand-blue-light);box-shadow:0 0 0 3px #3b82f626}label{display:block;font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.table-container{overflow-x:auto;background:#fff;border-radius:var(--radius);border:1px solid var(--border)}table{width:100%;border-collapse:collapse}th{background:#f1f5f9;text-align:left;padding:12px 16px;font-size:12px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.025em;border-bottom:1px solid var(--border)}td{padding:14px 16px;font-size:14px;border-bottom:1px solid var(--border)}tr:hover td{background:#f8fafc}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.flex{display:flex}.flex-1{flex:1 1 0%}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.flex-shrink-0{flex-shrink:0}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.inline{display:inline}.block{display:block}.hidden{display:none}.relative{position:relative}.absolute{position:absolute}.sticky{position:sticky}.top-0{top:0}.left-0{left:0}.right-0{right:0}.bottom-0{bottom:0}.inset-0{inset:0}.z-50{z-index:50}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.w-full{width:100%}.w-auto{width:auto}.w-1{width:.25rem}.w-3{width:.75rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-9{width:2.25rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-20{width:5rem}.h-full{height:100%}.h-1{height:.25rem}.h-2\.5{height:.625rem}.h-3{height:.75rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-9{height:2.25rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-20{height:5rem}.h-fit{height:fit-content}.min-vh-100{min-height:100vh}.max-w-\[55\%\]{max-width:55%}.max-w-\[90px\]{max-width:90px}.max-w-\[100px\]{max-width:100px}.max-w-\[150px\]{max-width:150px}.max-w-\[400px\]{max-width:400px}.max-w-\[440px\]{max-width:440px}.max-w-\[500px\]{max-width:500px}.max-w-\[750px\]{max-width:750px}.max-w-\[1000px\]{max-width:1000px}.max-w-\[1400px\]{max-width:1400px}.max-h-\[250px\]{max-height:250px}.max-h-\[300px\]{max-height:300px}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-6{column-gap:1.5rem}.gap-y-4{row-gap:1rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-12{padding:3rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.pl-6{padding-left:1.5rem}.pl-8{padding-left:2rem}.pt-2{padding-top:.5rem}.pt-8{padding-top:2rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.m-0{margin:0}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-10{margin-bottom:2.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-8{margin-top:2rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.-mt-0\.5{margin-top:-.125rem}.-translate-y-1\/2{transform:translateY(-50%)}.mx-auto{margin-left:auto;margin-right:auto}.space-y-0>*+*{margin-top:0}.space-y-2>*+*{margin-top:.5rem}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.space-y-8>*+*{margin-top:2rem}.divide-y>*+*{border-top:1px solid #f1f5f9}.divide-slate-50>*+*{border-top-color:#f8fafc}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.font-medium{font-weight:500}.font-bold{font-weight:700}.font-black{font-weight:900}.italic{font-style:italic}.uppercase{text-transform:uppercase}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.tracking-tighter{letter-spacing:-.05em}.tracking-tight{letter-spacing:-.025em}.leading-tight{line-height:1.25}.leading-relaxed{line-height:1.625}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.text-white{color:#fff}.text-brand-blue{color:var(--brand-blue)}.text-brand-red{color:var(--brand-red)}.text-slate-200{color:#e2e8f0}.text-slate-300{color:#cbd5e1}.text-slate-400{color:#94a3b8}.text-slate-500{color:#64748b}.text-slate-600{color:#475569}.text-slate-700{color:#334155}.text-slate-800{color:#1e293b}.text-emerald-100{color:#d1fae5}.text-emerald-500{color:#10b981}.text-emerald-600{color:#059669}.text-emerald-700{color:#047857}.text-rose-100{color:#ffe4e6}.text-rose-200{color:#fecdd3}.text-rose-500{color:#f43f5e}.text-amber-600{color:#d97706}.text-amber-800{color:#92400e}.text-blue-200{color:#bfdbfe}.text-white\/90{color:#ffffffe6}.text-brand-red\/60{color:#e11d4899}.text-emerald-500\/70{color:#10b981b3}.text-emerald-600\/60{color:#05966999}.bg-white{background-color:#fff}.bg-transparent{background-color:transparent}.bg-brand-blue{background-color:var(--brand-blue)}.bg-brand-red{background-color:var(--brand-red)}.bg-slate-50{background-color:#f8fafc}.bg-slate-100{background-color:#f1f5f9}.bg-slate-200{background-color:#e2e8f0}.bg-blue-50{background-color:#eff6ff}.bg-emerald-50{background-color:#ecfdf5}.bg-emerald-100{background-color:#d1fae5}.bg-emerald-600{background-color:#059669}.bg-rose-50{background-color:#fff1f3}.bg-rose-100{background-color:#ffe4e6}.bg-rose-600{background-color:#e11d48}.bg-amber-50{background-color:#fffbeb}.bg-white\/15{background-color:#ffffff26}.bg-white\/20{background-color:#fff3}.bg-white\/25{background-color:#ffffff40}.bg-brand-blue\/10{background-color:#0d2c6c1a}.bg-blue-50\/50{background-color:#eff6ff80}.bg-emerald-400\/20{background-color:#34d39933}.bg-rose-400\/20{background-color:#fb718533}.bg-rose-500\/30{background-color:#f43f5e4d}.border{border:1px solid var(--border)}.border-b{border-bottom:1px solid var(--border)}.border-t{border-top:1px solid var(--border)}.border-l-2{border-left:2px solid var(--border)}.border-l-4{border-left:4px solid var(--brand-red)}.border-dashed{border-style:dashed}.border-brand-blue{border-color:var(--brand-blue)}.border-brand-red{border-color:var(--brand-red)}.border-slate-50{border-color:#f8fafc}.border-slate-100{border-color:#f1f5f9}.border-slate-200{border-color:#e2e8f0}.border-slate-300{border-color:#cbd5e1}.border-blue-100{border-color:#dbeafe}.border-emerald-100{border-color:#d1fae5}.border-emerald-200{border-color:#a7f3d0}.border-rose-100{border-color:#ffe4e6}.border-rose-200{border-color:#fecdd3}.border-amber-200{border-color:#fde68a}.border-white\/10{border-color:#ffffff1a}.border-white\/20{border-color:#fff3}.border-rose-400\/30{border-color:#fb71854d}.last\:border-0:last-child{border-bottom:0}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.shadow-sm{box-shadow:0 1px 2px #0000000d}.shadow-md{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.shadow-xl{box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.shadow-2xl{box-shadow:0 25px 50px -12px #00000040}.shadow-inner{box-shadow:inset 0 2px 4px #0000000d}.shadow-blue-500\/20{--tw-shadow-color: rgba(59,130,246,.2);box-shadow:0 10px 15px -3px #3b82f633}.shadow-emerald-500\/20{--tw-shadow-color: rgba(16,185,129,.2);box-shadow:0 10px 15px -3px #10b98133}.shadow-blue-500\/30{--tw-shadow-color: rgba(59,130,246,.3);box-shadow:0 4px 6px -1px #3b82f64d}.backdrop-blur-sm{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.opacity-0{opacity:0}.transition-all{transition:all .2s ease}.transition-colors{transition:color .15s ease,background-color .15s ease,border-color .15s ease}.duration-1000{transition-duration:1s}.hover\:bg-brand-blue:hover{background-color:var(--brand-blue)}.hover\:bg-blue-50:hover{background-color:#eff6ff}.hover\:bg-emerald-50:hover{background-color:#ecfdf5}.hover\:bg-rose-50:hover{background-color:#fff1f3}.hover\:bg-slate-50:hover{background-color:#f8fafc}.hover\:bg-slate-100\/50:hover{background-color:#f1f5f980}.hover\:bg-white\/25:hover{background-color:#ffffff40}.hover\:bg-rose-200:hover{background-color:#fecdd3}.hover\:bg-rose-500\/50:hover{background-color:#f43f5e80}.hover\:bg-rose-700:hover{background-color:#be123c}.hover\:bg-emerald-700:hover{background-color:#047857}.hover\:bg-emerald-600:hover{background-color:#059669}.hover\:text-brand-blue:hover{color:var(--brand-blue)}.hover\:text-brand-red:hover{color:var(--brand-red)}.hover\:text-emerald-500:hover{color:#10b981}.hover\:text-emerald-600:hover{color:#059669}.hover\:text-rose-700:hover{color:#be123c}.hover\:text-slate-600:hover{color:#475569}.hover\:border-brand-blue:hover{border-color:var(--brand-blue)}.hover\:border-slate-200:hover{border-color:#e2e8f0}.hover\:shadow-md:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.active\:scale-\[0\.98\]:active{transform:scale(.98)}.group:hover .group-hover\:text-brand-blue{color:var(--brand-blue)}.group:hover .group-hover\:bg-blue-50{background-color:#eff6ff}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-brand-blue{--tw-gradient-from: var(--brand-blue);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, transparent)}.to-blue-400{--tw-gradient-to: #60a5fa}.accent-brand-blue{accent-color:var(--brand-blue)}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.form-group-saas{display:flex;flex-direction:column}.btn-secondary{background:#f1f5f9;color:var(--brand-blue);border:1px solid #e2e8f0;padding:10px 18px;border-radius:var(--radius-sm);font-weight:700}.btn-secondary:hover{background:#e2e8f0}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.h-\[52px\]{height:52px}.h-\[64px\]{height:64px}@media(min-width:768px){.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:items-end{align-items:flex-end}.md\:flex-initial{flex:0 1 auto}.md\:w-auto{width:auto}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:col-span-2{grid-column:span 2 / span 2}.md\:p-6{padding:1.5rem}.md\:p-8{padding:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:w-10{width:2.5rem}.md\:h-10{height:2.5rem}.md\:w-20{width:5rem}.md\:h-20{height:5rem}.md\:text-3xl{font-size:1.875rem}.md\:gap-4{gap:1rem}.md\:p-4{padding:1rem}.md\:hidden{display:none!important}.md\:flex{display:flex!important}.md\:h-screen{height:100vh!important}.md\:overflow-hidden{overflow:hidden!important}.md\:overflow-y-auto{overflow-y:auto!important}.md\:flex-1{flex:1 1 0%!important}.md\:w-64{width:16rem!important}.md\:pb-0{padding-bottom:0!important}.md\:grid{display:grid!important}}@media(min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-2{grid-column:span 2 / span 2}}@keyframes mobileSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes mobilePulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@keyframes mobileShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.mobile-mode{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden;position:fixed;inset:0;background:#f0f2f7}.mobile-mode .sidebar,.mobile-mode .top-header,.mobile-mode .mobile-overlay{display:none!important}.mobile-mode .content{flex:1;display:flex;flex-direction:column;padding-bottom:80px}.mobile-mode .view-container{padding:0;max-width:100%}.mobile-app-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;position:sticky;top:0;z-index:200;box-shadow:0 1px 3px #0000000f}.mobile-app-header .mah-logo{display:flex;align-items:center;gap:10px}.mobile-app-header .mah-logo img{height:36px;width:auto;object-fit:contain}.mobile-app-header .mah-actions{display:flex;align-items:center;gap:12px}.mobile-app-header .mah-bell{position:relative;width:40px;height:40px;border-radius:50%;background:#f0f2f7;border:none;display:flex;align-items:center;justify-content:center;color:#475569;transition:all .2s}.mobile-app-header .mah-bell:active{transform:scale(.92);background:#e2e8f0}.mobile-app-header .mah-bell-badge{position:absolute;top:6px;right:6px;width:18px;height:18px;background:#e11d48;color:#fff;border-radius:50%;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid white;animation:mobilePulse 2s ease-in-out infinite}.mobile-app-header .mah-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#0d2c6c,#3b82f6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;letter-spacing:-.02em;border:2px solid #e2e8f0;box-shadow:0 2px 8px #0d2c6c33}.mobile-hero-banner{margin:12px 16px 0;padding:24px 20px;background:linear-gradient(135deg,#0d2c6c,#1a3f8a 60%,#2553a8);border-radius:18px;color:#fff;position:relative;overflow:hidden;box-shadow:0 8px 24px #0d2c6c40}.mobile-hero-banner:after{content:"";position:absolute;right:-20px;bottom:-20px;width:140px;height:140px;background:#ffffff0f;border-radius:50%}.mobile-hero-banner:before{content:"";position:absolute;right:40px;top:-30px;width:90px;height:90px;background:#ffffff0a;border-radius:50%}.mobile-hero-banner .mhb-welcome{font-size:13px;font-weight:600;opacity:.85;margin-bottom:4px;letter-spacing:.01em}.mobile-hero-banner .mhb-title{font-size:24px;font-weight:900;line-height:1.2;margin-bottom:6px;letter-spacing:-.02em}.mobile-hero-banner .mhb-subtitle{font-size:13px;opacity:.7;line-height:1.4;max-width:70%}.mobile-hero-banner .mhb-chart-icon{position:absolute;right:16px;bottom:16px;opacity:.15}.mobile-actions-grid{padding:20px 16px 8px}.mobile-actions-grid .mag-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.mobile-actions-grid .mag-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:20px 8px 16px;background:#fff;border-radius:16px;border:1px solid #e8ecf2;box-shadow:0 1px 4px #0000000a;cursor:pointer;transition:all .2s ease;animation:mobileSlideUp .4s ease-out backwards;-webkit-tap-highlight-color:transparent}.mobile-actions-grid .mag-card:nth-child(1){animation-delay:.02s}.mobile-actions-grid .mag-card:nth-child(2){animation-delay:.04s}.mobile-actions-grid .mag-card:nth-child(3){animation-delay:.06s}.mobile-actions-grid .mag-card:nth-child(4){animation-delay:.08s}.mobile-actions-grid .mag-card:nth-child(5){animation-delay:.1s}.mobile-actions-grid .mag-card:nth-child(6){animation-delay:.12s}.mobile-actions-grid .mag-card:nth-child(7){animation-delay:.14s}.mobile-actions-grid .mag-card:nth-child(8){animation-delay:.16s}.mobile-actions-grid .mag-card:nth-child(9){animation-delay:.18s}.mobile-actions-grid .mag-card:active{transform:scale(.95);background:#f8fafc}.mobile-actions-grid .mag-card-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mobile-actions-grid .mag-card-label{font-size:12px;font-weight:700;color:#334155;text-align:center;line-height:1.2;letter-spacing:-.01em}.mag-card-icon.red{background:#fef2f2;color:#dc2626}.mag-card-icon.blue{background:#eff6ff;color:#2563eb}.mag-card-icon.green{background:#ecfdf5;color:#059669}.mag-card-icon.teal{background:#f0fdfa;color:#0d9488}.mag-card-icon.indigo{background:#eef2ff;color:#4f46e5}.mag-card-icon.orange{background:#fff7ed;color:#ea580c}.mag-card-icon.purple{background:#faf5ff;color:#9333ea}.mag-card-icon.amber{background:#fffbeb;color:#d97706}.mag-card-icon.rose{background:#fff1f2;color:#e11d48}.mobile-promo-banner{margin:12px 16px 16px;padding:20px;background:linear-gradient(135deg,#e11d48,#be123c);border-radius:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;overflow:hidden;position:relative;box-shadow:0 4px 16px #e11d4833}.mobile-promo-banner:after{content:"";position:absolute;right:-30px;top:-30px;width:100px;height:100px;background:#ffffff14;border-radius:50%}.mobile-promo-banner .mpb-text{color:#fff;position:relative;z-index:1}.mobile-promo-banner .mpb-text-top{font-size:13px;font-weight:600;opacity:.9;margin-bottom:2px;text-transform:uppercase;letter-spacing:.04em}.mobile-promo-banner .mpb-text-bottom{font-size:18px;font-weight:900;letter-spacing:-.01em;text-transform:uppercase}.mobile-promo-banner .mpb-icon{position:relative;z-index:1;opacity:.6}.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;height:64px;background:#fff;border-top:1px solid #f1f5f9;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-around!important;z-index:300;padding:0 8px env(safe-area-inset-bottom,0px) 8px!important;box-shadow:0 -4px 20px #00000008;flex:none!important}.mobile-bottom-nav .mbn-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:transparent;border:none;color:#64748b;transition:all .2s ease;-webkit-tap-highlight-color:transparent;padding:6px 4px 4px;height:100%;position:relative}.mobile-bottom-nav .mbn-item.active{color:#004bbb}.mobile-bottom-nav .mbn-item.active:after{content:"";position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:24px;height:3px;background-color:#dc2626;border-radius:9999px}.mobile-bottom-nav .mbn-item span{font-size:10.5px;font-weight:700;letter-spacing:-.01em;white-space:nowrap;display:block}.mobile-bottom-nav .mbn-item.active span{color:#004bbb;font-weight:800}.mobile-bottom-nav .mbn-item:active{transform:scale(.92)}.mobile-bottom-nav .mbn-icon-wrap{position:relative;display:flex;align-items:center;justify-content:center}.mobile-bottom-nav .mbn-item.active .mbn-icon-wrap{transform:scale(1.05)}.mobile-bottom-nav .mbn-badge{position:absolute;top:-6px;right:-8px;width:16px;height:16px;background:#e11d48;color:#fff;border-radius:50%;font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid white}.mobile-mode .top-header{display:none!important}.mobile-mode .mobile-scroll-area{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.mobile-mode .mobile-inner-view{padding:16px}.mobile-section-header{display:flex;align-items:center;gap:8px;padding:0 16px 12px;margin-top:8px}.mobile-section-header span{font-size:15px;font-weight:800;color:#1e293b;letter-spacing:-.01em}.mobile-config-view{padding:20px 16px}.mobile-config-view .mcv-card{background:#fff;border-radius:16px;border:1px solid #e8ecf2;overflow:hidden;box-shadow:0 1px 4px #0000000a}.mobile-config-view .mcv-item{display:flex;align-items:center;gap:14px;padding:16px 20px;border-bottom:1px solid #f1f5f9;background:transparent;border-left:none;border-right:none;border-top:none;width:100%;text-align:left;cursor:pointer;transition:background .15s;color:#334155;font-size:15px;font-weight:600}.mobile-config-view .mcv-item:last-child{border-bottom:none}.mobile-config-view .mcv-item:active{background:#f8fafc}.mobile-config-view .mcv-item.danger{color:#e11d48}.mobile-config-view .mcv-icon{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mobile-config-view .mcv-icon.blue{background:#eff6ff;color:#2563eb}.mobile-config-view .mcv-icon.red{background:#fef2f2;color:#e11d48}.mobile-config-view .mcv-icon.green{background:#ecfdf5;color:#059669}.mobile-config-view .mcv-icon.purple{background:#faf5ff;color:#9333ea}@media(max-width:767px){.mobile-kpi-scroller{display:flex!important;flex-direction:row!important;overflow-x:auto!important;gap:12px!important;padding:4px 16px 16px!important;margin:0 -16px!important;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.mobile-kpi-scroller::-webkit-scrollbar{display:none}.mobile-kpi-scroller>*{flex:0 0 260px!important;scroll-snap-align:center;box-shadow:0 4px 12px #0000000a!important;border-radius:16px!important;margin-bottom:0!important}}.scrolling-filter-bar{display:flex;align-items:center;gap:12px;overflow-x:auto;padding:8px 16px 16px;margin:0 -16px 12px;-webkit-overflow-scrolling:touch}.scrolling-filter-bar::-webkit-scrollbar{display:none}.filter-pill-item{display:flex;flex-direction:column;align-items:center;gap:6px;background:transparent;border:none;cursor:pointer;flex-shrink:0;transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-tap-highlight-color:transparent}.filter-avatar-circle{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;color:#fff;border:2px solid #e2e8f0;background:linear-gradient(135deg,#cbd5e1,#94a3b8);box-shadow:0 2px 6px #0000000d;transition:all .25s ease}.filter-pill-label{font-size:11px;font-weight:700;color:#64748b;max-width:65px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize}.filter-pill-item.active .filter-avatar-circle{border-color:#0d2c6c;background:linear-gradient(135deg,#0d2c6c,#3b82f6)!important;transform:scale(1.08);box-shadow:0 4px 12px #0d2c6c4d}.filter-pill-item.active .filter-pill-label{color:#0d2c6c;font-weight:800}.filter-pill-item:active{transform:scale(.92)}.bottom-sheet-overlay{position:fixed;inset:0;background:#0f172a66;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:999;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.bottom-sheet-overlay.open{opacity:1;visibility:visible}.bottom-sheet-content{position:fixed;left:0;right:0;bottom:0;background:#fff;border-radius:24px 24px 0 0;z-index:1000;max-height:85vh;box-shadow:0 -10px 30px #0f172a26;display:flex;flex-direction:column;transform:translateY(100%);transition:transform .3s cubic-bezier(.32,.94,.6,1)}.bottom-sheet-overlay.open+.bottom-sheet-content,.bottom-sheet-content.open{transform:translateY(0)}.bottom-sheet-handle{width:40px;height:5px;background:#cbd5e1;border-radius:99px;margin:12px auto 8px;flex-shrink:0}.bottom-sheet-header{padding:8px 20px 16px;border-bottom:1px solid #f1f5f9;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.bottom-sheet-header h3{font-size:18px;font-weight:850;color:#1e293b;margin:0}.bottom-sheet-close-btn{background:#f1f5f9;border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#64748b;cursor:pointer;transition:background .2s}.bottom-sheet-close-btn:active{background:#e2e8f0}.bottom-sheet-body{flex:1;overflow-y:auto;padding:20px;-webkit-overflow-scrolling:touch}@media(max-width:767px){.mobile-chart-container{height:220px!important;margin-top:8px}.recharts-legend-wrapper{bottom:-10px!important;font-size:10px!important}}.btn-primary:active,.btn-secondary:active,.mag-card:active{transform:scale(.96)!important}.card:hover{transform:translateY(-2px);box-shadow:0 10px 20px #00000008}@media(max-width:767px){.card:hover{transform:none}}.app-container{display:flex;min-height:100vh;background:var(--bg-main)}.sidebar{width:260px;height:100vh;background:var(--bg-sidebar);color:var(--text-on-dark);display:flex;flex-direction:column;position:sticky;top:0;z-index:100;padding:0;border-radius:0;box-shadow:4px 0 24px #0000000f;border-right:1px solid rgba(255,255,255,.05)}.brand{padding:30px 24px;display:flex;align-items:center;gap:12px;font-weight:800;font-size:18px;color:#fff}.logo-placeholder{display:none}nav{flex:1;padding:0 12px;display:flex;flex-direction:column;gap:4px;overflow-y:auto}.nav-separator{padding:20px 12px 10px;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#fff6;font-weight:700}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 16px;margin:4px 16px;border-radius:12px;color:#ffffffa6;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);background:transparent;border:1px solid transparent;width:calc(100% - 32px);text-align:left;font-weight:600}.nav-item:hover{background:#ffffff0f;color:#fff;transform:translate(4px)}.nav-item.active{background:linear-gradient(135deg,#3b82f633,#2563eb1a)!important;border:1px solid rgba(59,130,246,.3);box-shadow:inset 0 0 12px #3b82f61a;color:#60a5fa!important;font-weight:800}.nav-item.active svg{color:#60a5fa!important;filter:drop-shadow(0 0 8px rgba(96,165,250,.6))}.sidebar-footer{padding:20px 12px;border-top:1px solid rgba(255,255,255,.05)}.nav-item.logout:hover{background:#ef44441a;color:var(--danger)}.content{flex:1;display:flex;flex-direction:column;min-width:0}.top-header{height:80px;background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--glass-border);display:flex;align-items:center;justify-content:space-between;padding:0 40px;position:sticky;top:0;z-index:90;box-shadow:0 4px 30px #00000005}.header-left .breadcrumb{font-size:12px;color:var(--text-secondary);display:block;margin-bottom:2px;text-transform:capitalize}.header-left h1{font-size:20px;font-weight:700;color:var(--text-primary);margin:0}.header-right{display:flex;align-items:center;gap:24px}.user-info{display:flex;align-items:center;gap:12px}.user-details{display:flex;flex-direction:column;align-items:flex-end}.username{font-size:14px;font-weight:600;color:var(--text-primary)}.user-role{font-size:12px;color:var(--text-secondary)}.avatar{width:38px;height:38px;background:#f1f5f9;color:var(--brand-blue);border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;border:1px solid var(--border)}.notification-container{position:relative}.notification-bell{position:relative;background:#fff;padding:10px;border-radius:10px;border:1px solid var(--border);color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.notification-bell:hover{background:#f1f5f9;color:#0f172a}.bell-badge{position:absolute;top:-4px;right:-4px;background:#ef4444;color:#fff;font-size:9px;font-weight:800;padding:1.5px 5px;border-radius:10px;border:2px solid white}.notification-popover{position:absolute;top:calc(100% + 8px);right:0;width:320px;background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;z-index:100;overflow:hidden;display:flex;flex-direction:column}.notification-header{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.notification-header h4{margin:0;font-size:13px;font-weight:800;color:var(--text-primary)}.notification-clear-btn{font-size:11px;color:var(--brand-blue);background:none;border:none;cursor:pointer;font-weight:700}.notification-clear-btn:hover{text-decoration:underline}.notification-list{max-height:280px;overflow-y:auto}.notification-item{padding:12px 16px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:4px;transition:background .2s;cursor:pointer;text-align:left}.notification-item:hover{background:#f8fafc}.notification-item.unread{background:#f0f7ff}.notification-item.unread:hover{background:#e0f0ff}.notification-item-title{font-size:12px;font-weight:700;color:var(--text-primary)}.notification-item-msg{font-size:11px;color:var(--text-secondary);line-height:1.4}.notification-item-time{font-size:9px;color:#94a3b8;font-weight:600}.notification-empty{padding:24px;text-align:center;color:#94a3b8;font-size:11px;font-weight:600}.view-container{padding:32px 40px;max-width:1400px;margin:0 auto;width:100%}@media(max-width:1024px){.sidebar{position:fixed;left:-250px;transition:left .3s}.sidebar.open{left:0}.top-header{padding:0 20px}.view-container{padding:20px}}.mobile-admin-dashboard{padding:12px 16px 0}.mobile-admin-welcome-section{margin-bottom:20px;text-align:left}.maws-welcome{font-size:14px;color:#64748b;font-weight:600;margin-bottom:2px}.maws-title{font-size:26px;font-weight:900;color:#0d2c6c;margin:0;line-height:1.15}.maws-subtitle{font-size:13px;color:#64748b;margin-top:4px;font-weight:500}.mobile-resumen-card{background:linear-gradient(135deg,#0d2c6c,#1e40af);border-radius:18px;padding:24px 20px;color:#fff;box-shadow:0 8px 24px #0d2c6c40;margin-bottom:20px}.mrc-header{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:600;opacity:.85;margin-bottom:16px}.mrc-main-val{text-align:left;margin-bottom:20px}.mrc-main-label{font-size:13px;opacity:.75;display:block;margin-bottom:4px}.mrc-main-amount{font-size:32px;font-weight:900;margin:0;line-height:1}.mrc-main-trend{display:inline-flex;align-items:center;background:#ffffff26;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:700;margin-top:8px}.trend-icon-green{color:#10b981;margin-right:4px;font-weight:800}.mrc-divider{height:1px;background:#ffffff26;margin:0 0 16px}.mrc-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}.mrc-col{text-align:left}.mrc-col-name{font-size:13px;opacity:.75;display:block;margin-bottom:4px}.mrc-col-val{font-size:20px;font-weight:800;display:block;line-height:1}.mrc-col-trend{font-size:11px;font-weight:700;opacity:.9;display:block;margin-top:4px}.mobile-action-pills{display:flex;gap:12px;margin-bottom:20px}.pill-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;padding:12px;font-weight:700;color:#0d2c6c;font-size:14px;box-shadow:0 2px 4px #00000008;transition:all .2s}.pill-btn.active{border-color:#0d2c6c;background:#f1f5f9}.pill-icon{font-size:16px}.mobile-detalles-view{padding:16px;background:#f8fafc;min-height:100%}.mdv-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.mdv-back-btn{background:#fff;border:1px solid #e2e8f0;border-radius:10px;width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:#0d2c6c;box-shadow:0 1px 3px #0000000d}.mdv-title{font-size:20px;font-weight:800;color:#0d2c6c;margin:0}.mdv-resumen-card{background:#0d2c6c;border-radius:16px;padding:20px;color:#fff;box-shadow:0 4px 12px #0d2c6c26;margin-bottom:24px}.mrc-date-title{font-size:14px;font-weight:700;margin-bottom:12px;text-align:left;opacity:.9}.mdv-resumen-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:8px}.mdv-resumen-item{text-align:left}.mdv-resumen-item.border-l{border-left:1px solid rgba(255,255,255,.2);padding-left:12px}.mri-label{font-size:11px;opacity:.75;display:block;margin-bottom:2px;white-space:nowrap}.mri-value{font-size:15px;font-weight:800;display:block}.mdv-seller-section{background:#fff;border-radius:16px;padding:16px;border:1px solid #e2e8f0;box-shadow:0 2px 6px #0000000a;margin-bottom:20px}.mdv-seller-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.mdv-seller-info-left{display:flex;align-items:center;gap:10px}.mdv-seller-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:14px}.mdv-seller-name-title{font-size:16px;font-weight:800;color:#1e293b}.mdv-seller-total-amount{font-size:16px;font-weight:800;color:#0d2c6c}.mdv-records-table-container{overflow-x:auto;margin-bottom:14px}.mdv-records-table{width:100%;border-collapse:collapse}.mdv-records-table th{background:transparent;color:#64748b;font-size:11px;font-weight:700;text-transform:capitalize;padding:6px 8px;border-bottom:1.5px solid #f1f5f9}.mdv-records-table td{padding:8px;font-size:12px;font-weight:600;color:#475569;border-bottom:1px solid #f8fafc;text-align:left}.mdv-records-table td.concept-td{color:#1e293b}.mdv-records-table td.amount-td{text-align:right;color:#0d2c6c;font-weight:700}.whatsapp-consult-btn{width:100%;background:#25d366;color:#fff;border:none;border-radius:10px;padding:10px;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;gap:6px;box-shadow:0 2px 4px #25d36633}.whatsapp-consult-btn:active{transform:scale(.98);background:#20ba5a}.wa-icon{font-size:15px}.mobile-horizontal-actions{display:flex;overflow-x:auto;gap:10px;padding:8px 16px 16px;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.mobile-horizontal-actions::-webkit-scrollbar{display:none}.mobile-horizontal-actions .mha-item{flex-shrink:0;display:flex;align-items:center;gap:10px;padding:14px 22px;background:#fff;border-radius:24px;border:1px solid #e8ecf2;box-shadow:0 2px 6px #0000000a;font-size:15px;font-weight:700;color:#334155;transition:all .2s ease;cursor:pointer;-webkit-tap-highlight-color:transparent}.mobile-horizontal-actions .mha-item:active{transform:scale(.95);background:#f8fafc}.mobile-horizontal-actions .mha-item.red svg{color:#e11d48}.mobile-horizontal-actions .mha-item.blue svg{color:#2563eb}.mobile-horizontal-actions .mha-item.green svg{color:#16a34a}.mobile-horizontal-actions .mha-item.purple svg{color:#7c3aed}.mobile-horizontal-actions .mha-item.teal svg{color:#0d9488}.mobile-horizontal-actions .mha-item.orange svg{color:#ea580c}.seller-metrics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:8px 16px 20px}.seller-metrics-grid .smg-card{background:#fff;border-radius:16px;border:1px solid #e8ecf2;padding:16px;box-shadow:0 2px 8px #00000005;display:flex;flex-direction:column;justify-content:space-between;min-height:106px}.seller-metrics-grid .smg-label{font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.02em}.seller-metrics-grid .smg-val{font-size:18px;font-weight:900;color:#0f172a;margin:6px 0 2px;letter-spacing:-.02em}.seller-metrics-grid .smg-sub{font-size:11px;font-weight:600}.seller-metrics-grid .metric-blue{border-left:4px solid #3b82f6}.seller-metrics-grid .metric-green{border-left:4px solid #10b981}.seller-metrics-grid .metric-purple{border-left:4px solid #8b5cf6}.seller-metrics-grid .metric-orange{border-left:4px solid #f97316}.seller-metrics-grid .text-blue{color:#2563eb}.seller-metrics-grid .text-green{color:#059669}.seller-metrics-grid .text-purple{color:#7c3aed}.seller-metrics-grid .text-orange{color:#ea580c}.seller-metrics-grid .smg-progress-bar{width:100%;height:6px;background:#f1f5f9;border-radius:3px;overflow:hidden;margin-top:4px}.seller-metrics-grid .smg-progress-fill{height:100%;background:linear-gradient(90deg,#f97316,#ea580c);border-radius:3px;transition:width .5s ease-out}.mobile-dashboard-filters{background:#fff;border-bottom:1px solid #e8ecf2;padding:12px 16px;display:flex;flex-direction:column;gap:10px}.mobile-dashboard-filters .mdf-row{display:flex;flex-direction:column;gap:6px}.mobile-dashboard-filters .mdf-title{font-size:11px;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.mobile-dashboard-filters .mdf-pills-scroll{display:flex;align-items:center;gap:8px;overflow-x:auto;padding-bottom:4px}.mobile-dashboard-filters .mdf-pills-scroll::-webkit-scrollbar{display:none}.mobile-dashboard-filters .mdf-pill{flex-shrink:0;padding:6px 14px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:14px;font-size:12px;font-weight:700;color:#475569;transition:all .2s ease;cursor:pointer;-webkit-tap-highlight-color:transparent}.mobile-dashboard-filters .mdf-pill.active{background:#0d2c6c;border-color:#0d2c6c;color:#fff;box-shadow:0 2px 6px #0d2c6c33}.mobile-dashboard-filters .mdf-pill:active{transform:scale(.95)}.mobile-dashboard-filters .mdf-date-picker-wrap{flex-shrink:0;display:flex;align-items:center;gap:6px;background:#f1f5f9;border:1px solid #e2e8f0;padding:4px 10px;border-radius:14px;transition:all .2s ease}.mobile-dashboard-filters .mdf-date-picker-wrap.active{background:#0d2c6c0f;border-color:#0d2c6c;color:#0d2c6c}.mobile-dashboard-filters .mdf-date-picker-wrap input[type=date]{background:transparent;border:none;font-size:11px;font-weight:700;color:#334155;outline:none;padding:0;font-family:inherit}.mobile-dashboard-filters .mdf-date-picker-wrap.active input[type=date]{color:#0d2c6c}.mobile-dashboard-filters .mdf-date-picker-wrap .clear-btn{background:transparent;border:none;padding:0 2px;color:#ef4444;font-weight:800;font-size:10px;cursor:pointer}.no-scrollbar::-webkit-scrollbar{display:none}.mobile-bottom-nav .mbn-icon-wrap svg{transition:transform .2s ease,color .2s ease}.mobile-bottom-nav .mbn-item.active .mbn-icon-wrap svg{transform:scale(1.1);color:#004bbb}.mobile-bottom-nav-mockup{position:fixed;bottom:0;left:0;right:0;height:68px;background:#fff;border-top:1px solid #f1f5f9;display:flex!important;flex-direction:row!important;justify-content:space-around!important;align-items:center!important;padding:0 10px!important;z-index:1000;box-shadow:0 -3px 12px #00000008;flex:none!important;overflow:hidden!important}.mbn-item-mockup{background:transparent;border:none;display:flex;flex-direction:column;align-items:center;gap:4px;color:#94a3b8;font-size:10px;font-weight:800;cursor:pointer;flex:1;min-width:0;max-width:80px;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.mbn-item-mockup.active{color:#2563eb}.mbn-item-mockup svg{transition:transform .25s cubic-bezier(.175,.885,.32,1.275),color .25s ease}.mbn-item-mockup.active svg{transform:scale(1.15) rotate(-3deg);color:#2563eb}.mbn-center-action-wrapper{position:relative;display:flex;flex-direction:column;align-items:center;margin-top:-32px;z-index:1010}.mbn-fab-btn{width:54px;height:54px;border-radius:50%;background:#2563eb;border:4px solid #ffffff;display:flex;align-items:center;justify-content:center;box-shadow:0 5px 12px #2563eb66;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.mbn-fab-btn:active{transform:scale(.9);box-shadow:0 2px 6px #2563eb66}.mbn-fab-label{font-size:10px;font-weight:800;color:#94a3b8;margin-top:5px}.mobile-scroll-area{padding-bottom:84px!important}.mobile-menu-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding:8px 16px 24px}.menu-grid-card{background:#fff;border-radius:20px;border:1px solid #f1f5f9;box-shadow:0 4px 12px #0f172a04;padding:24px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer;-webkit-tap-highlight-color:transparent}.menu-grid-card:active{transform:scale(.96);background:#f8fafc;box-shadow:0 2px 4px #0f172a03}.menu-grid-card .mgc-icon-wrap{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.menu-grid-card:active .mgc-icon-wrap{transform:scale(.92)}.menu-grid-card .mgc-label{font-size:11px;font-weight:800;color:#0f172a;text-transform:uppercase;letter-spacing:.06em;text-align:center;margin-top:2px}.menu-grid-card .mgc-icon-wrap.blue{background:#eff6ff;color:#2563eb}.menu-grid-card .mgc-icon-wrap.green{background:#ecfdf5;color:#10b981}.menu-grid-card .mgc-icon-wrap.purple{background:#faf5ff;color:#8b5cf6}.menu-grid-card .mgc-icon-wrap.teal{background:#f0fdfa;color:#0d9488}.menu-grid-card .mgc-icon-wrap.orange{background:#fff7ed;color:#f97316}.menu-grid-card .mgc-icon-wrap.red{background:#fff1f2;color:#f43f5e}.menu-grid-card.full-width{grid-column:span 2;flex-direction:row;justify-content:center;gap:16px;padding:18px 24px}.menu-grid-card.dashed{border:2px dashed #cbd5e1;background:#f8fafc;box-shadow:none}.menu-grid-card.dashed:active{background:#f1f5f9}.bg-indigo-50{background-color:#f5f3ff}.bg-indigo-100{background-color:#e0e7ff}.bg-indigo-50\/50{background-color:#f5f3ff80}.bg-indigo-100\/60{background-color:#e0e7ff99}.text-indigo-500{color:#6366f1}.text-indigo-600{color:#4f46e5}.text-indigo-700{color:#4338ca}.text-indigo-800{color:#3730a3}.border-indigo-100{border-color:#e0e7ff}.border-indigo-100\/60{border-color:#e0e7ff99}.border-indigo-150{border-color:#d8b4fe}.hover\:bg-indigo-100:hover{background-color:#e0e7ff}.hover\:bg-indigo-50:hover{background-color:#f5f3ff}.max-w-\[800px\]{max-width:800px}.min-h-\[400px\]{min-height:400px}.w-8{width:2rem}.h-8{height:2rem}.divide-y>*+*{border-top-width:1px}.divide-slate-100>*+*{border-color:#f1f5f9}@media(min-width:768px){.md-flex-row,.md\:flex-row{flex-direction:row!important}.md-items-center,.md\:items-center{align-items:center!important}.md-items-end,.md\:items-end{align-items:flex-end!important}.md-flex-initial,.md\:flex-initial{flex:0 1 auto!important}.md-w-auto,.md\:w-auto{width:auto!important}.md-grid-cols-2,.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}.md-grid-cols-3,.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}.md-col-span-2,.md\:col-span-2{grid-column:span 2 / span 2!important}.md-p-4,.md\:p-4{padding:1rem!important}.md-p-6,.md\:p-6{padding:1.5rem!important}.md-p-8,.md\:p-8{padding:2rem!important}.md-text-3xl,.md\:text-3xl{font-size:1.875rem!important;line-height:2.25rem!important}.md-w-10,.md\:w-10{width:2.5rem!important}.md-h-10,.md\:h-10{height:2.5rem!important}.md-w-20,.md\:w-20{width:5rem!important}.md-h-20,.md\:h-20{height:5rem!important}.md-gap-4,.md\:gap-4{gap:1rem!important}.md-hidden,.md\:hidden{display:none!important}.md-flex,.md\:flex{display:flex!important}.md-h-screen,.md\:h-screen{height:100vh!important}.md-overflow-hidden,.md\:overflow-hidden{overflow:hidden!important}.md-overflow-y-auto,.md\:overflow-y-auto{overflow-y:auto!important}.md-flex-1,.md\:flex-1{flex:1 1 0%!important}.md-w-64,.md\:w-64{width:16rem!important}.md-pb-0,.md\:pb-0{padding-bottom:0!important}.md-grid,.md\:grid{display:grid!important}.md-block,.md\:block{display:block!important}}@media(min-width:1024px){.lg-grid-cols-1,.lg\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))!important}.lg-grid-cols-2,.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}.lg-grid-cols-3,.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}.lg-grid-cols-4,.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))!important}.lg-col-span-1,.lg\:col-span-1{grid-column:span 1 / span 1!important}.lg-col-span-2,.lg\:col-span-2{grid-column:span 2 / span 2!important}}.responsive-menu-toggle{display:none}.navigation-backdrop{position:fixed;inset:0;background:#0f172a80;border:0;z-index:3000}.mobile-mode .sidebar{display:flex!important;position:fixed;top:0;left:0;width:min(300px,85vw);height:100dvh;transform:translate(-100%);z-index:3001;visibility:hidden}.mobile-mode .sidebar.open{transform:translate(0);visibility:visible}.mobile-mode .sidebar .responsive-menu-toggle{display:flex;align-self:flex-end;padding:12px;background:transparent;color:#fff;border:0}@media(max-width:1024px){.app-container .sidebar{left:0;transform:translate(-100%);visibility:hidden;height:100dvh;z-index:3001}.app-container .sidebar.open{transform:translate(0);visibility:visible}.responsive-menu-toggle{display:flex;padding:10px;border:0;background:transparent;color:inherit;cursor:pointer}.sidebar .responsive-menu-toggle{align-self:flex-end}.search-page form{flex-wrap:wrap}.search-page form>.relative{min-width:200px}}@media(max-width:600px){.app-container .top-header{padding:8px;height:auto;min-height:64px;gap:6px}.app-container .header-left{min-width:0;flex:1;gap:4px!important}.app-container .header-left h1{font-size:14px!important;overflow-wrap:anywhere}.app-container .header-left .breadcrumb,.app-container .user-details{display:none}.app-container .header-right{gap:4px}.app-container .header-right .avatar{width:28px;height:28px}.app-container .view-container{padding:12px}.search-page{padding:0}.search-page form>.relative{min-width:0;flex-basis:100%}.compact-student-header>div{gap:12px}}.desktop-sidebar-toggle{display:none}@media(min-width:1025px){.app-container:not(.mobile-mode) .desktop-sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:46px;min-height:46px;padding:10px;border:1px solid #dbe5ef;border-radius:9px;background:#f5f9ff;color:#214664;cursor:pointer;flex-shrink:0}.app-container:not(.mobile-mode) .sidebar-hide-button{margin:10px 12px 0;background:#ffffff10;border-color:#ffffff25;color:#fff;font-size:12px}.app-container.sidebar-collapsed:not(.mobile-mode)>.sidebar{display:none}.app-container.sidebar-collapsed .view-container{max-width:1660px}}.desktop-sidebar-toggle:focus-visible{outline:3px solid #2295ff;outline-offset:3px}.compact-student-header{padding:16px}.student-avatar-compact{width:44px;height:44px;flex-shrink:0;font-size:18px}.student-name-compact{font-size:20px}.enrollment-selector{padding:16px}.enrollment-selector h3{margin:0 0 12px;font-size:16px}.enrollment-options{display:flex;flex-wrap:wrap;gap:8px}.enrollment-options button{display:flex;flex-direction:column;gap:4px;text-align:left;padding:12px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;cursor:pointer}.enrollment-options button[aria-pressed=true]{border-color:#173979;background:#eff6ff}.enrollment-options span{font-size:12px}.compact-student-header{padding:24px}.student-name-compact{font-size:clamp(20px,2.4vw,28px);overflow-wrap:anywhere}.profile-header-layout{display:grid;grid-template-columns:1fr;gap:20px}.profile-header-layout>div:first-child{min-width:0;gap:20px}.profile-header-layout>div:first-child>div:last-child{flex:1;min-width:0}.profile-header-layout>div:last-child{width:100%;display:flex;flex-wrap:wrap;gap:8px}.profile-header-layout button{min-height:44px}@media(min-width:1500px){.profile-header-layout{grid-template-columns:minmax(360px,1fr) minmax(400px,1fr)}}.profile-header-layout>div:last-child button{color:#fff;background:#ffffff12;border:1px solid #ffffff55;border-radius:10px;padding:10px 14px}.profile-header-layout>div:last-child button:hover{background:#ffffff25}.profile-header-layout>div:last-child button.bg-rose-600{background:#e11d48;border-color:#fb7185}.welcome-home{position:relative;isolation:isolate;min-height:calc(100dvh - 120px);color:#101d49;background:linear-gradient(125deg,#f4f9ff,#f9fbff 60%,#ecf6ff);padding:24px 28px 100px;border-radius:16px;overflow:hidden;font-family:Inter,system-ui,sans-serif}.welcome-home:before,.welcome-home:after{content:"";position:absolute;z-index:-1;width:650px;height:650px;border-radius:45%;background:#dceeff55;pointer-events:none;transform:rotate(25deg)}.welcome-home:before{left:-490px;top:160px}.welcome-home:after{right:-510px;bottom:-210px}.welcome-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.welcome-top h1{font-size:27px;margin:0 0 6px;font-weight:800;letter-spacing:-.7px}.welcome-top p{margin:0;color:#718098;font-size:13px}.welcome-widgets{display:flex;gap:10px}.welcome-widget{display:flex;align-items:center;gap:12px;border:1px solid #fff;background:#ffffffb8;box-shadow:0 3px 18px #1b528507;border-radius:14px;min-height:76px;padding:12px 16px}.welcome-widget>svg{color:#1976e9;width:29px;height:29px;flex-shrink:0}.welcome-widget.weather>svg{color:#f5b318}.welcome-widget strong{display:block;font-size:15px;font-weight:750}.welcome-widget small{display:block;color:#748099;font-size:10px;margin-top:2px}.welcome-hero{position:relative;text-align:center;padding:65px 0 32px;min-height:490px}.welcome-identity{position:relative;z-index:1}.welcome-photo{margin:0 auto 14px;width:164px;height:164px;display:grid;place-items:center;border:6px solid white;border-radius:50%;background:linear-gradient(135deg,#dceeff,#a9cdf4);box-shadow:0 8px 40px #477ebf25;overflow:hidden}.welcome-photo img{width:100%;height:100%;object-fit:cover}.welcome-photo>span{font-size:52px;font-weight:750;color:#2059a4}.welcome-identity h2{font-size:31px;margin:0 0 4px;line-height:1.2;font-weight:800}.welcome-identity p{margin:0;font-size:18px;color:#68788e}.welcome-identity i{display:block;width:45px;height:3px;border-radius:4px;background:#f64f64;margin:14px auto 30px}.welcome-hero h3{font-size:38px;letter-spacing:-1.1px;margin:0 0 14px;font-weight:800;position:relative;z-index:1}.welcome-hero h3 em{font-style:normal;color:#1257b7}.welcome-hero h3>span{font-size:34px}.welcome-instructions{font-size:21px;line-height:1.5;color:#647088;margin:0;position:relative;z-index:1}.welcome-art{position:absolute;width:200px;color:#9fc0ee;opacity:.65;pointer-events:none}.welcome-art-left{top:130px;left:5%}.welcome-art-left>svg{width:130px;height:110px;transform:rotate(-12deg);margin-bottom:44px}.welcome-art span{display:block;font-size:24px;line-height:1.4;font-family:Georgia,serif;font-style:italic;transform:rotate(-9deg)}.welcome-art span:after{content:"";display:block;width:80px;height:2px;background:#f3a6ba;margin:12px auto}.welcome-art-right{right:3%;top:120px}.welcome-art-right>svg{display:block;margin:0 auto}.welcome-art-right>svg:first-of-type{width:78px;height:90px;margin-top:40px}.welcome-art-right>svg:last-of-type{width:142px;height:94px}.welcome-social{position:fixed;right:24px;bottom:22px;display:flex;align-items:center;gap:12px;padding:13px 16px;border:1px solid #edf3fc;background:#fffffff2;box-shadow:0 5px 25px #3268a71a;border-radius:17px;z-index:100}.welcome-social>span{font-size:10px;line-height:1.4;color:#213453;border-right:1px solid #e5edf6;padding-right:15px;font-weight:650}.welcome-social a{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;text-decoration:none;color:#fff;transition:transform .15s}.welcome-social a:hover{transform:translateY(-3px)}.welcome-social .whatsapp{background:#00ac53}.welcome-social .facebook{background:#1379ee}.welcome-social .instagram{background:linear-gradient(35deg,#ffd35b,#f44173 45%,#9316cf)}.welcome-social .website{background:#e7eefb;color:#182c58}.welcome-social a:focus-visible,.welcome-panel summary:focus-visible{outline:3px solid #0072ef;outline-offset:4px}.welcome-panel{position:relative;z-index:2;margin-top:20px}.welcome-panel>summary{display:flex;align-items:center;justify-content:center;gap:10px;list-style:none;width:max-content;margin:0 auto;padding:12px 18px;border:1px solid #cddff4;border-radius:9px;background:#fff;color:#25578b;cursor:pointer;font-size:13px;min-height:46px}.welcome-panel summary::-webkit-details-marker{display:none}.welcome-panel[open]>summary>svg{transform:rotate(180deg)}.welcome-panel-body{padding-top:22px}.welcome-footer{display:flex;gap:12px;align-items:center;position:absolute;bottom:25px;left:28px;color:#537395;font-size:11px}.welcome-footer>span{font-size:10px;color:#8699ad}.welcome-footer a{color:#6f879f;font-size:9px}.app-container:has(.welcome-home)>.content>.top-header{display:none}.app-container:has(.welcome-home)>.sidebar{background:#132747}.app-container:has(.welcome-home)>.content>.view-container{padding:18px;max-width:none}.app-container:has(.welcome-home) .sidebar .nav-item.active{background:#205fb8;color:#fff}.mobile-mode:has(.welcome-home) .welcome-social{bottom:88px}@media(max-width:1250px){.welcome-top{flex-wrap:wrap}.welcome-widgets{width:100%}.welcome-widget{flex:1}.welcome-art-left{left:0}.welcome-art-right{right:0}.welcome-art{width:150px}.welcome-hero{padding-top:40px}}@media(max-width:900px){.welcome-art{opacity:.25;width:110px}.welcome-art span{font-size:18px}.welcome-art svg{max-width:90px}.welcome-hero h3{font-size:32px}.welcome-home{padding:20px 18px 110px}.welcome-social{bottom:85px;right:15px}.welcome-footer{flex-wrap:wrap;max-width:60%;bottom:20px;left:18px}.app-container:has(.welcome-home)>.content>.top-header{display:flex}.welcome-photo{width:140px;height:140px}}@media(max-width:560px){.welcome-top h1{font-size:24px}.welcome-widgets{gap:6px;flex-wrap:wrap}.welcome-widget{padding:10px;min-width:120px}.welcome-widget:last-child{display:none}.welcome-widget strong{font-size:12px}.welcome-widget>svg{width:22px}.welcome-hero{min-height:430px;padding:36px 0 20px}.welcome-identity h2{font-size:27px}.welcome-hero h3{font-size:29px}.welcome-instructions{font-size:17px}.welcome-art{display:none}.welcome-social{gap:10px;padding:10px;right:12px}.welcome-social>span{font-size:9px;padding-right:9px}.welcome-social a{width:42px;height:42px}.welcome-footer{max-width:100%;gap:6px}.welcome-break{display:none}}.app-container:has(.welcome-home)>.content>.top-header{display:flex;height:58px;min-height:58px;padding:8px 22px;background:#f6faff;border-bottom:0}.app-container:has(.welcome-home)>.content>.top-header>.header-left{display:none!important}.app-container:has(.welcome-home)>.content>.top-header>.header-right{margin-left:auto}.welcome-social-toggle{display:none}@media(max-width:700px){.welcome-social-toggle{display:grid;place-items:center;border:0;background:#195eb4;color:#fff;border-radius:12px;width:44px;height:44px;cursor:pointer}.welcome-social.collapsed>span,.welcome-social.collapsed>a{display:none}.welcome-social.collapsed{padding:6px}.welcome-social.expanded{gap:8px}.welcome-social.expanded>span{display:none}.welcome-social-toggle:focus-visible{outline:3px solid #1976e9;outline-offset:3px}}.welcome-start-cue{display:flex;align-items:center;justify-content:center;gap:20px;max-width:670px;margin:0 auto 30px;color:#354d76}.welcome-start-cue p{font-size:20px;line-height:1.45;margin:0;text-align:left}.welcome-start-cue svg{width:60px;height:60px;flex-shrink:0;color:#1b64c1;stroke-width:1.8}.welcome-start-arrow-mobile{display:none}@media(max-width:900px){.welcome-start-cue{gap:12px;padding:0 10px}.welcome-start-cue p{font-size:17px}.welcome-start-cue svg{width:36px;height:36px}.welcome-start-arrow-desktop{display:none}.welcome-start-arrow-mobile{display:block}}.sidebar .grouped-nav{display:flex;flex:1;flex-direction:column;gap:8px;min-height:0;overflow-y:auto;padding:8px 12px 14px}.grouped-nav .nav-direct-links,.grouped-nav .nav-group-list{display:flex;flex-direction:column;gap:5px}.grouped-nav .nav-direct-links{padding-bottom:12px;border-bottom:1px solid #ffffff20}.grouped-nav .nav-item,.grouped-nav .nav-group-trigger{display:flex;align-items:center;gap:11px;width:100%;min-height:45px;margin:0;padding:10px 12px;border-radius:10px;text-align:left;font-size:13px;line-height:1.25;cursor:pointer}.grouped-nav .nav-item span:not(.nav-count),.grouped-nav .nav-group-trigger span:not(.nav-count){flex:1;min-width:0}.grouped-nav .nav-direct{font-weight:700}.grouped-nav .nav-group-trigger{color:#e2e8f0;background:transparent;border:1px solid transparent;font-weight:700}.grouped-nav .nav-group-trigger:hover,.grouped-nav .nav-group-trigger.contains-active{background:#ffffff16;color:#fff}.grouped-nav .nav-group-trigger:focus-visible,.grouped-nav .nav-item:focus-visible{outline:2px solid #93c5fd;outline-offset:2px}.grouped-nav .nav-group-chevron{margin-left:auto;flex-shrink:0;transition:transform .16s ease}.grouped-nav .nav-group.open .nav-group-chevron{transform:rotate(180deg)}.grouped-nav .nav-submenu{display:flex;flex-direction:column;gap:3px;margin:3px 0 5px 14px;padding-left:9px;border-left:1px solid #ffffff33}.grouped-nav .nav-subitem{min-height:43px;font-size:12px;font-weight:550;color:#cbd5e1}.grouped-nav .nav-count{display:inline-grid;place-items:center;flex:0 0 auto;min-width:22px;height:20px;padding:0 5px;border-radius:10px;background:#e64545;color:#fff;font-size:11px;font-weight:800}@media(max-width:900px){.sidebar .grouped-nav{padding-bottom:28px}.grouped-nav .nav-item,.grouped-nav .nav-group-trigger{min-height:48px}.grouped-nav .nav-subitem{min-height:46px}}.staff-mobile{height:100dvh;display:flex;flex-direction:column;background:#09316a;color:#0e2145;font-family:Inter,system-ui,sans-serif;overflow:hidden}.staff-mobile .staff-bottom{flex:0 0 auto;overflow:visible}.staff-mobile .staff-shortcuts{flex:none;overflow:visible}.staff-mobile button{font:inherit;cursor:pointer}.staff-mobile button:focus-visible{outline:3px solid #f5b520;outline-offset:2px}.staff-mobile-header{display:flex;align-items:center;gap:8px;padding:12px 14px;padding-top:max(12px,env(safe-area-inset-top));min-height:78px;background:linear-gradient(120deg,#07346d,#06478c);flex-shrink:0}.staff-mobile-header>button{position:relative;display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border:0;background:transparent;color:#fff;border-radius:12px}.staff-mobile-header .staff-brand{min-width:0;max-width:210px;width:100%;height:46px;object-fit:contain;background:#fff;border-radius:8px;padding:5px;margin-right:auto}.staff-mobile-header .staff-avatar{border-radius:50%;background:#dceafb;border:2px solid white;color:#144983;width:42px;height:42px;overflow:hidden}.staff-avatar img{width:100%;height:100%;object-fit:cover}.staff-mobile b{position:absolute;top:0;right:0;background:#ee243e;color:#fff;font-size:10px;border-radius:20px;min-width:17px;padding:2px;text-align:center}.staff-mobile-main{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;background:#f3f8fd;border-radius:20px 20px 0 0}.staff-page{padding:12px 10px 28px;min-width:0;overflow-x:auto}.staff-bottom{display:grid;grid-template-columns:repeat(5,1fr);align-items:center;flex-shrink:0;background:linear-gradient(110deg,#093b77,#081f43);padding:5px 8px max(8px,env(safe-area-inset-bottom));min-height:72px;z-index:5}.staff-bottom button{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;justify-content:center;min-height:52px;border:0;background:none;color:#dce9fd;font-size:10px;border-radius:8px}.staff-bottom button.active{color:#ff4157}.staff-bottom .staff-enroll{background:#ef1734;color:#fff;border:4px solid #f3f8fd;border-radius:50%;width:62px;height:62px;justify-self:center;margin-top:-24px;box-shadow:0 5px 16px #071d4930}.staff-enroll svg{width:30px;height:30px}.staff-bottom b{right:20%}:is(.staff-mobile,.student-mobile-modern) .welcome-home{min-height:100%;border-radius:0;padding:12px 12px 20px}:is(.staff-mobile,.student-mobile-modern) .welcome-top>div:first-child{display:none}:is(.staff-mobile,.student-mobile-modern) .welcome-widgets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%}:is(.staff-mobile,.student-mobile-modern) .welcome-widget,:is(.staff-mobile,.student-mobile-modern) .welcome-widget:last-child{display:flex;min-width:0;padding:10px 6px;gap:5px;min-height:76px;border-radius:12px}:is(.staff-mobile,.student-mobile-modern) .welcome-widget>svg{width:23px;height:23px}:is(.staff-mobile,.student-mobile-modern) .welcome-widget strong{font-size:11px;line-height:1.2}:is(.staff-mobile,.student-mobile-modern) .welcome-widget small{font-size:8px;line-height:1.3}:is(.staff-mobile,.student-mobile-modern) .welcome-widget:last-child>svg{color:#ec2145}:is(.staff-mobile,.student-mobile-modern) .welcome-hero{padding:22px 0 14px;min-height:0}:is(.staff-mobile,.student-mobile-modern) .welcome-photo{width:116px;height:116px;border-width:4px;margin-bottom:8px}:is(.staff-mobile,.student-mobile-modern) .welcome-identity h2{font-size:25px;overflow-wrap:anywhere;max-width:75%;margin:0 auto 4px}:is(.staff-mobile,.student-mobile-modern) .welcome-identity p{font-size:15px}:is(.staff-mobile,.student-mobile-modern) .welcome-identity i{margin:10px auto 17px;background:#ee1737}:is(.staff-mobile,.student-mobile-modern) .welcome-hero h3{font-size:30px;letter-spacing:-1px;margin-bottom:8px}:is(.staff-mobile,.student-mobile-modern) .welcome-hero h3 em{color:#e91d37}:is(.staff-mobile,.student-mobile-modern) .welcome-hero h3>span{display:none}:is(.staff-mobile,.student-mobile-modern) .welcome-start-cue{margin:0 auto;max-width:300px;padding:0}:is(.staff-mobile,.student-mobile-modern) .welcome-start-cue svg{display:none}:is(.staff-mobile,.student-mobile-modern) .welcome-start-cue p{text-align:center;font-size:15px;line-height:1.4}:is(.staff-mobile,.student-mobile-modern) .welcome-art{display:block;width:75px;opacity:.48;top:40px}:is(.staff-mobile,.student-mobile-modern) .welcome-art-left{left:0}:is(.staff-mobile,.student-mobile-modern) .welcome-art-right{right:0}:is(.staff-mobile,.student-mobile-modern) .welcome-art span{font-size:12px}:is(.staff-mobile,.student-mobile-modern) .welcome-art svg{max-width:70px;height:65px}:is(.staff-mobile,.student-mobile-modern) .welcome-art-left>svg{margin-bottom:12px}:is(.staff-mobile,.student-mobile-modern) .welcome-art-right>svg:first-of-type{height:40px;margin-top:18px}:is(.staff-mobile,.student-mobile-modern) .welcome-art-right>svg:last-of-type{height:45px}.staff-shortcuts{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:6px 0 18px;z-index:1}.staff-shortcuts button{display:flex;align-items:center;gap:8px;min-height:58px;padding:10px;border:1px solid white;border-radius:12px;background:#ffffffd9;color:#102141;box-shadow:0 3px 12px #15467906;text-align:left;font-size:12px;font-weight:650}.staff-shortcuts button>svg:first-child{width:26px;height:26px;flex-shrink:0}.staff-shortcuts button>svg:last-child{width:14px;height:14px;margin-left:auto;flex-shrink:0;color:#687b97}.staff-shortcuts button.selected{background:linear-gradient(110deg,#0860be,#1046a0);color:#fff}.staff-shortcuts button.selected>svg:last-child{color:#ff4056}:is(.staff-mobile,.student-mobile-modern) .welcome-social,:is(.staff-mobile,.student-mobile-modern) .welcome-social.collapsed{position:relative;inset:auto;width:max-content;margin:0 0 12px auto;padding:7px;gap:8px;border-radius:25px}:is(.staff-mobile,.student-mobile-modern) .welcome-social.collapsed>a{display:grid}:is(.staff-mobile,.student-mobile-modern) .welcome-social>span,:is(.staff-mobile,.student-mobile-modern) .welcome-social-toggle{display:none}:is(.staff-mobile,.student-mobile-modern) .welcome-social a{width:34px;height:34px;border-radius:50%}:is(.staff-mobile,.student-mobile-modern) .welcome-social a svg{width:22px}:is(.staff-mobile,.student-mobile-modern) .welcome-footer{position:relative;inset:auto;max-width:100%;font-size:9px;display:flex;flex-wrap:wrap;gap:5px}:is(.staff-mobile,.student-mobile-modern) .welcome-footer>span{font-size:9px}.staff-drawer{position:fixed;inset:0 auto 0 0;margin:0;width:min(320px,88vw);max-width:88vw;height:100dvh;max-height:100dvh;border:0;padding:18px 14px;background:#10213d;color:#fff;overflow-y:auto}.staff-drawer::backdrop{background:#07192c99}.staff-drawer-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;font-weight:700}.staff-drawer-title button{background:transparent;border:0;color:#fff;width:44px;height:44px}.staff-logout{display:flex;align-items:center;gap:12px;border:0;background:none;color:#fff;padding:16px;min-height:48px}.staff-inbox{padding:22px 16px}.staff-inbox h1{font-size:23px}.staff-inbox>button{display:flex;flex-direction:column;gap:8px;width:100%;text-align:left;padding:16px;margin:10px 0;border:1px solid #dce7f3;border-radius:12px;background:#fff;color:#263e61}.staff-inbox .unread{border-left:4px solid #0b6cdd}.staff-inbox small{color:#1064bc}.staff-focus .staff-mobile-header,.staff-focus .staff-bottom{display:none}@media(min-width:600px){:is(.staff-mobile,.student-mobile-modern) .welcome-home{max-width:680px;margin:auto}:is(.staff-mobile,.student-mobile-modern) .welcome-photo{width:150px;height:150px}:is(.staff-mobile,.student-mobile-modern) .welcome-widget strong{font-size:14px}:is(.staff-mobile,.student-mobile-modern) .welcome-widget small{font-size:10px}.staff-shortcuts button{min-height:68px;font-size:15px}}.my-data-page{max-width:1150px;margin:0 auto;padding:24px;color:#172554}.my-data-page>header{margin-bottom:22px}.my-data-page h1{font-size:32px;font-weight:850;margin:3px 0}.my-data-page>header p{color:#64748b;margin:0}.my-data-eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#2563eb}.my-data-grid{display:grid;grid-template-columns:280px minmax(300px,1fr) minmax(300px,1fr);gap:16px;align-items:start}.my-data-card{background:#fff;border:1px solid #dce7f5;border-radius:16px;box-shadow:0 7px 24px #1739790b;padding:22px;min-width:0}.my-data-card h2{font-size:17px;font-weight:800;margin:0 0 6px}.my-data-card p{color:#64748b;font-size:13px;line-height:1.5;margin:0 0 19px}.my-data-card label{display:block;font-size:12px;font-weight:750;color:#334155;margin:15px 0}.my-data-card input,.my-data-card select{display:block;width:100%;min-height:45px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#172554;padding:9px 11px;margin-top:7px;font-size:14px}.my-data-card input:disabled{background:#f1f5f9;color:#475569}.my-data-card button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border-radius:9px;padding:10px 14px;background:#155ab3;color:#fff;font-weight:750;font-size:13px;cursor:pointer}.my-data-card button:disabled{opacity:.55;cursor:not-allowed}.my-data-card small{display:block;color:#64748b;margin-top:12px}.my-data-photo{text-align:center}.my-data-photo h2{text-align:left}.my-data-photo p{margin:14px 0 0}.my-data-avatar{width:150px;height:150px;display:grid;place-items:center;overflow:hidden;background:#e4efff;border-radius:50%;border:5px solid #fff;box-shadow:0 6px 22px #17397925;color:#155ab3;margin:15px auto 18px}.my-data-avatar img{width:100%;height:100%;object-fit:cover}.my-data-locked{display:flex;align-items:center;gap:9px;color:#116149!important;background:#e9f9f1;padding:11px;border-radius:9px}.my-data-error,.my-data-success{border-radius:9px;padding:12px 15px;margin-bottom:18px}.my-data-error{background:#fff1f2;color:#be123c}.my-data-success{background:#e9f9f1;color:#116149}@media(max-width:1050px){.my-data-grid{grid-template-columns:1fr 1fr}.my-data-photo{grid-column:1/-1}}@media(max-width:680px){.my-data-page{padding:16px}.my-data-grid{grid-template-columns:1fr}.my-data-photo{grid-column:auto}}.my-data-card input[type=file][hidden]{display:none}.att-page{--att-blue:#0878ef;--att-ink:#163957;--att-line:#e1eaf2;color:var(--att-ink);width:100%;max-width:1600px;min-width:0;margin:0 auto;padding:8px 0 20px;display:flex;flex-direction:column;gap:16px}.att-page *{box-sizing:border-box}.att-page button,.att-page input,.att-page select{font:inherit}.att-page button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 15px;border:1px solid var(--att-line);border-radius:9px;background:#f3f7fc;color:var(--att-ink);font-size:13px;font-weight:650;cursor:pointer;touch-action:manipulation}.att-page button:hover:not(:disabled){background:#e3effc}.att-page button:disabled{opacity:.45;cursor:not-allowed}.att-page :is(button,input,select):focus-visible{outline:3px solid #2295ff;outline-offset:3px}.att-page .att-primary{background:var(--att-blue);color:#fff;border-color:var(--att-blue)}.att-page .att-primary:hover:not(:disabled){background:#0564ca}.att-page input:not([type=checkbox]),.att-page select{min-height:46px;width:100%;min-width:0;padding:10px 12px;border:1px solid var(--att-line);border-radius:8px;background:#fff;color:var(--att-ink);font-size:14px}.att-page input[type=checkbox]{width:22px;height:22px;margin:0;accent-color:var(--att-blue);cursor:pointer;flex-shrink:0}.att-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.att-eyebrow{color:#6b8399;font-size:10px;font-weight:800;letter-spacing:1.7px}.att-heading h2{display:flex;align-items:center;gap:10px;font-size:26px;font-weight:800;margin:7px 0 5px;color:#173c60;letter-spacing:-.7px}.att-heading h2 svg{color:var(--att-blue)}.att-heading p{margin:0;color:#698196;font-size:14px}.att-tablet-tag{display:flex;align-items:center;gap:7px;color:#37785f;background:#edf9f3;padding:9px 12px;border-radius:20px;font-size:12px}.att-loader{display:grid;grid-template-columns:1.6fr 1.1fr 1fr auto;align-items:end;gap:14px;background:#fff;padding:18px;border:1px solid var(--att-line);border-radius:12px}.att-loader label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700}.att-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.att-stat{min-height:104px;border-radius:11px;padding:20px 18px;display:flex;align-items:center;gap:16px;color:#fff;position:relative;box-shadow:0 4px 10px #1a52700b}.att-stat.blue{background:linear-gradient(115deg,#0785ff,#0868ee)}.att-stat.green{background:linear-gradient(115deg,#12b477,#099961)}.att-stat.red{background:linear-gradient(115deg,#ff3157,#fa1c44)}.att-stat.yellow{background:linear-gradient(115deg,#ffd94f,#ffcc3b);color:#342d10}.att-stat>svg{flex-shrink:0}.att-stat>div{display:flex;flex-direction:column;gap:2px}.att-stat span{font-size:13px;font-weight:550}.att-stat strong{font-size:34px;line-height:1.15;font-weight:800}.att-stat small{font-size:15px;font-weight:700;margin-left:auto;align-self:flex-end;white-space:nowrap}.att-stat.blue small{font-size:10px;max-width:60px;white-space:normal}.att-context{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 22px;background:#e8f3fd;border:1px solid #e0edf9;border-radius:9px}.att-context>span{display:flex;align-items:center;gap:8px;font-size:14px}.att-context>span+span{border-left:1px solid #bfd6eb;padding-left:24px}.att-context svg{flex-shrink:0;color:#0878ef}.att-toolbar{display:grid;grid-template-columns:minmax(200px,1.5fr) minmax(190px,1fr) minmax(165px,.8fr) auto;gap:12px}.att-search,.att-day{display:flex;align-items:center;gap:3px;background:#fff;border:1px solid var(--att-line);border-radius:8px;padding-left:12px}.att-search>svg,.att-day>svg{color:#668da9;flex-shrink:0}.att-search input:not([type=checkbox]),.att-day input:not([type=checkbox]){border:0;background:transparent}.att-legend{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#637d93}.att-legend>span:first-child{display:flex;align-items:center;gap:5px}.att-dot{width:7px;height:7px;border-radius:50%;background:var(--att-blue);display:inline-block}.att-grid{width:100%;overflow:auto;max-height:68vh;border:1px solid var(--att-line);border-radius:10px;background:#fff;overscroll-behavior-x:contain}.att-grid table{width:100%;border-collapse:separate;border-spacing:0;text-align:left;white-space:nowrap;font-size:13px}.att-grid th{background:#1c4d73;color:#fff;font-weight:600;position:sticky;top:0;z-index:3;padding:3px 12px;height:58px;border-right:1px solid #ffffff1f}.att-grid td{background:#fff;padding:5px 12px;border-bottom:1px solid #eaf0f6;height:60px}.att-grid tbody tr:nth-child(2n) td{background:#f8fbff}.att-grid tbody tr.att-row-selected td{background:#eaf4ff}.att-grid tbody tr:hover td{background:#f0f7ff}.att-grid .att-sticky{position:sticky;left:0;z-index:2;min-width:210px;box-shadow:3px 0 5px #24496909}.att-grid th.att-sticky{z-index:4}.att-page .att-select{display:flex;align-items:center;justify-content:center;width:40px;height:46px;cursor:pointer}.att-student{display:flex;align-items:center;gap:10px}.att-student strong{font-size:13px;font-weight:650}.att-avatar{width:36px;height:36px;flex-shrink:0;border-radius:50%;background:#dfedff;color:#2c72b4;display:grid;place-items:center;position:relative;overflow:hidden;font-weight:700;font-size:12px}.att-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}.att-restricted{display:flex;gap:4px;align-items:center;color:#d03551;font-size:10px;margin-top:3px}.att-dni{color:#547089;font-variant-numeric:tabular-nums}.att-amount{font-variant-numeric:tabular-nums}.att-badge{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:6px;font-size:11px;font-weight:650}.att-badge.paid{background:#dff5e8;color:#167447}.att-badge.unpaid{background:#fff3d7;color:#906211}.att-page .att-date-tab{background:transparent;color:#fff;border:0;padding:4px 6px;display:flex;flex-direction:column;gap:2px;width:100%;min-width:70px}.att-page .att-date-tab:hover:not(:disabled){background:#ffffff16}.att-date-tab small{font-size:9px;font-weight:450;opacity:.8}.att-grid th.att-active-head{background:#0878ef}.att-grid td.att-check-cell{text-align:center;padding:5px 8px}.att-grid td.att-active-cell{background:#eef7ff}.att-page .att-check{width:46px;height:46px;padding:0;border-radius:8px}.att-page .att-check.present{background:#0878ef;border-color:#0878ef;color:#fff}.att-page .att-check.present:hover{background:#0064cc}.att-page .att-check.absent{background:#fff0f2;border-color:#f5b2bf;color:#d72849}.att-page .att-check.pending{background:#fff;border-color:#c9d6e2;color:#8ba0b1}.att-unmarked{width:17px;height:17px;border:1.5px solid #acbfd0;border-radius:3px}.att-page .att-wa{background:#079753;border:1px solid #078b4d;color:#fff;white-space:nowrap}.att-page .att-wa:hover:not(:disabled){background:#057e44}.att-page .att-icon{width:46px;padding:0}.att-bulk{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px;background:#fff;border:1px solid var(--att-line);border-radius:9px}.att-select-all{display:flex;align-items:center;gap:9px;min-height:46px;padding:0 8px;font-size:12px;cursor:pointer}.att-bulk-hint{font-size:11px;color:#6a8296;margin-left:auto}.att-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#6c8295;font-size:12px}.att-pagination>div{display:flex;align-items:center;gap:12px}.att-pagination button{min-width:46px;padding:0;background:#fff}.att-finance-note{font-size:11px;color:#728598;line-height:1.6;margin:0}.att-savebar{display:flex;align-items:center;gap:12px;padding:14px 16px;position:sticky;bottom:12px;z-index:8;background:#fffffffa;border:1px solid #dce7f1;border-radius:12px;box-shadow:0 -4px 24px #1c496b12}.att-savebar>div{margin-right:auto;display:grid;grid-template-columns:10px auto;align-items:center;gap:4px 8px}.att-savebar strong{font-size:13px}.att-savebar small{font-size:11px;grid-column:2;color:#74889b}.att-save-dot{width:8px;height:8px;border-radius:50%;background:#16a46b}.att-save-dot.dirty{background:#efa820}.att-notice{display:flex;align-items:center;gap:10px;padding:14px 18px;border-radius:9px;font-size:14px}.att-notice svg{flex-shrink:0}.att-error{background:#fff0f1;color:#b92345}.att-success{background:#e6f7ee;color:#147443}.att-empty{display:flex;align-items:center;flex-direction:column;text-align:center;padding:70px 24px;color:#698396;background:#fff;border-radius:12px}.att-empty svg{color:#8db8df}.att-empty h3{font-size:19px;color:#264965;margin:18px 0 8px}.att-empty p{font-size:14px;margin:0}.att-modal-backdrop{position:fixed;inset:0;background:#13344b80;z-index:1000;padding:24px;display:grid;place-items:center}.att-modal{width:min(100%,560px);max-height:80vh;overflow:auto;border-radius:16px;background:#fff;padding:24px;box-shadow:0 20px 70px #0003}.att-modal header{display:flex;align-items:center;justify-content:space-between;gap:12px}.att-modal h3{margin:0;font-size:19px}.att-modal p{color:#688199;font-size:13px}.att-contact{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--att-line);font-size:13px}@media(max-width:1200px){.att-stat{padding:17px 14px;gap:10px}.att-stat>svg{width:27px}.att-stat small,.att-stat span{font-size:12px}.att-context{padding:15px}.att-context>span{font-size:12px}.att-context>span+span{padding-left:14px}.att-toolbar{grid-template-columns:1.3fr 1fr}}@media(max-width:900px){.att-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.att-loader{grid-template-columns:1fr 1fr}.att-tablet-tag{display:none}.att-context{flex-wrap:wrap}.att-context>span+span{border:0;padding-left:0}.att-legend{flex-wrap:wrap}.att-savebar{bottom:80px}.att-bulk-hint{width:100%;margin-left:8px}}@media(max-width:540px){.att-page{gap:12px}.att-heading h2{font-size:23px}.att-heading p{font-size:12px}.att-loader{padding:12px;gap:10px}.att-loader label:first-child{grid-column:1/-1}.att-loader>button{grid-column:1/-1}.att-toolbar{grid-template-columns:1fr}.att-stat{gap:8px;padding:14px 10px;min-height:95px}.att-stat strong{font-size:28px}.att-stat small{display:none}.att-context{gap:12px}.att-grid .att-sticky{min-width:175px;max-width:200px;white-space:normal}.att-student{gap:7px}.att-student strong{font-size:12px}.att-avatar{width:30px;height:30px}.att-savebar{flex-wrap:wrap;padding:12px;gap:8px;bottom:76px}.att-savebar>div{width:100%}.att-savebar>button{flex:1;font-size:12px;padding:10px}.att-bulk>button{flex:1;font-size:12px}.att-select-all{width:100%}}.attendance-topbar-hidden>.content>.top-header,.attendance-topbar-hidden>.mobile-app-header,.attendance-topbar-hidden>.mobile-top-bar{display:none!important}.att-heading-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.att-page .att-navigation-restore{position:fixed;top:10px;right:16px;z-index:1100;background:#fff;border-color:#bdd5eb;box-shadow:0 3px 16px #173c6020;min-height:46px}.attendance-topbar-hidden .att-heading{padding-top:42px}@media(max-width:700px){.att-heading{align-items:flex-start;flex-wrap:wrap}.att-page .att-navigation-restore{right:10px;top:8px}}.student-mobile-header{display:none}.student-drawer{position:fixed;inset:0 auto 0 0;margin:0;width:min(320px,88vw);max-width:88vw;height:100dvh;max-height:100dvh;padding:18px 14px;border:0;background:#102744;color:#fff;overflow-y:auto}.student-drawer::backdrop{background:#071a3199}.student-drawer nav{display:flex;flex-direction:column;gap:4px;padding:0;overflow:visible;flex:none}.student-drawer button{display:flex;align-items:center;gap:12px;min-height:46px;padding:12px;border:0;border-radius:10px;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit;font-size:14px}.student-drawer nav button[aria-current=page]{background:#185bb3}.student-drawer-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.student-drawer-title button{width:44px}.student-drawer button:focus-visible{outline:3px solid #68afff;outline-offset:2px}@media(max-width:767px){.sp-container.student-mobile-modern{height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:#08356e}.student-mobile-header{display:flex;align-items:center;gap:8px;flex:0 0 auto;padding:12px;padding-top:max(12px,env(safe-area-inset-top));height:78px;background:linear-gradient(110deg,#093c7a,#062859);color:#fff}.student-mobile-header button{position:relative;width:42px;height:44px;flex-shrink:0;display:grid;place-items:center;border:0;background:transparent;color:#fff;border-radius:10px}.student-brand{width:100%;min-width:0;max-width:220px;height:46px;object-fit:contain;background:#fff;border-radius:9px;padding:5px;margin-right:auto}.student-mobile-header b{position:absolute;right:0;top:1px;min-width:17px;background:#ed203b;color:#fff;border-radius:20px;font-size:10px;padding:2px}.student-mobile-header .student-header-avatar{border-radius:50%;background:#dbeaff;border:2px solid white;color:#154a88;overflow:hidden}.student-header-avatar img{width:100%;height:100%;object-fit:cover}.student-mobile-modern .sp-main-viewport{height:auto;min-height:0;flex:1;width:100%;max-width:none;padding:12px 10px 90px;margin:0;overflow:auto;overscroll-behavior:contain;border-radius:20px 20px 0 0;background:#f3f8fd;display:block}.student-mobile-modern .sp-desktop-header{display:none}.student-mobile-modern .welcome-home{padding:0 0 16px!important}.student-mobile-modern .welcome-panel{display:none}.student-mobile-modern .mobile-bottom-nav{position:fixed;inset:auto 0 0;height:auto;min-height:70px;padding:6px 6px max(8px,env(safe-area-inset-bottom));background:linear-gradient(110deg,#093b77,#081f43);border:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));z-index:40;border-radius:15px 15px 0 0;box-shadow:0 -3px 15px #0e275210}.student-mobile-modern .mobile-bottom-nav button{min-width:0;min-height:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:0;background:none;color:#dce9fd;font-size:10px;padding:4px}.student-mobile-modern .mobile-bottom-nav button.active{color:#ff4560}.student-mobile-modern .mobile-bottom-nav button:nth-child(3) .mbn-icon-wrap{background:#ee183b;color:#fff;width:49px;height:49px;display:grid;place-items:center;border-radius:50%;border:3px solid #f3f8fd;margin-top:-18px}.student-mobile-modern .mobile-bottom-nav .mbn-icon-wrap{background:transparent;padding:0}.student-mobile-modern .mobile-bottom-nav span{font-size:10px}.student-mobile-modern .staff-shortcuts{padding:0}.student-mobile-modern .my-data-page{padding:4px 0}.student-mobile-modern .my-data-avatar{width:130px;height:130px}.student-mobile-modern .my-data-grid{grid-template-columns:minmax(0,1fr)}.student-mobile-modern .student-course-card{display:flex;flex-direction:column;gap:5px;padding:12px 14px;border:1px solid #dce9f7;border-radius:12px;background:#fff;margin:10px 0;color:#294568;font-size:12px}.student-course-card select{width:100%;min-height:42px;border:1px solid #c8daef;border-radius:8px;background:#f7faff;color:#17375f;padding:8px;font:inherit}.student-profile-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.student-profile-actions button{border:1px solid #d2e0ef;border-radius:10px;padding:12px;background:#fff;color:#214b7a;min-height:44px}}.student-payment-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.student-payment-actions button{display:flex;align-items:center;gap:12px;text-align:left;background:#1356ae;border:1px solid #dbe6f4;border-radius:16px;min-height:88px;padding:18px;color:#fff;cursor:pointer}.student-payment-actions button:last-child{background:#fff;color:#1f3859}.student-payment-actions span{display:flex;flex-direction:column;gap:5px}.student-payment-actions small{font-size:12px;opacity:.85}.student-payment-actions svg{flex-shrink:0}.student-payment-actions button:focus-visible{outline:3px solid #4295fa;outline-offset:3px}@media(max-width:560px){.student-payment-actions{grid-template-columns:1fr}.student-payment-actions button{min-height:76px;padding:14px}}.student-mobile-modern .mobile-bottom-nav button.active svg{color:#ff4560}.student-mobile-modern .mobile-bottom-nav .mbn-item.active .mbn-icon-wrap{background:transparent}.student-mobile-modern .mobile-bottom-nav button:nth-child(3) .mbn-icon-wrap,.student-mobile-modern .mobile-bottom-nav button:nth-child(3).active .mbn-icon-wrap{background:#ee183b;color:#fff}.student-mobile-modern .mobile-bottom-nav button:nth-child(3) svg{color:#fff}.tev{--tev-blue:#163f76;--tev-ink:#17324e;--tev-muted:#617489;--tev-border:#dbe5ed;--tev-bg:#f4f7fa;color:var(--tev-ink);font-family:inherit;max-width:1240px;margin:0 auto;line-height:1.55;padding:4px 0 30px;min-width:0}.tev *{box-sizing:border-box}.tev h2,.tev h3,.tev h4,.tev p{margin:0}.tev h2{font-size:clamp(1.35rem,2.5vw,1.8rem);letter-spacing:-.035em;font-weight:800;line-height:1.25}.tev h3{font-size:1.1rem;font-weight:750;line-height:1.4}.tev h4{font-size:1rem;font-weight:750}.tev p{margin-top:8px}.tev button,.tev input,.tev select,.tev textarea{font:inherit}.tev button{cursor:pointer;transition:background .15s,border-color .15s}.tev button:disabled{opacity:.5;cursor:not-allowed}.tev button:focus-visible,.tev input:focus-visible,.tev textarea:focus-visible,.tev select:focus-visible,.tev a:focus-visible{outline:3px solid #6cacdf;outline-offset:3px}.tev button svg{flex-shrink:0}.tev small{font-size:.78rem;font-weight:450;color:var(--tev-muted);line-height:1.5}.tev a{color:#1a5899;text-decoration:underline;overflow-wrap:anywhere}.tev fieldset{border:0;padding:0;margin:0;min-width:0}.tev legend{font-size:.84rem;font-weight:700;margin-bottom:10px}.tev ul{padding-left:22px;margin:10px 0}.tev li+li{margin-top:5px}.tev-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:0 0 24px}.tev-heading p{color:var(--tev-muted);max-width:690px;font-size:.94rem}.tev-eyebrow{color:#6b7e8e;letter-spacing:.11em;font-size:.68rem;font-weight:800;display:block;margin-bottom:10px}.tev-card{background:#fff;border:1px solid var(--tev-border);border-radius:18px;padding:24px;margin-bottom:20px;box-shadow:0 3px 10px #14345304}.tev-card>h3{margin-bottom:12px}.tev-button{border:1px solid #cbd8e4;border-radius:11px;background:#fff;color:var(--tev-blue);padding:10px 15px;min-height:43px;font-size:.84rem;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;white-space:normal}.tev-button:hover{background:#edf4fa;border-color:#99b9d4}.tev-primary{background:var(--tev-blue);color:#fff;border-color:var(--tev-blue)}.tev-primary:hover{background:#102f59;border-color:#102f59}.tev-link{color:#295c8d;border:0;background:none;padding:0;display:inline-flex;align-items:center;gap:6px;font-size:.83rem;font-weight:650;margin-bottom:12px}.tev-link:hover{text-decoration:underline}.tev-heading>.tev-button{flex-shrink:0}.tev-muted{color:var(--tev-muted);font-size:.83rem}.tev-prewrap{white-space:pre-wrap;overflow-wrap:anywhere}.tev-alert{padding:15px 17px;border-radius:12px;margin-bottom:18px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;font-size:.9rem;border:1px solid}.tev-alert>button{border:0;background:none;color:inherit;display:flex;padding:3px}.tev-error{background:#fff1f1;border-color:#f0c3c3;color:#902a2a}.tev-success{background:#edf8f1;border-color:#c2e2ce;color:#216443}.tev-warning{background:#fff8e8;border-color:#ebd8a7;color:#78560f}.tev-warning ul{margin:0}.tev-info{background:#edf4fb;border:1px solid #d6e5f3;border-radius:12px;padding:14px 17px;font-size:.87rem;color:#345b7c}.tev-info p{margin:0 0 8px}.tev-info .tev-check{margin-top:12px}.tev-tags{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin-bottom:12px}.tev-tags>span{background:#f1f5f8;color:#4a637c;border-radius:6px;padding:4px 8px;font-size:.71rem;font-weight:750;letter-spacing:.02em}.tev-status{display:inline-flex;padding:5px 9px;border-radius:7px;font-size:.74rem;font-weight:750;background:#edf1f5;color:#516476;white-space:nowrap}.tev .tev-status-published,.tev .tev-status-approved{background:#e7f5ec;color:#226742}.tev .tev-status-needs_review,.tev .tev-status-submitted{background:#fff1d8;color:#886114}.tev .tev-status-rework{background:#eef0ff;color:#504597}.tev .tev-status-rejected{background:#fcecec;color:#963e3e}.tev .tev-status-in_progress{background:#e8f3fc;color:#24668e}.tev label:not(.tev-check):not(.tev-choice):not(.tev-upload):not(.tev-search){display:flex;flex-direction:column;gap:7px;font-size:.84rem;font-weight:700;min-width:0;margin-bottom:17px}.tev input:not([type=radio]):not([type=checkbox]):not([type=file]),.tev select,.tev textarea{width:100%;border:1px solid #cddae5;background:#fff;color:#233c54;border-radius:9px;padding:10px 12px;min-height:44px;font-size:.9rem;line-height:1.5}.tev input::placeholder,.tev textarea::placeholder{color:#8493a0;font-weight:400}.tev textarea{resize:vertical;min-height:85px}.tev input[type=radio],.tev input[type=checkbox]{width:18px;height:18px;accent-color:var(--tev-blue);flex-shrink:0}.tev-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px 22px}.tev-span-2{grid-column:1/-1}.tev-check{display:flex;align-items:flex-start;gap:9px;font-size:.85rem;font-weight:450;cursor:pointer}.tev-check input{margin-top:4px}.tev-class-picks{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-height:210px;overflow:auto;border:1px solid var(--tev-border);padding:14px;border-radius:10px}.tev-search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--tev-border);border-radius:12px;padding:2px 14px;margin:0 0 22px;max-width:550px;color:#7890a3}.tev .tev-search input{border:0;background:transparent;padding-left:0}.tev-methods{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:23px 0}.tev-methods button{background:#fff;border:1px solid var(--tev-border);border-radius:13px;padding:17px 13px;text-align:left;color:#61798e;display:flex;flex-direction:column;gap:5px}.tev-methods strong{color:#304f6e;font-size:.9rem;margin-top:5px}.tev-methods small{font-size:.73rem}.tev-methods button.active{background:#edf4fc;border-color:#729dc0;box-shadow:inset 0 0 0 1px #729dc0;color:#245b90}.tev-methods button:hover{background:#f2f7fb}.tev-upload{position:relative;border:1px dashed #86a7c3;border-radius:10px;padding:12px 16px;display:inline-flex;align-items:center;gap:9px;cursor:pointer;color:#295b83;font-size:.88rem;font-weight:700;background:#f2f7fc;margin:15px 0}.tev-upload input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.tev-file-name{font-size:.8rem;margin-left:14px;color:var(--tev-muted);overflow-wrap:anywhere}.tev-inline{display:flex;gap:18px;align-items:flex-end;flex-wrap:wrap}.tev-inline label{max-width:200px}.tev-inline .tev-button{margin-bottom:17px}.tev-import-review{margin-top:22px;border-top:1px solid var(--tev-border);padding-top:18px}.tev-import-review>div{padding:13px 0;border-bottom:1px solid #e6edf2;font-size:.85rem}.tev-import-review .tev-button{margin-top:17px}.tev-import-review p{color:var(--tev-muted);font-size:.8rem}.tev-bank{margin-top:12px;max-height:430px;overflow:auto}.tev-bank>div{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--tev-border);padding:15px 0;font-size:.86rem}.tev-bank small{display:block;margin-top:4px}.tev-section-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:23px 0 15px}.tev-section-title>span{color:var(--tev-muted);font-size:.82rem}.tev-section-title h3 span{display:inline-block;border-radius:6px;background:#e7eef5;padding:2px 7px;font-size:.85rem;margin-left:5px}.tev-question-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5edf3;padding-bottom:12px;margin-bottom:18px}.tev-icon-actions{display:flex;gap:4px}.tev-icon-actions button,.tev-option>button,.tev-attached-file>button{display:flex;align-items:center;justify-content:center;min-width:34px;min-height:34px;border:0;border-radius:7px;background:#f0f4f7;color:#526d82}.tev-icon-actions button:hover{background:#dfeaf2}.tev-option{display:flex;align-items:center;gap:10px;margin-bottom:9px;border:1px solid var(--tev-border);padding:7px 10px;border-radius:10px}.tev .tev-option input:not([type=radio]){border:0;padding:6px;min-height:35px;flex:1;min-width:0}.tev-option>span{font-weight:750;font-size:.84rem;color:#638097}.tev-option.is-correct{border-color:#78b892;background:#f3fbf5}.tev-option.is-correct input{background:transparent}.tev-question .tev-form-grid:last-child{margin-top:17px}.tev-add-question{display:flex;gap:12px;flex-wrap:wrap;margin:15px 0 24px}.tev-practice{background:#f8fafc;border:1px solid #dbe5ef;border-radius:13px;padding:22px;margin:20px 0}.tev-practice h3{display:flex;align-items:center;gap:9px;margin-bottom:12px}.tev-practice p{font-size:.9rem;margin-bottom:14px}.tev-practice ul{font-size:.88rem;color:#47627a;margin-bottom:19px}.tev-editor-footer{position:sticky;bottom:12px;z-index:15;background:#fffffffa;border:1px solid #cddce8;box-shadow:0 8px 30px #15385816;border-radius:14px;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:25px}.tev-editor-footer>span{font-size:.76rem;max-width:370px;color:var(--tev-muted)}.tev-editor-footer>div{display:flex;gap:10px;flex-wrap:wrap}.tev-evaluation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.tev-evaluation-card{display:flex;flex-direction:column;margin:0;min-width:0}.tev-evaluation-card h3{font-size:1.13rem}.tev-evaluation-card>p{font-size:.86rem;color:var(--tev-muted);overflow-wrap:anywhere}.tev-evaluation-meta{display:flex;flex-direction:column;gap:5px;color:#5f7589;font-size:.79rem;margin:17px 0 19px}.tev-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:8px}.tev-empty{text-align:center;padding:40px 20px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:var(--tev-muted)}.tev-empty h3{color:#385975}.tev-empty p{max-width:500px;margin:0}.tev-empty .tev-button{margin-top:12px}.tev-summary{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--tev-border);border-radius:14px;background:#fff;padding:18px 5px;margin-bottom:22px;gap:5px}.tev-summary>div{text-align:center;border-right:1px solid var(--tev-border);padding:0 12px}.tev-summary>div:last-child{border:0}.tev-summary strong{display:block;font-size:1.6rem;line-height:1.3;letter-spacing:-.03em;color:#234e75}.tev-summary span{font-size:.78rem;color:#6b8093}.tev-table-wrap{overflow:auto;background:#fff;border:1px solid var(--tev-border);border-radius:13px;max-width:100%}.tev table{border-collapse:collapse;width:100%;text-align:left;font-size:.82rem}.tev th{background:#f1f5f8;color:#61788c;font-weight:750;white-space:nowrap;font-size:.72rem;padding:14px 16px;border-bottom:1px solid var(--tev-border)}.tev td{padding:15px 16px;border-bottom:1px solid #e7edf2;vertical-align:middle}.tev td small{display:block}.tev td .tev-button{font-size:.76rem;padding:8px 11px}.tev tr:last-child td{border-bottom:0}.tev-legacy{margin-top:24px}.tev-legacy summary{font-weight:750;font-size:.97rem;cursor:pointer}.tev-legacy-row{display:grid;grid-template-columns:minmax(150px,1fr) auto auto;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--tev-border)}.tev-legacy-row small{display:block}.tev-legacy-row .tev-table-wrap{grid-column:1/-1}.tev-legacy-row:last-child{border-bottom:0}.tev-modal-backdrop{position:fixed;inset:0;z-index:10000;background:#0d223c8c;display:flex;align-items:center;justify-content:center;padding:24px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.tev-modal{width:min(850px,100%);max-height:calc(100dvh - 48px);overflow:auto;background:#fff;border-radius:20px;padding:28px;box-shadow:0 24px 80px #0003}.tev-modal-small{max-width:520px}.tev-modal .tev-heading{align-items:flex-start}.tev-modal-actions{display:flex;justify-content:flex-end;gap:12px;position:sticky;bottom:-28px;background:#fff;border-top:1px solid var(--tev-border);padding:18px 0;margin-top:20px}.tev-review-question{padding:18px 0;border-top:1px solid var(--tev-border)}.tev-review-question h3{font-size:.98rem;margin-bottom:12px}.tev-answer{border-radius:10px;padding:12px 15px;background:#f2f6fa;margin:12px 0}.tev-answer small{text-transform:uppercase;letter-spacing:.05em;font-size:.66rem;font-weight:750}.tev-answer p{font-size:.9rem}.tev-review-question label{max-width:260px;margin-top:12px}.tev-attachments{display:flex;gap:9px;flex-wrap:wrap;margin:13px 0}.tev-attachments .tev-button{max-width:100%;overflow-wrap:anywhere;font-size:.79rem}.tev-attached-file{display:flex;align-items:center;gap:9px;max-width:100%;border:1px solid #cbdce8;border-radius:9px;background:#fff;padding:7px 10px;font-size:.81rem}.tev-attached-file>span{overflow-wrap:anywhere;min-width:0}.tev-feedback{padding:15px 17px;background:#f1f0fa;border:1px solid #e0ddef;border-radius:11px;margin:15px 0;color:#554b7b;font-size:.86rem}.tev-feedback p{margin-top:5px}.tev-preview-question{margin:20px 0}.tev-preview-question h3{font-size:1rem;margin-bottom:17px}.tev-preview-question h3 small{display:block;font-size:.75rem;margin-top:4px}.tev-choice{display:flex;align-items:center;gap:12px;border:1px solid var(--tev-border);border-radius:10px;padding:13px 15px;margin:9px 0;cursor:pointer;background:#fff;font-size:.91rem;font-weight:450}.tev-choice:hover,.tev-choice.selected{background:#edf5fc;border-color:#79a7cd}.tev-timer{font-size:1.25rem;font-weight:800;display:flex;gap:8px;align-items:center;padding:12px 15px;border:1px solid #c5dbe9;background:#edf6fd;color:#225782;border-radius:13px;white-space:nowrap;font-variant-numeric:tabular-nums}.tev-timer-urgent{background:#fff0ec;color:#a63e27;border-color:#edc8bb}.tev-result-heading{display:flex;align-items:center;gap:12px;margin-bottom:20px}.tev-result-heading h3{margin-bottom:6px}.tev-result .tev-summary{grid-template-columns:repeat(3,1fr)}.tev-attempt-fields:disabled{opacity:.75}.tev-student{padding-top:0}.tev-spin{animation:tev-spin .9s linear infinite}@keyframes tev-spin{to{transform:rotate(360deg)}}@media(max-width:760px){.tev-card{padding:19px}.tev-heading{align-items:flex-start;gap:15px;flex-wrap:wrap;margin-bottom:20px}.tev-heading>.tev-button{min-height:40px}.tev-methods{grid-template-columns:1fr 1fr;gap:10px}.tev-form-grid{grid-template-columns:1fr;gap:0}.tev-class-picks,.tev-evaluation-grid{grid-template-columns:1fr}.tev-summary{grid-template-columns:repeat(2,1fr);row-gap:18px}.tev-summary>div:nth-child(2){border:0}.tev-summary strong{font-size:1.4rem}.tev-summary span{font-size:.75rem}.tev-editor-footer{flex-direction:column;align-items:stretch;bottom:calc(80px + env(safe-area-inset-bottom));padding:12px;gap:10px}.tev-editor-footer>span{max-width:none}.tev-editor-footer>div{display:grid;grid-template-columns:1fr 1fr;gap:7px}.tev-editor-footer .tev-button{font-size:.76rem;padding:10px}.tev-modal-backdrop{padding:12px;align-items:flex-end}.tev-modal{padding:20px;max-height:calc(100dvh - 24px);border-radius:18px}.tev-modal-actions{bottom:-20px}.tev-legacy-row{grid-template-columns:1fr 1fr;gap:9px}.tev-legacy-row>div:first-child{grid-column:1/-1}.tev-legacy-row .tev-button{font-size:.78rem}.tev-practice{padding:17px}.tev-table-wrap{border-radius:10px}.tev td,.tev th{padding:12px}.tev-result .tev-summary{grid-template-columns:repeat(3,1fr)}.tev-result .tev-summary>div{padding:0 5px}.tev-result .tev-summary strong{font-size:1.3rem}.tev-result .tev-summary>div:nth-child(2){border-right:1px solid var(--tev-border)}.tev-file-name{display:block;margin:0 0 12px}.tev-question-head{gap:5px}.tev-icon-actions{gap:2px}.tev-icon-actions button{min-width:32px;min-height:36px}.tev-option{padding:7px;gap:7px}.tev-student .tev-heading h2{font-size:1.35rem}.tev-preview{padding:17px}}@media(prefers-reduced-motion:reduce){.tev-spin{animation:none}.tev button{transition:none}}.teacher-phone-header,.teacher-phone-bottom,.teacher-shortcuts{display:none}.teacher-phone-drawer{position:fixed;inset:0 auto 0 0;margin:0;width:min(330px,90vw);max-width:90vw;height:100dvh;max-height:100dvh;border:0;background:#102744;color:#fff;padding:20px 15px;overflow-y:auto;padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(20px,env(safe-area-inset-bottom))}.teacher-phone-drawer::backdrop{background:#071a3199}.teacher-phone-drawer header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.teacher-phone-drawer header div{display:grid;gap:4px}.teacher-phone-drawer small{color:#c2d6ee;font-size:12px}.teacher-phone-drawer nav{display:grid;gap:5px}.teacher-phone-drawer button{font:inherit;display:flex;gap:12px;align-items:center;min-height:46px;background:transparent;color:inherit;border:0;border-radius:10px;padding:12px;text-align:left;cursor:pointer;font-size:14px}.teacher-phone-drawer nav button[aria-current=page]{background:#185bb3}.teacher-phone-drawer .pwa-install{margin:20px 0 12px;padding:12px;background:#173b67;border:1px solid #41658b}.teacher-phone-drawer .pwa-install>button{color:#fff;background:#185bb3;width:100%}.teacher-phone-drawer .pwa-install-help{color:#17375f;background:#fff;padding:14px}.teacher-phone-drawer .pwa-installed{color:#d9e9fc}@media(max-width:767px){.teaching-portal{display:flex;flex-direction:column;min-height:100dvh;background:#08356e}.teaching-portal .teach-sidebar,.teaching-portal .teach-topbar,.teaching-portal .teach-mobile-account{display:none}.teacher-phone-header{display:flex;align-items:center;gap:10px;min-height:78px;padding:12px;padding-top:max(12px,env(safe-area-inset-top));background:linear-gradient(110deg,#093c7a,#062859);color:#fff}.teacher-phone-header>img{height:46px;width:min(220px,calc(100% - 110px));object-fit:contain;padding:5px;background:#fff;border-radius:9px;margin-right:auto}.teacher-phone-header button{width:44px;height:44px;flex-shrink:0;display:grid;place-items:center;border:0;border-radius:10px;background:transparent;color:#fff}.teacher-phone-header .teacher-phone-avatar{border:2px solid white;border-radius:50%;overflow:hidden;background:#dbeaff;color:#154a88;padding:0}.teacher-phone-avatar img{height:100%;width:100%;object-fit:cover}.teaching-portal .teach-main{width:100%;max-width:none;margin:0;padding:16px 10px calc(100px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;background:#f3f8fd;flex:1;min-width:0}.teacher-phone-bottom{position:fixed;inset:auto 0 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));min-height:70px;padding:6px 6px max(8px,env(safe-area-inset-bottom));border-radius:15px 15px 0 0;background:linear-gradient(110deg,#093b77,#081f43);z-index:40;box-shadow:0 -3px 15px #0e275210}.teaching-portal .teacher-phone-bottom button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:50px;padding:4px;border:0;background:none;color:#dce9fd;font-size:10px}.teaching-portal .teacher-phone-bottom button span{display:grid;place-items:center}.teaching-portal .teacher-phone-bottom button[aria-current=page]{color:#ff4560}.teaching-portal .teacher-phone-bottom button:nth-child(3) span{background:#ee183b;color:#fff;width:49px;height:49px;border:3px solid #f3f8fd;border-radius:50%;margin-top:-18px}.teacher-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0 22px}.teaching-portal .teacher-shortcuts button{display:flex;align-items:center;gap:8px;min-height:76px;padding:14px 10px;background:#fff;border:1px solid #dce9f7;border-radius:14px;color:#164c91;text-align:left;font-size:12px;font-weight:600}.teaching-portal .teacher-shortcuts button span{flex:1;min-width:0}.teaching-portal .teacher-shortcuts button>svg{flex-shrink:0}.teaching-portal .teacher-shortcuts button:nth-child(2){background:#1356ae;color:#fff;border-color:#1356ae}.teaching-portal .welcome-home{padding:0!important}.teaching-portal .welcome-panel,.teaching-portal .welcome-start-cue{display:none}.teaching-portal .teach-course-selector{margin-bottom:16px}.teaching-portal .teach-course-selector select{font-size:16px}.teaching-portal .teach-savebar{bottom:calc(84px + env(safe-area-inset-bottom))}.teaching-portal input,.teaching-portal select,.teaching-portal textarea{max-width:100%}.teaching-portal .teach-footer{margin-top:12px}}@media(max-width:767px){.teaching-portal .welcome-hero{min-height:0;padding:22px 0 8px}.teaching-portal .welcome-photo{width:116px;height:116px;margin-bottom:10px}.teaching-portal .welcome-identity h2{font-size:24px}.teaching-portal .welcome-identity p{font-size:15px}.teaching-portal .welcome-identity i{margin:12px auto 18px}.teaching-portal .welcome-hero h3{font-size:26px;margin-bottom:8px}.teaching-portal .welcome-footer{position:static;margin:18px 12px 8px;max-width:100%}.teaching-portal .welcome-social{bottom:calc(82px + env(safe-area-inset-bottom));z-index:39}}.teaching-portal,.teaching-admin{--teach-ink:#172b46;--teach-muted:#63738a;--teach-line:#dce4ed;--teach-blue:#245fc5;--teach-navy:#112b48;--teach-paper:#fff;--teach-bg:#f4f7fa;color:var(--teach-ink);font-family:Outfit,Inter,system-ui,sans-serif;line-height:1.5;box-sizing:border-box}.teaching-portal *,.teaching-admin *{box-sizing:border-box}.teaching-portal{display:flex;min-height:100dvh;background:var(--teach-bg);isolation:isolate}.teaching-portal button,.teaching-admin button{font:inherit;cursor:pointer}.teaching-portal button:disabled,.teaching-admin button:disabled{cursor:not-allowed;opacity:.52}.teaching-portal button:focus-visible,.teaching-admin button:focus-visible,.teaching-portal a:focus-visible,.teaching-admin a:focus-visible{outline:3px solid #79aaf8;outline-offset:3px}.teach-sidebar{width:232px;flex:0 0 232px;position:sticky;top:0;height:100dvh;background:var(--teach-navy);padding:30px 16px 20px;color:#dae7f5;display:flex;flex-direction:column}.teach-brand{display:flex;align-items:center;gap:12px;padding:0 12px;margin-bottom:44px;letter-spacing:.01em}.teach-brand>div{width:45px;height:45px;background:#d7e8ff;color:#14365b;border-radius:14px;display:grid;place-items:center;transform:rotate(-5deg)}.teach-brand>span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#a8bdd5}.teach-brand strong{display:block;color:#fff;font-size:17px;letter-spacing:-.03em;text-transform:none;line-height:1.2}.teach-brand{padding:0;gap:9px}.teach-institution-logo{width:50px;height:50px;object-fit:contain;border-radius:12px;background:#fff;padding:5px;flex-shrink:0}.teach-brand>span{font-size:10px;letter-spacing:.05em}.teach-mobile-institution-logo{display:none}@media(max-width:900px){.teach-mobile-institution-logo{display:block;width:44px;height:44px;object-fit:contain;margin-right:12px;flex-shrink:0}.teach-topbar>div{flex:1;min-width:0}.teach-topbar strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.teach-sidebar nav{display:flex;flex-direction:column;gap:6px}.teach-sidebar nav button{display:flex;align-items:center;gap:12px;text-align:left;padding:14px 12px;border:0;border-radius:11px;background:transparent;color:#b6c8db;font-size:13px;font-weight:600;min-height:48px}.teach-sidebar nav button:hover{background:#ffffff0c;color:#fff}.teach-sidebar nav button.active{background:#e6efff;color:#16365a;box-shadow:0 5px 15px #06182d22}.teach-sidebar nav svg{flex-shrink:0}.teach-sidebar-bottom{margin-top:auto;display:grid;gap:9px;padding:22px 10px 0;border-top:1px solid #ffffff14}.teach-sidebar-bottom>button{display:flex;align-items:center;gap:9px;background:transparent;color:#bdd0e3;border:0;padding:8px 0;font-size:12px;text-align:left;min-height:36px}.teach-sidebar-bottom .pwa-install{margin:0 0 8px;padding:0;background:transparent;border:0}.teach-sidebar-bottom .pwa-install>button{font-size:11px;width:100%;padding:10px;background:#23496f;border:1px solid #426180;color:#fff}.teach-sidebar-bottom .pwa-installed{font-size:11px;color:#cfe1f7}.teach-main{width:calc(100% - 232px);padding:0 36px 24px;max-width:1600px;min-width:0;margin:0 auto}.teach-topbar{height:91px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--teach-line);margin-bottom:27px}.teach-topbar>div{display:grid;gap:3px}.teach-topbar strong{font-size:15px;font-weight:650}.teach-top-avatar{height:43px;width:43px;border:1px solid #d3dfef;border-radius:50%;background:#e3edfb;color:#285283;overflow:hidden;display:grid;place-items:center;padding:0}.teach-top-avatar img{width:100%;height:100%;object-fit:cover}.teach-eyebrow{font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.13em;color:#74859b;display:block;line-height:1.5}.teach-course-selector{display:flex;justify-content:space-between;align-items:center;gap:18px;background:#fff;padding:19px 22px;border:1px solid var(--teach-line);border-radius:16px;margin-bottom:29px}.teach-course-selector>div{min-width:0;flex:1}.teach-course-selector label{display:block}.teach-course-selector select{font:inherit;font-size:19px;font-weight:650;letter-spacing:-.02em;color:#173f6c;border:0;border-radius:0;background:transparent;padding:3px 30px 3px 0;max-width:100%;cursor:pointer;min-height:38px}.teach-course-selector p{margin:2px 0 0;color:var(--teach-muted);font-size:12px}.teach-section{margin-bottom:35px;min-width:0}.teach-section-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:21px}.teach-section h1,.teach-section h2,.teach-section h3{color:var(--teach-ink);margin:0;font-weight:700;letter-spacing:-.025em;line-height:1.23}.teach-section h2{font-size:25px;margin:4px 0 7px}.teach-section h3{font-size:18px}.teach-section-title p{font-size:13px;color:var(--teach-muted);margin:0}.teach-primary,.teach-secondary,.teach-icon-btn,.teach-link-button{font:inherit;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;min-height:43px;font-size:12px;font-weight:650;text-decoration:none;cursor:pointer;transition:background .15s,box-shadow .15s;border:1px solid transparent;padding:10px 16px;white-space:nowrap}.teach-primary{color:#fff!important;background:var(--teach-blue,#245fc5);border-color:var(--teach-blue,#245fc5);box-shadow:0 3px 8px #245fc519}.teach-primary:hover{background:#174b9e}.teach-secondary{background:#fff;color:#32577d;border-color:#d4dfeb}.teach-secondary:hover{background:#eff5fd}.teach-icon-btn{width:42px;min-width:42px;padding:0;border-color:var(--teach-line,#dce4ed);background:#fff;color:#5b7290}.teach-link-button{background:none;color:#35659e;border:0;padding:7px 0;min-height:34px;font-size:12px;box-shadow:none}.teach-action-row{display:flex;gap:8px;align-items:center}.teach-hero{position:relative;overflow:hidden;border-radius:20px;padding:34px;display:grid;grid-template-columns:1fr 245px;gap:25px;background:#e9f0fa;border:1px solid #d8e4f4;margin-bottom:21px}.teach-hero:before{content:"";width:390px;height:390px;position:absolute;border:1px solid #c5d7ee;border-radius:50%;right:-135px;top:-168px;pointer-events:none}.teach-hero:after{content:"";width:260px;height:260px;position:absolute;border:1px solid #c5d7ee;border-radius:50%;right:-75px;top:-108px;pointer-events:none}.teach-hero>div{position:relative;z-index:1}.teach-hero .teach-eyebrow{color:#6380a5}.teach-hero h1{font-size:clamp(25px,2.6vw,37px);line-height:1.17;font-weight:650;margin:13px 0;color:#1c3b60;max-width:570px}.teach-hero p{font-size:13px;max-width:425px;color:#61748e;line-height:1.7;margin:0 0 20px}.teach-hero>div>button{display:inline-flex;gap:12px;align-items:center;font-weight:650;background:#173d68;color:#fff;border:0;border-radius:10px;padding:12px 18px;font-size:12px;min-height:44px}.teach-hero .teach-hero-note{background:#fffdf7;border:1px solid #e6dfce;border-radius:15px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:23px;box-shadow:0 7px 20px #4466880a;gap:10px}.teach-hero-note>svg{color:#b29048}.teach-hero-note>span{font-size:11px;font-weight:650;color:#8d7953}.teach-hero-note>strong{font-size:16px;line-height:1.35;color:#4b4538}.teach-hero-note>small{font-size:10px;color:#91856e}.teach-hero .teach-hero-note>button{background:#f1e8d4;color:#635030;min-height:39px;padding:9px 12px;font-size:11px}.teach-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:0 0 34px}.teach-overview-grid>button{text-align:left;display:grid;grid-template-columns:1fr auto;align-content:start;align-items:start;background:#fff;border:1px solid var(--teach-line);border-radius:15px;padding:21px 23px;gap:3px;color:#476789;box-shadow:0 3px 10px #25446603}.teach-overview-grid>button:hover{border-color:#a3bfdf;box-shadow:0 6px 16px #25446609}.teach-overview-grid strong{font-size:29px;color:#24486f;font-weight:650;line-height:1;grid-column:1;margin-top:17px;grid-row:2}.teach-overview-grid svg{grid-column:2;grid-row:1 / span 2;color:#7798bf}.teach-overview-grid span{grid-column:1 / -1;font-size:13px;font-weight:650;color:#344d6c;margin-top:5px}.teach-overview-grid small{grid-column:1 / -1;font-size:10px;color:#8491a4;margin-top:2px}.teach-card{background:#fff;border:1px solid var(--teach-line);border-radius:16px;padding:24px;box-shadow:0 3px 12px #1d416503}.teach-meetings{display:grid;gap:12px}.teach-meeting{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid var(--teach-line);padding:20px 22px;border-radius:15px}.teach-meeting.cancelled{opacity:.72}.teach-meeting-icon{display:grid;place-items:center;flex-shrink:0;background:#edf3fc;color:#487aaf;width:49px;height:49px;border-radius:14px}.teach-meeting-content{flex:1;min-width:0}.teach-meeting-content .teach-eyebrow{font-size:9px;color:#778ba2}.teach-meeting-content h3{font-size:16px;margin:4px 0}.teach-meeting-content p{font-size:11px;color:var(--teach-muted);margin:0}.teach-meeting-actions{display:flex;flex-direction:column;align-items:center;gap:3px}.teach-meeting-actions .teach-primary{min-height:38px;font-size:11px;padding:9px 13px}.teach-meeting-actions .teach-link-button{font-size:10px;min-height:23px;padding:2px}.teach-inline-empty{display:flex;align-items:center;gap:20px;padding:25px;color:#7391ad}.teach-inline-empty strong{font-size:13px;color:#526a82}.teach-inline-empty p{font-size:12px;margin:4px 0 0;color:#8b9caf}.teach-notice{display:flex;align-items:center;gap:10px;justify-content:flex-start;font-size:13px;padding:14px 17px;border:1px solid;border-radius:12px;margin:0 0 18px;line-height:1.5}.teach-notice>svg{flex-shrink:0}.teach-notice.error{background:#fff3f0;border-color:#f0c7bb;color:#8f3c29}.teach-notice.success{background:#eff8f2;border-color:#c9e3d2;color:#2d7145}.teach-notice button{margin-left:auto;min-height:34px;white-space:nowrap;border:1px solid currentColor;background:transparent;font:inherit;font-size:11px;color:inherit;padding:5px 9px;border-radius:7px;cursor:pointer}.teach-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;padding:48px 25px;background:#ffffffb3;border:1px dashed #ccd9e6;border-radius:16px;text-align:center;color:#8699ad;min-height:140px}.teach-empty h2,.teach-empty h3{color:#4c6682;font-size:18px;margin:0}.teach-empty p{font-size:13px;color:#8796a7;margin:0;max-width:480px}.teach-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:19px}.teach-toolbar>label:not(.teach-search){display:flex;align-items:center;gap:10px;font-size:12px;color:#5e7690}.teach-toolbar select,.teach-fields select,.teach-fields input,.teach-fields textarea,.teach-attendance-summary input{font:inherit;color:#30465e;background:#fff;border:1px solid #d2dce8;border-radius:9px;min-height:42px;padding:9px 12px;font-size:13px;width:100%;outline:none;transition:border-color .15s,box-shadow .15s}.teach-toolbar select{width:auto;max-width:250px;font-size:12px}.teach-toolbar select:focus,.teach-fields input:focus,.teach-fields textarea:focus,.teach-fields select:focus,.teach-search:focus-within,.teach-attendance-summary input:focus{border-color:#729cdf;box-shadow:0 0 0 3px #437bcb12}.teach-search{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid #d2dce8;border-radius:9px;padding:0 12px;min-height:42px;color:#8799af;flex:1;min-width:200px}.teach-search input{width:100%;font:inherit;background:none;border:0;outline:none;font-size:12px;color:#425b79;padding:10px 0;min-height:40px}.teach-fields{padding:0;border:0;display:grid;grid-template-columns:1fr 1fr;gap:18px;min-width:0;margin:0}.teach-fields>label,.teach-time-fields>label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;color:#526a83;min-width:0}.teach-fields textarea{resize:vertical;line-height:1.65;min-height:90px}.teach-fields input::placeholder,.teach-fields textarea::placeholder{color:#9aa7b7}.teach-wide{grid-column:1 / -1}.teach-fields small{font-size:11px;font-weight:400;line-height:1.5;color:#8291a4}.teach-editor{margin-bottom:27px;scroll-margin-top:20px;border-color:#b8cee9;box-shadow:0 10px 35px #2c527210}.teach-editor .teach-section-title{padding-bottom:16px;border-bottom:1px solid #e6edf5}.teach-editor-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:22px;padding-top:19px;border-top:1px solid #e6edf5}.teach-editor-footer>span{font-size:11px;color:#8898aa}.teach-editor-footer>div{display:flex;gap:9px;flex-wrap:wrap}.teach-materials{padding:19px;background:#f8fafc;border:1px dashed #cbd8e7;border-radius:11px}.teach-materials>strong{display:flex;align-items:center;gap:7px;font-size:13px}.teach-materials p{font-size:11px;color:#7c8da1;margin:5px 0 14px}.teach-materials .teach-secondary{font-size:11px;min-height:37px}.teach-attachment{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:#5c7591;padding:8px 0;border-bottom:1px solid #e2e9f1;margin-bottom:8px}.teach-attachment button{border:0;background:none;color:#9b5961;display:grid;place-items:center;padding:6px}.teach-attachment span{overflow-wrap:anywhere}.teach-class-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.teach-class-card{display:flex;flex-direction:column;align-items:stretch;padding:23px}.teach-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.teach-number{color:#5a779b;font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.teach-badge{font-size:9px;font-weight:650;line-height:1.4;border-radius:6px;padding:4px 7px;display:inline-flex;gap:5px;align-items:center;white-space:nowrap}.teach-badge.green{background:#eaf5ef;color:#3c8061}.teach-badge.amber{background:#faf1dc;color:#987638}.teach-badge.blue{background:#e8f0ff;color:#426da4}.teach-muted{font-size:10px;color:#8d9aab}.teach-class-card h3{font-size:20px;line-height:1.3;margin:8px 0 10px}.teach-class-excerpt{white-space:pre-line;overflow-wrap:anywhere;color:#738298;font-size:12px;line-height:1.8;margin:0 0 18px;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;min-height:45px}.teach-file-list{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 18px}.teach-file-list button{display:flex;align-items:center;gap:5px;font:inherit;font-size:10px;color:#5b7ca2;background:#f2f6fc;border:1px solid #e0e9f5;border-radius:7px;padding:6px 8px;max-width:100%}.teach-file-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teach-card-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;padding-top:15px;border-top:1px solid #e8edf3;margin-top:auto}.teach-card-actions button,.teach-card-actions a{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;background:none;border:0;color:#557598;font-size:11px;font-weight:550;text-decoration:none;min-height:31px;padding:0;cursor:pointer}.teach-card-actions .teach-danger{color:#a66868}.teach-small{font-size:11px;color:#8b9aac;margin:0 0 17px}.teach-details{margin-top:12px}.teach-details summary{font-size:11px;color:#7187a0;padding:10px 0;cursor:pointer}.teach-details .teach-meeting{margin-top:8px}.teach-attendance-summary{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:20px;align-items:center;padding:23px;background:#fff;border:1px solid var(--teach-line);border-radius:15px;margin-bottom:18px}.teach-attendance-summary label{font-size:11px;color:#667c95;display:grid;gap:7px;font-weight:600}.teach-attendance-summary>div{display:flex;flex-direction:column;border-left:1px solid #e3eaf3;padding-left:24px;gap:3px}.teach-attendance-summary strong{font-size:29px;font-weight:650;color:#436886;line-height:1}.teach-attendance-summary>div:nth-child(2) strong{color:#478065}.teach-attendance-summary>div:nth-child(3) strong{color:#ad786e}.teach-attendance-summary span{font-size:11px;color:#8a99aa}.teach-student-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.teach-student-card{border:1px solid #dbe4ed;border-radius:14px;background:#fff;padding:18px;border-left:3px solid #c6d3e2}.teach-student-card.present{border-left-color:#6bb491}.teach-student-card.absent{border-left-color:#d1a19a}.teach-student-info{display:flex;align-items:center;gap:13px;margin-bottom:17px}.teach-student-info>div:last-child{min-width:0}.teach-student-info h3{font-size:14px;font-weight:650;line-height:1.4}.teach-student-info>div>span{font-size:10px;color:#8694a5}.teach-avatar{width:51px;height:51px;flex:0 0 51px;overflow:hidden;border-radius:13px;background:#edf1f6;color:#7b96b1;position:relative;display:grid;place-items:center}.teach-avatar>span{font-size:16px!important;font-weight:650;color:#7992aa!important}.teach-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}.teach-attendance-buttons{display:grid;grid-template-columns:1fr 1fr 38px;gap:7px}.teach-attendance-buttons button{border:1px solid #dde5ee;color:#8797aa;background:#fff;border-radius:8px;display:flex;gap:5px;align-items:center;justify-content:center;padding:8px 4px;font-size:10px;min-height:38px}.teach-attendance-buttons button.selected.present{background:#eaf5ef;border-color:#b6d9c6;color:#4d896a}.teach-attendance-buttons button.selected.absent{background:#fcf0ed;border-color:#e7bfb5;color:#ae7364}.teach-attendance-buttons button.selected.pending{background:#edf1f7;border-color:#bfcddd;color:#5d7895}.teach-savebar{display:flex;align-items:center;justify-content:space-between;gap:17px;padding:18px 23px;border:1px solid #cbdbee;background:#edf3fc;border-radius:14px;margin-top:23px;position:sticky;bottom:15px;box-shadow:0 5px 20px #1232520c;z-index:5}.teach-savebar>div{display:flex;flex-direction:column;gap:3px}.teach-savebar strong{font-size:13px;color:#406083}.teach-savebar span{font-size:10px;color:#8195ad}.teach-checkin{display:flex;align-items:center;text-align:center;flex-direction:column;padding:39px 25px;gap:13px}.teach-checkin-symbol{width:75px;height:75px;display:grid;place-items:center;border-radius:23px;background:#eaf1fc;color:#6188bb;margin-bottom:6px}.teach-checkin h3{font-size:22px}.teach-checkin p{font-size:12px;color:#8492a4;margin:0}.teach-checkin .teach-primary{padding:13px 24px;font-size:14px;min-height:49px;margin-top:7px}.teach-checkin small{font-size:10px;color:#9aa8b7;max-width:390px;line-height:1.6;margin-top:2px}.teach-history-heading{font-size:16px!important;margin:29px 0 15px!important}.teach-checkin-history{padding:9px 22px}.teach-checkin-history>div{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid #e7edf4;color:#8aa0b7}.teach-checkin-history>div:last-child{border-bottom:0}.teach-checkin-history strong{font-size:12px;color:#657f99;flex:1}.teach-checkin-history span:not(.teach-badge){display:flex;align-items:center;gap:4px;font-size:10px}.teach-footer{font-size:10px;color:#abb5c1;text-align:center;margin:43px 0 5px}.teach-loading{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;text-align:center;width:100%;color:#7894b2;padding:30px}.teach-loading h2{font-size:19px;color:#436486}.teach-loading p{font-size:13px;margin:0}.teach-spin{animation:teach-spin 1.1s linear infinite}@keyframes teach-spin{to{transform:rotate(360deg)}}.teach-page-tabs{display:flex;gap:7px;padding:5px;background:#e9eef5;border:1px solid #dbe4ef;border-radius:12px;max-width:max-content;margin-bottom:29px}.teach-page-tabs button{font:inherit;font-size:12px;padding:10px 15px;min-height:40px;border:0;border-radius:8px;background:transparent;color:#73849b;cursor:pointer}.teach-page-tabs button.active{background:#fff;color:#385f8c;box-shadow:0 2px 5px #1d41650b}.teach-assigned-teacher{display:flex;align-items:center;gap:13px;padding:16px;background:#f0f5fc;border-radius:11px;border:1px solid #dbe6f5;color:#7493b8}.teach-assigned-teacher>div{display:grid;gap:3px}.teach-assigned-teacher span{font-size:10px;color:#7f98b8}.teach-assigned-teacher strong{font-size:13px;color:#56779e}.teach-time-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.teach-fields .teach-checkbox{flex-direction:row;align-items:flex-start;padding:15px 17px;background:#fafbfd;border:1px solid #e0e7ef;border-radius:10px;gap:11px}.teach-checkbox input{width:17px;min-height:17px;height:17px;margin:1px 0 0;flex-shrink:0;accent-color:#245fc5}.teach-checkbox small{display:block;margin-top:4px}.teach-virtual-card h3{font-size:18px;margin:8px 0}.teach-virtual-card>p{font-size:12px;color:#72849b;line-height:1.7;margin:8px 0}.teach-virtual-date{display:flex;align-items:center;gap:7px}.teach-virtual-card .teach-small{font-size:10px;margin-bottom:18px}.teach-mobile-account{display:none}.teach-class-preview{background:#f4f8fd;border:1px solid #cbdcf2;border-radius:12px;padding:22px;margin-top:12px}.teach-class-preview h3{font-size:20px;margin:9px 0}.teach-class-preview small{font-size:11px;color:#6984a4}.teach-class-preview>p{font-size:13px;color:#586f8a;line-height:1.8;white-space:pre-line;overflow-wrap:anywhere;margin:16px 0 20px}@media(min-width:1500px){.teach-main{padding-right:55px;padding-left:55px}.teach-class-grid,.teach-student-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1100px){.teach-sidebar{width:205px;flex-basis:205px;padding-left:11px;padding-right:11px}.teach-main{width:calc(100% - 205px);padding:0 23px 24px}.teach-sidebar nav button{font-size:11px;gap:10px;padding:12px 10px}.teach-hero{grid-template-columns:1fr 205px;padding:27px;gap:20px}.teach-hero h1{font-size:28px}.teach-hero .teach-hero-note{padding:19px}.teach-meeting{padding:17px;gap:13px}.teach-meeting-icon{width:41px;height:41px;border-radius:12px}.teach-meeting-content h3{font-size:14px}.teach-overview-grid>button{padding:18px}.teach-class-card{padding:19px}.teach-editor-footer{align-items:flex-start;flex-direction:column}.teach-attendance-summary{padding:18px;gap:14px}.teach-attendance-summary>div{padding-left:15px}.teach-section-title{gap:12px}.teach-section h2{font-size:23px}}@media(max-width:850px){.teach-sidebar{width:76px;flex-basis:76px;align-items:center;padding:23px 10px}.teach-brand{padding:0;margin-bottom:33px}.teach-brand>span{display:none}.teach-brand>div{width:39px;height:39px;border-radius:12px}.teach-sidebar nav{width:100%;gap:8px}.teach-sidebar nav button{padding:13px;justify-content:center}.teach-sidebar nav button span{display:none}.teach-sidebar-bottom{padding:15px 0;align-items:center}.teach-sidebar-bottom .pwa-install,.teach-sidebar-bottom .pwa-installed{display:none}.teach-sidebar-bottom>button{font-size:0;justify-content:center}.teach-sidebar-bottom>button svg{width:20px;height:20px}.teach-main{width:calc(100% - 76px);padding:0 22px 22px}.teach-topbar{height:75px;margin-bottom:20px}.teach-course-selector{margin-bottom:22px;padding:16px 18px}.teach-course-selector select{font-size:17px}.teach-hero{padding:23px;grid-template-columns:1fr 185px}.teach-hero h1{font-size:26px}.teach-hero p{font-size:12px}.teach-hero-note>strong{font-size:14px}.teach-section h2{font-size:22px}.teach-overview-grid{gap:10px}.teach-overview-grid>button{padding:16px}.teach-overview-grid strong{font-size:26px}.teach-overview-grid span{font-size:11px}.teach-overview-grid small{font-size:9px}.teach-overview-grid svg{width:19px}.teach-student-info h3{font-size:12px}.teach-student-card{padding:14px}.teach-attendance-buttons button{font-size:9px}.teach-avatar{width:43px;height:43px;flex-basis:43px}.teach-checkin h3{font-size:20px}}@media(max-width:600px){.teaching-portal{display:block}.teach-sidebar{width:100%;height:auto;position:static;display:contents;padding:0}.teach-brand,.teach-sidebar-bottom{display:none}.teach-sidebar nav{position:fixed;bottom:0;left:0;right:0;z-index:30;background:#fff;border-top:1px solid #d6e2f0;box-shadow:0 -4px 18px #1e436409;display:flex;flex-direction:row;gap:3px;padding:6px 5px calc(6px + env(safe-area-inset-bottom));overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.teach-sidebar nav button{flex:1 0 88px;display:flex;flex-direction:column;gap:4px;min-height:59px;padding:7px 8px;justify-content:center;color:#90a1b5;font-size:9px}.teach-sidebar nav button.active{background:#edf3fc;color:#3568a4;box-shadow:none}.teach-sidebar nav button span{display:block;white-space:nowrap;font-size:9px}.teach-sidebar nav button svg{width:19px;height:19px}.teach-main{width:100%;padding:0 16px 95px}.teach-topbar{height:74px;margin-bottom:17px}.teach-topbar strong{font-size:14px}.teach-top-avatar{height:39px;width:39px}.teach-topbar .teach-eyebrow{font-size:9px}.teach-course-selector{padding:14px 15px;gap:10px;border-radius:13px;margin-bottom:21px}.teach-course-selector select{font-size:16px;max-width:100%;width:100%}.teach-course-selector p{font-size:10px}.teach-course-selector .teach-eyebrow{font-size:8px}.teach-course-selector .teach-icon-btn{width:34px;min-width:34px;min-height:34px}.teach-hero{grid-template-columns:1fr;padding:24px 21px;gap:20px;border-radius:16px}.teach-hero h1{font-size:29px;margin:11px 0 12px}.teach-hero p{font-size:12px;margin-bottom:16px;max-width:340px}.teach-hero .teach-hero-note{padding:16px 17px;display:grid;grid-template-columns:28px 1fr auto;gap:4px 12px;align-items:center}.teach-hero-note>svg{grid-row:1 / span 2;width:23px}.teach-hero-note>span{font-size:9px;grid-column:2}.teach-hero-note>strong{font-size:12px;grid-column:2;grid-row:2}.teach-hero .teach-hero-note>button{grid-column:3;grid-row:1 / span 2;font-size:10px;padding:9px 10px;max-width:95px;white-space:normal;line-height:1.3}.teach-hero-note>small{grid-column:2;font-size:8px}.teach-overview-grid{gap:9px;margin-bottom:27px}.teach-overview-grid>button{padding:13px 11px;gap:3px}.teach-overview-grid svg{width:18px;height:18px;grid-column:1;grid-row:1}.teach-overview-grid strong{font-size:23px;margin-top:10px}.teach-overview-grid span{font-size:10px;line-height:1.3}.teach-overview-grid small{font-size:8px;line-height:1.45;margin-top:4px}.teach-section{margin-bottom:25px}.teach-section-title{align-items:flex-start;gap:10px;margin-bottom:17px}.teach-section-title .teach-eyebrow{font-size:9px}.teach-section h2{font-size:21px}.teach-section-title p{font-size:11px;line-height:1.6}.teach-section-title .teach-primary,.teach-section-title .teach-secondary{font-size:10px;padding:9px 11px;min-height:38px;white-space:normal;flex-shrink:0}.teach-section-title>.teach-link-button{display:none}.teach-meeting{display:grid;grid-template-columns:38px 1fr;padding:16px;gap:11px}.teach-meeting-icon{width:38px;height:38px;border-radius:10px}.teach-meeting-content h3{font-size:14px}.teach-meeting-content p{font-size:10px}.teach-meeting-content .teach-eyebrow{font-size:8px}.teach-meeting-actions{grid-column:1 / -1;flex-direction:row;justify-content:space-between;border-top:1px solid #ecf0f5;padding-top:12px;margin-top:3px}.teach-meeting-actions .teach-primary{font-size:10px;min-height:35px}.teach-meeting-actions .teach-link-button{font-size:9px}.teach-inline-empty{padding:19px;gap:13px}.teach-inline-empty strong{font-size:12px}.teach-inline-empty p{font-size:11px}.teach-card{padding:19px;border-radius:14px}.teach-toolbar{gap:8px;margin-bottom:15px}.teach-search{min-width:100%;flex:1}.teach-toolbar>select{flex:1;width:0;max-width:none;font-size:10px;min-height:39px;padding:8px}.teach-toolbar .teach-secondary{font-size:10px;min-height:37px;padding:8px 11px}.teach-class-grid,.teach-student-grid{grid-template-columns:1fr;gap:12px}.teach-class-card h3{font-size:20px}.teach-class-excerpt{font-size:12px;-webkit-line-clamp:4}.teach-fields{gap:14px;grid-template-columns:1fr 1fr}.teach-fields>label{font-size:11px}.teach-fields input,.teach-fields select,.teach-fields textarea{font-size:16px;padding:10px;min-height:43px}.teach-fields textarea{font-size:14px}.teach-fields small{font-size:10px}.teach-editor .teach-section-title h3{font-size:17px}.teach-editor-footer{gap:13px}.teach-editor-footer>div{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.teach-editor-footer .teach-primary,.teach-editor-footer .teach-secondary{font-size:10px;padding:10px 9px;white-space:normal;min-height:42px;line-height:1.4}.teach-materials{padding:14px}.teach-attendance-summary{grid-template-columns:repeat(3,1fr);gap:16px 13px;padding:16px}.teach-attendance-summary label{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between}.teach-attendance-summary input{width:170px;font-size:16px}.teach-attendance-summary>div{border-left:0;padding:0;text-align:center}.teach-attendance-summary strong{font-size:27px}.teach-attendance-summary span{font-size:10px}.teach-student-info h3{font-size:15px}.teach-student-info>div>span{font-size:10px}.teach-avatar{width:53px;height:53px;flex-basis:53px}.teach-student-card{padding:17px}.teach-attendance-buttons button{font-size:11px;min-height:42px}.teach-attendance-buttons{grid-template-columns:1fr 1fr 44px;gap:8px}.teach-savebar{bottom:84px;padding:14px;border-radius:11px;gap:9px}.teach-savebar strong{font-size:11px}.teach-savebar span{font-size:9px}.teach-savebar .teach-primary{font-size:10px;padding:10px;min-height:41px}.teach-small{font-size:10px}.teach-empty{padding:34px 20px}.teach-empty h2,.teach-empty h3{font-size:17px}.teach-empty p{font-size:11px}.teach-checkin{padding:31px 18px}.teach-checkin h3{font-size:22px}.teach-checkin p{font-size:12px}.teach-checkin .teach-primary{font-size:13px}.teach-checkin-history{padding:7px 15px}.teach-checkin-history>div{gap:8px;flex-wrap:wrap}.teach-checkin-history strong{font-size:11px}.teach-checkin-history .teach-badge{font-size:8px}.teach-checkin-history>div>svg{width:16px}.teach-notice{font-size:11px;padding:12px 13px;flex-wrap:wrap;gap:8px}.teach-notice button{margin-left:0;font-size:10px}.teach-page-tabs{width:100%;max-width:none;gap:4px;margin-bottom:23px}.teach-page-tabs button{flex:1;font-size:10px;padding:9px 10px}.teach-time-fields{gap:7px}.teach-fields .teach-checkbox{padding:12px;gap:9px}.teach-checkbox input{width:17px;min-height:17px;height:17px}.teach-assigned-teacher{padding:14px}.teach-assigned-teacher strong{font-size:12px}.teach-section-title .teach-action-row{flex-shrink:0;gap:5px}.teach-action-row .teach-icon-btn{width:34px;min-width:34px;min-height:36px}.teach-virtual-card h3{font-size:18px}.teach-footer{font-size:9px;margin-top:29px}.teach-mobile-account{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:25px}.teach-mobile-account .pwa-install{width:100%;display:flex;justify-content:center}.teach-mobile-account>button{border:1px solid #d8e3ef;background:#fff;color:#8297af;display:flex;align-items:center;gap:6px;font-size:10px;padding:9px;border-radius:8px}}@media(prefers-reduced-motion:reduce){.teach-spin{animation:none}.teaching-portal *,.teaching-admin *{scroll-behavior:auto!important;transition:none!important}}
