/* EduBloom ERP - single shared stylesheet for every page (Admin, SuperAdmin, login).
 * Every page has classes on <html>: page-<name>, mod-<module>, uses-<shared part>, tpl-<n> (shared template).
 * Rules shared by all pages are plain. Page-specific rules are wrapped in :where(...),
 * which adds no specificity, so each page renders exactly as it did with its own <style>. */

@keyframes blink{0%,100%{opacity:1;}50%{opacity:0.3;}}
@keyframes blink-v2{0%,100%{opacity:1;}50%{opacity:.3;}}
@keyframes blobF{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(25px,-25px) scale(1.07);}}
@keyframes cardIn{from{opacity:0;transform:scale(0.85) translateY(40px);}to{opacity:1;transform:scale(1) translateY(0);}}
@keyframes crownPulse{0%,100%{box-shadow:0 8px 24px rgba(247,37,133,0.4);}50%{box-shadow:0 12px 36px rgba(247,37,133,0.7);}}
@keyframes fadeIn{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}
@keyframes fadeUp-v2{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}
@keyframes logoF{0%,100%{filter:drop-shadow(0 0 14px rgba(67,97,238,0.5));}50%{filter:drop-shadow(0 0 26px rgba(247,37,133,0.7));}}
@keyframes logoF-v2{0%,100%{transform:translateY(0);}50%{transform:translateY(-10px);}}
@keyframes mIn{from{transform:scale(0.8);opacity:0;}to{transform:scale(1);opacity:1;}}
@keyframes modalIn{from{transform:scale(0.85);opacity:0;}to{transform:scale(1);opacity:1;}}
@keyframes orbF{0%,100%{transform:scale(1) translate(0,0);}50%{transform:scale(1.1) translate(20px,-20px);}}
@keyframes partF{0%{transform:translateY(100vh);opacity:0;}10%{opacity:1;}90%{opacity:1;}100%{transform:translateY(-50px);opacity:0;}}
@keyframes popIn{from{opacity:0;transform:scale(0.8);}to{opacity:1;transform:scale(1);}}
@keyframes rcptIn{from{transform:scale(0.8);opacity:0;}to{transform:scale(1);opacity:1;}}
@keyframes toastIn{from{transform:translateX(120%);opacity:0;}to{transform:translateX(0);opacity:1;}}
@keyframes tpIn{from{opacity:0;transform:translateY(-10px) scale(.97);}to{opacity:1;transform:translateY(0) scale(1);}}

:root:where(.mod-auth){--blue:#4361ee;--purple:#7209b7;--pink:#f72585;--orange:#fb8500;--green:#06d6a0;--teal:#4cc9f0}
:root:where(.uses-edubloom){--c-primary:#4361ee;--c-secondary:#7209b7;--c-accent:#f72585;--c-grad:linear-gradient(135deg,#4361ee,#7209b7);--c-grad-rev:linear-gradient(135deg,#7209b7,#4361ee);--c-success:#06d6a0;--c-danger:#e63946;--c-warning:#fb8500;--c-info:#4cc9f0;--c-purple:#7209b7;--c-bg:#f0f4ff;--c-white:#ffffff;--c-border:#eaeeff;--c-input-bg:#f8f9ff;--c-text:#1a1a2e;--c-muted:#888888;--c-subtle:#cccccc;--sb-width:250px;--sb-bg:#ffffff;--sb-border:#e8ecff;--sb-hover:rgba(67,97,238,0.08);--sb-active:linear-gradient(135deg,#4361ee,#7209b7);--sb-active-shadow:rgba(67,97,238,0.3);--sb-scroll-thumb:#ddd;--sb-head-grad:linear-gradient(135deg,#4361ee,#7209b7);--topbar-h:64px;--topbar-border:#eaeeff;--shadow-sm:0 2px 8px rgba(0,0,0,0.06);--shadow-md:0 4px 20px rgba(67,97,238,0.08);--shadow-lg:0 8px 32px rgba(67,97,238,0.14);--shadow-xl:0 16px 48px rgba(0,0,0,0.16);--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-2xl:24px;--t-fast:0.15s ease;--t-normal:0.25s ease;--t-slow:0.4s ease}
:where(.uses-edubloom) body.theme-fee{--c-primary:#06d6a0;--c-secondary:#0077b6;--c-grad:linear-gradient(135deg,#06d6a0,#0077b6);--c-bg:#f0fffb;--sb-head-grad:linear-gradient(135deg,#06d6a0,#0077b6);--sb-active:linear-gradient(135deg,#06d6a0,#0077b6);--sb-active-shadow:rgba(6,214,160,0.3);--sb-hover:rgba(6,214,160,0.1);--c-border:#d0f0e8;--c-input-bg:#f0fff8}
:where(.uses-edubloom) body.theme-teacher{--c-primary:#2dc653;--c-secondary:#0077b6;--c-grad:linear-gradient(135deg,#2dc653,#0077b6);--c-bg:#f0fff8;--sb-head-grad:linear-gradient(135deg,#06d6a0,#2dc653);--sb-active:linear-gradient(135deg,#06d6a0,#2dc653);--sb-active-shadow:rgba(45,198,83,0.3);--sb-hover:rgba(45,198,83,0.1)}
:where(.uses-edubloom) body.theme-hod{--c-primary:#f72585;--c-secondary:#7209b7;--c-grad:linear-gradient(135deg,#f72585,#7209b7);--c-bg:#fff5fb;--sb-head-grad:linear-gradient(135deg,#f72585,#7209b7);--sb-active:linear-gradient(135deg,#f72585,#7209b7);--sb-active-shadow:rgba(247,37,133,0.3);--sb-hover:rgba(247,37,133,0.08)}
:where(.uses-edubloom) body.theme-principal{--c-primary:#7209b7;--c-secondary:#3a0ca3;--c-grad:linear-gradient(135deg,#7209b7,#3a0ca3);--c-bg:#f5f0ff;--sb-head-grad:linear-gradient(135deg,#7209b7,#3a0ca3);--sb-active:linear-gradient(135deg,#7209b7,#3a0ca3);--sb-active-shadow:rgba(114,9,183,0.3)}
:where(.uses-edubloom) body.theme-mgmt{--c-primary:#4cc9f0;--c-secondary:#4361ee;--c-grad:linear-gradient(135deg,#4cc9f0,#4361ee);--c-bg:#f0faff;--sb-head-grad:linear-gradient(135deg,#4cc9f0,#4361ee);--sb-active:linear-gradient(135deg,#4cc9f0,#4361ee);--sb-active-shadow:rgba(76,201,240,0.3)}
:where(.uses-edubloom) body.theme-accountant{--c-primary:#fb8500;--c-secondary:#e63946;--c-grad:linear-gradient(135deg,#fb8500,#e63946);--c-bg:#fffdf0;--sb-head-grad:linear-gradient(135deg,#fb8500,#e63946);--sb-active:linear-gradient(135deg,#fb8500,#e63946);--sb-active-shadow:rgba(251,133,0,0.3);--sb-hover:rgba(251,133,0,0.08)}
:where(.uses-edubloom) *,*:where(.uses-edubloom),:where(.uses-edubloom) *::before,*:where(.uses-edubloom)::before,:where(.uses-edubloom) *::after,*:where(.uses-edubloom)::after{margin:0;padding:0;box-sizing:border-box}
html:where(.uses-edubloom){scroll-behavior:smooth}
:where(.uses-edubloom) body{font-family:'Nunito',sans-serif;background:var(--c-bg);color:var(--c-text);display:flex;min-height:100vh;line-height:1.5}
:where(.uses-edubloom) a{text-decoration:none;color:inherit}
:where(.uses-edubloom) button{font-family:inherit;cursor:pointer}
:where(.uses-edubloom) img{max-width:100%}
:where(.uses-edubloom) .sidebar{width:var(--sb-width);height:100vh;overflow:hidden;background:var(--sb-bg);border-right:1px solid var(--sb-border);display:flex;flex-direction:column;position:fixed;top:0;left:0;z-index:100;box-shadow:4px 0 20px rgba(0,0,0,0.06);transition:transform var(--t-normal)}
:where(.uses-edubloom) .sb-head{padding:12px 14px;background:var(--sb-head-grad);display:flex;align-items:center;gap:10px;flex-shrink:0}
:where(.uses-edubloom) .sb-head img{width:30px;flex-shrink:0}
:where(.uses-edubloom) .sb-brand{font-family:'Rajdhani',sans-serif;font-size:1.2rem;font-weight:700;color:#fff;letter-spacing:2px;line-height:1}
:where(.uses-edubloom) .sb-sub{font-size:0.58rem;color:rgba(255,255,255,0.7);letter-spacing:2px;text-transform:uppercase}
:where(.uses-edubloom) .sb-head-text .brand{font-family:'Rajdhani',sans-serif;font-size:1.2rem;font-weight:700;color:#fff;letter-spacing:2px;line-height:1}
:where(.uses-edubloom) .sb-head-text .sub{font-size:0.58rem;color:rgba(255,255,255,0.7);letter-spacing:2px;text-transform:uppercase}
:where(.uses-edubloom) .sb-role-badge{margin:8px 10px 0;background:var(--c-grad);border-radius:9px;padding:7px 11px;display:flex;align-items:center;gap:8px;flex-shrink:0}
:where(.uses-edubloom) .srb-icon{font-size:1rem}
:where(.uses-edubloom) .srb-label{font-size:0.68rem;font-weight:800;color:#fff;letter-spacing:1px;text-transform:uppercase}
:where(.uses-edubloom) .srb-sub{font-size:0.6rem;color:rgba(255,255,255,0.8)}
:where(.uses-edubloom) .sb-nav{flex:1;padding:6px 0 4px;overflow-y:auto;min-height:0;scrollbar-width:thin;scrollbar-color:var(--sb-scroll-thumb) transparent}
:where(.uses-edubloom) .sb-nav::-webkit-scrollbar{width:3px}
:where(.mod-superadmin,.mod-auth) *,*:where(.mod-superadmin,.mod-auth){margin:0;padding:0;box-sizing:border-box}
:where(.page-sa-super-admin-login) body{font-family:'Nunito',sans-serif;min-height:100vh;background:#0a0a1a;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;padding:20px}
:where(.page-sa-super-admin-login) .bg-anim{position:fixed;inset:0;z-index:0;background:radial-gradient(ellipse at 20% 30%,rgba(67,97,238,0.25) 0%,transparent 60%),radial-gradient(ellipse at 80% 70%,rgba(247,37,133,0.2) 0%,transparent 55%)}
:where(.page-sa-super-admin-login) .grid-lines{position:fixed;inset:0;z-index:0;background-image:linear-gradient(rgba(67,97,238,0.06) 1px,transparent 1px),linear-gradient(90deg,rgba(67,97,238,0.06) 1px,transparent 1px);background-size:50px 50px}
:where(.page-sa-super-admin-login) .orb{position:fixed;border-radius:50%;filter:blur(80px);animation:orbF 10s ease-in-out infinite;z-index:0}
:where(.page-sa-super-admin-login) .o1{width:450px;height:450px;background:rgba(67,97,238,0.15);top:-150px;left:-100px}
:where(.page-sa-super-admin-login) .o2{width:380px;height:380px;background:rgba(247,37,133,0.12);bottom:-100px;right:-100px;animation-delay:4s}
:where(.page-sa-super-admin-login) .o3{width:280px;height:280px;background:rgba(6,214,160,0.08);top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:2s}
:where(.page-sa-super-admin-login) .particles{position:fixed;inset:0;z-index:0;pointer-events:none}
:where(.page-sa-super-admin-login) .particle{position:absolute;border-radius:50%;animation:partF linear infinite}
:where(.page-sa-super-admin-login) .container{position:relative;z-index:10;width:100%;max-width:960px;display:grid;grid-template-columns:1fr 1fr;min-height:580px;border-radius:26px;overflow:hidden;box-shadow:0 40px 120px rgba(0,0,0,0.6),0 0 0 1px rgba(255,255,255,0.06);animation:cardIn 0.7s cubic-bezier(0.34,1.56,0.64,1) both}
:where(.page-sa-super-admin-login) .left{background:linear-gradient(145deg,#0f0c29,#302b63,#24243e);padding:48px 42px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
:where(.page-sa-super-admin-login) .left::after{content:'';position:absolute;top:0;right:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,rgba(247,37,133,0.5),rgba(67,97,238,0.5),transparent)}
:where(.page-sa-super-admin-login) .crown-wrap{display:flex;align-items:center;gap:14px;margin-bottom:28px;animation:fadeUp-v2 0.7s 0.2s both}
:where(.page-sa-super-admin-login) .crown{width:56px;height:56px;background:linear-gradient(135deg,#f72585,#fb8500);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.7rem;box-shadow:0 8px 24px rgba(247,37,133,0.4);animation:crownPulse 2s ease-in-out infinite;flex-shrink:0}
:where(.page-sa-super-admin-login) .crown-text .sup-label{font-size:0.66rem;color:rgba(255,255,255,0.5);letter-spacing:3px;text-transform:uppercase}
:where(.page-sa-super-admin-login) .crown-text .sup-title{font-family:'Rajdhani',sans-serif;font-size:1.5rem;font-weight:700;color:#fff}
:where(.page-sa-super-admin-login) .logo-row{display:flex;align-items:center;gap:12px;margin-bottom:18px;animation:fadeUp-v2 0.7s 0.35s both}
:where(.page-sa-super-admin-login) .logo-img{width:52px;filter:drop-shadow(0 0 14px rgba(67,97,238,0.6));animation:logoF 3s ease-in-out infinite;flex-shrink:0}
:where(.page-sa-super-admin-login) .brand-name{font-family:'Rajdhani',sans-serif;font-size:2.4rem;font-weight:700;letter-spacing:4px;background:linear-gradient(135deg,#4361ee,#f72585,#fb8500);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
:where(.page-sa-super-admin-login) .brand-tag{font-size:0.7rem;color:rgba(255,255,255,0.45);letter-spacing:5px;text-transform:uppercase}
:where(.page-sa-super-admin-login) .desc{color:rgba(255,255,255,0.65);font-size:0.88rem;line-height:1.9;margin-bottom:28px;animation:fadeUp-v2 0.7s 0.45s both}
:where(.page-sa-super-admin-login) .desc strong{color:#f72585}
:where(.page-sa-super-admin-login) .access-level{display:flex;flex-direction:column;gap:8px;animation:fadeUp-v2 0.7s 0.55s both}
:where(.page-sa-super-admin-login) .level-item{display:flex;align-items:center;gap:10px;padding:9px 13px;border-radius:11px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.08)}
:where(.page-sa-super-admin-login) .lv-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}
:where(.page-sa-super-admin-login) .lv-text{font-size:0.8rem;font-weight:700;color:rgba(255,255,255,0.8)}
:where(.page-sa-super-admin-login) .lv-badge{margin-left:auto;font-size:0.63rem;font-weight:800;padding:2px 9px;border-radius:20px;white-space:nowrap}
:where(.page-sa-super-admin-login) .lv-sa{background:rgba(247,37,133,0.2);color:#f72585;border:1px solid rgba(247,37,133,0.3)}
:where(.page-sa-super-admin-login) .lv-full{background:rgba(67,97,238,0.2);color:#7b83ff;border:1px solid rgba(67,97,238,0.3)}
:where(.page-sa-super-admin-login) .lv-rest{background:rgba(255,255,255,0.1);color:rgba(255,255,255,0.4);border:1px solid rgba(255,255,255,0.1)}
:where(.page-sa-super-admin-login) .right{background:#fff;padding:46px 42px;display:flex;flex-direction:column;justify-content:center;position:relative}
:where(.page-sa-super-admin-login) .right::before{content:'';position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#4361ee,#7209b7,#f72585,#fb8500,#06d6a0)}
:where(.page-sa-super-admin-login) .form-badge{display:inline-flex;align-items:center;gap:7px;background:linear-gradient(135deg,rgba(247,37,133,0.1),rgba(114,9,183,0.1));border:1.5px solid rgba(247,37,133,0.25);border-radius:30px;padding:5px 14px;margin-bottom:18px}
:where(.page-sa-super-admin-login) .fb-text{font-size:0.72rem;font-weight:800;color:#7209b7;letter-spacing:1px;text-transform:uppercase}
:where(.page-sa-super-admin-login) .form-title{font-family:'Rajdhani',sans-serif;font-size:2rem;font-weight:700;color:#1a1a2e;margin-bottom:4px}
:where(.page-sa-super-admin-login) .form-sub{color:#aaa;font-size:0.85rem;margin-bottom:20px}
:where(.page-sa-super-admin-login) .warning-box{background:linear-gradient(135deg,#fff8f0,#fff0f8);border:1.5px solid rgba(251,133,0,0.3);border-radius:12px;padding:11px 14px;margin-bottom:20px;display:flex;align-items:flex-start;gap:10px}
:where(.page-sa-super-admin-login) .wb-text{font-size:0.78rem;color:#555;font-weight:600;line-height:1.6}
:where(.page-sa-super-admin-login) .wb-text strong{color:#fb8500}
:where(.page-sa-super-admin-login) .fg{margin-bottom:14px;position:relative}
:where(.mod-auth) body{font-family:'Nunito',sans-serif;min-height:100vh;background:#f0f4ff;display:flex}
:where(.mod-auth) .left{flex:1;position:relative;overflow-y:auto;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px 36px;min-height:100vh}
:where(.mod-auth) .left-bg{position:absolute;inset:0;background:linear-gradient(135deg,#4361ee 0%,#7209b7 40%,#f72585 100%)}
:where(.mod-auth) .left-bg::after{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/svg%3E")}
:where(.mod-auth) .blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:0.3;animation:blobF 8s ease-in-out infinite}
:where(.mod-auth) .b1{width:380px;height:380px;background:#4cc9f0;top:-80px;left:-80px}
:where(.mod-auth) .b2{width:280px;height:280px;background:#f72585;bottom:-40px;right:-40px;animation-delay:3s}
:where(.mod-auth) .b3{width:180px;height:180px;background:#ffb703;bottom:120px;left:60px;animation-delay:1.5s}
:where(.mod-auth) .lc{position:relative;z-index:1;text-align:center}
:where(.mod-auth) .logo-img{width:150px;margin-bottom:14px;filter:drop-shadow(0 8px 24px rgba(0,0,0,0.3));animation:logoF-v2 3s ease-in-out infinite}
:where(.mod-auth) .brand{font-family:'Rajdhani',sans-serif;font-size:2.9rem;font-weight:700;color:#fff;letter-spacing:5px;text-shadow:0 4px 20px rgba(0,0,0,0.25)}
:where(.mod-auth) .tag-line{color:rgba(255,255,255,0.85);font-size:0.85rem;letter-spacing:6px;text-transform:uppercase;margin-top:6px;display:flex;align-items:center;gap:10px;justify-content:center}
:where(.mod-auth) .tag-line::before,:where(.mod-auth) .tag-line::after{content:'';width:28px;height:2px;background:rgba(255,255,255,0.5)}
:where(.mod-auth) .saas-badge{margin:18px auto 0;display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,0.15);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,0.3);border-radius:30px;padding:7px 18px}
:where(.mod-auth) .saas-dot{width:8px;height:8px;border-radius:50%;background:#06d6a0;animation:blink 2s infinite;flex-shrink:0}
:where(.mod-auth) .saas-text{font-size:0.75rem;font-weight:800;color:#fff;letter-spacing:1px}
:where(.mod-auth) .desc{color:rgba(255,255,255,0.82);font-size:0.88rem;margin-top:16px;max-width:340px;line-height:1.8}
:where(.mod-auth) .role-panel{margin-top:20px;width:100%;max-width:380px}
:where(.mod-auth) .rp-header{display:flex;align-items:center;gap:12px;margin-bottom:14px}
:where(.mod-auth) .rp-icon{width:44px;height:44px;border-radius:13px;background:rgba(255,255,255,0.2);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0;border:1.5px solid rgba(255,255,255,0.3);transition:all 0.3s}
:where(.mod-auth) .rp-name{font-family:'Rajdhani',sans-serif;font-size:1.2rem;font-weight:700;color:#fff;transition:all 0.3s}
:where(.mod-auth) .rp-desc{font-size:0.72rem;color:rgba(255,255,255,0.7);margin-top:1px;transition:all 0.3s}
:where(.mod-auth) .menu-list{display:grid;grid-template-columns:1fr 1fr;gap:7px}
:where(.mod-auth) .mi{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,0.1);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,0.15);border-radius:10px;padding:8px 11px;transition:all 0.25s;cursor:default}
:where(.mod-auth) .mi:hover{background:rgba(255,255,255,0.2);border-color:rgba(255,255,255,0.35);transform:translateX(3px)}
:where(.mod-auth) .mi-icon{font-size:1rem;flex-shrink:0}
:where(.mod-auth) .mi-text{font-size:0.75rem;font-weight:700;color:#fff}
:where(.mod-auth) .mi-badge{margin-left:auto;font-size:0.58rem;font-weight:800;padding:2px 7px;border-radius:10px;background:rgba(255,255,255,0.2);color:#fff;white-space:nowrap;flex-shrink:0}
:where(.mod-auth) .menu-section{font-size:0.6rem;font-weight:800;color:rgba(255,255,255,0.5);letter-spacing:2px;text-transform:uppercase;margin:10px 0 5px;padding-left:2px}
:where(.mod-auth) .stats-row{margin-top:20px;display:flex;gap:14px;justify-content:center}
:where(.mod-auth) .sstat{background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.2);border-radius:12px;padding:10px 16px;text-align:center}
:where(.mod-auth) .sstat-val{font-family:'Rajdhani',sans-serif;font-size:1.5rem;font-weight:700;color:#fff}
:where(.mod-auth) .sstat-label{font-size:0.6rem;color:rgba(255,255,255,0.7);letter-spacing:1px;text-transform:uppercase;margin-top:2px}
:where(.mod-auth) .right{width:500px;background:#fff;display:flex;align-items:center;justify-content:center;padding:36px 40px;position:relative;box-shadow:-10px 0 40px rgba(0,0,0,0.08);overflow-y:auto}
:where(.mod-auth) .right::before{content:'';position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#4361ee,#7209b7,#f72585,#fb8500,#06d6a0,#4cc9f0)}
:where(.mod-auth) .card{width:100%}
:where(.mod-auth) .login-title{font-family:'Rajdhani',sans-serif;font-size:1.9rem;font-weight:700;color:#1a1a2e;margin-bottom:3px}
:where(.mod-auth) .login-sub{color:#999;font-size:0.84rem;margin-bottom:20px}
:where(.mod-auth) .school-box{background:linear-gradient(135deg,#f0f4ff,#fdf0ff);border:2px solid #e0e8ff;border-radius:14px;padding:14px 16px;margin-bottom:18px}
:where(.mod-auth) .school-box-label{font-size:0.65rem;font-weight:800;color:#7209b7;letter-spacing:2px;text-transform:uppercase;margin-bottom:6px}
:where(.mod-auth) .school-input-wrap{display:flex;align-items:center;gap:10px}
:where(.mod-auth) .school-prefix{font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;color:#4361ee;background:#eff2ff;border-radius:8px;padding:7px 11px;white-space:nowrap;flex-shrink:0}
:where(.mod-auth) .school-input{flex:1;background:#fff;border:2px solid #e0e8ff;border-radius:10px;padding:9px 13px;color:#222;font-family:'Nunito',sans-serif;font-size:0.92rem;outline:none;transition:all 0.2s}
:where(.mod-auth) .school-input:focus{border-color:#7209b7;box-shadow:0 0 0 3px rgba(114,9,183,0.1)}
:where(.mod-auth) .school-verify{margin-top:8px;display:none;align-items:center;gap:6px;font-size:0.75rem;font-weight:700;color:#06d6a0}
:where(.mod-auth) .school-verify.show{display:flex}
:where(.mod-auth) .rl{font-size:0.7rem;font-weight:800;color:#888;letter-spacing:2px;text-transform:uppercase;margin-bottom:9px}
:where(.mod-auth) .role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:18px}
:where(.mod-auth) .rb{padding:9px 4px;border-radius:12px;border:2px solid #eee;background:#f9faff;color:#777;font-family:'Nunito',sans-serif;font-size:0.73rem;font-weight:800;cursor:pointer;transition:all 0.2s;text-align:center}
:where(.mod-auth) .rb .ri{font-size:1.15rem;display:block;margin-bottom:2px}
:where(.mod-auth) .rb:hover{border-color:#4361ee;color:#4361ee;background:#eff2ff}
:where(.mod-auth) .rb.active{border-color:transparent;color:#fff;background:linear-gradient(135deg,#4361ee,#7209b7);box-shadow:0 4px 14px rgba(67,97,238,0.4)}
:where(.uses-superadmin) body{font-family:'Nunito',sans-serif;background:#f3f0ff;display:flex;min-height:100vh}
:where(.uses-superadmin) .sidebar{width:260px;height:100vh;background:#1a1a2e;display:flex;flex-direction:column;position:fixed;top:0;left:0;z-index:100;box-shadow:4px 0 30px rgba(0,0,0,.3);overflow:hidden}
:where(.uses-superadmin) .sb-head{padding:18px 16px;background:linear-gradient(135deg,#f72585,#7209b7,#4361ee);flex-shrink:0}
:where(.uses-superadmin) .sb-logo-row{display:flex;align-items:center;gap:12px;margin-bottom:10px}
:where(.uses-superadmin) .sb-logo-row img{width:38px}
:where(.uses-superadmin) .sb-brand{font-family:'Rajdhani',sans-serif;font-size:1.45rem;font-weight:700;color:#fff;letter-spacing:3px}
:where(.uses-superadmin) .sa-badge{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);border-radius:30px;padding:4px 12px}
:where(.uses-superadmin) .sa-badge-text{font-size:.7rem;font-weight:800;color:#fff;letter-spacing:1px}
:where(.uses-superadmin) .sb-nav{flex:1;padding:14px 0;overflow-y:auto;min-height:0}
:where(.uses-superadmin) .sb-nav::-webkit-scrollbar{width:4px}
:where(.uses-edubloom,.uses-superadmin) .sb-nav::-webkit-scrollbar-track{background:transparent}
:where(.uses-edubloom) .sb-nav::-webkit-scrollbar-thumb{background:var(--sb-scroll-thumb);border-radius:4px}
:where(.uses-edubloom) .nav-sec{padding:6px 14px 3px;font-size:0.58rem;font-weight:800;color:var(--c-subtle);letter-spacing:2.5px;text-transform:uppercase;margin-top:4px}
:where(.uses-edubloom) .ni{display:flex;align-items:center;gap:8px;padding:7px 13px;color:var(--c-muted);font-size:0.8rem;font-weight:700;transition:all var(--t-fast);cursor:pointer;margin:1px 7px;border-radius:9px;text-decoration:none;line-height:1.3}
:where(.uses-edubloom) .ni:hover{background:var(--sb-hover);color:var(--c-primary)}
:where(.uses-edubloom) .ni.active{background:var(--sb-active);color:#fff;box-shadow:0 3px 10px var(--sb-active-shadow)}
:where(.uses-edubloom) .ni .ic{font-size:0.88rem;width:17px;text-align:center;flex-shrink:0}
:where(.uses-edubloom) .ni .nb{margin-left:auto;background:#f72585;color:#fff;font-size:0.58rem;padding:1px 5px;border-radius:8px;flex-shrink:0}
:where(.uses-edubloom) .ni .ni-badge-blue{margin-left:auto;background:var(--c-primary);color:#fff;font-size:0.58rem;padding:1px 5px;border-radius:8px;flex-shrink:0}
:where(.uses-edubloom) .sb-user{margin:4px 10px 8px;background:var(--c-input-bg);border-radius:10px;padding:9px 10px;display:flex;align-items:center;gap:8px;flex-shrink:0}
:where(.uses-edubloom) .ava{width:32px;height:32px;border-radius:50%;background:var(--c-grad);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:0.8rem;color:#fff;flex-shrink:0}
:where(.uses-edubloom) .un{font-size:0.8rem;font-weight:800;color:#333}
:where(.uses-edubloom) .ur{font-size:0.65rem;color:#999}
:where(.uses-edubloom) .main{margin-left:var(--sb-width);flex:1;display:flex;flex-direction:column;min-width:0}
:where(.uses-edubloom) .topbar{height:var(--topbar-h);background:var(--c-white);border-bottom:1px solid var(--topbar-border);display:flex;align-items:center;padding:0 24px;gap:12px;position:sticky;top:0;z-index:50;box-shadow:var(--shadow-sm);flex-shrink:0}
:where(.uses-edubloom) .topbar::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--c-grad)}
:where(.uses-edubloom) .tb-title{font-family:'Rajdhani',sans-serif;font-size:1.4rem;font-weight:700;color:var(--c-text)}
:where(.uses-edubloom) .tb-sub{color:#aaa;font-size:0.77rem}
:where(.uses-edubloom) .bc{display:flex;align-items:center;gap:6px;font-size:0.76rem;color:#bbb;flex-wrap:wrap}
:where(.uses-edubloom) .bc a{color:var(--c-primary);font-weight:700}
:where(.uses-edubloom) .bc a:hover{text-decoration:underline}
:where(.uses-superadmin) .sb-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:4px}
:where(.uses-superadmin) .nav-sec{padding:8px 18px 4px;font-size:.62rem;font-weight:800;color:rgba(255,255,255,.3);letter-spacing:3px;text-transform:uppercase}
:where(.uses-superadmin) .ni{display:flex;align-items:center;gap:10px;padding:10px 18px;color:rgba(255,255,255,.55);text-decoration:none;font-size:.84rem;font-weight:700;transition:all .2s;cursor:pointer;margin:1px 10px;border-radius:11px}
:where(.uses-superadmin) .ni:hover{background:rgba(255,255,255,.08);color:#fff}
:where(.uses-superadmin) .ni.active{background:linear-gradient(135deg,rgba(247,37,133,.3),rgba(114,9,183,.3));color:#fff;border:1px solid rgba(247,37,133,.3)}
:where(.uses-superadmin) .ni.create-btn{background:linear-gradient(135deg,#f72585,#fb8500);color:#fff;box-shadow:0 4px 16px rgba(247,37,133,.4);margin:4px 10px}
:where(.uses-superadmin) .ni .ic{font-size:1rem;width:20px;text-align:center}
:where(.uses-superadmin) .ni .nb{margin-left:auto;background:#f72585;color:#fff;font-size:.62rem;padding:2px 7px;border-radius:10px;font-weight:800}
:where(.uses-superadmin) .sb-user{margin:10px 14px 14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:13px;padding:12px;display:flex;align-items:center;gap:10px;flex-shrink:0}
:where(.uses-superadmin) .ava{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#f72585,#fb8500);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1rem;color:#fff;flex-shrink:0}
:where(.uses-superadmin) .un{font-size:.85rem;font-weight:800;color:#fff}
:where(.uses-superadmin) .ur{font-size:.69rem;color:rgba(255,255,255,.45)}
:where(.uses-superadmin) .main{margin-left:260px;flex:1;display:flex;flex-direction:column;min-width:0}
:where(.uses-superadmin) .topbar{height:68px;background:#fff;border-bottom:1px solid #e8e0ff;display:flex;align-items:center;padding:0 26px;gap:14px;position:sticky;top:0;z-index:50;box-shadow:0 2px 12px rgba(114,9,183,.08)}
:where(.uses-superadmin) .topbar::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#f72585,#7209b7,#4361ee,#06d6a0,#fb8500)}
:where(.uses-superadmin) .tb-title{font-family:'Rajdhani',sans-serif;font-size:1.4rem;font-weight:700;color:#1a1a2e}
:where(.uses-superadmin) .tb-sub{color:#aaa;font-size:.76rem}
:where(.uses-edubloom,.uses-superadmin) .spacer{flex:1}
:where(.uses-edubloom) .ibtn{width:38px;height:38px;border-radius:11px;background:var(--c-input-bg);border:2px solid var(--c-border);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;flex-shrink:0;transition:all var(--t-fast);position:relative}
:where(.uses-edubloom) .ibtn:hover{background:var(--c-grad);border-color:transparent}
:where(.uses-edubloom) .nd{position:absolute;top:5px;right:5px;width:7px;height:7px;border-radius:50%;background:#f72585;border:2px solid #fff;animation:blink 2s infinite}
:where(.uses-edubloom) .content{padding:22px;flex:1}
:where(.uses-edubloom) .stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}
:where(.uses-edubloom) .stat-grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:20px}
:where(.uses-superadmin) .ibtn{width:40px;height:40px;border-radius:12px;background:#f3f0ff;border:2px solid #e0d8ff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;position:relative;flex-shrink:0}
:where(.uses-superadmin) .content{padding:24px}
:where(.uses-superadmin) .crown-badge{display:flex;align-items:center;gap:7px;background:linear-gradient(135deg,#f72585,#7209b7);border-radius:30px;padding:6px 14px;flex-shrink:0}
:where(.uses-superadmin) .cb-text{font-size:.73rem;font-weight:800;color:#fff;letter-spacing:1px}
:where(.uses-superadmin) .nd{position:absolute;top:5px;right:5px;width:8px;height:8px;border-radius:50%;background:#06d6a0;border:2px solid #fff}
:where(.uses-superadmin) .notif-panel{position:absolute;top:calc(100% + 10px);right:0;width:320px;background:#fff;border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.15),0 0 0 1px rgba(0,0,0,.06);z-index:9999;overflow:hidden;transform:translateY(-8px) scale(.97);opacity:0;pointer-events:none;transition:all .2s cubic-bezier(.34,1.56,.64,1)}
:where(.uses-superadmin) .notif-panel.open{transform:translateY(0) scale(1);opacity:1;pointer-events:all}
:where(.uses-superadmin) .notif-head{padding:14px 16px 10px;border-bottom:1.5px solid #f0eeff;display:flex;align-items:center;justify-content:space-between}
:where(.uses-superadmin) .notif-head-title{font-size:.82rem;font-weight:800;color:#1a1a2e;letter-spacing:.3px}
:where(.uses-superadmin) .notif-mark{font-size:.71rem;font-weight:700;color:#7209b7;cursor:pointer;background:rgba(114,9,183,.08);border:none;border-radius:8px;padding:3px 9px;font-family:'Nunito',sans-serif}
:where(.uses-superadmin) .notif-mark:hover{background:rgba(114,9,183,.16)}
:where(.uses-superadmin) .notif-list{max-height:300px;overflow-y:auto}
:where(.uses-superadmin) .notif-item{display:flex;gap:11px;padding:11px 16px;border-bottom:1px solid #f7f5ff;cursor:pointer;transition:background .15s}
:where(.uses-superadmin) .notif-item:hover{background:#faf8ff}
:where(.uses-superadmin) .notif-item.unread{background:#f5f2ff}
:where(.uses-superadmin) .notif-item.unread:hover{background:#ede8ff}
:where(.uses-superadmin) .ni-icon{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
:where(.uses-superadmin) .ni-body{flex:1;min-width:0}
:where(.uses-superadmin) .ni-title{font-size:.78rem;font-weight:700;color:#1a1a2e;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
:where(.uses-superadmin) .ni-desc{font-size:.72rem;color:#888;line-height:1.4}
:where(.uses-superadmin) .ni-time{font-size:.65rem;color:#bbb;margin-top:3px;font-weight:600}
:where(.uses-superadmin) .notif-footer{padding:10px 16px;text-align:center;border-top:1.5px solid #f0eeff}
:where(.uses-superadmin) .notif-footer a{font-size:.76rem;font-weight:700;color:#7209b7;text-decoration:none}
:where(.uses-superadmin) .notif-footer a:hover{text-decoration:underline}
:where(.uses-superadmin) .settings-panel{position:absolute;top:calc(100% + 10px);right:0;width:260px;background:#fff;border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.15),0 0 0 1px rgba(0,0,0,.06);z-index:9999;overflow:hidden;transform:translateY(-8px) scale(.97);opacity:0;pointer-events:none;transition:all .2s cubic-bezier(.34,1.56,.64,1)}
:where(.uses-superadmin) .settings-panel.open{transform:translateY(0) scale(1);opacity:1;pointer-events:all}
:where(.uses-superadmin) .sp-head{padding:13px 16px 10px;border-bottom:1.5px solid #f0eeff}
:where(.uses-superadmin) .sp-head-title{font-size:.82rem;font-weight:800;color:#1a1a2e}
:where(.uses-superadmin) .sp-item{display:flex;align-items:center;gap:11px;padding:10px 16px;cursor:pointer;transition:background .15s;text-decoration:none}
:where(.uses-superadmin) .sp-item:hover{background:#f5f2ff}
:where(.uses-superadmin) .sp-icon{width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}
:where(.uses-superadmin) .sp-label{font-size:.8rem;font-weight:700;color:#1a1a2e}
:where(.uses-superadmin) .sp-sub{font-size:.68rem;color:#aaa;margin-top:1px}
:where(.uses-superadmin) .sp-divider{height:1.5px;background:#f0eeff;margin:4px 0}
:where(.uses-superadmin) .sp-footer{padding:10px 16px;border-top:1.5px solid #f0eeff}
:where(.uses-superadmin) .sp-logout{display:flex;align-items:center;gap:9px;padding:9px 12px;border-radius:10px;background:linear-gradient(135deg,rgba(247,37,133,.08),rgba(114,9,183,.06));border:1.5px solid rgba(247,37,133,.2);cursor:pointer;font-size:.78rem;font-weight:800;color:#f72585;font-family:'Nunito',sans-serif;width:100%;transition:all .15s}
:where(.uses-superadmin) .sp-logout:hover{background:linear-gradient(135deg,rgba(247,37,133,.15),rgba(114,9,183,.1))}
:where(.uses-superadmin) .panel{background:#fff;border-radius:20px;padding:22px;box-shadow:0 4px 20px rgba(114,9,183,.07);border:1px solid #e8e0ff}
:where(.uses-superadmin) .ph{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap;gap:10px}
:where(.uses-superadmin) .pt{font-family:'Rajdhani',sans-serif;font-size:1.15rem;font-weight:700;color:#1a1a2e}
:where(.uses-superadmin) .pa{background:linear-gradient(135deg,#f72585,#7209b7);color:#fff;border:none;border-radius:10px;padding:7px 14px;font-family:'Nunito',sans-serif;font-size:.78rem;font-weight:800;cursor:pointer;transition:all .2s}
:where(.uses-superadmin) .pa:hover{transform:translateY(-1px)}
:where(.uses-superadmin) .panel-title{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e;margin-bottom:18px;display:flex;align-items:center;gap:8px}
:where(.uses-superadmin) .tbl-wrap{overflow-x:auto}
:where(.uses-superadmin) table{width:100%;border-collapse:collapse;font-size:.81rem}
:where(.uses-superadmin) th{font-weight:800;text-align:left;padding:10px 12px;border-bottom:2px solid #f0ecff;font-size:.67rem;color:#aaa;letter-spacing:1px;text-transform:uppercase;background:#faf9ff}
:where(.uses-superadmin) td{padding:12px;border-bottom:1px solid #f5f3ff;color:#333;vertical-align:middle}
:where(.uses-superadmin) tr:hover td{background:#faf9ff}
:where(.uses-superadmin) .tag{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.7rem;font-weight:800}
:where(.uses-superadmin) .tg{background:#e8fff5;color:#06d6a0}
:where(.uses-superadmin) .tr{background:#fff0f0;color:#e63946}
:where(.uses-superadmin) .to{background:#fff8ec;color:#fb8500}
:where(.uses-superadmin) .tb{background:#eff2ff;color:#4361ee}
:where(.uses-superadmin) .tp{background:linear-gradient(135deg,rgba(247,37,133,.12),rgba(114,9,183,.12));color:#7209b7}
:where(.uses-superadmin) .btn{padding:9px 18px;border-radius:11px;border:none;font-family:'Nunito',sans-serif;font-size:.83rem;font-weight:800;cursor:pointer;transition:all .2s}
:where(.uses-superadmin) .btn-p{background:linear-gradient(135deg,#f72585,#7209b7);color:#fff}
:where(.uses-superadmin) .btn-p:hover{transform:translateY(-1px)}
:where(.uses-superadmin) .btn-o{background:#f3f0ff;color:#7209b7;border:2px solid #e0d8ff}
:where(.uses-superadmin) .btn-g{background:#e8fff5;color:#06d6a0;border:2px solid rgba(6,214,160,.3)}
:where(.uses-superadmin) .btn-r{background:#fff0f0;color:#e63946;border:2px solid rgba(230,57,70,.3)}
:where(.uses-superadmin) .filter-bar{background:#fff;border-radius:16px;padding:14px 20px;border:1px solid #e8e0ff;margin-bottom:18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;box-shadow:0 2px 12px rgba(114,9,183,.04)}
:where(.uses-superadmin) .search-inp{flex:1;min-width:200px;background:#f3f0ff;border:2px solid #e0d8ff;border-radius:11px;padding:9px 14px;font-family:'Nunito',sans-serif;font-size:.86rem;outline:none;color:#333}
:where(.uses-superadmin) .search-inp:focus{border-color:#7209b7;background:#fff}
:where(.uses-superadmin) .fil-sel{background:#f3f0ff;border:2px solid #e0d8ff;border-radius:11px;padding:9px 12px;font-family:'Nunito',sans-serif;font-size:.83rem;font-weight:700;color:#555;outline:none;cursor:pointer}
:where(.uses-superadmin) .info-banner{background:linear-gradient(135deg,#1a1a2e,#3a0ca3);border-radius:20px;padding:22px 28px;margin-bottom:22px;display:flex;align-items:center;gap:20px;color:#fff;position:relative;overflow:hidden}
:where(.uses-superadmin) .ib-icon{font-size:2.5rem;flex-shrink:0}
:where(.uses-superadmin) .ib-title{font-family:'Rajdhani',sans-serif;font-size:1.4rem;font-weight:700}
:where(.uses-superadmin) .ib-sub{color:rgba(255,255,255,.7);font-size:.84rem;margin-top:4px}
:where(.uses-superadmin) .ib-chips{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
:where(.uses-superadmin) .ib-chip{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:5px 12px;font-size:.74rem;font-weight:800;color:#fff}
:where(.uses-superadmin) .divider{height:1px;background:#f0ecff;margin:16px 0}
:where(.uses-superadmin) #pg-dashboard input[type=text],:where(.uses-superadmin) #pg-dashboard input[type=email],:where(.uses-superadmin) #pg-dashboard input[type=tel],:where(.uses-superadmin) #pg-dashboard input[type=number],:where(.uses-superadmin) #pg-dashboard select,:where(.uses-superadmin) #pg-dashboard textarea{background:#fff;border-color:#e8e0ff}
:where(.uses-superadmin) #pg-access .info-banner::after{content:'🔑';position:absolute;right:28px;font-size:5rem;opacity:.08}
:where(.uses-superadmin) #pg-all-admins .info-banner::after{content:'👥';position:absolute;right:28px;font-size:5rem;opacity:.08}
:where(.uses-superadmin) .fg{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}
:where(.uses-superadmin) .fg.full{grid-column:1/-1}
:where(.uses-superadmin) label{font-size:.72rem;font-weight:800;color:#666;letter-spacing:.5px;text-transform:uppercase}
:where(.uses-superadmin) input[type=text],:where(.uses-superadmin) input[type=email],:where(.uses-superadmin) input[type=tel],:where(.uses-superadmin) input[type=number],:where(.uses-superadmin) input[type=password],:where(.uses-superadmin) select,:where(.uses-superadmin) textarea{width:100%;background:#f8f6ff;border:2px solid #e0d8ff;border-radius:11px;padding:10px 13px;color:#333;font-family:'Nunito',sans-serif;font-size:.88rem;outline:none;transition:all .2s}
:where(.uses-superadmin) input:focus,:where(.uses-superadmin) select:focus,:where(.uses-superadmin) textarea:focus{border-color:#f72585;box-shadow:0 0 0 3px rgba(247,37,133,.1)}
:where(.uses-superadmin) input[readonly]{background:#f3f0ff;color:#888;cursor:not-allowed}
:where(.uses-superadmin) select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-color:#f8f6ff;padding-right:34px}
:where(.uses-superadmin) textarea{resize:none;height:75px}
:where(.uses-superadmin) .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
:where(.uses-superadmin) .form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;margin-top:14px}
:where(.uses-superadmin) .mg{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
:where(.uses-superadmin) .act-grp{display:flex;gap:5px}
:where(.uses-superadmin) .ab{padding:5px 11px;border-radius:8px;border:none;font-size:.72rem;font-weight:800;cursor:pointer;transition:all .2s}
:where(.uses-superadmin) .ab-s{background:#f3f0ff;color:#7209b7}
:where(.uses-superadmin) .ab-s:hover{background:#7209b7;color:#fff}
:where(.uses-superadmin) .ab-e{background:#eff2ff;color:#4361ee}
:where(.uses-superadmin) .ab-e:hover{background:#4361ee;color:#fff}
:where(.uses-superadmin) .ab-g{background:#e8fff5;color:#06d6a0}
:where(.uses-superadmin) .ab-g:hover{background:#06d6a0;color:#fff}
:where(.uses-superadmin) .ab-r,:where(.uses-superadmin) .ab-d{background:#fff0f0;color:#e63946}
:where(.uses-superadmin) .ab-r:hover,:where(.uses-superadmin) .ab-d:hover{background:#e63946;color:#fff}
:where(.uses-superadmin) .ab-v{background:#eff2ff;color:#4361ee}
:where(.uses-superadmin) .ab-v:hover{background:#4361ee;color:#fff}
:where(.uses-superadmin) .ab-dismiss{background:#f3f0ff;color:#7209b7}
:where(.uses-superadmin) .ab-dismiss:hover{background:#7209b7;color:#fff}
:where(.uses-superadmin) .modal-bg{display:none;position:fixed;inset:0;background:rgba(26,26,46,.75);z-index:200;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
:where(.uses-superadmin) .modal-bg.show{display:flex}
:where(.uses-superadmin) .modal{background:#fff;border-radius:22px;padding:28px 32px;width:600px;max-width:95vw;max-height:92vh;overflow-y:auto;box-shadow:0 30px 80px rgba(114,9,183,.25)}
:where(.uses-superadmin) .modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
:where(.uses-superadmin) .modal-title{font-family:'Rajdhani',sans-serif;font-size:1.3rem;font-weight:700;color:#1a1a2e}
:where(.uses-superadmin) .modal-close{width:36px;height:36px;border-radius:50%;background:#f3f0ff;border:none;cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;color:#7209b7}
:where(.uses-superadmin) .modal-close:hover{background:#7209b7;color:#fff}
:where(.uses-superadmin) .modal-footer{display:flex;gap:10px;justify-content:flex-end;margin-top:18px;padding-top:16px;border-top:1px solid #f0ecff}
:where(.uses-superadmin) .modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}
:where(.uses-superadmin) .btn-full-p{background:linear-gradient(135deg,#f72585,#7209b7);color:#fff;padding:11px 24px;border-radius:12px;border:none;font-family:'Nunito',sans-serif;font-size:.88rem;font-weight:800;cursor:pointer;transition:all .2s;box-shadow:0 4px 14px rgba(247,37,133,.35)}
:where(.uses-superadmin) .btn-full-p:hover{transform:translateY(-2px)}
:where(.uses-superadmin) .btn-cancel{background:#f3f0ff;color:#888;padding:10px 20px;border-radius:12px;border:2px solid #e0d8ff;font-family:'Nunito',sans-serif;font-size:.88rem;font-weight:800;cursor:pointer}
:where(.uses-superadmin) .dg2{display:grid;gap:18px;margin-bottom:18px}
:where(.uses-superadmin) .dg3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}
:where(.uses-superadmin) #pg-dashboard .dg2{grid-template-columns:1.5fr 1fr;gap:20px;margin-bottom:20px}
:where(.uses-superadmin) #pg-analytics .dg2{grid-template-columns:1fr 1fr}
:where(.uses-superadmin) #pg-billing .dg2{grid-template-columns:1.6fr 1fr}
:where(.uses-superadmin) .stat-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-bottom:24px}
:where(.uses-superadmin) .sc6{background:linear-gradient(135deg,#e63946,#9d0208)}
:where(.uses-superadmin) .sc.clickable{cursor:pointer}
:where(.uses-superadmin) .sc.clickable:hover{transform:translateY(-6px);box-shadow:0 24px 54px rgba(0,0,0,.25)}
:where(.uses-superadmin) .sc{border-radius:20px;padding:20px;color:#fff;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}
:where(.uses-superadmin) .sc:hover{transform:translateY(-5px);box-shadow:0 20px 50px rgba(0,0,0,.2)}
:where(.uses-superadmin) .sc::before{content:'';position:absolute;top:-25px;right:-25px;width:90px;height:90px;border-radius:50%;background:rgba(255,255,255,.1)}
:where(.uses-superadmin) .sc::after{content:'';position:absolute;bottom:-30px;left:10px;width:75px;height:75px;border-radius:50%;background:rgba(255,255,255,.06)}
:where(.uses-superadmin) .sc1{background:linear-gradient(135deg,#f72585,#7209b7)}
:where(.uses-superadmin) .sc2{background:linear-gradient(135deg,#4361ee,#4cc9f0)}
:where(.uses-superadmin) .sc3{background:linear-gradient(135deg,#fb8500,#e63946)}
:where(.uses-superadmin) .sc4{background:linear-gradient(135deg,#06d6a0,#0077b6)}
:where(.uses-superadmin) .sc5{background:linear-gradient(135deg,#3a0ca3,#7209b7)}
:where(.uses-superadmin) .sc-icon{font-size:2rem;margin-bottom:8px;position:relative;z-index:1}
:where(.uses-superadmin) .sc .sc-val{font-family:'Rajdhani',sans-serif;font-size:2.2rem;font-weight:700;line-height:1;position:relative;z-index:1}
:where(.uses-superadmin) .sc .sc-label{font-size:.78rem;opacity:.9;margin-top:4px;font-weight:700;position:relative;z-index:1}
:where(.uses-superadmin) .sc .sc-change{margin-top:8px;font-size:.72rem;font-weight:800;background:rgba(255,255,255,.2);display:inline-block;padding:3px 10px;border-radius:20px;position:relative;z-index:1}
:where(.uses-superadmin) .sc-split{display:flex;align-items:center;margin-bottom:8px;position:relative;z-index:1}
:where(.uses-superadmin) .sc-half{flex:1;text-align:center;padding:4px 2px}
:where(.uses-superadmin) .sc-half .sc-val{font-size:1.85rem}
:where(.uses-superadmin) .sc-half .sc-label{font-size:.68rem;opacity:.85}
:where(.uses-superadmin) .sc-vdiv{width:1px;height:52px;background:rgba(255,255,255,.25);flex-shrink:0;margin:0 4px}
:where(.uses-superadmin) .sc-icon-row{display:flex;align-items:center;gap:7px;margin-bottom:4px;position:relative;z-index:1;opacity:.9}
:where(.uses-superadmin) .sc-icon-row span{font-size:1rem}
:where(.uses-superadmin) .sc-icon-row .sc-icon-label{font-size:.65rem;font-weight:800;letter-spacing:.5px;text-transform:uppercase;opacity:.8}
:where(.uses-superadmin) .sc-bar-wrap{height:5px;background:rgba(255,255,255,.2);border-radius:4px;overflow:hidden;margin:8px 0 4px;position:relative;z-index:1}
:where(.uses-superadmin) .sc-bar{height:100%;background:rgba(255,255,255,.75);border-radius:4px}
:where(.uses-superadmin) .sc-bar-meta{display:flex;justify-content:space-between;font-size:.65rem;font-weight:800;opacity:.8;position:relative;z-index:1}
:where(.uses-superadmin) .form-wrap{background:linear-gradient(135deg,#f3f0ff,#fff0f8);border-radius:20px;padding:26px;border:2px solid rgba(247,37,133,.15);margin-bottom:22px}
:where(.uses-superadmin) .form-head{display:flex;align-items:center;gap:14px;margin-bottom:22px}
:where(.uses-superadmin) .fh-icon{width:50px;height:50px;border-radius:14px;background:linear-gradient(135deg,#f72585,#7209b7);display:flex;align-items:center;justify-content:center;font-size:1.4rem;box-shadow:0 6px 20px rgba(247,37,133,.35);flex-shrink:0}
:where(.uses-superadmin) .fh-title{font-family:'Rajdhani',sans-serif;font-size:1.35rem;font-weight:700;color:#1a1a2e}
:where(.uses-superadmin) .fh-sub{font-size:.8rem;color:#888}
:where(.uses-superadmin) .sec-div{grid-column:1/-1;display:flex;align-items:center;gap:12px;margin:6px 0}
:where(.uses-superadmin) .sd-line{flex:1;height:2px;background:linear-gradient(90deg,rgba(247,37,133,.2),transparent)}
:where(.uses-superadmin) .sd-line.r{background:linear-gradient(90deg,transparent,rgba(247,37,133,.2))}
:where(.uses-superadmin) .sd-label{font-size:.7rem;font-weight:800;color:#f72585;letter-spacing:2px;text-transform:uppercase;white-space:nowrap}
:where(.uses-superadmin) .plan-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-top:14px}
:where(.uses-superadmin) .plan-card{border:2px solid #eee;border-radius:13px;padding:14px;cursor:pointer;transition:all .2s;text-align:center;background:#fff;position:relative;overflow:hidden}
:where(.uses-superadmin) .plan-card:hover{border-color:#f72585;transform:translateY(-2px)}
:where(.uses-superadmin) .plan-card.selected{border-color:#f72585;background:linear-gradient(135deg,rgba(247,37,133,.05),rgba(114,9,183,.05));box-shadow:0 6px 20px rgba(247,37,133,.15)}
:where(.uses-superadmin) .plan-icon{font-size:1.7rem;margin-bottom:6px}
:where(.uses-superadmin) .plan-name{font-family:'Rajdhani',sans-serif;font-size:1.05rem;font-weight:700;color:#1a1a2e}
:where(.uses-superadmin) .plan-price{font-size:.78rem;color:#f72585;font-weight:800;margin-top:3px}
:where(.uses-superadmin) .plan-features{font-size:.7rem;color:#999;margin-top:5px;line-height:1.6}
:where(.uses-superadmin) .submit-row{display:flex;gap:12px;margin-top:20px;flex-wrap:wrap}
:where(.uses-superadmin) .btn-create{flex:1;min-width:200px;padding:14px;border-radius:13px;border:none;background:linear-gradient(135deg,#f72585,#7209b7,#4361ee);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;letter-spacing:2px;cursor:pointer;transition:all .3s;box-shadow:0 6px 20px rgba(247,37,133,.4);overflow:hidden;position:relative}
:where(.uses-superadmin) .btn-create::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .45s}
:where(.uses-superadmin) .btn-create:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(247,37,133,.5)}
:where(.uses-superadmin) .btn-create:hover::before{left:100%}
:where(.uses-superadmin) .btn-reset{padding:14px 22px;border-radius:13px;border:2px solid #e8e0ff;background:#f3f0ff;color:#7209b7;font-family:'Rajdhani',sans-serif;font-size:1.05rem;font-weight:700;letter-spacing:1px;cursor:pointer;transition:all .2s}
:where(.uses-superadmin) .btn-reset:hover{background:#e8e0ff}
:where(.uses-superadmin) .acc-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:4px}
:where(.uses-superadmin) .acc-card{background:#fff;border:2px solid #e8e0ff;border-radius:14px;padding:14px 10px;text-align:center;transition:all .2s;position:relative}
:where(.uses-superadmin) .acc-card:hover{border-color:#f72585;transform:translateY(-2px);box-shadow:0 6px 20px rgba(247,37,133,.1)}
:where(.uses-superadmin) .acc-card.highlight{border-color:rgba(247,37,133,.35);background:linear-gradient(135deg,rgba(247,37,133,.04),rgba(114,9,183,.04))}
:where(.uses-superadmin) .acc-card-icon{font-size:1.5rem;margin-bottom:5px;display:block}
:where(.uses-superadmin) .acc-card-label{font-size:.64rem;font-weight:800;color:#888;letter-spacing:.5px;text-transform:uppercase;margin-bottom:8px;line-height:1.3}
:where(.uses-superadmin) .acc-card-inp{width:100%;background:#f8f6ff;border:2px solid #e8e0ff;border-radius:9px;padding:8px 4px;font-family:'Rajdhani',sans-serif;font-size:1.25rem;font-weight:700;color:#7209b7;text-align:center;outline:none;transition:all .2s}
:where(.uses-superadmin) .acc-card-inp:focus{border-color:#f72585;background:#fff;box-shadow:0 0 0 3px rgba(247,37,133,.1)}
:where(.uses-superadmin) .acc-card-default{font-size:.62rem;color:#ccc;margin-top:4px;font-weight:700}
:where(.uses-superadmin) .acc-section-label{font-size:.66rem;font-weight:800;color:#999;letter-spacing:2px;text-transform:uppercase;margin:14px 0 6px;display:flex;align-items:center;gap:8px}
:where(.uses-superadmin) .acc-section-label::before,:where(.uses-superadmin) .acc-section-label::after{content:'';flex:1;height:1px;background:#f0ecff}
:where(.uses-superadmin) .school-row{display:flex;align-items:center;gap:10px}
:where(.uses-superadmin) .school-ava{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:900;color:#fff;flex-shrink:0}
:where(.uses-superadmin) .school-name{font-size:.84rem;font-weight:800;color:#333}
:where(.uses-superadmin) .school-code{font-size:.68rem;color:#aaa}
:where(.uses-superadmin) .action-btn{padding:4px 10px;border-radius:8px;border:none;font-size:.7rem;font-weight:800;cursor:pointer;transition:all .2s;margin-right:3px}
:where(.uses-superadmin) .btn-view{background:#eff2ff;color:#4361ee}
:where(.uses-superadmin) .btn-edit{background:#fff0f8;color:#f72585}
:where(.uses-superadmin) .btn-del{background:#fff0f0;color:#e63946}
:where(.uses-superadmin) .admin-cell{display:flex;align-items:center;gap:10px}
:where(.uses-superadmin) .admin-ava{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:900;color:#fff;flex-shrink:0}
:where(.uses-superadmin) .admin-nm{font-weight:800;color:#1a1a2e;font-size:.84rem}
:where(.uses-superadmin) .admin-id{font-size:.68rem;color:#aaa}
:where(.uses-edubloom,.uses-superadmin) .kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}
:where(.uses-edubloom) .sc,:where(.uses-edubloom) .kpi{border-radius:18px;padding:20px;color:#fff;position:relative;overflow:hidden;transition:transform var(--t-normal),box-shadow var(--t-normal);cursor:default}
:where(.uses-edubloom) .sc:hover,:where(.uses-edubloom) .kpi:hover{transform:translateY(-5px);box-shadow:var(--shadow-xl)}
:where(.uses-edubloom) .sc::after,:where(.uses-edubloom) .kpi::after{content:'';position:absolute;top:-20px;right:-20px;width:90px;height:90px;border-radius:50%;background:rgba(255,255,255,0.12)}
:where(.uses-edubloom) .sc::before,:where(.uses-edubloom) .kpi::before{content:'';position:absolute;bottom:-25px;right:15px;width:65px;height:65px;border-radius:50%;background:rgba(255,255,255,0.07)}
:where(.uses-edubloom) .sc-icon,:where(.uses-edubloom) .kpi-icon{font-size:2rem;margin-bottom:6px;position:relative;z-index:1}
:where(.uses-edubloom) .sc-val,:where(.uses-edubloom) .kpi-val{font-family:'Rajdhani',sans-serif;font-size:2.2rem;font-weight:700;line-height:1;position:relative;z-index:1}
:where(.uses-edubloom) .sc-label,:where(.uses-edubloom) .kpi-label{font-size:0.76rem;opacity:0.9;font-weight:700;margin-top:4px;position:relative;z-index:1}
:where(.uses-edubloom) .sc-change,:where(.uses-edubloom) .kpi-change{margin-top:8px;font-size:0.7rem;font-weight:800;background:rgba(255,255,255,0.2);display:inline-block;padding:3px 10px;border-radius:20px;position:relative;z-index:1}
:where(.uses-edubloom) .sc1{background:linear-gradient(135deg,#4361ee,#3a0ca3)}
:where(.uses-edubloom) .sc2{background:linear-gradient(135deg,#f72585,#7209b7)}
:where(.uses-edubloom) .sc3{background:linear-gradient(135deg,#06d6a0,#0077b6)}
:where(.uses-edubloom) .sc4{background:linear-gradient(135deg,#fb8500,#e63946)}
:where(.uses-edubloom) .sc5{background:linear-gradient(135deg,#4cc9f0,#4361ee)}
:where(.uses-edubloom) .k1{background:linear-gradient(135deg,#06d6a0,#0077b6)}
:where(.uses-edubloom) .k2{background:linear-gradient(135deg,#4361ee,#3a0ca3)}
:where(.uses-edubloom) .k3{background:linear-gradient(135deg,#e63946,#c1121f)}
:where(.uses-edubloom) .k4{background:linear-gradient(135deg,#fb8500,#e63946)}
:where(.uses-edubloom) .grad-blue{background:linear-gradient(135deg,#4361ee,#3a0ca3)}
:where(.uses-edubloom) .grad-pink{background:linear-gradient(135deg,#f72585,#7209b7)}
:where(.uses-edubloom) .grad-green{background:linear-gradient(135deg,#06d6a0,#0077b6)}
:where(.uses-edubloom) .grad-orange{background:linear-gradient(135deg,#fb8500,#e63946)}
:where(.uses-edubloom) .grad-purple{background:linear-gradient(135deg,#7209b7,#3a0ca3)}
:where(.uses-edubloom) .grad-cyan{background:linear-gradient(135deg,#4cc9f0,#4361ee)}
:where(.uses-edubloom) .grad-red{background:linear-gradient(135deg,#e63946,#c1121f)}
:where(.uses-edubloom) .grad-teal{background:linear-gradient(135deg,#06d6a0,#2dc653)}
:where(.uses-edubloom) .panel,:where(.uses-edubloom) .card,:where(.uses-edubloom) .form-card,:where(.uses-edubloom) .table-card{background:var(--c-white);border-radius:18px;padding:20px;box-shadow:var(--shadow-md);border:1px solid var(--c-border)}
:where(.uses-edubloom) .panel-sm{border-radius:14px;padding:14px}
:where(.uses-edubloom) .panel-lg{border-radius:22px;padding:26px}
:where(.uses-edubloom) .ph,:where(.uses-edubloom) .card-title,:where(.uses-edubloom) .tc-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:8px}
:where(.uses-edubloom) .pt{font-family:'Rajdhani',sans-serif;font-size:1.05rem;font-weight:700;color:var(--c-text)}
:where(.uses-edubloom) .pa{font-size:0.73rem;color:var(--c-primary);font-weight:800;cursor:pointer;background:var(--c-input-bg);padding:5px 12px;border-radius:8px;border:none;transition:all var(--t-fast);text-decoration:none;display:inline-block}
:where(.uses-edubloom) .pa:hover{background:var(--c-grad);color:#fff}
:where(.uses-edubloom) .sec-div{grid-column:1/-1;display:flex;align-items:center;gap:12px;margin:4px 0}
:where(.uses-edubloom) .sd-line{flex:1;height:1.5px;background:linear-gradient(90deg,rgba(67,97,238,0.2),transparent)}
:where(.uses-edubloom) .sd-line.r{background:linear-gradient(90deg,transparent,rgba(67,97,238,0.2))}
:where(.uses-edubloom) .sd-label{font-size:0.65rem;font-weight:800;color:var(--c-primary);letter-spacing:2px;text-transform:uppercase;white-space:nowrap}
:where(.uses-edubloom) .dg2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
:where(.uses-edubloom) .dg3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-bottom:18px}
:where(.uses-edubloom) .dg4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:16px;margin-bottom:18px}
:where(.uses-edubloom) .dg-2-1{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-bottom:18px}
:where(.uses-edubloom) .dg-1-2{display:grid;grid-template-columns:1fr 2fr;gap:18px;margin-bottom:18px}
:where(.uses-edubloom) .layout{display:grid;grid-template-columns:360px 1fr;gap:20px;align-items:start}
:where(.uses-edubloom) .layout-sm{display:grid;grid-template-columns:300px 1fr;gap:18px;align-items:start}
:where(.uses-edubloom) .fc-head{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:14px;border-bottom:2px solid var(--c-bg)}
:where(.uses-edubloom) .fc-icon{width:44px;height:44px;border-radius:13px;background:var(--c-grad);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:1.3rem;box-shadow:0 6px 16px var(--sb-active-shadow,rgba(67,97,238,0.25))}
:where(.uses-edubloom) .fc-title{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:var(--c-text)}
:where(.uses-edubloom) .fc-sub{font-size:0.72rem;color:#aaa}
:where(.uses-edubloom) .fg{margin-bottom:13px;display:flex;flex-direction:column}
:where(.uses-edubloom) .fg.full{grid-column:1/-1}
:where(.uses-edubloom) .row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
:where(.uses-edubloom) .row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
:where(.uses-edubloom) label{display:block;font-size:0.7rem;font-weight:800;color:#666;margin-bottom:5px;letter-spacing:0.5px;text-transform:uppercase}
:where(.uses-edubloom) input[type=text],:where(.uses-edubloom) input[type=email],:where(.uses-edubloom) input[type=tel],:where(.uses-edubloom) input[type=number],:where(.uses-edubloom) input[type=date],:where(.uses-edubloom) input[type=time],:where(.uses-edubloom) input[type=password],:where(.uses-edubloom) select,:where(.uses-edubloom) textarea{width:100%;background:var(--c-input-bg);border:2px solid var(--c-border);border-radius:11px;padding:10px 13px;color:var(--c-text);font-family:'Nunito',sans-serif;font-size:0.86rem;outline:none;transition:border-color var(--t-fast),box-shadow var(--t-fast),background var(--t-fast)}
:where(.uses-edubloom) input:focus,:where(.uses-edubloom) select:focus,:where(.uses-edubloom) textarea:focus{border-color:var(--c-primary);background:var(--c-white);box-shadow:0 0 0 3px rgba(67,97,238,0.12)}
:where(.uses-edubloom) select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:34px}
:where(.uses-edubloom) textarea{resize:vertical;min-height:80px}
:where(.uses-edubloom) input[readonly]{background:#f0f0ff;color:var(--c-primary);font-weight:800;cursor:default}
:where(.uses-edubloom) .sbi,:where(.uses-edubloom) .f-search{background:var(--c-input-bg);border:2px solid var(--c-border);border-radius:10px;padding:8px 13px;font-family:'Nunito',sans-serif;font-size:0.84rem;outline:none;color:var(--c-text);transition:all var(--t-fast)}
:where(.uses-edubloom) .sbi:focus,:where(.uses-edubloom) .f-search:focus{border-color:var(--c-primary);box-shadow:0 0 0 3px rgba(67,97,238,0.1)}
:where(.uses-edubloom) .f-sel{background:var(--c-input-bg);border:2px solid var(--c-border);border-radius:9px;padding:7px 10px;font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:700;color:#555;outline:none;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:26px;transition:all var(--t-fast)}
:where(.uses-edubloom) .f-sel:focus{border-color:var(--c-primary)}
:where(.uses-edubloom) .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 20px;border-radius:11px;border:none;font-family:'Nunito',sans-serif;font-size:0.88rem;font-weight:800;cursor:pointer;transition:all var(--t-normal);text-decoration:none}
:where(.uses-edubloom) .btn:hover{transform:translateY(-1px)}
:where(.uses-edubloom) .btn:active{transform:translateY(0)}
:where(.uses-edubloom) .btn-primary{background:var(--c-grad);color:#fff;box-shadow:0 4px 14px var(--sb-active-shadow,rgba(67,97,238,0.3))}
:where(.uses-edubloom) .btn-primary:hover{box-shadow:0 8px 22px var(--sb-active-shadow,rgba(67,97,238,0.4))}
:where(.uses-edubloom) .btn-save,:where(.uses-edubloom) .btn-send,:where(.uses-edubloom) .btn-submit,:where(.uses-edubloom) .btn-pay{flex:1;padding:11px;border-radius:11px;border:none;background:var(--c-grad);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;transition:all var(--t-normal);box-shadow:0 4px 14px var(--sb-active-shadow,rgba(67,97,238,0.3))}
:where(.uses-edubloom) .btn-save:hover,:where(.uses-edubloom) .btn-send:hover,:where(.uses-edubloom) .btn-submit:hover,:where(.uses-edubloom) .btn-pay:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--sb-active-shadow,rgba(67,97,238,0.4))}
:where(.uses-edubloom) .btn-cancel,:where(.uses-edubloom) .btn-prev,:where(.uses-edubloom) .btn-back{padding:11px 18px;border-radius:11px;border:2px solid var(--c-border);background:var(--c-input-bg);color:#888;font-family:'Nunito',sans-serif;font-size:0.86rem;font-weight:800;cursor:pointer;transition:all var(--t-fast)}
:where(.uses-edubloom) .btn-cancel:hover,:where(.uses-edubloom) .btn-prev:hover,:where(.uses-edubloom) .btn-back:hover{background:#eaeeff}
:where(.uses-edubloom) .btn-new,:where(.uses-edubloom) .btn-add{padding:9px 18px;border-radius:10px;border:none;background:var(--c-grad);color:#fff;font-family:'Nunito',sans-serif;font-size:0.82rem;font-weight:800;cursor:pointer;box-shadow:0 4px 14px var(--sb-active-shadow,rgba(67,97,238,0.3));transition:all var(--t-fast)}
:where(.uses-edubloom) .btn-new:hover,:where(.uses-edubloom) .btn-add:hover{transform:translateY(-1px)}
:where(.uses-edubloom) .btn-export{padding:8px 16px;border-radius:9px;border:2px solid rgba(67,97,238,0.2);background:var(--c-input-bg);color:var(--c-primary);font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:800;cursor:pointer;transition:all var(--t-fast)}
:where(.uses-edubloom) .btn-export:hover{background:var(--c-grad);color:#fff;border-color:transparent}
:where(.uses-edubloom) .btn-row{display:flex;gap:10px;margin-top:14px}
:where(.uses-edubloom) .abtn{padding:5px 11px;border-radius:8px;border:none;font-size:0.72rem;font-weight:800;cursor:pointer;transition:all var(--t-fast);display:inline-flex;align-items:center;gap:4px}
:where(.uses-edubloom) .abtn:hover{transform:translateY(-1px)}
:where(.uses-edubloom) .ab-view{background:#eff2ff;color:#4361ee;border:1.5px solid rgba(67,97,238,0.2)}
:where(.uses-edubloom) .ab-view:hover{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;border-color:transparent}
:where(.uses-edubloom) .ab-edit{background:#fff0f8;color:#f72585;border:1.5px solid rgba(247,37,133,0.2)}
:where(.uses-edubloom) .ab-edit:hover{background:linear-gradient(135deg,#f72585,#7209b7);color:#fff;border-color:transparent}
:where(.uses-edubloom) .ab-green{background:#e8fff5;color:#06d6a0;border:1.5px solid rgba(6,214,160,0.25)}
:where(.uses-edubloom) .ab-green:hover{background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;border-color:transparent}
:where(.uses-edubloom) .ab-del{background:#fff0f0;color:#e63946;border:1.5px solid rgba(230,57,70,0.2)}
:where(.uses-edubloom) .ab-del:hover{background:#e63946;color:#fff;border-color:transparent}
:where(.uses-edubloom) .act-grp{display:flex;gap:5px;align-items:center;flex-wrap:wrap}
:where(.uses-edubloom) .tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
:where(.uses-edubloom) .tbl-wrap table{min-width:520px}
:where(.uses-edubloom) table{width:100%;border-collapse:collapse;font-size:0.82rem}
:where(.uses-edubloom) th{font-weight:800;text-align:left;padding:10px 14px;border-bottom:2px solid var(--c-bg);font-size:0.68rem;color:#bbb;letter-spacing:1px;text-transform:uppercase;background:#fafbff;white-space:nowrap}
:where(.uses-edubloom) td{padding:11px 14px;border-bottom:1px solid var(--c-bg);color:#555;vertical-align:middle}
:where(.uses-edubloom) tr:last-child td{border-bottom:none}
:where(.uses-edubloom) tr:hover td{background:var(--c-input-bg)}
:where(.uses-edubloom) .td-num{color:#bbb;font-size:0.72rem;font-weight:700}
:where(.uses-edubloom) .td-strong{font-weight:800;color:var(--c-text)}
:where(.uses-edubloom) .td-muted{color:#aaa;font-size:0.78rem}
:where(.uses-edubloom) .tag{display:inline-block;padding:3px 10px;border-radius:20px;font-size:0.71rem;font-weight:800;white-space:nowrap}
:where(.uses-edubloom) .tg{background:#e8fff5;color:#06d6a0}
:where(.uses-edubloom) .tr{background:#fff0f0;color:#e63946}
:where(.uses-edubloom) .to{background:#fff8ec;color:#fb8500}
:where(.uses-edubloom) .tb{background:#eff2ff;color:#4361ee}
:where(.uses-edubloom) .tp{background:#fdf0ff;color:#7209b7}
:where(.uses-edubloom) .tgr{background:#f0fff0;color:#2dc653}
:where(.uses-edubloom) .tc{background:#e0f7ff;color:#0077b6}
:where(.uses-edubloom) .pbar-cell{display:flex;align-items:center;gap:8px}
:where(.uses-edubloom) .pbar{flex:1;height:7px;background:var(--c-bg);border-radius:4px;overflow:hidden;min-width:50px}
:where(.uses-edubloom) .pbar-fill{height:100%;border-radius:4px;transition:width 0.5s ease}
:where(.uses-edubloom) .pbar-val{font-size:0.74rem;font-weight:800;min-width:36px;text-align:right}
:where(.uses-edubloom) .pbar-green .pbar-fill{background:#06d6a0}
:where(.uses-edubloom) .pbar-blue .pbar-fill{background:#4361ee}
:where(.uses-edubloom) .pbar-orange .pbar-fill{background:#fb8500}
:where(.uses-edubloom) .pbar-red .pbar-fill{background:#e63946}
:where(.uses-edubloom) .modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.4);backdrop-filter:blur(4px);z-index:300;align-items:center;justify-content:center;padding:16px}
:where(.uses-edubloom) .modal-overlay.show{display:flex}
:where(.uses-edubloom) .modal{background:var(--c-white);border-radius:20px;padding:26px;max-width:520px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.22);animation:modalIn 0.3s cubic-bezier(0.34,1.56,0.64,1)}
:where(.uses-edubloom) .modal-title{font-family:'Rajdhani',sans-serif;font-size:1.25rem;font-weight:700;color:var(--c-text);margin-bottom:16px;display:flex;align-items:center;gap:10px;justify-content:space-between}
:where(.uses-edubloom) .modal-close{background:none;border:none;font-size:1.1rem;cursor:pointer;color:#aaa;padding:4px;transition:color var(--t-fast)}
:where(.uses-edubloom) .modal-close:hover{color:var(--c-danger)}
:where(.uses-edubloom) .modal-footer{display:flex;gap:8px;margin-top:16px}
:where(.uses-edubloom) .tab-bar{background:var(--c-white);border-radius:14px;padding:5px;margin-bottom:18px;display:flex;gap:4px;overflow-x:auto;box-shadow:var(--shadow-md);border:1px solid var(--c-border);scrollbar-width:none}
:where(.uses-edubloom) .tab-bar::-webkit-scrollbar{display:none}
:where(.uses-edubloom) .tab-btn{flex:1;padding:9px 12px;border-radius:10px;border:none;background:transparent;font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:800;cursor:pointer;transition:all var(--t-fast);color:#888;white-space:nowrap;min-width:110px}
:where(.uses-edubloom) .tab-btn:hover{background:var(--c-input-bg);color:var(--c-primary)}
:where(.uses-edubloom) .tab-btn.active{background:var(--c-grad);color:#fff;box-shadow:0 3px 10px var(--sb-active-shadow,rgba(67,97,238,0.3))}
:where(.uses-edubloom) .tab-panel{display:none;animation:fadeUp 0.3s ease}
:where(.uses-edubloom) .tab-panel.active{display:block}
:where(.uses-edubloom) .filter-bar,:where(.uses-edubloom) .fbar{background:var(--c-white);border-radius:13px;padding:12px 16px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;box-shadow:var(--shadow-sm);border:1px solid var(--c-border);margin-bottom:14px}
:where(.uses-edubloom) .fr-group{display:flex;flex-direction:column;gap:4px}
:where(.uses-edubloom) .fr-label{font-size:0.64rem;font-weight:800;color:#aaa;text-transform:uppercase;letter-spacing:0.5px}
:where(.uses-edubloom) .fr-sel{min-width:120px}
:where(.uses-edubloom) .fr-spacer{flex:1}
:where(.uses-edubloom) .toast{position:fixed;top:20px;right:20px;z-index:9999;background:var(--c-grad);color:#fff;padding:13px 22px;border-radius:13px;font-weight:800;font-size:0.9rem;box-shadow:0 8px 28px rgba(0,0,0,0.2);max-width:300px;animation:toastIn 0.3s ease;transition:opacity var(--t-slow)}
:where(.uses-edubloom) .qa-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}
:where(.uses-edubloom) .qa-btn{border-radius:13px;padding:13px 8px;border:none;font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:800;cursor:pointer;transition:all var(--t-normal);background:var(--c-white);color:var(--c-text);border:2px solid var(--c-border);text-align:center}
:where(.uses-edubloom) .qa-btn:hover{background:var(--c-grad);color:#fff;border-color:transparent;transform:translateY(-2px);box-shadow:var(--shadow-lg)}
:where(.uses-edubloom) .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px 9px;border-radius:10px;border:2px solid var(--c-border);background:var(--c-input-bg);flex-shrink:0}
:where(.uses-edubloom) .hamburger span{display:block;width:19px;height:2.5px;background:var(--c-primary);border-radius:3px;transition:all var(--t-normal)}
:where(.uses-edubloom) .hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
:where(.uses-edubloom) .hamburger.open span:nth-child(2){opacity:0}
:where(.uses-edubloom) .hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
:where(.uses-edubloom) .overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.45);z-index:99;backdrop-filter:blur(2px)}
:where(.uses-superadmin) .kpi{border-radius:20px;padding:22px;color:#fff;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}
:where(.uses-superadmin) .kpi:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,.2)}
:where(.uses-superadmin) .kpi::before{content:'';position:absolute;top:-20px;right:-20px;width:90px;height:90px;border-radius:50%;background:rgba(255,255,255,.1)}
:where(.uses-superadmin) .kpi::after{content:'';position:absolute;bottom:-25px;left:8px;width:70px;height:70px;border-radius:50%;background:rgba(255,255,255,.06)}
:where(.uses-superadmin) .k1{background:linear-gradient(135deg,#f72585,#7209b7)}
:where(.uses-superadmin) .k2{background:linear-gradient(135deg,#4361ee,#4cc9f0)}
:where(.uses-superadmin) .k3{background:linear-gradient(135deg,#fb8500,#e63946)}
:where(.uses-superadmin) .k4{background:linear-gradient(135deg,#06d6a0,#0077b6)}
:where(.uses-superadmin) #pg-billing .k1{background:linear-gradient(135deg,#06d6a0,#0077b6)}
:where(.uses-superadmin) #pg-billing .k2{background:linear-gradient(135deg,#f72585,#7209b7)}
:where(.uses-superadmin) #pg-billing .k3{background:linear-gradient(135deg,#fb8500,#e63946)}
:where(.uses-superadmin) #pg-billing .k4{background:linear-gradient(135deg,#4361ee,#3a0ca3)}
:where(.uses-superadmin) .kpi-icon{font-size:2rem;margin-bottom:6px;position:relative;z-index:1}
:where(.uses-superadmin) .kpi-val{font-family:'Rajdhani',sans-serif;font-size:2.2rem;font-weight:700;line-height:1;position:relative;z-index:1}
:where(.uses-superadmin) .kpi-label{font-size:.78rem;opacity:.9;font-weight:700;margin-top:4px;position:relative;z-index:1}
:where(.uses-superadmin) .kpi-change{margin-top:7px;font-size:.71rem;font-weight:800;background:rgba(255,255,255,.2);display:inline-block;padding:2px 10px;border-radius:20px;position:relative;z-index:1}
:where(.uses-superadmin) .chart-box{height:240px;position:relative}
:where(.uses-superadmin) .school-cell{display:flex;align-items:center;gap:10px}
:where(.uses-superadmin) .school-nm{font-weight:800;color:#1a1a2e;font-size:.84rem}
:where(.uses-superadmin) .school-cd{font-size:.68rem;color:#aaa}
:where(.uses-superadmin) .chips-row{display:flex;gap:12px;margin-bottom:18px;flex-wrap:wrap;align-items:center}
:where(.uses-superadmin) .chip{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:30px;font-size:.82rem;font-weight:800;cursor:pointer;border:2px solid transparent;transition:all .2s}
:where(.uses-superadmin) .chip-critical{background:#fff0f0;color:#e63946;border-color:rgba(230,57,70,.3)}
:where(.uses-superadmin) .chip-critical:hover,:where(.uses-superadmin) .chip-critical.sel{background:#e63946;color:#fff}
:where(.uses-superadmin) .chip-warning{background:#fff8ec;color:#fb8500;border-color:rgba(251,133,0,.3)}
:where(.uses-superadmin) .chip-warning:hover,:where(.uses-superadmin) .chip-warning.sel{background:#fb8500;color:#fff}
:where(.uses-superadmin) .chip-info{background:#eff2ff;color:#4361ee;border-color:rgba(67,97,238,.3)}
:where(.uses-superadmin) .chip-info:hover,:where(.uses-superadmin) .chip-info.sel{background:#4361ee;color:#fff}
:where(.uses-superadmin) .alerts-list{display:flex;flex-direction:column;gap:12px}
:where(.uses-superadmin) .alert-card{background:#fff;border-radius:18px;padding:18px 22px;border:1px solid #e8e0ff;display:flex;align-items:flex-start;gap:16px;box-shadow:0 2px 12px rgba(114,9,183,.05);transition:all .2s}
:where(.uses-superadmin) .alert-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(114,9,183,.1)}
:where(.uses-superadmin) .alert-card.critical{border-left:4px solid #e63946}
:where(.uses-superadmin) .alert-card.warning{border-left:4px solid #fb8500}
:where(.uses-superadmin) .alert-card.info{border-left:4px solid #4361ee}
:where(.uses-superadmin) .alert-icon{flex-shrink:0;width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.8rem}
:where(.uses-superadmin) .icon-critical{background:#fff0f0}
:where(.uses-superadmin) .icon-warning{background:#fff8ec}
:where(.uses-superadmin) .icon-info{background:#eff2ff}
:where(.uses-superadmin) .alert-body{flex:1}
:where(.uses-superadmin) .alert-title{font-family:'Rajdhani',sans-serif;font-size:1.05rem;font-weight:700;color:#1a1a2e;margin-bottom:4px}
:where(.uses-superadmin) .alert-desc{font-size:.82rem;color:#666;line-height:1.5}
:where(.uses-superadmin) .alert-time{font-size:.72rem;color:#aaa;font-weight:700;margin-top:6px}
:where(.uses-superadmin) .alert-actions{display:flex;gap:8px;align-items:flex-start;flex-shrink:0}
:where(.uses-superadmin) .settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:22px}
:where(.uses-superadmin) #pg-settings .btn,:where(.uses-superadmin) #pg-settings .btn-p{width:100%}
:where(.uses-superadmin) .toggle-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f5f3ff}
:where(.uses-superadmin) .toggle-row:last-of-type{border-bottom:none}
:where(.uses-superadmin) .toggle-label{font-size:.84rem;font-weight:700;color:#333}
:where(.uses-superadmin) .toggle-sub{font-size:.7rem;color:#aaa;margin-top:1px}
:where(.uses-superadmin) .switch{position:relative;display:inline-block;width:42px;height:24px;flex-shrink:0}
:where(.uses-superadmin) .switch input{opacity:0;width:0;height:0}
:where(.uses-superadmin) .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#ddd;transition:.3s;border-radius:24px}
:where(.uses-superadmin) .slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background:#fff;transition:.3s;border-radius:50%}
:where(.uses-superadmin) input:checked+.slider{background:linear-gradient(135deg,#f72585,#7209b7)}
:where(.uses-superadmin) input:checked+.slider:before{transform:translateX(18px)}
:where(.uses-superadmin) .danger-zone{background:#fff;border-radius:20px;padding:22px;border:2px solid rgba(230,57,70,.3);box-shadow:0 4px 20px rgba(230,57,70,.06)}
:where(.uses-superadmin) .danger-title{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#e63946;margin-bottom:6px}
:where(.uses-superadmin) .danger-desc{font-size:.82rem;color:#999;margin-bottom:18px}
:where(.uses-superadmin) .danger-btns{display:flex;gap:12px;flex-wrap:wrap}
:where(.uses-superadmin) .btn-danger{padding:10px 22px;border-radius:11px;border:2px solid rgba(230,57,70,.4);background:#fff0f0;color:#e63946;font-family:'Nunito',sans-serif;font-size:.84rem;font-weight:800;cursor:pointer;transition:all .2s}
:where(.uses-superadmin) .btn-danger:hover{background:#e63946;color:#fff}
:where(.uses-superadmin) .stat-chips{display:flex;gap:14px;margin-bottom:20px;flex-wrap:wrap}
:where(.uses-superadmin) .stat-chip{background:#fff;border-radius:16px;padding:14px 20px;border:1px solid #e8e0ff;box-shadow:0 2px 10px rgba(114,9,183,.05);min-width:150px}
:where(.uses-superadmin) .stat-chip .sc-val{font-family:'Rajdhani',sans-serif;font-size:1.8rem;font-weight:700;color:#1a1a2e;line-height:1}
:where(.uses-superadmin) .stat-chip .sc-label{font-size:.74rem;color:#aaa;font-weight:700;margin-top:3px}
:where(.uses-superadmin) .stat-chip .sc-icon{font-size:1.5rem;margin-bottom:6px}
:where(.uses-superadmin) .date-inp{background:#f3f0ff;border:2px solid #e0d8ff;border-radius:11px;padding:9px 12px;font-family:'Nunito',sans-serif;font-size:.83rem;color:#555;outline:none}
:where(.uses-superadmin) .date-inp:focus{border-color:#7209b7;background:#fff}
:where(.uses-superadmin) .action-tag{display:inline-block;padding:3px 9px;border-radius:8px;font-size:.68rem;font-weight:800}
:where(.uses-superadmin) .at-login{background:#eff2ff;color:#4361ee}
:where(.uses-superadmin) .at-create{background:#e8fff5;color:#06d6a0}
:where(.uses-superadmin) .at-update{background:#fff8ec;color:#fb8500}
:where(.uses-superadmin) .at-delete{background:#fff0f0;color:#e63946}
:where(.uses-superadmin) .at-logout{background:#f3f0ff;color:#888}
:where(.uses-superadmin) .profile-grid{display:grid;grid-template-columns:320px 1fr;gap:20px;margin-bottom:20px}
:where(.uses-superadmin) .profile-card{background:#fff;border-radius:22px;padding:28px;box-shadow:0 4px 20px rgba(114,9,183,.07);border:1px solid #e8e0ff;display:flex;flex-direction:column;align-items:center;text-align:center}
:where(.uses-superadmin) .profile-avatar{width:90px;height:90px;border-radius:50%;background:linear-gradient(135deg,#f72585,#7209b7);display:flex;align-items:center;justify-content:center;font-family:'Rajdhani',sans-serif;font-size:2.2rem;font-weight:700;color:#fff;box-shadow:0 8px 28px rgba(247,37,133,.35);margin-bottom:16px}
:where(.uses-superadmin) .profile-name{font-family:'Rajdhani',sans-serif;font-size:1.5rem;font-weight:700;color:#1a1a2e;margin-bottom:4px}
:where(.uses-superadmin) .profile-role{font-size:.82rem;color:#888;font-weight:700;margin-bottom:12px}
:where(.uses-superadmin) .profile-badge{display:inline-flex;align-items:center;gap:6px;background:#e8fff5;border:1px solid rgba(6,214,160,.3);color:#06d6a0;border-radius:20px;padding:5px 14px;font-size:.75rem;font-weight:800}
:where(.uses-superadmin) .form-panel{background:#fff;border-radius:22px;padding:28px;box-shadow:0 4px 20px rgba(114,9,183,.07);border:1px solid #e8e0ff}
:where(.uses-superadmin) .tfa-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
:where(.uses-superadmin) .tfa-info{display:flex;align-items:center;gap:14px}
:where(.uses-superadmin) .tfa-icon{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#e8fff5,#c7f9cc);display:flex;align-items:center;justify-content:center;font-size:1.4rem}
:where(.uses-superadmin) .tfa-title{font-family:'Rajdhani',sans-serif;font-size:1.05rem;font-weight:700;color:#1a1a2e}
:where(.uses-superadmin) .tfa-sub{font-size:.78rem;color:#aaa;margin-top:2px}
:where(.uses-superadmin) #pg-password .content{display:flex;flex-direction:column;align-items:center}
:where(.uses-superadmin) .pw-card{background:#fff;border-radius:22px;padding:32px;box-shadow:0 4px 24px rgba(114,9,183,.1);border:1px solid #e8e0ff;width:100%;max-width:480px;margin-bottom:20px}
:where(.uses-superadmin) .pw-icon{width:64px;height:64px;border-radius:18px;background:linear-gradient(135deg,#f72585,#7209b7);display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin:0 auto 16px;box-shadow:0 8px 24px rgba(247,37,133,.3)}
:where(.uses-superadmin) .pw-title{font-family:'Rajdhani',sans-serif;font-size:1.4rem;font-weight:700;color:#1a1a2e;text-align:center;margin-bottom:4px}
:where(.uses-superadmin) .pw-sub{font-size:.82rem;color:#aaa;text-align:center;margin-bottom:24px}
:where(.uses-superadmin) .eye-btn{position:absolute;right:12px;bottom:12px;background:none;border:none;cursor:pointer;font-size:1rem;color:#aaa}
:where(.uses-superadmin) .strength-meter{display:flex;gap:4px;margin-top:8px}
:where(.uses-superadmin) .seg{flex:1;height:5px;border-radius:3px;background:#e0d8ff;transition:background .3s}
:where(.uses-superadmin) .seg.s1{background:#e63946}
:where(.uses-superadmin) .seg.s2{background:#fb8500}
:where(.uses-superadmin) .seg.s3{background:#06d6a0}
:where(.uses-superadmin) .seg.s4{background:linear-gradient(90deg,#06d6a0,#0077b6)}
:where(.uses-superadmin) .strength-label{font-size:.7rem;font-weight:800;margin-top:4px}
:where(.uses-superadmin) .rules{margin-bottom:22px}
:where(.uses-superadmin) .rule{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:.8rem;font-weight:700;color:#aaa;transition:color .2s}
:where(.uses-superadmin) .rule.ok{color:#06d6a0}
:where(.uses-superadmin) .rule-dot{width:18px;height:18px;border-radius:50%;background:#f0ecff;display:flex;align-items:center;justify-content:center;font-size:.7rem;flex-shrink:0;transition:all .2s}
:where(.uses-superadmin) .rule.ok .rule-dot{background:#06d6a0;color:#fff}
:where(.uses-superadmin) .btn-update{width:100%;padding:13px;border-radius:13px;border:none;background:linear-gradient(135deg,#f72585,#7209b7,#4361ee);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;letter-spacing:2px;cursor:pointer;transition:all .3s;box-shadow:0 6px 20px rgba(247,37,133,.4)}
:where(.uses-superadmin) .btn-update:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(247,37,133,.5)}
:where(.uses-superadmin) .sessions-panel{background:#fff;border-radius:22px;padding:24px;box-shadow:0 4px 24px rgba(114,9,183,.08);border:1px solid #e8e0ff;width:100%;max-width:480px}
:where(.uses-superadmin) .session-title{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e;margin-bottom:16px}
:where(.uses-superadmin) .session-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid #f5f3ff}
:where(.uses-superadmin) .session-row:last-child{border-bottom:none}
:where(.uses-superadmin) .session-icon{width:40px;height:40px;border-radius:12px;background:#f3f0ff;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}
:where(.uses-superadmin) .session-info{flex:1}
:where(.uses-superadmin) .session-device{font-size:.84rem;font-weight:800;color:#1a1a2e}
:where(.uses-superadmin) .session-detail{font-size:.72rem;color:#aaa;margin-top:2px}
:where(.uses-superadmin) .current-tag{background:#e8fff5;color:#06d6a0;font-size:.68rem;font-weight:800;padding:2px 8px;border-radius:8px}
:where(.uses-superadmin) .btn-revoke{padding:5px 12px;border-radius:8px;border:2px solid rgba(230,57,70,.3);background:#fff0f0;color:#e63946;font-size:.72rem;font-weight:800;cursor:pointer;transition:all .2s;flex-shrink:0}
:where(.uses-superadmin) .btn-revoke:hover{background:#e63946;color:#fff}
:where(.uses-superadmin) .plan-legend{display:flex;gap:10px;margin-bottom:18px;flex-wrap:wrap}
:where(.uses-superadmin) .pl-item{display:flex;align-items:center;gap:7px;background:#fff;border-radius:10px;padding:8px 14px;border:1px solid #e8e0ff;font-size:.78rem;font-weight:700;color:#555}
:where(.uses-superadmin) .pl-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
:where(.uses-superadmin) .acc-cell{display:flex;flex-direction:column;gap:4px}
:where(.uses-superadmin) .acc-nums{display:flex;align-items:baseline;gap:4px}
:where(.uses-superadmin) .acc-used{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.uses-superadmin) .acc-limit{font-size:.7rem;color:#aaa;font-weight:700}
:where(.uses-superadmin) .acc-bar{height:5px;background:#f0ecff;border-radius:4px;overflow:hidden;width:80px}
:where(.uses-superadmin) .acc-fill{height:100%;border-radius:4px;transition:width .3s}
:where(.uses-superadmin) .fill-ok{background:linear-gradient(90deg,#06d6a0,#0077b6)}
:where(.uses-superadmin) .fill-warn{background:linear-gradient(90deg,#fb8500,#e63946)}
:where(.uses-superadmin) .fill-full{background:#e63946}
:where(.uses-superadmin) .limit-inp{width:70px;background:#f3f0ff;border:2px solid #e0d8ff;border-radius:8px;padding:5px 8px;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;color:#7209b7;text-align:center;outline:none;transition:all .2s}
:where(.uses-superadmin) .limit-inp:focus{border-color:#7209b7;background:#fff;box-shadow:0 0 0 3px rgba(114,9,183,.1)}
:where(.uses-superadmin) .plan-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:8px;font-size:.72rem;font-weight:800}
:where(.uses-superadmin) .pl-starter{background:#e8fff5;color:#06d6a0}
:where(.uses-superadmin) .pl-pro{background:#eff2ff;color:#4361ee}
:where(.uses-superadmin) .pl-ent{background:#fdf0ff;color:#7209b7}
:where(.uses-superadmin) .modal-school{display:flex;align-items:center;gap:12px;background:#f8f6ff;border-radius:14px;padding:14px 16px;margin-bottom:20px}
:where(.uses-superadmin) .ms-ava{width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:900;color:#fff;flex-shrink:0}
:where(.uses-superadmin) .ms-nm{font-weight:800;color:#1a1a2e;font-size:.9rem}
:where(.uses-superadmin) .ms-cd{font-size:.72rem;color:#aaa}
:where(.uses-superadmin) .access-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}
:where(.uses-superadmin) .ag-item{background:#f8f6ff;border-radius:14px;padding:14px}
:where(.uses-superadmin) .ag-label{font-size:.68rem;font-weight:800;color:#aaa;letter-spacing:1px;text-transform:uppercase;margin-bottom:8px}
:where(.uses-superadmin) .ag-icon-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}
:where(.uses-superadmin) .ag-icon{font-size:1.2rem}
:where(.uses-superadmin) .ag-name{font-size:.84rem;font-weight:800;color:#333}
:where(.uses-superadmin) .ag-inp{width:100%;background:#fff;border:2px solid #e0d8ff;border-radius:9px;padding:8px 12px;font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#7209b7;text-align:center;outline:none;transition:all .2s}
:where(.uses-superadmin) .ag-inp:focus{border-color:#7209b7;box-shadow:0 0 0 3px rgba(114,9,183,.1)}
:where(.uses-superadmin) .ag-hint{font-size:.67rem;color:#aaa;text-align:center;margin-top:4px}
:where(.uses-superadmin) .tab-row{display:flex;gap:4px;background:#fff;border-radius:14px;padding:5px;border:1px solid #e8e0ff;margin-bottom:20px;box-shadow:0 2px 10px rgba(114,9,183,.05);width:fit-content}
:where(.uses-superadmin) .tab{padding:9px 20px;border-radius:11px;border:none;font-family:'Nunito',sans-serif;font-size:.84rem;font-weight:800;cursor:pointer;transition:all .2s;color:#888;background:transparent}
:where(.uses-superadmin) .tab.active{background:linear-gradient(135deg,#f72585,#7209b7);color:#fff;box-shadow:0 4px 14px rgba(247,37,133,.35)}
:where(.uses-superadmin) .tab:hover:not(.active){background:#f3f0ff;color:#7209b7}
:where(.uses-superadmin) .tab-content{display:none}
:where(.uses-superadmin) .tab-content.show{display:block}
:where(.uses-superadmin) .plans-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}
:where(.uses-superadmin) #pg-billing .plan-card{border-radius:20px;padding:22px;text-align:left;background:transparent;border:2px solid transparent}
:where(.uses-superadmin) #pg-billing .plan-card:hover{transform:translateY(-5px);border-color:transparent}
:where(.uses-superadmin) .plan-card.pc-starter{background:linear-gradient(145deg,#f0fff8,#e8fff5);border-color:rgba(6,214,160,.3)!important}
:where(.uses-superadmin) .plan-card.pc-pro{background:linear-gradient(145deg,#eff2ff,#f0ecff);border-color:rgba(67,97,238,.3)!important}
:where(.uses-superadmin) .plan-card.pc-ent{background:linear-gradient(145deg,#fdf0ff,#f3f0ff);border-color:rgba(114,9,183,.3)!important}
:where(.uses-superadmin) .plan-card.pc-custom{background:linear-gradient(145deg,#fff8ec,#fff0f8);border-color:rgba(247,37,133,.3)!important}
:where(.uses-superadmin) .pc-badge{position:absolute;top:14px;right:14px;padding:3px 10px;border-radius:20px;font-size:.65rem;font-weight:800}
:where(.uses-superadmin) .pc-badge-pop{background:linear-gradient(135deg,#f72585,#7209b7);color:#fff}
:where(.uses-superadmin) .pc-badge-new{background:linear-gradient(135deg,#fb8500,#e63946);color:#fff}
:where(.uses-superadmin) .pc-icon{font-size:2.5rem;margin-bottom:10px}
:where(.uses-superadmin) .pc-name{font-family:'Rajdhani',sans-serif;font-size:1.3rem;font-weight:700;color:#1a1a2e;margin-bottom:4px}
:where(.uses-superadmin) .pc-price{font-family:'Rajdhani',sans-serif;font-size:1.8rem;font-weight:700;color:#f72585;line-height:1}
:where(.uses-superadmin) .pc-price-sub{font-size:.72rem;color:#aaa;font-weight:700;margin-bottom:12px}
:where(.uses-superadmin) .pc-divider{height:1px;background:rgba(0,0,0,.06);margin:12px 0}
:where(.uses-superadmin) .pc-features{display:flex;flex-direction:column;gap:6px}
:where(.uses-superadmin) .pc-feat{display:flex;align-items:center;gap:7px;font-size:.78rem;color:#555;font-weight:700}
:where(.uses-superadmin) .pc-feat .dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}
:where(.uses-superadmin) .pc-schools{margin-top:12px;font-size:.72rem;font-weight:800}
:where(.uses-superadmin) .pc-actions{margin-top:14px;display:flex;gap:7px}
:where(.uses-superadmin) .pa-edit{flex:1;padding:8px;border-radius:10px;border:none;font-family:'Nunito',sans-serif;font-size:.78rem;font-weight:800;cursor:pointer;transition:all .2s}
:where(.uses-superadmin) .pa-edit-s{background:#e8fff5;color:#06d6a0}
:where(.uses-superadmin) .pa-edit-s:hover{background:#06d6a0;color:#fff}
:where(.uses-superadmin) .pa-edit-p{background:#eff2ff;color:#4361ee}
:where(.uses-superadmin) .pa-edit-p:hover{background:#4361ee;color:#fff}
:where(.uses-superadmin) .pa-edit-e{background:#f3f0ff;color:#7209b7}
:where(.uses-superadmin) .pa-edit-e:hover{background:#7209b7;color:#fff}
:where(.uses-superadmin) .pa-edit-c{background:#fff8ec;color:#fb8500}
:where(.uses-superadmin) .pa-edit-c:hover{background:#fb8500;color:#fff}
:where(.uses-superadmin) .amt{font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700}
:where(.uses-superadmin) .amt-paid{color:#06d6a0}
:where(.uses-superadmin) .amt-pending{color:#e63946}
:where(.uses-superadmin) .amt-partial{color:#fb8500}
:where(.uses-superadmin) .due-warn{font-size:.68rem;font-weight:800;color:#fb8500}
:where(.uses-superadmin) .feature-list{display:flex;flex-direction:column;gap:8px}
:where(.uses-superadmin) .feat-row{display:flex;align-items:center;gap:10px}
:where(.uses-superadmin) .feat-row input[type=checkbox]{width:auto;flex-shrink:0}
:where(.uses-superadmin) .feat-label{font-size:.82rem;font-weight:700;color:#555;text-transform:none;letter-spacing:0}
:where(.uses-superadmin) .stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}
:where(.uses-superadmin) .stat-card{background:#fff;border-radius:18px;padding:20px;border:1px solid #e8e0ff;box-shadow:0 4px 20px rgba(114,9,183,.06);display:flex;align-items:center;gap:16px}
:where(.uses-superadmin) .sc-ico{width:52px;height:52px;border-radius:15px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}
:where(.uses-superadmin) .sc-ico1{background:linear-gradient(135deg,#f72585,#7209b7)}
:where(.uses-superadmin) .sc-ico2{background:linear-gradient(135deg,#06d6a0,#0077b6)}
:where(.uses-superadmin) .sc-ico3{background:linear-gradient(135deg,#fb8500,#e63946)}
:where(.uses-superadmin) .sc-ico4{background:linear-gradient(135deg,#4361ee,#4cc9f0)}
:where(.uses-superadmin) .stat-card .sc-val{font-family:'Rajdhani',sans-serif;font-size:2rem;font-weight:700;color:#1a1a2e;line-height:1}
:where(.uses-superadmin) .sc-lbl{font-size:.78rem;color:#aaa;font-weight:700;margin-top:3px}
:where(.uses-superadmin) .sc-chg{font-size:.7rem;font-weight:800;padding:2px 8px;border-radius:8px;display:inline-block;margin-top:4px}
:where(.uses-superadmin) .chg-up{background:#e8fff5;color:#06d6a0}
:where(.uses-superadmin) .chg-dn{background:#fff0f0;color:#e63946}
:where(.uses-superadmin) .schools-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
:where(.uses-superadmin) .school-card{background:#fff;border-radius:20px;border:1px solid #e8e0ff;box-shadow:0 4px 20px rgba(114,9,183,.06);overflow:hidden;transition:all .25s}
:where(.uses-superadmin) .school-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px rgba(114,9,183,.12)}
:where(.uses-superadmin) .card-head{padding:18px 20px;display:flex;align-items:center;gap:14px;border-bottom:1px solid #f0ecff}
:where(.uses-superadmin) .school-logo{width:50px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;color:#fff;font-weight:900;flex-shrink:0}
:where(.uses-superadmin) .school-card .school-name{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.uses-superadmin) .status-badge{margin-left:auto;padding:4px 12px;border-radius:20px;font-size:.7rem;font-weight:800;white-space:nowrap;flex-shrink:0}
:where(.uses-superadmin) .st-active{background:#e8fff5;color:#06d6a0;border:1px solid rgba(6,214,160,.25)}
:where(.uses-superadmin) .st-trial{background:#fff8ec;color:#fb8500;border:1px solid rgba(251,133,0,.25)}
:where(.uses-superadmin) .st-suspended{background:#fff0f0;color:#e63946;border:1px solid rgba(230,57,70,.25)}
:where(.uses-superadmin) .card-stats{display:grid;grid-template-columns:repeat(3,1fr);padding:14px 0}
:where(.uses-superadmin) .cs{text-align:center;padding:8px 12px;border-right:1px solid #f0ecff}
:where(.uses-superadmin) .cs:last-child{border-right:none}
:where(.uses-superadmin) .cs-val{font-family:'Rajdhani',sans-serif;font-size:1.4rem;font-weight:700;color:#1a1a2e}
:where(.uses-superadmin) .cs-lbl{font-size:.65rem;color:#aaa;font-weight:700;text-transform:uppercase;letter-spacing:.5px}
:where(.uses-superadmin) .card-access{padding:12px 20px;background:#f8f6ff;border-top:1px solid #f0ecff;display:flex;gap:8px;flex-wrap:wrap}
:where(.uses-superadmin) .acc-chip{display:flex;align-items:center;gap:5px;background:#fff;border:1px solid #e0d8ff;border-radius:8px;padding:4px 10px;font-size:.71rem;font-weight:800}
:where(.uses-superadmin) .acc-val{color:#7209b7;font-family:'Rajdhani',sans-serif;font-size:.95rem}
:where(.uses-superadmin) .acc-lbl{color:#aaa}
:where(.uses-superadmin) .prog{height:4px;background:#f0ecff;border-radius:4px;margin-top:3px;overflow:hidden}
:where(.uses-superadmin) .prog-bar{height:100%;border-radius:4px;background:linear-gradient(90deg,#f72585,#7209b7)}
:where(.uses-superadmin) .card-actions{padding:12px 20px;display:flex;gap:8px;border-top:1px solid #f0ecff}
:where(.uses-superadmin) .act-btn{flex:1;padding:8px 4px;border-radius:10px;border:none;font-family:'Nunito',sans-serif;font-size:.76rem;font-weight:800;cursor:pointer;transition:all .2s;text-align:center}
:where(.uses-superadmin) .act-view{background:#f3f0ff;color:#7209b7}
:where(.uses-superadmin) .act-view:hover{background:linear-gradient(135deg,#7209b7,#4361ee);color:#fff}
:where(.uses-superadmin) .act-acc{background:#fff8ec;color:#fb8500}
:where(.uses-superadmin) .act-acc:hover{background:linear-gradient(135deg,#fb8500,#e63946);color:#fff}
:where(.uses-superadmin) .act-login{background:#e8fff5;color:#06d6a0}
:where(.uses-superadmin) .act-login:hover{background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff}
:where(.uses-superadmin) .act-sus{background:#fff0f0;color:#e63946}
:where(.uses-superadmin) .act-sus:hover{background:#e63946;color:#fff}
:where(.uses-superadmin) .school-header{background:linear-gradient(135deg,#1a1a2e 0%,#3a0ca3 50%,#4361ee 100%);border-radius:22px;padding:28px 32px;margin-bottom:22px;display:flex;align-items:center;gap:24px;position:relative;overflow:hidden}
:where(.uses-superadmin) .school-header::after{content:'🏫';position:absolute;right:32px;font-size:6rem;opacity:.06}
:where(.uses-superadmin) .sh-logo{width:70px;height:70px;border-radius:20px;background:linear-gradient(135deg,#f72585,#fb8500);display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:900;color:#fff;flex-shrink:0;box-shadow:0 8px 24px rgba(247,37,133,.4)}
:where(.uses-superadmin) .sh-name{font-family:'Rajdhani',sans-serif;font-size:1.6rem;font-weight:700;color:#fff;line-height:1.1}
:where(.uses-superadmin) .sh-meta{font-size:.78rem;color:rgba(255,255,255,.65);margin-top:5px}
:where(.uses-superadmin) .sh-badges{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
:where(.uses-superadmin) .sh-badge{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:4px 12px;font-size:.72rem;font-weight:800;color:#fff}
:where(.uses-superadmin) .sh-actions{margin-left:auto;display:flex;gap:8px;flex-shrink:0;flex-direction:column}
:where(.uses-superadmin) .sh-btn{padding:9px 18px;border-radius:11px;border:none;font-family:'Nunito',sans-serif;font-size:.82rem;font-weight:800;cursor:pointer;transition:all .2s;white-space:nowrap}
:where(.uses-superadmin) .sh-btn-p{background:linear-gradient(135deg,#f72585,#7209b7);color:#fff}
:where(.uses-superadmin) .sh-btn-o{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.25)}
:where(.uses-superadmin) .access-bar{background:#fff;border-radius:18px;padding:20px 24px;margin-bottom:22px;border:1px solid #e8e0ff;box-shadow:0 4px 16px rgba(114,9,183,.06)}
:where(.uses-superadmin) .ab-title{font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;color:#1a1a2e;margin-bottom:14px}
:where(.uses-superadmin) .ab-row{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
:where(.uses-superadmin) .ab-item{text-align:center;background:#f8f6ff;border-radius:12px;padding:12px 8px}
:where(.uses-superadmin) .ab-icon{font-size:1.3rem;margin-bottom:4px}
:where(.uses-superadmin) .ab-label{font-size:.65rem;color:#aaa;font-weight:700;text-transform:uppercase;letter-spacing:.5px}
:where(.uses-superadmin) .ab-counts{font-family:'Rajdhani',sans-serif;font-size:1.2rem;font-weight:700;color:#1a1a2e;margin:4px 0}
:where(.uses-superadmin) .ab-used{color:#7209b7}
:where(.uses-superadmin) .ab-max{color:#aaa;font-size:.85rem}
:where(.uses-superadmin) .ab-prog{height:5px;background:#e8e0ff;border-radius:4px;overflow:hidden;margin-top:5px}
:where(.uses-superadmin) .ab-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,#f72585,#7209b7)}
:where(.uses-superadmin) .charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
:where(.uses-superadmin) .charts-grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-bottom:18px}
:where(.uses-superadmin) canvas{max-height:240px}
:where(.uses-superadmin) .act-item{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid #f5f3ff}
:where(.uses-superadmin) .act-item:last-child{border-bottom:none}
:where(.uses-superadmin) .adot{width:9px;height:9px;border-radius:50%;margin-top:5px;flex-shrink:0}
:where(.uses-superadmin) .atxt{font-size:.8rem;color:#333;font-weight:600}
:where(.uses-superadmin) .atime{font-size:.68rem;color:#aaa;margin-top:2px}
:where(.uses-superadmin) .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:7px 8px;border-radius:10px;border:2px solid #e0d8ff;background:#f3f0ff;flex-shrink:0}
:where(.uses-superadmin) .hamburger span{display:block;width:18px;height:2.5px;background:#7209b7;border-radius:3px}
:where(.uses-superadmin) .overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:99}
:where(.uses-edubloom,.uses-superadmin) .overlay.show{display:block}
:where(.uses-edubloom) .steps-bar{display:flex;align-items:center;background:var(--c-white);border-radius:16px;padding:14px 22px;margin-bottom:20px;box-shadow:var(--shadow-md);border:1px solid var(--c-border);overflow-x:auto;gap:4px}
:where(.uses-edubloom) .step{display:flex;align-items:center;gap:8px;flex-shrink:0}
:where(.uses-edubloom) .step-num{width:30px;height:30px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:0.78rem;font-weight:800;transition:all var(--t-normal)}
:where(.uses-edubloom) .step.done .step-num,:where(.uses-edubloom) .step.active .step-num{background:var(--c-grad);color:#fff;box-shadow:0 3px 10px var(--sb-active-shadow,rgba(67,97,238,0.3))}
:where(.uses-edubloom) .step.pending .step-num{background:var(--c-bg);color:#aaa;border:2px solid var(--c-border)}
:where(.uses-edubloom) .step-label{font-size:0.78rem;font-weight:800;transition:color var(--t-normal)}
:where(.uses-edubloom) .step.active .step-label,:where(.uses-edubloom) .step.done .step-label{color:var(--c-primary)}
:where(.uses-edubloom) .step.pending .step-label{color:#bbb}
:where(.uses-edubloom) .step-line{flex:1;height:2px;background:var(--c-border);min-width:20px;border-radius:2px}
:where(.uses-edubloom) .step-line.done{background:var(--c-grad)}
:where(.uses-edubloom) .form-panel{display:none}
:where(.uses-edubloom) .form-panel.active{display:block;animation:fadeUp 0.3s ease}
:where(.uses-edubloom) .activity-item,:where(.uses-edubloom) .act-item{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid var(--c-bg)}
:where(.uses-edubloom) .activity-item:last-child,:where(.uses-edubloom) .act-item:last-child{border-bottom:none}
:where(.uses-edubloom) .adot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:5px}
:where(.uses-edubloom) .atxt{font-size:0.82rem;font-weight:700;color:var(--c-text)}
:where(.uses-edubloom) .atime{font-size:0.7rem;color:#aaa;margin-top:2px}
:where(.uses-edubloom) .section-head{display:flex;align-items:center;gap:12px;margin-bottom:18px}
:where(.uses-edubloom) .sh-icon{width:46px;height:46px;border-radius:14px;background:var(--c-grad);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:1.3rem;box-shadow:0 6px 18px var(--sb-active-shadow,rgba(67,97,238,0.28))}
:where(.uses-edubloom) .sh-title{font-family:'Rajdhani',sans-serif;font-size:1.2rem;font-weight:700;color:var(--c-text)}
:where(.uses-edubloom) .sh-sub{font-size:0.74rem;color:#aaa}
:where(.uses-edubloom) canvas{max-width:100%}
@media print{
  :where(.uses-edubloom) .sidebar,:where(.uses-edubloom) .topbar,:where(.uses-edubloom) .hamburger,:where(.uses-edubloom) .overlay,:where(.uses-edubloom) .no-print{display:none!important}
  :where(.uses-edubloom) .main{margin-left:0!important}
  :where(.uses-edubloom) body{background:#fff!important}
  :where(.uses-edubloom) .panel,:where(.uses-edubloom) .card{box-shadow:none!important;border:1px solid #ddd!important}
}
@media(max-width:1200px){
  :where(.uses-edubloom) .dg3{grid-template-columns:1fr 1fr}
  :where(.uses-edubloom) .dg4{grid-template-columns:1fr 1fr}
  :where(.uses-edubloom) .stat-grid-5{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:1100px){
  :where(.uses-edubloom) .sidebar{transform:translateX(calc(-1 * var(--sb-width)));transition:transform var(--t-normal);z-index:200}
  :where(.uses-edubloom) .sidebar.open{transform:translateX(0);box-shadow:8px 0 40px rgba(0,0,0,0.15)}
}
@media(max-width:1200px){
  :where(.uses-superadmin) .settings-grid{grid-template-columns:1fr 1fr}
  :where(.uses-superadmin) .kpi-grid{grid-template-columns:repeat(2,1fr)}
  :where(.uses-superadmin) .plans-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:1100px){
  :where(.uses-superadmin) .sidebar{transform:translateX(-270px);transition:transform .3s;z-index:200;height:100vh}
  :where(.uses-superadmin) .sidebar.open{transform:translateX(0)}
  :where(.uses-edubloom,.uses-superadmin) .main{margin-left:0}
  :where(.uses-edubloom,.uses-superadmin) .hamburger{display:flex}
  :where(.uses-edubloom) .stat-grid{grid-template-columns:repeat(2,1fr)}
  :where(.uses-edubloom) .kpi-grid{grid-template-columns:repeat(2,1fr)}
  :where(.uses-edubloom) .dg2{grid-template-columns:1fr}
  :where(.uses-edubloom) .dg-2-1,:where(.uses-edubloom) .dg-1-2{grid-template-columns:1fr}
  :where(.uses-edubloom) .layout,:where(.uses-edubloom) .layout-sm{grid-template-columns:1fr}
  :where(.uses-edubloom) .form-card{position:static!important}
  :where(.uses-edubloom) .qa-grid{grid-template-columns:repeat(3,1fr)}
  :where(.uses-superadmin) .stat-grid{grid-template-columns:repeat(3,1fr)}
  :where(.uses-superadmin) .stat-grid .sc6{grid-column:auto}
  :where(.uses-superadmin) #pg-dashboard .dg2,:where(.uses-superadmin) #pg-dashboard .dg3,:where(.uses-superadmin) #pg-analytics .dg2,:where(.uses-superadmin) #pg-billing .dg2{grid-template-columns:1fr}
  :where(.uses-superadmin) .crown-badge{display:none}
  :where(.uses-superadmin) .form-grid{grid-template-columns:1fr 1fr}
  :where(.uses-superadmin) .form-grid-3{grid-template-columns:1fr 1fr}
  :where(.uses-superadmin) .stat-row{grid-template-columns:1fr 1fr}
  :where(.uses-superadmin) .profile-grid{grid-template-columns:1fr}
  :where(.uses-superadmin) .charts-grid,:where(.uses-superadmin) .charts-grid3{grid-template-columns:1fr 1fr}
  :where(.uses-superadmin) .ab-row{grid-template-columns:repeat(3,1fr)}
  :where(.uses-superadmin) .sh-actions{display:none}
}
@media(max-width:900px){
  :where(.uses-superadmin) .acc-grid{grid-template-columns:repeat(3,1fr)}
  :where(.uses-superadmin) .schools-grid{grid-template-columns:1fr}
  :where(.uses-superadmin) .charts-grid,:where(.uses-superadmin) .charts-grid3{grid-template-columns:1fr}
}
@media(max-width:768px){
  :where(.uses-superadmin) .content{padding:16px}
  :where(.uses-superadmin) .topbar{padding:0 16px}
}
@media(max-width:700px){
  :where(.uses-superadmin) .topbar{gap:8px;height:60px}
  :where(.uses-superadmin) .tb-sub{display:none}
  :where(.uses-superadmin) .panel,:where(.uses-superadmin) .form-wrap{padding:16px}
  :where(.uses-superadmin) .stat-grid{grid-template-columns:repeat(2,1fr)}
  :where(.uses-superadmin) .form-grid,:where(.uses-superadmin) .form-grid-3{grid-template-columns:1fr}
  :where(.uses-superadmin) .plan-row{grid-template-columns:1fr}
  :where(.uses-superadmin) .settings-grid{grid-template-columns:1fr}
  :where(.uses-superadmin) .kpi-grid{grid-template-columns:1fr 1fr}
  :where(.uses-superadmin) .plans-grid{grid-template-columns:1fr 1fr}
  :where(.uses-edubloom,.uses-superadmin) .content{padding:14px}
  :where(.uses-edubloom) .topbar{padding:0 14px;height:58px;gap:8px}
  :where(.uses-edubloom) .tb-sub{display:none}
  :where(.uses-edubloom) .stat-grid{grid-template-columns:1fr 1fr}
  :where(.uses-edubloom) .stat-grid-5{grid-template-columns:1fr 1fr}
  :where(.uses-edubloom) .kpi-grid{grid-template-columns:1fr 1fr}
  :where(.uses-edubloom) .dg3{grid-template-columns:1fr}
  :where(.uses-edubloom) .qa-grid{grid-template-columns:1fr 1fr}
  :where(.uses-edubloom) .panel,:where(.uses-edubloom) .card{padding:15px}
  :where(.uses-edubloom) .row2,:where(.uses-edubloom) .row3{grid-template-columns:1fr}
  :where(.uses-edubloom) .tab-btn{min-width:90px;font-size:0.74rem;padding:7px 10px}
  :where(.uses-edubloom) .steps-bar{padding:12px}
  :where(.uses-edubloom) .step-label{display:none}
  :where(.uses-superadmin) .alert-card{flex-direction:column}
  :where(.uses-superadmin) .alert-actions{width:100%}
  :where(.uses-superadmin) .stat-chips{gap:10px}
  :where(.uses-superadmin) .stat-row{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
  :where(.uses-edubloom,.uses-superadmin) .stat-grid{grid-template-columns:1fr 1fr}
  :where(.uses-edubloom) .qa-grid{grid-template-columns:1fr}
  :where(.uses-edubloom) .tb-title{font-size:1.1rem}
}
:where(.page-admin-dashboard) *,*:where(.page-admin-dashboard){margin:0;padding:0;box-sizing:border-box}
:where(.page-admin-dashboard) body{font-family:'Nunito',sans-serif;background:#f0f4ff;display:flex;min-height:100vh}
:where(.page-admin-dashboard) .sidebar{width:250px;height:100vh;overflow:hidden;background:#fff;border-right:1px solid #e8ecff;display:flex;flex-direction:column;position:fixed;top:0;left:0;z-index:100;box-shadow:4px 0 20px rgba(67,97,238,0.07)}
:where(.mod-admin) .acc-head{cursor:pointer;user-select:none}
:where(.mod-admin) .acc-head .arr{font-size:.65rem;transition:transform .22s;margin-left:auto;opacity:.6}
:where(.mod-admin) .acc-head.open .arr{transform:rotate(90deg)}
:where(.mod-admin) .acc-body{display:none}
:where(.mod-admin) .acc-body.show{display:block}
:where(.mod-admin) .ni.sub{padding-left:30px;font-size:.76rem}
:where(.mod-admin) .ni.sub:hover{background:rgba(67,97,238,.07);color:#4361ee}
:where(.mod-admin) .sub-hd{padding:6px 13px 3px 28px;font-size:.57rem;font-weight:800;color:#c0c8ff;letter-spacing:2px;text-transform:uppercase;margin-top:6px;border-top:1px solid rgba(255,255,255,.07)}
:where(.uses-sidebar) .sidebar{width:250px;height:100vh;overflow:hidden;background:#fff;border-right:1px solid #e8ecff;display:flex;flex-direction:column;position:fixed;top:0;left:0;z-index:100;box-shadow:4px 0 20px rgba(67,97,238,.07)}
:where(.mod-admin) .sb-head{padding:12px 14px;background:linear-gradient(135deg,#4361ee,#7209b7);display:flex;align-items:center;gap:10px;flex-shrink:0}
:where(.mod-admin) .sb-head img{width:30px;flex-shrink:0}
:where(.uses-sidebar) .sb-head-text .brand{font-family:"Rajdhani",sans-serif;font-size:1.2rem;font-weight:700;color:#fff;letter-spacing:2px;line-height:1}
:where(.uses-sidebar) .sb-head-text .sub{font-size:.58rem;color:rgba(255,255,255,.7);letter-spacing:2px;text-transform:uppercase}
:where(.page-admin-dashboard) .sb-head-text .brand{font-family:'Rajdhani',sans-serif;font-size:1.2rem;font-weight:700;color:#fff;letter-spacing:2px;line-height:1}
:where(.page-admin-dashboard) .sb-head-text .sub{font-size:0.58rem;color:rgba(255,255,255,0.7);letter-spacing:2px;text-transform:uppercase}
:where(.mod-admin) .sb-role-badge{margin:8px 10px 0;background:linear-gradient(135deg,#4361ee,#7209b7);border-radius:9px;padding:7px 11px;display:flex;align-items:center;gap:8px;flex-shrink:0}
:where(.mod-admin) .srb-icon{font-size:1rem}
:where(.uses-sidebar) .srb-label{font-size:.68rem;font-weight:800;color:#fff;letter-spacing:1px;text-transform:uppercase}
:where(.uses-sidebar) .srb-sub{font-size:.6rem;color:rgba(255,255,255,.75)}
:where(.page-admin-dashboard) .srb-label{font-size:0.68rem;font-weight:800;color:#fff;letter-spacing:1px;text-transform:uppercase}
:where(.page-admin-dashboard) .srb-sub{font-size:0.6rem;color:rgba(255,255,255,0.75)}
:where(.mod-admin) .sb-nav{flex:1;padding:6px 0 4px;overflow-y:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#e0d8ff transparent}
:where(.mod-admin) .sb-nav::-webkit-scrollbar{width:3px}
:where(.page-admin-dashboard) .sb-nav::-webkit-scrollbar-track{background:transparent}
:where(.mod-admin) .sb-nav::-webkit-scrollbar-thumb{background:#ddd;border-radius:4px}
:where(.uses-sidebar) .nav-sec{padding:5px 14px 3px;font-size:.58rem;font-weight:800;color:#ccc;letter-spacing:2.5px;text-transform:uppercase}
:where(.uses-sidebar) .ni{display:flex;align-items:center;gap:8px;padding:7px 13px;color:#888;text-decoration:none;font-size:.8rem;font-weight:700;transition:all .2s;cursor:pointer;margin:1px 7px;border-radius:9px}
:where(.uses-sidebar) .ni:hover{background:rgba(67,97,238,.08);color:#4361ee}
:where(.uses-sidebar) .ni.active{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 3px 10px rgba(67,97,238,.3)}
:where(.uses-sidebar) .ni .ic{font-size:.88rem;width:17px;text-align:center;flex-shrink:0}
:where(.uses-sidebar) .ni .nb{margin-left:auto;background:#f72585;color:#fff;font-size:.58rem;padding:1px 5px;border-radius:8px}
:where(.page-admin-dashboard) .nav-sec{padding:5px 14px 3px;font-size:0.58rem;font-weight:800;color:#ccc;letter-spacing:2.5px;text-transform:uppercase}
:where(.page-admin-dashboard) .ni{display:flex;align-items:center;gap:8px;padding:7px 13px;color:#888;text-decoration:none;font-size:0.8rem;font-weight:700;transition:all 0.2s;cursor:pointer;margin:1px 7px;border-radius:9px}
:where(.page-admin-dashboard) .ni:hover{background:rgba(67,97,238,0.08);color:#4361ee}
:where(.page-admin-dashboard) .ni.active{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 3px 10px rgba(67,97,238,0.3)}
:where(.page-admin-dashboard) .ni .ic{font-size:0.88rem;width:17px;text-align:center;flex-shrink:0}
:where(.page-admin-dashboard) .ni .nb{margin-left:auto;background:#f72585;color:#fff;font-size:0.58rem;padding:1px 5px;border-radius:8px}
:where(.mod-admin) .sb-user{margin:4px 10px 8px;background:#f8f9ff;border-radius:10px;padding:9px 10px;display:flex;align-items:center;gap:8px;flex-shrink:0}
:where(.uses-sidebar) .ava{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#4361ee,#f72585);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.8rem;color:#fff;flex-shrink:0}
:where(.uses-sidebar) .un{font-size:.8rem;font-weight:800;color:#333}
:where(.uses-sidebar) .ur{font-size:.65rem;color:#999}
:where(.page-admin-dashboard) .ava{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#4361ee,#f72585);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:0.8rem;color:#fff;flex-shrink:0}
:where(.page-admin-dashboard) .un{font-size:0.8rem;font-weight:800;color:#333}
:where(.page-admin-dashboard) .ur{font-size:0.65rem;color:#999}
:where(.mod-admin) .main{margin-left:250px;flex:1;display:flex;flex-direction:column;min-width:0}
:where(.uses-sidebar) .topbar{height:64px;background:#fff;border-bottom:1px solid #eaeeff;display:flex;align-items:center;padding:0 22px;gap:12px;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(67,97,238,.06)}
:where(.uses-sidebar) .tb-title{font-family:"Rajdhani",sans-serif;font-size:1.4rem;font-weight:700;color:#1a1a2e}
:where(.uses-sidebar) .tb-sub{color:#aaa;font-size:.75rem}
:where(.page-admin-dashboard) .topbar{height:66px;background:#fff;border-bottom:1px solid #eaeeff;display:flex;align-items:center;padding:0 24px;gap:12px;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(67,97,238,0.06)}
:where(.page-admin-dashboard) .tb-title{font-family:'Rajdhani',sans-serif;font-size:1.45rem;font-weight:700;color:#1a1a2e}
:where(.page-admin-dashboard) .tb-sub{color:#aaa;font-size:0.78rem}
:where(.mod-admin) .spacer{flex:1}
:where(.uses-sidebar) .ibtn{width:38px;height:38px;border-radius:11px;background:#f8f9ff;border:2px solid #eaeeff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;position:relative;transition:all .2s;flex-shrink:0}
:where(.page-admin-dashboard) .search{background:#f8f9ff;border:2px solid #eaeeff;border-radius:12px;padding:9px 14px;font-family:'Nunito',sans-serif;font-size:0.84rem;outline:none;width:200px;color:#333;transition:all 0.2s}
:where(.page-admin-dashboard) .search:focus{border-color:#4361ee;box-shadow:0 0 0 3px rgba(67,97,238,0.1)}
:where(.page-admin-dashboard) .ibtn{width:40px;height:40px;border-radius:12px;background:#f8f9ff;border:2px solid #eaeeff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;position:relative;transition:all 0.2s;flex-shrink:0}
:where(.mod-admin) .ibtn:hover{background:linear-gradient(135deg,#4361ee,#7209b7);border-color:transparent}
:where(.uses-sidebar) .nd{position:absolute;top:4px;right:4px;width:8px;height:8px;border-radius:50%;background:#f72585;border:2px solid #fff}
:where(.uses-sidebar) .content{padding:20px;flex:1}
:where(.uses-sidebar) .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:7px 8px;border-radius:10px;border:2px solid #eaeeff;background:#f8f9ff;flex-shrink:0}
:where(.uses-sidebar) .hamburger span{display:block;width:18px;height:2.5px;background:#4361ee;border-radius:3px;transition:all .3s}
:where(.page-admin-dashboard) .nd{position:absolute;top:5px;right:5px;width:8px;height:8px;border-radius:50%;background:#f72585;border:2px solid #fff}
:where(.page-admin-dashboard) .content{padding:22px;flex:1}
:where(.page-admin-dashboard) .stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}
:where(.page-admin-dashboard) .sc{border-radius:18px;padding:20px;color:#fff;position:relative;overflow:hidden;transition:transform 0.25s,box-shadow 0.25s}
:where(.page-admin-dashboard) .sc:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(0,0,0,0.18)}
:where(.page-admin-dashboard) .sc::after{content:'';position:absolute;top:-20px;right:-20px;width:90px;height:90px;border-radius:50%;background:rgba(255,255,255,0.12)}
:where(.page-admin-dashboard) .sc::before{content:'';position:absolute;bottom:-25px;right:15px;width:65px;height:65px;border-radius:50%;background:rgba(255,255,255,0.07)}
:where(.page-admin-dashboard) .sc1{background:linear-gradient(135deg,#4361ee,#3a0ca3)}
:where(.page-admin-dashboard) .sc2{background:linear-gradient(135deg,#f72585,#7209b7)}
:where(.page-admin-dashboard) .sc3{background:linear-gradient(135deg,#06d6a0,#0077b6)}
:where(.page-admin-dashboard) .sc4{background:linear-gradient(135deg,#fb8500,#e63946)}
:where(.page-admin-dashboard) .sc-icon{font-size:2rem;margin-bottom:8px;position:relative;z-index:1}
:where(.page-admin-dashboard) .sc-val{font-family:'Rajdhani',sans-serif;font-size:2.2rem;font-weight:700;line-height:1;position:relative;z-index:1}
:where(.page-admin-dashboard) .sc-label{font-size:0.8rem;opacity:0.9;margin-top:4px;font-weight:700;position:relative;z-index:1}
:where(.page-admin-dashboard) .sc-change{margin-top:8px;font-size:0.73rem;font-weight:700;background:rgba(255,255,255,0.2);display:inline-block;padding:3px 10px;border-radius:20px;position:relative;z-index:1}
:where(.page-admin-dashboard) .dg{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-admin-dashboard) .dg2{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-admin-dashboard) .panel{background:#fff;border-radius:18px;padding:20px;box-shadow:0 4px 20px rgba(67,97,238,0.07);border:1px solid #eaeeff}
:where(.page-admin-dashboard) .ph{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
:where(.page-admin-dashboard) .pt{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-admin-dashboard) .pa{font-size:0.74rem;color:#4361ee;font-weight:800;cursor:pointer;background:#eff2ff;padding:5px 12px;border-radius:8px;border:none;white-space:nowrap}
:where(.page-admin-dashboard) table{width:100%;border-collapse:collapse;font-size:0.82rem}
:where(.page-admin-dashboard) th{font-weight:800;text-align:left;padding:9px 11px;border-bottom:2px solid #f0f4ff;font-size:0.7rem;color:#aaa;letter-spacing:1px;text-transform:uppercase}
:where(.page-admin-dashboard) td{padding:10px 11px;border-bottom:1px solid #f5f7ff;color:#444}
:where(.page-admin-dashboard) tr:hover td{background:#f8f9ff}
:where(.page-admin-dashboard) .tag{display:inline-block;padding:3px 10px;border-radius:20px;font-size:0.71rem;font-weight:800}
:where(.page-admin-dashboard) .tg{background:#e8fff5;color:#06d6a0}
:where(.page-admin-dashboard) .tr{background:#fff0f0;color:#e63946}
:where(.page-admin-dashboard) .to{background:#fff8ec;color:#fb8500}
:where(.page-admin-dashboard) .tb{background:#eff2ff;color:#4361ee}
:where(.page-admin-dashboard) .tp{background:#fdf0ff;color:#7209b7}
:where(.page-admin-dashboard) .act-item{display:flex;align-items:flex-start;gap:12px;padding:11px 0;border-bottom:1px solid #f5f7ff}
:where(.page-admin-dashboard) .act-item:last-child{border-bottom:none}
:where(.page-admin-dashboard) .adot{width:10px;height:10px;border-radius:50%;margin-top:5px;flex-shrink:0}
:where(.page-admin-dashboard) .atxt{font-size:0.82rem;color:#333;font-weight:600}
:where(.page-admin-dashboard) .atime{font-size:0.7rem;color:#aaa;margin-top:2px}
:where(.page-admin-dashboard) .qa-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
:where(.page-admin-dashboard) .qa-btn{padding:12px 8px;border-radius:12px;border:2px solid #eaeeff;background:#f8f9ff;color:#444;font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:800;cursor:pointer;transition:all 0.2s;display:flex;align-items:center;gap:7px}
:where(.page-admin-dashboard) .qa-btn:hover{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;border-color:transparent;transform:translateY(-2px)}
:where(.page-admin-dashboard) .pi{margin-bottom:13px}
:where(.page-admin-dashboard) .pl{display:flex;justify-content:space-between;font-size:0.81rem;color:#444;margin-bottom:5px;font-weight:700}
:where(.page-admin-dashboard) .pb{height:8px;background:#f0f4ff;border-radius:10px;overflow:hidden}
:where(.page-admin-dashboard) .pf{height:100%;border-radius:10px}
:where(.page-admin-dashboard) .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px 9px;border-radius:10px;border:2px solid #eaeeff;background:#f8f9ff;flex-shrink:0;transition:all 0.2s}
:where(.page-admin-dashboard) .hamburger span{display:block;width:19px;height:2.5px;background:#4361ee;border-radius:3px;transition:all 0.3s}
:where(.mod-admin) .hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
:where(.mod-admin) .hamburger.open span:nth-child(2){opacity:0}
:where(.mod-admin) .hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
:where(.uses-sidebar) .overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:99;backdrop-filter:blur(2px)}
:where(.page-admin-dashboard) .overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.45);z-index:99;backdrop-filter:blur(2px)}
:where(.mod-admin) .overlay.show{display:block}
@media(max-width:1024px){
  :where(.uses-sidebar) .sidebar{transform:translateX(-260px);transition:transform .3s ease;z-index:200}
  :where(.uses-sidebar) .sidebar.open{transform:translateX(0);box-shadow:8px 0 40px rgba(0,0,0,.15)}
}
:where(.page-admin-dashboard) .tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
:where(.page-admin-dashboard) .tbl-wrap table{min-width:500px}
:where(.page-admin-dashboard) .sm-section{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(67,97,238,0.07);border:1px solid #eaeeff;margin-bottom:18px}
:where(.page-admin-dashboard) .sm-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap;gap:10px}
:where(.page-admin-dashboard) .sm-title-row{display:flex;align-items:center;gap:12px}
:where(.page-admin-dashboard) .sm-icon{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,#4361ee,#7209b7);display:flex;align-items:center;justify-content:center;font-size:1.3rem;box-shadow:0 6px 18px rgba(67,97,238,0.3);flex-shrink:0}
:where(.page-admin-dashboard) .sm-title{font-family:'Rajdhani',sans-serif;font-size:1.25rem;font-weight:700;color:#1a1a2e}
:where(.page-admin-dashboard) .sm-sub{font-size:0.75rem;color:#aaa;font-weight:700}
:where(.page-admin-dashboard) .sm-actions{display:flex;gap:8px;flex-wrap:wrap}
:where(.page-admin-dashboard) .btn-sm-add{padding:9px 18px;border-radius:11px;border:none;background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;font-family:'Nunito',sans-serif;font-size:0.82rem;font-weight:800;cursor:pointer;transition:all 0.2s;box-shadow:0 4px 14px rgba(67,97,238,0.3)}
:where(.page-admin-dashboard) .btn-sm-add:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(67,97,238,0.4)}
:where(.page-admin-dashboard) .btn-sm-all{padding:9px 18px;border-radius:11px;border:2px solid #eaeeff;background:#f8f9ff;color:#4361ee;font-family:'Nunito',sans-serif;font-size:0.82rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-admin-dashboard) .btn-sm-all:hover{background:#eff2ff;border-color:#c5c9ff}
:where(.page-admin-dashboard) .sm-filters{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}
:where(.page-admin-dashboard) .sf{padding:7px 13px;border-radius:9px;border:2px solid #eaeeff;background:#f8f9ff;font-family:'Nunito',sans-serif;font-size:0.78rem;font-weight:700;color:#555;outline:none;cursor:pointer;transition:all 0.2s}
:where(.page-admin-dashboard) .sf:focus{border-color:#4361ee}
:where(.page-admin-dashboard) .sm-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}
:where(.page-admin-dashboard) .sm-stat{border-radius:13px;padding:12px 14px;display:flex;align-items:center;gap:10px}
:where(.page-admin-dashboard) .ss1{background:linear-gradient(135deg,rgba(67,97,238,0.1),rgba(114,9,183,0.08));border:1.5px solid rgba(67,97,238,0.15)}
:where(.page-admin-dashboard) .ss2{background:linear-gradient(135deg,rgba(6,214,160,0.1),rgba(0,119,182,0.08));border:1.5px solid rgba(6,214,160,0.15)}
:where(.page-admin-dashboard) .ss3{background:linear-gradient(135deg,rgba(251,133,0,0.1),rgba(230,57,70,0.08));border:1.5px solid rgba(251,133,0,0.15)}
:where(.page-admin-dashboard) .ss4{background:linear-gradient(135deg,rgba(247,37,133,0.1),rgba(114,9,183,0.08));border:1.5px solid rgba(247,37,133,0.15)}
:where(.page-admin-dashboard) .sm-stat-icon{font-size:1.5rem;flex-shrink:0}
:where(.page-admin-dashboard) .sm-stat-val{font-family:'Rajdhani',sans-serif;font-size:1.5rem;font-weight:700;line-height:1;color:#1a1a2e}
:where(.page-admin-dashboard) .sm-stat-lbl{font-size:0.68rem;font-weight:800;color:#888}
:where(.page-admin-dashboard) .stu-table{width:100%;border-collapse:collapse;font-size:0.82rem}
:where(.page-admin-dashboard) .stu-table th{font-weight:800;text-align:left;padding:10px 12px;border-bottom:2px solid #f0f4ff;font-size:0.69rem;color:#bbb;letter-spacing:1px;text-transform:uppercase;background:#fafbff}
:where(.page-admin-dashboard) .stu-table td{padding:11px 12px;border-bottom:1px solid #f5f7ff;color:#444;vertical-align:middle}
:where(.page-admin-dashboard) .stu-table tr:hover td{background:#f8f9ff}
:where(.page-admin-dashboard) .stu-row{display:flex;align-items:center;gap:10px}
:where(.page-admin-dashboard) .stu-ava{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;font-weight:900}
:where(.page-admin-dashboard) .stu-name{font-size:0.85rem;font-weight:800;color:#333}
:where(.page-admin-dashboard) .stu-id{font-size:0.68rem;color:#aaa}
:where(.page-admin-dashboard) .act-grp{display:flex;gap:5px;align-items:center}
:where(.page-admin-dashboard) .abtn{padding:5px 10px;border-radius:8px;border:none;font-size:0.72rem;font-weight:800;cursor:pointer;transition:all 0.2s;display:flex;align-items:center;gap:4px;white-space:nowrap}
:where(.page-admin-dashboard) .abtn:hover{transform:translateY(-1px)}
:where(.page-admin-dashboard) .abtn-view{background:#eff2ff;color:#4361ee;border:1.5px solid rgba(67,97,238,0.2)}
:where(.page-admin-dashboard) .abtn-view:hover{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;border-color:transparent}
:where(.page-admin-dashboard) .abtn-edit{background:#fff0f8;color:#f72585;border:1.5px solid rgba(247,37,133,0.2)}
:where(.page-admin-dashboard) .abtn-edit:hover{background:linear-gradient(135deg,#f72585,#7209b7);color:#fff;border-color:transparent}
:where(.page-admin-dashboard) .abtn-del{background:#fff0f0;color:#e63946;border:1.5px solid rgba(230,57,70,0.2)}
:where(.page-admin-dashboard) .abtn-del:hover{background:#e63946;color:#fff;border-color:transparent}
:where(.page-admin-dashboard) .sm-footer{display:flex;align-items:center;justify-content:space-between;margin-top:14px;flex-wrap:wrap;gap:8px}
:where(.page-admin-dashboard) .sm-count{font-size:0.78rem;color:#aaa;font-weight:700}
:where(.page-admin-dashboard) .sm-more{padding:8px 18px;border-radius:10px;border:2px solid #eaeeff;background:#f8f9ff;color:#4361ee;font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-admin-dashboard) .sm-more:hover{background:#eff2ff}
@media(max-width:1024px){
  :where(.page-admin-dashboard) .sidebar{transform:translateX(-260px);transition:transform 0.3s ease;z-index:200}
  :where(.page-admin-dashboard) .sidebar.open{transform:translateX(0);box-shadow:8px 0 40px rgba(0,0,0,0.15)}
  :where(.mod-admin) .main{margin-left:0}
  :where(.mod-admin) .hamburger{display:flex}
}
:where(.tpl-6) *,*:where(.tpl-6){margin:0;padding:0;box-sizing:border-box}
:where(.page-principle-dashboard) body{font-family:"Nunito",sans-serif;background:#f5f0ff;display:flex;min-height:100vh}
:where(.page-principle-dashboard) .sidebar{width:250px;min-height:100vh;background:#fff;border-right:1px solid #e0d0ff;display:flex;flex-direction:column;position:fixed;top:0;left:0;z-index:100;box-shadow:4px 0 20px rgba(114,9,183,0.08)}
:where(.page-principle-dashboard) .sb-head{padding:18px 16px;background:linear-gradient(135deg,#7209b7,#3a0ca3);display:flex;align-items:center;gap:10px}
:where(.page-accountant-dashboard) body{font-family:'Nunito',sans-serif;background:#fffdf0;display:flex;min-height:100vh}
:where(.page-accountant-dashboard) .sidebar{width:250px;min-height:100vh;background:#fff;border-right:1px solid #ffe8b4;display:flex;flex-direction:column;position:fixed;top:0;left:0;z-index:100;box-shadow:4px 0 20px rgba(251,133,0,0.08)}
:where(.page-accountant-dashboard) .sb-head{padding:18px 16px;background:linear-gradient(135deg,#fb8500,#e63946);display:flex;align-items:center;gap:10px}
:where(.page-management-dashboard) body{font-family:"Nunito",sans-serif;background:#f0faff;display:flex;min-height:100vh}
:where(.page-management-dashboard) .sidebar{width:250px;min-height:100vh;background:#fff;border-right:1px solid #c8e8ff;display:flex;flex-direction:column;position:fixed;top:0;left:0;z-index:100;box-shadow:4px 0 20px rgba(76,201,240,0.1)}
:where(.page-management-dashboard) .sb-head{padding:18px 16px;background:linear-gradient(135deg,#0077b6,#4361ee);display:flex;align-items:center;gap:10px}
:where(.page-hod-dashboard) body{font-family:'Nunito',sans-serif;background:#fff5fb;display:flex;min-height:100vh}
:where(.page-hod-dashboard) .sidebar{width:250px;min-height:100vh;background:#fff;border-right:1px solid #ffd6ee;display:flex;flex-direction:column;position:fixed;top:0;left:0;z-index:100;box-shadow:4px 0 20px rgba(247,37,133,0.08)}
:where(.page-hod-dashboard) .sb-head{padding:18px 16px;background:linear-gradient(135deg,#f72585,#7209b7);display:flex;align-items:center;gap:10px}
:where(.page-teacher-dashboard) body{font-family:'Nunito',sans-serif;background:#f0fff8;display:flex;min-height:100vh}
:where(.page-teacher-dashboard) .sidebar{width:250px;min-height:100vh;background:#fff;border-right:1px solid #d0f5e8;display:flex;flex-direction:column;position:fixed;top:0;left:0;z-index:100;box-shadow:4px 0 20px rgba(6,214,160,0.08)}
:where(.page-teacher-dashboard) .sb-head{padding:18px 16px;background:linear-gradient(135deg,#06d6a0,#0077b6);display:flex;align-items:center;gap:10px}
:where(.page-student-profile,.page-students) body{font-family:"Nunito",sans-serif;background:#f0f4ff;display:flex;min-height:100vh}
:where(.tpl-3,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form,.page-teacher-add) body{font-family:'Nunito',sans-serif;background:#f0f4ff;display:flex;min-height:100vh}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form,.page-student-profile,.page-students) .sidebar{width:250px;min-height:100vh;background:#fff;border-right:1px solid #e8ecff;display:flex;flex-direction:column;position:fixed;top:0;left:0;z-index:100;box-shadow:4px 0 20px rgba(67,97,238,0.07)}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form,.page-student-profile,.page-students) .sb-head{padding:18px 16px;background:linear-gradient(135deg,#4361ee,#7209b7);display:flex;align-items:center;gap:12px}
:where(.tpl-1:not(.page-attendance-view,.page-comm-homework,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure,.page-teacher-add,.page-teacher-mapping,.page-user-access),.page-student-form,.page-student-profile) .sb-head img{width:36px;flex-shrink:0}
:where(.page-management-dashboard,.page-principle-dashboard) .sb-head .brand{font-family:"Rajdhani",sans-serif;font-size:1.35rem;font-weight:700;color:#fff;letter-spacing:2px}
:where(.page-principle-dashboard) .sb-role-badge{margin:14px;background:linear-gradient(135deg,#7209b7,#f72585);border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:10px}
:where(.page-management-dashboard) .sb-role-badge{margin:14px;background:linear-gradient(135deg,#4cc9f0,#4361ee);border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:10px}
:where(.page-accountant-dashboard,.page-hod-dashboard,.page-teacher-dashboard) .sb-head .brand{font-family:'Rajdhani',sans-serif;font-size:1.35rem;font-weight:700;color:#fff;letter-spacing:2px}
:where(.page-accountant-dashboard) .sb-role-badge{margin:14px;background:linear-gradient(135deg,#fb8500,#ffb703);border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:10px}
:where(.page-hod-dashboard) .sb-role-badge{margin:14px;background:linear-gradient(135deg,#f72585,#fb8500);border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:10px}
:where(.page-teacher-dashboard) .sb-role-badge{margin:14px;background:linear-gradient(135deg,#06d6a0,#4cc9f0);border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:10px}
:where(.page-student-profile,.page-students) .brand{font-family:"Rajdhani",sans-serif;font-size:1.35rem;font-weight:700;color:#fff;letter-spacing:2px}
:where(.page-students) .sub{font-size:0.62rem;color:rgba(255,255,255,0.7);letter-spacing:2px;text-transform:uppercase}
:where(.page-student-profile) .sub{font-size:.62rem;color:rgba(255,255,255,.7);letter-spacing:2px;text-transform:uppercase}
:where(.page-student-profile,.page-students) .sb-role{margin:14px 14px 0;background:linear-gradient(135deg,#4361ee,#7209b7);border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:10px}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form) .sb-head-text .brand{font-family:'Rajdhani',sans-serif;font-size:1.35rem;font-weight:700;color:#fff;letter-spacing:2px;line-height:1}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form) .sb-head-text .sub{font-size:0.62rem;color:rgba(255,255,255,0.7);letter-spacing:2px;text-transform:uppercase}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form) .sb-role-badge{margin:14px 14px 0;background:linear-gradient(135deg,#4361ee,#7209b7);border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:10px}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form) .srb-icon{font-size:1.3rem}
:where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-principle-dashboard,.page-student-form,.page-teacher-dashboard) .srb-label{font-size:0.74rem;font-weight:800;color:#fff;letter-spacing:1px;text-transform:uppercase}
:where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-principle-dashboard) .srb-sub{font-size:0.67rem;color:rgba(255,255,255,0.82)}
:where(.page-teacher-dashboard) .srb-sub{font-size:0.67rem;color:rgba(255,255,255,0.8)}
:where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-principle-dashboard,.page-teacher-dashboard) .sb-nav{flex:1;padding:10px 0;overflow-y:auto}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form) .srb-sub{font-size:0.67rem;color:rgba(255,255,255,0.75)}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form,.page-student-profile,.page-students) .sb-nav{flex:1;padding:14px 0;overflow-y:auto}
:where(.page-students) .ns{padding:8px 16px 4px;font-size:0.64rem;font-weight:800;color:#bbb;letter-spacing:2.5px;text-transform:uppercase}
:where(.page-student-profile) .ns{padding:8px 16px 4px;font-size:.64rem;font-weight:800;color:#bbb;letter-spacing:2.5px;text-transform:uppercase}
:where(.page-student-profile) .ni{display:flex;align-items:center;gap:10px;padding:10px 16px;color:#888;text-decoration:none;font-size:.85rem;font-weight:700;transition:all .2s;cursor:pointer;margin:1px 10px;border-radius:10px}
:where(.page-student-profile) .ni:hover,:where(.page-student-profile) .ni.active{background:rgba(67,97,238,.1);color:#4361ee}
:where(.page-student-profile) .ni.active{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 4px 12px rgba(67,97,238,.3)}
:where(.page-student-profile) .ic{font-size:1rem;width:20px;text-align:center}
:where(.page-student-profile) .nb{margin-left:auto;background:#f72585;color:#fff;font-size:.62rem;padding:2px 7px;border-radius:10px}
:where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-principle-dashboard,.page-student-form,.page-teacher-dashboard) .nav-sec{padding:8px 16px 4px;font-size:0.64rem;font-weight:800;color:#bbb;letter-spacing:2.5px;text-transform:uppercase}
:where(.tpl-1:not(.page-attendance-view,.page-comm-homework,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure,.page-teacher-add,.page-teacher-mapping,.page-user-access),.page-student-form) .ni{display:flex;align-items:center;gap:10px;padding:10px 16px;color:#888;text-decoration:none;font-size:0.85rem;font-weight:700;transition:all 0.2s;cursor:pointer;margin:1px 10px;border-radius:10px}
:where(.page-principle-dashboard) .ni:hover,:where(.page-principle-dashboard) .ni.active{background:rgba(114,9,183,0.08);color:#7209b7}
:where(.page-principle-dashboard) .ni.active{background:linear-gradient(135deg,#7209b7,#3a0ca3);color:#fff;box-shadow:0 4px 12px rgba(114,9,183,0.35)}
:where(.page-accountant-dashboard) .ni:hover,:where(.page-accountant-dashboard) .ni.active{background:rgba(251,133,0,0.1);color:#fb8500}
:where(.page-accountant-dashboard) .ni.active{background:linear-gradient(135deg,#fb8500,#e63946);color:#fff;box-shadow:0 4px 12px rgba(251,133,0,0.35)}
:where(.page-management-dashboard) .ni:hover,:where(.page-management-dashboard) .ni.active{background:rgba(76,201,240,0.12);color:#0077b6}
:where(.page-management-dashboard) .ni.active{background:linear-gradient(135deg,#4cc9f0,#4361ee);color:#fff;box-shadow:0 4px 12px rgba(76,201,240,0.4)}
:where(.page-students) .ni:hover,:where(.page-students) .ni.active{background:rgba(67,97,238,0.1);color:#4361ee}
:where(.page-hod-dashboard) .ni:hover,:where(.page-hod-dashboard) .ni.active{background:rgba(247,37,133,0.08);color:#f72585}
:where(.page-hod-dashboard) .ni.active{background:linear-gradient(135deg,#f72585,#7209b7);color:#fff;box-shadow:0 4px 12px rgba(247,37,133,0.35)}
:where(.page-teacher-dashboard) .ni:hover,:where(.page-teacher-dashboard) .ni.active{background:rgba(6,214,160,0.1);color:#06d6a0}
:where(.page-teacher-dashboard) .ni.active{background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;box-shadow:0 4px 12px rgba(6,214,160,0.35)}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .ni:hover{background:rgba(67,97,238,0.1);color:#4361ee}
:where(.tpl-3,.page-teacher-add) .sidebar{width:250px;height:100vh;overflow:hidden;background:#fff;border-right:1px solid #e8ecff;display:flex;flex-direction:column;position:fixed;top:0;left:0;z-index:100;box-shadow:4px 0 20px rgba(67,97,238,0.07)}
:where(.page-teacher-add) .sb-head{padding:18px 16px;background:linear-gradient(135deg,#4361ee,#7209b7);display:flex;align-items:center;gap:12px;flex-shrink:0}
:where(.page-teacher-add) .sb-head img{width:36px;flex-shrink:0}
:where(.page-teacher-add) .sb-head-text .brand{font-family:'Rajdhani',sans-serif;font-size:1.35rem;font-weight:700;color:#fff;letter-spacing:2px;line-height:1}
:where(.page-teacher-add) .sb-head-text .sub{font-size:0.62rem;color:rgba(255,255,255,0.7);letter-spacing:2px;text-transform:uppercase}
:where(.page-teacher-add) .sb-role-badge{margin:14px 14px 0;background:linear-gradient(135deg,#4361ee,#7209b7);border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:10px;flex-shrink:0}
:where(.page-teacher-add) .srb-icon{font-size:1.3rem}
:where(.page-teacher-add) .srb-label{font-size:0.74rem;font-weight:800;color:#fff;letter-spacing:1px;text-transform:uppercase}
:where(.page-teacher-add) .srb-sub{font-size:0.67rem;color:rgba(255,255,255,0.75)}
:where(.page-teacher-add) .sb-nav{flex:1;padding:14px 0;overflow-y:auto;min-height:0}
:where(.page-teacher-add) .sb-nav::-webkit-scrollbar{width:4px}
:where(.page-teacher-add) .sb-nav::-webkit-scrollbar-track{background:transparent}
:where(.page-teacher-add) .sb-nav::-webkit-scrollbar-thumb{background:#eaeeff;border-radius:4px}
:where(.page-teacher-add) .nav-sec{padding:8px 16px 4px;font-size:0.64rem;font-weight:800;color:#bbb;letter-spacing:2.5px;text-transform:uppercase}
:where(.page-teacher-add) .ni{display:flex;align-items:center;gap:10px;padding:9px 16px;color:#888;text-decoration:none;font-size:0.84rem;font-weight:700;transition:all 0.2s;cursor:pointer;margin:1px 10px;border-radius:10px}
:where(.page-teacher-add) .ni:hover{background:rgba(67,97,238,0.1);color:#4361ee}
:where(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .sb-head{padding:12px 14px;background:linear-gradient(135deg,#06d6a0,#0077b6);display:flex;align-items:center;gap:10px;flex-shrink:0}
:where(.tpl-3:not(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure)) .sb-head{padding:12px 14px;background:linear-gradient(135deg,#4361ee,#7209b7);display:flex;align-items:center;gap:10px;flex-shrink:0}
:where(.tpl-3) .sb-head img{width:30px;flex-shrink:0}
:where(.tpl-3) .sb-head-text .brand{font-family:'Rajdhani',sans-serif;font-size:1.2rem;font-weight:700;color:#fff;letter-spacing:2px;line-height:1}
:where(.tpl-3) .sb-head-text .sub{font-size:0.58rem;color:rgba(255,255,255,0.7);letter-spacing:2px;text-transform:uppercase}
:where(.page-comm-syllabus,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .sb-role-badge{margin:8px 10px 0;background:linear-gradient(135deg,#06d6a0,#0077b6);border-radius:9px;padding:7px 11px;display:flex;align-items:center;gap:8px;flex-shrink:0}
:where(.tpl-3:not(.page-comm-syllabus,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure)) .sb-role-badge{margin:8px 10px 0;background:linear-gradient(135deg,#4361ee,#7209b7);border-radius:9px;padding:7px 11px;display:flex;align-items:center;gap:8px;flex-shrink:0}
:where(.tpl-3) .srb-icon{font-size:1rem}
:where(.tpl-3) .srb-label{font-size:0.68rem;font-weight:800;color:#fff;letter-spacing:1px;text-transform:uppercase}
:where(.page-comm-syllabus,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .srb-sub{font-size:0.6rem;color:rgba(255,255,255,0.85)}
:where(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .sb-nav{flex:1;padding:6px 0 4px;overflow-y:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#a0e8d8 transparent}
:where(.tpl-3:not(.page-comm-syllabus,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure)) .srb-sub{font-size:0.6rem;color:rgba(255,255,255,0.75)}
:where(.tpl-3:not(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure)) .sb-nav{flex:1;padding:6px 0 4px;overflow-y:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#e0d8ff transparent}
:where(.tpl-3) .sb-nav::-webkit-scrollbar{width:3px}
:where(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .sb-nav::-webkit-scrollbar-thumb{background:#b0e0d0;border-radius:4px}
:where(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .nav-sec{padding:5px 14px 3px;font-size:0.58rem;font-weight:800;color:#bbb;letter-spacing:2.5px;text-transform:uppercase}
:where(.tpl-3:not(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure)) .sb-nav::-webkit-scrollbar-thumb{background:#ddd;border-radius:4px}
:where(.tpl-3:not(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure)) .nav-sec{padding:5px 14px 3px;font-size:0.58rem;font-weight:800;color:#ccc;letter-spacing:2.5px;text-transform:uppercase}
:where(.tpl-3) .ni{display:flex;align-items:center;gap:8px;padding:7px 13px;color:#888;text-decoration:none;font-size:0.8rem;font-weight:700;transition:all 0.2s;cursor:pointer;margin:1px 7px;border-radius:9px}
:where(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .ni:hover{background:rgba(6,214,160,0.1);color:#06d6a0}
:where(.page-comm-syllabus) .ni:hover{background:rgba(6,214,160,0.08);color:#06d6a0}
:where(.page-comm-syllabus,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .ni.active{background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;box-shadow:0 3px 10px rgba(6,214,160,0.3)}
:where(.tpl-3:not(.page-comm-syllabus,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure),.page-student-form) .ni:hover{background:rgba(67,97,238,0.08);color:#4361ee}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form,.page-students,.page-teacher-add) .ni.active{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 4px 12px rgba(67,97,238,0.3)}
:where(.page-students) .ic{font-size:1rem;width:20px;text-align:center}
:where(.page-students) .nb{margin-left:auto;background:#f72585;color:#fff;font-size:0.62rem;padding:2px 7px;border-radius:10px}
:where(.page-teacher-add) .ni .ic{font-size:0.95rem;width:20px;text-align:center}
:where(.page-teacher-add) .sb-user{margin:10px 14px 14px;background:#f8f9ff;border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px;flex-shrink:0}
:where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-principle-dashboard,.page-student-form,.page-teacher-dashboard) .ni .ic{font-size:1rem;width:20px;text-align:center}
:where(.page-accountant-dashboard,.page-hod-dashboard) .ni .nb{margin-left:auto;background:#e63946;color:#fff;font-size:0.62rem;padding:2px 7px;border-radius:10px}
:where(.page-accountant-dashboard) .sb-user{margin:10px 14px 14px;background:#fffdf0;border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px}
:where(.page-accountant-dashboard) .ava{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#fb8500,#ffb703);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:0.9rem;color:#fff;flex-shrink:0}
:where(.page-hod-dashboard) .sb-user{margin:10px 14px 14px;background:#fff5fb;border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px}
:where(.page-hod-dashboard) .ava{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#f72585,#fb8500);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:0.9rem;color:#fff;flex-shrink:0}
:where(.page-teacher-dashboard) .ni .nb{margin-left:auto;background:#fb8500;color:#fff;font-size:0.62rem;padding:2px 7px;border-radius:10px}
:where(.page-teacher-dashboard) .sb-user{margin:10px 14px 14px;background:#f0fff8;border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px}
:where(.page-teacher-dashboard) .ava{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#06d6a0,#4cc9f0);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:0.9rem;color:#fff;flex-shrink:0}
:where(.page-accountant-dashboard,.page-hod-dashboard,.page-teacher-dashboard) .un{font-size:0.84rem;font-weight:800;color:#333}
:where(.page-management-dashboard,.page-principle-dashboard,.page-student-form) .ni .nb{margin-left:auto;background:#f72585;color:#fff;font-size:0.62rem;padding:2px 7px;border-radius:10px}
:where(.page-principle-dashboard) .sb-user{margin:10px 14px 14px;background:#f5f0ff;border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px}
:where(.page-principle-dashboard) .ava{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#7209b7,#f72585);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:0.9rem;color:#fff;flex-shrink:0}
:where(.page-management-dashboard) .sb-user{margin:10px 14px 14px;background:#f0faff;border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px}
:where(.page-management-dashboard) .ava{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#4cc9f0,#0077b6);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:0.9rem;color:#fff;flex-shrink:0}
:where(.page-management-dashboard,.page-principle-dashboard) .un{font-size:0.84rem;font-weight:800;color:#333}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form,.page-student-profile,.page-students) .sb-user{margin:10px 14px 14px;background:#f8f9ff;border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px}
:where(.page-student-profile) .ava{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#4361ee,#f72585);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem;color:#fff;flex-shrink:0}
:where(.page-student-profile) .un{font-size:.85rem;font-weight:800;color:#333}
:where(.page-student-profile) .ur{font-size:.7rem;color:#999}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form,.page-students,.page-teacher-add) .ava{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#4361ee,#f72585);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:0.9rem;color:#fff;flex-shrink:0}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form,.page-students,.page-teacher-add) .un{font-size:0.85rem;font-weight:800;color:#333}
:where(.tpl-1:not(.page-attendance-view,.page-comm-homework,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure,.page-teacher-mapping,.page-user-access),.page-student-form) .ur{font-size:0.7rem;color:#999}
:where(.tpl-3:not(.page-comm-syllabus,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure)) .ni.active{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 3px 10px rgba(67,97,238,0.3)}
:where(.tpl-3) .ni .ic{font-size:0.88rem;width:17px;text-align:center;flex-shrink:0}
:where(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .sb-user{margin:4px 10px 8px;background:#f0fff8;border-radius:10px;padding:9px 10px;display:flex;align-items:center;gap:8px;flex-shrink:0}
:where(.page-comm-notes,.page-comm-notification,.page-timetable) .ni .nb{margin-left:auto;background:#f72585;color:#fff;font-size:0.58rem;padding:1px 5px;border-radius:8px}
:where(.tpl-3:not(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure)) .sb-user{margin:4px 10px 8px;background:#f8f9ff;border-radius:10px;padding:9px 10px;display:flex;align-items:center;gap:8px;flex-shrink:0}
:where(.page-comm-syllabus,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .ava{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#06d6a0,#0077b6);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:0.8rem;color:#fff;flex-shrink:0}
:where(.tpl-3:not(.page-comm-syllabus,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure)) .ava{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#4361ee,#f72585);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:0.8rem;color:#fff;flex-shrink:0}
:where(.tpl-3) .un{font-size:0.8rem;font-weight:800;color:#333}
:where(.tpl-3) .ur{font-size:0.65rem;color:#999}
:where(.tpl-6) .main{margin-left:250px;flex:1;display:flex;flex-direction:column;min-width:0}
:where(.page-principle-dashboard) .topbar{height:66px;background:#fff;border-bottom:1px solid #e0d0ff;display:flex;align-items:center;padding:0 24px;gap:12px;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(114,9,183,0.07)}
:where(.page-accountant-dashboard) .topbar{height:66px;background:#fff;border-bottom:1px solid #ffe8b4;display:flex;align-items:center;padding:0 24px;gap:12px;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(251,133,0,0.07)}
:where(.page-management-dashboard) .topbar{height:66px;background:#fff;border-bottom:1px solid #c8e8ff;display:flex;align-items:center;padding:0 24px;gap:12px;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(76,201,240,0.08)}
:where(.page-hod-dashboard) .topbar{height:66px;background:#fff;border-bottom:1px solid #ffd6ee;display:flex;align-items:center;padding:0 24px;gap:12px;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(247,37,133,0.07)}
:where(.page-teacher-dashboard) .topbar{height:66px;background:#fff;border-bottom:1px solid #d0f5e8;display:flex;align-items:center;padding:0 24px;gap:12px;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(6,214,160,0.08)}
:where(.page-student-profile) .topbar{height:66px;background:#fff;border-bottom:1px solid #eaeeff;display:flex;align-items:center;padding:0 24px;gap:12px;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(67,97,238,.06)}
:where(.page-management-dashboard,.page-principle-dashboard,.page-student-profile) .tb-title{font-family:"Rajdhani",sans-serif;font-size:1.45rem;font-weight:700;color:#1a1a2e}
:where(.page-student-profile) .bc{display:flex;align-items:center;gap:6px;font-size:.8rem;color:#aaa;font-weight:700;flex-wrap:wrap}
:where(.page-teacher-add) .topbar{height:66px;background:#fff;border-bottom:1px solid #eaeeff;display:flex;align-items:center;padding:0 24px;gap:12px;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(67,97,238,0.06);flex-shrink:0}
:where(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .topbar{height:64px;background:#fff;border-bottom:1px solid #d0f0e8;display:flex;align-items:center;padding:0 24px;gap:12px;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(6,214,160,0.08)}
:where(.page-comm-syllabus) .topbar{height:64px;background:#fff;border-bottom:1px solid #eaeeff;display:flex;align-items:center;padding:0 24px;gap:12px;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(6,214,160,0.06)}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form,.page-students) .topbar{height:66px;background:#fff;border-bottom:1px solid #eaeeff;display:flex;align-items:center;padding:0 24px;gap:12px;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(67,97,238,0.06)}
:where(.page-students) .tb-title{font-family:"Rajdhani",sans-serif;font-size:1.45rem;font-weight:700;color:#1a1a2e}
:where(.page-accountant-dashboard,.page-hod-dashboard,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-form,.page-teacher-add,.page-teacher-dashboard) .tb-title{font-family:'Rajdhani',sans-serif;font-size:1.45rem;font-weight:700;color:#1a1a2e}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-subject,.page-teacher-add) .bc{display:flex;align-items:center;gap:6px;font-size:0.78rem;color:#aaa}
:where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-master-session,.page-principle-dashboard,.page-student-form,.page-students,.page-teacher-dashboard) .tb-sub{color:#aaa;font-size:0.78rem}
:where(.tpl-3:not(.page-comm-syllabus,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure)) .topbar{height:64px;background:#fff;border-bottom:1px solid #eaeeff;display:flex;align-items:center;padding:0 24px;gap:12px;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(67,97,238,0.06)}
:where(.tpl-3) .tb-title{font-family:'Rajdhani',sans-serif;font-size:1.4rem;font-weight:700;color:#1a1a2e}
:where(.tpl-3) .bc{display:flex;align-items:center;gap:6px;font-size:0.77rem;color:#aaa}
:where(.page-comm-syllabus,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .bc a{color:#06d6a0;text-decoration:none;font-weight:700}
:where(.tpl-3:not(.page-comm-syllabus,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure),.page-master-class,.page-master-mapping,.page-master-section,.page-master-subject,.page-student-profile,.page-teacher-add) .bc a{color:#4361ee;text-decoration:none;font-weight:700}
:where(.page-master-class) .bc a:hover{text-decoration:underline}
:where(.tpl-6) .spacer{flex:1}
:where(.page-principle-dashboard) .ibtn{width:40px;height:40px;border-radius:12px;background:#f5f0ff;border:2px solid #e0d0ff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;position:relative;flex-shrink:0}
:where(.page-accountant-dashboard) .ibtn{width:40px;height:40px;border-radius:12px;background:#fffdf0;border:2px solid #ffe8b4;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;position:relative;flex-shrink:0}
:where(.page-management-dashboard) .ibtn{width:40px;height:40px;border-radius:12px;background:#f0faff;border:2px solid #c8e8ff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;position:relative;flex-shrink:0}
:where(.page-hod-dashboard) .ibtn{width:40px;height:40px;border-radius:12px;background:#fff5fb;border:2px solid #ffd6ee;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;position:relative;flex-shrink:0}
:where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard) .nd{position:absolute;top:5px;right:5px;width:8px;height:8px;border-radius:50%;background:#e63946;border:2px solid #fff}
:where(.page-teacher-dashboard) .search{background:#f0fff8;border:2px solid #ccf5e7;border-radius:12px;padding:9px 14px;font-family:'Nunito',sans-serif;font-size:0.84rem;outline:none;width:200px;color:#333}
:where(.page-teacher-dashboard) .search:focus{border-color:#06d6a0}
:where(.page-teacher-dashboard) .ibtn{width:40px;height:40px;border-radius:12px;background:#f0fff8;border:2px solid #ccf5e7;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;position:relative;flex-shrink:0}
:where(.page-student-profile) .btn{padding:10px 18px;border-radius:12px;border:none;font-family:"Nunito",sans-serif;font-size:.84rem;font-weight:800;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
:where(.page-student-profile) .btn-p{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 4px 14px rgba(67,97,238,.35)}
:where(.page-master-session) .bc{display:flex;align-items:center;gap:6px;font-size:0.78rem;color:#aaa}
:where(.page-master-session) .bc a{color:#4361ee;text-decoration:none;font-weight:700}
:where(.page-master-session) .bc a:hover{text-decoration:underline}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-teacher-add) .ibtn{width:40px;height:40px;border-radius:12px;background:#f8f9ff;border:2px solid #eaeeff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;transition:all 0.2s;flex-shrink:0}
:where(.page-fee-structure) .btn-new{padding:9px 18px;border-radius:10px;border:none;background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;font-family:'Nunito',sans-serif;font-size:0.82rem;font-weight:800;cursor:pointer;box-shadow:0 4px 14px rgba(6,214,160,0.3);transition:all 0.2s}
:where(.page-student-form) .back-btn{display:flex;align-items:center;gap:7px;background:#f0f4ff;color:#4361ee;border:2px solid #eaeeff;border-radius:12px;padding:0 16px;height:40px;font-family:'Nunito',sans-serif;font-size:0.85rem;font-weight:800;cursor:pointer;transition:all 0.2s;white-space:nowrap;flex-shrink:0}
:where(.page-student-form) .back-btn:hover{background:#eaeeff}
:where(.page-student-form,.page-students) .ibtn{width:40px;height:40px;border-radius:12px;background:#f8f9ff;border:2px solid #eaeeff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;position:relative;flex-shrink:0}
:where(.page-principle-dashboard,.page-student-form,.page-students,.page-teacher-dashboard) .nd{position:absolute;top:5px;right:5px;width:8px;height:8px;border-radius:50%;background:#f72585;border:2px solid #fff}
:where(.page-students) .btn{padding:10px 18px;border-radius:12px;border:none;font-family:"Nunito",sans-serif;font-size:0.84rem;font-weight:800;cursor:pointer;transition:all 0.2s;display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
:where(.page-students) .btn-primary{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 4px 14px rgba(67,97,238,0.35)}
:where(.page-students) .btn-primary:hover{transform:translateY(-2px)}
:where(.page-students) .btn-outline{background:#f8f9ff;border:2px solid #eaeeff;color:#555}
:where(.page-students) .btn-outline:hover{border-color:#4361ee;color:#4361ee;background:#eff2ff}
:where(.page-student-form) .content{padding:24px;flex:1}
:where(.page-student-form) .breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:20px;flex-wrap:wrap}
:where(.page-student-form) .bc-item{font-size:0.82rem;font-weight:700;color:#aaa;cursor:pointer}
:where(.page-student-form) .bc-item:hover{color:#4361ee}
:where(.page-student-form) .bc-item.active{color:#4361ee}
:where(.page-student-form) .bc-sep{color:#ddd}
:where(.page-student-form) .step-tabs{background:#fff;border-radius:16px;padding:6px;border:1px solid #eaeeff;display:flex;gap:4px;margin-bottom:22px;flex-wrap:wrap;box-shadow:0 2px 10px rgba(67,97,238,0.05)}
:where(.page-student-form) .step-tab{flex:1;min-width:100px;padding:10px 8px;border-radius:11px;border:none;font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:800;cursor:pointer;transition:all 0.2s;display:flex;align-items:center;justify-content:center;gap:6px;color:#999;background:transparent;white-space:nowrap}
:where(.page-student-form) .step-tab.active{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 4px 12px rgba(67,97,238,0.3)}
:where(.page-student-form) .step-tab.done{color:#06d6a0}
:where(.page-student-form) .form-container{display:grid;grid-template-columns:1fr 300px;gap:22px;align-items:start}
:where(.page-student-form) .section-card{background:#fff;border-radius:18px;padding:24px;border:1px solid #eaeeff;box-shadow:0 4px 18px rgba(67,97,238,0.07);margin-bottom:18px}
:where(.page-student-form) .section-card.hidden{display:none}
:where(.page-student-form) .sec-title{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:14px;border-bottom:2px solid #f0f4ff}
:where(.page-student-form) .sec-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
:where(.page-student-form) .sec-title-text{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-student-form) .sec-title-sub{font-size:0.76rem;color:#aaa}
:where(.page-student-form) .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
:where(.page-student-form) .fg{display:flex;flex-direction:column}
:where(.page-student-form) .fg.full{grid-column:1/-1}
:where(.page-student-form) .fg label{font-size:0.72rem;font-weight:800;color:#666;margin-bottom:5px;letter-spacing:0.5px;text-transform:uppercase}
:where(.page-student-form) .fg label .req{color:#e63946}
:where(.page-student-form) input[type=text],:where(.page-student-form) input[type=email],:where(.page-student-form) input[type=tel],:where(.page-student-form) input[type=date],:where(.page-student-form) input[type=number],:where(.page-student-form) select,:where(.page-student-form) textarea,:where(.page-student-form) input[type=file]{width:100%;background:#f8f9ff;border:2px solid #eaeeff;border-radius:11px;padding:10px 13px;color:#333;font-family:'Nunito',sans-serif;font-size:0.88rem;outline:none;transition:all 0.2s}
:where(.page-student-form) input:focus,:where(.page-student-form) select:focus,:where(.page-student-form) textarea:focus{border-color:#4361ee;background:#fff;box-shadow:0 0 0 4px rgba(67,97,238,0.1)}
:where(.page-student-form) select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-color:#f8f9ff;padding-right:34px}
:where(.page-student-form) textarea{resize:vertical;min-height:75px}
:where(.page-student-form) .radio-group{display:flex;gap:8px;flex-wrap:wrap}
:where(.page-student-form) .radio-btn{display:flex;align-items:center;gap:7px;padding:9px 14px;border:2px solid #eaeeff;border-radius:10px;cursor:pointer;font-size:0.85rem;font-weight:700;color:#666;background:#f8f9ff;transition:all 0.2s}
:where(.page-student-form) .radio-btn input{display:none}
:where(.page-student-form) .radio-btn:has(input:checked){border-color:#4361ee;background:rgba(67,97,238,0.08);color:#4361ee}
:where(.page-student-form) .sub-box{padding:16px;border-radius:13px;border:1px solid #eaeeff;background:#f8f9ff;margin-bottom:14px}
:where(.page-student-form) .sub-box-title{font-family:'Rajdhani',sans-serif;font-size:0.95rem;font-weight:700;margin-bottom:12px;display:flex;align-items:center;gap:7px}
:where(.page-student-form) .step-nav{display:flex;gap:10px;margin-top:18px;justify-content:space-between}
:where(.page-student-form) .step-prev{padding:11px 20px;border-radius:11px;border:2px solid #eaeeff;background:#f0f4ff;color:#4361ee;font-family:'Nunito',sans-serif;font-size:0.88rem;font-weight:800;cursor:pointer;display:flex;align-items:center;gap:7px;transition:all 0.2s}
:where(.page-student-form) .step-prev:hover{background:#eaeeff}
:where(.page-student-form) .step-next{padding:11px 20px;border-radius:11px;border:none;background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;font-family:'Nunito',sans-serif;font-size:0.88rem;font-weight:800;cursor:pointer;display:flex;align-items:center;gap:7px;box-shadow:0 4px 14px rgba(67,97,238,0.35);transition:all 0.2s}
:where(.page-student-form) .step-next:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(67,97,238,0.45)}
:where(.page-student-form) .right-sidebar{position:sticky;top:90px}
:where(.page-student-form) .preview-card{background:#fff;border-radius:18px;padding:22px;border:1px solid #eaeeff;box-shadow:0 4px 18px rgba(67,97,238,0.07);margin-bottom:16px;text-align:center}
:where(.page-student-form) .preview-ava{width:84px;height:84px;border-radius:50%;background:linear-gradient(135deg,#4361ee,#7209b7);display:flex;align-items:center;justify-content:center;font-family:'Rajdhani',sans-serif;font-size:1.8rem;font-weight:700;color:#fff;margin:0 auto 12px;border:4px solid #fff;box-shadow:0 6px 20px rgba(67,97,238,0.25)}
:where(.page-student-form) .preview-name{font-family:'Rajdhani',sans-serif;font-size:1.2rem;font-weight:700;color:#1a1a2e}
:where(.page-student-form) .preview-roll{font-size:0.76rem;color:#aaa;margin-top:3px}
:where(.page-student-form) .prev-tags{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:10px}
:where(.page-student-form) .ptag{padding:3px 11px;border-radius:20px;font-size:0.71rem;font-weight:800}
:where(.page-student-form) .prev-info{margin-top:14px;text-align:left;border-top:1px solid #f0f4ff;padding-top:12px}
:where(.page-student-form) .pi-row{display:flex;justify-content:space-between;padding:5px 0;font-size:0.8rem}
:where(.page-student-form) .pi-label{color:#aaa;font-weight:700}
:where(.page-student-form) .pi-val{color:#333;font-weight:800}
:where(.page-student-form) .actions-card{background:#fff;border-radius:18px;padding:20px;border:1px solid #eaeeff;box-shadow:0 4px 18px rgba(67,97,238,0.07)}
:where(.page-student-form) .ac-title{font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;color:#1a1a2e;margin-bottom:14px}
:where(.page-student-form) .checklist{list-style:none;display:flex;flex-direction:column;gap:8px;margin-bottom:18px}
:where(.page-student-form) .cl-item{display:flex;align-items:center;gap:8px;font-size:0.8rem;font-weight:700;color:#bbb}
:where(.page-student-form) .cl-item.done{color:#06d6a0}
:where(.page-student-form) .cl-dot{width:20px;height:20px;border-radius:50%;border:2px solid #ddd;display:flex;align-items:center;justify-content:center;font-size:0.68rem;flex-shrink:0}
:where(.page-student-form) .cl-item.done .cl-dot{background:#06d6a0;border-color:#06d6a0;color:#fff}
:where(.page-student-form) .save-btn{width:100%;padding:13px;border-radius:12px;border:none;background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;transition:all 0.3s;box-shadow:0 6px 18px rgba(67,97,238,0.35);margin-bottom:9px}
:where(.page-student-form) .save-btn:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(67,97,238,0.45)}
:where(.page-student-form) .draft-btn{width:100%;padding:11px;border-radius:12px;border:2px solid #eaeeff;background:#f0f4ff;color:#4361ee;font-family:'Nunito',sans-serif;font-size:0.88rem;font-weight:800;cursor:pointer;margin-bottom:9px}
:where(.page-student-form) .cancel-btn-s{width:100%;padding:11px;border-radius:12px;border:2px solid #eaeeff;background:#fff;color:#aaa;font-family:'Nunito',sans-serif;font-size:0.88rem;font-weight:800;cursor:pointer}
:where(.page-student-form) .cancel-btn-s:hover{border-color:#e63946;color:#e63946}
:where(.page-student-form) .success-overlay{display:none;position:fixed;inset:0;background:rgba(67,97,238,0.12);z-index:400;align-items:center;justify-content:center;backdrop-filter:blur(8px);padding:20px}
:where(.page-student-form) .success-overlay.show{display:flex}
:where(.page-student-form) .success-card{background:#fff;border-radius:24px;padding:38px 32px;max-width:400px;width:100%;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,0.2);animation:popIn 0.4s cubic-bezier(0.34,1.56,0.64,1) both}
:where(.page-student-form) .suc-icon{font-size:3.5rem;margin-bottom:14px;display:block}
:where(.page-student-form) .suc-title{font-family:'Rajdhani',sans-serif;font-size:1.7rem;font-weight:700;color:#1a1a2e;margin-bottom:7px}
:where(.page-student-form) .suc-sub{color:#888;font-size:0.88rem;margin-bottom:20px;line-height:1.7}
:where(.page-student-form) .suc-id{font-family:'Rajdhani',sans-serif;font-size:1.25rem;color:#4361ee;font-weight:700;background:#eff2ff;padding:10px 20px;border-radius:12px;display:inline-block;margin-bottom:22px}
:where(.page-student-form) .suc-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
:where(.page-student-form) .suc-btn{padding:11px 20px;border-radius:12px;font-family:'Nunito',sans-serif;font-size:0.88rem;font-weight:800;cursor:pointer;border:none;transition:all 0.2s}
:where(.page-student-form) .suc-p{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 4px 14px rgba(67,97,238,0.35)}
:where(.page-student-form) .suc-s{background:#f0f4ff;color:#4361ee;border:2px solid #eaeeff}
:where(.page-comm-notes) .btn-new{padding:9px 18px;border-radius:10px;border:none;background:linear-gradient(135deg,#fb8500,#e63946);color:#fff;font-family:'Nunito',sans-serif;font-size:0.82rem;font-weight:800;cursor:pointer;box-shadow:0 4px 14px rgba(251,133,0,0.3);transition:all 0.2s}
:where(.page-comm-notes,.page-fee-structure) .btn-new:hover{transform:translateY(-1px)}
:where(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .ibtn{width:38px;height:38px;border-radius:11px;background:#f0fff8;border:2px solid #d0f0e8;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;flex-shrink:0}
:where(.tpl-3:not(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure)) .ibtn{width:38px;height:38px;border-radius:11px;background:#f8f9ff;border:2px solid #eaeeff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;flex-shrink:0}
:where(.tpl-6:not(.page-student-form,.page-student-profile)) .content{padding:22px;flex:1}
:where(.page-accountant-dashboard) .stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}
:where(.page-management-dashboard) .kpi-row{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:22px}
:where(.page-management-dashboard) .kc{border-radius:16px;padding:16px 12px;color:#fff;position:relative;overflow:hidden;transition:transform 0.25s,box-shadow 0.25s;text-align:center}
:where(.page-management-dashboard) .kc:hover{transform:translateY(-5px);box-shadow:0 14px 36px rgba(0,0,0,0.2)}
:where(.page-management-dashboard) .kc::after{content:"";position:absolute;bottom:-15px;right:-15px;width:65px;height:65px;border-radius:50%;background:rgba(255,255,255,0.1)}
:where(.page-management-dashboard) .k1{background:linear-gradient(135deg,#4361ee,#7209b7)}
:where(.page-management-dashboard) .k2{background:linear-gradient(135deg,#fb8500,#f72585)}
:where(.page-management-dashboard) .k3{background:linear-gradient(135deg,#06d6a0,#0077b6)}
:where(.page-management-dashboard) .k4{background:linear-gradient(135deg,#f72585,#7209b7)}
:where(.page-management-dashboard) .k5{background:linear-gradient(135deg,#4cc9f0,#4361ee)}
:where(.page-management-dashboard) .k6{background:linear-gradient(135deg,#fb8500,#e63946)}
:where(.page-management-dashboard) .k-icon{font-size:1.5rem;margin-bottom:6px;position:relative;z-index:1}
:where(.page-management-dashboard) .k-val{font-family:"Rajdhani",sans-serif;font-size:1.45rem;font-weight:700;line-height:1;position:relative;z-index:1}
:where(.page-management-dashboard) .k-label{font-size:0.67rem;opacity:0.9;margin-top:3px;font-weight:700;position:relative;z-index:1}
:where(.page-management-dashboard) .k-trend{font-size:0.64rem;margin-top:5px;background:rgba(255,255,255,0.22);display:inline-block;padding:2px 8px;border-radius:20px;position:relative;z-index:1;font-weight:800}
:where(.page-management-dashboard) .dg{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-students) .mini-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}
:where(.page-students) .ms{background:#fff;border-radius:16px;padding:18px;border:1px solid #eaeeff;box-shadow:0 4px 16px rgba(67,97,238,0.06);display:flex;align-items:center;gap:14px;transition:transform 0.2s}
:where(.page-students) .ms:hover{transform:translateY(-3px)}
:where(.page-students) .ms-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}
:where(.page-students) .ms-val{font-family:"Rajdhani",sans-serif;font-size:1.8rem;font-weight:700;color:#1a1a2e;line-height:1}
:where(.page-students) .ms-label{font-size:0.76rem;color:#aaa;font-weight:700;margin-top:2px}
:where(.page-students) .toolbar{background:#fff;border-radius:16px;padding:18px 20px;border:1px solid #eaeeff;box-shadow:0 4px 16px rgba(67,97,238,0.06);margin-bottom:18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
:where(.page-students) .sw{display:flex;align-items:center;gap:8px;background:#f8f9ff;border:2px solid #eaeeff;border-radius:12px;padding:9px 14px;flex:1;min-width:180px}
:where(.page-students) .sw input{border:none;background:transparent;outline:none;font-family:"Nunito",sans-serif;font-size:0.9rem;color:#333;width:100%}
:where(.page-students) .sw input::placeholder{color:#ccc}
:where(.page-students) .fs{background:#f8f9ff;border:2px solid #eaeeff;border-radius:12px;padding:10px 12px;font-family:"Nunito",sans-serif;font-size:0.82rem;color:#555;outline:none;font-weight:700;cursor:pointer}
:where(.page-students) .fs:focus{border-color:#4361ee}
:where(.page-students) .table-panel{background:#fff;border-radius:18px;border:1px solid #eaeeff;box-shadow:0 4px 20px rgba(67,97,238,0.07);overflow:hidden}
:where(.page-students) .table-header{padding:16px 20px;border-bottom:1px solid #f0f4ff;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
:where(.page-students) .th-title{font-family:"Rajdhani",sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-students) .th-count{font-size:0.78rem;color:#aaa;font-weight:700;background:#f0f4ff;padding:4px 12px;border-radius:20px}
:where(.page-fee-report) .stat-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:20px}
:where(.page-attendance-view,.page-hod-dashboard,.page-principle-dashboard) .stat-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:22px}
:where(.page-hod-dashboard,.page-principle-dashboard) .sc{border-radius:16px;padding:18px;color:#fff;position:relative;overflow:hidden;transition:transform 0.25s,box-shadow 0.25s}
:where(.page-hod-dashboard,.page-principle-dashboard) .sc:hover{transform:translateY(-5px);box-shadow:0 14px 36px rgba(0,0,0,0.18)}
:where(.page-principle-dashboard) .sc::after{content:"";position:absolute;top:-20px;right:-20px;width:85px;height:85px;border-radius:50%;background:rgba(255,255,255,0.12)}
:where(.page-principle-dashboard) .sc1{background:linear-gradient(135deg,#7209b7,#3a0ca3)}
:where(.page-attendance-view) .sc{border-radius:16px;padding:16px;color:#fff;position:relative;overflow:hidden;transition:transform 0.25s,box-shadow 0.25s}
:where(.page-fee-dashboard) .kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}
:where(.page-fee-dashboard) .kpi{border-radius:20px;padding:22px;color:#fff;position:relative;overflow:hidden;transition:transform 0.25s,box-shadow 0.25s}
:where(.page-fee-dashboard) .kpi:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(0,0,0,0.18)}
:where(.page-fee-dashboard) .kpi::after{content:'';position:absolute;top:-20px;right:-20px;width:90px;height:90px;border-radius:50%;background:rgba(255,255,255,0.1)}
:where(.page-fee-dashboard) .kpi::before{content:'';position:absolute;bottom:-20px;left:10px;width:70px;height:70px;border-radius:50%;background:rgba(255,255,255,0.06)}
:where(.page-fee-dashboard) .k1{background:linear-gradient(135deg,#06d6a0,#0077b6)}
:where(.page-fee-dashboard) .k2{background:linear-gradient(135deg,#4361ee,#3a0ca3)}
:where(.page-fee-dashboard) .k3{background:linear-gradient(135deg,#e63946,#c1121f)}
:where(.page-fee-dashboard) .k4{background:linear-gradient(135deg,#fb8500,#e63946)}
:where(.page-fee-dashboard) .kpi-icon{font-size:2.2rem;margin-bottom:8px;position:relative;z-index:1}
:where(.page-fee-dashboard) .kpi-val{font-family:'Rajdhani',sans-serif;font-size:2.4rem;font-weight:700;line-height:1;position:relative;z-index:1}
:where(.page-fee-dashboard) .kpi-label{font-size:0.78rem;opacity:0.9;font-weight:700;margin-top:4px;position:relative;z-index:1}
:where(.page-fee-dashboard) .kpi-change{margin-top:8px;font-size:0.72rem;font-weight:800;background:rgba(255,255,255,0.2);display:inline-block;padding:3px 10px;border-radius:20px;position:relative;z-index:1}
:where(.page-fee-dashboard) .qa-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:22px}
:where(.page-fee-dashboard) .qa{border-radius:16px;padding:18px;display:flex;align-items:center;gap:14px;cursor:pointer;transition:all 0.2s;text-decoration:none;border:2px solid transparent}
:where(.page-fee-dashboard) .qa:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,0.12)}
:where(.page-fee-dashboard) .qa1{background:linear-gradient(135deg,#e8fff5,#d0f7eb);border-color:rgba(6,214,160,0.25)}
:where(.page-fee-dashboard) .qa2{background:linear-gradient(135deg,#eff2ff,#e0d8ff);border-color:rgba(67,97,238,0.2)}
:where(.page-fee-dashboard) .qa3{background:linear-gradient(135deg,#fff0f0,#ffe4e4);border-color:rgba(230,57,70,0.2)}
:where(.page-fee-dashboard) .qa4{background:linear-gradient(135deg,#fff8ec,#ffeedd);border-color:rgba(251,133,0,0.2)}
:where(.page-fee-dashboard) .qa-icon{font-size:2rem;flex-shrink:0}
:where(.page-fee-dashboard) .qa-title{font-size:0.88rem;font-weight:800;color:#1a1a2e}
:where(.page-fee-dashboard) .qa-sub{font-size:0.72rem;color:#aaa;margin-top:2px}
:where(.page-fee-dashboard) .dg2{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-fee-dashboard) .dg3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-fee-dashboard) .panel{background:#fff;border-radius:18px;padding:20px;box-shadow:0 4px 20px rgba(6,214,160,0.07);border:1px solid #d8f5ee}
:where(.page-timetable) .ctrl-bar{background:#fff;border-radius:16px;padding:16px 20px;margin-bottom:20px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;box-shadow:0 4px 20px rgba(67,97,238,0.07);border:1px solid #eaeeff}
:where(.page-timetable) .ctrl-sel{background:#f8f9ff;border:2px solid #eaeeff;border-radius:10px;padding:9px 14px;font-family:'Nunito',sans-serif;font-size:0.86rem;font-weight:700;color:#444;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:30px;min-width:140px;transition:all 0.2s}
:where(.page-timetable) .ctrl-sel:focus{border-color:#4361ee}
:where(.page-timetable) .ctrl-spacer{flex:1}
:where(.page-timetable) .mode-toggle{display:flex;gap:4px;background:#f8f9ff;padding:4px;border-radius:10px;border:1.5px solid #eaeeff}
:where(.page-timetable) .mt-btn{padding:7px 16px;border-radius:8px;border:none;font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:800;cursor:pointer;transition:all 0.2s;color:#888;background:transparent}
:where(.page-timetable) .mt-btn.active{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 3px 10px rgba(67,97,238,0.3)}
:where(.page-timetable) .btn-action{padding:9px 18px;border-radius:10px;border:none;font-family:'Nunito',sans-serif;font-size:0.82rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-timetable) .btn-save-tt{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 4px 14px rgba(67,97,238,0.3)}
:where(.page-timetable) .btn-save-tt:hover{transform:translateY(-1px);box-shadow:0 7px 20px rgba(67,97,238,0.4)}
:where(.page-timetable) .btn-print{background:#f8f9ff;color:#666;border:2px solid #eaeeff}
:where(.page-timetable) .btn-copy{background:#e8fff5;color:#06d6a0;border:2px solid rgba(6,214,160,0.25)}
:where(.page-timetable) .period-times{background:#fff;border-radius:14px;padding:12px 20px;margin-bottom:16px;display:flex;gap:6px;flex-wrap:wrap;align-items:center;box-shadow:0 4px 16px rgba(67,97,238,0.06);border:1px solid #eaeeff}
:where(.page-timetable) .pt-label{font-size:0.68rem;font-weight:800;color:#aaa;letter-spacing:1px;text-transform:uppercase;margin-right:8px}
:where(.page-timetable) .pt-chip{padding:5px 11px;border-radius:8px;background:#f8f9ff;border:1.5px solid #eaeeff;font-size:0.73rem;font-weight:800;color:#555}
:where(.page-timetable) .pt-break{background:linear-gradient(135deg,rgba(251,133,0,0.1),rgba(230,57,70,0.08));border-color:rgba(251,133,0,0.25);color:#fb8500}
:where(.page-timetable) .pt-lunch{background:linear-gradient(135deg,rgba(6,214,160,0.1),rgba(0,119,182,0.08));border-color:rgba(6,214,160,0.25);color:#06d6a0}
:where(.page-timetable) .tt-wrapper{background:#fff;border-radius:18px;padding:20px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff;overflow-x:auto}
:where(.page-timetable) .tt-grid{display:grid;grid-template-columns:80px repeat(8,1fr);gap:6px;min-width:900px}
:where(.page-timetable) .tt-day-header{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;border-radius:10px;padding:10px 6px;text-align:center;font-family:'Rajdhani',sans-serif;font-size:0.9rem;font-weight:700;letter-spacing:1px}
:where(.page-timetable) .tt-period-header{border-radius:10px;padding:10px 6px;text-align:center;background:#f8f9ff;border:1.5px solid #eaeeff}
:where(.page-timetable) .tt-period-header .ph-num{font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;color:#4361ee}
:where(.page-timetable) .tt-period-header .ph-time{font-size:0.62rem;color:#aaa;font-weight:700;margin-top:2px}
:where(.page-timetable) .tt-day-label{border-radius:10px;padding:10px 6px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(67,97,238,0.08),rgba(114,9,183,0.05));border:1.5px solid rgba(67,97,238,0.15)}
:where(.page-timetable) .tt-day-name{font-family:'Rajdhani',sans-serif;font-size:0.95rem;font-weight:700;color:#4361ee;text-align:center;letter-spacing:1px}
:where(.page-timetable) .tt-cell{border-radius:10px;border:2px solid #eaeeff;min-height:72px;cursor:pointer;transition:all 0.25s;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:6px}
:where(.page-timetable) .tt-cell.empty{background:#f8f9ff}
:where(.page-timetable) .tt-cell.empty:hover{border-color:#4361ee;background:#eff2ff}
:where(.page-timetable) .tt-cell.empty::after{content:'+ Add';font-size:0.68rem;font-weight:800;color:#c5c9ff}
:where(.page-timetable) .tt-cell.filled{border-color:transparent}
:where(.page-timetable) .tt-cell.filled:hover{transform:scale(1.03);box-shadow:0 6px 20px rgba(0,0,0,0.12)}
:where(.page-timetable) .tt-cell.break-cell{background:linear-gradient(135deg,#fff8ec,#fff0ec);border-color:rgba(251,133,0,0.3);cursor:default}
:where(.page-timetable) .tt-cell.break-cell:hover{transform:none}
:where(.page-timetable) .cell-subject{font-size:0.78rem;font-weight:800;color:#1a1a2e;line-height:1.2;margin-bottom:3px}
:where(.page-timetable) .cell-teacher{font-size:0.65rem;color:rgba(255,255,255,0.85);font-weight:700}
:where(.page-timetable) .cell-rm{font-size:0.62rem;color:rgba(255,255,255,0.7);font-weight:600;margin-top:2px}
:where(.page-timetable) .cell-edit-btn{position:absolute;top:3px;right:3px;width:18px;height:18px;border-radius:5px;background:rgba(255,255,255,0.25);border:none;color:#fff;font-size:0.6rem;cursor:pointer;display:none;align-items:center;justify-content:center}
:where(.page-timetable) .tt-cell.filled:hover .cell-edit-btn{display:flex}
:where(.page-timetable) .break-label{font-size:0.75rem;font-weight:800;color:#fb8500}
:where(.page-timetable) .break-time{font-size:0.62rem;color:#aaa;margin-top:2px}
:where(.page-timetable) .legend{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
:where(.page-timetable) .legend-item{display:flex;align-items:center;gap:6px;font-size:0.73rem;font-weight:700;color:#555}
:where(.page-timetable) .legend-dot{width:12px;height:12px;border-radius:4px;flex-shrink:0}
:where(.page-fee-collection) .search-card{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(6,214,160,0.08);border:1px solid #d8f5ee;margin-bottom:20px}
:where(.page-fee-collection) .sc-head{font-family:'Rajdhani',sans-serif;font-size:1.15rem;font-weight:700;color:#1a1a2e;margin-bottom:16px;display:flex;align-items:center;gap:10px}
:where(.page-fee-collection) .search-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:12px;align-items:end}
:where(.page-fee-collection) .fg{display:flex;flex-direction:column;gap:5px}
:where(.page-fee-collection) label{font-size:0.68rem;font-weight:800;color:#888;text-transform:uppercase;letter-spacing:0.5px}
:where(.page-fee-collection) input[type=text],:where(.page-fee-collection) input[type=number],:where(.page-fee-collection) input[type=date],:where(.page-fee-collection) select{width:100%;background:#f8f9ff;border:2px solid #e0f5ef;border-radius:10px;padding:9px 13px;color:#333;font-family:'Nunito',sans-serif;font-size:0.86rem;outline:none;transition:all 0.2s}
:where(.page-fee-collection) input:focus,:where(.page-fee-collection) select:focus{border-color:#06d6a0;background:#fff;box-shadow:0 0 0 3px rgba(6,214,160,0.1)}
:where(.page-attendance-mark) .filter-bar{background:#fff;border-radius:16px;padding:18px 22px;margin-bottom:20px;box-shadow:0 4px 20px rgba(67,97,238,0.07);border:1px solid #eaeeff;display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}
:where(.page-attendance-mark) .fb-group{display:flex;flex-direction:column;gap:5px;min-width:130px}
:where(.page-attendance-mark) .fb-label{font-size:0.68rem;font-weight:800;color:#888;text-transform:uppercase;letter-spacing:0.5px}
:where(.page-attendance-mark) .fb-sel{background:#f8f9ff;border:2px solid #eaeeff;border-radius:10px;padding:9px 12px;font-family:'Nunito',sans-serif;font-size:0.85rem;font-weight:700;color:#444;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:28px;transition:all 0.2s}
:where(.page-attendance-mark) .fb-sel:focus{border-color:#4361ee}
:where(.page-attendance-mark) input[type=date].fb-sel{padding-right:12px;background-image:none}
:where(.page-attendance-mark) .fb-spacer{flex:1}
:where(.page-attendance-mark) .btn-load{padding:10px 22px;border-radius:11px;border:none;background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;transition:all 0.2s;box-shadow:0 4px 14px rgba(67,97,238,0.3);height:40px}
:where(.page-attendance-mark) .btn-load:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(67,97,238,0.4)}
:where(.page-attendance-mark) .att-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:20px}
:where(.page-attendance-mark) .as{border-radius:14px;padding:14px 16px;border:2px solid transparent;cursor:pointer;transition:all 0.2s;text-align:center}
:where(.page-attendance-mark) .as:hover{transform:translateY(-2px)}
:where(.page-attendance-mark) .as1{background:linear-gradient(135deg,#eff2ff,#e0d8ff);border-color:#c5c9ff}
:where(.page-attendance-mark) .as2{background:linear-gradient(135deg,#e8fff5,#c8f7e4);border-color:#a8e6cf}
:where(.page-attendance-mark) .as3{background:linear-gradient(135deg,#fff0f0,#ffe4e4);border-color:#ffb3b3}
:where(.page-attendance-mark) .as4{background:linear-gradient(135deg,#fff8ec,#ffe4bb);border-color:#ffd180}
:where(.page-attendance-mark) .as5{background:linear-gradient(135deg,#fdf0ff,#eeddff);border-color:#d4aaff}
:where(.page-attendance-mark) .as-val{font-family:'Rajdhani',sans-serif;font-size:1.8rem;font-weight:700;line-height:1}
:where(.page-attendance-mark) .as1 .as-val{color:#4361ee}
:where(.page-attendance-mark) .as2 .as-val{color:#06d6a0}
:where(.page-attendance-mark) .as3 .as-val{color:#e63946}
:where(.page-attendance-mark) .as4 .as-val{color:#fb8500}
:where(.page-attendance-mark) .as5 .as-val{color:#7209b7}
:where(.page-attendance-mark) .as-label{font-size:0.7rem;font-weight:800;color:#888;margin-top:4px}
:where(.page-attendance-mark) .att-card{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff}
:where(.page-attendance-mark) .att-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px}
:where(.page-attendance-mark) .att-title{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-attendance-mark) .att-controls{display:flex;gap:8px;flex-wrap:wrap}
:where(.page-attendance-mark) .ctrl-btn{padding:7px 14px;border-radius:9px;border:2px solid #eaeeff;background:#f8f9ff;font-family:'Nunito',sans-serif;font-size:0.78rem;font-weight:800;cursor:pointer;transition:all 0.2s;color:#666}
:where(.page-attendance-mark) .ctrl-btn:hover,:where(.page-attendance-mark) .ctrl-btn.active{border-color:transparent}
:where(.page-attendance-mark) .cb-all{}
:where(.page-attendance-mark) .cb-all:hover,:where(.page-attendance-mark) .cb-all.active{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff}
:where(.page-attendance-mark) .cb-present:hover,:where(.page-attendance-mark) .cb-present.active{background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff}
:where(.page-attendance-mark) .cb-absent:hover,:where(.page-attendance-mark) .cb-absent.active{background:linear-gradient(135deg,#e63946,#c1121f);color:#fff}
:where(.page-teacher-add) .steps-bar{display:flex;align-items:center;gap:0;margin-bottom:26px;background:#fff;border-radius:16px;padding:6px;box-shadow:0 4px 20px rgba(67,97,238,0.07);border:1px solid #eaeeff;overflow-x:auto}
:where(.page-teacher-add) .step{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 8px;border-radius:11px;cursor:pointer;transition:all 0.2s;min-width:130px}
:where(.page-teacher-add) .step.active{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 4px 14px rgba(67,97,238,0.3)}
:where(.page-teacher-add) .step.done{background:#e8fff5;color:#06d6a0}
:where(.page-teacher-add) .step.pending{color:#bbb}
:where(.page-teacher-add) .step-num{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.78rem;font-weight:900;flex-shrink:0}
:where(.page-teacher-add) .step.active .step-num{background:rgba(255,255,255,0.25);color:#fff}
:where(.page-teacher-add) .step.done .step-num{background:#06d6a0;color:#fff}
:where(.page-teacher-add) .step.pending .step-num{background:#f0f4ff;color:#bbb}
:where(.page-teacher-add) .step-label{font-size:0.78rem;font-weight:800}
:where(.page-teacher-add) .form-card{background:#fff;border-radius:20px;padding:28px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff;margin-bottom:20px}
:where(.page-teacher-add) .fc-head{display:flex;align-items:center;gap:14px;margin-bottom:24px;padding-bottom:18px;border-bottom:2px solid #f0f4ff}
:where(.page-teacher-add) .fc-icon{width:50px;height:50px;border-radius:14px;background:linear-gradient(135deg,#4361ee,#7209b7);display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:0 6px 18px rgba(67,97,238,0.3);flex-shrink:0}
:where(.page-teacher-add) .fc-title{font-family:'Rajdhani',sans-serif;font-size:1.2rem;font-weight:700;color:#1a1a2e}
:where(.page-teacher-add) .fc-sub{font-size:0.76rem;color:#aaa}
:where(.page-teacher-add) .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
:where(.page-teacher-add) .form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
:where(.page-teacher-add) .fg{display:flex;flex-direction:column}
:where(.page-teacher-add) .fg.full{grid-column:1/-1}
:where(.page-teacher-add) label{font-size:0.73rem;font-weight:800;color:#666;margin-bottom:5px;letter-spacing:0.5px;text-transform:uppercase}
:where(.page-teacher-add) input[type=text],:where(.page-teacher-add) input[type=email],:where(.page-teacher-add) input[type=tel],:where(.page-teacher-add) input[type=date],:where(.page-teacher-add) input[type=number],:where(.page-teacher-add) select,:where(.page-teacher-add) textarea{width:100%;background:#f8f9ff;border:2px solid #eaeeff;border-radius:11px;padding:10px 14px;color:#333;font-family:'Nunito',sans-serif;font-size:0.88rem;outline:none;transition:all 0.2s}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-teacher-dashboard,.page-teacher-mapping) .stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}
:where(.page-accountant-dashboard,.page-teacher-dashboard) .sc{border-radius:18px;padding:20px;color:#fff;position:relative;overflow:hidden;transition:transform 0.25s,box-shadow 0.25s}
:where(.page-accountant-dashboard,.page-teacher-dashboard) .sc:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(0,0,0,0.18)}
:where(.page-accountant-dashboard,.page-teacher-dashboard) .sc::after{content:'';position:absolute;top:-20px;right:-20px;width:90px;height:90px;border-radius:50%;background:rgba(255,255,255,0.12)}
:where(.page-accountant-dashboard) .sc1{background:linear-gradient(135deg,#fb8500,#ffb703)}
:where(.page-accountant-dashboard) .sc2{background:linear-gradient(135deg,#e63946,#f72585)}
:where(.page-accountant-dashboard) .sc3{background:linear-gradient(135deg,#06d6a0,#4cc9f0)}
:where(.page-accountant-dashboard) .sc4{background:linear-gradient(135deg,#4361ee,#7209b7)}
:where(.page-teacher-mapping) .sc{border-radius:18px;padding:18px;color:#fff;position:relative;overflow:hidden;transition:transform 0.25s,box-shadow 0.25s}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .sc{border-radius:18px;padding:20px;color:#fff;position:relative;overflow:hidden;transition:transform 0.25s,box-shadow 0.25s;cursor:default}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-teacher-mapping) .sc:hover{transform:translateY(-4px);box-shadow:0 14px 36px rgba(0,0,0,0.16)}
:where(.page-hod-dashboard,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-teacher-mapping) .sc::after{content:'';position:absolute;top:-20px;right:-20px;width:80px;height:80px;border-radius:50%;background:rgba(255,255,255,0.12)}
:where(.page-hod-dashboard) .sc1{background:linear-gradient(135deg,#f72585,#7209b7)}
:where(.page-hod-dashboard) .sc2{background:linear-gradient(135deg,#4361ee,#4cc9f0)}
:where(.page-hod-dashboard) .sc3{background:linear-gradient(135deg,#fb8500,#ffb703)}
:where(.page-hod-dashboard) .sc4{background:linear-gradient(135deg,#06d6a0,#0077b6)}
:where(.page-hod-dashboard) .sc5{background:linear-gradient(135deg,#e63946,#f72585)}
:where(.page-hod-dashboard) .sc-icon{font-size:1.7rem;margin-bottom:8px;position:relative;z-index:1}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .sc::before{content:'';position:absolute;bottom:-20px;right:15px;width:60px;height:60px;border-radius:50%;background:rgba(255,255,255,0.07)}
:where(.page-comm-homework,.page-comm-notes,.page-comm-notification,.page-comm-syllabus,.page-fee-structure) .stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}
:where(.page-comm-notes,.page-fee-report,.page-fee-structure) .sc{border-radius:16px;padding:16px;color:#fff;position:relative;overflow:hidden;transition:transform 0.2s}
:where(.page-comm-notes,.page-fee-report,.page-fee-structure) .sc:hover{transform:translateY(-3px)}
:where(.page-comm-homework,.page-comm-notification,.page-comm-syllabus) .sc{border-radius:16px;padding:16px;color:#fff;position:relative;overflow:hidden;transition:transform 0.2s,box-shadow 0.2s}
:where(.page-attendance-view,.page-comm-homework,.page-comm-notification,.page-comm-syllabus) .sc:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,0.15)}
:where(.tpl-3:not(.page-attendance-mark,.page-fee-collection,.page-fee-dashboard,.page-teacher-mapping,.page-timetable)) .sc::after{content:'';position:absolute;top:-15px;right:-15px;width:70px;height:70px;border-radius:50%;background:rgba(255,255,255,0.12)}
:where(.page-comm-syllabus,.page-fee-report,.page-fee-structure,.page-teacher-dashboard) .sc1{background:linear-gradient(135deg,#06d6a0,#0077b6)}
:where(.page-teacher-dashboard) .sc2{background:linear-gradient(135deg,#4cc9f0,#4361ee)}
:where(.page-teacher-dashboard) .sc3{background:linear-gradient(135deg,#fb8500,#f72585)}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-user-access)) .panel{background:#fff;border-radius:18px;padding:20px;box-shadow:0 4px 20px rgba(67,97,238,.07);border:1px solid #eaeeff;margin-bottom:18px}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-user-access),.page-fee-dashboard) .ph{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:8px}
:where(.page-fee-dashboard) .pt{font-family:'Rajdhani',sans-serif;font-size:1.05rem;font-weight:700;color:#1a1a2e}
:where(.page-fee-dashboard) .pa{font-size:0.73rem;color:#06d6a0;font-weight:800;cursor:pointer;background:#e8fff5;padding:5px 12px;border-radius:8px;border:none;transition:all 0.2s;text-decoration:none}
:where(.page-fee-dashboard) .pa:hover{background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-user-access)) .pt{font-family:"Rajdhani",sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-settings,.page-user-access)) table{width:100%;border-collapse:collapse;font-size:.82rem}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-settings,.page-user-access)) th{font-weight:800;text-align:left;padding:9px 12px;border-bottom:2px solid #f0f4ff;font-size:.69rem;color:#aaa;letter-spacing:1px;text-transform:uppercase}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-management-tickets,.page-settings,.page-user-access)) td{padding:10px 12px;border-bottom:1px solid #f5f7ff;color:#444}
:where(.page-management-tickets) td{padding:10px 12px;border-bottom:1px solid #f5f7ff;color:#444;vertical-align:middle}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-settings,.page-user-access)) tr:hover td{background:#f8f9ff}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-settings,.page-user-access)) .tag{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.71rem;font-weight:800}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-settings,.page-user-access)) .tg{background:#e8fff5;color:#06d6a0}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-settings,.page-user-access)) .tr{background:#fff0f0;color:#e63946}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-settings,.page-user-access)) .to{background:#fff8ec;color:#fb8500}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-settings,.page-user-access)) .tb{background:#eff2ff;color:#4361ee}
:where(.page-management-tickets,.page-support-ticket) .prio{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:8px;font-size:.7rem;font-weight:800}
:where(.page-management-tickets,.page-support-ticket) .p-critical{background:#fff0f0;color:#e63946}
:where(.page-management-tickets,.page-support-ticket) .p-high{background:#fff8ec;color:#fb8500}
:where(.page-management-tickets,.page-support-ticket) .p-medium{background:#eff2ff;color:#4361ee}
:where(.page-management-tickets,.page-support-ticket) .p-low{background:#f3f0ff;color:#888}
:where(.page-support-ticket) .btn{padding:10px 18px;border-radius:11px;border:none;font-family:Nunito,sans-serif;font-size:.85rem;font-weight:800;cursor:pointer;transition:all .2s}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-support-ticket)) .btn{padding:8px 16px;border-radius:10px;border:none;font-family:Nunito,sans-serif;font-size:.8rem;font-weight:800;cursor:pointer;transition:all .2s}
:where(.uses-edubloom:not(.page-admin-dashboard)) .btn-p{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 4px 14px rgba(67,97,238,.3)}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-management-tickets,.page-user-access),.page-student-profile) .btn-p:hover{transform:translateY(-2px)}
:where(.page-student-profile) .btn-o{background:#f8f9ff;border:2px solid #eaeeff;color:#555}
:where(.page-student-profile) .btn-o:hover{border-color:#4361ee;color:#4361ee;background:#eff2ff}
:where(.page-student-profile) .btn-d{background:linear-gradient(135deg,#e63946,#f72585);color:#fff}
:where(.page-student-profile) .ibtn{width:40px;height:40px;border-radius:12px;background:#f8f9ff;border:2px solid #eaeeff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;position:relative;flex-shrink:0}
:where(.page-student-profile) .nd{position:absolute;top:5px;right:5px;width:8px;height:8px;border-radius:50%;background:#f72585;border:2px solid #fff}
:where(.page-student-profile) .content{padding:22px;flex:1}
:where(.page-student-profile) .hero{background:#fff;border-radius:20px;border:1px solid #eaeeff;box-shadow:0 4px 24px rgba(67,97,238,.08);overflow:hidden;margin-bottom:20px}
:where(.page-student-profile) .hb{height:120px;background:linear-gradient(135deg,#4361ee,#7209b7,#f72585)}
:where(.page-student-profile) .hbody{padding:0 26px 22px}
:where(.page-student-profile) .htop{display:flex;align-items:flex-end;gap:18px;margin-top:-42px;flex-wrap:wrap}
:where(.page-student-profile) .sava{width:90px;height:90px;border-radius:20px;border:4px solid #fff;background:linear-gradient(135deg,#4361ee,#7209b7);display:flex;align-items:center;justify-content:center;font-size:2.5rem;box-shadow:0 8px 24px rgba(67,97,238,.3);flex-shrink:0}
:where(.page-student-profile) .hinfo{flex:1;padding-top:48px}
:where(.page-student-profile) .snl{font-family:"Rajdhani",sans-serif;font-size:1.8rem;font-weight:700;color:#1a1a2e;line-height:1}
:where(.page-student-profile) .ss{font-size:.84rem;color:#888;margin-top:4px;font-weight:700}
:where(.page-student-profile) .htags{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
:where(.page-student-profile) .ht{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:20px;font-size:.74rem;font-weight:800}
:where(.page-student-profile) .hb1{background:#eff2ff;color:#4361ee}
:where(.page-student-profile) .hg1{background:#e8fff5;color:#06d6a0}
:where(.page-student-profile) .ho1{background:#fff8ec;color:#fb8500}
:where(.page-student-profile) .hp1{background:#fff0f8;color:#f72585}
:where(.page-student-profile) .hactions{display:flex;gap:9px;margin-top:16px;flex-wrap:wrap}
:where(.page-student-profile) .tab-nav{display:flex;gap:4px;background:#f8f9ff;border-radius:14px;padding:5px;margin-bottom:20px;overflow-x:auto;border:1px solid #eaeeff}
:where(.page-student-profile) .tb{padding:10px 18px;border-radius:10px;border:none;font-family:"Nunito",sans-serif;font-size:.83rem;font-weight:800;cursor:pointer;transition:all .2s;color:#888;background:transparent;white-space:nowrap}
:where(.page-student-profile) .tb.active{background:#fff;color:#4361ee;box-shadow:0 2px 12px rgba(67,97,238,.15)}
:where(.page-student-profile) .g2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-student-profile) .g3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-student-profile) .panel{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(67,97,238,.07);border:1px solid #eaeeff}
:where(.page-student-profile) .pt{font-family:"Rajdhani",sans-serif;font-size:1.05rem;font-weight:700;color:#1a1a2e;margin-bottom:16px;display:flex;align-items:center;gap:8px}
:where(.page-student-profile) .pi{font-size:.71rem;width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
:where(.page-student-profile) .ig{display:grid;grid-template-columns:1fr 1fr;gap:13px}
:where(.page-student-profile) .il{font-size:.72rem;font-weight:800;color:#bbb;text-transform:uppercase;letter-spacing:1px;margin-bottom:3px}
:where(.page-student-profile) .iv{font-size:.87rem;font-weight:700;color:#333}
:where(.page-student-profile) .ivh{font-size:.92rem;font-weight:800;color:#4361ee}
:where(.page-student-profile) .sr{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}
:where(.page-student-profile) .sm{text-align:center;background:#f8f9ff;border-radius:14px;padding:16px 10px;border:2px solid #eaeeff}
:where(.page-student-profile) .sv{font-family:"Rajdhani",sans-serif;font-size:1.8rem;font-weight:700}
:where(.page-student-profile) .sl{font-size:.72rem;color:#aaa;font-weight:700;margin-top:3px}
:where(.page-student-profile) .tl{display:flex;flex-direction:column;gap:0}
:where(.page-student-profile) .tli{display:flex;gap:14px;padding-bottom:16px;position:relative}
:where(.page-student-profile) .tli::before{content:"";position:absolute;left:15px;top:30px;bottom:0;width:2px;background:linear-gradient(to bottom,#eaeeff,transparent)}
:where(.page-student-profile) .tli:last-child::before{display:none}
:where(.page-student-profile) .td{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0;z-index:1}
:where(.page-student-profile) .tt{font-size:.87rem;color:#333;font-weight:800}
:where(.page-student-profile) .ts{font-size:.73rem;color:#aaa;margin-top:2px}
:where(.page-student-profile) table{width:100%;border-collapse:collapse;font-size:.83rem}
:where(.page-student-profile) th{font-weight:800;text-align:left;padding:9px 12px;border-bottom:2px solid #f0f4ff;font-size:.7rem;color:#aaa;letter-spacing:1px;text-transform:uppercase}
:where(.page-student-profile) td{padding:10px 12px;border-bottom:1px solid #f5f7ff;color:#444}
:where(.uses-edubloom:not(.page-admin-dashboard)) .btn-o{background:#f8f9ff;color:#4361ee;border:2px solid #eaeeff}
:where(.page-settings) .btn-d{background:#fff0f0;color:#e63946;border:2px solid #ffd9d9}
:where(.tpl-4) .fg{margin-bottom:13px}
:where(.tpl-4,.page-settings,.page-support-ticket) label{display:block;color:#444;font-size:.75rem;font-weight:800;margin-bottom:5px;letter-spacing:.5px;text-transform:uppercase}
:where(.page-settings) input,:where(.page-settings) select{width:100%;background:#f8f9ff;border:2px solid #eaeeff;border-radius:11px;padding:10px 13px;color:#222;font-family:Nunito,sans-serif;font-size:.88rem;outline:none;transition:all .2s}
:where(.tpl-4,.page-support-ticket) input,:where(.tpl-4,.page-support-ticket) select,:where(.tpl-4,.page-support-ticket) textarea{width:100%;background:#f8f9ff;border:2px solid #eaeeff;border-radius:11px;padding:10px 13px;color:#222;font-family:Nunito,sans-serif;font-size:.88rem;outline:none;transition:all .2s}
:where(.page-support-ticket) input:focus,:where(.page-support-ticket) select:focus,:where(.page-support-ticket) textarea:focus{border-color:#4361ee;background:#fff;box-shadow:0 0 0 3px rgba(67,97,238,.1)}
:where(.page-support-ticket) textarea{resize:vertical;min-height:90px}
:where(.mod-auth,.page-support-ticket) .fg{margin-bottom:14px}
:where(.mod-auth,.page-sa-super-admin-login) label{display:block;color:#444;font-size:0.76rem;font-weight:800;margin-bottom:5px;letter-spacing:0.5px;text-transform:uppercase}
:where(.mod-auth,.page-sa-super-admin-login) input{width:100%;background:#f8f9ff;border:2px solid #eaeeff;border-radius:12px;padding:11px 14px;color:#222;font-family:'Nunito',sans-serif;font-size:0.9rem;outline:none;transition:all 0.2s}
:where(.mod-auth,.page-sa-super-admin-login) input:focus{border-color:#4361ee;background:#fff;box-shadow:0 0 0 4px rgba(67,97,238,0.1)}
:where(.page-sa-super-admin-login) .key-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
:where(.page-sa-super-admin-login) .login-btn{width:100%;padding:14px;border-radius:14px;border:none;background:linear-gradient(135deg,#1a1a2e,#302b63,#7209b7);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1.08rem;font-weight:700;letter-spacing:2px;cursor:pointer;margin-top:16px;transition:all 0.3s;box-shadow:0 6px 20px rgba(114,9,183,0.4);overflow:hidden;position:relative}
:where(.page-sa-super-admin-login) .login-btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.15),transparent);transition:left 0.45s}
:where(.page-sa-super-admin-login) .login-btn:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(114,9,183,0.55)}
:where(.page-sa-super-admin-login) .login-btn:hover::before{left:100%}
:where(.page-sa-super-admin-login) .security-note{display:flex;align-items:center;gap:7px;margin-top:14px;color:#bbb;font-size:0.73rem;font-weight:700;justify-content:center}
:where(.page-sa-super-admin-login) .sec-dot{width:7px;height:7px;border-radius:50%;background:#06d6a0;animation:blink 2s infinite;flex-shrink:0}
@media(max-width:860px){
  :where(.page-sa-super-admin-login) .container{grid-template-columns:1fr;max-width:480px}
  :where(.page-sa-super-admin-login) .left{display:none}
  :where(.page-sa-super-admin-login) .right{padding:40px 32px;border-radius:26px}
  :where(.page-sa-super-admin-login) body{padding:16px}
}
@media(max-width:520px){
  :where(.page-sa-super-admin-login) .right{padding:32px 22px}
  :where(.page-sa-super-admin-login) .key-row{grid-template-columns:1fr}
  :where(.page-sa-super-admin-login) .form-title{font-size:1.7rem}
}
:where(.mod-auth) .forgot{text-align:right;margin-top:5px}
:where(.mod-auth) .forgot a{color:#7209b7;font-size:0.76rem;font-weight:700;text-decoration:none}
:where(.mod-auth) .forgot a:hover{text-decoration:underline}
:where(.mod-auth) .lbtn{width:100%;padding:14px;border-radius:14px;border:none;background:linear-gradient(135deg,#4361ee,#7209b7 50%,#f72585);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;letter-spacing:2px;cursor:pointer;margin-top:16px;transition:all 0.3s;box-shadow:0 6px 20px rgba(67,97,238,0.35);overflow:hidden;position:relative}
:where(.mod-auth) .lbtn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.25),transparent);transition:left 0.45s}
:where(.mod-auth) .lbtn:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(67,97,238,0.5)}
:where(.mod-auth) .lbtn:hover::before{left:100%}
:where(.mod-auth) .divider{display:flex;align-items:center;gap:12px;margin:16px 0;color:#ccc;font-size:0.74rem;font-weight:700}
:where(.mod-auth) .divider::before,:where(.mod-auth) .divider::after{content:'';flex:1;height:1px;background:#eee}
:where(.mod-auth) .qg{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
:where(.mod-auth) .qb{padding:8px 4px;border-radius:10px;border:2px solid #eee;background:#f9faff;color:#666;font-size:0.71rem;font-weight:800;cursor:pointer;transition:all 0.2s;text-align:center;font-family:'Nunito',sans-serif}
:where(.mod-auth) .qb:hover{background:linear-gradient(135deg,#4361ee,#f72585);color:#fff;border-color:transparent;transform:translateY(-2px)}
:where(.mod-auth) .fn{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding-top:14px;border-top:1px solid #f0f4ff}
:where(.mod-auth) .fn-left{color:#bbb;font-size:0.71rem}
:where(.mod-auth) .fn-right a{color:#7209b7;font-size:0.71rem;font-weight:700;text-decoration:none}
:where(.mod-auth) .fn span{font-weight:800;background:linear-gradient(135deg,#f72585,#fb8500);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
@media(max-width:900px){
  :where(.mod-auth) .left{display:none}
  :where(.mod-auth) .right{width:100%;min-height:100vh;padding:40px 24px}
}
@media(max-width:480px){
  :where(.mod-auth) .right{padding:30px 18px}
  :where(.mod-auth) .login-title{font-size:1.65rem}
  :where(.mod-auth) .role-grid,:where(.mod-auth) .qg{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
  :where(.mod-auth) .mobile-header{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#4361ee,#7209b7);padding:14px 18px;border-radius:16px;margin-bottom:22px}
  :where(.mod-auth) .mobile-header img{width:36px}
  :where(.mod-auth) .mh-brand{font-family:'Rajdhani',sans-serif;font-size:1.3rem;font-weight:700;color:#fff;letter-spacing:2px}
  :where(.mod-auth) .mh-tag{font-size:0.62rem;color:rgba(255,255,255,0.75);letter-spacing:3px;text-transform:uppercase}
}
@media(min-width:901px){
  :where(.mod-auth) .mobile-header{display:none}
}
:where(.page-support-ticket) .fgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
:where(.tpl-4,.page-settings) input:focus,:where(.tpl-4,.page-settings) select:focus{border-color:#4361ee;background:#fff;box-shadow:0 0 0 3px rgba(67,97,238,.1)}
:where(.page-settings) .fg{margin-bottom:14px}
:where(.page-settings) .fgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
:where(.page-settings) .tag{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.71rem;font-weight:800}
:where(.page-settings) .tg{background:#e8fff5;color:#06d6a0}
:where(.page-settings) .to{background:#fff8ec;color:#fb8500}
:where(.page-settings) .settings-shell{display:grid;grid-template-columns:230px 1fr;gap:18px;align-items:start}
:where(.page-settings) .set-nav{background:#fff;border-radius:18px;border:1px solid #eaeeff;box-shadow:0 4px 20px rgba(67,97,238,.07);overflow:hidden;position:sticky;top:84px}
:where(.page-settings) .set-nav-item{display:flex;align-items:center;gap:10px;padding:13px 16px;font-size:.84rem;font-weight:800;color:#888;cursor:pointer;border-left:3px solid transparent;transition:all .2s}
:where(.page-settings) .set-nav-item:hover{background:#f8f9ff;color:#4361ee}
:where(.page-settings) .set-nav-item.active{background:#eff2ff;color:#4361ee;border-left-color:#4361ee}
:where(.page-settings) .settings-pane{display:none}
:where(.page-settings) .settings-pane.active{display:block}
:where(.page-settings) hr.div{border:none;border-top:1px solid #f0f4ff;margin:14px 0}
@media(max-width:900px){
  :where(.page-settings) .settings-shell{grid-template-columns:1fr}
  :where(.page-settings) .set-nav{position:relative;top:0;display:flex;overflow-x:auto}
  :where(.page-settings) .set-nav-item{flex-shrink:0;border-left:none;border-bottom:3px solid transparent}
  :where(.page-settings) .set-nav-item.active{border-left:none;border-bottom-color:#4361ee}
}
:where(.tpl-4) .mc{display:grid;grid-template-columns:340px 1fr;gap:18px}
:where(.tpl-4,.page-report-attendance-compliance,.page-report-exam-performance,.page-report-staff-register) .fr{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}
:where(.page-report-attendance-compliance,.page-report-exam-performance,.page-report-staff-register) .fr select,:where(.page-report-attendance-compliance,.page-report-exam-performance,.page-report-staff-register) .fr input{width:auto;flex:1;min-width:130px;background:#f8f9ff;border:2px solid #eaeeff;border-radius:11px;padding:10px 13px;color:#222;font-family:Nunito,sans-serif;font-size:.88rem;outline:none}
:where(.tpl-4) .fr select,:where(.tpl-4) .fr input{width:auto;flex:1;min-width:130px}
:where(.page-user-access) .btn-g{background:#fff8ec;color:#fb8500;border:2px solid #ffe3b0}
:where(.page-management-tickets) .ab{padding:5px 12px;border-radius:8px;border:none;font-size:.74rem;font-weight:800;cursor:pointer;margin-right:4px}
:where(.page-management-tickets) .ab-s{background:#eff2ff;color:#4361ee}
:where(.page-management-tickets) .ab-s:hover{background:#4361ee;color:#fff}
:where(.page-management-tickets) .ab-g{background:#e8fff5;color:#06d6a0}
:where(.page-management-tickets) .ab-g:hover{background:#06d6a0;color:#fff}
:where(.page-management-tickets,.page-support-ticket) .sc-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}
:where(.page-management-tickets) .sc{background:#fff;border-radius:16px;padding:16px 18px;border:1px solid #eaeeff;box-shadow:0 4px 16px rgba(67,97,238,.06);display:flex;align-items:center;gap:14px;cursor:pointer;transition:all .2s}
:where(.page-management-tickets) .sc:hover{transform:translateY(-2px)}
:where(.page-management-tickets) .sc.active-filter{border-color:#4361ee;box-shadow:0 6px 18px rgba(67,97,238,.18)}
:where(.page-management-tickets) .sc-icon{width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
:where(.page-management-tickets) .sc-v{font-family:"Rajdhani",sans-serif;font-size:1.7rem;font-weight:700;line-height:1}
:where(.page-management-tickets) .sc-l{font-size:.72rem;color:#aaa;font-weight:700;margin-top:2px}
:where(.page-management-tickets) .filter-row{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}
:where(.page-management-tickets) .filter-row input,:where(.page-management-tickets) .filter-row select{width:auto;flex:1;min-width:160px;background:#f8f9ff;border:2px solid #eaeeff;border-radius:11px;padding:9px 13px;font-family:Nunito,sans-serif;font-size:.84rem;outline:none}
:where(.uses-edubloom:not(.page-admin-dashboard,.page-settings,.page-support-ticket,.page-user-access)) .tbl{overflow-x:auto}
:where(.tpl-4) .ab{padding:4px 10px;border-radius:7px;border:none;font-size:.71rem;font-weight:800;cursor:pointer;margin-right:3px}
:where(.tpl-4) .ab-e{background:#eff2ff;color:#4361ee}
:where(.tpl-4) .ab-d{background:#fff0f0;color:#e63946}
:where(.tpl-5) .ab-v{background:#e8fff5;color:#06d6a0}
:where(.tpl-4) .ab-e:hover{background:#4361ee;color:#fff}
:where(.tpl-4) .ab-d:hover{background:#e63946;color:#fff}
:where(.page-master-activity,.page-master-attitudes,.page-master-caste,.page-master-class-attitudes,.page-master-class-coscholastic,.page-master-class-subject,.page-master-coaching,.page-master-coscholastic,.page-master-diff-fee,.page-master-exam-type,.page-master-fee-type,.page-master-fees-duration,.page-master-group,.page-master-house,.page-master-language,.page-master-payment-mode,.page-master-quota-discount,.page-master-quota-name,.page-master-route-name,.page-master-route-point,.page-master-route-promotion,.page-master-school,.page-master-service,.page-master-transport-fees) .ab-p{background:#e8fff5;color:#06d6a0}
:where(.page-master-activity,.page-master-attitudes,.page-master-caste,.page-master-class-attitudes,.page-master-class-coscholastic,.page-master-class-subject,.page-master-coaching,.page-master-coscholastic,.page-master-diff-fee,.page-master-exam-type,.page-master-fee-type,.page-master-fees-duration,.page-master-group,.page-master-house,.page-master-language,.page-master-payment-mode,.page-master-quota-discount,.page-master-quota-name,.page-master-route-name,.page-master-route-point,.page-master-route-promotion,.page-master-school,.page-master-service,.page-master-transport-fees) .ab-p:hover{background:#06d6a0;color:#fff}
:where(.tpl-5) .ab-v:hover{background:#06d6a0;color:#fff}
:where(.tpl-5,.page-report-attendance-compliance,.page-report-cbse-compliance,.page-report-exam-performance,.page-report-staff-register) .sc-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}
:where(.tpl-5,.page-report-attendance-compliance,.page-report-cbse-compliance,.page-report-exam-performance,.page-report-staff-register,.page-support-ticket) .sc{border-radius:16px;padding:18px;color:#fff}
:where(.page-comm-notes,.page-support-ticket) .sc1{background:linear-gradient(135deg,#fb8500,#e63946)}
:where(.page-comm-notes,.page-fee-structure) .sc2{background:linear-gradient(135deg,#4361ee,#7209b7)}
:where(.page-comm-syllabus,.page-fee-report,.page-support-ticket) .sc2{background:linear-gradient(135deg,#4361ee,#3a0ca3)}
:where(.tpl-5,.page-attendance-view,.page-comm-homework,.page-comm-notification,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-report-attendance-compliance,.page-report-cbse-compliance,.page-report-exam-performance,.page-report-staff-register,.page-teacher-mapping) .sc1{background:linear-gradient(135deg,#4361ee,#3a0ca3)}
:where(.page-attendance-view,.page-comm-homework,.page-comm-notification,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-report-attendance-compliance,.page-report-cbse-compliance,.page-teacher-mapping) .sc2{background:linear-gradient(135deg,#06d6a0,#0077b6)}
:where(.page-attendance-view,.page-fee-report) .sc3{background:linear-gradient(135deg,#e63946,#c1121f)}
:where(.page-comm-homework,.page-comm-notification,.page-comm-syllabus) .sc3{background:linear-gradient(135deg,#f72585,#7209b7)}
:where(.page-fee-structure,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-report-attendance-compliance,.page-report-cbse-compliance,.page-teacher-mapping) .sc3{background:linear-gradient(135deg,#fb8500,#e63946)}
:where(.page-report-attendance-compliance) .sc4{background:linear-gradient(135deg,#e63946,#c1121f)}
:where(.tpl-5,.page-principle-dashboard,.page-report-exam-performance,.page-report-staff-register) .sc2{background:linear-gradient(135deg,#f72585,#7209b7)}
:where(.page-principle-dashboard) .sc3{background:linear-gradient(135deg,#4361ee,#4cc9f0)}
:where(.page-principle-dashboard) .sc4{background:linear-gradient(135deg,#06d6a0,#fb8500)}
:where(.page-principle-dashboard) .sc5{background:linear-gradient(135deg,#fb8500,#e63946)}
:where(.page-principle-dashboard) .sc-icon{font-size:1.7rem;margin-bottom:8px;position:relative;z-index:1}
:where(.page-principle-dashboard) .sc-val{font-family:"Rajdhani",sans-serif;font-size:1.8rem;font-weight:700;line-height:1;position:relative;z-index:1}
:where(.tpl-5,.page-comm-notes,.page-report-exam-performance,.page-report-staff-register,.page-support-ticket) .sc3{background:linear-gradient(135deg,#06d6a0,#0077b6)}
:where(.page-comm-notes,.page-fee-structure,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-teacher-mapping) .sc4{background:linear-gradient(135deg,#f72585,#7209b7)}
:where(.page-teacher-mapping) .sc-icon{font-size:1.8rem;margin-bottom:5px;position:relative;z-index:1}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .sc-icon{font-size:1.9rem;margin-bottom:6px;position:relative;z-index:1}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .sc-val{font-family:'Rajdhani',sans-serif;font-size:2.1rem;font-weight:700;line-height:1;position:relative;z-index:1}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .sc-label{font-size:0.78rem;opacity:0.9;margin-top:4px;font-weight:700;position:relative;z-index:1}
:where(.page-master-section) .layout{display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start}
:where(.page-master-mapping) .class-picker{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff;margin-bottom:20px}
:where(.page-master-mapping) .cp-title{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e;margin-bottom:14px;display:flex;align-items:center;gap:8px}
:where(.page-master-mapping) .cls-tabs{display:flex;flex-wrap:wrap;gap:8px}
:where(.page-master-mapping) .cls-tab{padding:8px 16px;border-radius:11px;border:2px solid #eaeeff;background:#f8f9ff;font-family:'Nunito',sans-serif;font-size:0.82rem;font-weight:800;color:#888;cursor:pointer;transition:all 0.2s}
:where(.page-master-mapping) .cls-tab:hover{border-color:#4361ee;color:#4361ee}
:where(.page-master-mapping) .cls-tab.active{color:#fff;border-color:transparent;box-shadow:0 4px 14px rgba(67,97,238,0.3)}
:where(.page-master-mapping) .mapping-workspace{display:grid;grid-template-columns:240px 1fr;gap:20px}
:where(.page-master-mapping) .sec-panel{background:#fff;border-radius:18px;padding:20px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff}
:where(.page-master-mapping) .sp-head{font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;color:#1a1a2e;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between}
:where(.page-master-mapping) .sec-list{display:flex;flex-direction:column;gap:6px}
:where(.page-master-mapping) .sec-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:11px;border:2px solid #eaeeff;cursor:pointer;transition:all 0.2s}
:where(.page-master-mapping) .sec-item:hover{border-color:#4361ee;background:#f8f9ff}
:where(.page-master-mapping) .sec-item.active{background:linear-gradient(135deg,rgba(67,97,238,0.12),rgba(114,9,183,0.08));border-color:#4361ee}
:where(.page-master-mapping) .sec-badge{width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;color:#fff;flex-shrink:0}
:where(.page-master-mapping) .sec-info-name{font-size:0.85rem;font-weight:800;color:#333}
:where(.page-master-mapping) .sec-info-sub{font-size:0.68rem;color:#aaa}
:where(.page-master-mapping) .subj-panel{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff}
:where(.page-master-mapping) .subj-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap;gap:10px}
:where(.page-master-mapping) .sh-title{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-master-mapping) .sh-subtitle{font-size:0.76rem;color:#aaa;font-weight:700;margin-top:2px}
:where(.page-master-mapping) .btn-save-map{padding:10px 20px;border-radius:11px;border:none;background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;font-family:'Rajdhani',sans-serif;font-size:0.95rem;font-weight:700;letter-spacing:1px;cursor:pointer;transition:all 0.2s;box-shadow:0 4px 14px rgba(67,97,238,0.3)}
:where(.page-master-mapping) .btn-save-map:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(67,97,238,0.4)}
:where(.page-master-mapping) .subj-categories{display:flex;flex-direction:column;gap:16px}
:where(.page-master-mapping) .cat-section{border:1.5px solid #eaeeff;border-radius:14px;overflow:hidden}
:where(.page-master-mapping) .cat-header{padding:10px 16px;background:linear-gradient(135deg,#f8f9ff,#f0f4ff);display:flex;align-items:center;gap:10px;border-bottom:1.5px solid #eaeeff}
:where(.page-master-mapping) .cat-icon{font-size:1rem}
:where(.page-master-mapping) .cat-name{font-size:0.82rem;font-weight:800;color:#444;flex:1}
:where(.page-master-mapping) .cat-count{font-size:0.72rem;font-weight:800;color:#aaa;background:#fff;padding:2px 10px;border-radius:20px;border:1px solid #eaeeff}
:where(.page-master-mapping) .cat-items{padding:12px 14px;display:flex;flex-wrap:wrap;gap:8px}
:where(.page-master-mapping) .subj-chip{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:11px;border:2px solid #eaeeff;background:#f8f9ff;font-size:0.8rem;font-weight:800;cursor:pointer;transition:all 0.2s;user-select:none}
:where(.page-master-mapping) .subj-chip:hover{border-color:#4361ee}
:where(.page-master-mapping) .subj-chip.checked{background:linear-gradient(135deg,rgba(67,97,238,0.1),rgba(114,9,183,0.08));border-color:#4361ee;color:#4361ee}
:where(.page-master-mapping) .subj-chip .chip-check{width:16px;height:16px;border-radius:5px;border:2px solid #ddd;display:flex;align-items:center;justify-content:center;font-size:0.6rem;transition:all 0.2s;flex-shrink:0}
:where(.page-master-mapping) .subj-chip.checked .chip-check{background:#4361ee;border-color:#4361ee;color:#fff}
:where(.page-master-mapping) .map-table-section{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff;margin-top:20px}
:where(.page-master-mapping) .mts-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px}
:where(.page-master-mapping) .mts-title{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-master-class) .layout{display:grid;grid-template-columns:360px 1fr;gap:20px;align-items:start}
:where(.page-comm-notes,.page-fee-structure) .sc-icon{font-size:1.7rem;margin-bottom:4px;position:relative;z-index:1}
:where(.page-comm-notes,.page-fee-structure,.page-teacher-mapping) .sc-val{font-family:'Rajdhani',sans-serif;font-size:2rem;font-weight:700;line-height:1;position:relative;z-index:1}
:where(.page-teacher-mapping) .sc-label{font-size:0.76rem;opacity:0.9;margin-top:3px;font-weight:700;position:relative;z-index:1}
:where(.page-teacher-mapping) .layout{display:grid;grid-template-columns:300px 1fr;gap:20px;align-items:start}
:where(.page-teacher-mapping) .teacher-list-panel{background:#fff;border-radius:18px;padding:18px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff;position:sticky;top:88px}
:where(.page-teacher-mapping) .tlp-head{font-family:'Rajdhani',sans-serif;font-size:1.05rem;font-weight:700;color:#1a1a2e;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between}
:where(.page-teacher-mapping) .add-link{font-size:0.73rem;font-weight:800;color:#4361ee;cursor:pointer;background:#eff2ff;padding:4px 10px;border-radius:8px;border:none;transition:all 0.2s}
:where(.page-teacher-mapping) .add-link:hover{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff}
:where(.page-teacher-mapping) .t-search{width:100%;background:#f8f9ff;border:2px solid #eaeeff;border-radius:10px;padding:8px 12px;font-family:'Nunito',sans-serif;font-size:0.82rem;outline:none;margin-bottom:10px;transition:all 0.2s}
:where(.page-teacher-mapping) .t-search:focus{border-color:#4361ee}
:where(.page-teacher-mapping) .teacher-items{display:flex;flex-direction:column;gap:4px;max-height:calc(100vh - 280px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#e0d8ff transparent}
:where(.page-teacher-mapping) .ti{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:11px;border:2px solid transparent;cursor:pointer;transition:all 0.2s}
:where(.page-teacher-mapping) .ti:hover{background:#f8f9ff;border-color:#eaeeff}
:where(.page-teacher-mapping) .ti.selected{background:linear-gradient(135deg,rgba(67,97,238,0.1),rgba(114,9,183,0.06));border-color:#4361ee}
:where(.page-teacher-mapping) .ti-ava{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:0.85rem;color:#fff;flex-shrink:0}
:where(.page-teacher-mapping) .ti-name{font-size:0.84rem;font-weight:800;color:#333;line-height:1.2}
:where(.page-teacher-mapping) .ti-dept{font-size:0.68rem;color:#aaa;font-weight:700}
:where(.page-teacher-mapping) .ti-cnt{margin-left:auto;font-size:0.68rem;font-weight:800;color:#4361ee;background:#eff2ff;padding:2px 7px;border-radius:8px;flex-shrink:0}
:where(.page-teacher-mapping) .mapping-panel{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff}
:where(.page-teacher-mapping) .mp-empty{text-align:center;padding:60px 20px;color:#bbb}
:where(.page-teacher-mapping) .mp-empty-icon{font-size:3rem;margin-bottom:12px}
:where(.page-teacher-mapping) .mp-empty-text{font-size:0.9rem;font-weight:700}
:where(.page-teacher-mapping) .teacher-header{display:flex;align-items:center;gap:14px;padding:16px;background:linear-gradient(135deg,#f0f4ff,#e8ecff);border-radius:14px;margin-bottom:20px;border:1.5px solid rgba(67,97,238,0.15)}
:where(.page-teacher-mapping) .th-ava{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.1rem;color:#fff;flex-shrink:0}
:where(.page-teacher-mapping) .th-name{font-family:'Rajdhani',sans-serif;font-size:1.25rem;font-weight:700;color:#1a1a2e}
:where(.page-teacher-mapping) .th-sub{font-size:0.77rem;color:#aaa;font-weight:700}
:where(.page-teacher-mapping) .th-tag{margin-left:auto;background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;font-size:0.72rem;font-weight:800;padding:5px 14px;border-radius:20px;white-space:nowrap;flex-shrink:0}
:where(.page-teacher-mapping) .map-section{margin-bottom:20px}
:where(.page-teacher-mapping) .ms-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
:where(.page-teacher-mapping) .ms-title{font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;color:#1a1a2e;display:flex;align-items:center;gap:8px}
:where(.page-teacher-mapping) .btn-add-row{padding:6px 14px;border-radius:9px;border:2px solid rgba(67,97,238,0.2);background:#eff2ff;color:#4361ee;font-family:'Nunito',sans-serif;font-size:0.78rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-teacher-mapping) .btn-add-row:hover{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;border-color:transparent}
:where(.page-teacher-mapping) .mapping-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:10px;align-items:center;background:#f8f9ff;border-radius:12px;padding:10px 12px;margin-bottom:8px;border:1.5px solid #eaeeff;transition:all 0.2s}
:where(.page-teacher-mapping) .mapping-row:hover{border-color:#c5c9ff;background:#f0f4ff}
:where(.page-teacher-mapping) .map-sel{background:#fff;border:2px solid #eaeeff;border-radius:9px;padding:8px 12px;font-family:'Nunito',sans-serif;font-size:0.82rem;font-weight:700;color:#444;outline:none;width:100%;transition:all 0.2s;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:24px}
:where(.page-teacher-mapping) .map-sel:focus{border-color:#4361ee;box-shadow:0 0 0 3px rgba(67,97,238,0.1)}
:where(.page-teacher-mapping) .del-row{width:30px;height:30px;border-radius:8px;border:none;background:#fff0f0;color:#e63946;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:0.9rem;flex-shrink:0;transition:all 0.2s;border:1.5px solid rgba(230,57,70,0.2)}
:where(.page-teacher-mapping) .del-row:hover{background:#e63946;color:#fff}
:where(.page-teacher-mapping) .btn-save-teacher{padding:12px 26px;border-radius:12px;border:none;background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1.05rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;transition:all 0.2s;box-shadow:0 4px 14px rgba(67,97,238,0.3)}
:where(.page-teacher-mapping) .btn-save-teacher:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(67,97,238,0.4)}
:where(.page-teacher-mapping) .summary-card{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff;margin-top:20px}
:where(.page-report-cbse-compliance,.page-support-ticket,.page-teacher-dashboard) .sc4{background:linear-gradient(135deg,#7209b7,#f72585)}
:where(.page-accountant-dashboard,.page-teacher-dashboard) .sc-icon{font-size:1.9rem;margin-bottom:8px;position:relative;z-index:1}
:where(.page-accountant-dashboard) .sc-val{font-family:'Rajdhani',sans-serif;font-size:2rem;font-weight:700;line-height:1;position:relative;z-index:1}
:where(.page-teacher-dashboard) .sc-val{font-family:'Rajdhani',sans-serif;font-size:2.1rem;font-weight:700;line-height:1;position:relative;z-index:1}
:where(.page-accountant-dashboard,.page-teacher-dashboard) .sc-label{font-size:0.79rem;opacity:0.9;margin-top:4px;font-weight:700;position:relative;z-index:1}
:where(.page-accountant-dashboard,.page-teacher-dashboard) .sc-change{margin-top:8px;font-size:0.72rem;font-weight:700;background:rgba(255,255,255,0.2);display:inline-block;padding:3px 10px;border-radius:20px;position:relative;z-index:1}
:where(.page-accountant-dashboard) .sbox-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}
:where(.page-accountant-dashboard) .sbox{border-radius:14px;padding:16px;text-align:center}
:where(.page-accountant-dashboard) .sbox1{background:linear-gradient(135deg,#e8fff5,#c5f4e0)}
:where(.page-accountant-dashboard) .sbox2{background:linear-gradient(135deg,#fff0f0,#ffd4d4)}
:where(.page-accountant-dashboard) .sbox3{background:linear-gradient(135deg,#fff8ec,#ffe5b4)}
:where(.page-accountant-dashboard) .sbox-val{font-family:'Rajdhani',sans-serif;font-size:1.9rem;font-weight:700;margin-bottom:4px}
:where(.page-accountant-dashboard) .sbox-label{font-size:0.78rem;font-weight:700;color:#888}
:where(.page-accountant-dashboard) .dg{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-teacher-dashboard) .dg{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-teacher-dashboard) .dg-t{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-teacher-dashboard) .panel{background:#fff;border-radius:18px;padding:20px;box-shadow:0 4px 20px rgba(6,214,160,0.07);border:1px solid #d0f5e8}
:where(.page-teacher-dashboard) .ph{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
:where(.page-teacher-dashboard) .pt{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-teacher-dashboard) .pa{font-size:0.74rem;color:#06d6a0;font-weight:800;cursor:pointer;background:#e8fff5;padding:5px 12px;border-radius:8px;border:none;white-space:nowrap}
:where(.page-teacher-dashboard) .tt{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
:where(.page-teacher-dashboard) .tth{background:linear-gradient(135deg,#06d6a0,#4cc9f0);border-radius:10px;padding:8px;text-align:center;font-size:0.7rem;font-weight:800;color:#fff;line-height:1.3}
:where(.page-teacher-dashboard) .tts{border-radius:10px;padding:9px 5px;font-size:0.73rem;text-align:center;border:2px solid #eee}
:where(.page-teacher-dashboard) .tts.filled{background:linear-gradient(135deg,rgba(67,97,238,0.12),rgba(114,9,183,0.08));border-color:#c5c9ff;color:#4361ee;font-weight:700}
:where(.page-teacher-dashboard) .tts.brk{background:linear-gradient(135deg,rgba(251,133,0,0.12),rgba(255,183,3,0.12));border-color:#ffe0b2;color:#fb8500;font-weight:700}
:where(.page-teacher-dashboard) .tts.free{color:#ccc;background:#fafafa;font-size:0.68rem}
:where(.page-teacher-dashboard) table{width:100%;border-collapse:collapse;font-size:0.82rem}
:where(.page-teacher-dashboard) th{font-weight:800;text-align:left;padding:9px 11px;border-bottom:2px solid #f0fff8;font-size:0.7rem;color:#aaa;letter-spacing:1px;text-transform:uppercase}
:where(.page-teacher-dashboard) td{padding:10px 11px;border-bottom:1px solid #f0fff8;color:#444}
:where(.page-teacher-dashboard) tr:hover td{background:#f5fffc}
:where(.page-report-cbse-compliance) .sc-v{font-family:"Rajdhani",sans-serif;font-size:1.5rem;font-weight:700}
:where(.tpl-5,.page-attendance-view,.page-comm-homework,.page-comm-notification,.page-comm-syllabus,.page-fee-report,.page-report-exam-performance,.page-report-staff-register) .sc4{background:linear-gradient(135deg,#fb8500,#e63946)}
:where(.page-attendance-view,.page-fee-report) .sc5{background:linear-gradient(135deg,#f72585,#7209b7)}
:where(.page-attendance-view,.page-comm-homework,.page-comm-notification,.page-comm-syllabus,.page-fee-report) .sc-icon{font-size:1.6rem;margin-bottom:4px;position:relative;z-index:1}
:where(.page-fee-report,.page-hod-dashboard) .sc-val{font-family:'Rajdhani',sans-serif;font-size:1.8rem;font-weight:700;line-height:1;position:relative;z-index:1}
:where(.page-hod-dashboard,.page-principle-dashboard) .sc-label{font-size:0.76rem;opacity:0.9;margin-top:4px;font-weight:700;position:relative;z-index:1}
:where(.page-hod-dashboard,.page-principle-dashboard) .sc-change{margin-top:8px;font-size:0.71rem;font-weight:700;background:rgba(255,255,255,0.22);display:inline-block;padding:3px 10px;border-radius:20px;position:relative;z-index:1}
:where(.page-principle-dashboard) .dg{display:grid;grid-template-columns:3fr 2fr;gap:18px;margin-bottom:18px}
:where(.page-principle-dashboard) .dg2{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-principle-dashboard) .panel{background:#fff;border-radius:18px;padding:20px;box-shadow:0 4px 20px rgba(114,9,183,0.07);border:1px solid #e0d0ff}
:where(.page-hod-dashboard) .dg{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-hod-dashboard) .dg-h{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-hod-dashboard) .panel{background:#fff;border-radius:18px;padding:20px;box-shadow:0 4px 20px rgba(247,37,133,0.07);border:1px solid #ffd6ee}
:where(.page-hod-dashboard,.page-principle-dashboard) .ph{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
:where(.page-hod-dashboard) .pt{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-hod-dashboard) .pa{font-size:0.74rem;color:#f72585;font-weight:800;cursor:pointer;background:#fff0f8;padding:5px 12px;border-radius:8px;border:none;white-space:nowrap}
:where(.page-hod-dashboard) .syl-item{display:flex;align-items:center;gap:10px;margin-bottom:11px}
:where(.page-hod-dashboard) .syl-label{width:140px;font-size:0.8rem;color:#444;flex-shrink:0;font-weight:700}
:where(.page-hod-dashboard) .syl-bar{flex:1;height:8px;background:#f8f0ff;border-radius:10px;overflow:hidden}
:where(.page-hod-dashboard) .syl-fill{height:100%;border-radius:10px}
:where(.page-hod-dashboard) .syl-val{width:36px;font-size:0.78rem;color:#888;text-align:right;flex-shrink:0;font-weight:700}
:where(.page-hod-dashboard) table{width:100%;border-collapse:collapse;font-size:0.82rem}
:where(.page-hod-dashboard) th{font-weight:800;text-align:left;padding:9px 11px;border-bottom:2px solid #fff5fb;font-size:0.7rem;color:#aaa;letter-spacing:1px;text-transform:uppercase}
:where(.page-hod-dashboard) td{padding:10px 11px;border-bottom:1px solid #fff8fd;color:#444}
:where(.page-hod-dashboard) tr:hover td{background:#fff8fd}
:where(.page-fee-report) .sc-label{font-size:0.7rem;opacity:0.9;margin-top:3px;font-weight:700;position:relative;z-index:1}
:where(.page-fee-report) .tab-bar{background:#fff;border-radius:14px;padding:5px;margin-bottom:18px;box-shadow:0 4px 20px rgba(6,214,160,0.07);border:1px solid #d8f5ee;display:flex;gap:4px;overflow-x:auto}
:where(.page-fee-report) .tab-btn{flex:1;padding:9px 12px;border-radius:10px;border:none;background:transparent;font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:800;cursor:pointer;transition:all 0.2s;color:#888;white-space:nowrap;min-width:110px}
:where(.page-fee-report) .tab-btn:hover{background:#f0fff8;color:#06d6a0}
:where(.page-fee-report) .tab-btn.active{background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;box-shadow:0 3px 10px rgba(6,214,160,0.3)}
:where(.page-fee-report) .filter-row{background:#fff;border-radius:13px;padding:12px 16px;margin-bottom:16px;display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;box-shadow:0 4px 14px rgba(6,214,160,0.06);border:1px solid #d8f5ee}
:where(.page-attendance-view,.page-comm-homework,.page-comm-notification,.page-comm-syllabus) .sc-val{font-family:'Rajdhani',sans-serif;font-size:1.9rem;font-weight:700;line-height:1;position:relative;z-index:1}
:where(.page-attendance-view,.page-comm-homework,.page-comm-notes,.page-comm-notification,.page-comm-syllabus,.page-fee-structure) .sc-label{font-size:0.72rem;opacity:0.9;margin-top:3px;font-weight:700;position:relative;z-index:1}
:where(.page-attendance-view) .tab-bar{background:#fff;border-radius:14px;padding:6px;margin-bottom:20px;box-shadow:0 4px 20px rgba(67,97,238,0.07);border:1px solid #eaeeff;display:flex;gap:4px;overflow-x:auto}
:where(.page-attendance-view) .tab-btn{flex:1;padding:10px 14px;border-radius:10px;border:none;background:transparent;font-family:'Nunito',sans-serif;font-size:0.82rem;font-weight:800;cursor:pointer;transition:all 0.2s;color:#888;white-space:nowrap;min-width:130px}
:where(.page-attendance-view) .tab-btn:hover{background:#f0f4ff;color:#4361ee}
:where(.page-attendance-view) .tab-btn.active{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 3px 10px rgba(67,97,238,0.3)}
:where(.page-attendance-view) .filter-row{background:#fff;border-radius:14px;padding:14px 18px;margin-bottom:18px;display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;box-shadow:0 4px 16px rgba(67,97,238,0.06);border:1px solid #eaeeff}
:where(.page-attendance-view,.page-fee-report) .fr-group{display:flex;flex-direction:column;gap:4px}
:where(.page-attendance-view,.page-fee-report) .fr-label{font-size:0.64rem;font-weight:800;color:#aaa;text-transform:uppercase;letter-spacing:0.5px}
:where(.page-fee-report) .fr-sel{background:#f8f9ff;border:2px solid #e0f5ef;border-radius:9px;padding:7px 12px;font-family:'Nunito',sans-serif;font-size:0.82rem;font-weight:700;color:#444;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:26px;min-width:120px;transition:all 0.2s}
:where(.page-fee-report) .fr-sel:focus{border-color:#06d6a0}
:where(.page-attendance-view) .fr-sel{background:#f8f9ff;border:2px solid #eaeeff;border-radius:9px;padding:7px 12px;font-family:'Nunito',sans-serif;font-size:0.82rem;font-weight:700;color:#444;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:26px;min-width:120px;transition:all 0.2s}
:where(.page-attendance-view) .fr-sel:focus{border-color:#4361ee}
:where(.page-attendance-view,.page-fee-report) .fr-spacer{flex:1}
:where(.page-fee-report) .btn-export{padding:9px 16px;border-radius:9px;border:2px solid rgba(6,214,160,0.25);background:#e8fff5;color:#06d6a0;font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-fee-report) .btn-export:hover{background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;border-color:transparent}
:where(.page-attendance-view) .btn-export{padding:9px 16px;border-radius:9px;border:2px solid rgba(67,97,238,0.2);background:#eff2ff;color:#4361ee;font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-attendance-view) .btn-export:hover{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;border-color:transparent}
:where(.page-attendance-view,.page-fee-report) .tab-panel{display:none;animation:fadeIn 0.3s ease}
:where(.page-fee-structure,.page-master-subject) .layout{display:grid;grid-template-columns:370px 1fr;gap:20px;align-items:start}
:where(.page-fee-structure) .form-card{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(6,214,160,0.08);border:1px solid #d8f5ee;position:sticky;top:88px}
:where(.page-fee-structure) .fc-head{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:14px;border-bottom:2px solid #f0fff8}
:where(.page-fee-structure) .fc-icon{width:44px;height:44px;border-radius:13px;background:linear-gradient(135deg,#06d6a0,#0077b6);display:flex;align-items:center;justify-content:center;font-size:1.3rem;box-shadow:0 6px 16px rgba(6,214,160,0.3);flex-shrink:0}
:where(.page-comm-homework,.page-comm-syllabus) .layout{display:grid;grid-template-columns:390px 1fr;gap:20px;align-items:start}
:where(.page-comm-syllabus) .form-card{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(6,214,160,0.08);border:1px solid #d0f5ed;position:sticky;top:88px}
:where(.page-comm-syllabus) .fc-head{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:14px;border-bottom:2px solid #e8fff5}
:where(.page-comm-syllabus) .fc-icon{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#06d6a0,#0077b6);display:flex;align-items:center;justify-content:center;font-size:1.2rem;box-shadow:0 5px 14px rgba(6,214,160,0.3);flex-shrink:0}
:where(.page-comm-notes,.page-master-session) .layout{display:grid;grid-template-columns:380px 1fr;gap:20px;align-items:start}
:where(.page-comm-notification) .type-tabs{display:flex;gap:6px;margin-bottom:20px;background:#fff;border-radius:14px;padding:6px;box-shadow:0 4px 16px rgba(67,97,238,0.07);border:1px solid #eaeeff;overflow-x:auto}
:where(.page-comm-notification) .tt-btn{flex:1;padding:10px 14px;border-radius:10px;border:none;background:transparent;font-family:'Nunito',sans-serif;font-size:0.82rem;font-weight:800;cursor:pointer;color:#888;transition:all 0.2s;white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:7px}
:where(.page-comm-notification) .tt-btn:hover{background:#f0f4ff;color:#4361ee}
:where(.page-comm-notification) .tt-btn.active{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 3px 10px rgba(67,97,238,0.3)}
:where(.page-comm-notification) .tt-cnt{background:rgba(255,255,255,0.25);border-radius:20px;padding:1px 7px;font-size:0.68rem}
:where(.page-comm-notification) .tt-btn:not(.active) .tt-cnt{background:#eaeeff;color:#4361ee}
:where(.page-comm-notification) .layout{display:grid;grid-template-columns:400px 1fr;gap:20px;align-items:start}
:where(.page-comm-homework,.page-comm-notes,.page-comm-notification,.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .form-card{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff;position:sticky;top:88px}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .fc-head{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f0f4ff}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .fc-icon{width:44px;height:44px;border-radius:13px;background:linear-gradient(135deg,#4361ee,#7209b7);display:flex;align-items:center;justify-content:center;font-size:1.3rem;box-shadow:0 6px 16px rgba(67,97,238,0.3);flex-shrink:0}
:where(.page-comm-homework,.page-comm-notes,.page-comm-notification) .fc-head{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:14px;border-bottom:2px solid #f0f4ff}
:where(.page-comm-homework) .fc-icon{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#f72585,#7209b7);display:flex;align-items:center;justify-content:center;font-size:1.2rem;box-shadow:0 5px 14px rgba(247,37,133,0.3);flex-shrink:0}
:where(.page-comm-notes) .fc-icon{width:44px;height:44px;border-radius:13px;background:linear-gradient(135deg,#fb8500,#e63946);display:flex;align-items:center;justify-content:center;font-size:1.3rem;box-shadow:0 6px 16px rgba(251,133,0,0.3);flex-shrink:0}
:where(.page-comm-notification) .fc-icon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;box-shadow:0 5px 14px rgba(67,97,238,0.28);flex-shrink:0}
:where(.page-comm-homework,.page-comm-notes,.page-comm-notification,.page-comm-syllabus,.page-fee-structure,.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .fc-title{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .fc-sub{font-size:0.73rem;color:#aaa}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .fg{margin-bottom:14px}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) label{display:block;font-size:0.73rem;font-weight:800;color:#666;margin-bottom:5px;letter-spacing:0.5px;text-transform:uppercase}
:where(.page-master-section,.page-master-subject) input[type=text],:where(.page-master-section,.page-master-subject) input[type=number],:where(.page-master-section,.page-master-subject) select{width:100%;background:#f8f9ff;border:2px solid #eaeeff;border-radius:11px;padding:10px 14px;color:#333;font-family:'Nunito',sans-serif;font-size:0.88rem;outline:none;transition:all 0.2s}
:where(.page-master-section,.page-master-subject) input:focus,:where(.page-master-section,.page-master-subject) select:focus{border-color:#4361ee;background:#fff;box-shadow:0 0 0 4px rgba(67,97,238,0.1)}
:where(.page-master-session) input[type=text],:where(.page-master-session) input[type=date],:where(.page-master-session) input[type=number],:where(.page-master-session) select,:where(.page-master-session) textarea{width:100%;background:#f8f9ff;border:2px solid #eaeeff;border-radius:11px;padding:10px 14px;color:#333;font-family:'Nunito',sans-serif;font-size:0.88rem;outline:none;transition:all 0.2s}
:where(.page-master-class) input[type=text],:where(.page-master-class) input[type=number],:where(.page-master-class) select,:where(.page-master-class) textarea{width:100%;background:#f8f9ff;border:2px solid #eaeeff;border-radius:11px;padding:10px 14px;color:#333;font-family:'Nunito',sans-serif;font-size:0.88rem;outline:none;transition:all 0.2s}
:where(.page-master-class,.page-master-session,.page-teacher-add) input:focus,:where(.page-master-class,.page-master-session,.page-teacher-add) select:focus,:where(.page-master-class,.page-master-session,.page-teacher-add) textarea:focus{border-color:#4361ee;background:#fff;box-shadow:0 0 0 4px rgba(67,97,238,0.1)}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject,.page-teacher-add) select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-color:#f8f9ff;padding-right:34px}
:where(.page-teacher-add) textarea{resize:none;height:80px}
:where(.page-teacher-add) .photo-area{display:flex;align-items:flex-start;gap:20px;margin-bottom:20px;padding-bottom:20px;border-bottom:2px dashed #eaeeff}
:where(.page-teacher-add) .photo-box{width:110px;height:110px;border-radius:16px;border:3px dashed #c5c9ff;background:#f8f9ff;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all 0.2s;flex-shrink:0;text-align:center;position:relative;overflow:hidden}
:where(.page-teacher-add) .photo-box:hover{border-color:#4361ee;background:#eff2ff}
:where(.page-teacher-add) .photo-box .ph-icon{font-size:2rem;margin-bottom:4px}
:where(.page-teacher-add) .photo-box .ph-text{font-size:0.68rem;color:#aaa;font-weight:700}
:where(.page-teacher-add) .photo-info{font-size:0.8rem;color:#888;line-height:1.8}
:where(.page-teacher-add) .photo-info strong{color:#4361ee}
:where(.page-teacher-add) .subject-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
:where(.page-teacher-add) .subj-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:10px;border:2px solid #eaeeff;background:#f8f9ff;font-size:0.8rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-teacher-add) .subj-chip:hover{border-color:#4361ee}
:where(.page-teacher-add) .subj-chip.on{background:linear-gradient(135deg,rgba(67,97,238,0.1),rgba(114,9,183,0.08));border-color:#4361ee;color:#4361ee}
:where(.page-teacher-add) .doc-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
:where(.page-teacher-add) .doc-card{border:2px dashed #eaeeff;border-radius:13px;padding:16px;text-align:center;cursor:pointer;transition:all 0.2s;background:#fafbff}
:where(.page-teacher-add) .doc-card:hover{border-color:#4361ee;background:#f0f4ff}
:where(.page-teacher-add) .doc-icon{font-size:1.8rem;margin-bottom:6px}
:where(.page-teacher-add) .doc-label{font-size:0.78rem;font-weight:800;color:#555}
:where(.page-teacher-add) .doc-sub{font-size:0.68rem;color:#aaa;margin-top:3px}
:where(.page-teacher-add) .form-footer{background:#fff;border-radius:16px;padding:18px 24px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
:where(.page-teacher-add) .btn-prev{padding:12px 22px;border-radius:12px;border:2px solid #eaeeff;background:#f8f9ff;color:#888;font-family:'Nunito',sans-serif;font-size:0.9rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-teacher-add) .btn-prev:hover{background:#eaeeff}
:where(.page-teacher-add) .btn-next{padding:12px 28px;border-radius:12px;border:none;background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;transition:all 0.2s;box-shadow:0 4px 14px rgba(67,97,238,0.3)}
:where(.page-teacher-add) .btn-next:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(67,97,238,0.4)}
:where(.page-teacher-add) .btn-save{padding:12px 28px;border-radius:12px;border:none;background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;transition:all 0.2s;box-shadow:0 4px 14px rgba(6,214,160,0.3)}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .btn-row{display:flex;gap:10px;margin-top:6px}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .btn-save{flex:1;padding:12px;border-radius:11px;border:none;background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;transition:all 0.2s;box-shadow:0 4px 14px rgba(67,97,238,0.3)}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .btn-save:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(67,97,238,0.4)}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .btn-cancel{padding:12px 18px;border-radius:11px;border:2px solid #eaeeff;background:#f8f9ff;color:#888;font-family:'Nunito',sans-serif;font-size:0.88rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .btn-cancel:hover{background:#eaeeff}
:where(.page-master-section) .sec-tiles{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
:where(.page-master-section) .sec-tile{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-family:'Rajdhani',sans-serif;font-size:1.3rem;font-weight:700;color:#fff;cursor:pointer;transition:all 0.2s;box-shadow:0 4px 12px rgba(0,0,0,0.1)}
:where(.page-master-section) .sec-tile:hover{transform:scale(1.1);box-shadow:0 8px 20px rgba(0,0,0,0.18)}
:where(.page-master-subject) .emoji-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
:where(.page-master-subject) .ep{width:36px;height:36px;border-radius:9px;cursor:pointer;border:2px solid #eaeeff;display:flex;align-items:center;justify-content:center;font-size:1.1rem;transition:all 0.2s;background:#f8f9ff}
:where(.page-master-subject) .ep:hover,:where(.page-master-subject) .ep.selected{border-color:#4361ee;background:#eff2ff;transform:scale(1.1)}
:where(.page-master-class) .color-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
:where(.page-master-class) .cc{width:30px;height:30px;border-radius:8px;cursor:pointer;transition:all 0.2s;border:3px solid transparent}
:where(.page-master-class) .cc.selected{border-color:#333;transform:scale(1.15)}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .table-card{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .tc-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .tc-title{font-family:'Rajdhani',sans-serif;font-size:1.15rem;font-weight:700;color:#1a1a2e}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .tc-count{font-size:0.78rem;color:#aaa;font-weight:700;background:#f8f9ff;padding:4px 12px;border-radius:20px;border:1px solid #eaeeff}
:where(.page-master-subject) .filters{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}
:where(.page-master-subject) .sbi{flex:1;min-width:140px;background:#f8f9ff;border:2px solid #eaeeff;border-radius:11px;padding:9px 14px;font-family:'Nunito',sans-serif;font-size:0.85rem;outline:none;color:#333;transition:all 0.2s}
:where(.page-master-session) .search-bar{display:flex;align-items:center;gap:10px;margin-bottom:14px}
:where(.page-master-session) .sbi{flex:1;background:#f8f9ff;border:2px solid #eaeeff;border-radius:11px;padding:9px 14px;font-family:'Nunito',sans-serif;font-size:0.85rem;outline:none;color:#333;transition:all 0.2s}
:where(.page-master-class,.page-master-section) .sbi{width:100%;background:#f8f9ff;border:2px solid #eaeeff;border-radius:11px;padding:9px 14px;font-family:'Nunito',sans-serif;font-size:0.85rem;outline:none;color:#333;transition:all 0.2s;margin-bottom:14px}
:where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .sbi:focus{border-color:#4361ee;box-shadow:0 0 0 3px rgba(67,97,238,0.1)}
:where(.page-master-session,.page-master-subject) .sf-sel{padding:9px 14px;border-radius:11px;border:2px solid #eaeeff;background:#f8f9ff;font-family:'Nunito',sans-serif;font-size:0.82rem;font-weight:700;color:#555;outline:none;appearance:none;padding-right:28px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}
:where(.page-comm-homework,.page-comm-notes,.page-comm-notification,.page-comm-syllabus,.page-fee-structure) .fc-sub{font-size:0.72rem;color:#aaa}
:where(.page-comm-notes,.page-fee-structure) .fg{margin-bottom:13px}
:where(.page-comm-notes,.page-fee-structure) label{display:block;font-size:0.7rem;font-weight:800;color:#666;margin-bottom:5px;letter-spacing:0.5px;text-transform:uppercase}
:where(.page-fee-structure) input[type=text],:where(.page-fee-structure) input[type=number],:where(.page-fee-structure) select,:where(.page-fee-structure) textarea{width:100%;background:#f8f9ff;border:2px solid #e0f5ef;border-radius:10px;padding:9px 13px;color:#333;font-family:'Nunito',sans-serif;font-size:0.86rem;outline:none;transition:all 0.2s}
:where(.page-fee-structure) input:focus,:where(.page-fee-structure) select:focus,:where(.page-fee-structure) textarea:focus{border-color:#06d6a0;background:#fff;box-shadow:0 0 0 3px rgba(6,214,160,0.12)}
:where(.page-comm-notes) input[type=text],:where(.page-comm-notes) input[type=date],:where(.page-comm-notes) select,:where(.page-comm-notes) textarea{width:100%;background:#f8f9ff;border:2px solid #eaeeff;border-radius:10px;padding:9px 13px;color:#333;font-family:'Nunito',sans-serif;font-size:0.86rem;outline:none;transition:all 0.2s}
:where(.page-comm-notes) input:focus,:where(.page-comm-notes) select:focus,:where(.page-comm-notes) textarea:focus{border-color:#fb8500;background:#fff;box-shadow:0 0 0 3px rgba(251,133,0,0.1)}
:where(.page-comm-notes,.page-fee-collection,.page-fee-structure) select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-color:#f8f9ff;padding-right:30px}
:where(.page-fee-collection) .btn-search{padding:10px 22px;border-radius:10px;border:none;background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;box-shadow:0 4px 14px rgba(6,214,160,0.3);transition:all 0.2s;height:42px}
:where(.page-fee-collection) .btn-search:hover{transform:translateY(-1px)}
:where(.page-fee-collection) .student-profile-card{background:linear-gradient(135deg,#f0fff8,#e8f7f4);border-radius:18px;padding:20px;border:2px solid rgba(6,214,160,0.25);margin-bottom:20px;display:none}
:where(.page-fee-collection) .student-profile-card.show{display:block}
:where(.page-fee-collection) .sp-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
:where(.page-fee-collection) .sp-ava{width:60px;height:60px;border-radius:16px;background:linear-gradient(135deg,#4361ee,#7209b7);display:flex;align-items:center;justify-content:center;font-size:1.8rem;flex-shrink:0;box-shadow:0 6px 18px rgba(67,97,238,0.25)}
:where(.page-fee-collection) .sp-name{font-family:'Rajdhani',sans-serif;font-size:1.4rem;font-weight:700;color:#1a1a2e}
:where(.page-fee-collection) .sp-info{font-size:0.78rem;color:#666;font-weight:700;margin-top:2px}
:where(.page-fee-collection) .sp-tags{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}
:where(.page-fee-collection) .sp-tag{padding:3px 10px;border-radius:8px;font-size:0.72rem;font-weight:800}
:where(.page-fee-collection) .sp-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}
:where(.page-fee-collection) .sp-stat{background:#fff;border-radius:12px;padding:12px;text-align:center;border:1.5px solid rgba(6,214,160,0.2)}
:where(.page-fee-collection) .sp-stat-val{font-family:'Rajdhani',sans-serif;font-size:1.4rem;font-weight:700;line-height:1}
:where(.page-fee-collection) .sp-stat-lbl{font-size:0.68rem;font-weight:700;color:#aaa;margin-top:3px}
:where(.page-fee-collection) .dues-card{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(6,214,160,0.08);border:1px solid #d8f5ee;margin-bottom:20px;display:none}
:where(.page-fee-collection) .dues-card.show{display:block}
:where(.page-fee-collection) .dc-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px}
:where(.page-fee-collection) .dc-title{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-comm-notes) textarea{resize:vertical;min-height:70px}
:where(.page-comm-homework,.page-comm-notification,.page-comm-syllabus) .fg{margin-bottom:12px}
:where(.page-comm-homework,.page-comm-notification,.page-comm-syllabus) label{display:block;font-size:0.7rem;font-weight:800;color:#666;margin-bottom:4px;letter-spacing:0.5px;text-transform:uppercase}
:where(.page-comm-homework) input[type=text],:where(.page-comm-homework) input[type=date],:where(.page-comm-homework) input[type=number],:where(.page-comm-homework) select,:where(.page-comm-homework) textarea{width:100%;background:#f8f9ff;border:2px solid #eaeeff;border-radius:10px;padding:9px 12px;color:#333;font-family:'Nunito',sans-serif;font-size:0.86rem;outline:none;transition:all 0.2s}
:where(.page-comm-homework) input:focus,:where(.page-comm-homework) select:focus,:where(.page-comm-homework) textarea:focus{border-color:#f72585;background:#fff;box-shadow:0 0 0 3px rgba(247,37,133,0.1)}
:where(.page-comm-syllabus) input[type=text],:where(.page-comm-syllabus) input[type=number],:where(.page-comm-syllabus) input[type=date],:where(.page-comm-syllabus) select,:where(.page-comm-syllabus) textarea{width:100%;background:#f0fff8;border:2px solid #c8f7e4;border-radius:10px;padding:9px 12px;color:#333;font-family:'Nunito',sans-serif;font-size:0.86rem;outline:none;transition:all 0.2s}
:where(.page-comm-syllabus) input:focus,:where(.page-comm-syllabus) select:focus,:where(.page-comm-syllabus) textarea:focus{border-color:#06d6a0;background:#fff;box-shadow:0 0 0 3px rgba(6,214,160,0.1)}
:where(.page-comm-syllabus) select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-color:#f0fff8;padding-right:28px}
:where(.page-comm-notification) input[type=text],:where(.page-comm-notification) input[type=date],:where(.page-comm-notification) input[type=time],:where(.page-comm-notification) select,:where(.page-comm-notification) textarea{width:100%;background:#f8f9ff;border:2px solid #eaeeff;border-radius:10px;padding:9px 12px;color:#333;font-family:'Nunito',sans-serif;font-size:0.86rem;outline:none;transition:all 0.2s}
:where(.page-comm-notification) input:focus,:where(.page-comm-notification) select:focus,:where(.page-comm-notification) textarea:focus{border-color:#4361ee;background:#fff;box-shadow:0 0 0 3px rgba(67,97,238,0.1)}
:where(.page-comm-homework,.page-comm-notification) select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-color:#f8f9ff;padding-right:28px}
:where(.page-comm-homework,.page-comm-notification,.page-comm-syllabus) textarea{resize:none}
:where(.page-comm-homework,.page-comm-notes,.page-comm-notification,.page-comm-syllabus,.page-fee-structure) .row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
:where(.page-comm-homework,.page-fee-structure) .row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
:where(.page-fee-structure) .class-amt-grid{display:flex;flex-direction:column;gap:6px;max-height:280px;overflow-y:auto;padding-right:4px;scrollbar-width:thin}
:where(.page-fee-structure) .class-amt-row{display:grid;grid-template-columns:1fr 100px;gap:8px;align-items:center;padding:7px 10px;background:#f8f9ff;border-radius:9px;border:1.5px solid #e0f5ef}
:where(.page-fee-structure) .car-label{font-size:0.8rem;font-weight:800;color:#333}
:where(.page-fee-structure) .car-input{background:#fff;border:2px solid #e0f5ef;border-radius:8px;padding:6px 10px;font-family:'Nunito',sans-serif;font-size:0.84rem;font-weight:700;color:#333;outline:none;width:100%;transition:all 0.2s}
:where(.page-fee-structure) .car-input:focus{border-color:#06d6a0}
:where(.page-fee-structure) .toggle-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f8f9ff;border-radius:9px;border:1.5px solid #e0f5ef;margin-bottom:8px}
:where(.page-fee-structure) .tr-label{font-size:0.82rem;font-weight:800;color:#444}
:where(.page-fee-structure) .toggle{width:40px;height:22px;border-radius:11px;background:#ddd;position:relative;cursor:pointer;transition:all 0.3s;flex-shrink:0}
:where(.page-fee-structure) .toggle.on{background:#06d6a0}
:where(.page-fee-structure) .toggle::after{content:'';position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:all 0.3s;box-shadow:0 1px 4px rgba(0,0,0,0.2)}
:where(.page-comm-syllabus) .ch-list{border:2px solid #c8f7e4;border-radius:10px;padding:10px;background:#f0fff8;min-height:80px;margin-top:4px}
:where(.page-comm-syllabus) .ch-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;background:#fff;margin-bottom:6px;border:1.5px solid #e0f7ef}
:where(.page-comm-syllabus) .ch-item:last-child{margin-bottom:0}
:where(.page-comm-syllabus) .ch-num{width:22px;height:22px;border-radius:6px;background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;font-size:0.68rem;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}
:where(.page-comm-syllabus) .ch-text{flex:1;font-size:0.82rem;font-weight:700;color:#333}
:where(.page-comm-syllabus) .ch-del{background:none;border:none;color:#ccc;cursor:pointer;font-size:0.9rem;transition:color 0.2s}
:where(.page-comm-syllabus) .ch-del:hover{color:#e63946}
:where(.page-comm-syllabus) .ch-add-row{display:flex;gap:8px;margin-top:8px}
:where(.page-comm-syllabus) .ch-input{flex:1;background:#fff;border:2px solid #c8f7e4;border-radius:8px;padding:7px 10px;font-family:'Nunito',sans-serif;font-size:0.82rem;outline:none}
:where(.page-comm-syllabus) .ch-input:focus{border-color:#06d6a0}
:where(.page-comm-syllabus) .ch-add-btn{padding:7px 14px;border-radius:8px;border:none;background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:800;cursor:pointer}
:where(.page-comm-syllabus) .prog-row{display:flex;align-items:center;gap:8px;margin-top:6px}
:where(.page-comm-syllabus) .prog-bar{flex:1;height:8px;background:#e8fff5;border-radius:4px;overflow:hidden}
:where(.page-comm-syllabus) .prog-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,#06d6a0,#0077b6);transition:width 0.4s}
:where(.page-comm-syllabus) .prog-val{font-size:0.75rem;font-weight:800;color:#06d6a0;min-width:36px}
:where(.page-comm-notes) .file-drop{border:2.5px dashed #e0c8a0;border-radius:12px;padding:24px;text-align:center;cursor:pointer;transition:all 0.2s;background:#fffdf8}
:where(.page-comm-notes) .file-drop:hover{border-color:#fb8500;background:#fff8ec}
:where(.page-comm-notes) .fd-icon{font-size:2rem;margin-bottom:8px}
:where(.page-comm-notes) .fd-text{font-size:0.82rem;color:#888;font-weight:700}
:where(.page-comm-notes) .fd-hint{font-size:0.7rem;color:#bbb;margin-top:4px}
:where(.page-comm-notes) .type-chips{display:flex;gap:6px;flex-wrap:wrap}
:where(.page-comm-notes) .tc{padding:6px 13px;border-radius:8px;border:2px solid #eaeeff;background:#f8f9ff;font-size:0.75rem;font-weight:800;cursor:pointer;color:#888;transition:all 0.2s}
:where(.page-comm-notes) .tc.sel{background:linear-gradient(135deg,#fb8500,#e63946);color:#fff;border-color:transparent}
:where(.page-comm-notification) .target-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
:where(.page-comm-notification) .tgt-btn{padding:6px 14px;border-radius:9px;border:2px solid #eaeeff;background:#f8f9ff;font-size:0.78rem;font-weight:800;color:#888;cursor:pointer;transition:all 0.2s}
:where(.page-comm-notification) .tgt-btn.active{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;border-color:transparent;box-shadow:0 3px 10px rgba(67,97,238,0.3)}
:where(.page-comm-notification) .pri-row{display:flex;gap:6px}
:where(.page-comm-notification) .pri-opt{padding:6px 14px;border-radius:9px;border:2px solid #eaeeff;background:#f8f9ff;font-size:0.75rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-comm-notification) .pri-low{color:#06d6a0}
:where(.page-comm-notification) .pri-med{color:#fb8500}
:where(.page-comm-notification) .pri-high{color:#e63946}
:where(.page-comm-notification) .pri-urg{color:#7209b7}
:where(.page-comm-notification) .pri-opt.sel-low{background:#e8fff5;border-color:#06d6a0}
:where(.page-comm-notification) .pri-opt.sel-med{background:#fff8ec;border-color:#fb8500}
:where(.page-comm-notification) .pri-opt.sel-high{background:#fff0f0;border-color:#e63946}
:where(.page-comm-notification) .pri-opt.sel-urg{background:#fdf0ff;border-color:#7209b7}
:where(.page-comm-notification) .ch-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
:where(.page-comm-notification) .ch-opt{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:9px;border:2px solid #eaeeff;background:#f8f9ff;font-size:0.78rem;font-weight:700;cursor:pointer;transition:all 0.2s;user-select:none}
:where(.page-comm-notification) .ch-opt.on{background:#eff2ff;border-color:#c5c9ff;color:#4361ee}
:where(.page-comm-notification) .ch-opt input{width:14px;height:14px;accent-color:#4361ee}
:where(.page-comm-homework,.page-comm-notes,.page-comm-notification,.page-comm-syllabus) .btn-row{display:flex;gap:8px;margin-top:14px}
:where(.page-comm-homework) .btn-save{flex:1;padding:11px;border-radius:10px;border:none;background:linear-gradient(135deg,#f72585,#7209b7);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;transition:all 0.2s;box-shadow:0 4px 14px rgba(247,37,133,0.3)}
:where(.page-comm-homework) .btn-save:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(247,37,133,0.4)}
:where(.page-comm-homework) .btn-cancel{padding:11px 16px;border-radius:10px;border:2px solid #eaeeff;background:#f8f9ff;color:#888;font-family:'Nunito',sans-serif;font-size:0.85rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-comm-syllabus) .btn-save{flex:1;padding:11px;border-radius:10px;border:none;background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;transition:all 0.2s;box-shadow:0 4px 14px rgba(6,214,160,0.3)}
:where(.page-comm-syllabus) .btn-save:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(6,214,160,0.4)}
:where(.page-comm-syllabus) .btn-cancel{padding:11px 16px;border-radius:10px;border:2px solid #eaeeff;background:#f8f9ff;color:#888;font-family:'Nunito',sans-serif;font-size:0.85rem;font-weight:800;cursor:pointer}
:where(.page-comm-syllabus) .syl-card{background:#fff;border-radius:14px;padding:16px;margin-bottom:10px;border:1.5px solid #e0f7ef;box-shadow:0 2px 12px rgba(6,214,160,0.06);transition:all 0.2s;cursor:pointer}
:where(.page-comm-syllabus) .syl-card:hover{border-color:#06d6a0;box-shadow:0 4px 18px rgba(6,214,160,0.12);transform:translateY(-1px)}
:where(.page-comm-syllabus) .sy-top{display:flex;align-items:flex-start;gap:12px}
:where(.page-comm-syllabus) .sy-icon{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
:where(.page-comm-syllabus) .sy-title{font-size:0.9rem;font-weight:800;color:#1a1a2e;margin-bottom:2px}
:where(.page-comm-syllabus) .sy-sub{font-size:0.76rem;color:#888}
:where(.page-comm-syllabus) .sy-meta{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}
:where(.page-comm-notes) .btn-save{flex:1;padding:11px;border-radius:11px;border:none;background:linear-gradient(135deg,#fb8500,#e63946);color:#fff;font-family:'Rajdhani',sans-serif;font-size:0.98rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;box-shadow:0 4px 14px rgba(251,133,0,0.3);transition:all 0.2s}
:where(.page-comm-notes) .btn-save:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(251,133,0,0.45)}
:where(.page-comm-notes) .btn-cancel{padding:11px 16px;border-radius:11px;border:2px solid #eaeeff;background:#f8f9ff;color:#888;font-family:'Nunito',sans-serif;font-size:0.84rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-comm-notes) .filter-bar{background:#fff;border-radius:14px;padding:12px 16px;display:flex;gap:8px;flex-wrap:wrap;align-items:center;box-shadow:0 4px 16px rgba(67,97,238,0.06);border:1px solid #eaeeff;margin-bottom:14px}
:where(.page-comm-notes) .f-sel{background:#f8f9ff;border:2px solid #eaeeff;border-radius:9px;padding:7px 10px;font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:700;color:#555;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:24px}
:where(.page-comm-notes) .f-search{flex:1;min-width:160px;background:#f8f9ff;border:2px solid #eaeeff;border-radius:9px;padding:7px 12px;font-family:'Nunito',sans-serif;font-size:0.82rem;outline:none;color:#333;transition:all 0.2s}
:where(.page-comm-notes) .f-search:focus{border-color:#fb8500}
:where(.page-comm-notes) .view-toggle{display:flex;gap:4px;margin-left:auto}
:where(.page-comm-notes) .vt-btn{width:32px;height:32px;border-radius:8px;border:2px solid #eaeeff;background:#f8f9ff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:0.85rem;transition:all 0.2s}
:where(.page-comm-notes) .vt-btn.active{background:linear-gradient(135deg,#fb8500,#e63946);color:#fff;border-color:transparent}
:where(.page-comm-notes) .notes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
:where(.page-comm-notes) .note-card{background:#fff;border-radius:16px;padding:18px;box-shadow:0 4px 18px rgba(67,97,238,0.07);border:1px solid #eaeeff;transition:all 0.2s;position:relative;overflow:hidden}
:where(.page-comm-notes) .note-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(67,97,238,0.13);border-color:#c5c9ff}
:where(.page-comm-notes) .note-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px}
:where(.page-comm-notes) .nt-pdf::before{background:linear-gradient(90deg,#e63946,#fb8500)}
:where(.page-comm-notes) .nt-doc::before{background:linear-gradient(90deg,#4361ee,#7209b7)}
:where(.page-comm-notes) .nt-ppt::before{background:linear-gradient(90deg,#f72585,#fb8500)}
:where(.page-comm-notes) .nt-img::before{background:linear-gradient(90deg,#06d6a0,#4361ee)}
:where(.page-comm-notes) .nt-vid::before{background:linear-gradient(90deg,#7209b7,#f72585)}
:where(.page-comm-notes) .nt-link::before{background:linear-gradient(90deg,#4cc9f0,#4361ee)}
:where(.page-comm-notes) .nc-type-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;font-size:0.69rem;font-weight:800;margin-bottom:10px}
:where(.page-comm-notes) .nb-pdf{background:#fff0f0;color:#e63946}
:where(.page-comm-notes) .nb-doc{background:#eff2ff;color:#4361ee}
:where(.page-comm-notes) .nb-ppt{background:#fff0f8;color:#f72585}
:where(.page-comm-notes) .nb-img{background:#e8fff5;color:#06d6a0}
:where(.page-comm-notes) .nb-vid{background:#fdf0ff;color:#7209b7}
:where(.page-comm-notes) .nb-link{background:#e0f7ff;color:#4cc9f0}
:where(.page-comm-notes) .nc-title{font-size:0.9rem;font-weight:800;color:#1a1a2e;margin-bottom:6px;line-height:1.3}
:where(.page-comm-notes) .nc-meta{font-size:0.72rem;color:#aaa;font-weight:700;margin-bottom:10px;line-height:1.6}
:where(.page-comm-notes) .nc-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}
:where(.page-comm-notes) .nc-tag-item{padding:3px 9px;border-radius:8px;font-size:0.68rem;font-weight:800;background:#f0f4ff;color:#4361ee}
:where(.page-comm-notes) .nc-footer{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid #f5f7ff}
:where(.page-comm-notes) .nc-downloads{font-size:0.7rem;color:#aaa;font-weight:700}
:where(.page-comm-notes) .nc-btns{display:flex;gap:4px}
:where(.page-comm-notes) .nb-btn{padding:4px 9px;border-radius:7px;border:none;font-size:0.7rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-comm-notes) .nb-dl{background:linear-gradient(135deg,#fb8500,#e63946);color:#fff}
:where(.page-comm-notes) .nb-edit{background:#eff2ff;color:#4361ee}
:where(.page-comm-notes) .nb-del{background:#fff0f0;color:#e63946}
:where(.page-comm-notes) .nb-btn:hover{filter:brightness(1.1)}
:where(.page-comm-notes) .notes-table{background:#fff;border-radius:16px;padding:20px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff;display:none}
:where(.page-comm-notes) .notes-table.show{display:block}
:where(.page-attendance-mark,.page-comm-notes,.page-fee-collection,.page-fee-dashboard,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-students,.page-teacher-mapping) .tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
:where(.page-students) table{width:100%;border-collapse:collapse;min-width:860px}
:where(.page-students) thead th{padding:11px 13px;font-size:0.7rem;font-weight:800;color:#aaa;letter-spacing:1px;text-transform:uppercase;border-bottom:2px solid #f0f4ff;text-align:left;white-space:nowrap}
:where(.page-students) tbody tr:hover{background:#f8f9ff}
:where(.page-students) tbody td{padding:12px 13px;border-bottom:1px solid #f5f7ff;vertical-align:middle}
:where(.page-students) tbody tr:last-child td{border-bottom:none}
:where(.page-students) .sc{display:flex;align-items:center;gap:11px}
:where(.page-students) .sp{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:800;color:#fff;flex-shrink:0}
:where(.page-students) .sn{font-size:0.88rem;font-weight:800;color:#1a1a2e}
:where(.page-students) .si{font-size:0.72rem;color:#aaa;margin-top:2px}
:where(.page-master-section) table{width:100%;border-collapse:collapse;font-size:0.83rem;min-width:480px}
:where(.page-master-subject) table{width:100%;border-collapse:collapse;font-size:0.83rem;min-width:580px}
:where(.page-fee-dashboard) table{width:100%;border-collapse:collapse;font-size:0.82rem;min-width:520px}
:where(.page-fee-dashboard) th{font-weight:800;text-align:left;padding:9px 14px;border-bottom:2px solid #f0faf7;font-size:0.68rem;color:#aaa;letter-spacing:1px;text-transform:uppercase;background:#fafffe}
:where(.page-fee-collection,.page-master-session) table{width:100%;border-collapse:collapse;font-size:0.83rem;min-width:560px}
:where(.page-attendance-mark) table{width:100%;border-collapse:collapse;font-size:0.83rem;min-width:650px}
:where(.page-master-mapping) table{width:100%;border-collapse:collapse;font-size:0.83rem;min-width:620px}
:where(.page-master-class) table{width:100%;border-collapse:collapse;font-size:0.83rem;min-width:500px}
:where(.page-comm-notes,.page-teacher-mapping) table{width:100%;border-collapse:collapse;font-size:0.82rem;min-width:580px}
:where(.page-attendance-mark,.page-comm-notes,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-teacher-mapping) th{font-weight:800;text-align:left;padding:10px 14px;border-bottom:2px solid #f0f4ff;font-size:0.69rem;color:#bbb;letter-spacing:1px;text-transform:uppercase;background:#fafbff}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) td{padding:12px 14px;border-bottom:1px solid #f5f7ff;color:#444;vertical-align:middle}
:where(.page-attendance-mark,.page-comm-notes,.page-teacher-mapping) td{padding:11px 14px;border-bottom:1px solid #f5f7ff;color:#444;vertical-align:middle}
:where(.page-attendance-mark,.page-comm-notes,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-teacher-mapping) tr:last-child td{border-bottom:none}
:where(.page-attendance-mark,.page-comm-notes,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-profile,.page-teacher-mapping) tr:hover td{background:#f8f9ff}
:where(.page-student-profile) .tag{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.71rem;font-weight:800}
:where(.page-attendance-mark) .stu-row{display:flex;align-items:center;gap:9px}
:where(.page-attendance-mark) .stu-ava{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
:where(.page-attendance-mark) .stu-name{font-size:0.85rem;font-weight:800;color:#1a1a2e}
:where(.page-attendance-mark) .stu-roll{font-size:0.68rem;color:#aaa}
:where(.page-attendance-mark) .att-radio{display:flex;gap:4px}
:where(.page-attendance-mark) .ar{padding:5px 12px;border-radius:8px;border:2px solid #eaeeff;cursor:pointer;font-size:0.75rem;font-weight:800;transition:all 0.2s;user-select:none}
:where(.page-attendance-mark) .ar-p{color:#06d6a0;border-color:rgba(6,214,160,0.3)}
:where(.page-attendance-mark) .ar-a{color:#e63946;border-color:rgba(230,57,70,0.3)}
:where(.page-attendance-mark) .ar-l{color:#fb8500;border-color:rgba(251,133,0,0.3)}
:where(.page-attendance-mark) .ar-h{color:#7209b7;border-color:rgba(114,9,183,0.3)}
:where(.page-attendance-mark) .ar.selected-p{background:#06d6a0;color:#fff;border-color:#06d6a0}
:where(.page-attendance-mark) .ar.selected-a{background:#e63946;color:#fff;border-color:#e63946}
:where(.page-attendance-mark) .ar.selected-l{background:#fb8500;color:#fff;border-color:#fb8500}
:where(.page-attendance-mark) .ar.selected-h{background:#7209b7;color:#fff;border-color:#7209b7}
:where(.page-attendance-mark) .percent-bar{display:flex;align-items:center;gap:8px}
:where(.page-attendance-mark) .pbar{flex:1;height:6px;background:#f0f4ff;border-radius:4px;overflow:hidden;min-width:50px}
:where(.page-attendance-mark) .pbar-fill{height:100%;border-radius:4px;transition:width 0.4s}
:where(.page-attendance-mark) .pbar-val{font-size:0.73rem;font-weight:800;min-width:36px;text-align:right}
:where(.page-attendance-mark) .save-bar{background:#fff;border-radius:14px;padding:14px 22px;margin-top:16px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 20px rgba(67,97,238,0.07);border:1px solid #eaeeff;flex-wrap:wrap;gap:10px}
:where(.page-attendance-mark) .sb-info{font-size:0.82rem;color:#aaa;font-weight:700}
:where(.page-attendance-mark) .sb-actions{display:flex;gap:10px}
:where(.page-attendance-mark) .btn-submit{padding:11px 24px;border-radius:11px;border:none;background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;transition:all 0.2s;box-shadow:0 4px 14px rgba(67,97,238,0.3)}
:where(.page-attendance-mark) .btn-submit:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(67,97,238,0.4)}
:where(.page-attendance-mark) .btn-draft-s{padding:11px 18px;border-radius:11px;border:2px solid #eaeeff;background:#f8f9ff;color:#888;font-family:'Nunito',sans-serif;font-size:0.85rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .tag{display:inline-block;padding:4px 12px;border-radius:20px;font-size:0.72rem;font-weight:800}
:where(.page-comm-notes,.page-timetable) .modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.4);backdrop-filter:blur(4px);z-index:300;align-items:center;justify-content:center;padding:20px}
:where(.page-comm-notes,.page-timetable) .modal-overlay.show{display:flex}
:where(.page-timetable) .modal{background:#fff;border-radius:20px;padding:26px;max-width:420px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,0.2);animation:modalIn 0.3s cubic-bezier(0.34,1.56,0.64,1)}
:where(.page-timetable) .modal-title{font-family:'Rajdhani',sans-serif;font-size:1.25rem;font-weight:700;color:#1a1a2e;margin-bottom:16px;display:flex;align-items:center;gap:10px;justify-content:space-between}
:where(.page-timetable) .fg{margin-bottom:13px}
:where(.page-timetable) label{display:block;font-size:0.7rem;font-weight:800;color:#666;margin-bottom:5px;letter-spacing:0.5px;text-transform:uppercase}
:where(.page-timetable) select,:where(.page-timetable) input[type=text]{width:100%;background:#f8f9ff;border:2px solid #eaeeff;border-radius:10px;padding:9px 13px;color:#333;font-family:'Nunito',sans-serif;font-size:0.86rem;outline:none;transition:all 0.2s}
:where(.page-timetable) select:focus,:where(.page-timetable) input:focus{border-color:#4361ee;background:#fff;box-shadow:0 0 0 3px rgba(67,97,238,0.1)}
:where(.page-timetable) select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-color:#f8f9ff;padding-right:30px}
:where(.page-timetable) .modal-footer{display:flex;gap:8px;margin-top:16px}
:where(.page-timetable) .btn-modal-save{flex:1;padding:11px;border-radius:11px;border:none;background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;box-shadow:0 4px 14px rgba(67,97,238,0.3);transition:all 0.2s}
:where(.page-timetable) .btn-modal-save:hover{transform:translateY(-2px)}
:where(.page-timetable) .btn-modal-clr{padding:11px 16px;border-radius:11px;border:2px solid #eaeeff;background:#fff0f0;color:#e63946;font-family:'Nunito',sans-serif;font-size:0.84rem;font-weight:800;cursor:pointer}
:where(.page-timetable) .btn-modal-cancel{padding:11px 16px;border-radius:11px;border:2px solid #eaeeff;background:#f8f9ff;color:#888;font-family:'Nunito',sans-serif;font-size:0.84rem;font-weight:800;cursor:pointer}
:where(.page-timetable) .class-list-card{background:#fff;border-radius:18px;padding:20px;box-shadow:0 4px 20px rgba(67,97,238,0.08);border:1px solid #eaeeff;margin-top:20px;display:none}
:where(.page-timetable) .class-list-card.show{display:block}
:where(.page-timetable) .clc-head{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e;margin-bottom:14px;display:flex;align-items:center;gap:8px}
:where(.page-timetable) .class-tt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
:where(.page-timetable) .class-tt-card{border-radius:14px;padding:16px;border:2px solid #eaeeff;cursor:pointer;transition:all 0.2s}
:where(.page-timetable) .class-tt-card:hover{border-color:#4361ee;transform:translateY(-2px);box-shadow:0 8px 24px rgba(67,97,238,0.1)}
:where(.page-timetable) .ctc-name{font-family:'Rajdhani',sans-serif;font-size:1.05rem;font-weight:700;color:#1a1a2e;margin-bottom:4px}
:where(.page-timetable) .ctc-sub{font-size:0.73rem;color:#aaa;font-weight:700}
:where(.page-timetable) .ctc-status{display:inline-block;margin-top:8px;padding:3px 10px;border-radius:20px;font-size:0.68rem;font-weight:800}
:where(.page-comm-notes) .modal{background:#fff;border-radius:20px;padding:26px;max-width:520px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.2);animation:modalIn 0.3s cubic-bezier(0.34,1.56,0.64,1)}
:where(.page-comm-notification) .btn-send{flex:1;padding:11px;border-radius:10px;border:none;background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;transition:all 0.2s;box-shadow:0 4px 14px rgba(67,97,238,0.3)}
:where(.page-comm-notification) .btn-send:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(67,97,238,0.4)}
:where(.page-comm-notification) .btn-draft{padding:11px 16px;border-radius:10px;border:2px solid #eaeeff;background:#f8f9ff;color:#888;font-family:'Nunito',sans-serif;font-size:0.85rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-comm-notification) .btn-draft:hover{background:#eaeeff}
:where(.page-comm-notification) .list-panel{display:flex;flex-direction:column;gap:0}
:where(.page-comm-notification) .list-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap;gap:8px}
:where(.page-comm-notification) .lh-title{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-comm-notification) .search-row{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}
:where(.page-comm-notification) .sbi{flex:1;min-width:140px;background:#fff;border:2px solid #eaeeff;border-radius:10px;padding:8px 13px;font-family:'Nunito',sans-serif;font-size:0.83rem;outline:none;color:#333;transition:all 0.2s;box-shadow:0 2px 8px rgba(67,97,238,0.05)}
:where(.page-comm-notification) .sbi:focus{border-color:#4361ee}
:where(.page-comm-notification) .sf{padding:8px 12px;border-radius:10px;border:2px solid #eaeeff;background:#fff;font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:700;color:#555;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:24px}
:where(.page-comm-notification) .notif-card{background:#fff;border-radius:14px;padding:16px;margin-bottom:10px;border:1.5px solid #eaeeff;box-shadow:0 2px 12px rgba(67,97,238,0.06);transition:all 0.2s;cursor:pointer}
:where(.page-comm-notification) .notif-card:hover{border-color:#c5c9ff;box-shadow:0 4px 18px rgba(67,97,238,0.12);transform:translateY(-1px)}
:where(.page-comm-notification) .nc-top{display:flex;align-items:flex-start;gap:12px}
:where(.page-comm-notification) .nc-icon{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}
:where(.page-comm-notification) .nc-body{flex:1;min-width:0}
:where(.page-comm-notification) .nc-title{font-size:0.88rem;font-weight:800;color:#1a1a2e;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
:where(.page-comm-notification) .nc-msg{font-size:0.78rem;color:#888;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
:where(.page-comm-notification) .nc-meta{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}
:where(.page-comm-notification,.page-comm-syllabus) .tag{display:inline-block;padding:3px 9px;border-radius:20px;font-size:0.68rem;font-weight:800}
:where(.page-comm-notification,.page-comm-syllabus,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-profile) .tg{background:#e8fff5;color:#06d6a0}
:where(.page-comm-notification,.page-comm-syllabus,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-profile) .tr{background:#fff0f0;color:#e63946}
:where(.page-comm-notification,.page-comm-syllabus,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-student-profile) .to{background:#fff8ec;color:#fb8500}
:where(.page-student-profile) .tb2{background:#eff2ff;color:#4361ee}
:where(.page-student-profile) .as{display:flex;gap:14px;margin-bottom:18px;flex-wrap:wrap}
:where(.page-student-profile) .ac{text-align:center;flex:1;min-width:80px}
:where(.page-comm-notification,.page-comm-syllabus,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .tb{background:#eff2ff;color:#4361ee}
:where(.page-comm-notification,.page-comm-syllabus,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .tp{background:#fdf0ff;color:#7209b7}
:where(.page-comm-syllabus) .sy-actions{display:flex;gap:5px;margin-top:10px}
:where(.page-comm-syllabus) .sa{padding:5px 11px;border-radius:7px;border:none;font-size:0.72rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-comm-syllabus) .sa:hover{transform:translateY(-1px)}
:where(.page-comm-syllabus) .sa-view{background:#e8fff5;color:#06d6a0;border:1.5px solid rgba(6,214,160,0.2)}
:where(.page-comm-syllabus) .sa-view:hover{background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;border-color:transparent}
:where(.page-comm-syllabus) .sa-edit{background:#eff2ff;color:#4361ee;border:1.5px solid rgba(67,97,238,0.2)}
:where(.page-comm-syllabus) .sa-edit:hover{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;border-color:transparent}
:where(.page-comm-syllabus) .sa-del{background:#fff0f0;color:#e63946;border:1.5px solid rgba(230,57,70,0.2)}
:where(.page-comm-syllabus) .sa-del:hover{background:#e63946;color:#fff;border-color:transparent}
:where(.page-comm-homework,.page-comm-syllabus) .filter-bar{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}
:where(.page-comm-homework) .sbi{flex:1;min-width:140px;background:#fff;border:2px solid #eaeeff;border-radius:10px;padding:8px 13px;font-family:'Nunito',sans-serif;font-size:0.83rem;outline:none;color:#333;transition:all 0.2s;box-shadow:0 2px 8px rgba(67,97,238,0.05)}
:where(.page-comm-homework) .sbi:focus{border-color:#f72585}
:where(.page-comm-homework) .sf{padding:8px 10px;border-radius:10px;border:2px solid #eaeeff;background:#fff;font-family:'Nunito',sans-serif;font-size:0.78rem;font-weight:700;color:#555;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 7px center;padding-right:22px}
:where(.page-comm-homework) .hw-card{background:#fff;border-radius:14px;padding:16px;margin-bottom:10px;border:1.5px solid #eaeeff;box-shadow:0 2px 12px rgba(247,37,133,0.05);transition:all 0.2s}
:where(.page-comm-homework) .hw-card:hover{border-color:#f7c5df;box-shadow:0 4px 18px rgba(247,37,133,0.1);transform:translateY(-1px)}
:where(.page-comm-homework) .hw-top{display:flex;align-items:flex-start;gap:12px}
:where(.page-comm-homework) .hw-emoji{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
:where(.page-comm-homework) .hw-body{flex:1;min-width:0}
:where(.page-comm-homework) .hw-title{font-size:0.9rem;font-weight:800;color:#1a1a2e;margin-bottom:2px}
:where(.page-comm-homework) .hw-desc{font-size:0.78rem;color:#888;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
:where(.page-comm-homework) .hw-meta{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}
:where(.page-comm-homework) .tag{display:inline-block;padding:3px 9px;border-radius:20px;font-size:0.68rem;font-weight:800}
:where(.page-comm-syllabus) .sbi{flex:1;min-width:140px;background:#fff;border:2px solid #e0f7ef;border-radius:10px;padding:8px 13px;font-family:'Nunito',sans-serif;font-size:0.83rem;outline:none;color:#333;transition:all 0.2s}
:where(.page-comm-syllabus) .sbi:focus{border-color:#06d6a0}
:where(.page-comm-syllabus) .sf{padding:8px 10px;border-radius:10px;border:2px solid #e0f7ef;background:#fff;font-family:'Nunito',sans-serif;font-size:0.78rem;font-weight:700;color:#555;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 7px center;padding-right:22px}
:where(.page-comm-notification,.page-master-subject) .tgr{background:#f0fff0;color:#2dc653}
:where(.page-comm-notification) .nc-time{font-size:0.7rem;color:#bbb;font-weight:700;margin-left:auto}
:where(.page-comm-notification) .nc-actions{display:flex;gap:5px;margin-top:10px}
:where(.page-comm-notification) .na{padding:5px 11px;border-radius:7px;border:none;font-size:0.72rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-comm-notification) .na:hover{transform:translateY(-1px)}
:where(.page-comm-notification) .na-edit{background:#eff2ff;color:#4361ee;border:1.5px solid rgba(67,97,238,0.2)}
:where(.page-comm-notification) .na-edit:hover{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;border-color:transparent}
:where(.page-comm-notification) .na-del{background:#fff0f0;color:#e63946;border:1.5px solid rgba(230,57,70,0.2)}
:where(.page-comm-notification) .na-del:hover{background:#e63946;color:#fff;border-color:transparent}
:where(.page-comm-notification) .na-view{background:#f8f9ff;color:#888;border:1.5px solid #eaeeff}
:where(.page-comm-notification) .na-view:hover{background:#eaeeff}
:where(.page-comm-notification) .rc-wrap{display:flex;gap:4px;flex-wrap:wrap}
:where(.page-comm-notification) .rc{padding:2px 8px;border-radius:8px;font-size:0.67rem;font-weight:800;background:#eff2ff;color:#4361ee}
:where(.page-comm-notification) .rc.staff{background:#fdf0ff;color:#7209b7}
:where(.page-comm-notification) .rc.student{background:#e8fff5;color:#06d6a0}
:where(.page-comm-notification) .p-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;display:inline-block}
:where(.page-comm-notification,.page-comm-syllabus) .modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:200;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
:where(.tpl-5,.page-report-attendance-compliance,.page-report-exam-performance,.page-report-staff-register,.page-support-ticket) .sc-v{font-family:"Rajdhani",sans-serif;font-size:2rem;font-weight:700}
:where(.tpl-5,.page-report-attendance-compliance,.page-report-cbse-compliance,.page-report-exam-performance,.page-report-staff-register,.page-support-ticket) .sc-l{font-size:.78rem;opacity:.9;margin-top:4px}
:where(.page-report-cbse-compliance) .kv-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 28px}
:where(.page-report-cbse-compliance) .kv{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f5f7ff;font-size:.84rem}
:where(.page-report-cbse-compliance) .kv b{color:#1a1a2e}
:where(.page-report-cbse-compliance) .kv span{color:#888;font-weight:700}
:where(.page-report-staff-register) .tab-bar{background:#f8f9ff;border-radius:14px;padding:5px;margin-bottom:18px;display:flex;gap:4px}
:where(.page-report-staff-register) .tab-btn{flex:1;padding:9px 12px;border-radius:10px;border:none;background:transparent;font-family:Nunito,sans-serif;font-size:.8rem;font-weight:800;cursor:pointer;color:#888}
:where(.page-report-staff-register) .tab-btn.active{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff}
:where(.page-report-staff-register) .tab-panel{display:none}
:where(.page-attendance-view,.page-fee-report,.page-report-staff-register) .tab-panel.active{display:block}
:where(.page-fee-report) .card{background:#fff;border-radius:16px;padding:20px;box-shadow:0 4px 18px rgba(6,214,160,0.07);border:1px solid #d8f5ee;margin-bottom:16px}
:where(.page-fee-report) .card-title{font-family:'Rajdhani',sans-serif;font-size:1.05rem;font-weight:700;color:#1a1a2e;margin-bottom:14px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
:where(.page-fee-report) .dg2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
:where(.page-fee-report) .dg3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:16px}
:where(.page-attendance-view) .card{background:#fff;border-radius:16px;padding:20px;box-shadow:0 4px 20px rgba(67,97,238,0.07);border:1px solid #eaeeff;margin-bottom:18px}
:where(.page-attendance-view) .card-title{font-family:'Rajdhani',sans-serif;font-size:1.05rem;font-weight:700;color:#1a1a2e;margin-bottom:14px;display:flex;align-items:center;gap:8px;justify-content:space-between}
:where(.page-accountant-dashboard,.page-attendance-view,.page-management-dashboard) .dg2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-accountant-dashboard) .panel{background:#fff;border-radius:18px;padding:20px;box-shadow:0 4px 20px rgba(251,133,0,0.07);border:1px solid #ffe8b4}
:where(.page-management-dashboard) .panel{background:#fff;border-radius:18px;padding:20px;box-shadow:0 4px 20px rgba(76,201,240,0.08);border:1px solid #c8e8ff}
:where(.page-accountant-dashboard,.page-management-dashboard) .ph{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
:where(.page-accountant-dashboard) .pt{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-accountant-dashboard) .pa{font-size:0.74rem;color:#fb8500;font-weight:800;cursor:pointer;background:#fff8ec;padding:5px 12px;border-radius:8px;border:none;white-space:nowrap}
:where(.page-management-dashboard,.page-principle-dashboard) .pt{font-family:"Rajdhani",sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-principle-dashboard) .pa{font-size:0.74rem;color:#7209b7;font-weight:800;cursor:pointer;background:#f5f0ff;padding:5px 12px;border-radius:8px;border:none;white-space:nowrap}
:where(.page-principle-dashboard) .app-item{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #f8f5ff}
:where(.page-principle-dashboard) .app-item:last-child{border-bottom:none}
:where(.page-principle-dashboard) .app-icon{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}
:where(.page-principle-dashboard) .app-title{font-size:0.85rem;color:#333;font-weight:700}
:where(.page-principle-dashboard) .app-sub{font-size:0.71rem;color:#aaa;margin-top:2px}
:where(.page-principle-dashboard) .app-actions{margin-left:auto;display:flex;gap:6px;flex-shrink:0}
:where(.page-principle-dashboard) .btn-app{padding:5px 10px;border-radius:8px;border:none;background:linear-gradient(135deg,#06d6a0,#4cc9f0);color:#fff;font-size:0.7rem;font-weight:800;cursor:pointer}
:where(.page-principle-dashboard) .btn-rej{padding:5px 10px;border-radius:8px;border:none;background:linear-gradient(135deg,#e63946,#f72585);color:#fff;font-size:0.7rem;font-weight:800;cursor:pointer}
:where(.page-principle-dashboard) .notice-item{padding:11px 13px;border-radius:11px;margin-bottom:9px;border-left:4px solid}
:where(.page-principle-dashboard) .ni1{background:#f5f0ff;border-color:#7209b7}
:where(.page-principle-dashboard) .ni2{background:#fff0f8;border-color:#f72585}
:where(.page-principle-dashboard) .ni3{background:#fff8ec;border-color:#fb8500}
:where(.page-principle-dashboard) .ni4{background:#eff2ff;border-color:#4361ee}
:where(.page-principle-dashboard) .notice-title{font-size:0.86rem;color:#333;font-weight:800}
:where(.page-principle-dashboard) .notice-sub{font-size:0.71rem;color:#aaa;margin-top:3px}
:where(.page-management-dashboard) .pa{font-size:0.74rem;color:#0077b6;font-weight:800;cursor:pointer;background:#e8f7ff;padding:5px 12px;border-radius:8px;border:none;white-space:nowrap}
:where(.page-management-dashboard) .met-item{display:flex;align-items:center;gap:10px;margin-bottom:12px}
:where(.page-management-dashboard) .met-label{width:120px;font-size:0.81rem;color:#444;flex-shrink:0;font-weight:700}
:where(.page-management-dashboard) .met-bar{flex:1;height:9px;background:#f0f4ff;border-radius:10px;overflow:hidden}
:where(.page-management-dashboard) .met-fill{height:100%;border-radius:10px}
:where(.page-management-dashboard) .met-val{width:36px;font-size:0.81rem;color:#888;text-align:right;flex-shrink:0;font-weight:700}
:where(.page-accountant-dashboard,.page-management-dashboard) table{width:100%;border-collapse:collapse;font-size:0.82rem}
:where(.page-accountant-dashboard) th{font-weight:800;text-align:left;padding:9px 11px;border-bottom:2px solid #fffdf0;font-size:0.7rem;color:#aaa;letter-spacing:1px;text-transform:uppercase}
:where(.page-accountant-dashboard) td{padding:10px 11px;border-bottom:1px solid #fffef5;color:#444}
:where(.page-accountant-dashboard) tr:hover td{background:#fffdf0}
:where(.page-management-dashboard) th{font-weight:800;text-align:left;padding:9px 11px;border-bottom:2px solid #f0faff;font-size:0.7rem;color:#aaa;letter-spacing:1px;text-transform:uppercase}
:where(.page-management-dashboard) td{padding:10px 11px;border-bottom:1px solid #f5fcff;color:#444}
:where(.page-management-dashboard) tr:hover td{background:#f8fdff}
:where(.page-attendance-view) .dg3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-bottom:18px}
:where(.page-report-attendance-compliance,.page-report-exam-performance) .cg{display:grid;grid-template-columns:1fr 1fr;gap:18px}
:where(.page-report-attendance-compliance,.page-report-exam-performance) .pbar-cell{display:flex;align-items:center;gap:8px}
:where(.page-report-attendance-compliance,.page-report-exam-performance) .pbar{flex:1;height:7px;background:#eaeeff;border-radius:4px;overflow:hidden;min-width:50px}
:where(.page-report-attendance-compliance,.page-report-exam-performance) .pbar-fill{height:100%;border-radius:4px}
:where(.page-report-attendance-compliance,.page-report-exam-performance) .pbar-val{font-size:.76rem;font-weight:800;min-width:38px;text-align:right}
:where(.page-report-attendance-compliance) .note{background:#fff8ec;border:1.5px solid #ffe3b0;border-radius:12px;padding:12px 16px;font-size:.8rem;color:#7a5200;margin-bottom:16px}
:where(.page-support-ticket) .tbl{overflow-x:auto}
@media(max-width:900px){
  :where(.tpl-4) .mc{grid-template-columns:1fr}
}
:where(.page-management-tickets) .modal-bg{display:none;position:fixed;inset:0;background:rgba(20,20,40,.55);z-index:500;align-items:center;justify-content:center;backdrop-filter:blur(2px)}
:where(.page-comm-notification,.page-comm-syllabus,.page-management-tickets) .modal-bg.show{display:flex}
:where(.page-comm-syllabus) .modal{background:#fff;border-radius:20px;padding:28px;max-width:580px;width:90%;max-height:82vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.2);position:relative;animation:mIn 0.3s cubic-bezier(0.34,1.56,0.64,1)}
:where(.page-comm-syllabus) .modal-close{position:absolute;top:14px;right:14px;background:#f0f4ff;border:none;border-radius:8px;width:30px;height:30px;cursor:pointer;font-size:1rem;color:#888;display:flex;align-items:center;justify-content:center}
:where(.page-comm-notification) .modal{background:#fff;border-radius:20px;padding:28px;max-width:560px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.2);animation:mIn 0.3s cubic-bezier(0.34,1.56,0.64,1)}
:where(.page-comm-notification) .modal-title{font-family:'Rajdhani',sans-serif;font-size:1.3rem;font-weight:700;color:#1a1a2e;margin-bottom:6px}
:where(.page-comm-notification) .modal-sub{font-size:0.8rem;color:#aaa;margin-bottom:18px}
:where(.page-comm-notification) .modal-close{position:absolute;top:16px;right:16px;background:#f0f4ff;border:none;border-radius:8px;width:30px;height:30px;cursor:pointer;font-size:1rem;color:#888}
:where(.page-attendance-mark,.page-comm-notes,.page-comm-notification,.page-comm-syllabus,.page-student-form,.page-student-profile,.page-timetable) .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px 9px;border-radius:10px;border:2px solid #eaeeff;background:#f8f9ff;flex-shrink:0}
:where(.page-student-profile) .hamburger span{display:block;width:19px;height:2.5px;background:#4361ee;border-radius:3px;transition:all .3s}
:where(.page-comm-syllabus) .hamburger span{display:block;width:19px;height:2.5px;background:#06d6a0;border-radius:3px;transition:all 0.3s}
:where(.page-attendance-mark,.page-comm-notes,.page-comm-notification,.page-student-form,.page-timetable) .hamburger span{display:block;width:19px;height:2.5px;background:#4361ee;border-radius:3px;transition:all 0.3s}
:where(.page-attendance-mark,.page-comm-notes,.page-comm-notification,.page-comm-syllabus,.page-student-form,.page-student-profile,.page-timetable) .hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
:where(.page-attendance-mark,.page-comm-notes,.page-comm-notification,.page-comm-syllabus,.page-student-form,.page-student-profile,.page-timetable) .hamburger.open span:nth-child(2){opacity:0}
:where(.page-attendance-mark,.page-comm-notes,.page-comm-notification,.page-comm-syllabus,.page-student-form,.page-student-profile,.page-timetable) .hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
:where(.page-student-profile) .overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:99;backdrop-filter:blur(2px)}
:where(.page-comm-notes,.page-timetable) .overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.45);z-index:99}
:where(.page-attendance-mark,.page-comm-notification,.page-comm-syllabus,.page-student-form) .overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.45);z-index:99;backdrop-filter:blur(2px)}
:where(.page-attendance-mark,.page-comm-notes,.page-comm-notification,.page-comm-syllabus,.page-student-form,.page-student-profile,.page-timetable) .overlay.show{display:block}
@media(max-width:1024px){
  :where(.page-student-profile) .sidebar{transform:translateX(-260px);transition:transform .3s ease;z-index:200}
  :where(.page-student-profile) .sidebar.open{transform:translateX(0);box-shadow:8px 0 40px rgba(0,0,0,.15)}
}
@media(max-width:1100px){
  :where(.page-student-form) .form-container{grid-template-columns:1fr}
  :where(.page-student-form) .right-sidebar{position:static}
}
@media(max-width:1024px){
  :where(.page-attendance-mark,.page-student-form,.page-timetable) .sidebar{transform:translateX(-260px);transition:transform 0.3s ease;z-index:200}
  :where(.page-attendance-mark,.page-student-form,.page-timetable) .sidebar.open{transform:translateX(0)}
  :where(.page-attendance-mark,.page-student-form,.page-student-profile,.page-timetable) .main{margin-left:0}
  :where(.page-attendance-mark,.page-student-form,.page-student-profile,.page-timetable) .hamburger{display:flex}
  :where(.page-student-profile) .g2,:where(.page-student-profile) .g3{grid-template-columns:1fr}
  :where(.page-student-profile) .ig{grid-template-columns:1fr 1fr}
  :where(.page-attendance-mark) .att-stats{grid-template-columns:repeat(3,1fr)}
  :where(.page-student-form) .form-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:1100px){
  :where(.page-comm-notes,.page-comm-notification,.page-comm-syllabus) .sidebar{transform:translateX(-260px);transition:transform 0.3s ease;z-index:200}
  :where(.page-comm-notes,.page-comm-notification,.page-comm-syllabus) .sidebar.open{transform:translateX(0)}
  :where(.page-comm-notes,.page-comm-notification,.page-comm-syllabus) .main{margin-left:0}
  :where(.page-comm-notes,.page-comm-notification,.page-comm-syllabus) .hamburger{display:flex}
  :where(.page-comm-notification,.page-comm-syllabus) .layout{grid-template-columns:1fr}
  :where(.page-comm-notification,.page-comm-syllabus) .form-card{position:static}
  :where(.page-comm-notes,.page-comm-notification,.page-comm-syllabus) .stat-grid{grid-template-columns:repeat(2,1fr)}
  :where(.page-comm-notes) .layout{grid-template-columns:1fr}
  :where(.page-comm-notes) .form-card{position:static}
}
:where(.page-management-tickets) .modal{background:#fff;border-radius:20px;padding:22px;width:600px;max-width:92vw;max-height:88vh;overflow-y:auto;box-shadow:0 24px 60px rgba(0,0,0,.25)}
:where(.page-management-tickets) .modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}
:where(.page-management-tickets) .modal-title{font-family:"Rajdhani",sans-serif;font-size:1.2rem;font-weight:700;color:#1a1a2e}
:where(.page-management-tickets) .modal-close{width:32px;height:32px;border-radius:10px;border:none;background:#f8f9ff;cursor:pointer;font-size:1rem;color:#888}
:where(.page-management-tickets) .tk-modal-header{background:linear-gradient(135deg,#eff2ff,#fdf0ff);border-radius:14px;padding:16px 18px;margin-bottom:16px}
@media(max-width:1024px){
  :where(.page-admin-dashboard) .stat-grid{grid-template-columns:repeat(2,1fr)}
  :where(.page-admin-dashboard) .dg,:where(.page-admin-dashboard) .dg2{grid-template-columns:1fr}
  :where(.page-admin-dashboard) .search{width:160px}
  :where(.page-admin-dashboard) .sm-stats{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
  :where(.page-admin-dashboard,.page-attendance-mark,.page-comm-notes,.page-comm-notification,.page-comm-syllabus,.page-student-form,.page-student-profile,.page-timetable) .content{padding:14px}
  :where(.page-student-profile) .topbar{padding:0 12px;gap:8px;height:58px}
  :where(.page-student-profile) .sava{width:70px;height:70px;font-size:2rem}
  :where(.page-student-profile) .snl{font-size:1.5rem}
  :where(.page-student-profile) .hbody{padding:0 14px 18px}
  :where(.page-student-profile) .sr{grid-template-columns:repeat(2,1fr)}
  :where(.page-student-profile) .btn{padding:8px 12px;font-size:.78rem}
  :where(.page-student-profile) .tb{padding:8px 12px;font-size:.78rem}
  :where(.page-student-form) .topbar{padding:0 12px;gap:8px;height:60px}
  :where(.page-student-form) .tb-sub,:where(.page-student-form) .back-btn .btext{display:none}
  :where(.page-student-form) .section-card{padding:15px}
  :where(.page-student-form) .form-grid{grid-template-columns:1fr}
  :where(.page-student-form) .step-tab .stxt{display:none}
  :where(.page-student-form) .step-tab{min-width:auto;flex:none;padding:10px 12px}
}
@media(max-width:480px){
  :where(.page-student-form,.page-student-profile) .tb-title{font-size:1.1rem}
  :where(.page-student-profile) .ig{grid-template-columns:1fr}
  :where(.page-student-form) .radio-group{flex-direction:column}
}
@media(max-width:700px){
  :where(.page-attendance-mark,.page-comm-notes,.page-comm-notification,.page-comm-syllabus,.page-timetable) .topbar{padding:0 12px;height:58px}
  :where(.page-timetable) .ctrl-bar{gap:8px;padding:12px}
  :where(.page-timetable) .period-times{padding:10px 14px}
  :where(.page-attendance-mark) .filter-bar{gap:8px;padding:14px}
  :where(.page-attendance-mark) .fb-group{min-width:100px}
  :where(.page-attendance-mark) .att-stats{grid-template-columns:repeat(2,1fr)}
  :where(.page-attendance-mark) .att-radio{flex-wrap:wrap;gap:3px}
  :where(.page-attendance-mark) .ar{padding:4px 8px;font-size:0.7rem}
  :where(.page-comm-notes,.page-comm-notification,.page-comm-syllabus) .stat-grid{grid-template-columns:1fr 1fr}
  :where(.page-comm-notes,.page-comm-notification,.page-comm-syllabus) .row2{grid-template-columns:1fr}
  :where(.page-comm-notes) .notes-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
  :where(.page-comm-notes) .notes-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  :where(.page-comm-notification) .type-tabs{gap:4px}
  :where(.page-comm-notification) .tt-btn{font-size:0.76rem;padding:8px 10px}
  :where(.page-admin-dashboard) .topbar{padding:0 14px;gap:8px;height:60px}
  :where(.page-admin-dashboard) .tb-sub{display:none}
  :where(.page-admin-dashboard) .search{display:none}
  :where(.page-admin-dashboard) .sc-val{font-size:1.9rem}
  :where(.page-admin-dashboard) .panel{padding:15px}
  :where(.page-admin-dashboard) .qa-btn{font-size:0.75rem;padding:10px 6px}
  :where(.page-admin-dashboard) .sm-section{padding:16px}
  :where(.page-admin-dashboard) .sm-head{flex-direction:column;align-items:flex-start}
  :where(.page-admin-dashboard) .sm-actions{width:100%}
  :where(.page-admin-dashboard) .btn-sm-add,:where(.page-admin-dashboard) .btn-sm-all{flex:1;text-align:center}
  :where(.page-admin-dashboard) .abtn .abtn-view .abtn-edit{font-size:0.68rem;padding:4px 7px}
}
@media(max-width:480px){
  :where(.page-admin-dashboard) .stat-grid{grid-template-columns:1fr 1fr}
  :where(.page-admin-dashboard) .qa-grid{grid-template-columns:1fr}
  :where(.page-admin-dashboard) .dg2{grid-template-columns:1fr}
  :where(.page-admin-dashboard) .sm-stats{grid-template-columns:1fr 1fr}
  :where(.page-admin-dashboard) .sm-filters{gap:6px}
  :where(.page-admin-dashboard) .sf{font-size:0.72rem;padding:6px 10px}
  :where(.uses-superadmin) .tb-title{font-size:1.15rem}
  :where(.uses-superadmin) .form-head{flex-wrap:wrap}
  :where(.uses-superadmin) .submit-row{flex-direction:column}
  :where(.uses-superadmin) .btn-reset{width:100%}
  :where(.uses-superadmin) .plans-grid{grid-template-columns:1fr}
  :where(.uses-superadmin) .kpi-grid{grid-template-columns:1fr 1fr}
}
:where(.page-sa-admin-users) .roles-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:22px}
:where(.page-sa-admin-users) .role-card{background:#fff;border-radius:16px;padding:16px 12px;border:2px solid #e8e0ff;text-align:center;transition:all .2s;cursor:pointer}
:where(.page-sa-admin-users) .role-card:hover{border-color:#f72585;transform:translateY(-2px);box-shadow:0 8px 24px rgba(247,37,133,.1)}
:where(.page-sa-admin-users) .role-card.sel{border-color:#f72585;background:linear-gradient(135deg,rgba(247,37,133,.05),rgba(114,9,183,.05))}
:where(.page-sa-admin-users) .rc-icon{font-size:1.6rem;margin-bottom:6px}
:where(.page-sa-admin-users) .rc-name{font-family:'Rajdhani',sans-serif;font-size:.88rem;font-weight:700;color:#1a1a2e;margin-bottom:4px}
:where(.page-sa-admin-users) .rc-count{font-size:.65rem;color:#aaa;font-weight:700;background:#f3f0ff;padding:2px 8px;border-radius:8px}
:where(.page-sa-admin-users) .user-cell{display:flex;align-items:center;gap:11px}
:where(.page-sa-admin-users) .user-ava{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:900;color:#fff;flex-shrink:0}
:where(.page-sa-admin-users) .user-nm{font-weight:800;color:#1a1a2e;font-size:.84rem}
:where(.page-sa-admin-users) .user-email{font-size:.68rem;color:#aaa}
:where(.page-sa-admin-users) .role-tag{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:8px;font-size:.72rem;font-weight:800}
:where(.page-sa-admin-users) .rt-superadmin{background:linear-gradient(135deg,rgba(247,37,133,.12),rgba(114,9,183,.12));color:#7209b7}
:where(.page-sa-admin-users) .rt-billing{background:#e8fff5;color:#06d6a0}
:where(.page-sa-admin-users) .rt-support{background:#eff2ff;color:#4361ee}
:where(.page-sa-admin-users) .rt-readonly{background:#f3f0ff;color:#888}
:where(.page-sa-admin-users) .rt-onboard{background:#fff8ec;color:#fb8500}
:where(.page-sa-admin-users) .perm-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
:where(.page-sa-admin-users) .perm-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#f8f6ff;border-radius:10px}
:where(.page-sa-admin-users) .perm-item input[type=checkbox]{width:16px;height:16px;accent-color:#f72585;flex-shrink:0}
:where(.page-sa-admin-users) .perm-label{font-size:.78rem;font-weight:700;color:#333}
:where(.page-sa-admin-users) .perm-section{font-size:.68rem;font-weight:800;color:#aaa;letter-spacing:1px;text-transform:uppercase;margin:14px 0 6px;display:flex;align-items:center;gap:8px}
:where(.page-sa-admin-users) .perm-section::before,:where(.page-sa-admin-users) .perm-section::after{content:'';flex:1;height:1px;background:#f0ecff}
:where(.page-sa-admin-users) .last-login{font-size:.72rem;color:#666;font-weight:700}
:where(.page-sa-admin-users) .last-login-sub{font-size:.65rem;color:#bbb}
:where(.page-sa-admin-users) .modal-scroll{max-height:70vh;overflow-y:auto;padding-right:4px}
@media(max-width:1100px){
  :where(.page-sa-admin-users) .roles-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:600px){
  :where(.page-sa-admin-users) .roles-grid{grid-template-columns:1fr 1fr}
  :where(.page-sa-admin-users) .perm-grid{grid-template-columns:1fr}
}
:where(.page-sa-discount-codes,.page-sa-expired-subscriptions) .summary-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}
:where(.page-sa-discount-codes,.page-sa-expired-subscriptions) .sum-card{background:#fff;border-radius:18px;padding:20px;border:1px solid #e8e0ff;box-shadow:0 4px 20px rgba(114,9,183,.06);display:flex;align-items:center;gap:14px}
:where(.page-sa-discount-codes,.page-sa-expired-subscriptions) .sum-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}
:where(.page-sa-discount-codes,.page-sa-expired-subscriptions) .sum-val{font-family:'Rajdhani',sans-serif;font-size:1.9rem;font-weight:700;color:#1a1a2e;line-height:1}
:where(.page-sa-discount-codes,.page-sa-expired-subscriptions) .sum-lbl{font-size:.74rem;color:#aaa;font-weight:700;margin-top:3px}
:where(.page-sa-expired-subscriptions) table{min-width:950px}
:where(.page-sa-expired-subscriptions) .school-cell{display:flex;align-items:center;gap:10px}
:where(.page-sa-expired-subscriptions) .school-ava-lg{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:900;color:#fff;flex-shrink:0}
:where(.page-sa-expired-subscriptions) .school-nm{font-weight:800;color:#1a1a2e;font-size:.84rem}
:where(.page-sa-expired-subscriptions) .school-cd{font-size:.68rem;color:#aaa}
:where(.page-sa-expired-subscriptions) .exp-date{font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;color:#e63946}
:where(.page-sa-expired-subscriptions) .days-ago{font-size:.7rem;color:#e63946;font-weight:800;background:#fff0f0;padding:2px 8px;border-radius:8px}
:where(.page-sa-expired-subscriptions) .renewal-btn{padding:6px 14px;border-radius:9px;border:none;font-family:'Nunito',sans-serif;font-size:.75rem;font-weight:800;cursor:pointer;transition:all .2s}
:where(.page-sa-expired-subscriptions) .rb-renew{background:linear-gradient(135deg,#f72585,#7209b7);color:#fff;box-shadow:0 3px 10px rgba(247,37,133,.3)}
:where(.page-sa-expired-subscriptions) .rb-renew:hover{transform:translateY(-1px)}
:where(.page-sa-expired-subscriptions) .rb-contact{background:#f3f0ff;color:#7209b7}
:where(.page-sa-expired-subscriptions) .rb-contact:hover{background:#7209b7;color:#fff}
:where(.page-sa-expired-subscriptions) .rb-suspend{background:#fff0f0;color:#e63946}
:where(.page-sa-expired-subscriptions) .rb-suspend:hover{background:#e63946;color:#fff}
:where(.page-sa-expired-subscriptions) .alert-banner{background:linear-gradient(135deg,#e63946,#9d0208);border-radius:18px;padding:18px 24px;margin-bottom:20px;display:flex;align-items:center;gap:16px;color:#fff}
:where(.page-sa-expired-subscriptions) .ab-icon{font-size:2rem;flex-shrink:0}
:where(.page-sa-expired-subscriptions) .ab-title{font-family:'Rajdhani',sans-serif;font-size:1.2rem;font-weight:700}
:where(.page-sa-expired-subscriptions) .ab-sub{font-size:.82rem;opacity:.85;margin-top:3px}
:where(.page-sa-expired-subscriptions) .ab-actions{margin-left:auto;display:flex;gap:8px;flex-shrink:0}
:where(.page-sa-expired-subscriptions) .ab-btn{padding:8px 16px;border-radius:10px;border:none;font-family:'Nunito',sans-serif;font-size:.78rem;font-weight:800;cursor:pointer;transition:all .2s}
:where(.page-sa-expired-subscriptions) .ab-btn-white{background:#fff;color:#e63946}
:where(.page-sa-expired-subscriptions) .ab-btn-white:hover{background:#fff0f0}
:where(.page-sa-expired-subscriptions) .ab-btn-outline{background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.3)}
:where(.page-sa-expired-subscriptions) .ab-btn-outline:hover{background:rgba(255,255,255,.25)}
:where(.page-sa-discount-codes) .code-cell{display:flex;align-items:center;gap:10px}
:where(.page-sa-discount-codes) .code-badge{font-family:'Rajdhani',sans-serif;font-size:.95rem;font-weight:700;background:#f3f0ff;color:#7209b7;padding:5px 12px;border-radius:9px;border:2px dashed #e0d8ff;letter-spacing:1px;cursor:pointer;transition:all .2s}
:where(.page-sa-discount-codes) .code-badge:hover{background:#7209b7;color:#fff;border-color:#7209b7}
:where(.page-sa-discount-codes) .copy-hint{font-size:.65rem;color:#bbb;font-weight:700}
:where(.page-sa-discount-codes) .discount-val{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700}
:where(.page-sa-discount-codes) .dv-pct{color:#f72585}
:where(.page-sa-discount-codes) .dv-flat{color:#4361ee}
:where(.page-sa-discount-codes) .usage-bar{margin-top:4px}
:where(.page-sa-discount-codes) .ub-track{height:4px;background:#f0ecff;border-radius:4px;overflow:hidden;width:80px}
:where(.page-sa-discount-codes) .ub-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,#f72585,#7209b7)}
:where(.page-sa-discount-codes) .ub-text{font-size:.65rem;color:#aaa;font-weight:700;margin-top:2px}
:where(.page-sa-discount-codes) .date-range{font-size:.73rem;color:#666;font-weight:700}
:where(.page-sa-discount-codes) .date-sep{color:#ccc;margin:0 3px}
:where(.page-sa-discount-codes) .modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:4px}
:where(.page-sa-discount-codes) .code-preview{background:linear-gradient(135deg,#f3f0ff,#fff0f8);border:2px dashed rgba(114,9,183,.3);border-radius:14px;padding:16px;text-align:center;margin-bottom:18px}
:where(.page-sa-discount-codes) .cp-label{font-size:.68rem;font-weight:800;color:#aaa;letter-spacing:1px;text-transform:uppercase;margin-bottom:6px}
:where(.page-sa-discount-codes) .cp-code{font-family:'Rajdhani',sans-serif;font-size:1.8rem;font-weight:700;color:#7209b7;letter-spacing:3px}
:where(.page-sa-discount-codes) .cp-regen{background:none;border:none;color:#f72585;font-size:.78rem;font-weight:800;cursor:pointer;font-family:'Nunito',sans-serif;margin-top:4px;display:block;width:100%}
:where(.page-sa-discount-codes) .type-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
:where(.page-sa-discount-codes) .type-card{border:2px solid #e8e0ff;border-radius:12px;padding:12px;cursor:pointer;transition:all .2s;text-align:center}
:where(.page-sa-discount-codes) .type-card:hover{border-color:#f72585}
:where(.page-sa-discount-codes) .type-card.sel{border-color:#f72585;background:linear-gradient(135deg,rgba(247,37,133,.05),rgba(114,9,183,.05))}
:where(.page-sa-discount-codes) .type-icon{font-size:1.4rem;margin-bottom:4px}
:where(.page-sa-discount-codes) .type-name{font-size:.8rem;font-weight:800;color:#333}
:where(.page-sa-discount-codes) .type-desc{font-size:.68rem;color:#aaa;margin-top:2px}
@media(max-width:900px){
  :where(.page-sa-discount-codes,.page-sa-expired-subscriptions) .summary-row{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  :where(.page-sa-discount-codes,.page-sa-expired-subscriptions) .summary-row{grid-template-columns:1fr}
}
:where(.page-sa-support-tickets) .ticket-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}
:where(.page-sa-support-tickets) .tk-stat{background:#fff;border-radius:16px;padding:18px 20px;border:1px solid #e8e0ff;box-shadow:0 2px 12px rgba(114,9,183,.05);display:flex;align-items:center;gap:14px;cursor:pointer;transition:all .2s}
:where(.page-sa-support-tickets) .tk-stat:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(114,9,183,.1)}
:where(.page-sa-support-tickets) .tk-stat.active-filter{border-color:#f72585;box-shadow:0 4px 16px rgba(247,37,133,.2)}
:where(.page-sa-support-tickets) .tks-icon{width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
:where(.page-sa-support-tickets) .tks-val{font-family:'Rajdhani',sans-serif;font-size:1.9rem;font-weight:700;line-height:1}
:where(.page-sa-support-tickets) .tks-lbl{font-size:.72rem;color:#aaa;font-weight:700;margin-top:2px}
:where(.page-sa-support-tickets) .ticket-cell{display:flex;flex-direction:column;gap:3px}
:where(.page-sa-support-tickets) .tk-id{font-family:'Rajdhani',sans-serif;font-size:.82rem;font-weight:700;color:#7209b7}
:where(.page-sa-support-tickets) .tk-subject{font-size:.83rem;font-weight:800;color:#1a1a2e}
:where(.page-sa-support-tickets) .tk-school{font-size:.68rem;color:#aaa;font-weight:700}
:where(.page-sa-support-tickets) .priority-tag{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:8px;font-size:.7rem;font-weight:800}
:where(.page-sa-support-tickets) .pr-critical{background:#fff0f0;color:#e63946}
:where(.page-sa-support-tickets) .pr-high{background:#fff8ec;color:#fb8500}
:where(.page-sa-support-tickets) .pr-medium{background:#eff2ff;color:#4361ee}
:where(.page-sa-support-tickets) .pr-low{background:#f3f0ff;color:#888}
:where(.page-sa-support-tickets) .assignee-cell{display:flex;align-items:center;gap:7px}
:where(.page-sa-support-tickets) .ass-ava{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:900;color:#fff;flex-shrink:0}
:where(.page-sa-support-tickets) .ass-nm{font-size:.76rem;font-weight:700;color:#333}
:where(.page-sa-support-tickets) .tk-modal-header{background:linear-gradient(135deg,#f3f0ff,#fff0f8);border-radius:14px;padding:16px 18px;margin-bottom:18px}
:where(.page-management-tickets,.page-sa-support-tickets) .tk-meta-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
:where(.page-management-tickets) .tk-meta-chip{display:flex;align-items:center;gap:5px;background:#fff;border:1px solid #e0e6ff;border-radius:8px;padding:4px 10px;font-size:.72rem;font-weight:700;color:#555}
:where(.page-management-tickets) .conv-list{max-height:240px;overflow-y:auto;margin-bottom:14px}
:where(.page-sa-support-tickets) .tk-meta-chip{display:flex;align-items:center;gap:5px;background:#fff;border:1px solid #e8e0ff;border-radius:8px;padding:4px 10px;font-size:.72rem;font-weight:700;color:#555}
:where(.page-sa-support-tickets) .conv-list{max-height:260px;overflow-y:auto;margin-bottom:16px}
:where(.page-management-tickets,.page-sa-support-tickets) .conv-msg{padding:12px 14px;border-radius:12px;margin-bottom:10px;font-size:.82rem;line-height:1.6}
:where(.page-management-tickets) .conv-school{background:#eff2ff;border:1px solid #dde4ff}
:where(.page-management-tickets) .conv-admin{background:linear-gradient(135deg,rgba(6,214,160,.08),rgba(0,119,182,.08));border:1px solid rgba(6,214,160,.2)}
:where(.page-sa-support-tickets) .conv-school{background:#f3f0ff;border:1px solid #e0d8ff}
:where(.page-sa-support-tickets) .conv-admin{background:linear-gradient(135deg,rgba(247,37,133,.06),rgba(114,9,183,.06));border:1px solid rgba(247,37,133,.15)}
:where(.page-management-tickets,.page-sa-support-tickets) .conv-sender{font-size:.7rem;font-weight:800;color:#888;margin-bottom:4px}
:where(.page-management-tickets,.page-sa-support-tickets) .conv-time{font-size:.65rem;color:#bbb;margin-top:4px}
:where(.page-management-tickets) .reply-area{border:2px solid #eaeeff;border-radius:12px;padding:12px;font-family:Nunito,sans-serif;font-size:.86rem;width:100%;outline:none;resize:none;height:75px}
:where(.page-management-tickets) .reply-area:focus{border-color:#4361ee;box-shadow:0 0 0 3px rgba(67,97,238,.1)}
:where(.page-sa-support-tickets) .reply-area{border:2px solid #e0d8ff;border-radius:12px;padding:12px;font-family:'Nunito',sans-serif;font-size:.86rem;width:100%;outline:none;resize:none;height:80px}
:where(.page-sa-support-tickets) .reply-area:focus{border-color:#f72585;box-shadow:0 0 0 3px rgba(247,37,133,.1)}
:where(.page-management-tickets,.page-sa-support-tickets) .reply-footer{display:flex;gap:8px;margin-top:10px;align-items:center;flex-wrap:wrap}
:where(.page-management-tickets) .resolve-btn{padding:8px 16px;border-radius:10px;border:none;font-family:Nunito,sans-serif;font-size:.78rem;font-weight:800;cursor:pointer;transition:all .2s}
:where(.page-sa-support-tickets) .resolve-btn{padding:8px 18px;border-radius:10px;border:none;font-family:'Nunito',sans-serif;font-size:.8rem;font-weight:800;cursor:pointer;transition:all .2s}
:where(.page-management-tickets,.page-sa-support-tickets) .rb-resolve{background:#e8fff5;color:#06d6a0;border:2px solid rgba(6,214,160,.3)}
:where(.page-management-tickets,.page-sa-support-tickets) .rb-resolve:hover{background:#06d6a0;color:#fff}
:where(.page-management-tickets,.page-sa-support-tickets) .rb-escalate{background:#fff8ec;color:#fb8500;border:2px solid rgba(251,133,0,.3)}
:where(.page-management-tickets,.page-sa-support-tickets) .rb-escalate:hover{background:#fb8500;color:#fff}
:where(.page-management-tickets,.page-sa-support-tickets) .rb-close{background:#fff0f0;color:#e63946;border:2px solid rgba(230,57,70,.3)}
:where(.page-management-tickets,.page-sa-support-tickets) .rb-close:hover{background:#e63946;color:#fff}
@media(max-width:900px){
  :where(.tpl-5,.page-management-tickets,.page-report-attendance-compliance,.page-report-cbse-compliance,.page-report-exam-performance,.page-report-staff-register,.page-support-ticket) .sc-row{grid-template-columns:1fr 1fr}
  :where(.page-report-cbse-compliance) .kv-grid{grid-template-columns:1fr}
  :where(.page-report-attendance-compliance,.page-report-exam-performance) .cg{grid-template-columns:1fr}
  :where(.page-settings,.page-support-ticket) .fgrid{grid-template-columns:1fr}
}
:where(.tpl-2) .tp-panel{position:fixed;top:74px;right:16px;width:340px;background:#fff;border-radius:18px;box-shadow:0 20px 60px rgba(67,97,238,.18),0 0 0 1px rgba(67,97,238,.08);z-index:9999;display:none;overflow:hidden;animation:tpIn .2s cubic-bezier(.34,1.56,.64,1)}
:where(.tpl-2) .tp-panel.open{display:block}
:where(.tpl-2) .tp-head{padding:14px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f0f4ff}
:where(.tpl-2) .tp-title{font-family:"Rajdhani",sans-serif;font-size:1rem;font-weight:700;color:#1a1a2e}
:where(.tpl-2) .tp-action{font-size:.72rem;font-weight:800;color:#4361ee;cursor:pointer;background:none;border:none;padding:4px 8px;border-radius:7px}
:where(.tpl-2) .tp-action:hover{background:#eff2ff}
:where(.tpl-2) .notif-list{max-height:320px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#e0d8ff transparent}
:where(.tpl-2) .notif-item{display:flex;align-items:flex-start;gap:11px;padding:12px 18px;border-bottom:1px solid #f8f9ff;transition:background .15s;cursor:pointer}
:where(.tpl-2) .notif-item:hover{background:#f8f9ff}
:where(.tpl-2) .notif-item.unread{background:#f0f4ff}
:where(.tpl-2) .notif-item.unread:hover{background:#e8eeff}
:where(.tpl-2) .ni-icon{width:36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
:where(.tpl-2) .ni-text{font-size:.8rem;font-weight:700;color:#333;line-height:1.4}
:where(.tpl-2) .ni-sub{font-size:.7rem;color:#aaa;margin-top:2px;font-weight:600}
:where(.tpl-2) .ni-dot{width:7px;height:7px;border-radius:50%;background:#4361ee;margin-top:6px;flex-shrink:0}
:where(.tpl-2) .notif-footer{padding:12px 18px;border-top:1px solid #f0f4ff;text-align:center}
:where(.tpl-2) .notif-footer a{font-size:.78rem;font-weight:800;color:#4361ee;text-decoration:none}
:where(.tpl-2) .notif-footer a:hover{text-decoration:underline}
:where(.tpl-2) .set-section{padding:10px 10px 4px;font-size:.6rem;font-weight:800;color:#ccc;letter-spacing:2px;text-transform:uppercase}
:where(.tpl-2) .set-item{display:flex;align-items:center;gap:10px;padding:10px 18px;cursor:pointer;transition:background .15s;text-decoration:none;color:#444;font-size:.84rem;font-weight:700}
:where(.tpl-2) .set-item:hover{background:#f8f9ff;color:#4361ee}
:where(.tpl-2) .set-icon{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
:where(.tpl-2) .set-item .set-arr{margin-left:auto;font-size:.7rem;color:#ccc}
:where(.tpl-2) .set-divider{height:1px;background:#f0f4ff;margin:4px 0}
:where(.tpl-2) .set-user{padding:14px 18px;background:linear-gradient(135deg,#f0f4ff,#fdf0ff);border-top:2px solid #eaeeff;display:flex;align-items:center;gap:11px}
:where(.tpl-2) .su-ava{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#4361ee,#f72585);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem;color:#fff;flex-shrink:0}
:where(.tpl-2) .su-name{font-weight:800;color:#1a1a2e;font-size:.84rem}
:where(.tpl-2) .su-role{font-size:.68rem;color:#aaa}
:where(.tpl-2) .su-logout{margin-left:auto;padding:7px 14px;border-radius:10px;border:none;background:linear-gradient(135deg,#f72585,#e63946);color:#fff;font-family:"Nunito",sans-serif;font-size:.76rem;font-weight:800;cursor:pointer;transition:all .2s;white-space:nowrap;text-decoration:none;display:flex;align-items:center;gap:5px}
:where(.tpl-2) .su-logout:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(247,37,133,.4)}
:where(.tpl-2) .toggle-row{display:flex;align-items:center;gap:10px;padding:10px 18px;cursor:pointer}
:where(.tpl-2) .toggle-label{font-size:.84rem;font-weight:700;color:#444;flex:1}
:where(.tpl-2) .toggle{width:42px;height:24px;background:#e0d8ff;border-radius:12px;position:relative;transition:background .3s;flex-shrink:0;cursor:pointer}
:where(.tpl-2) .toggle.on{background:linear-gradient(135deg,#4361ee,#7209b7)}
:where(.tpl-2) .toggle::after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;top:3px;left:3px;transition:left .25s;box-shadow:0 2px 5px rgba(0,0,0,.15)}
:where(.tpl-2,.page-fee-structure) .toggle.on::after{left:21px}
:where(.page-fee-structure) .btn-row{display:flex;gap:8px;margin-top:14px}
:where(.page-fee-structure) .btn-save{flex:1;padding:11px;border-radius:11px;border:none;background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;font-family:'Rajdhani',sans-serif;font-size:0.98rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;box-shadow:0 4px 14px rgba(6,214,160,0.3);transition:all 0.2s}
:where(.page-fee-structure,.page-teacher-add) .btn-save:hover{transform:translateY(-2px)}
:where(.page-teacher-add) .step-indicator{font-size:0.8rem;color:#aaa;font-weight:700}
:where(.page-teacher-add) .success-overlay{display:none;position:fixed;inset:0;background:rgba(67,97,238,0.08);backdrop-filter:blur(4px);z-index:200;align-items:center;justify-content:center}
:where(.page-teacher-add) .success-overlay.show{display:flex}
:where(.page-teacher-add) .success-box{background:#fff;border-radius:24px;padding:40px;text-align:center;max-width:420px;width:90%;box-shadow:0 20px 60px rgba(67,97,238,0.25)}
:where(.page-teacher-add) .suc-icon{font-size:4rem;margin-bottom:14px}
:where(.page-teacher-add) .suc-title{font-family:'Rajdhani',sans-serif;font-size:1.6rem;font-weight:700;color:#1a1a2e;margin-bottom:8px}
:where(.page-teacher-add) .suc-sub{font-size:0.85rem;color:#888;margin-bottom:24px;line-height:1.6}
:where(.page-teacher-add) .suc-id{background:linear-gradient(135deg,rgba(67,97,238,0.1),rgba(114,9,183,0.08));border:2px solid rgba(67,97,238,0.2);border-radius:12px;padding:10px 18px;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;color:#4361ee;margin-bottom:20px;display:inline-block}
:where(.page-teacher-add) .suc-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
:where(.page-teacher-add) .suc-btn{padding:11px 22px;border-radius:12px;border:none;font-family:'Nunito',sans-serif;font-size:0.88rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-teacher-add) .suc-p{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;box-shadow:0 4px 14px rgba(67,97,238,0.3)}
:where(.page-teacher-add) .suc-o{background:#f8f9ff;color:#4361ee;border:2px solid #eaeeff}
:where(.page-fee-structure) .btn-cancel{padding:11px 16px;border-radius:11px;border:2px solid #e0f5ef;background:#f8f9ff;color:#888;font-family:'Nunito',sans-serif;font-size:0.84rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-fee-structure) .table-card{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(6,214,160,0.07);border:1px solid #d8f5ee}
:where(.page-fee-structure) .tc-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap;gap:8px}
:where(.page-fee-structure) .tc-title{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-fee-structure) .filter-row{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}
:where(.page-fee-structure) .f-sel{background:#f8f9ff;border:2px solid #e0f5ef;border-radius:9px;padding:7px 10px;font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:700;color:#555;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:24px;transition:all 0.2s}
:where(.page-fee-structure) .f-sel:focus{border-color:#06d6a0}
:where(.page-fee-structure) .f-search{flex:1;min-width:140px;background:#f8f9ff;border:2px solid #e0f5ef;border-radius:9px;padding:7px 12px;font-family:'Nunito',sans-serif;font-size:0.82rem;outline:none;color:#333;transition:all 0.2s}
:where(.page-fee-structure) .f-search:focus{border-color:#06d6a0}
:where(.page-attendance-view,.page-fee-report,.page-fee-structure,.page-principle-dashboard) .tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
:where(.page-principle-dashboard) .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px 9px;border-radius:10px;border:2px solid #e0d0ff;background:#f5f0ff;flex-shrink:0}
:where(.page-principle-dashboard) .hamburger span{display:block;width:19px;height:2.5px;background:#7209b7;border-radius:3px;transition:all 0.3s}
:where(.page-fee-report) table{width:100%;border-collapse:collapse;font-size:0.82rem;min-width:560px}
:where(.page-fee-report) th{font-weight:800;text-align:left;padding:9px 14px;border-bottom:2px solid #f0fff8;font-size:0.68rem;color:#aaa;letter-spacing:1px;text-transform:uppercase;background:#fafffe}
:where(.page-attendance-view) table{width:100%;border-collapse:collapse;font-size:0.82rem;min-width:500px}
:where(.page-attendance-view) th{font-weight:800;text-align:left;padding:9px 14px;border-bottom:2px solid #f0f4ff;font-size:0.68rem;color:#bbb;letter-spacing:1px;text-transform:uppercase;background:#fafbff}
:where(.page-attendance-view) td{padding:11px 14px;border-bottom:1px solid #f5f7ff;color:#444;vertical-align:middle}
:where(.page-fee-structure) table{width:100%;border-collapse:collapse;font-size:0.82rem;min-width:680px}
:where(.page-fee-collection,.page-fee-structure) th{font-weight:800;text-align:left;padding:10px 14px;border-bottom:2px solid #f0fff8;font-size:0.68rem;color:#aaa;letter-spacing:1px;text-transform:uppercase;background:#fafffe}
:where(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) td{padding:11px 14px;border-bottom:1px solid #f0faf7;color:#444;vertical-align:middle}
:where(.page-attendance-view,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) tr:last-child td{border-bottom:none}
:where(.page-attendance-view) tr:hover td{background:#f8f9ff}
:where(.page-attendance-view) .pbar-cell{display:flex;align-items:center;gap:8px}
:where(.page-attendance-view) .pbar{flex:1;height:7px;background:#f0f4ff;border-radius:4px;overflow:hidden;min-width:60px}
:where(.page-attendance-view) .pbar-fill{height:100%;border-radius:4px}
:where(.page-attendance-view) .pbar-val{font-size:0.76rem;font-weight:800;min-width:36px;text-align:right}
:where(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) tr:hover td{background:#f5fff9}
:where(.page-fee-report) .pbar-cell{display:flex;align-items:center;gap:8px}
:where(.page-fee-report) .pbar{flex:1;height:7px;background:#e0f5ef;border-radius:4px;overflow:hidden;min-width:50px}
:where(.page-fee-report) .pbar-fill{height:100%;border-radius:4px;transition:width 0.5s}
:where(.page-fee-report) .pbar-val{font-size:0.76rem;font-weight:800;min-width:38px;text-align:right}
:where(.page-fee-collection) .check-cb{width:16px;height:16px;accent-color:#06d6a0;cursor:pointer}
:where(.tpl-1:not(.page-comm-homework,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-principle-dashboard,.page-teacher-add,.page-user-access)) .tag{display:inline-block;padding:3px 10px;border-radius:20px;font-size:0.71rem;font-weight:800}
:where(.tpl-1:not(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-principle-dashboard,.page-teacher-add,.page-user-access)) .tg{background:#e8fff5;color:#06d6a0}
:where(.page-accountant-dashboard,.page-attendance-view,.page-comm-homework,.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure,.page-hod-dashboard,.page-students,.page-teacher-dashboard) .tr{background:#fff0f0;color:#e63946}
:where(.tpl-1:not(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-principle-dashboard,.page-teacher-add,.page-teacher-mapping,.page-user-access)) .to{background:#fff8ec;color:#fb8500}
:where(.tpl-1:not(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-principle-dashboard,.page-teacher-add,.page-user-access)) .tb{background:#eff2ff;color:#4361ee}
:where(.page-accountant-dashboard) .amount-g{color:#06d6a0;font-weight:800}
:where(.page-accountant-dashboard) .amount-r{color:#e63946;font-weight:800}
:where(.page-management-dashboard) .tl-item{display:flex;gap:12px;padding-bottom:14px;position:relative}
:where(.page-management-dashboard) .tl-item::before{content:"";position:absolute;left:15px;top:32px;bottom:0;width:2px;background:linear-gradient(to bottom,#4cc9f0,transparent)}
:where(.page-management-dashboard) .tl-item:last-child::before{display:none}
:where(.page-management-dashboard) .tl-dot{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.9rem;flex-shrink:0;z-index:1}
:where(.page-management-dashboard) .tl-title{font-size:0.86rem;color:#333;font-weight:800}
:where(.page-management-dashboard) .tl-sub{font-size:0.72rem;color:#aaa;margin-top:2px}
:where(.page-students) .aw{display:flex;gap:5px;align-items:center}
:where(.page-students) .ab{width:34px;height:34px;border-radius:10px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:all 0.2s;flex-shrink:0}
:where(.page-students) .ab:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.12)}
:where(.page-students) .av{background:#eff2ff;color:#4361ee}
:where(.page-students) .ae{background:#fff0f8;color:#f72585}
:where(.page-students) .ad{background:#fff0f0;color:#e63946}
:where(.page-students) .pagination{padding:14px 20px;border-top:1px solid #f0f4ff;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
:where(.page-students) .pg-info{font-size:0.8rem;color:#aaa;font-weight:700}
:where(.page-students) .pg-btns{display:flex;gap:5px}
:where(.page-students) .pb{width:36px;height:36px;border-radius:10px;border:2px solid #eaeeff;background:#f8f9ff;color:#555;font-family:"Nunito",sans-serif;font-size:0.84rem;font-weight:800;cursor:pointer;transition:all 0.2s;display:flex;align-items:center;justify-content:center}
:where(.page-students) .pb.active{background:linear-gradient(135deg,#4361ee,#7209b7);border-color:transparent;color:#fff;box-shadow:0 4px 12px rgba(67,97,238,0.35)}
:where(.page-students) .pb:hover:not(.active){border-color:#4361ee;color:#4361ee;background:#eff2ff}
:where(.page-hod-dashboard) .tp{background:#fff0f8;color:#f72585}
:where(.page-hod-dashboard) .tc-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
:where(.page-hod-dashboard) .tc{background:#fff5fb;border:2px solid #ffd6ee;border-radius:13px;padding:12px;display:flex;align-items:center;gap:10px;transition:all 0.2s}
:where(.page-hod-dashboard) .tc:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(247,37,133,0.12)}
:where(.page-hod-dashboard) .tc-ava{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:0.86rem;color:#fff;flex-shrink:0}
:where(.page-hod-dashboard) .tc-name{font-size:0.84rem;color:#333;font-weight:800}
:where(.page-hod-dashboard) .tc-sub{font-size:0.69rem;color:#aaa;margin-top:1px}
:where(.page-teacher-dashboard) .task-item{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid #f0fff8}
:where(.page-teacher-dashboard) .task-item:last-child{border-bottom:none}
:where(.page-teacher-dashboard) .ti-ava{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
:where(.page-teacher-dashboard) .ti-name{font-size:0.85rem;color:#333;font-weight:700}
:where(.page-teacher-dashboard) .ti-sub{font-size:0.71rem;color:#aaa;margin-top:2px}
:where(.page-teacher-dashboard) .pbar{height:5px;background:#f0f4ff;border-radius:10px;overflow:hidden;margin-top:6px}
:where(.page-teacher-dashboard) .pfill{height:100%;border-radius:10px}
:where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-teacher-dashboard) .tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
:where(.page-accountant-dashboard) .tbl-wrap table{min-width:460px}
:where(.page-accountant-dashboard) .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px 9px;border-radius:10px;border:2px solid #ffe8b4;background:#fffdf0;flex-shrink:0}
:where(.page-accountant-dashboard) .hamburger span{display:block;width:19px;height:2.5px;background:#fb8500;border-radius:3px;transition:all 0.3s}
:where(.page-management-dashboard) .tbl-wrap table{min-width:500px}
:where(.page-management-dashboard) .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px 9px;border-radius:10px;border:2px solid #c8e8ff;background:#f0faff;flex-shrink:0}
:where(.page-management-dashboard) .hamburger span{display:block;width:19px;height:2.5px;background:#0077b6;border-radius:3px;transition:all 0.3s}
:where(.page-hod-dashboard) .tbl-wrap table{min-width:380px}
:where(.page-hod-dashboard) .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px 9px;border-radius:10px;border:2px solid #ffd6ee;background:#fff5fb;flex-shrink:0}
:where(.page-hod-dashboard) .hamburger span{display:block;width:19px;height:2.5px;background:#f72585;border-radius:3px;transition:all 0.3s}
:where(.page-teacher-dashboard) .tbl-wrap table{min-width:420px}
:where(.page-teacher-dashboard) .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px 9px;border-radius:10px;border:2px solid #ccf5e7;background:#f0fff8;flex-shrink:0}
:where(.page-attendance-view) .month-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:12px}
:where(.page-attendance-view) .cal-day-header{text-align:center;font-size:0.65rem;font-weight:800;color:#bbb;padding:4px 0;text-transform:uppercase}
:where(.page-attendance-view) .cal-day{aspect-ratio:1;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:0.78rem;font-weight:800;cursor:pointer;transition:all 0.2s;position:relative}
:where(.page-attendance-view) .cal-day:hover{transform:scale(1.1)}
:where(.page-attendance-view) .cd-present{background:#e8fff5;color:#06d6a0}
:where(.page-attendance-view) .cd-absent{background:#fff0f0;color:#e63946}
:where(.page-attendance-view) .cd-holiday{background:#eff2ff;color:#4361ee}
:where(.page-attendance-view) .cd-leave{background:#fff8ec;color:#fb8500}
:where(.page-attendance-view) .cd-empty{background:transparent}
:where(.page-attendance-view) .cd-today{box-shadow:0 0 0 2px #4361ee}
:where(.page-attendance-view) .stu-att-bar{display:flex;align-items:center;gap:3px;flex-wrap:wrap}
:where(.page-attendance-view) .day-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}
:where(.page-fee-collection) .payment-card{background:#fff;border-radius:18px;padding:22px;box-shadow:0 4px 20px rgba(6,214,160,0.08);border:1px solid #d8f5ee;display:none}
:where(.page-fee-collection) .payment-card.show{display:block}
:where(.page-fee-collection) .pay-head{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e;margin-bottom:18px;display:flex;align-items:center;gap:8px}
:where(.page-fee-collection) .pay-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
:where(.page-fee-collection) .amt-summary{background:linear-gradient(135deg,#f0fff8,#e8f7f4);border-radius:14px;padding:16px 20px;border:2px solid rgba(6,214,160,0.2);margin-bottom:16px}
:where(.page-fee-collection) .ams-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0}
:where(.page-fee-collection) .ams-label{font-size:0.82rem;font-weight:700;color:#555}
:where(.page-fee-collection) .ams-val{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-fee-collection) .ams-divider{height:1.5px;background:rgba(6,214,160,0.2);margin:8px 0}
:where(.page-fee-collection) .ams-total-label{font-size:0.9rem;font-weight:800;color:#1a1a2e}
:where(.page-fee-collection) .ams-total-val{font-family:'Rajdhani',sans-serif;font-size:1.5rem;font-weight:700;color:#06d6a0}
:where(.page-fee-collection) .mode-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}
:where(.page-fee-collection) .mode-card{border:2px solid #e0f5ef;border-radius:12px;padding:12px;text-align:center;cursor:pointer;transition:all 0.2s;background:#f8f9ff}
:where(.page-fee-collection) .mode-card:hover{border-color:#06d6a0;background:#f0fff8}
:where(.page-fee-collection) .mode-card.selected{background:linear-gradient(135deg,rgba(6,214,160,0.12),rgba(0,119,182,0.08));border-color:#06d6a0;box-shadow:0 4px 14px rgba(6,214,160,0.15)}
:where(.page-fee-collection) .mode-icon{font-size:1.6rem;margin-bottom:5px}
:where(.page-fee-collection) .mode-label{font-size:0.73rem;font-weight:800;color:#444}
:where(.page-fee-collection) .btn-pay{padding:14px;border-radius:12px;border:none;background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;letter-spacing:2px;cursor:pointer;box-shadow:0 6px 20px rgba(6,214,160,0.4);transition:all 0.2s;width:100%;margin-top:14px}
:where(.page-fee-collection) .btn-pay:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(6,214,160,0.5)}
:where(.page-fee-collection) .modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.4);backdrop-filter:blur(4px);z-index:300;align-items:center;justify-content:center;padding:16px}
:where(.page-fee-collection) .modal-overlay.show{display:flex}
:where(.page-fee-collection) .receipt{background:#fff;border-radius:20px;padding:30px;max-width:520px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,0.2);animation:rcptIn 0.35s cubic-bezier(0.34,1.56,0.64,1);max-height:90vh;overflow-y:auto}
@media print{
  :where(.page-fee-collection) .sidebar,:where(.page-fee-collection) .topbar,:where(.page-fee-collection) .search-card,:where(.page-fee-collection) .student-profile-card,:where(.page-fee-collection) .dues-card,:where(.page-fee-collection) .payment-card,:where(.page-fee-collection) .no-print{display:none!important}
  :where(.page-fee-collection) .main{margin-left:0}
  :where(.page-fee-collection) .receipt-print{display:block!important}
}
:where(.page-comm-homework,.page-fee-dashboard,.page-fee-report,.page-fee-structure,.page-teacher-mapping) .tp{background:#fdf0ff;color:#7209b7}
:where(.page-fee-report) .action-link{color:#06d6a0;font-weight:800;font-size:0.75rem;cursor:pointer;text-decoration:none;padding:4px 10px;border-radius:7px;background:#e8fff5;border:1.5px solid rgba(6,214,160,0.25);transition:all 0.2s}
:where(.page-fee-report) .action-link:hover{background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;border-color:transparent}
:where(.page-fee-report) .alert-row td{background:#fff5f5!important}
:where(.page-fee-report) .sev-high{color:#e63946;font-weight:800}
:where(.page-fee-report) .sev-med{color:#fb8500;font-weight:800}
:where(.page-fee-report) .sev-low{color:#06d6a0;font-weight:800}
:where(.page-fee-dashboard) .pay-mode{display:inline-flex;align-items:center;gap:5px;font-size:0.73rem;font-weight:800;padding:4px 10px;border-radius:8px}
:where(.page-fee-dashboard) .pm-cash{background:#e8fff5;color:#06d6a0}
:where(.page-fee-dashboard) .pm-upi{background:#eff2ff;color:#4361ee}
:where(.page-fee-dashboard) .pm-chq{background:#fff8ec;color:#fb8500}
:where(.page-fee-dashboard) .pm-online{background:#fdf0ff;color:#7209b7}
:where(.page-fee-dashboard) .amount-cell{font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700}
:where(.page-fee-dashboard) .amt-paid{color:#06d6a0}
:where(.page-fee-dashboard) .amt-pending{color:#e63946}
:where(.page-fee-dashboard) .amt-partial{color:#fb8500}
:where(.page-fee-dashboard) .ring-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
:where(.page-fee-dashboard) .ring-card{text-align:center;padding:16px;border-radius:14px;border:1.5px solid #d8f5ee;background:#fafffd}
:where(.page-fee-dashboard) .ring-val{font-family:'Rajdhani',sans-serif;font-size:1.5rem;font-weight:700;color:#1a1a2e}
:where(.page-fee-dashboard) .ring-label{font-size:0.72rem;font-weight:700;color:#aaa;margin-top:3px}
:where(.page-fee-dashboard) .def-item{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #f0faf7}
:where(.page-fee-dashboard) .def-item:last-child{border-bottom:none}
:where(.page-fee-dashboard) .def-ava{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
:where(.page-fee-dashboard) .def-name{font-size:0.84rem;font-weight:800;color:#1a1a2e}
:where(.page-fee-dashboard) .def-info{font-size:0.7rem;color:#aaa;font-weight:700}
:where(.page-fee-dashboard) .def-amt{margin-left:auto;font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#e63946}
:where(.page-fee-dashboard) .def-days{font-size:0.65rem;color:#e63946;font-weight:700;text-align:right}
:where(.page-comm-homework) .hw-due{display:flex;align-items:center;gap:5px;font-size:0.72rem;font-weight:800;margin-left:auto}
:where(.page-comm-homework) .hw-actions{display:flex;gap:5px;margin-top:10px}
:where(.page-comm-homework) .ha{padding:5px 11px;border-radius:7px;border:none;font-size:0.72rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-comm-homework) .ha:hover{transform:translateY(-1px)}
:where(.page-comm-homework) .ha-view{background:#fdf0ff;color:#7209b7;border:1.5px solid rgba(114,9,183,0.2)}
:where(.page-comm-homework) .ha-view:hover{background:linear-gradient(135deg,#f72585,#7209b7);color:#fff;border-color:transparent}
:where(.page-comm-homework) .ha-edit{background:#fff0f8;color:#f72585;border:1.5px solid rgba(247,37,133,0.2)}
:where(.page-comm-homework) .ha-edit:hover{background:linear-gradient(135deg,#f72585,#7209b7);color:#fff;border-color:transparent}
:where(.page-comm-homework) .ha-del{background:#fff0f0;color:#e63946;border:1.5px solid rgba(230,57,70,0.2)}
:where(.page-comm-homework) .ha-del:hover{background:#e63946;color:#fff;border-color:transparent}
:where(.page-comm-homework) .overdue{border-color:#ffb3b3!important;background:#fffafa!important}
:where(.page-comm-homework) .due-soon{border-color:#ffd180!important;background:#fffdf5!important}
:where(.page-comm-homework) .modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:200;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
:where(.page-comm-homework) .modal-bg.show{display:flex}
:where(.page-comm-homework) .modal{background:#fff;border-radius:20px;padding:28px;max-width:580px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.2);position:relative;animation:mIn 0.3s cubic-bezier(0.34,1.56,0.64,1)}
:where(.page-comm-homework) .modal-close{position:absolute;top:14px;right:14px;background:#f0f4ff;border:none;border-radius:8px;width:30px;height:30px;cursor:pointer;font-size:1rem;color:#888;display:flex;align-items:center;justify-content:center}
:where(.page-teacher-mapping) .to{background:#fff8ec;color:#fb8500}
:where(.page-fee-structure,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .act-grp{display:flex;gap:5px}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .abtn{padding:5px 12px;border-radius:8px;border:none;font-size:0.72rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .abtn:hover{transform:translateY(-1px)}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .ab-edit{background:#eff2ff;color:#4361ee;border:1.5px solid rgba(67,97,238,0.2)}
:where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .ab-edit:hover{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;border-color:transparent}
:where(.page-fee-structure,.page-teacher-mapping) .abtn{padding:5px 11px;border-radius:8px;border:none;font-size:0.72rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.page-teacher-mapping) .ab-edit{background:#eff2ff;color:#4361ee;border:1.5px solid rgba(67,97,238,0.2)}
:where(.page-teacher-mapping) .ab-edit:hover{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;border-color:transparent}
:where(.page-fee-structure) .ab-edit{background:#e8fff5;color:#06d6a0;border:1.5px solid rgba(6,214,160,0.25)}
:where(.page-fee-structure) .ab-edit:hover{background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;border-color:transparent}
:where(.page-fee-structure) .ab-view{background:#eff2ff;color:#4361ee;border:1.5px solid rgba(67,97,238,0.2)}
:where(.page-fee-structure) .ab-view:hover{background:linear-gradient(135deg,#4361ee,#7209b7);color:#fff;border-color:transparent}
:where(.page-fee-structure,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .ab-del{background:#fff0f0;color:#e63946;border:1.5px solid rgba(230,57,70,0.2)}
:where(.page-fee-structure,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject) .ab-del:hover{background:#e63946;color:#fff;border-color:transparent}
:where(.page-master-section) .sec-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;color:#fff}
:where(.page-master-subject) .sub-cell{display:flex;align-items:center;gap:10px}
:where(.page-master-subject) .sub-emoji{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}
:where(.page-master-session) .ab-set{background:#e8fff5;color:#06d6a0;border:1.5px solid rgba(6,214,160,0.2)}
:where(.page-master-session) .ab-set:hover{background:#06d6a0;color:#fff;border-color:transparent}
:where(.page-master-session) .active-badge{display:inline-flex;align-items:center;gap:5px;font-size:0.72rem;font-weight:800}
:where(.page-master-session) .abt-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
:where(.page-master-mapping) .subj-tags{display:flex;flex-wrap:wrap;gap:4px}
:where(.page-master-mapping) .st{padding:3px 8px;border-radius:8px;font-size:0.68rem;font-weight:800;background:#eff2ff;color:#4361ee}
:where(.page-master-class) .ab-map{background:#e8fff5;color:#06d6a0;border:1.5px solid rgba(6,214,160,0.2)}
:where(.page-master-class) .ab-map:hover{background:#06d6a0;color:#fff;border-color:transparent}
:where(.page-master-class) .cls-pill{display:inline-flex;align-items:center;gap:8px}
:where(.page-master-class) .cls-dot{width:12px;height:12px;border-radius:4px;flex-shrink:0}
:where(.page-master-class) .cls-name{font-weight:800;color:#1a1a2e}
:where(.page-master-class) .class-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-bottom:16px}
:where(.page-master-class) .class-card{border-radius:14px;padding:14px;text-align:center;cursor:pointer;transition:all 0.2s;border:2px solid transparent;position:relative}
:where(.page-master-class) .class-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,0.1)}
:where(.page-master-class) .class-card.selected-card{border-color:#4361ee;box-shadow:0 4px 18px rgba(67,97,238,0.25)}
:where(.page-master-class) .cc-num{font-family:'Rajdhani',sans-serif;font-size:2rem;font-weight:700;color:#fff;line-height:1}
:where(.page-master-class) .cc-label{font-size:0.7rem;font-weight:800;color:rgba(255,255,255,0.85);margin-top:3px}
:where(.page-master-class) .cc-subs{font-size:0.68rem;color:rgba(255,255,255,0.7);margin-top:4px}
:where(.page-attendance-view,.page-comm-homework,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-students,.page-teacher-add,.page-teacher-mapping) .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px 9px;border-radius:10px;border:2px solid #eaeeff;background:#f8f9ff;flex-shrink:0}
:where(.page-attendance-view,.page-comm-homework,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-students,.page-teacher-add,.page-teacher-mapping) .hamburger span{display:block;width:19px;height:2.5px;background:#4361ee;border-radius:3px;transition:all 0.3s}
:where(.page-fee-structure) .fee-head-icon{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
:where(.page-fee-structure) .freq-chip{display:inline-block;padding:3px 9px;border-radius:8px;font-size:0.7rem;font-weight:800}
:where(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px 9px;border-radius:10px;border:2px solid #d0f0e8;background:#f0fff8;flex-shrink:0}
:where(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure,.page-teacher-dashboard) .hamburger span{display:block;width:19px;height:2.5px;background:#06d6a0;border-radius:3px;transition:all 0.3s}
:where(.tpl-1:not(.page-user-access)) .hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
:where(.tpl-1:not(.page-user-access)) .hamburger.open span:nth-child(2){opacity:0}
:where(.tpl-1:not(.page-user-access)) .hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
:where(.tpl-1:not(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure,.page-user-access)) .overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.45);z-index:99;backdrop-filter:blur(2px)}
:where(.page-fee-collection,.page-fee-dashboard,.page-fee-report,.page-fee-structure) .overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.45);z-index:99}
:where(.tpl-1:not(.page-user-access)) .overlay.show{display:block}
@media(max-width:1024px){
  :where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-principle-dashboard,.page-students,.page-teacher-add,.page-teacher-dashboard) .sidebar{transform:translateX(-260px);transition:transform 0.3s ease;z-index:200}
  :where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-principle-dashboard,.page-students,.page-teacher-add,.page-teacher-dashboard) .sidebar.open{transform:translateX(0);box-shadow:8px 0 40px rgba(0,0,0,0.15)}
  :where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-principle-dashboard,.page-students,.page-teacher-add,.page-teacher-dashboard) .main{margin-left:0}
  :where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-principle-dashboard,.page-students,.page-teacher-add,.page-teacher-dashboard) .hamburger{display:flex}
  :where(.page-accountant-dashboard) .stat-grid,:where(.page-accountant-dashboard) .sbox-row{grid-template-columns:repeat(2,1fr)}
  :where(.page-management-dashboard) .kpi-row{grid-template-columns:repeat(3,1fr)}
  :where(.page-accountant-dashboard,.page-management-dashboard) .dg,:where(.page-accountant-dashboard,.page-management-dashboard) .dg2{grid-template-columns:1fr}
  :where(.page-students) .mini-stats{grid-template-columns:repeat(2,1fr)}
  :where(.page-hod-dashboard,.page-principle-dashboard) .stat-grid{grid-template-columns:repeat(3,1fr)}
  :where(.page-principle-dashboard) .dg,:where(.page-principle-dashboard) .dg2{grid-template-columns:1fr}
  :where(.page-principle-dashboard) .app-actions{flex-direction:column;gap:4px}
  :where(.page-hod-dashboard) .dg,:where(.page-hod-dashboard) .dg-h{grid-template-columns:1fr}
  :where(.page-hod-dashboard) .syl-label{width:110px}
  :where(.page-teacher-dashboard) .stat-grid{grid-template-columns:repeat(2,1fr)}
  :where(.page-teacher-dashboard) .dg,:where(.page-teacher-dashboard) .dg-t{grid-template-columns:1fr}
  :where(.page-teacher-dashboard) .tt{grid-template-columns:repeat(3,1fr)}
  :where(.page-teacher-dashboard) .search{width:150px}
  :where(.page-teacher-add) .form-grid{grid-template-columns:1fr 1fr}
  :where(.page-teacher-add) .form-grid-3{grid-template-columns:1fr 1fr}
}
@media(max-width:1100px){
  :where(.tpl-1:not(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-principle-dashboard,.page-students,.page-teacher-add,.page-teacher-dashboard,.page-user-access)) .sidebar{transform:translateX(-260px);transition:transform 0.3s ease;z-index:200}
  :where(.page-fee-dashboard,.page-master-class,.page-master-session) .sidebar.open{transform:translateX(0);box-shadow:8px 0 40px rgba(0,0,0,0.15)}
  :where(.page-attendance-view,.page-comm-homework,.page-fee-collection,.page-fee-report,.page-fee-structure,.page-master-mapping,.page-master-section,.page-master-subject,.page-teacher-mapping) .sidebar.open{transform:translateX(0)}
  :where(.tpl-1:not(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-principle-dashboard,.page-students,.page-teacher-add,.page-teacher-dashboard,.page-user-access)) .main{margin-left:0}
  :where(.tpl-1:not(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-principle-dashboard,.page-students,.page-teacher-add,.page-teacher-dashboard,.page-user-access)) .hamburger{display:flex}
  :where(.page-attendance-view,.page-fee-report) .stat-grid{grid-template-columns:repeat(3,1fr)}
  :where(.page-fee-dashboard) .kpi-grid,:where(.page-fee-dashboard) .qa-row{grid-template-columns:1fr 1fr}
  :where(.page-attendance-view,.page-fee-dashboard,.page-fee-report) .dg2,:where(.page-attendance-view,.page-fee-dashboard,.page-fee-report) .dg3{grid-template-columns:1fr}
  :where(.page-fee-collection) .search-row{grid-template-columns:1fr 1fr}
  :where(.page-fee-collection) .pay-grid{grid-template-columns:1fr}
  :where(.page-fee-collection) .mode-grid{grid-template-columns:1fr 1fr}
  :where(.page-fee-collection) .sp-stats{grid-template-columns:1fr 1fr}
  :where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-teacher-mapping) .stat-grid{grid-template-columns:repeat(2,1fr)}
  :where(.page-master-mapping) .mapping-workspace{grid-template-columns:1fr}
  :where(.page-fee-structure) .stat-grid{grid-template-columns:1fr 1fr}
  :where(.page-comm-homework,.page-fee-structure,.page-master-class,.page-master-section,.page-master-session,.page-master-subject,.page-teacher-mapping) .layout{grid-template-columns:1fr}
  :where(.page-teacher-mapping) .teacher-list-panel{position:static}
  :where(.page-teacher-mapping) .teacher-items{max-height:260px}
  :where(.page-comm-homework,.page-fee-structure) .form-card{position:static}
  :where(.page-comm-homework) .stat-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
  :where(.tpl-1:not(.page-user-access)) .content{padding:14px}
  :where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-principle-dashboard,.page-students,.page-teacher-dashboard) .topbar{padding:0 12px;gap:8px;height:58px}
  :where(.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-teacher-add) .topbar{padding:0 14px;gap:8px;height:60px}
  :where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-master-session,.page-principle-dashboard,.page-students,.page-teacher-dashboard) .tb-sub{display:none}
  :where(.page-students) .mini-stats{grid-template-columns:1fr 1fr}
  :where(.page-teacher-dashboard) .search{display:none}
  :where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-principle-dashboard,.page-teacher-dashboard) .panel{padding:14px}
  :where(.page-accountant-dashboard) .sbox-row{grid-template-columns:1fr!important}
  :where(.page-management-dashboard) .kpi-row{grid-template-columns:repeat(2,1fr)}
  :where(.page-management-dashboard) .met-label{width:90px;font-size:0.75rem}
  :where(.page-teacher-dashboard) .sc-val{font-size:1.85rem}
  :where(.page-teacher-dashboard) .tt{grid-template-columns:repeat(2,1fr)}
  :where(.page-teacher-add) .form-card{padding:18px}
  :where(.page-teacher-add) .form-grid,:where(.page-teacher-add) .form-grid-3{grid-template-columns:1fr}
  :where(.page-teacher-add) .doc-grid{grid-template-columns:1fr 1fr}
  :where(.page-teacher-add) .steps-bar{gap:4px}
  :where(.page-teacher-add) .step-label{display:none}
}
@media(max-width:480px){
  :where(.page-teacher-add) .photo-area{flex-direction:column}
  :where(.page-teacher-add) .steps-bar{padding:4px}
  :where(.page-teacher-add) .step{min-width:60px;padding:10px 6px}
}
@media(max-width:700px){
  :where(.tpl-3:not(.page-attendance-mark,.page-comm-notes,.page-comm-notification,.page-comm-syllabus,.page-timetable)) .topbar{padding:0 12px;height:58px}
  :where(.page-attendance-view,.page-hod-dashboard,.page-principle-dashboard) .stat-grid{grid-template-columns:repeat(2,1fr)}
  :where(.page-hod-dashboard) .tc-grid{grid-template-columns:1fr}
  :where(.page-attendance-view) .tab-btn{min-width:100px;font-size:0.76rem}
  :where(.page-attendance-view) .filter-row{gap:8px;padding:12px}
  :where(.page-fee-dashboard) .kpi-grid{grid-template-columns:1fr 1fr}
  :where(.page-fee-dashboard) .qa-row{grid-template-columns:1fr 1fr}
  :where(.page-teacher-mapping) .mapping-row{grid-template-columns:1fr 1fr;gap:8px}
  :where(.page-fee-collection) .search-row{grid-template-columns:1fr}
  :where(.page-fee-collection) .mode-grid{grid-template-columns:1fr 1fr}
  :where(.page-comm-homework,.page-fee-report,.page-fee-structure,.page-master-class,.page-master-mapping,.page-master-section,.page-master-session,.page-master-subject,.page-teacher-mapping) .stat-grid{grid-template-columns:1fr 1fr}
  :where(.page-fee-report) .tab-btn{min-width:90px;font-size:0.74rem}
  :where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .form-card{position:static}
}
@media(max-width:480px){
  :where(.page-accountant-dashboard,.page-hod-dashboard,.page-master-class,.page-master-mapping,.page-master-session,.page-principle-dashboard,.page-teacher-dashboard) .stat-grid{grid-template-columns:1fr 1fr}
  :where(.page-accountant-dashboard,.page-hod-dashboard,.page-management-dashboard,.page-principle-dashboard,.page-students,.page-teacher-dashboard) .tb-title{font-size:1.1rem}
  :where(.page-principle-dashboard) .btn-app,:where(.page-principle-dashboard) .btn-rej{font-size:0.64rem;padding:4px 7px}
  :where(.page-hod-dashboard) .syl-label{width:90px;font-size:0.73rem}
  :where(.page-master-mapping) .cls-tabs{gap:6px}
  :where(.page-master-mapping) .cls-tab{font-size:0.76rem;padding:7px 12px}
  :where(.page-master-class,.page-master-section,.page-master-session,.page-master-subject) .row2{grid-template-columns:1fr}
}
@media(max-width:700px){
  :where(.page-comm-homework,.page-fee-structure) .row2,:where(.page-comm-homework,.page-fee-structure) .row3{grid-template-columns:1fr}
}
:where(.tpl-2) .topbar-user{display:flex;align-items:center;gap:8px;cursor:pointer;padding:5px 10px;border-radius:11px;border:2px solid #eaeeff;background:#f8f9ff;transition:all .2s;flex-shrink:0}
:where(.tpl-2) .topbar-user:hover{border-color:#4361ee;background:#eff2ff}
:where(.tpl-2) .topbar-user .tu-ava{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#4361ee,#f72585);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.75rem;color:#fff;flex-shrink:0}
:where(.tpl-2) .topbar-user .tu-name{font-size:.78rem;font-weight:800;color:#333}
:where(.tpl-2) .topbar-user .tu-arr{font-size:.6rem;color:#aaa;margin-left:2px}
@media(max-width:600px){
  :where(.tpl-2) .topbar-user .tu-name,:where(.tpl-2) .topbar-user .tu-arr{display:none}
  :where(.tpl-2) .tp-panel{width:calc(100vw - 24px);right:12px}
}
@media(max-width:1000px){
  :where(.page-sa-support-tickets) .ticket-stats{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  :where(.page-sa-support-tickets) .ticket-stats{grid-template-columns:1fr 1fr}
  :where(.page-sa-admin-users,.page-sa-discount-codes,.page-sa-expired-subscriptions,.page-sa-support-tickets) .content{padding:14px}
  :where(.page-sa-discount-codes) .modal-grid{grid-template-columns:1fr}
}
:where(.page-sa-school-access) #pg-saccess .info-banner::after{content:'🔑';position:absolute;right:28px;font-size:5rem;opacity:.08}
:where(.page-user-access,.page-sa-school-access) .sa-school-bar{background:linear-gradient(135deg,#1a1a2e,#3a0ca3);border-radius:20px;padding:20px 28px;margin-bottom:20px;display:flex;align-items:center;gap:18px;position:relative;overflow:hidden}
:where(.page-user-access,.page-sa-school-access) .sa-school-bar::after{content:'🏫';position:absolute;right:28px;font-size:5rem;opacity:.07}
:where(.page-user-access,.page-sa-school-access) .sa-sb-logo{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#f72585,#fb8500);display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:900;color:#fff;flex-shrink:0;box-shadow:0 6px 18px rgba(247,37,133,.4)}
:where(.page-user-access,.page-sa-school-access) .sa-sb-name{font-family:'Rajdhani',sans-serif;font-size:1.35rem;font-weight:700;color:#fff;line-height:1.2}
:where(.page-user-access,.page-sa-school-access) .sa-sb-meta{font-size:.75rem;color:rgba(255,255,255,.6);margin-top:3px}
:where(.page-user-access,.page-sa-school-access) .sa-sb-actions{margin-left:auto;display:flex;gap:8px;flex-shrink:0;position:relative;z-index:1}
:where(.page-user-access,.page-sa-school-access) .sa-sb-btn{padding:8px 18px;border-radius:11px;border:none;font-family:'Nunito',sans-serif;font-size:.82rem;font-weight:800;cursor:pointer;transition:all .2s}
:where(.page-user-access,.page-sa-school-access) .sa-sb-btn-p{background:linear-gradient(135deg,#f72585,#7209b7);color:#fff;box-shadow:0 4px 14px rgba(247,37,133,.35)}
:where(.page-user-access,.page-sa-school-access) .sa-sb-btn-o{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.25)}
:where(.page-user-access,.page-sa-school-access) .sa-sb-btn:hover{transform:translateY(-1px)}
:where(.page-user-access,.page-sa-school-access) .access-toolbar{background:#fff;border-radius:16px;padding:14px 20px;border:1px solid #e8e0ff;margin-bottom:18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;box-shadow:0 2px 10px rgba(114,9,183,.04)}
:where(.page-user-access,.page-sa-school-access) .access-toolbar .spacer{flex:1}
:where(.page-user-access,.page-sa-school-access) .sel-count{font-size:.82rem;font-weight:800;color:#7209b7;background:#f3f0ff;padding:6px 14px;border-radius:10px}
:where(.page-user-access,.page-sa-school-access) .acc-section{background:#fff;border-radius:18px;border:1px solid #e8e0ff;margin-bottom:14px;overflow:hidden;box-shadow:0 2px 12px rgba(114,9,183,.04)}
:where(.page-user-access,.page-sa-school-access) .acc-sec-head{display:flex;align-items:center;gap:12px;padding:13px 20px;background:linear-gradient(135deg,#f8f6ff,#fff0f8);border-bottom:1px solid #f0ecff;cursor:pointer;user-select:none}
:where(.page-user-access,.page-sa-school-access) .acc-sec-head:hover{background:linear-gradient(135deg,#f0ecff,#ffe8f5)}
:where(.page-user-access,.page-sa-school-access) .acc-sec-icon{font-size:1.1rem;width:22px;text-align:center}
:where(.page-user-access,.page-sa-school-access) .acc-sec-title{font-family:'Rajdhani',sans-serif;font-size:1.05rem;font-weight:700;color:#1a1a2e;flex:1}
:where(.page-user-access,.page-sa-school-access) .acc-sec-toggle{font-size:.72rem;font-weight:800;color:#7209b7;background:#f3f0ff;padding:3px 10px;border-radius:8px;border:none;font-family:'Nunito',sans-serif;cursor:pointer;margin-left:8px}
:where(.page-user-access,.page-sa-school-access) .acc-sec-toggle:hover{background:#7209b7;color:#fff}
:where(.page-user-access,.page-sa-school-access) .sec-chk{width:18px;height:18px;accent-color:#7209b7;cursor:pointer;flex-shrink:0}
:where(.page-user-access,.page-sa-school-access) .acc-sec-body{padding:16px 20px}
:where(.page-user-access,.page-sa-school-access) .sub-section-label{font-size:.66rem;font-weight:800;color:#f72585;letter-spacing:2px;text-transform:uppercase;margin:12px 0 10px;display:flex;align-items:center;gap:8px}
:where(.page-user-access,.page-sa-school-access) .sub-section-label::before,:where(.page-user-access,.page-sa-school-access) .sub-section-label::after{content:'';flex:1;height:1.5px;background:linear-gradient(90deg,rgba(247,37,133,.2),transparent)}
:where(.page-user-access,.page-sa-school-access) .sub-section-label::after{background:linear-gradient(90deg,transparent,rgba(247,37,133,.2))}
:where(.page-user-access,.page-sa-school-access) .menu-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
:where(.page-user-access,.page-sa-school-access) .menu-item{display:flex;align-items:center;gap:9px;padding:9px 12px;border-radius:10px;background:#f8f6ff;border:1.5px solid #ede8ff;cursor:pointer;transition:all .18s}
:where(.page-user-access,.page-sa-school-access) .menu-item:hover{background:#f0ecff;border-color:#c5b4f0}
:where(.page-user-access,.page-sa-school-access) .menu-item.checked{background:linear-gradient(135deg,#f0fff8,#e8fff5);border-color:rgba(6,214,160,.35)}
:where(.page-user-access,.page-sa-school-access) .menu-item input[type=checkbox]{width:16px;height:16px;accent-color:#06d6a0;cursor:pointer;flex-shrink:0}
:where(.page-user-access,.page-sa-school-access) .menu-item label{font-size:.79rem;font-weight:700;color:#444;cursor:pointer;line-height:1.3}
:where(.page-user-access,.page-sa-school-access) .menu-item.checked label{color:#1a1a2e}
:where(.page-user-access,.page-sa-school-access) .save-bar{background:#fff;border-radius:16px;padding:16px 24px;border:1px solid #e8e0ff;margin-top:6px;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 4px 18px rgba(114,9,183,.08)}
:where(.page-user-access,.page-sa-school-access) .save-bar-info{font-size:.82rem;color:#888;font-weight:700}
:where(.page-user-access,.page-sa-school-access) .save-bar-info strong{color:#1a1a2e}
:where(.page-user-access,.page-sa-school-access) .btn-save-acc{padding:12px 32px;border-radius:13px;border:none;background:linear-gradient(135deg,#f72585,#7209b7,#4361ee);color:#fff;font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;letter-spacing:1.5px;cursor:pointer;box-shadow:0 6px 20px rgba(247,37,133,.35);transition:all .25s}
:where(.page-user-access,.page-sa-school-access) .btn-save-acc:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(247,37,133,.45)}
@media(max-width:900px){
  :where(.page-user-access,.page-sa-school-access) .menu-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:700px){
  :where(.page-user-access,.page-sa-school-access) .menu-grid{grid-template-columns:repeat(2,1fr)}
  :where(.page-user-access,.page-sa-school-access) .sa-sb-actions{display:none}
}
@media(max-width:480px){
  :where(.page-user-access,.page-sa-school-access) .menu-grid{grid-template-columns:1fr 1fr}
}
:where(.tpl-1) .tp-panel{position:fixed;top:74px;right:16px;width:340px;background:#fff;border-radius:18px;box-shadow:0 20px 60px rgba(67,97,238,.18),0 0 0 1px rgba(67,97,238,.08);z-index:9999;display:none;overflow:hidden;animation:tpIn .2s cubic-bezier(.34,1.56,.64,1)}
:where(.tpl-1) .tp-panel.open{display:block}
:where(.tpl-1) .tp-head{padding:14px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f0f4ff}
:where(.tpl-1) .tp-title{font-family:"Rajdhani",sans-serif;font-size:1rem;font-weight:700;color:#1a1a2e}
:where(.tpl-1) .tp-action{font-size:.72rem;font-weight:800;color:#4361ee;cursor:pointer;background:none;border:none;padding:4px 8px;border-radius:7px}
:where(.tpl-1) .tp-action:hover{background:#eff2ff}
:where(.tpl-1) .notif-list{max-height:320px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#e0d8ff transparent}
:where(.tpl-1) .notif-item{display:flex;align-items:flex-start;gap:11px;padding:12px 18px;border-bottom:1px solid #f8f9ff;transition:background .15s;cursor:pointer}
:where(.tpl-1) .notif-item:hover{background:#f8f9ff}
:where(.tpl-1) .notif-item.unread{background:#f0f4ff}
:where(.tpl-1) .notif-item.unread:hover{background:#e8eeff}
:where(.tpl-1) .ni-icon{width:36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
:where(.tpl-1) .ni-text{font-size:.8rem;font-weight:700;color:#333;line-height:1.4}
:where(.tpl-1) .ni-sub{font-size:.7rem;color:#aaa;margin-top:2px;font-weight:600}
:where(.tpl-1) .ni-dot{width:7px;height:7px;border-radius:50%;background:#4361ee;margin-top:6px;flex-shrink:0}
:where(.tpl-1) .notif-footer{padding:12px 18px;border-top:1px solid #f0f4ff;text-align:center}
:where(.tpl-1) .notif-footer a{font-size:.78rem;font-weight:800;color:#4361ee;text-decoration:none}
:where(.tpl-1) .notif-footer a:hover{text-decoration:underline}
:where(.tpl-1) .set-section{padding:10px 10px 4px;font-size:.6rem;font-weight:800;color:#ccc;letter-spacing:2px;text-transform:uppercase}
:where(.tpl-1) .set-item{display:flex;align-items:center;gap:10px;padding:10px 18px;cursor:pointer;transition:background .15s;text-decoration:none;color:#444;font-size:.84rem;font-weight:700}
:where(.tpl-1) .set-item:hover{background:#f8f9ff;color:#4361ee}
:where(.tpl-1) .set-icon{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
:where(.tpl-1) .set-item .set-arr{margin-left:auto;font-size:.7rem;color:#ccc}
:where(.tpl-1) .set-divider{height:1px;background:#f0f4ff;margin:4px 0}
:where(.tpl-1) .set-user{padding:14px 18px;background:linear-gradient(135deg,#f0f4ff,#fdf0ff);border-top:2px solid #eaeeff;display:flex;align-items:center;gap:11px}
:where(.tpl-1) .su-ava{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#4361ee,#f72585);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem;color:#fff;flex-shrink:0}
:where(.tpl-1) .su-name{font-weight:800;color:#1a1a2e;font-size:.84rem}
:where(.tpl-1) .su-role{font-size:.68rem;color:#aaa}
:where(.tpl-1) .su-logout{margin-left:auto;padding:7px 14px;border-radius:10px;border:none;background:linear-gradient(135deg,#f72585,#e63946);color:#fff;font-family:"Nunito",sans-serif;font-size:.76rem;font-weight:800;cursor:pointer;transition:all .2s;white-space:nowrap;text-decoration:none;display:flex;align-items:center;gap:5px}
:where(.tpl-1) .su-logout:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(247,37,133,.4)}
:where(.tpl-1) .toggle-row{display:flex;align-items:center;gap:10px;padding:10px 18px;cursor:pointer}
:where(.tpl-1) .toggle-label{font-size:.84rem;font-weight:700;color:#444;flex:1}
:where(.tpl-1) .toggle{width:42px;height:24px;background:#e0d8ff;border-radius:12px;position:relative;transition:background .3s;flex-shrink:0;cursor:pointer}
:where(.tpl-1) .toggle.on{background:linear-gradient(135deg,#4361ee,#7209b7)}
:where(.tpl-1) .toggle::after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;top:3px;left:3px;transition:left .25s;box-shadow:0 2px 5px rgba(0,0,0,.15)}
:where(.tpl-1) .toggle.on::after{left:21px}
:where(.tpl-1) .topbar-user{display:flex;align-items:center;gap:8px;cursor:pointer;padding:5px 10px;border-radius:11px;border:2px solid #eaeeff;background:#f8f9ff;transition:all .2s;flex-shrink:0}
:where(.tpl-1) .topbar-user:hover{border-color:#4361ee;background:#eff2ff}
:where(.tpl-1) .topbar-user .tu-ava{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#4361ee,#f72585);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.75rem;color:#fff;flex-shrink:0}
:where(.tpl-1) .topbar-user .tu-name{font-size:.78rem;font-weight:800;color:#333}
:where(.tpl-1) .topbar-user .tu-arr{font-size:.6rem;color:#aaa;margin-left:2px}
@media(max-width:600px){
  :where(.tpl-1) .topbar-user .tu-name,:where(.tpl-1) .topbar-user .tu-arr{display:none}
  :where(.tpl-1) .tp-panel{width:calc(100vw - 24px);right:12px}
}


/* ===================================================================
   ADD FORMS – Gate Pass Add / Visitor Add  (.uses-addform)
   =================================================================== */
:where(.uses-addform) .is-hidden{display:none!important}
:where(.uses-addform) .bc .cur{color:var(--c-primary);font-weight:700}
:where(.uses-addform) .af-layout{display:grid;grid-template-columns:1fr 340px;gap:20px;align-items:start}
:where(.uses-addform) .af-side{position:sticky;top:calc(var(--topbar-h,64px) + 16px);display:flex;flex-direction:column;gap:14px}
:where(.uses-addform) .af-sec{font-family:'Rajdhani',sans-serif;font-size:0.95rem;font-weight:700;color:var(--c-text,#1a1a2e);margin:6px 0 10px;padding-left:10px;border-left:3px solid var(--c-primary)}
:where(.uses-addform) .row3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
:where(.uses-addform) .type-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
:where(.uses-addform) .type-tab{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border-radius:12px;border:2px solid var(--c-border);background:var(--c-input-bg);font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:800;color:#888;cursor:pointer;transition:all 0.2s}
:where(.uses-addform) .type-tab .tt-ic{font-size:1.4rem}
:where(.uses-addform) .type-tab:hover{border-color:var(--c-primary)}
:where(.uses-addform) .type-tab.active{background:var(--c-grad);color:#fff;border-color:transparent;box-shadow:0 6px 16px rgba(0,0,0,0.12)}
:where(.uses-addform) .chk-row{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:13px}
:where(.uses-addform) .chk{display:flex;align-items:center;gap:6px;margin:0;font-size:0.8rem;font-weight:700;color:#555;text-transform:none;letter-spacing:0;cursor:pointer}
:where(.uses-addform) .chk input{accent-color:var(--c-primary);width:16px;height:16px}
:where(.uses-addform) .file-input{display:none}
:where(.uses-addform) .upload-box{display:flex;align-items:center;gap:12px;margin:0;padding:12px;border:2px dashed var(--c-border);border-radius:12px;cursor:pointer;text-transform:none;letter-spacing:0;transition:border-color 0.2s}
:where(.uses-addform) .upload-box:hover{border-color:var(--c-primary)}
:where(.uses-addform) .ub-thumb{width:54px;height:54px;border-radius:10px;background:var(--c-input-bg);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;overflow:hidden}
:where(.uses-addform) .ub-thumb img{width:100%;height:100%;object-fit:cover}
:where(.uses-addform) .ub-text{font-size:0.78rem;font-weight:700;color:#aaa}
:where(.uses-addform) .ub-text strong{display:block;color:#555}
:where(.uses-addform) .err{border-color:var(--c-danger,#e63946)!important;box-shadow:0 0 0 3px rgba(230,57,70,0.12)!important}
:where(.uses-addform) .hint{font-size:0.7rem;color:#aaa;margin-top:4px}
/* pass / slip preview */
:where(.uses-addform) .pass-card{background:var(--c-white,#fff);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--c-border)}
:where(.uses-addform) .pc-head{background:var(--c-grad);color:#fff;padding:14px 16px;display:flex;align-items:center;gap:10px}
:where(.uses-addform) .pc-logo{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,0.2);display:flex;align-items:center;justify-content:center;font-size:1.2rem}
:where(.uses-addform) .pc-school{font-family:'Rajdhani',sans-serif;font-size:1.05rem;font-weight:700;line-height:1.1}
:where(.uses-addform) .pc-kind{font-size:0.68rem;font-weight:800;letter-spacing:1px;text-transform:uppercase;opacity:0.85}
:where(.uses-addform) .pc-body{padding:14px 16px}
:where(.uses-addform) .pc-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}
:where(.uses-addform) .pc-photo{width:56px;height:56px;border-radius:12px;background:var(--c-input-bg);border:2px solid var(--c-border);display:flex;align-items:center;justify-content:center;font-size:1.6rem;overflow:hidden;flex-shrink:0}
:where(.uses-addform) .pc-photo img{width:100%;height:100%;object-fit:cover}
:where(.uses-addform) .pc-name{font-size:0.95rem;font-weight:800;color:#1a1a2e}
:where(.uses-addform) .pc-no{font-family:'Rajdhani',sans-serif;font-size:0.9rem;font-weight:700;color:var(--c-primary)}
:where(.uses-addform) .pc-row{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px dashed var(--c-border);font-size:0.78rem}
:where(.uses-addform) .pc-row:last-child{border-bottom:none}
:where(.uses-addform) .pc-k{color:#999;font-weight:700}
:where(.uses-addform) .pc-v{color:#333;font-weight:800;text-align:right;word-break:break-word}
:where(.uses-addform) .pc-foot{display:flex;justify-content:space-between;gap:10px;padding:18px 16px 12px;font-size:0.68rem;font-weight:700;color:#aaa}
:where(.uses-addform) .pc-sign{flex:1;text-align:center;border-top:1.5px solid #ccc;padding-top:4px}
:where(.uses-addform) .side-note{font-size:0.74rem;color:#888;background:var(--c-input-bg);border:1px solid var(--c-border);border-radius:12px;padding:10px 12px;line-height:1.5}
:where(.uses-addform) .btn-print{padding:11px 16px;border-radius:11px;border:2px solid var(--c-primary);background:var(--c-white,#fff);color:var(--c-primary);font-family:'Nunito',sans-serif;font-size:0.86rem;font-weight:800;cursor:pointer;transition:all 0.2s}
:where(.uses-addform) .btn-print:hover{background:var(--c-grad);color:#fff;border-color:transparent}
:where(.uses-addform) a.btn-cancel{display:inline-flex;align-items:center;text-decoration:none}
@media(max-width:1000px){
  :where(.uses-addform) .af-layout{grid-template-columns:1fr}
  :where(.uses-addform) .af-side{position:static}
}
@media(max-width:600px){
  :where(.uses-addform) .row3,:where(.uses-addform) .row2{grid-template-columns:1fr}
  :where(.uses-addform) .btn-row{flex-wrap:wrap}
}
@media print{
  :where(.uses-addform) .main{margin-left:0!important}
  :where(.uses-addform) .content{padding:0}
  :where(.uses-addform) .af-form,:where(.uses-addform) .side-note,:where(.uses-addform) .toast{display:none!important}
  :where(.uses-addform) .af-layout{display:block}
  :where(.uses-addform) .pass-card{max-width:380px;margin:0 auto;box-shadow:none;border:1.5px solid #999;-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* ===================================================================
   COMM EVENTS (.page-comm-events)
   =================================================================== */
:where(.page-comm-events) input[type=time]{width:100%;background:#f0fff8;border:2px solid #c8f7e4;border-radius:10px;padding:9px 12px;color:#333;font-family:'Nunito',sans-serif;font-size:0.86rem;outline:none;transition:all 0.2s}
:where(.page-comm-events) input[type=time]:focus{border-color:#06d6a0;background:#fff;box-shadow:0 0 0 3px rgba(6,214,160,0.1)}
:where(.page-comm-events) textarea{resize:vertical;min-height:80px}
:where(.page-comm-events) .bc .cur{color:#06d6a0}
:where(.page-comm-events) .chk-row{display:flex;gap:14px;flex-wrap:wrap}
:where(.page-comm-events) .chk{display:flex;align-items:center;gap:5px;margin:0;font-size:0.8rem;font-weight:700;color:#555;text-transform:none;letter-spacing:0;cursor:pointer}
:where(.page-comm-events) .file-input{display:none}
:where(.page-comm-events) .upload-box{display:block;border:2px dashed #c8f7e4;border-radius:10px;padding:12px;text-align:center;cursor:pointer;text-transform:none;letter-spacing:0;transition:border-color 0.2s}
:where(.page-comm-events) .upload-box:hover{border-color:#06d6a0}
:where(.page-comm-events) .ub-icon{font-size:1.5rem;margin-bottom:4px}
:where(.page-comm-events) .ub-text{font-size:0.75rem;color:#aaa;font-weight:700}
:where(.page-comm-events) .list-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-wrap:wrap;gap:8px}
:where(.page-comm-events) .list-title{font-family:'Rajdhani',sans-serif;font-size:1.1rem;font-weight:700;color:#1a1a2e}
:where(.page-comm-events) .list-tools{display:flex;gap:8px;align-items:center}
:where(.page-comm-events) .count-pill{font-size:0.75rem;color:#aaa;font-weight:700;background:#f8f9ff;padding:4px 12px;border-radius:20px;border:1px solid #eaeeff}
:where(.page-comm-events) .empty{text-align:center;padding:40px;color:#bbb}
:where(.page-comm-events) .empty-ic{font-size:2.5rem}
:where(.page-comm-events) .empty-tx{font-weight:700;margin-top:8px}
:where(.page-comm-events) .ev-meta{font-size:0.72rem;color:#888;font-weight:700}
:where(.page-comm-events) .ty-pill{padding:3px 9px;border-radius:20px;font-size:0.68rem;font-weight:800}
:where(.page-comm-events) .sy-icon,:where(.page-comm-events) .m-icon{border:1.5px solid transparent}
:where(.page-comm-events) .m-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}
:where(.page-comm-events) .m-icon{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.4rem}
:where(.page-comm-events) .m-title{font-family:'Rajdhani',sans-serif;font-size:1.3rem;font-weight:700;color:#1a1a2e}
:where(.page-comm-events) .m-sub{font-size:0.78rem;color:#aaa;margin-top:2px}
:where(.page-comm-events) .m-row{display:flex;gap:10px;padding:7px 10px;border-radius:8px;background:#f0fff8;border:1.5px solid #c8f7e4;margin-bottom:6px;font-size:0.83rem}
:where(.page-comm-events) .m-k{min-width:90px;font-weight:800;color:#888}
:where(.page-comm-events) .m-v{font-weight:700;color:#333}
:where(.page-comm-events) .m-lbl{font-size:0.82rem;font-weight:800;color:#555;margin:12px 0 6px}
:where(.page-comm-events) .m-desc{font-size:0.84rem;color:#444;line-height:1.5}
:where(.page-comm-events) .toast-ev{position:fixed;top:20px;right:20px;background:linear-gradient(135deg,#06d6a0,#0077b6);color:#fff;padding:14px 22px;border-radius:13px;z-index:9999;font-family:Nunito,sans-serif;font-weight:800;font-size:0.9rem;box-shadow:0 8px 28px rgba(6,214,160,0.4);max-width:300px;transition:opacity 0.4s}
:where(.page-comm-events) .toast-ev.fade{opacity:0}
/* event type colours (icon box + pill) */
:where(.page-comm-events) .ty-academic{background:#4361ee18;border-color:#4361ee44;color:#4361ee}
:where(.page-comm-events) .ty-sports{background:#06d6a018;border-color:#06d6a044;color:#06d6a0}
:where(.page-comm-events) .ty-cultural{background:#f7258518;border-color:#f7258544;color:#f72585}
:where(.page-comm-events) .ty-meeting{background:#fb850018;border-color:#fb850044;color:#fb8500}
:where(.page-comm-events) .ty-holiday{background:#e6394618;border-color:#e6394644;color:#e63946}
:where(.page-comm-events) .ty-competition{background:#7209b718;border-color:#7209b744;color:#7209b7}
:where(.page-comm-events) .ty-other{background:#0077b618;border-color:#0077b644;color:#0077b6}
:where(.page-comm-events) .sy-body{flex:1;min-width:0}
