@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";:root{--primary: #2563eb;--primary-light: #eff6ff;--accent: #f59e0b;--success: #10b981;--error: #ef4444;--warning: #f59e0b;--text-main: #0f172a;--text-muted: #64748b;--bg-main: #f8fafc;--bg-card: #ffffff;--bg-hover: #f1f5f9;--border: #e2e8f0;--radius: 16px;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--sidebar-width: 280px;--sidebar-collapsed-width: 80px}.dark-theme{--bg-main: #020617;--bg-card: #0f172a;--bg-hover: #1e293b;--text-main: #f8fafc;--text-muted: #94a3b8;--border: #334155;--primary-light: rgba(37, 99, 235, .15);--shadow: 0 4px 6px -1px rgba(0, 0, 0, .4)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,sans-serif;background:var(--bg-main);color:var(--text-main);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.text-success{color:var(--success)}.text-error{color:var(--error)}.text-warning{color:var(--warning)}.text-primary{color:var(--primary)}.text-muted{color:var(--text-muted)}.card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border)}.fade-in{animation:fadeIn .3s ease-in}.loader-container{display:flex;justify-content:center;align-items:center;min-height:400px}.loader{width:40px;height:40px;border:4px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-screen{display:flex;justify-content:center;align-items:center;height:100vh;font-size:1.25rem;font-weight:600;color:var(--text-muted)}.p-primary-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--primary);color:#fff;border:none;border-radius:10px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s}.p-primary-btn:hover{background:#1d4ed8;transform:translateY(-2px);box-shadow:var(--shadow)}.p-primary-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.p-primary-btn.sm{padding:6px 14px;font-size:.8rem}.p-primary-btn.full-width{width:100%;justify-content:center}.p-secondary-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#fff;color:var(--text-main);border:1px solid var(--border);border-radius:10px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s}.p-secondary-btn:hover{border-color:var(--primary);color:var(--primary)}.p-secondary-btn.sm{padding:6px 14px;font-size:.8rem}.p-discard-btn{padding:10px 20px;background:transparent;color:var(--text-muted);border:1px solid var(--border);border-radius:10px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s}.p-discard-btn:hover{background:#f1f5f9}.text-btn{background:transparent;border:none;color:var(--primary);font-weight:600;font-size:.85rem;cursor:pointer}.text-btn:hover{text-decoration:underline}.p-form-group{display:flex;flex-direction:column;gap:8px}.p-form-group input,.p-form-group select,.p-form-group textarea{padding:10px 14px;border:1px solid var(--border);border-radius:8px;font-size:.9rem;font-family:inherit;transition:all .2s}.p-form-group input:focus,.p-form-group select:focus,.p-form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.p-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.p-help-text{font-size:.75rem;color:var(--text-muted);margin-top:4px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .2s}.modal-content-premium{max-width:600px;width:90%;max-height:90vh;overflow-y:auto;padding:32px;animation:slideUp .3s}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-actions-premium{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.header-info h2{font-size:1.75rem;font-weight:700;margin-bottom:4px}.header-info p{color:var(--text-muted);font-size:.95rem}.card-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #f1f5f9}.card-header h3{font-size:1.1rem;font-weight:700;display:flex;align-items:center;gap:10px}.section-header{display:flex;justify-content:space-between;align-items:center}.section-header h3{font-size:1.1rem;font-weight:700;display:flex;align-items:center;gap:10px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px;text-align:center;color:var(--text-muted)}.empty-state h3{margin-top:16px;font-size:1.25rem;color:var(--text-main)}.empty-state p{margin-top:8px;max-width:400px}@media(max-width:1024px){:root{--sidebar-width: 80px}}@media(max-width:768px){:root{--radius: 12px}.p-form-grid{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{width:100%;flex-direction:column}.header-actions button{width:100%;justify-content:center}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius);background:#fff}table{min-width:700px}.modal-content-premium{width:95%;padding:24px}}@media(pointer:coarse){.p-primary-btn,.p-secondary-btn,.nav-item-v2,.icon-btn-v2{min-height:48px}}.t-container{width:100%;overflow-x:auto;background:#fff;border-radius:12px;border:1px solid var(--border)}.sidebar-professional{width:var(--sidebar-width);height:100vh;background:#fff;border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;top:0;left:0;z-index:102;transition:all .3s cubic-bezier(.4,0,.2,1)}.sidebar-brand{padding:24px;height:70px;display:flex;align-items:center;border-bottom:1px solid #f8fafc}.brand-header-flex{display:flex;justify-content:space-between;align-items:center;width:100%}.brand-logo-group{display:flex;align-items:center;gap:12px}.brand-icon{width:32px;height:32px;background:var(--primary);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.inner-icon{width:14px;height:14px;background:#fff;clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%)}.sidebar-brand h3{font-size:1.25rem;font-weight:700;color:var(--text-main);white-space:nowrap;overflow:hidden}.sidebar-nav-v2{flex:1;padding:24px 16px;overflow-y:auto}.nav-section label{font-size:.7rem;font-weight:700;color:var(--text-muted);letter-spacing:.05em;margin-bottom:16px;display:block;padding-left:12px}.nav-item-v2{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:10px;color:var(--text-muted);text-decoration:none;font-size:.95rem;font-weight:500;transition:all .2s;margin-bottom:4px;white-space:nowrap}.nav-item-v2:hover{background:#f1f5f9;color:var(--primary)}.nav-item-v2.active{background:var(--primary-light);color:var(--primary);font-weight:600}.nav-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-footer{padding:20px 16px;border-top:1px solid #f1f5f9}.user-profile-mini{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:8px;overflow:hidden}.user-profile-mini img{width:36px;height:36px;border-radius:50%;flex-shrink:0}.user-text{display:flex;flex-direction:column;overflow:hidden}.user-text strong{font-size:.85rem;color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.user-text span{font-size:.75rem;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.logout-btn-v2{width:100%;display:flex;align-items:center;gap:12px;padding:10px 16px;border-radius:8px;color:var(--error);background:#fef2f2;font-size:.9rem;font-weight:600;border:none;cursor:pointer;transition:all .2s}.logout-btn-v2:hover{background:#fee2e2}@media(max-width:1024px){.nav-text,.sidebar-brand h3,.user-text,.logout-btn-v2 span{display:none}.sidebar-brand,.user-profile-mini,.logout-btn-v2{justify-content:center}.nav-item-v2{justify-content:center;padding:12px}.nav-section label{text-align:center;padding-left:0}}@media(max-width:768px){.sidebar-professional{width:280px;transform:translate(-100%)}.sidebar-professional.mobile-open{transform:translate(0);box-shadow:20px 0 50px #0000001a}.nav-text,.sidebar-brand h3,.user-text,.logout-btn-v2 span{display:block}.sidebar-brand,.user-profile-mini,.logout-btn-v2{justify-content:flex-start}.nav-item-v2{justify-content:flex-start;padding:12px 16px}.nav-section label{text-align:left;padding-left:12px}}.toast-container{position:fixed;top:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast-item{pointer-events:auto;min-width:300px;max-width:450px;background:#fff;border-radius:12px;padding:16px;display:flex;align-items:center;gap:12px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;border-left:5px solid #e2e8f0;position:relative}.toast-item.success{border-left-color:#22c55e}.toast-item.error{border-left-color:#ef4444}.toast-item.warning{border-left-color:#f59e0b}.toast-item.info{border-left-color:#3b82f6}.toast-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.success .toast-icon{color:#22c55e}.error .toast-icon{color:#ef4444}.warning .toast-icon{color:#f59e0b}.info .toast-icon{color:#3b82f6}.toast-content{flex-grow:1;font-size:.95rem;font-weight:500;color:#1e293b;line-height:1.4}.toast-close{flex-shrink:0;background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:6px;transition:all .2s}.toast-close:hover{background:#f1f5f9;color:#475569}.calendar-toggle{display:flex;align-items:center;gap:8px;padding:6px 12px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;font-size:.85rem;font-weight:600;color:#64748b;position:relative;-webkit-user-select:none;user-select:none;transition:all .2s ease}.calendar-toggle.interactive:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000000d}.calendar-toggle.ethiopian{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.lock-badge{opacity:.7;margin-left:2px;color:#94a3b8}.calendar-toggle.gregorian{background:#f0fdf4;border-color:#bbf7d0;color:#16a34a}.notification-wrapper{position:relative}.notif-dropdown{position:absolute;top:calc(100% + 15px);right:0;width:360px;max-height:500px;display:flex;flex-direction:column;z-index:1000;box-shadow:0 10px 30px #00000026;border-radius:20px;overflow:hidden}.notif-header{padding:20px;background:#fff;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:center}.notif-header h3{font-size:1.1rem;font-weight:700;margin:0}.unread-badge{background:var(--error);color:#fff;font-size:.75rem;font-weight:700;padding:2px 10px;border-radius:20px}.notif-body{flex:1;overflow-y:auto;background:#fff;max-height:400px}.notif-item{padding:16px 20px;display:flex;gap:16px;border-bottom:1px solid #f8fafc;transition:background .2s;position:relative}.notif-item:hover{background:#f8fafc}.notif-item.unread{background:#2563eb05}.notif-indicator{width:4px;height:100%;position:absolute;left:0;top:0;background:transparent}.notif-item.unread .notif-indicator{background:var(--primary)}.notif-item.important .notif-indicator{background:var(--error)}.notif-content{flex:1}.notif-title-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:4px}.notif-title-row strong{font-size:.95rem;color:var(--text-main)}.mark-read-btn{background:none;border:none;color:var(--primary);font-size:.75rem;font-weight:700;cursor:pointer;padding:0}.notif-content p{font-size:.85rem;color:var(--text-muted);line-height:1.4;margin-bottom:8px}.notif-meta{display:flex;align-items:center;gap:12px;font-size:.75rem;color:var(--text-muted)}.priority-tag{background:#fef2f2;color:#dc2626;padding:1px 6px;border-radius:4px;font-weight:700;font-size:.7rem}.empty-notif{padding:60px 40px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--text-muted)}.notif-footer{padding:15px;text-align:center;background:#f8fafc;border-top:1px solid #f1f5f9}.notif-footer button{background:none;border:1px solid var(--border);padding:6px 20px;border-radius:8px;font-size:.85rem;font-weight:600;color:var(--text-muted);cursor:pointer}@media(max-width:480px){.notif-dropdown{position:fixed;top:70px;left:20px;right:20px;width:auto}}.topbar-v2{height:70px;background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #e2e8f0;padding:0 40px;display:flex;align-items:center;position:fixed;top:0;left:0;right:0;z-index:101;transition:all .3s ease}.topbar-content{width:100%;display:flex;justify-content:space-between;align-items:center;max-width:1600px;margin:0 auto}.topbar-left{display:flex;align-items:center;gap:20px}.mobile-menu-btn{display:none;background:#f8fafc;border:1px solid #e2e8f0;color:#475569;width:40px;height:40px;border-radius:10px;cursor:pointer;transition:all .2s}.mobile-menu-btn:hover{background:#eff6ff;color:var(--primary);border-color:#dbeafe}.breadcrumb{font-size:.85rem;color:#94a3b8;font-weight:500}.breadcrumb strong{color:#0f172a;font-weight:700}.topbar-right{display:flex;align-items:center;gap:32px}.search-v2{display:flex;align-items:center;gap:12px;background:#f1f5f9;padding:8px 20px;border-radius:14px;width:320px;border:1px solid transparent;transition:all .2s}.search-v2:focus-within{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a}.search-v2 input{border:none;background:transparent;font-size:.9rem;width:100%;outline:none;color:#1e293b;font-family:inherit}.topbar-icons{display:flex;align-items:center;gap:12px}.icon-btn-v2{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#64748b;position:relative;border:1px solid transparent;background:transparent;cursor:pointer;transition:all .2s}.icon-btn-v2:hover{background:#f8fafc;color:var(--primary);border-color:#f1f5f9}.icon-btn-v2 .dot{position:absolute;top:10px;right:10px;width:8px;height:8px;background:#ef4444;border:2px solid white;border-radius:50%}@media(max-width:1200px){.search-v2{width:240px}.topbar-v2{padding:0 24px}}@media(max-width:768px){.topbar-v2{height:64px;padding:0 16px}.mobile-menu-btn{display:flex;align-items:center;justify-content:center}.search-v2,.breadcrumb{display:none}.topbar-right{gap:12px}}.layout-container{display:flex;flex-direction:column;min-height:100vh}.layout-body{display:flex;flex:1;margin-top:70px}.main-content{flex:1;padding:32px;margin-left:var(--sidebar-width);transition:all .3s ease;background:var(--bg-main)}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0f172a66;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;opacity:0;transition:opacity .3s ease}.sidebar-overlay.show{display:block;opacity:1}@media(max-width:1024px){.main-content{padding:24px}}@media(max-width:768px){.main-content{margin-left:0;padding:20px 16px}.layout-body{margin-top:60px}}:root{--landing-primary: #2563eb;--landing-primary-dark: #1d4ed8;--landing-bg: #f8fafc;--landing-text: #0f172a;--landing-muted: #64748b;--section-padding: 100px 24px;--card-shadow: 0 10px 30px -5px rgba(0, 0, 0, .05)}.landing-page{background:#fff;font-family:Outfit,sans-serif;color:var(--landing-text);overflow-x:hidden}.landing-nav{position:fixed;top:0;left:0;right:0;background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #e2e8f0;z-index:1000;transition:all .3s}.nav-container{max-width:1280px;margin:0 auto;padding:14px 24px;display:flex;justify-content:space-between;align-items:center}.nav-brand{display:flex;align-items:center;gap:12px;font-size:1.35rem;font-weight:850;color:var(--landing-primary);cursor:pointer;letter-spacing:-.01em}.nav-links{display:flex;align-items:center;gap:32px}.nav-text-link{background:none;border:none;color:var(--landing-text);font-weight:600;font-size:.95rem;cursor:pointer;transition:color .2s;font-family:inherit}.nav-text-link:hover{color:var(--landing-primary)}.nav-login-btn{padding:10px 24px;background:var(--landing-primary);color:#fff;border:none;border-radius:12px;font-weight:700;cursor:pointer;transition:all .3s;box-shadow:0 4px 12px #2563eb26}.nav-login-btn:hover{background:var(--landing-primary-dark);transform:translateY(-2px);box-shadow:0 8px 20px #2563eb40}.mobile-toggle{display:none;background:transparent;border:none;cursor:pointer;z-index:1001}.hamburger{width:24px;height:18px;position:relative;display:flex;flex-direction:column;justify-content:space-between}.hamburger span{display:block;width:100%;height:2px;background:var(--landing-text);border-radius:2px;transition:all .3s}.hamburger.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.hero-section{padding:160px 24px 80px;background:radial-gradient(circle at 80% 20%,#eff6ff,transparent 40%),#fff}.hero-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:64px;align-items:center}@media(min-width:1024px){.hero-container{grid-template-columns:1.1fr .9fr}}.hero-title{font-size:clamp(2.75rem,8vw,4.25rem);font-weight:950;line-height:1.05;margin-bottom:24px;letter-spacing:-.04em;color:#0f172a}.gradient-text{background:linear-gradient(135deg,var(--landing-primary),#3b82f6);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{font-size:clamp(1.1rem,2vw,1.35rem);color:var(--landing-muted);line-height:1.6;margin-bottom:48px;max-width:540px}.hero-cta{display:flex;flex-wrap:wrap;gap:16px}.cta-primary,.cta-secondary{padding:16px 32px;border-radius:14px;font-size:1.05rem;font-weight:800;cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:10px}.cta-primary{background:var(--landing-primary);color:#fff;border:none}.cta-primary:hover{background:var(--landing-primary-dark);transform:translateY(-2px);box-shadow:0 10px 25px #2563eb33}.cta-secondary{background:#f1f5f9;color:var(--landing-text);border:1px solid #e2e8f0}.cta-secondary:hover{background:#e2e8f0;transform:translateY(-2px)}.hero-visual{position:relative}.hero-image-wrapper{position:relative;border-radius:32px;overflow:hidden;box-shadow:0 25px 50px -12px #00000026}.hero-img{width:100%;height:auto;object-fit:cover;display:block}.experience-badge{position:absolute;bottom:30px;left:30px;background:#fff;padding:16px 24px;border-radius:20px;box-shadow:0 10px 30px #00000026;display:flex;flex-direction:column}.experience-badge strong{font-size:1.75rem;color:var(--landing-primary)}.experience-badge span{font-size:.85rem;font-weight:700;color:var(--landing-muted)}.about-section{padding:var(--section-padding);background:#f8fafc}.section-container{max-width:1200px;margin:0 auto}.about-grid{display:grid;grid-template-columns:1fr;gap:80px;align-items:center}@media(min-width:1024px){.about-grid{grid-template-columns:1.2fr .8fr}}.section-label{text-transform:uppercase;font-weight:800;letter-spacing:.1em;color:var(--landing-primary);font-size:.85rem;margin-bottom:16px}.about-text h2{font-size:3rem;font-weight:900;margin-bottom:24px;letter-spacing:-.02em}.about-lead{font-size:1.35rem;color:#334155;line-height:1.5;font-weight:600;margin-bottom:32px}.service-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:40px}.service-item{display:flex;align-items:center;gap:12px;background:#fff;padding:16px 20px;border-radius:16px;box-shadow:var(--card-shadow);transition:transform .3s}.service-item:hover{transform:translateY(-5px)}.service-icon{color:#10b981}.service-item span{font-weight:700;font-size:.95rem;color:#475569}.about-locations{display:flex;flex-direction:column;gap:24px}.location-card{background:#0f172a;padding:40px;border-radius:28px;color:#fff}.location-card h3{font-size:1.5rem;margin-bottom:24px;font-weight:800}.location-list{display:flex;flex-direction:column;gap:16px}.location-item{display:flex;align-items:center;gap:12px}.location-item .dot{width:10px;height:10px;border-radius:50%;background:#3b82f6;box-shadow:0 0 15px #3b82f6}.location-item span{font-size:1.15rem;font-weight:700;opacity:.9}.icons-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.icon-box{background:#fff;padding:32px;border-radius:24px;display:flex;align-items:center;justify-content:center;color:var(--landing-primary);box-shadow:var(--card-shadow)}.contact-section{padding:var(--section-padding);background:#fff}.section-header-center{text-align:center;max-width:600px;margin:0 auto 64px}.section-header-center h2{font-size:clamp(2.25rem,5vw,3rem);font-weight:900;margin-bottom:16px;letter-spacing:-.02em}.section-header-center p{font-size:1.15rem;color:var(--landing-muted)}.contact-grid{display:grid;grid-template-columns:1fr;gap:48px;max-width:1100px;margin:0 auto}@media(min-width:1024px){.contact-grid{grid-template-columns:.8fr 1.2fr}}.contact-info{display:flex;flex-direction:column;gap:20px}.info-card{background:#f8fafc;padding:24px;border-radius:20px;display:flex;gap:20px;align-items:center;transition:all .3s}.info-card:hover{background:#f1f5f9;transform:translate(10px)}.info-icon{width:60px;height:60px;border-radius:18px;background:#fff;color:var(--landing-primary);display:flex;align-items:center;justify-content:center;box-shadow:var(--card-shadow);flex-shrink:0}.info-content h4{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--landing-muted);margin-bottom:4px;font-weight:800}.info-content p{font-size:1.1rem;font-weight:750;color:var(--landing-text)}.contact-form-wrapper{background:#fff;padding:40px;border-radius:28px;box-shadow:0 30px 60px -12px #0000001a;border:1px solid #f1f5f9}.form-group{margin-bottom:24px}.form-group label{display:block;font-size:.9rem;font-weight:800;margin-bottom:10px;color:#475569}.form-group input,.form-group textarea{width:100%;padding:16px;border:2px solid #f1f5f9;border-radius:14px;font-size:1rem;font-family:inherit;transition:all .2s;background:#f8fafc}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--landing-primary);background:#fff;box-shadow:0 0 0 4px #2563eb0d}.submit-btn{width:100%;padding:18px;background:#0f172a;color:#fff;border:none;border-radius:14px;font-size:1.1rem;font-weight:800;cursor:pointer;transition:all .3s}.submit-btn:hover{background:#1e293b;transform:translateY(-2px);box-shadow:0 10px 20px #0000001a}.submit-btn:disabled{opacity:.7;cursor:not-allowed}.success-msg{margin-top:20px;padding:16px;background:#ecfdf5;color:#065f46;border-radius:14px;display:flex;align-items:center;gap:12px;font-weight:750;font-size:.95rem;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.landing-footer{padding:80px 24px 40px;background:#fff;border-top:1px solid #f1f5f9}.footer-container{max-width:1200px;margin:0 auto;text-align:center}.footer-brand{display:flex;align-items:center;justify-content:center;gap:12px;font-size:1.65rem;font-weight:950;color:var(--landing-primary);margin-bottom:20px}.footer-main p{color:var(--landing-muted);max-width:440px;margin:0 auto 48px;line-height:1.65;font-weight:500}.footer-bottom{border-top:1px solid #f1f5f9;padding-top:40px;color:var(--landing-muted);font-size:.9rem;font-weight:650}@media(max-width:768px){.landing-nav .mobile-toggle{display:block}.nav-links{position:fixed;top:0;right:-100%;width:100%;height:100vh;background:#fff;flex-direction:column;justify-content:center;transition:.5s cubic-bezier(.8,0,.2,1);padding:40px;z-index:1000}.nav-links.mobile-open{right:0}.nav-text-link{font-size:1.85rem;font-weight:850;padding:15px 0;width:100%;text-align:center}.nav-login-btn{font-size:1.35rem;margin-top:30px;width:100%;padding:18px}.hero-section{padding:130px 24px 60px;text-align:center}.hero-subtitle{margin:0 auto 40px}.hero-cta{justify-content:center}.cta-primary,.cta-secondary{width:100%}.about-text h2{font-size:2.5rem;text-align:center}.about-lead{text-align:center;font-size:1.15rem}.about-grid{gap:48px}.contact-form-wrapper{padding:24px}}@media(max-width:480px){.section-padding{padding:60px 20px}.hero-title{font-size:2.5rem}.about-text h2{font-size:2.25rem}}.login-select-page{min-height:100vh;background:radial-gradient(circle at top left,#eff6ff,transparent 40%),radial-gradient(circle at bottom right,#faf5ff,transparent 40%),#f8fafc;display:flex;align-items:center;justify-content:center;padding:60px 24px;position:relative;font-family:Outfit,sans-serif}.back-to-home{position:absolute;top:32px;left:32px;display:flex;align-items:center;gap:10px;padding:12px 24px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;font-weight:700;color:#475569;cursor:pointer;transition:all .3s;box-shadow:0 4px 6px -1px #0000000d}.back-to-home:hover{border-color:var(--primary);color:var(--primary);transform:translate(-4px);box-shadow:0 10px 15px -3px #0000001a}.login-select-container{max-width:1100px;width:100%;text-align:center;animation:slideUp .8s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-select-header{margin-bottom:64px}.login-select-header svg{color:var(--primary);margin-bottom:24px;filter:drop-shadow(0 4px 12px rgba(37,99,235,.2))}.login-select-header h1{font-size:clamp(2rem,5vw,3rem);font-weight:900;margin-bottom:16px;color:#0f172a;letter-spacing:-.02em}.login-select-header p{font-size:1.15rem;color:#64748b;max-width:600px;margin:0 auto}.login-options{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-bottom:48px}.login-option-card{background:#fff;padding:56px 32px;border-radius:32px;border:1px solid rgba(226,232,240,.8);cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 4px 6px -1px #00000005;position:relative;overflow:hidden}.login-option-card:after{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:transparent;transition:background .3s}.login-option-card:hover{transform:translateY(-12px);box-shadow:0 25px 50px -12px #00000014;border-color:#2563eb4d}.login-option-card:hover:after{background:var(--primary)}.login-option-card.super-admin:hover:after{background:#4f46e5}.option-icon{width:88px;height:88px;border-radius:24px;display:flex;align-items:center;justify-content:center;margin:0 auto 32px;transition:transform .5s}.login-option-card:hover .option-icon{transform:rotate(10deg) scale(1.1)}.option-icon.student{background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;box-shadow:0 10px 20px -5px #3b82f666}.option-icon.admin{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 10px 20px -5px #10b98166}.option-icon.system{background:linear-gradient(135deg,#4f46e5,#312e81);color:#fff;box-shadow:0 10px 20px -5px #4f46e566}.login-option-card h2{font-size:1.5rem;font-weight:800;margin-bottom:12px;color:#0f172a}.login-option-card p{color:#64748b;margin-bottom:32px;line-height:1.6;font-size:.95rem}.option-btn{width:100%;padding:14px 24px;border:none;border-radius:12px;font-size:.95rem;font-weight:800;cursor:pointer;transition:all .3s}.student-btn{background:#eff6ff;color:#2563eb}.login-option-card:hover .student-btn{background:#2563eb;color:#fff}.admin-btn{background:#ecfdf5;color:#10b981}.login-option-card:hover .admin-btn{background:#10b981;color:#fff}.option-icon.parent{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 10px 20px -5px #f59e0b66}.parent-btn{background:#fffbe6;color:#d97706}.login-option-card:hover .parent-btn{background:#f59e0b;color:#fff}.system-btn{background:#eef2ff;color:#4f46e5}.login-option-card:hover .system-btn{background:#4f46e5;color:#fff}.login-select-footer{margin-top:48px;color:#94a3b8;font-size:.95rem}.login-select-footer a{color:var(--primary);text-decoration:none;font-weight:700}.login-select-footer a:hover{text-decoration:underline}@media(max-width:1024px){.login-options{gap:20px}.login-option-card{padding:40px 24px}}@media(max-width:768px){.login-select-page{padding:100px 20px 60px}.login-options{grid-template-columns:1fr;max-width:400px;margin:0 auto 48px}.back-to-home{top:20px;left:20px;right:20px;justify-content:center}.login-select-header{margin-bottom:40px}.login-select-header h1{font-size:2rem}}:root{--login-primary: #2563eb;--login-primary-dark: #1d4ed8;--login-primary-soft: rgba(37, 99, 235, .08);--login-text: #0f172a;--login-muted: #64748b;--login-bg: #f8fafc;--login-border: #e2e8f0}.login-page{min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 10% 20%,#eff6ff,transparent 40%),radial-gradient(circle at 90% 80%,#faf5ff,transparent 40%),#fff;padding:24px;font-family:Outfit,sans-serif;position:relative;overflow:hidden}.login-container{width:100%;max-width:480px;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:32px;padding:56px;box-shadow:0 4px 6px -1px #00000005,0 20px 50px -12px #0000001a;border:1px solid rgba(255,255,255,.8);z-index:10;position:relative;animation:slideUpIn .8s cubic-bezier(.16,1,.3,1)}@keyframes slideUpIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:48px}.logo-icon{width:72px;height:72px;background:linear-gradient(135deg,var(--login-primary),#6366f1);border-radius:22px;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;box-shadow:0 12px 24px -6px #2563eb4d;color:#fff}.login-header h1{font-size:2.25rem;font-weight:850;color:var(--login-text);margin-bottom:12px;letter-spacing:-.03em}.login-header p{color:var(--login-muted);font-size:1.1rem;font-weight:500}.login-form{display:flex;flex-direction:column;gap:28px}.form-group{display:flex;flex-direction:column;gap:10px}.form-group label{font-size:.95rem;font-weight:750;color:#334155;margin-left:4px}.input-icon{position:relative;display:flex;align-items:center;width:100%}.input-icon>svg:not(.password-toggle svg){position:absolute;left:20px;top:50%;transform:translateY(-50%);color:#94a3b8;transition:all .2s;pointer-events:none;z-index:10}.login-input{width:100%;height:60px;padding:0 56px!important;background:#f8fafc;border:2px solid #f1f5f9;border-radius:18px;font-size:1.05rem;color:var(--login-text);transition:all .2s cubic-bezier(.4,0,.2,1);font-family:inherit;line-height:normal}.login-input::placeholder{color:#94a3b8;opacity:.7;font-weight:400}.login-input:focus{outline:none;background:#fff;border-color:var(--login-primary);box-shadow:0 0 0 4px #2563eb14}.login-input:focus-within svg,.input-icon:focus-within svg{color:var(--login-primary)}.password-toggle{position:absolute;right:18px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#94a3b8;padding:8px;border-radius:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:10}.password-toggle:hover{color:var(--login-primary);background:var(--login-primary-soft)}.form-options{display:flex;justify-content:space-between;align-items:center;margin-top:-8px}.remember-me{display:flex;align-items:center;gap:10px;font-size:.95rem;font-weight:600;color:#64748b;cursor:pointer;-webkit-user-select:none;user-select:none}.remember-me input{width:20px;height:20px;margin:0;accent-color:var(--login-primary);cursor:pointer}.forgot-password-link{background:none;border:none;color:var(--login-primary);font-size:.95rem;font-weight:750;cursor:pointer;padding:0;transition:opacity .2s}.forgot-password-link:hover{opacity:.8;text-decoration:underline}.login-submit-btn{height:64px;background:#0f172a;color:#fff;border:none;border-radius:18px;font-size:1.1rem;font-weight:850;display:flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);margin-top:12px;box-shadow:0 10px 20px -5px #0f172a33}.login-submit-btn:hover:not(:disabled){background:#1e293b;transform:translateY(-2px);box-shadow:0 15px 30px -8px #0f172a4d}.login-submit-btn:active{transform:scale(.98)}.login-submit-btn:disabled{opacity:.7;cursor:not-allowed}.btn-loader{width:24px;height:24px;border:3px solid rgba(255,255,255,.2);border-radius:50%;border-top-color:#fff;animation:spinCircle .8s linear infinite}@keyframes spinCircle{to{transform:rotate(360deg)}}.login-footer{margin-top:48px;padding-top:32px;border-top:1px solid #f1f5f9;text-align:center;font-size:1.05rem;color:#64748b;font-weight:600}.login-footer span{color:var(--login-primary);font-weight:800;cursor:pointer;margin-left:6px}.login-footer span:hover{text-decoration:underline}.error-alert{background:#fef2f2;border:1px solid #fee2e2;color:#dc2626;padding:16px 20px;border-radius:16px;display:flex;align-items:center;gap:14px;margin-bottom:32px;font-size:.95rem;font-weight:700;animation:shakeEffect .5s cubic-bezier(.36,.07,.19,.97) both}@keyframes shakeEffect{10%,90%{transform:translate3d(-1px,0,0)}30%,50%,70%{transform:translate3d(-3px,0,0)}40%,60%{transform:translate3d(3px,0,0)}}.login-bg{position:fixed;inset:0;z-index:-1;pointer-events:none}.circle{position:absolute;border-radius:50%;filter:blur(140px);opacity:.35}.circle-1{top:-200px;left:-100px;width:600px;height:600px;background:#93c5fd}.circle-2{bottom:-100px;right:-100px;width:500px;height:500px;background:#c4b5fd}@media(max-width:640px){.login-container{padding:40px 24px;border-radius:24px}.login-header h1{font-size:1.85rem}.login-submit-btn{height:58px;font-size:1rem}}@media(max-width:480px){.form-options{flex-direction:column;align-items:flex-start;gap:16px}.login-input{height:56px;border-radius:14px}.login-submit-btn{border-radius:14px}}.dashboard-v2{padding:32px;display:flex;flex-direction:column;gap:32px}.d-header{display:flex;justify-content:space-between;align-items:center}.d-header h1{font-size:1.75rem;font-weight:700}.d-header p{color:var(--text-muted)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.kpi-card{background:#fff;padding:24px;border-radius:16px;border:1px solid var(--border);display:flex;align-items:center;gap:16px;transition:transform .2s}.kpi-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.kpi-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center}.kpi-icon.blue{background:#eff6ff;color:#2563eb}.kpi-icon.purple{background:#faf5ff;color:#a855f7}.kpi-icon.success{background:#ecfdf5;color:#10b981}.kpi-icon.error{background:#fef2f2;color:#ef4444}.kpi-icon.success-bg{background:#10b981;color:#fff}.kpi-icon.error-bg{background:#ef4444;color:#fff}.kpi-info span{font-size:.8rem;font-weight:500;color:var(--text-muted)}.kpi-info h3{font-size:1.25rem;font-weight:700}.charts-main-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.chart-card-v2{background:#fff;border-radius:20px;border:1px solid var(--border);padding:24px;display:flex;flex-direction:column;gap:24px}.chart-card-v2.large{grid-column:span 2}.card-header{display:flex;justify-content:space-between;align-items:center}.legend-v2{display:flex;gap:16px;font-size:.8rem;font-weight:600}.dot{display:inline-block;width:10px;height:10px;border-radius:50%}.dot.income{background:#22c55e}.dot.expense{background:#ef4444}.chart-container{width:100%}.chart-container.centered{display:flex;justify-content:center}.attendance-rate-box{display:flex;align-items:center;justify-content:space-around;padding:20px 0}.progress-circle-big{width:120px;height:120px;border-radius:50%;border:8px solid #eff6ff;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.progress-circle-big:after{content:"";position:absolute;inset:-8px;border-radius:50%;border:8px solid var(--primary);clip-path:polygon(50% 50%,0% 0%,100% 0%,100% 100%,0% 100%);transform:rotate(45deg)}.rate-val{font-size:1.25rem;font-weight:800;color:var(--text-main)}.rate-label{font-size:.7rem;color:var(--text-muted)}.rate-details{display:flex;flex-direction:column;gap:12px}.r-item{display:flex;align-items:flex-start;gap:12px}.r-dot{width:8px;height:8px;border-radius:50%;margin-top:6px}.r-dot.blue{background:#3b82f6}.r-dot.red{background:#ef4444}.r-item strong{display:block;font-size:.85rem}.r-item span{font-size:.75rem;color:var(--text-muted)}@media(max-width:1200px){.charts-main-grid{grid-template-columns:repeat(2,1fr)}.chart-card-v2.large{grid-column:span 2}}@media(max-width:900px){.charts-main-grid{grid-template-columns:1fr}.chart-card-v2.large{grid-column:span 1}.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.dashboard-v2{padding:24px 16px;gap:20px}.d-header{flex-direction:column;align-items:flex-start;gap:16px}.d-header h1{font-size:1.5rem}.kpi-grid{grid-template-columns:1fr}.kpi-card{padding:16px}.progress-circle-big{width:100px;height:100px}.rate-val{font-size:1rem}}.students-premium-page{padding:32px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.header-info h2{font-size:1.75rem;font-weight:800;color:#1e293b;margin-bottom:4px}.header-info p{color:#64748b;font-size:.95rem}.header-actions{display:flex;gap:12px}.students-container{background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;overflow:hidden;border:1px solid #e2e8f0}.t-header-premium{padding:24px;border-bottom:1px solid #f1f5f9}.t-filters{display:flex;justify-content:space-between;align-items:center;gap:16px}.t-search{position:relative;flex-grow:1;max-width:400px}.t-search svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8}.t-search input{width:100%;padding:10px 12px 10px 40px;border:1px solid #e2e8f0;border-radius:10px;font-size:.9rem;outline:none;transition:all .2s}.t-search input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.t-filter-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#475569;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s}.t-filter-btn:hover{background:#f8fafc;border-color:#cbd5e1}.f-table-premium{width:100%;border-collapse:collapse}.f-table-premium th{background:#f8fafc;padding:12px 24px;text-align:left;font-size:.75rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #f1f5f9}.f-table-premium td{padding:16px 24px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.f-table-premium tr:last-child td{border-bottom:none}.f-table-premium tr:hover td{background:#f8fafc}.s-user-cell{display:flex;align-items:center;gap:12px}.s-user-cell img{width:40px;height:40px;border-radius:10px;object-fit:cover}.s-user-info{display:flex;flex-direction:column}.s-user-info strong{font-size:.95rem;font-weight:700;color:#1e293b}.s-user-info span{font-size:.8rem;color:#64748b}.id-badge{font-family:JetBrains Mono,monospace;font-size:.8rem;font-weight:700;color:var(--primary);background:#eff6ff;padding:4px 10px;border-radius:6px;border:1px solid #dbeafe}.class-cell strong{display:block;font-size:.9rem;font-weight:700;color:#1e293b}.class-cell span{font-size:.8rem;color:#64748b}.date-cell{display:flex;align-items:center;gap:8px;color:#64748b;font-size:.85rem}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:100px;font-size:.75rem;font-weight:700;text-transform:capitalize}.status-pill.active{background:#dcfce7;color:#15803d}.status-pill.inactive{background:#fee2e2;color:#b91c1c}.t-more-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:6px;border-radius:8px;transition:all .2s}.t-more-btn:hover{background:#f1f5f9;color:#475569}.empty-state-list{text-align:center;padding:40px}.empty-state-list h3{margin-top:16px;font-size:1.1rem;color:#1e293b}.empty-state-list p{color:#64748b;margin-bottom:24px}.action-dropdown-container{position:relative;display:inline-block}.t-action-btn{display:flex;align-items:center;gap:8px;padding:6px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#475569;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.t-action-btn:hover,.t-action-btn.active{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.t-dropdown-menu{position:absolute;right:0;top:calc(100% + 8px);width:160px;background:#fff;border-radius:12px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;border:1px solid #f1f5f9;padding:8px;z-index:100;display:flex;flex-direction:column;gap:4px}.t-dropdown-menu button{display:flex;align-items:center;gap:10px;padding:8px 12px;background:transparent;border:none;border-radius:8px;color:#475569;font-size:.85rem;font-weight:600;cursor:pointer;text-align:left;transition:all .2s}.t-dropdown-menu button:hover{background:#f1f5f9;color:var(--primary)}.t-dropdown-menu button.delete-action:hover{color:#ef4444;background:#fef2f2}.t-dropdown-menu svg{color:inherit;opacity:.7}@media(max-width:1024px){.f-table-premium th:nth-child(4),.f-table-premium td:nth-child(4),.f-table-premium th:nth-child(5),.f-table-premium td:nth-child(5){display:none}}@media(max-width:768px){.students-premium-page{padding:20px 16px}.t-header-premium{padding:16px}.t-filters{flex-direction:column;align-items:stretch}.t-search{max-width:none}.t-filter-btn{justify-content:center}.f-table-premium thead{display:none}.f-table-premium,.f-table-premium tbody,.f-table-premium tr,.f-table-premium td{display:block;width:100%}.f-table-premium tr{margin-bottom:16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-card);padding:12px}.f-table-premium td{border-bottom:1px solid var(--border);padding:12px 8px;display:flex;justify-content:space-between;align-items:center;text-align:right}.f-table-premium td:last-child{border-bottom:none;justify-content:center}.f-table-premium td:before{content:attr(data-label);float:left;font-weight:700;text-transform:uppercase;font-size:.7rem;color:var(--text-muted)}.s-user-cell{justify-content:flex-end;text-align:right}.header-info h2{font-size:1.5rem}}.delete-modal{max-width:400px;text-align:center}.modal-icon-header{width:64px;height:64px;border-radius:100px;background:#eff6ff;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:#3b82f6}.modal-icon-header.delete{background:#fef2f2;color:#ef4444}.modal-content-premium p{color:#64748b;margin-bottom:24px;line-height:1.6}.creds-reveal-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px;margin-bottom:24px;display:flex;flex-direction:column;gap:16px}.cred-field{text-align:left}.cred-field label{display:block;font-size:.7rem;font-weight:800;color:#94a3b8;margin-bottom:4px;letter-spacing:.05em}.cred-value{font-size:1rem;font-weight:700;color:#1e293b;font-family:JetBrains Mono,monospace}.cred-value-with-mask{display:flex;justify-content:space-between;align-items:center;font-size:1rem;font-weight:700;color:#1e293b;font-family:JetBrains Mono,monospace}.cred-value-with-mask button{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:4px}.cred-value-with-mask button:hover{color:#3b82f6;background:#eff6ff}.p-primary-btn.delete{background:#ef4444}.p-primary-btn.delete:hover{background:#dc2626;box-shadow:0 4px 12px #ef44444d}.add_student_container{padding:32px;background:var(--bg-main);min-height:calc(100vh - 70px);display:flex;flex-direction:column;gap:32px}.enrollment-header{display:flex;justify-content:space-between;align-items:flex-start}.header-text h1{font-size:1.75rem;font-weight:700;color:var(--text-main);margin-bottom:4px}.header-text p{color:var(--text-muted);font-size:.95rem}.back-btn{display:flex;align-items:center;gap:8px;background:#fff;padding:8px 16px;border-radius:8px;border:1px solid var(--border);font-size:.9rem;font-weight:500}.form-sections-stack{display:flex;flex-direction:column;gap:24px;max-width:1000px}.form-card-premium{padding:32px}.p-card-header{display:flex;align-items:center;gap:12px;margin-bottom:32px}.p-header-icon{color:var(--primary)}.p-card-header h3{font-size:1.1rem;font-weight:600;flex:1}.p-badge-outline{font-size:.7rem;font-weight:700;color:var(--primary);border:1px solid var(--primary);padding:2px 8px;border-radius:4px;text-transform:uppercase}.p-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.p-form-group{display:flex;flex-direction:column;gap:12px}.p-form-group.full-width{grid-column:1 / -1}.p-form-group label{font-size:.85rem;font-weight:600;color:var(--text-main)}.p-form-group input,.p-form-group select{background:#fff;border:1px solid var(--border);padding:12px 16px;border-radius:8px;font-size:.95rem;width:100%}.p-form-group input:focus{border-color:var(--primary)}.disabled-input{background:#f8fafc!important;color:var(--text-muted)}.p-input-action-group{display:flex;gap:12px}.access-code-box{display:flex;flex:1;border:1px solid var(--border);border-radius:8px;background:#f1f5f9;overflow:hidden}.access-code-box input{border:none;background:transparent;padding:12px 16px;font-family:monospace;font-weight:600;color:var(--primary)}.copy-btn{padding:0 16px;color:var(--primary)}.generate-btn{background:var(--primary);color:#fff;padding:0 20px;border-radius:8px;display:flex;align-items:center;gap:8px;font-weight:600;font-size:.9rem}.p-help-text{font-size:.75rem;color:var(--text-muted);font-style:italic;margin-top:8px}.p-alerts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.p-alert-item{display:flex;align-items:flex-start;gap:16px;padding:20px;border:1px solid var(--border);border-radius:12px;cursor:pointer;transition:all .2s}.p-alert-item.active{border-color:var(--primary);background:#eff6ff}.p-alert-info{display:flex;flex-direction:column;gap:4px}.p-alert-info strong{font-size:.9rem;font-weight:700}.p-alert-info span{font-size:.85rem;color:var(--text-muted)}.p-alert-item input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary)}.form-action-footer{display:flex;justify-content:space-between;align-items:center;margin-top:40px;padding-top:32px;border-top:1px solid var(--border);max-width:1000px}.p-discard-btn{font-weight:600;color:var(--text-muted)}.p-footer-right{display:flex;gap:16px}.p-secondary-btn{background:#fff;border:1px solid var(--border);padding:12px 24px;border-radius:8px;font-weight:600;display:flex;align-items:center;gap:8px}.p-primary-btn{background:var(--primary);color:#fff;padding:12px 32px;border-radius:8px;font-weight:700;box-shadow:0 4px 10px #2563eb33}.warning-msg{display:flex;align-items:center;gap:8px;color:var(--error);font-size:.8rem;font-weight:600;margin-top:8px}.error-field{border-color:var(--error)!important}.dashed-border-top{border-top:1px dashed var(--border)!important}@media(max-width:768px){.add-student-container{padding:24px 16px}.enrollment-header{flex-direction:column;gap:20px}.back-btn{width:100%;justify-content:center}.p-form-grid,.p-alerts-grid{grid-template-columns:1fr}.p-input-action-group{flex-direction:column}.generate-btn{height:48px;justify-content:center}.form-action-footer{flex-direction:column;gap:24px;padding-bottom:40px}.p-footer-right{width:100%;flex-direction:column}.p-footer-right button{width:100%;justify-content:center}.p-discard-btn{width:100%;text-align:center}.p-card-header h3{font-size:1rem}.form-card-premium{padding:24px 16px}}@media(max-width:480px){.header-text h1{font-size:1.5rem}}.teacher-card-premium{padding:24px;display:flex;flex-direction:column;gap:20px;border:1px solid var(--border);transition:all .2s}.teacher-card-premium:hover{border-color:var(--primary);box-shadow:var(--shadow)}.t-avatar{width:56px;height:56px;border-radius:12px}.t-main-info{flex:1}.t-main-info h3{font-size:1.1rem;font-weight:700}.t-subject{font-size:.8rem;font-weight:600;color:var(--primary);background:#eff6ff;padding:2px 8px;border-radius:4px}.t-contact-box{display:flex;flex-direction:column;gap:8px;padding:16px 0;border-top:1px solid #f1f5f9}.t-contact-item{display:flex;align-items:center;gap:10px;font-size:.85rem;color:var(--text-muted)}.t-assignment-section label{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:700;margin-bottom:8px}.t-class-tags{display:flex;flex-wrap:wrap;gap:6px}.t-tag{background:#f8fafc;border:1px solid var(--border);padding:2px 8px;border-radius:4px;font-size:.75rem;font-weight:500}.modal-content-premium{width:100%;max-width:550px;padding:32px}.class-selection-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-height:150px;overflow-y:auto;padding:8px;background:#f8fafc;border:1px solid var(--border);border-radius:8px}.class-checkbox{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--border);border-radius:6px;background:#fff;cursor:pointer}.class-checkbox.checked{border-color:var(--primary);background:#eff6ff}.modal-actions-premium{display:flex;justify-content:flex-end;gap:16px;margin-top:32px}@media(max-width:600px){.class-selection-list{grid-template-columns:1fr}.modal-content-premium{padding:24px 16px}.teacher-card-premium{padding:20px 16px}}.classes-grid-premium{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:24px}.class-card-premium{padding:24px;position:relative;overflow:hidden;border:1px solid var(--border);display:flex;flex-direction:column;gap:20px;transition:all .2s}.class-card-premium:hover{border-color:var(--primary);box-shadow:var(--shadow)}.c-category-badge{position:absolute;top:12px;right:12px;font-size:.65rem;font-weight:700;text-transform:uppercase;color:var(--text-muted);background:#f1f5f9;padding:2px 8px;border-radius:4px}.c-header{display:flex;justify-content:space-between;align-items:flex-start}.c-title h3{font-size:1.25rem;font-weight:700}.c-title span{font-size:.9rem;color:var(--text-muted)}.c-actions{display:flex;gap:8px}.c-actions button{color:var(--text-muted)}.c-actions .c-delete:hover{color:var(--error)}.c-stats-row{display:flex;gap:24px}.c-stat{display:flex;align-items:center;gap:12px}.c-stat-text{display:flex;flex-direction:column}.c-stat-text strong{font-size:.95rem;font-weight:700}.c-stat-text span{font-size:.75rem;color:var(--text-muted)}.c-progress-bar{height:6px;background:#f1f5f9;border-radius:10px;overflow:hidden}.c-progress-fill{height:100%;background:var(--primary);border-radius:10px}.c-view-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;background:#f8fafc;border:1px solid var(--border);border-radius:8px;font-size:.85rem;font-weight:600;color:var(--text-main);transition:all .2s}.c-view-btn:hover{background:var(--bg-main);border-color:var(--primary);color:var(--primary)}@media(max-width:600px){.classes-grid-premium{grid-template-columns:1fr}.class-card-premium{padding:20px 16px}.c-title h3{font-size:1.1rem}.c-stats-row{gap:16px}.modal-content-premium{padding:24px 16px}}.finance-v2{padding:32px}.finance-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:24px}.f-stat-card{padding:24px;background:#fff;border-radius:16px;border:1px solid var(--border)}.f-stat-header{display:flex;align-items:center;gap:12px;font-size:.9rem;font-weight:600;color:var(--text-muted);margin-bottom:12px}.f-stat-card h3{font-size:2rem;font-weight:700}.f-stat-card.income h3{color:#10b981}.f-stat-card.expense h3{color:#ef4444}.f-stat-card.balance h3{color:var(--primary)}.finance-main-grid{margin-top:32px;display:grid;grid-template-columns:2fr 1fr;gap:24px}.p-search-mini{display:flex;align-items:center;gap:8px;background:#f1f5f9;padding:6px 12px;border-radius:8px}.p-search-mini input{border:none;background:transparent;font-size:.8rem;outline:none}.student-table-container table{width:100%;border-collapse:collapse}.student-table-container th{text-align:left;padding:12px;font-size:.75rem;color:var(--text-muted);border-bottom:2px solid #f1f5f9}.student-table-container td{padding:16px 12px;border-bottom:1px solid #f1f5f9}.clickable-row{cursor:pointer;transition:background .2s}.clickable-row:hover{background:#f8fafc}.s-cell{display:flex;flex-direction:column}.s-cell strong{font-size:.9rem}.s-cell span{font-size:.75rem;color:var(--text-muted)}.f-pill{padding:4px 10px;border-radius:100px;font-size:.7rem;font-weight:700;text-transform:uppercase}.f-pill.paid{background:#ecfdf5;color:#10b981}.f-pill.pending{background:#fffbeb;color:var(--accent)}.transaction-stack{display:flex;flex-direction:column;gap:12px}.t-item-v2{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;background:#f8fafc}.t-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center}.t-icon.income{background:#ecfdf5;color:#10b981}.t-icon.expense{background:#fef2f2;color:#ef4444}.t-info{flex:1;display:flex;flex-direction:column}.t-info strong{font-size:.85rem}.t-info span{font-size:.7rem;color:var(--text-muted)}.t-amount{font-weight:700;font-size:.95rem}.t-amount.income{color:#10b981}.t-amount.expense{color:#ef4444}.student-finance-details{padding:32px}.details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.s-header-pill{display:flex;align-items:center;gap:12px;background:var(--primary-light);color:var(--primary);padding:8px 16px;border-radius:12px}.detail-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:40px}.d-stat{padding:24px;background:#f8fafc;border-radius:16px;border:1px solid var(--border)}.d-stat span{font-size:.8rem;font-weight:600;color:var(--text-muted)}.d-stat h3{font-size:1.5rem;font-weight:800;margin-top:8px}.d-stat.highlight{border-color:#10b981;background:#ecfdf5}.d-stat.warning{border-color:#ef4444;background:#fef2f2}.payment-history-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.p-history-table{width:100%;border-collapse:collapse}.p-history-table th{text-align:left;padding:12px;font-size:.75rem;color:var(--text-muted)}.p-history-table td{padding:16px 12px;border-bottom:1px solid #f1f5f9}@media(max-width:1024px){.finance-stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.finance-main-grid{grid-template-columns:1fr}.detail-stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.finance-v2{padding:24px 16px}.finance-stats-grid,.detail-stats-grid{grid-template-columns:1fr}.details-header{flex-direction:column;align-items:flex-start;gap:16px}.student-table-container thead,.p-history-table thead{display:none}.student-table-container table,.student-table-container tbody,.student-table-container tr,.student-table-container td,.p-history-table,.p-history-table tbody,.p-history-table tr,.p-history-table td{display:block;width:100%}.student-table-container tr,.p-history-table tr{margin-bottom:16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-card);padding:12px}.student-table-container td,.p-history-table td{border-bottom:1px solid var(--border);padding:10px 0;display:flex;justify-content:space-between;align-items:center;text-align:right}.student-table-container td:last-child,.p-history-table td:last-child{border-bottom:none}.student-table-container td:before,.p-history-table td:before{content:attr(data-label);float:left;font-weight:700;text-transform:uppercase;font-size:.7rem;color:var(--text-muted)}.hide-mobile{display:none!important}}.attendance-page{padding:32px}.class-selection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:24px}.class-box{display:flex;align-items:center;gap:16px;padding:24px;cursor:pointer;transition:all .2s}.class-box:hover{border-color:var(--primary);transform:translateY(-4px);box-shadow:var(--shadow)}.box-icon{width:48px;height:48px;background:var(--primary-light);color:var(--primary);border-radius:12px;display:flex;align-items:center;justify-content:center}.box-content h3{font-size:1.1rem;font-weight:700}.box-content span{font-size:.85rem;color:var(--text-muted)}.arrow{margin-left:auto;color:var(--text-muted)}.attendance-marking-area{margin-top:24px;max-width:800px}.marking-header{display:flex;flex-direction:column;gap:20px;padding-bottom:24px;border-bottom:1px solid #f1f5f9}.back-btn-v2{display:flex;align-items:center;gap:8px;background:transparent;border:none;color:var(--text-muted);font-weight:600;cursor:pointer}.marking-info{display:flex;justify-content:space-between;align-items:center}.marking-info input[type=date]{background:#f1f5f9;padding:8px 16px;border-radius:8px;border:none;font-weight:600}.student-list-attendance{padding:24px 0;display:flex;flex-direction:column;gap:12px}.student-line{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-radius:12px;background:#f8fafc}.s-info{display:flex;align-items:center;gap:16px}.s-avatar{width:32px;height:32px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.s-text{display:flex;flex-direction:column}.s-text strong{font-size:.9rem}.s-text span{font-size:.75rem;color:var(--text-muted)}.s-actions{display:flex;gap:8px}.status-btn{display:flex;align-items:center;gap:6px;padding:6px 16px;border-radius:8px;font-size:.85rem;font-weight:700;border:1px solid var(--border);background:#fff;color:var(--text-muted);cursor:pointer}.status-btn.present.active{background:#ecfdf5;color:#10b981;border-color:#10b981}.status-btn.absent.active{background:#fef2f2;color:#ef4444;border-color:#ef4444}.marking-footer{padding-top:24px;border-top:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:center}.marking-footer p{font-weight:700;font-size:.95rem}@media(max-width:768px){.attendance-page{padding:24px 16px}.class-selection-grid{grid-template-columns:1fr}.marking-header{gap:16px}.marking-info{flex-direction:column;align-items:flex-start;gap:16px}.date-control{width:100%;display:flex;justify-content:space-between;align-items:center;gap:8px}.date-control input[type=date]{flex:1;min-width:0}.student-line{flex-direction:column;align-items:flex-start;gap:16px}.s-actions{width:100%}.status-btn{flex:1;justify-content:center;padding:10px 8px}.marking-footer{flex-direction:column;gap:20px;text-align:center}.marking-footer button{width:100%}}.exams-page{padding:32px}.grid-2{display:grid;grid-template-columns:1fr 2fr;gap:24px;margin-top:24px}.student-selection-panel{height:calc(100vh - 250px);display:flex;flex-direction:column}.student-scroll-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:16px 0}.s-item-v2{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;cursor:pointer;transition:all .2s;border:1px solid transparent}.s-item-v2:hover{background:#f1f5f9}.s-item-v2.active{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.s-avatar-mini{width:32px;height:32px;background:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.s-name{flex:1;display:flex;flex-direction:column}.s-name strong{font-size:.9rem}.s-name span{font-size:.75rem;color:var(--text-muted)}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.p-badge{display:flex;align-items:center;gap:16px}.p-badge h3{font-size:1.25rem;font-weight:700}.p-badge span{font-size:.85rem;color:var(--text-muted)}.quick-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:32px}.action-card{padding:20px;border-radius:16px;background:#f8fafc;border:1px dashed var(--border);display:flex;align-items:center;justify-content:center;gap:12px;font-weight:700;cursor:pointer;transition:all .2s}.action-card:hover{background:#fff;border-color:var(--primary);color:var(--primary)}.action-card.blue{background:#eff6ff;border-color:var(--primary);color:var(--primary)}.empty-state-mini{padding:40px;text-align:center;color:var(--text-muted);font-size:.9rem}@media(max-width:900px){.grid-2{grid-template-columns:1fr}.student-selection-panel{height:auto;max-height:300px}.quick-actions-grid{grid-template-columns:1fr}.exams-page{padding:24px 16px}.preview-header{flex-direction:column;align-items:flex-start;gap:16px}}.portal-login-page{min-height:100vh;background:radial-gradient(circle at top left,#eff6ff,transparent 40%),radial-gradient(circle at bottom right,#faf5ff,transparent 40%),#1e293b;display:flex;align-items:center;justify-content:center;padding:24px;font-family:Outfit,sans-serif}.login-card-container{width:100%;max-width:450px;animation:fadeIn .8s ease-out}.portal-branding{text-align:center;margin-bottom:32px;cursor:pointer}.logo-box{width:64px;height:64px;background:#2563eb;border-radius:20px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;box-shadow:0 10px 15px -3px #2563eb66}.portal-branding h1{color:#fff;font-size:2rem;font-weight:900;margin-bottom:4px}.portal-branding p{color:#94a3b8;font-size:.85rem;letter-spacing:.2rem;font-weight:700}.portal-login-card{background:#fff;padding:40px;border-radius:24px;box-shadow:0 25px 50px -12px #00000080}.login-header{margin-bottom:32px;text-align:center}.login-header h2{font-size:1.5rem;font-weight:800;color:#0f172a;margin-bottom:8px}.login-header p{color:#64748b;font-size:.95rem}.portal-login-form .p-form-group{margin-bottom:24px}.portal-login-form label{display:block;margin-bottom:8px;font-size:.85rem;font-weight:700;color:#475569}.input-with-icon{position:relative;display:flex;align-items:center}.input-with-icon svg{position:absolute;left:16px;color:#94a3b8}.input-with-icon input{width:100%;padding:14px 16px 14px 48px;background:#f8fafc;border:2px solid #f1f5f9;border-radius:12px;font-size:.95rem;color:#1e293b;transition:all .2s}.input-with-icon input:focus{outline:none;border-color:#2563eb;background:#fff;box-shadow:0 0 0 4px #2563eb1a}.login-submit-btn{width:100%;padding:16px;border:none;border-radius:12px;font-size:1rem;font-weight:800;color:#fff;cursor:pointer;transition:all .3s;margin-top:8px}.login-submit-btn.student{background:#2563eb;box-shadow:0 4px 6px -1px #2563eb66}.login-submit-btn.parent{background:#f59e0b;box-shadow:0 4px 6px -1px #f59e0b66}.login-submit-btn:hover{transform:translateY(-2px);opacity:.9}.role-switcher{margin-top:32px;text-align:center;padding-top:24px;border-top:1px solid #f1f5f9}.role-switcher p{font-size:.85rem;color:#64748b;margin-bottom:8px}.role-switcher button{background:transparent;border:none;color:#2563eb;font-weight:800;font-size:.9rem;cursor:pointer}.back-link{display:flex;align-items:center;justify-content:center;gap:8px;margin:24px auto 0;background:transparent;border:none;color:#94a3b8;font-weight:700;cursor:pointer}.portal-dashboard{display:grid;grid-template-columns:280px 1fr;min-height:100vh;background:#f8fafc}.portal-sidebar{background:#0f172a;color:#fff;padding:32px;display:flex;flex-direction:column}.sidebar-brand{display:flex;align-items:center;gap:12px;font-size:1.5rem;font-weight:900;margin-bottom:48px;color:#3b82f6}.sidebar-user{display:flex;align-items:center;gap:16px;padding-bottom:32px;border-bottom:1px solid #1e293b;margin-bottom:32px}.user-avatar{width:48px;height:48px;background:#1e293b;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#94a3b8}.user-info{display:flex;flex-direction:column}.user-info strong{font-size:1rem;color:#fff}.user-info span{font-size:.75rem;color:#64748b;font-weight:800;letter-spacing:.05em}.sidebar-nav{flex:1}.nav-item{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:12px;color:#94a3b8;font-weight:700;cursor:pointer;transition:all .2s;margin-bottom:8px}.nav-item:hover,.nav-item.active{background:#1e293b;color:#fff}.nav-item.active{color:#3b82f6}.logout-btn{display:flex;align-items:center;gap:12px;padding:14px 16px;background:transparent;border:1px solid #1e293b;color:#ef4444;border-radius:12px;cursor:pointer;font-weight:700}.portal-content{padding:40px;overflow-y:auto}.content-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:40px}.school-branding h2{font-size:1.75rem;font-weight:900;color:#0f172a}.school-branding p{color:#64748b;font-weight:600}.chip{background:#fff;padding:8px 16px;border-radius:100px;border:1px solid #e2e8f0;font-size:.85rem;font-weight:700;color:#475569}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:40px}.stat-card{background:#fff;padding:24px;border-radius:20px;display:flex;align-items:center;gap:20px;box-shadow:0 4px 6px -1px #0000000d}.stat-icon{width:60px;height:60px;border-radius:16px;display:flex;align-items:center;justify-content:center}.stat-icon.attendance{background:#eff6ff;color:#2563eb}.stat-icon.results{background:#ecfdf5;color:#10b981}.stat-icon.finance{background:#fffbe6;color:#d97706}.stat-data label{font-size:.85rem;color:#64748b;font-weight:700}.stat-data h3{font-size:1.5rem;font-weight:900;color:#0f172a}.portal-sections-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.portal-section{background:#fff;border-radius:20px;padding:24px;box-shadow:0 4px 6px -1px #0000000d}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.section-header h3{display:flex;align-items:center;gap:10px;font-size:1.1rem;font-weight:800;color:#0f172a}.view-all{background:transparent;border:none;color:#2563eb;font-weight:700;font-size:.85rem;cursor:pointer}.mini-record{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #f1f5f9}.mini-record:last-child{border:none}.status-pill{padding:4px 12px;border-radius:100px;font-size:.75rem;font-weight:800;text-transform:uppercase}.status-pill.present{background:#dcfce7;color:#166534}.status-pill.absent{background:#fee2e2;color:#991b1b}.mini-notif{display:flex;gap:16px;padding:16px;border-radius:12px;margin-bottom:12px}.mini-notif.important{background:#fff1f2;color:#e11d48}.mini-notif.announcement{background:#f0f9ff;color:#0284c7}.mini-notif.fee_reminder{background:#fffbeb;color:#d97706}.notif-content strong{display:block;font-size:.9rem;margin-bottom:4px}.notif-content p{font-size:.85rem;opacity:.8;line-height:1.4}.results-table-mini table{width:100%;border-collapse:collapse}.results-table-mini th{text-align:left;font-size:.8rem;color:#64748b;padding-bottom:16px;border-bottom:1px solid #f1f5f9}.results-table-mini td{padding:16px 0;border-bottom:1px solid #f1f5f9;font-size:.95rem;font-weight:600}.grade-box{background:#f8fafc;padding:4px 10px;border-radius:6px;font-weight:900;color:#0f172a}.text-error{color:#ef4444}.text-success{color:#10b981}.finance-summary-portal{display:flex;flex-direction:column;gap:24px}.balance-info label{font-size:.85rem;color:#64748b}.balance-info h2{font-size:2rem;font-weight:900}.transaction-item{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f1f5f9;font-size:.9rem}.t-amount{font-weight:800;color:#10b981}@media(max-width:1024px){.portal-dashboard{grid-template-columns:1fr}.portal-sidebar{display:none}.portal-sections-grid{grid-template-columns:1fr}}.portal-full-section{width:100%;animation:fadeIn .4s ease-out}.section-header-main{margin-bottom:32px;text-align:left}.section-header-main h1{display:flex;align-items:center;gap:16px;font-size:2.25rem;font-weight:900;color:#0f172a;margin-bottom:8px}.section-header-main h1 svg{color:#3b82f6}.section-header-main p{color:#64748b;font-size:1.1rem}.dashboard-grid.full{grid-template-columns:1fr}.table-responsive{overflow-x:auto;margin-top:16px}.portal-table{width:100%;border-collapse:collapse}.portal-table th{text-align:left;padding:16px;background:#f8fafc;color:#64748b;font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.portal-table td{padding:16px;border-bottom:1px solid #f1f5f9;color:#1e293b;font-size:.95rem}.portal-table tr:last-child td{border:none}.full-attendance-list{margin-top:24px}.full-attendance-list table{width:100%;border-collapse:collapse}.full-attendance-list th{text-align:left;padding:12px 16px;color:#94a3b8;font-size:.75rem;text-transform:uppercase}.full-attendance-list td{padding:16px;border-bottom:1px solid #f8fafc}.notifications-container{display:flex;flex-direction:column;gap:16px}.notif-card{display:flex;gap:20px;padding:24px;border-radius:20px;background:#fff;transition:all .3s;border-left:6px solid transparent}.notif-card.important{border-left-color:#ef4444}.notif-card.announcement{border-left-color:#3b82f6}.notif-card.fee_reminder{border-left-color:#f59e0b}.notif-card:hover{transform:translate(8px);box-shadow:0 10px 25px -5px #0000000d}.notif-icon-box{width:52px;height:52px;border-radius:12px;background:#f8fafc;display:flex;align-items:center;justify-content:center;color:#94a3b8}.notif-body{flex:1}.notif-meta{display:flex;justify-content:space-between;margin-bottom:8px}.notif-type-label{font-size:.75rem;font-weight:800;text-transform:uppercase;color:#94a3b8}.notif-time{font-size:.75rem;color:#94a3b8}.notif-body h3{font-size:1.15rem;font-weight:800;color:#0f172a;margin-bottom:8px}.notif-body p{color:#64748b;line-height:1.6}.empty-notif{padding:80px 40px;text-align:center;color:#94a3b8}.empty-notif svg{margin-bottom:24px}.finance-grid{display:grid;grid-template-columns:1fr;gap:24px}.fee-summary-box{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:8px}.summary-item label{display:block;margin-bottom:12px;font-size:.9rem;font-weight:700;color:#64748b}.summary-item h2{font-size:2rem;font-weight:900;color:#0f172a}.fade-in{animation:fadeIn .4s ease-out}.hover-scale{transition:transform .3s;cursor:pointer}.hover-scale:hover{transform:scale(1.02)}.text-left{text-align:left}.empty-msg,.empty-state{padding:40px;text-align:center;color:#94a3b8;font-weight:600}@media(max-width:768px){.fee-summary-box{grid-template-columns:1fr;gap:24px}.section-header-main h1{font-size:1.75rem}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.monthly-tracker-card{padding:32px}.month-status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}.month-status-item{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0;transition:all .2s}.month-status-item.paid{background:#f0fdf4;border-color:#bbf7d0}.month-status-item.paid .month-name{color:#166534}.month-status-item.unpaid .month-name{color:#64748b}.month-name{font-weight:700;font-size:1rem}.status-indicator{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:700}.paid .status-indicator{color:#10b981}.unpaid .status-indicator{color:#94a3b8}.year-select-portal{padding:8px 16px;border-radius:10px;border:1px solid #e2e8f0;font-weight:700;color:#1e293b;outline:none;cursor:pointer}.year-select-portal:focus{border-color:#3b82f6}@media(max-width:768px){.month-status-grid{grid-template-columns:1fr}}.register-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top left,#eff6ff,transparent 40%),radial-gradient(circle at bottom right,#faf5ff,transparent 40%),#f8fafc;padding:24px 16px;font-family:Outfit,sans-serif}.register-card{background:#fff;padding:48px;border-radius:24px;box-shadow:0 4px 6px -1px #0000000d,0 20px 40px -8px #00000014;max-width:500px;width:100%;animation:slideUp .6s cubic-bezier(.16,1,.3,1);border:1px solid rgba(255,255,255,.7)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.register-card h2{font-size:1.75rem;font-weight:800;margin-bottom:12px;color:#0f172a;text-align:center}.register-card p{color:#64748b;text-align:center;margin-bottom:32px;font-size:1rem;line-height:1.5}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-size:.875rem;font-weight:600;color:#334155}.form-group input{width:100%;padding:12px 16px;border:1px solid #e2e8f0;border-radius:12px;font-size:1rem;transition:all .2s;background:#f8fafc}.form-group input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 4px #3b82f61a}.register-btn{width:100%;background:#2563eb;color:#fff;padding:14px;border:none;border-radius:12px;font-weight:700;font-size:1.1rem;cursor:pointer;margin-top:12px;transition:all .3s;box-shadow:0 4px 10px #2563eb33}.register-btn:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 6px 15px #2563eb40}.register-btn:disabled{background:#94a3b8;cursor:not-allowed;transform:none;box-shadow:none}.error-message{padding:14px;background:#fff1f2;color:#e11d48;border:1px solid #fecdd3;border-radius:12px;margin-bottom:24px;font-size:.9rem;font-weight:500;text-align:center;animation:shake .4s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.register-footer{margin-top:32px;text-align:center;font-size:.95rem;color:#64748b}.register-footer span{color:#3b82f6;font-weight:700;cursor:pointer}.register-footer span:hover{text-decoration:underline}@media(max-width:480px){.register-card{padding:32px 24px}.register-card h2{font-size:1.5rem}.register-card p{font-size:.9rem}}.super-admin-container{min-height:100vh;background:#f8fafc;font-family:Outfit,sans-serif}.sa-header{background:#0f172a;color:#fff;padding:20px 40px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:100;box-shadow:0 4px 12px #0000001a}.sa-brand{display:flex;align-items:center;gap:16px}.sa-brand h1{font-size:1.25rem;font-weight:800;letter-spacing:-.02em}.sa-badge{background:#2563eb33;color:#3b82f6;padding:4px 12px;border-radius:100px;font-size:.7rem;font-weight:700;text-transform:uppercase;border:1px solid rgba(59,130,246,.3)}.sa-user-info{display:flex;align-items:center;gap:20px}.sa-user-info span{font-size:.85rem;color:#94a3b8;font-weight:500}.logout-btn{background:#ef44441a;color:#ef4444;padding:8px 16px;border:1px solid rgba(239,68,68,.2);border-radius:10px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:.85rem;transition:all .2s}.logout-btn:hover{background:#ef4444;color:#fff}.sa-content{padding:40px;max-width:1400px;margin:0 auto}.sa-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:40px}.sa-stat-card{background:#fff;padding:32px;border-radius:20px;box-shadow:0 4px 6px -1px #0000000d;border:1px solid #f1f5f9;transition:transform .3s}.sa-stat-card:hover{transform:translateY(-4px);box-shadow:0 12px 20px -8px #0000001a}.sa-stat-card h3{font-size:.75rem;color:#64748b;margin-bottom:12px;text-transform:uppercase;font-weight:800;letter-spacing:.05em}.stat-value{font-size:2.5rem;font-weight:900;color:#0f172a}.sa-stat-card.active{border-bottom:4px solid #10b981}.sa-stat-card.disabled{border-bottom:4px solid #ef4444}.sa-table-card{background:#fff;border-radius:24px;box-shadow:0 4px 6px -1px #0000000d;border:1px solid #f1f5f9;overflow:hidden}.table-header{padding:24px 32px;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:center}.table-header h2{font-size:1.25rem;font-weight:800;color:#0f172a}.sa-controls{padding:20px 32px;background:#fcfdfe;border-bottom:1px solid #f1f5f9}.search-bar{position:relative;max-width:100%}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#94a3b8}.search-bar input{width:100%;padding:14px 16px 14px 48px;border:1px solid #e2e8f0;border-radius:14px;font-size:.95rem;background:#fff;transition:all .2s}.search-bar input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a}.sa-table{width:100%;border-collapse:collapse}.sa-table th{text-align:left;padding:16px 32px;background:#f8fafc;border-bottom:1px solid #f1f5f9;font-size:.75rem;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.sa-table td{padding:20px 32px;border-bottom:1px solid #f1f5f9;color:#475569;font-size:.9rem}.sa-table tr:last-child td{border-bottom:none}.sa-table tr:hover td{background:#fcfdfe}.status-badge{padding:6px 12px;border-radius:100px;font-weight:800;font-size:.7rem;display:inline-flex;align-items:center}.status-badge.active{background:#dcfce7;color:#15803d}.status-badge.disabled{background:#fee2e2;color:#b91c1c}.action-btn{padding:8px 16px;border-radius:10px;border:none;font-weight:700;cursor:pointer;font-size:.8rem;display:flex;align-items:center;gap:8px;transition:all .2s}.action-btn.disable{background:#fff1f2;color:#e11d48}.sa-primary-btn{display:flex;align-items:center;gap:10px;padding:10px 20px;border-radius:10px;border:none;font-weight:700;cursor:pointer;transition:all .2s}.sa-primary-btn.green{background:#10b981;color:#fff}.sa-primary-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.sa-action-group{display:flex;gap:8px}.sa-icon-btn{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer}.sa-icon-btn.blue{background:#eff6ff;color:#2563eb}.header-stack-btns{display:flex;gap:12px;align-items:center}.sa-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.sa-modal{width:100%;max-width:500px;padding:32px;background:#fff;border-radius:20px;box-shadow:0 10px 25px #0000001a}.sa-modal h3{margin-bottom:24px;font-size:1.25rem;font-weight:800;color:#0f172a}.sa-modal .form-group{margin-bottom:20px;display:flex;flex-direction:column;gap:8px}.sa-modal label{font-weight:700;font-size:.9rem;color:#475569}.sa-modal input,.sa-modal select,.sa-modal textarea{padding:12px;border:1.5px solid #e2e8f0;border-radius:10px;font-family:inherit;font-size:.95rem;color:#334155}.sa-modal input:focus,.sa-modal select:focus,.sa-modal textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.sa-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:32px}.sa-modal-actions button{padding:10px 24px;border-radius:10px;font-weight:700;cursor:pointer;font-size:.9rem;transition:all .2s}.sa-modal-actions .cancel{background:#f1f5f9;border:none;color:#64748b}.sa-modal-actions .cancel:hover{background:#e2e8f0}.sa-modal-actions .send{background:#2563eb;border:none;color:#fff}.sa-modal-actions .send:hover{background:#1d4ed8}.action-btn.enable{background:#ecfdf5;color:#10b981}.action-btn:hover{transform:translateY(-1px);filter:brightness(.95)}.refresh-btn{padding:10px;border-radius:10px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:all .2s}.refresh-btn:hover{border-color:#3b82f6;color:#3b82f6}@media(max-width:1024px){.sa-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.sa-header{padding:16px 20px;flex-direction:column;gap:16px;height:auto;text-align:center}.sa-content{padding:20px}.sa-stats{grid-template-columns:1fr}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.sa-table{min-width:800px}}.super-admin-setup-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top left,#eff6ff,transparent 40%),#f8fafc;padding:24px}.setup-card{background:#fff;padding:48px;border-radius:32px;box-shadow:0 20px 40px -8px #0000001a;width:100%;max-width:500px;border:1px solid #f1f5f9}.setup-header{text-align:center;margin-bottom:32px}.setup-header h1{font-size:1.75rem;font-weight:900;color:#0f172a;margin-top:16px}.setup-btn{width:100%;background:#2563eb;color:#fff;padding:16px;border:none;border-radius:14px;font-weight:800;font-size:1rem;cursor:pointer;margin-top:24px;transition:all .3s;box-shadow:0 4px 12px #2563eb33}.setup-btn:hover{background:#1d4ed8;transform:translateY(-1px)}.setup-warning{background:#fffbeb;color:#92400e;padding:16px;border-radius:12px;font-size:.85rem;margin-top:24px;border:1px solid #fde68a;display:flex;gap:12px;align-items:flex-start}.student-detail-page{padding:32px;max-width:1200px;margin:0 auto}.detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.back-btn{display:flex;align-items:center;gap:10px;background:transparent;border:none;color:var(--text-muted);font-weight:600;cursor:pointer;transition:all .2s;padding:8px 12px;border-radius:8px}.back-btn:hover{color:var(--primary);background:var(--primary-light)}.detail-grid{display:grid;grid-template-columns:380px 1fr;gap:32px}.detail-left,.detail-right{display:flex;flex-direction:column;gap:32px}.card{background:#fff;border-radius:20px;padding:32px;border:1px solid var(--border);box-shadow:0 4px 6px -1px #0000000d}.profile-main{text-align:center;margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid #f1f5f9}.avatar-large img{width:120px;height:120px;border-radius:32px;margin-bottom:20px;border:4px solid var(--primary-light)}.profile-main h2{font-size:1.5rem;font-weight:800;color:#1e293b;margin-bottom:4px}.student-type{color:var(--text-muted);font-size:.95rem;font-weight:600;margin-bottom:24px}.portal-code-badge{background:#f8fafc;border:1.5px dashed var(--border);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:4px}.portal-code-badge span{font-size:.7rem;font-weight:700;color:#94a3b8;letter-spacing:.05em}.portal-code-badge strong{font-size:1.1rem;font-family:JetBrains Mono,monospace;color:var(--primary);letter-spacing:1px}.info-list{display:flex;flex-direction:column;gap:20px}.info-item{display:flex;align-items:center;gap:16px}.info-item svg{color:#94a3b8}.info-item label{display:block;font-size:.75rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.info-item span{font-size:.95rem;font-weight:600;color:#334155}.guardian-card h3{font-size:1.1rem;font-weight:800;margin-bottom:24px}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.card-top h3{display:flex;align-items:center;gap:10px;font-size:1.1rem;font-weight:800}.percentage-chip{background:#dcfce7;color:#15803d;padding:6px 12px;border-radius:100px;font-size:.8rem;font-weight:700;display:flex;align-items:center;gap:6px}.attendance-stats{display:flex;flex-direction:column;gap:20px;margin-bottom:32px}.a-stat label{display:block;font-size:.85rem;font-weight:600;color:var(--text-muted);margin-bottom:10px}.a-dots{display:flex;gap:8px;align-items:center}.a-dot{width:24px;height:24px;border-radius:6px;background:#f1f5f9}.a-dot.present{background:#10b981}.a-dot.absent{background:#ef4444}.a-dot.late{background:#f59e0b}.progress-bar-v2{height:10px;background:#f1f5f9;border-radius:100px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#34d399);border-radius:100px}.attendance-list-mini label,.payment-history-mini label{display:block;font-size:.75rem;font-weight:700;color:#94a3b8;margin-bottom:16px;letter-spacing:.05em}.mini-log-item{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f8fafc;font-size:.9rem;font-weight:600;color:#475569}.status-tag{font-size:.75rem;font-weight:700;text-transform:capitalize}.status-tag.present{color:#10b981}.status-tag.absent{color:#ef4444}.status-badge{padding:6px 14px;border-radius:100px;font-size:.8rem;font-weight:800;display:flex;align-items:center;gap:8px}.status-badge.paid{background:#dcfce7;color:#15803d}.status-badge.unpaid{background:#fee2e2;color:#dc2626}.current-month-box{background:#eff6ff;padding:16px;border-radius:16px;display:flex;align-items:center;gap:12px;color:#1e40af;margin-bottom:24px}.current-month-box span{font-size:.9rem}.p-history-table{display:flex;flex-direction:column;gap:12px}.p-history-row{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f8fafc;border-radius:12px}.p-info{display:flex;align-items:center;gap:10px;font-size:.85rem;font-weight:600;color:#475569}.p-amount{font-size:.9rem;font-weight:800;color:#1e293b}.collect-btn{width:100%;margin-top:24px;height:52px;background:var(--primary);color:#fff;border:none;border-radius:14px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;transition:all .2s}.collect-btn:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 10px 15px -3px #2563eb33}@media(max-width:900px){.detail-grid{grid-template-columns:1fr}}.employees-page{padding:24px 0}.employees-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:32px}.stat-card-v3{padding:24px;display:flex;align-items:center;gap:20px;background:#fff}.stat-icon{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center}.stat-icon.staff{background:#2563eb1a;color:var(--primary)}.stat-icon.salary{background:#10b9811a;color:var(--success)}.stat-data span{font-size:.9rem;color:var(--text-muted)}.stat-data h3{font-size:1.5rem;margin-top:4px}@media(max-width:1024px){.employees-stats,.employees-main-grid{grid-template-columns:1fr}}@media(max-width:768px){.table-responsive thead{display:none}.table-responsive,.table-responsive tbody,.table-responsive tr,.table-responsive td{display:block;width:100%}.table-responsive tr{margin-bottom:16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-card);padding:12px}.table-responsive td{border-bottom:1px solid var(--border);padding:12px 0;display:flex;justify-content:space-between;align-items:center;text-align:right}.table-responsive td:last-child{border-bottom:none;justify-content:center;padding-top:16px}.table-responsive td:before{content:attr(data-label);float:left;font-weight:700;text-transform:uppercase;font-size:.7rem;color:var(--text-muted)}}.employees-main-grid{display:grid;grid-template-columns:2fr 1.2fr;gap:32px;align-items:start}.role-pill{padding:4px 10px;border-radius:6px;font-size:.75rem;font-weight:700}.role-pill.teacher{background:#eff6ff;color:#2563eb}.role-pill.accountant{background:#fdf2f7;color:#db2777}.role-pill.staff{background:#f0fdf4;color:#16a34a}.status-indicator{display:flex;align-items:center;gap:6px;font-size:.85rem}.status-indicator:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--success)}.history-stack{padding:20px}.history-item{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid #f1f5f9}.history-item:last-child{border:none}.h-info{flex:1;display:flex;flex-direction:column}.h-info span{font-size:.8rem;color:var(--text-muted)}.h-amount{font-weight:700;font-size:.95rem}.employee-preview-mini{background:#f8fafc;padding:16px;border-radius:12px;margin-bottom:24px;border-left:4px solid var(--primary)}.employee-preview-mini strong{display:block;margin-bottom:4px}.employee-preview-mini span{font-size:.85rem;color:var(--text-muted)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted)}.p-modal-form{display:flex;flex-direction:column;gap:20px}.empty-row{padding:60px!important;text-align:center;color:var(--text-muted)}@media(max-width:1200px){.employees-main-grid{grid-template-columns:1fr}}.settings-page{padding:24px 0}.settings-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:32px;align-items:start}.settings-main-area{display:flex;flex-direction:column;gap:24px}.settings-section{padding:32px}.section-title-icon{display:flex;align-items:center;gap:12px;color:var(--primary);margin-bottom:24px}.section-title-icon h3{color:var(--text-main);font-size:1.25rem;font-weight:700}.settings-form{display:flex;flex-direction:column;gap:28px}.select-wrapper,.input-wrapper{position:relative;display:flex;align-items:center}.input-field-icon{position:absolute;left:14px;color:var(--text-muted)}.p-input-with-icon{padding-left:44px!important}.input-wrapper input{width:100%;padding:12px 14px;border:1.5px solid var(--border);border-radius:10px;font-size:1rem;text-align:center;font-weight:700;color:var(--primary)}.rate-prefix,.rate-suffix{padding:0 16px;font-weight:600;color:var(--text-muted);white-space:nowrap}.theme-toggle-group{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px}.theme-option{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px;border:2px solid var(--border);border-radius:12px;background:var(--bg-card);cursor:pointer;transition:all .2s ease;color:var(--text-muted);font-weight:600}.theme-option:hover{border-color:var(--primary-light);background:var(--bg-hover)}.theme-option.active{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.form-actions-bar{margin-top:12px}.settings-info-panel{padding:32px;background:linear-gradient(to bottom right,var(--bg-card),var(--bg-hover))}.info-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.info-header h3{font-size:1.1rem;font-weight:700}.role-tag{display:inline-block;padding:4px 12px;border-radius:20px;font-size:.85rem;font-weight:700;margin-top:8px}.role-tag.admin{background:var(--primary-light);color:var(--primary)}.info-notes{margin-top:32px;padding:20px;background:var(--bg-card);border-radius:12px;border:1px dashed var(--border)}.info-notes h4{font-size:.9rem;font-weight:700;margin-bottom:12px;color:var(--text-main)}.info-notes ul{list-style:none;padding:0}.info-notes li{font-size:.85rem;color:var(--text-muted);margin-bottom:8px;padding-left:20px;position:relative}.info-notes li:before{content:"•";position:absolute;left:0;color:var(--primary);font-weight:700}@media(max-width:1024px){.settings-grid{grid-template-columns:1fr}}@media(max-width:640px){.theme-toggle-group{grid-template-columns:1fr}}
