@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-base:#0d1117;--bg-surface:#161b22;--bg-elevated:#21262d;--text-main:#c9d1d9;--text-muted:#8b949e;--text-light:#fff;--accent-primary:#6366f1;--accent-hover:#4f46e5;--accent-gradient:linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--status-present:#238636;--status-present-bg:#23863626;--status-absent:#da3633;--status-absent-bg:#da363326;--status-late:#d29922;--status-late-bg:#d2992226;--border-color:#30363d;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--shadow-sm:0 1px 2px #0003;--shadow-md:0 4px 6px #0000004d;--shadow-lg:0 10px 15px #0006}*{box-sizing:border-box;margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}body{background-color:var(--bg-base);color:var(--text-main);-webkit-font-smoothing:antialiased;line-height:1.5}body:before{content:"";pointer-events:none;opacity:.9;z-index:-1;background:radial-gradient(circle at 0 0,#6366f129,#0000 28%),radial-gradient(circle at 100% 0,#2386361f,#0000 22%),linear-gradient(#ffffff05,#0000 22%);position:fixed;inset:0}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.text-center{text-align:center}.text-muted{color:var(--text-muted)}.text-gradient{background:var(--accent-gradient);color:#0000;-webkit-background-clip:text;background-clip:text;display:inline-block}.flex{display:flex}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.w-full{width:100%}.btn{border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--accent-gradient);color:var(--text-light);border:none}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 0 15px #6366f166}.btn-outline{color:var(--text-main);border-color:var(--border-color);background:0 0}.btn-outline:hover:not(:disabled){background-color:var(--bg-elevated);border-color:var(--text-muted)}.btn-danger{color:#ff7b72;background-color:#0000;border-color:#ff7b724d}.btn-danger:hover:not(:disabled){color:#fff;background-color:#da3633;border-color:#da3633}.card{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.5rem;transition:transform .2s,box-shadow .2s,border-color .2s}.card-hover:hover{box-shadow:var(--shadow-md);border-color:var(--text-muted);transform:translateY(-2px)}.input-group{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.input-label{color:var(--text-main);font-size:.875rem;font-weight:500}.input-field{background-color:var(--bg-base);border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-main);padding:.625rem .875rem;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.input-field:focus{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 3px #6366f126}.input-field[type=date]::-webkit-calendar-picker-indicator{filter:invert();opacity:1;cursor:pointer}.input-field[type=month]::-webkit-calendar-picker-indicator{filter:invert();opacity:1;cursor:pointer}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background-color:#00000080;justify-content:center;align-items:center;padding:1rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:500px;box-shadow:var(--shadow-lg);padding:2rem;animation:.3s cubic-bezier(.16,1,.3,1) slideUp}.grid{display:grid}.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))}@media (width<=768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes attendancePulse{0%{transform:scale(1);box-shadow:0 0 #6366f180}70%{transform:scale(1.08);box-shadow:0 0 0 10px #6366f100}to{transform:scale(1);box-shadow:0 0 #6366f100}}.badge{text-transform:uppercase;border-radius:9999px;align-items:center;padding:.15rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-present{background-color:var(--status-present-bg);color:var(--status-present)}.badge-absent{background-color:var(--status-absent-bg);color:var(--status-absent)}.badge-late{background-color:var(--status-late-bg);color:var(--status-late)}.list-item{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1rem;display:flex}.list-item:last-child{border-bottom:none}.app-layout{background:var(--bg-base);grid-template-columns:240px 1fr;min-height:100vh;display:grid}.app-main{flex-direction:column;min-height:100vh;display:flex;overflow-x:hidden}.app-page-content{flex:1;padding:1.5rem 2rem 2rem;animation:.3s ease-out slideUp}.sidebar{z-index:30;background:linear-gradient(#13152a 0%,#0f1120 100%);border-right:1px solid #ffffff0f;flex-direction:column;justify-content:space-between;height:100vh;padding:1.5rem 1rem;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-top{flex-direction:column;gap:2rem;display:flex}.sidebar-logo{align-items:center;gap:.75rem;padding:.25rem .5rem;text-decoration:none;display:flex}.sidebar-logo-icon{background:var(--accent-gradient);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex;box-shadow:0 4px 14px #6366f159}.sidebar-logo-text{color:#fff;letter-spacing:-.02em;font-size:1.05rem;font-weight:700}.sidebar-nav{flex-direction:column;gap:.3rem;display:flex}.sidebar-link{border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.75rem;width:100%;padding:.7rem 1rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.sidebar-link:hover{color:var(--text-main);background:#ffffff0d}.sidebar-link--active{background:var(--accent-gradient);color:#fff;font-weight:600;box-shadow:0 4px 16px #6366f14d}.sidebar-link--active:hover{background:var(--accent-gradient);color:#fff}.sidebar-logout{color:var(--text-muted);margin-top:1rem}.sidebar-logout:hover{color:#ff7b72;background:#da36331a}.dash-header{background:var(--bg-surface);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:1.5rem;padding:1.25rem 2rem;display:flex}.dash-header-title{color:var(--text-light);letter-spacing:-.02em;font-size:1.5rem;font-weight:700}.dash-header-actions{align-items:center;gap:1rem;display:flex}.dash-header-search{align-items:center;display:flex;position:relative}.dash-header-search-icon{color:var(--text-muted);pointer-events:none;position:absolute;left:.85rem}.dash-header-search-input{border:1px solid var(--border-color);background:var(--bg-elevated);color:var(--text-main);border-radius:999px;width:220px;padding:.6rem .85rem .6rem 2.4rem;font-size:.85rem;transition:border-color .2s,box-shadow .2s}.dash-header-search-input::placeholder{color:var(--text-muted)}.dash-header-search-input:focus{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 3px #6366f126}.dash-header-icon-btn{border:1px solid var(--border-color);background:var(--bg-elevated);width:40px;height:40px;color:var(--text-main);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.dash-header-icon-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.dash-header-avatar{background:var(--accent-gradient);color:#fff;cursor:default;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:.8rem;font-weight:700;display:flex;box-shadow:0 2px 10px #6366f159}.dash-content{grid-template-columns:1fr 300px;gap:1.5rem;animation:.3s ease-out slideUp;display:grid}.dash-main{flex-direction:column;gap:1.5rem;min-width:0;display:flex}.dash-side{flex-direction:column;gap:1.5rem;display:flex}.dash-stat-row{flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.dash-stat-chip{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);align-items:center;gap:.75rem;min-width:160px;padding:.75rem 1.25rem;display:flex}.dash-stat-chip-icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.dash-stat-chip-icon--blue{color:#818cf8;background:#6366f126}.dash-stat-chip-icon--purple{color:#a78bfa;background:#8b5cf626}.dash-stat-chip-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;display:block}.dash-stat-chip-value{color:var(--text-light);font-size:1.35rem;font-weight:700;display:block}.dash-time-badge{color:#93c5fd;background:#63a6f11f;border:1px solid #63a6f140;border-radius:999px;align-items:center;gap:.5rem;margin-left:auto;padding:.6rem 1.1rem;font-size:.9rem;font-weight:600;display:inline-flex}.chart-panel{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem}.chart-panel-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.chart-panel-title{color:var(--text-light);font-size:1.1rem;font-weight:700}.chart-panel-badge{color:#a5b4fc;cursor:default;background:#6366f11f;border:1px solid #6366f133;border-radius:999px;padding:.4rem .85rem;font-size:.78rem;font-weight:600}.chart-svg{width:100%;height:auto;display:block}.income-panel{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.35rem}.income-panel-header{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.income-panel-title{color:var(--text-light);margin-bottom:.2rem;font-size:1.1rem;font-weight:700}.income-panel-subtitle{color:var(--text-muted);font-size:.8rem}.income-panel-badge{color:#818cf8;background:#6366f11f;border:1px solid #6366f140;border-radius:20px;padding:.35rem .75rem;font-size:.75rem;font-weight:600}.income-grid{grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.25rem;display:grid}.income-card{border:1px solid var(--border-color);border-radius:var(--radius-md);background:#ffffff06;flex-direction:column;gap:.35rem;padding:1rem;transition:transform .2s,border-color .2s;display:flex}.income-card:hover{border-color:#6366f14d;transform:translateY(-2px)}.income-card-top{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.income-card-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.income-card-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.income-card-icon--blue{color:#60a5fa;background:#3b82f626}.income-card-icon--green{color:#4ade80;background:#22c55e26}.income-card-icon--amber{color:#fbbf24;background:#f59e0b26}.income-card-icon--purple{color:#c084fc;background:#a855f726}.income-card-value{color:var(--text-light);letter-spacing:-.02em;font-size:1.25rem;font-weight:800}.income-card-sub{color:var(--text-muted);font-size:.73rem}.income-card-sub--green{color:#4ade80;font-weight:600}.income-card-sub--amber{color:#fbbf24;font-weight:600}.income-progress-container{border-radius:var(--radius-md);background:#ffffff05;border:1px solid #ffffff0d;padding:.85rem 1rem}.income-progress-labels{color:var(--text-muted);justify-content:space-between;margin-bottom:.5rem;font-size:.8rem;display:flex}.income-progress-labels strong{color:var(--text-light)}.income-progress-bar{background:#ffffff14;border-radius:4px;width:100%;height:8px;overflow:hidden}.income-progress-fill{background:linear-gradient(90deg,#6366f1,#4ade80);border-radius:4px;height:100%;transition:width .5s ease-out}.cal-widget{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem}.cal-widget-title{color:var(--text-light);text-align:center;margin-bottom:.85rem;font-size:1.05rem;font-weight:700}.cal-nav{justify-content:center;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.cal-nav-btn{border:1px solid var(--border-color);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.cal-nav-btn:hover{color:var(--text-light);border-color:var(--accent-primary)}.cal-nav-label{color:var(--text-main);text-align:center;min-width:130px;font-size:.85rem;font-weight:600}.cal-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.cal-day-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;padding:.3rem 0;font-size:.65rem;font-weight:600}.cal-day{color:var(--text-main);cursor:default;aspect-ratio:1;border-radius:50%;justify-content:center;align-items:center;padding:.35rem;font-size:.8rem;transition:background .15s;display:flex}.cal-day--blank{visibility:hidden}.cal-day--weekend{color:#f87171}.cal-day--today{background:var(--accent-primary);color:#fff;font-weight:700;box-shadow:0 2px 10px #6366f166}.notice-panel{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem}.notice-panel-title{color:var(--text-light);text-align:center;margin-bottom:1rem;font-size:1.05rem;font-weight:700}.notice-list{flex-direction:column;gap:.75rem;display:flex}.notice-card{border-radius:var(--radius-md);border:1px solid var(--border-color);background:#ffffff06;align-items:center;gap:.85rem;padding:.85rem 1rem;transition:border-color .2s,transform .2s;display:flex}.notice-card:hover{border-color:var(--accent-primary);transform:translate(2px)}.dash-greeting-banner{border-radius:var(--radius-lg);background:linear-gradient(135deg,#6366f129,#a855f71f);border:1px solid #6366f147;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:1.25rem 1.5rem;display:flex}.dash-greeting-title{color:var(--text-light);letter-spacing:-.01em;margin-bottom:.25rem;font-size:1.4rem;font-weight:800}.dash-greeting-sub{color:var(--text-muted);font-size:.85rem}.dash-add-btn{white-space:nowrap;border-radius:10px;align-items:center;gap:.4rem;padding:.6rem 1.1rem;font-weight:600;display:flex}button.cal-day{cursor:pointer;background:0 0;border:none}button.cal-day:hover{color:#fff;background:#6366f133}.cal-widget-header{text-align:center;margin-bottom:.85rem}.cal-widget-hint{color:var(--text-muted);font-size:.72rem;display:block}.notice-panel-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.notice-add-icon-btn{color:#818cf8;cursor:pointer;background:#6366f126;border:1px solid #6366f14d;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex}.notice-add-icon-btn:hover{background:var(--accent-primary);color:#fff}.notice-card-desc{color:var(--text-muted);margin-bottom:.3rem;font-size:.78rem;line-height:1.3}.notice-card-del-btn{color:var(--text-muted);cursor:pointer;opacity:.6;background:0 0;border:none;padding:4px;transition:opacity .2s,color .2s}.notice-card-del-btn:hover{opacity:1;color:#ef4444}.notice-empty{color:var(--text-muted);text-align:center;padding:1.5rem 0;font-size:.85rem}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-container{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:520px;padding:1.5rem;animation:.25s cubic-bezier(.16,1,.3,1) modalFadeIn;box-shadow:0 20px 40px #00000080}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-header{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.modal-title-group{align-items:center;gap:.6rem;display:flex}.modal-icon{color:#818cf8}.modal-title{color:var(--text-light);font-size:1.15rem;font-weight:700}.modal-close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px}.modal-close-btn:hover{color:var(--text-light);background:#ffffff14}.modal-form{flex-direction:column;gap:1rem;display:flex}.form-group{flex-direction:column;gap:.35rem;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-label{color:var(--text-muted);font-size:.8rem;font-weight:600}.form-input,.form-textarea,.form-select{border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-light);background:#ffffff08;outline:none;padding:.65rem .85rem;font-size:.9rem;transition:border-color .2s}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--accent-primary)}.form-select option{color:#fff;background:#161b22}.modal-footer{justify-content:flex-end;gap:.75rem;margin-top:.5rem;display:flex}.dash-header-notif-wrapper{position:relative}.dash-header-bell-badge{color:#fff;background:#ef4444;border:2px solid #161b22;border-radius:10px;padding:2px 5px;font-size:.65rem;font-weight:800;line-height:1;position:absolute;top:-4px;right:-4px}.dash-notif-dropdown{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);z-index:100;width:320px;position:absolute;top:48px;right:0;overflow:hidden;box-shadow:0 16px 32px #00000080}.dash-notif-header{border-bottom:1px solid var(--border-color);color:var(--text-light);justify-content:space-between;align-items:center;padding:.85rem 1rem;font-size:.85rem;display:flex}.dash-notif-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none}.dash-notif-body{max-height:300px;overflow-y:auto}.dash-notif-item{border-bottom:1px solid #ffffff0a;padding:.75rem 1rem}.dash-notif-item:last-child{border-bottom:none}.dash-notif-item-title{color:var(--text-light);margin-bottom:.15rem;font-size:.82rem;font-weight:600;display:block}.dash-notif-item-desc{color:var(--text-muted);margin-bottom:.2rem;font-size:.75rem}.dash-notif-item-date{color:#818cf8;font-size:.7rem}.dash-notif-empty{text-align:center;color:var(--text-muted);padding:1.5rem;font-size:.8rem}.notice-card-icon-badge{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.notice-card-icon-badge--purple{color:#c084fc;background:#a855f726}.notice-card-icon-badge--amber{color:#fbbf24;background:#f59e0b26}.notice-card-icon-badge--emerald{color:#34d399;background:#10b98126}.notice-card-content{flex:1}.notice-card-title{color:var(--text-light);margin-bottom:.25rem;font-size:.88rem;font-weight:600;display:block}.notice-card-meta{justify-content:space-between;align-items:center;display:flex}.notice-card-date{color:var(--text-muted);font-size:.75rem}.notice-card-tag{border-radius:12px;padding:.15rem .5rem;font-size:.68rem;font-weight:600}.notice-card-tag--purple{color:#d8b4fe;background:#a855f733}.notice-card-tag--amber{color:#fde68a;background:#f59e0b33}.notice-card-tag--emerald{color:#a7f3d0;background:#10b98133}.dash-loading{height:60vh;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.dash-loading-spinner{border:3px solid #6366f133;border-top-color:var(--accent-primary);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1100px){.dash-content{grid-template-columns:1fr}.dash-side{grid-template-columns:1fr 1fr;gap:1rem;display:grid}}@media (width<=860px){.app-layout{grid-template-columns:1fr}.sidebar{width:240px;transition:left .3s;position:fixed;left:-260px;box-shadow:4px 0 24px #00000080}.sidebar.open{left:0}.app-page-content,.dash-header{padding:1rem}.dash-header-search-input{width:160px}.dash-stat-row{flex-direction:column;align-items:stretch}.dash-time-badge{align-self:flex-start;margin-left:0}.dash-gallery-grid{grid-template-columns:repeat(2,1fr)}.dash-side{grid-template-columns:1fr}}.classes-shell{animation:.25s ease-out slideUp}.classes-shell>*{margin-bottom:1.5rem}.classes-shell>:last-child{margin-bottom:0}.classes-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.classes-title,.students-title,.reports-title{letter-spacing:-.02em;margin-bottom:.25rem;font-size:1.6rem;font-weight:700}.classes-stats-grid,.students-stats-grid,.reports-quick-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.reports-quick-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.classes-stat-card,.students-stat-card,.reports-stat-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:linear-gradient(#ffffff0a,#ffffff04);flex-direction:column;gap:.45rem;padding:1rem;display:flex}.classes-stat-card{margin-bottom:.35rem}.classes-stat-card span,.students-stat-card span,.reports-stat-label{color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}.classes-stat-card strong,.students-stat-card strong,.reports-stat-card strong{align-items:center;gap:.35rem;font-size:1.5rem;display:inline-flex}.class-card{position:relative;overflow:hidden}.class-card-elevated{background:linear-gradient(#ffffff0a,#ffffff04);border-color:#ffffff14;flex-direction:column;gap:1rem;min-height:100%;display:flex}.class-card-top{flex-direction:column;gap:.6rem;margin-bottom:.4rem;display:flex}.class-card-top>*{margin-bottom:.2rem}.class-card-top>:last-child{margin-bottom:0}.class-card-title-row{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.class-card-title{color:var(--text-main);letter-spacing:-.01em;font-size:1.1rem;font-weight:700}.class-card-subject{font-size:.88rem}.class-card-title-actions{align-items:center;gap:.25rem;display:flex}.class-card-edit{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:.2rem;display:inline-flex}.class-card-edit:hover{color:var(--accent-primary);background:#58a6ff1f}.class-card-delete{color:var(--status-absent);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.2rem}.class-card-delete:hover{background:#da36331f}.class-card:before{content:"";background:linear-gradient(90deg, var(--accent-primary), #238636b3);height:3px;position:absolute;inset:0 0 auto}.class-card-tags{flex-wrap:wrap;gap:.5rem;display:flex}.class-card-tag{letter-spacing:.04em;color:#c7cbff;text-transform:uppercase;background:#6366f124;border:1px solid #6366f159;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:600}.class-card-tag-muted{border-color:var(--border-color);color:var(--text-muted);background:#ffffff0d}.class-card-fee-line{color:#9ec6ff;text-transform:capitalize;background:#6366f11f;border:1px solid #6366f159;border-radius:999px;width:fit-content;padding:.35rem .55rem;font-size:.82rem}.class-card-description{margin-top:.1rem;font-size:.86rem;line-height:1.4}.classes-card-grid{align-items:stretch;margin-bottom:.5rem}.class-card-actions{border-top:1px solid var(--border-color);grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:auto;margin-bottom:.1rem;padding-top:.9rem;display:grid}.class-card-action-btn{gap:.35rem;width:100%;padding:.5rem .4rem;font-size:.74rem}.class-card-action-pay{background:var(--status-present);border-color:var(--status-present)}.class-empty-state{border-style:dashed}.attendance-shell{animation:.25s ease-out slideUp}.attendance-shell>*{margin-bottom:1.25rem}.attendance-shell>:last-child{margin-bottom:0}.attendance-back-link{text-decoration:none;display:inline-flex}.attendance-header{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.attendance-title{margin-bottom:.35rem;font-size:1.5rem;font-weight:700}.attendance-controls{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.attendance-saving-banner{border-radius:var(--radius-md);color:var(--text-main);background:#6366f11f;border:1px solid #6366f142;align-items:center;gap:.55rem;margin-top:1rem;padding:.6rem .9rem;font-size:.875rem;display:inline-flex}.attendance-saving-dot{background:var(--accent-primary);border-radius:999px;width:.65rem;height:.65rem;animation:1.2s ease-out infinite attendancePulse;box-shadow:0 0 #6366f180}.attendance-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;display:grid}.attendance-stat-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-direction:column;gap:.3rem;padding:.9rem 1rem;display:flex}.attendance-stat-card span{text-transform:uppercase;letter-spacing:.12em;font-size:.74rem}.attendance-stat-card strong{font-size:1.8rem;line-height:1}.attendance-stat-present{background:#2386361f;border-color:#23863647}.attendance-stat-present span,.attendance-stat-present strong{color:var(--status-present)}.attendance-stat-late{background:#d299221f;border-color:#d299224d}.attendance-stat-late span,.attendance-stat-late strong{color:var(--status-late)}.attendance-stat-absent{background:#da36331f;border-color:#da363347}.attendance-stat-absent span,.attendance-stat-absent strong{color:var(--status-absent)}.attendance-list-card{padding:0;overflow:hidden}.attendance-table-wrap{flex-direction:column;display:flex}.attendance-table-head{background-color:var(--bg-base);border-bottom:1px solid var(--border-color);text-transform:uppercase;letter-spacing:.08em;grid-template-columns:minmax(220px,1.5fr) minmax(140px,1fr) minmax(350px,2fr);align-items:center;padding:0;font-size:.8rem;font-weight:600;display:grid}.attendance-row{border-bottom:1px solid var(--border-color);grid-template-columns:minmax(220px,1.5fr) minmax(140px,1fr) minmax(350px,2fr);align-items:center;transition:background-color .2s;display:grid}.attendance-row:hover{background:#6366f10d}.attendance-cell{border-right:1px solid var(--border-color);min-width:0;padding:.9rem 1rem}.attendance-cell:last-child{border-right:none}.attendance-name{font-weight:600}.attendance-status-group{justify-content:center;align-items:center;gap:.5rem;display:flex}.attendance-status-btn{border-color:var(--border-color);color:var(--text-main);background:0 0;padding:.5rem .65rem;font-size:.76rem}.attendance-status-btn span{display:inline}.attendance-status-present.is-active{background:var(--status-present);border-color:var(--status-present);color:#fff}.attendance-status-late.is-active{background:var(--status-late);border-color:var(--status-late);color:#fff}.attendance-status-absent.is-active{background:var(--status-absent);border-color:var(--status-absent);color:#fff}.attendance-empty-state{border-top:1px solid var(--border-color)}.payments-shell{animation:.25s ease-out slideUp}.payments-shell>*{margin-bottom:1.25rem}.payments-shell>:last-child{margin-bottom:0}.payments-back-link{text-decoration:none;display:inline-flex}.payments-header{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.payments-title{font-size:1.5rem;font-weight:700}.payments-subtitle{margin-top:.35rem}.payments-controls{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.payments-period-pill{background:var(--bg-base);color:var(--text-muted);border-radius:var(--radius-md);border:1px solid var(--border-color);padding:.55rem .8rem;font-size:.84rem}.payments-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;display:grid}.payments-stat-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-direction:column;gap:.3rem;padding:.9rem 1rem;display:flex}.payments-stat-card span{text-transform:uppercase;letter-spacing:.12em;font-size:.74rem}.payments-stat-card strong{font-size:1.65rem;line-height:1.1}.payments-stat-paid{background:#2386361f;border-color:#23863647}.payments-stat-paid span,.payments-stat-paid strong{color:var(--status-present)}.payments-stat-unpaid{background:#da36331f;border-color:#da363347}.payments-stat-unpaid span,.payments-stat-unpaid strong{color:var(--status-absent)}.payments-stat-collected{background:#6366f11f;border-color:#6366f147}.payments-stat-collected span,.payments-stat-collected strong{color:var(--accent-primary)}.payments-stat-expected{background:#ffffff0a}.payments-list-card{padding:0;overflow:hidden}.payments-table-wrap{flex-direction:column;display:flex}.payments-table-head{background-color:var(--bg-base);border-bottom:1px solid var(--border-color);text-transform:uppercase;letter-spacing:.08em;grid-template-columns:minmax(220px,1.5fr) minmax(140px,1fr) minmax(320px,2fr);align-items:center;padding:0;font-size:.8rem;font-weight:600;display:grid}.payments-row{border-bottom:1px solid var(--border-color);grid-template-columns:minmax(220px,1.5fr) minmax(140px,1fr) minmax(320px,2fr);align-items:center;transition:background-color .2s;display:grid}.payments-row:hover{background:#6366f10d}.payments-cell{border-right:1px solid var(--border-color);min-width:0;padding:.9rem 1rem}.payments-cell:last-child{border-right:none}.payments-name{font-weight:600}.payments-status-group{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;display:flex}.payments-status-btn{border-color:var(--border-color);color:var(--text-main);background:0 0;padding:.5rem .75rem;font-size:.76rem}.payments-whatsapp-btn{color:#25d366;background:#25d36614;border-color:#25d36659}.payments-whatsapp-btn:hover:not(:disabled){background:#25d36629;border-color:#25d36699}.payments-status-paid.is-active{background:var(--status-present);border-color:var(--status-present);color:#fff}.payments-status-unpaid.is-active{background:var(--status-absent);border-color:var(--status-absent);color:#fff}.payments-empty-state{border-top:1px solid var(--border-color)}.students-shell{animation:.25s ease-out slideUp}.students-shell>*{margin-bottom:1.25rem}.students-shell>:last-child{margin-bottom:0}.students-back-link{text-decoration:none;display:inline-flex}.students-list-card{padding:0;overflow:hidden}.students-table-wrap{flex-direction:column;display:flex}.students-table-head{background-color:var(--bg-base);border-bottom:1px solid var(--border-color);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);grid-template-columns:minmax(220px,1.6fr) minmax(130px,1fr) minmax(130px,1fr) minmax(180px,1.4fr) 96px;align-items:center;padding:0;font-size:.82rem;font-weight:600;display:grid}.students-row{border-bottom:1px solid var(--border-color);grid-template-columns:minmax(220px,1.6fr) minmax(130px,1fr) minmax(130px,1fr) minmax(180px,1.4fr) 96px;align-items:center;transition:background-color .18s,transform .18s;display:grid}.students-row:hover{background:#6366f10f}.students-row:nth-child(2n){background:#ffffff03}.students-cell{border-right:1px solid var(--border-color);min-width:0;padding:.95rem 1rem}.students-cell:last-child{border-right:none}.students-cell-name{flex-direction:column;align-items:flex-start;gap:.15rem;display:flex}.students-cell-id,.students-cell-roll,.students-cell-contact{font-size:.86rem}.students-cell-actions{text-align:center;width:auto}.students-name-cell{gap:.3rem;font-weight:500}.students-profile-link{color:var(--text-main);font-weight:600;text-decoration:none}.students-gender{font-size:.75rem;font-weight:400}.students-row-actions{justify-content:center;gap:.5rem;width:auto;display:flex}.students-action-btn{cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.2rem;transition:background-color .2s}.students-action-edit{color:var(--text-muted)}.students-action-edit:hover{background:#ffffff14}.students-action-delete{color:var(--status-absent)}.students-action-delete:hover{background:#da36331f}.students-empty-state{border-top:1px solid var(--border-color)}.students-modal-switch{background:var(--bg-base);border:1px solid var(--border-color);border-radius:10px;gap:.5rem;margin-bottom:1.5rem;padding:.25rem;display:flex}.students-switch-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.55rem .7rem;font-size:.82rem;font-weight:600;transition:all .2s;display:inline-flex}.students-switch-btn:hover{color:var(--text-main)}.students-switch-btn.is-active{background:var(--bg-surface);color:var(--accent-primary);box-shadow:var(--shadow-sm)}.global-students-shell{animation:.25s ease-out slideUp}.global-students-shell>*{margin-bottom:1.25rem}.global-students-shell>:last-child{margin-bottom:0}.global-students-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.global-students-title{margin-bottom:.3rem;font-size:1.5rem;font-weight:700}.global-students-header-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.global-students-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.global-students-list-card{padding:0;overflow:hidden}.global-students-table-wrap{flex-direction:column;display:flex}.global-students-table-head{background-color:var(--bg-base);border-bottom:1px solid var(--border-color);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);grid-template-columns:minmax(220px,1.7fr) minmax(130px,1fr) minmax(120px,.9fr) minmax(180px,1.4fr) 88px;align-items:center;font-size:.82rem;font-weight:600;display:grid}.global-students-row{border-bottom:1px solid var(--border-color);grid-template-columns:minmax(220px,1.7fr) minmax(130px,1fr) minmax(120px,.9fr) minmax(180px,1.4fr) 88px;align-items:center;transition:background-color .18s;display:grid}.global-students-row:hover{background:#6366f10f}.global-students-cell{border-right:1px solid var(--border-color);min-width:0;padding:.9rem 1rem}.global-students-cell:last-child{border-right:none}.global-students-name-cell{font-weight:500}.global-students-profile-link{color:var(--text-main);align-items:center;gap:.45rem;text-decoration:none;display:inline-flex}.global-students-subline{margin-top:.2rem;font-size:.75rem;font-weight:400}.global-students-class-chip{background-color:var(--bg-base);border:1px solid var(--border-color);border-radius:1rem;padding:.2rem .6rem;font-size:.78rem}.global-students-row-actions{justify-content:center;display:flex}.global-students-action-btn{color:var(--status-absent);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.25rem}.global-students-action-btn:hover{background:#da36331f}.global-students-empty-state{border-top:1px solid var(--border-color)}.student-profile-shell{animation:.25s ease-out slideUp}.student-profile-layout{grid-template-columns:minmax(260px,.9fr) minmax(0,1.7fr);gap:1.5rem;display:grid}.student-profile-side,.student-profile-main{min-width:0}.student-profile-back{text-decoration:none;display:inline-flex}.student-profile-card{text-align:center;flex-direction:column;align-items:center;display:flex}.student-profile-avatar{background:var(--accent-gradient);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:84px;height:84px;margin-bottom:.85rem;font-size:2rem;font-weight:700;display:flex}.student-profile-name{margin-bottom:.25rem;font-size:1.4rem;font-weight:700}.student-profile-id{margin-bottom:1rem}.student-profile-meta{text-align:left;border-top:1px solid var(--border-color);flex-direction:column;gap:.55rem;width:100%;padding-top:.95rem;display:flex}.student-profile-meta-row{justify-content:space-between;gap:.75rem;font-size:.92rem;display:flex}.student-profile-main{flex-direction:column;gap:1rem;display:flex}.student-profile-main-head{margin-top:2.45rem}.student-profile-main-title{margin-bottom:.25rem;font-size:1.2rem;font-weight:700}.student-profile-class-list{flex-direction:column;gap:.9rem;display:flex}.student-profile-class-head{margin-bottom:.35rem}.student-profile-class-link{color:var(--text-main);text-decoration:none}.student-profile-class-title{align-items:center;gap:.45rem;font-size:1.1rem;font-weight:700;display:inline-flex}.student-profile-class-subtitle{margin-top:.3rem;font-size:.86rem}.student-profile-metric-grid{background-color:var(--bg-base);border:1px solid var(--border-color);border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-top:.85rem;padding:.9rem;display:grid}.student-profile-metric{flex-direction:column;gap:.3rem;display:flex}.student-profile-metric-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;font-size:.68rem}.student-profile-metric-value{font-size:1.2rem;font-weight:700}.student-profile-payment-value{white-space:nowrap;text-overflow:ellipsis;margin-top:.1rem;font-size:.84rem;font-weight:700;overflow:hidden}.student-profile-empty{border-style:dashed}.students-header,.reports-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.students-header-actions,.reports-header-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.reports-shell{animation:.25s ease-out slideUp}.reports-shell>*{margin-bottom:1.5rem}.reports-shell>:last-child{margin-bottom:0}.reports-hero{position:relative;overflow:hidden}.reports-hero:before{content:"";pointer-events:none;background:radial-gradient(circle,#6366f13d,#0000 68%);border-radius:50%;width:280px;height:280px;position:absolute;inset:auto -100px -120px auto}.reports-hero-copy{max-width:64ch}.reports-kicker{color:#c8ccff;letter-spacing:.08em;text-transform:uppercase;background:#6366f114;border:1px solid #6366f140;border-radius:999px;align-items:center;margin-bottom:.9rem;padding:.35rem .75rem;font-size:.75rem;font-weight:700;display:inline-flex}.reports-subtitle{max-width:58ch}.reports-meta-row{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.reports-meta-pill,.reports-fee-badge{border:1px solid var(--border-color);color:var(--text-main);background:#ffffff08;border-radius:999px;align-items:center;gap:.35rem;padding:.45rem .7rem;font-size:.78rem;font-weight:600;display:inline-flex}.reports-fee-badge-muted{color:var(--text-muted)}.reports-content-grid{grid-template-columns:.9fr 1.6fr;gap:1.5rem;display:grid}.reports-summary-card,.reports-attendance-card,.reports-fee-card{margin-bottom:.5rem;position:relative}.reports-summary-card{flex-direction:column;gap:1.5rem;display:flex}.reports-summary-stack{flex-direction:column;gap:1rem;display:flex}.reports-section-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.reports-section-title{letter-spacing:-.02em;margin-bottom:.35rem;font-size:1.2rem;font-weight:700}.reports-section-subtitle{color:var(--text-muted);font-size:.92rem;line-height:1.5}.reports-mini-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:.35rem;font-size:.72rem;font-weight:700}.reports-attendance-list{flex-direction:column;gap:.9rem;display:flex}.reports-attendance-item{border-bottom:1px solid var(--border-color);margin-bottom:.5rem;padding-bottom:.9rem}.reports-attendance-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.reports-attendance-row{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.65rem;display:flex}.reports-fee-head{margin-bottom:1.5rem}.reports-fee-range{border-bottom:1px solid var(--border-color);flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.25rem;display:flex}.reports-fee-range>div{flex-direction:column;gap:.5rem;display:flex}.reports-fee-grid{border-radius:var(--radius-lg);background:linear-gradient(#6366f10d,#ffffff05);border:1px solid #ffffff0a;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;padding:1rem;display:grid}.reports-fee-tile{text-align:center;border:1px solid #0000;border-radius:12px;padding:1rem}.reports-fee-tile span{letter-spacing:.12em;text-transform:uppercase;margin-bottom:.45rem;font-size:.72rem;font-weight:700;display:block}.reports-fee-tile strong{font-size:1.8rem;font-weight:700}.reports-fee-tile-success{background:#2386361f;border-color:#23863633}.reports-fee-tile-success span,.reports-paid{color:var(--status-present)}.reports-fee-tile-danger{background:#da36331f;border-color:#da363333}.reports-fee-tile-danger span,.reports-pending{color:var(--status-absent)}.reports-fee-tile-primary{background:#6366f11f;border-color:#6366f133}.reports-fee-tile-primary span{color:var(--accent-primary)}.reports-fee-tile-neutral{border-color:var(--border-color);background:#ffffff0a}.reports-fee-tile-neutral span{color:var(--text-muted)}.reports-fee-list{margin-top:1rem}.reports-fee-items{flex-direction:column;gap:.75rem;display:flex}.reports-fee-item-wrap{border-radius:12px;margin-bottom:.35rem}.reports-fee-item-wrap:last-child{margin-bottom:0}.reports-fee-item{border:1px solid var(--border-color);width:100%;color:var(--text-main);cursor:pointer;background:#ffffff05;border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 1rem;transition:transform .18s,border-color .18s,background .18s;display:flex}.reports-fee-item:hover{background:#6366f10d;border-color:#6366f173;transform:translateY(-1px)}.reports-fee-item-left,.reports-fee-item-right{align-items:center;gap:.85rem;display:flex}.reports-fee-item-left{min-width:0}.reports-fee-name{font-weight:600}.reports-fee-meta{color:var(--text-muted);font-size:.8rem}.reports-fee-status{text-transform:uppercase;letter-spacing:.08em;border:1px solid;border-radius:999px;align-items:center;padding:.25rem .6rem;font-size:.72rem;font-weight:700;display:inline-flex}.reports-fee-status.is-paid{color:var(--status-present);background:#23863614}.reports-fee-status.is-pending{color:var(--status-absent);background:#da363314}.reports-fee-amount{color:var(--accent-primary);font-weight:700}.reports-fee-chevron{transition:transform .18s}.reports-fee-details{border-left:3px solid var(--accent-primary);background:#6366f10d;border-radius:0 10px 10px 0;margin-top:.55rem;margin-bottom:.35rem;padding:1rem 1rem 1rem 1.1rem}.reports-fee-detail-row{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.65rem;display:flex}.reports-fee-detail-row:last-child{margin-bottom:0}.reports-fee-contact{border-top:1px solid var(--border-color);color:var(--text-muted);margin-top:.85rem;padding-top:.85rem;font-size:.9rem}.reports-fee-badge-row{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.auth-shell{justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.auth-layout{border:1px solid var(--border-color);background:var(--bg-surface);width:min(960px,100%);box-shadow:var(--shadow-lg);border-radius:18px;grid-template-columns:1.1fr .9fr;display:grid;overflow:hidden}.auth-showcase{border-right:1px solid var(--border-color);background:radial-gradient(circle at 15% 20%,#23863633,#0000 35%),radial-gradient(circle at 85% 80%,#6366f138,#0000 40%),#111821;padding:2.2rem}.auth-kicker{color:#b7c5d7;border:1px solid #fff3;border-radius:999px;margin-bottom:1.1rem;padding:.3rem .7rem;font-size:.75rem;display:inline-block}.auth-showcase h1{margin-bottom:.85rem;font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.05}.auth-showcase p{color:var(--text-muted);max-width:42ch}.auth-feature-list{gap:.7rem;margin-top:1.4rem;display:grid}.auth-feature-item{color:#d2d9e2;align-items:center;gap:.5rem;font-size:.9rem;display:inline-flex}.auth-form-card{box-shadow:none;border:none;border-radius:0;padding:2rem}.auth-link-row{justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;font-size:.875rem;display:flex}.auth-link-row a,.auth-text-button{color:#a5b4fc;cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:none}.auth-link-row a:hover,.auth-text-button:hover:not(:disabled){color:var(--text-light)}.auth-text-button:disabled{cursor:not-allowed;opacity:.65}.auth-help-panel{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-base);gap:.45rem;margin-top:1rem;padding:.85rem;font-size:.875rem;display:grid}.auth-help-title{color:var(--text-main);align-items:center;gap:.4rem;font-weight:700;display:inline-flex}.auth-help-panel a{color:var(--text-muted);text-decoration:none}.auth-help-panel a:hover{color:var(--text-light)}.settings-shell{animation:.25s ease-out slideUp}.settings-shell>*{margin-bottom:1.25rem}.settings-shell>:last-child{margin-bottom:0}.settings-back-link{color:var(--text-muted);align-items:center;gap:.5rem;text-decoration:none;display:inline-flex}.settings-back-link:hover{color:var(--text-main)}.settings-hero{position:relative;overflow:hidden}.settings-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#6366f140,#0000 70%);border-radius:50%;width:220px;height:220px;position:absolute;top:-90px;right:-80px}.settings-kicker{color:#c8ccff;text-transform:uppercase;letter-spacing:.08em;background:#6366f114;border:1px solid #6366f14d;border-radius:999px;align-items:center;margin-bottom:.8rem;padding:.3rem .75rem;font-size:.75rem;font-weight:700;display:inline-flex}.settings-hero h2{margin-bottom:.35rem;font-size:clamp(1.5rem,2.5vw,2.1rem)}.settings-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:1rem;display:grid}.settings-card{min-height:100%}.settings-card-head{margin-bottom:1rem}.settings-card-head h3{align-items:center;gap:.5rem;margin-bottom:.25rem;font-size:1.05rem;display:inline-flex}.settings-form{flex-direction:column;gap:.65rem;display:flex}.settings-form label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}.super-admin-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;gap:1rem}.super-admin-grid>.card{min-width:0}.selected-educator-stack{gap:.75rem;min-width:0;display:grid}.selected-educator-summary{background:var(--bg-elevated);width:100%;max-width:100%;padding:1rem;overflow:hidden}.selected-educator-summary-content{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1rem;min-width:0;display:grid}.selected-educator-details{min-width:0}.selected-educator-name{overflow-wrap:anywhere;margin-bottom:.45rem;font-weight:700}.selected-educator-meta{overflow-wrap:anywhere;align-items:flex-start;gap:.4rem;min-width:0;display:flex}.selected-educator-meta+.selected-educator-meta{margin-top:.35rem}.selected-educator-meta svg{flex:none;margin-top:.15rem}.selected-educator-meta span{min-width:0}.selected-educator-email span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.selected-educator-delete{flex:none;align-self:start}.settings-error,.settings-success{border-radius:10px;padding:.55rem .65rem;font-size:.84rem}.settings-error{color:var(--status-absent);background:#da36331a;border:1px solid #da363359}.settings-success{color:var(--status-present);background:#2386361a;border:1px solid #23863659}.settings-help-card{background:linear-gradient(#6366f11a,#ffffff04)}.settings-help-list{flex-direction:column;gap:.8rem;display:flex}.settings-help-item{background:#0d111799;border:1px solid #ffffff14;border-radius:10px;flex-direction:column;gap:.25rem;padding:.75rem;display:flex}.settings-help-item span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.settings-help-item a{color:var(--text-main);font-weight:600;text-decoration:none}.settings-help-item a:hover{color:#c8ccff}@media (width<=1024px){.classes-stats-grid,.students-stats-grid,.reports-quick-stats,.reports-content-grid,.reports-fee-grid,.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.selected-educator-summary-content{grid-template-columns:1fr}.selected-educator-delete{width:100%}}@media (width<=768px){.classes-header,.students-header,.reports-header{flex-direction:column;align-items:stretch}.students-header-actions,.reports-header-actions{width:100%}.global-students-header{flex-direction:column;align-items:stretch}.student-profile-layout{grid-template-columns:1fr}.student-profile-main-head{margin-top:0}.global-students-header-actions{width:100%}.global-students-header-actions .input-field,.students-header-actions .input-field,.reports-header-actions .input-field{width:100%;min-width:0!important}.classes-stats-grid,.students-stats-grid,.reports-quick-stats,.global-students-stats-grid{grid-template-columns:1fr}.student-profile-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.class-card-actions{grid-template-columns:1fr}.attendance-header{flex-direction:column;align-items:stretch}.attendance-controls{width:100%}.attendance-controls .input-field{width:100%!important;min-width:0!important}.payments-header{flex-direction:column;align-items:stretch}.payments-controls{width:100%}.payments-controls .input-field{width:100%!important;min-width:0!important}.payments-stats-grid{grid-template-columns:1fr}.payments-table-head{display:none}.payments-row{border:1px solid var(--border-color);background:#ffffff05;border-radius:12px;grid-template-columns:1fr;margin:.6rem}.payments-cell{border-bottom:1px dashed #ffffff14;border-right:none;padding:.65rem .85rem}.payments-cell:last-child{border-bottom:none}.payments-status-group{flex-wrap:wrap;justify-content:flex-start}.payments-status-btn{flex:1;min-width:110px}.attendance-stats-grid{grid-template-columns:1fr}.attendance-table-head{display:none}.attendance-row{border:1px solid var(--border-color);background:#ffffff05;border-radius:12px;grid-template-columns:1fr;margin:.6rem}.attendance-cell{border-bottom:1px dashed #ffffff14;border-right:none;padding:.65rem .85rem}.attendance-cell:last-child{border-bottom:none}.attendance-status-group{flex-wrap:wrap;justify-content:flex-start}.attendance-status-btn{flex:1;min-width:90px}.reports-content-grid,.reports-fee-grid{grid-template-columns:1fr}.reports-section-head,.reports-attendance-row,.reports-fee-item,.reports-fee-detail-row{flex-direction:column;align-items:flex-start}.reports-fee-item-right{justify-content:space-between;width:100%}.reports-fee-badge-row{justify-content:flex-start}.students-name-cell{flex-direction:column;align-items:flex-start;gap:.15rem}.students-table-head,.global-students-table-head{display:none}.students-row{border:1px solid var(--border-color);background:#ffffff05;border-radius:12px;grid-template-columns:1fr;gap:0;margin:.65rem}.students-cell{border-bottom:1px dashed #ffffff14;border-right:none;padding:.65rem .85rem}.students-cell:last-child{border-bottom:none}.students-row-actions{justify-content:flex-start}.global-students-row{border:1px solid var(--border-color);background:#ffffff05;border-radius:12px;grid-template-columns:1fr;margin:.65rem}.global-students-cell{border-bottom:1px dashed #ffffff14;border-right:none;padding:.65rem .85rem}.global-students-cell:last-child{border-bottom:none}.global-students-row-actions{justify-content:flex-start}.student-profile-meta-row{flex-direction:column;gap:.2rem}.students-cell-actions{width:100%}.students-modal-switch{flex-direction:column}.auth-layout{grid-template-columns:1fr}.auth-showcase{border-right:none;border-bottom:1px solid var(--border-color)}.settings-grid{grid-template-columns:1fr}}
