@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);#root,body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff!important;background:#fff!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:100%;margin:0;overflow-y:auto}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.admin-login-container{align-items:center;background-color:#2c3e50;display:flex;justify-content:center;min-height:100vh}.login-form-wrapper{border-radius:8px;box-shadow:0 4px 12px #0000001a;max-width:400px;padding:40px}.login-form-wrapper h2{color:#2c3e50;margin-bottom:24px;text-align:center}.form-group input{border-radius:4px;font-size:16px;padding:12px}.error-message{background-color:#ffebee;border-radius:4px;color:#d32f2f;margin-bottom:20px}.success-message{background-color:#e8f5e9;border-radius:4px;color:#2e7d32;padding:12px}button{background-color:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:12px;transition:background-color .3s;width:100%}button:hover{background-color:#1976d2}button:disabled{background-color:#90caf9;cursor:not-allowed}.admin-layout{background-color:#f5f7fa;display:flex;min-height:100vh}.admin-sidebar{background-color:#2c3e50;box-shadow:2px 0 5px #0000001a;color:#fff;display:flex;flex-direction:column;width:250px}.sidebar-header{border-bottom:1px solid #34495e}.sidebar-header h3{font-size:20px;font-weight:600;margin:0}.sidebar-menu ul{list-style:none;margin:0;padding:0}.sidebar-menu li{align-items:center;border-left:3px solid #0000;cursor:pointer;display:flex;padding:15px 20px;transition:background-color .3s}.sidebar-menu li.active,.sidebar-menu li:hover{background-color:#34495e}.sidebar-menu li.active{border-left-color:#ff8c42}.menu-icon{font-size:18px;margin-right:10px}.sidebar-footer{border-top:1px solid #34495e}.sidebar-footer .logout-btn{align-items:center;background-color:#e74c3c;display:flex;justify-content:center}.sidebar-footer .logout-btn:hover{background-color:#c0392b}.admin-main-content{flex:1 1;overflow-y:auto;padding:0}.main-header{background-color:#fff;box-shadow:0 2px 5px #0000000d;padding:20px 30px}.main-header h1{color:#2c3e50;font-size:24px;font-weight:500;margin:0}.main-content-body{padding:30px}.dashboard-content{gap:24px}.welcome-card{border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:24px}.dashboard-stats{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.stat-card{border-radius:8px;box-shadow:0 2px 4px #0000001a}.stat-number{color:#2196f3;margin:16px 0 0}.classes-content{display:flex;flex-direction:column;gap:30px}.form-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:24px}.form-card h2{color:#2c3e50;margin-bottom:20px;margin-top:0}textarea{border:1px solid #e9ecef;border-radius:4px;font-family:inherit;font-size:16px;padding:12px;resize:vertical;width:100%}.update-btn{background-color:#27ae60}.update-btn:hover{background-color:#219653}.cancel-btn{width:30%}.cancel-btn,.cancel-btn:hover{background-color:#2c3e50}.classes-list-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:24px}.classes-list-container h2{color:#2c3e50;margin-bottom:20px;margin-top:0}.no-data-message{color:#2c3e50;font-style:italic;padding:20px;text-align:center}.classes-list{display:flex;flex-direction:column;gap:16px}.class-item{align-items:center;background-color:#fff;border-left:4px solid #ff8c42;border-radius:8px;display:flex;justify-content:space-between;padding:16px}.class-info{flex:1 1}.class-info h3{color:#2c3e50;margin:0 0 8px}.class-info p{color:#2c3e50;margin:4px 0}.class-info .instructor{color:#34495e;font-size:14px}.class-info .description{color:#2c3e50;font-size:14px;margin-top:8px}.class-actions{display:flex;gap:8px}.edit-btn{background-color:#ff8c42;border-radius:4px;transition:background-color .3s;width:auto}.edit-btn:hover{background-color:#e67a35}.delete-btn{background-color:#e74c3c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .3s;width:auto}.delete-btn:hover{background-color:#c0392b}.students-content{display:flex;flex-direction:column;gap:30px}.class-selector-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:24px}.class-selector-card h2{color:#2c3e50;margin-bottom:20px;margin-top:0}.no-classes-message{padding:16px;text-align:center}.no-classes-message p{color:#2c3e50;margin-bottom:16px}.add-class-btn{background-color:#ff8c42;margin:0 auto;max-width:200px}.class-select{border-radius:4px}.class-select,.date-select{background-color:#fff;cursor:pointer;font-size:16px;padding:12px}.date-select{border:1px solid #e9ecef;border-radius:4px;width:100%}.form-hint{font-size:12px;font-style:italic;margin-top:5px}.student-form-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:24px}.student-form-card h2{color:#2c3e50;margin-bottom:20px;margin-top:0}.students-list-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:24px}.students-list-container h2{color:#2c3e50;margin-bottom:20px;margin-top:0}.loading-message{color:#2c3e50;padding:20px;text-align:center}.students-list{display:flex;flex-direction:column;gap:16px}.student-item{background-color:#fff;border-left:4px solid #9b59b6;padding:16px}.student-info h3{color:#2c3e50}.student-info p{color:#2c3e50;margin:4px 0}.student-email,.student-phone{color:#34495e;font-size:14px}.student-actions{gap:8px}.fees-content{display:flex;flex-direction:column;gap:30px}.fees-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:24px}.fees-card h2{color:#2c3e50;margin-bottom:20px;margin-top:0}.fees-form{display:flex;flex-direction:column;gap:24px}.fees-list{gap:20px}.fee-item{background-color:#fff;border-left:4px solid #f1c40f;border-radius:8px;flex-direction:column;padding:16px}.fee-class-name h3{color:#2c3e50;margin:0 0 16px}.fee-inputs{display:flex;flex-wrap:wrap;gap:16px}.fee-amount-input,.fee-period-select{flex:1 1;min-width:200px}.fee-amount-input label,.fee-period-select label{color:#2c3e50;display:block;font-weight:500;margin-bottom:8px}.fee-amount-input input,.fee-period-select select{border:1px solid #e9ecef;border-radius:4px;font-size:16px;padding:12px;width:100%}.fee-period-select select{background-color:#fff;cursor:pointer}.save-fees-btn{background-color:#f1c40f;color:#2c3e50;font-weight:700;margin-top:16px}.save-fees-btn:hover{background-color:#f39c12}.fees-summary-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:24px}.fees-summary-card h2{color:#2c3e50;margin-bottom:20px;margin-top:0}.fees-summary-list{display:flex;flex-direction:column;gap:16px}.fees-summary-item{align-items:center;background-color:#fff;border-left:4px solid #f1c40f;border-radius:8px;display:flex;justify-content:space-between;padding:16px}.fees-summary-content{flex:1 1}.fees-summary-content h3{color:#2c3e50;margin:0 0 8px}.fees-amount{color:#34495e;font-size:18px}.fees-period{color:#2c3e50;font-size:14px;font-style:italic}.placeholder-content{box-shadow:0 2px 4px #0000001a;padding:24px}.placeholder-content h2{margin-top:0}.placeholder-content p{color:#2c3e50}.fee-vouchers-content{display:flex;flex-direction:column;gap:30px}.voucher-students-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:24px}.voucher-students-container h2{color:#2c3e50;margin-bottom:20px;margin-top:0}.voucher-table-container{overflow-x:auto}.voucher-table{border-collapse:collapse;min-width:800px;width:100%}.voucher-table td,.voucher-table th{border:1px solid #e9ecef;padding:12px;text-align:left}.voucher-table th{color:#2c3e50;font-weight:600}.voucher-student-row:hover,.voucher-table th{background-color:#fff}.fee-amount{color:#2c3e50}.voucher-actions{display:flex;flex-wrap:wrap;gap:8px}.edit-fee-btn{background-color:#ff8c42;border-radius:4px;padding:8px 12px;transition:background-color .3s;width:auto}.edit-fee-btn:hover{background-color:#e67a35}.download-voucher-btn{background-color:#27ae60;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 12px;transition:background-color .3s;width:auto}.download-voucher-btn:hover{background-color:#219653}.edit-fee-modal{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.edit-fee-modal-content{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;max-width:400px;padding:24px;width:90%}.edit-fee-modal-content h3{color:#2c3e50;margin-bottom:20px;margin-top:0}.edit-fee-actions{display:flex;gap:16px;margin-top:24px}.super-admin-login-container{align-items:center;background-color:#fff;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;justify-content:center;line-height:1.5;min-height:100vh;padding:20px}.login-form-wrapper{background-color:#fff;border:none;border-radius:12px;box-shadow:0 4px 20px #00000014;max-width:450px;padding:36px 48px 48px;width:100%}.super-admin-header{border-bottom:none;margin-bottom:0;padding-bottom:0;text-align:center}.nexy-logo{margin:0 auto 32px;max-width:100%;width:180px}.super-admin-header h1{color:#2c3e50;font-size:2.4rem;font-weight:700;line-height:1.2;margin:0 0 12px}.super-admin-header p{color:#2c3e50;font-size:14px;font-weight:400;line-height:1.5;margin:0 0 40px}.login-form{margin-top:0}.login-form h2{color:#2c3e50;font-size:24px;font-weight:600;line-height:1.5;margin-top:0;text-align:center}.form-group:last-of-type,.login-form h2{margin-bottom:24px}.form-group label{line-height:1.5}.form-group input{background:#fff;border:1px solid #e9ecef;color:#2c3e50;font-size:1rem;line-height:1.5;min-height:48px;padding:14px 12px}.form-group input:focus{border-color:#ff8c42;box-shadow:0 0 0 3px #ff8c421a}.form-group input::placeholder{color:#2c3e50}.password-toggle-btn{color:#2c3e50;padding:4px;right:12px}.password-toggle-btn:focus,.password-toggle-btn:hover{color:#ff8c42}.password-toggle-btn svg{height:20px;width:20px}.super-admin-btn{background-color:#ff8c42;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;height:52px;letter-spacing:normal;line-height:1.5;margin-top:32px;padding:0;text-transform:none;transition:background-color .2s ease;width:100%}.super-admin-btn:active:not(:disabled),.super-admin-btn:hover:not(:disabled){background-color:#f57c2b}.super-admin-btn:disabled{background-color:#2c3e50;cursor:not-allowed}.error-message{animation:shake .5s ease-in-out;background-color:#fef2f2;line-height:1.5;padding:12px;text-align:center}.credentials-info{background:#fff;border:1px solid #e9ecef;border-radius:8px;margin-top:25px;padding:20px;text-align:center}.credentials-info h4{color:#2c3e50;font-size:1rem;font-weight:600;margin:0 0 15px}.credentials-info p{color:#2c3e50;font-size:.9rem;margin:8px 0}.credentials-info strong{color:#2c3e50;font-weight:600}.back-to-home{border:1px solid #e9ecef;margin-top:20px;padding-top:20px;text-align:center}.back-link{color:#ff8c42;font-size:.9rem;font-weight:500;text-decoration:none;transition:color .3s ease}.back-link:hover{color:#f57c2b;text-decoration:underline}@media (max-width:480px){.super-admin-login-container{padding:10px}.login-form-wrapper{border-radius:12px;padding:24px 24px 32px}.nexy-logo{width:140px}.super-admin-header h1{font-size:2rem}.login-form h2{font-size:20px}}@media (prefers-color-scheme:dark){.super-admin-login-container{background-color:#fff}.login-form-wrapper{background:#fff;border:none}.form-group label,.login-form h2,.super-admin-header h1,.super-admin-header p{color:#2c3e50}.form-group input{background:#fff;border-color:#2c3e50;color:#2c3e50}.form-group input:focus{border-color:#ff8c42;box-shadow:0 0 0 3px #ff8c421a}.password-toggle-btn{color:#2c3e50}.password-toggle-btn:hover{color:#ff8c42}.credentials-info{background:#fff;border-color:#2c3e50}.credentials-info h4,.credentials-info p,.credentials-info strong{color:#2c3e50}.back-to-home{border-top-color:#2c3e50}}.super-admin-dashboard{background-color:#fff!important;background:#fff!important;display:flex;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;position:relative}.sidebar{background-color:#fff;border-right:1px solid #e5e7eb;color:#1f2937;left:0;overflow-x:hidden;overflow-y:auto;top:0;transition:transform .3s ease,max-height .3s ease,opacity .3s ease,visibility .3s ease;width:260px;z-index:1001}.sidebar-header{border-bottom:1px solid #e5e7eb;height:80px;justify-content:center;padding:20px}.sidebar-nav{display:flex;flex-direction:column;flex-shrink:0;padding:0}.sidebar-spacer{flex-grow:1;flex-shrink:0}.nav-item{border-left:4px solid #0000;border-radius:0;box-shadow:none;box-sizing:border-box;color:#6b7280;flex-shrink:0;font-size:1rem;font-weight:500;height:48px;outline:none;padding:0 20px}.nav-item:hover:not(.active){background-color:initial;color:#1f2937}.nav-item.active{background-color:#ff8c42!important;border:none!important;border-radius:8px;box-shadow:none!important;font-weight:600;margin-right:16px;outline:none!important;padding-left:20px;padding-right:20px}.nav-item.active,.nav-item.active .nav-icon{color:#fff!important}.nav-item.active:hover{background-color:#ff8c42!important;color:#fff!important}.nav-icon{color:#6b7280;font-size:20px;margin-right:12px;text-align:left}.nav-label{flex:1 1}.sidebar-footer{box-sizing:border-box;flex-shrink:0;padding:20px;width:100%}.logout-btn{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;box-sizing:border-box;color:#6b7280;height:48px;margin:0;padding:0}.logout-btn:hover{background-color:#fff;border-color:#d1d5db}.logout-icon{color:#6b7280;margin-right:.5rem}.main-content{background-color:#fff!important;background:#fff!important;box-sizing:border-box;margin-left:260px;width:calc(100% - 260px)}.content-header{background-color:#fff;border-bottom:1px solid #e5e7eb;box-shadow:none;height:64px;padding:0 32px}.user-info{color:#6b7280;font-weight:500;gap:.8rem}.user-avatar{background-color:#ff8c42!important;font-size:1.5rem}.content-header .user-avatar,.main-content .content-header .user-info .user-avatar,.super-admin-dashboard .user-avatar,.user-info .user-avatar{background-color:#ff8c42!important;background:#ff8c42!important}.content-body{background-color:#f9fafb!important;background:#f9fafb!important;box-sizing:border-box;display:block;max-width:100%;overflow-y:auto;padding:32px;width:100%}.schools-content{background-color:#f9fafb}.dashboard-content{display:block;margin:0!important;max-width:100%!important;padding:0!important;width:100%!important}.dashboard-content h1{display:none}.welcome-message{padding:0!important}.welcome-card,.welcome-message{display:block;margin:0!important;max-width:100%!important;width:100%!important}.welcome-card{background-color:#fff;border:none!important;box-shadow:0 1px 3px #0000001a;box-sizing:border-box;position:relative}.welcome-card:after,.welcome-card:before{background:none!important;background-color:initial!important;content:none!important;display:none!important;height:0!important;opacity:0!important;visibility:hidden!important;width:0!important}.dashboard-content .welcome-card h2,.welcome-card .welcome-heading,.welcome-card h2,.welcome-heading,.welcome-message .welcome-card h2{-webkit-text-fill-color:#000!important;color:#000!important;font-size:28px;font-weight:700;margin-bottom:1rem;text-align:center}.welcome-card p{color:#6b7280;font-size:15px;line-height:1.6;text-align:center}.quick-stats{grid-gap:20px;box-sizing:border-box;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);margin-bottom:2rem;margin-top:32px;width:100%}.stat-card{align-items:center!important;background-color:#fff;border:none!important;border-top:3px solid #ff8c42!important;box-shadow:0 1px 3px #0000001a;display:flex!important;flex-direction:column!important;gap:16px;justify-content:center!important;padding:24px;transition:transform .2s ease,box-shadow .2s ease}.stat-card:before{content:none!important;display:none!important}.stat-card:first-child:before,.stat-card:nth-child(2):before,.stat-card:nth-child(3):before,.stat-card:nth-child(4):before{background:none!important;content:none!important;display:none!important;height:0!important}.quick-stats .stat-card:first-child,.quick-stats .stat-card:nth-child(2),.quick-stats .stat-card:nth-child(3),.quick-stats .stat-card:nth-child(4){border-top:3px solid #ff8c42!important}.quick-stats .stat-card:first-child:before,.quick-stats .stat-card:nth-child(2):before,.quick-stats .stat-card:nth-child(3):before,.quick-stats .stat-card:nth-child(4):before{background:none!important;background-color:initial!important;content:none!important;display:none!important;height:0!important;opacity:0!important;width:0!important}.dashboard-content .quick-stats .stat-card,.super-admin-dashboard .quick-stats .stat-card,.welcome-message .quick-stats .stat-card{border-color:#ff8c42 #0000 #0000 #ff8c42!important;border-top:3px solid #0000!important}.dashboard-content .quick-stats .stat-card:after,.dashboard-content .quick-stats .stat-card:before,.super-admin-dashboard .quick-stats .stat-card:after,.super-admin-dashboard .quick-stats .stat-card:before,.welcome-message .quick-stats .stat-card:after,.welcome-message .quick-stats .stat-card:before{background:none!important;background-color:initial!important;content:none!important;display:none!important;height:0!important;opacity:0!important;position:absolute!important;top:-9999px!important;visibility:hidden!important;width:0!important}.stat-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.stat-icon-wrapper{align-items:center;background-color:#ff8c42;border-radius:50%;display:flex;flex-grow:0;flex-shrink:0;height:56px;justify-content:center;margin:0;max-height:56px;max-width:56px;min-height:56px;min-width:56px;padding:0;width:56px}.stat-icon{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;color:#fff;height:28px;width:28px}.stat-info{align-items:center;display:flex;flex:1 1;flex-direction:column;height:auto;justify-content:center;margin:0}.stat-info,.stat-info h3{padding:0;text-align:center}.stat-info h3{color:#6b7280;font-size:11px;font-weight:500;letter-spacing:.5px;line-height:1.2;margin:0 0 8px;text-transform:uppercase}.stat-info p{color:#1f2937;font-size:32px;font-weight:700;line-height:1;margin:0;padding:0;text-align:center}.recent-activity{margin-top:40px;width:100%}.recent-activity h3{color:#1f2937;font-size:20px;margin-bottom:20px;margin-top:40px;text-align:left}.activity-list{background-color:#fff;border:none;border-radius:12px;box-shadow:0 1px 3px #0000001a;box-sizing:border-box;padding:24px;width:100%}.activity-item{border-bottom:1px solid #f3f4f6;gap:1rem;text-align:left}.activity-item.last-item{border-bottom:none;padding-bottom:0}.activity-time{color:#9ca3af;flex-shrink:0;font-size:14px}.activity-text{color:#1f2937;flex:1 1;font-size:15px;text-align:right}.add-school-content{background-color:#fff!important;background:#fff!important;min-height:100%;width:100%}.add-school-content h1{color:#2c3e50;font-size:2.2rem;font-weight:700;margin-bottom:2rem;text-align:center}.school-form-container{background-color:initial;border:none;border-radius:0;box-shadow:none;padding:0}.school-form{scroll-behavior:smooth;width:100%}.form-group input[type=email],.form-group input[type=number],.form-group input[type=password],.form-group input[type=tel],.form-group input[type=text],.form-group input[type=url],.form-group textarea{background:#fff!important;background-color:#fff!important;cursor:text}.form-section{animation:fadeInUp .4s ease-out forwards;background-color:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;margin-bottom:24px;opacity:0;padding:40px 48px;position:relative}.form-section:first-child{animation-delay:.1s}.form-section:nth-child(2){animation-delay:.2s}.form-section:nth-child(3){animation-delay:.3s}.form-section:nth-child(4){animation-delay:.4s}.form-section:nth-child(5){animation-delay:.5s}.form-section:nth-child(6){animation-delay:.6s}.form-section:last-of-type{margin-bottom:0}.form-section h3{border-bottom:none!important;color:#1f2937!important;font-size:20px;letter-spacing:-.01em;margin:0 0 12px;padding-bottom:0;position:relative}.form-section h3:after{background-color:#ff8b3d;border-radius:2px;content:"";display:block;height:3px;margin:12px auto 32px;width:80px}.form-row{grid-gap:28px;gap:28px;margin-bottom:24px}.form-row:last-child{margin-bottom:0}.form-row:has(.form-group:nth-child(3)){grid-template-columns:1fr 1fr 1fr}.form-group:last-child,.form-group:last-of-type{margin-bottom:0}.form-group label{letter-spacing:.01em;text-align:left}.form-group label .asterisk,.form-group label span.asterisk{color:#ef4444;margin-left:2px}.form-group input,.form-group select,.form-group textarea{background:#fff!important;background-color:#fff!important;border:1.5px solid #d1d5db;box-sizing:border-box;color:#1f2937;font-size:15px;line-height:1.5;padding:14px 16px;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.password-input-wrapper{display:block}.password-input-wrapper input{box-sizing:border-box!important;padding-right:45px!important;width:100%!important}.password-toggle-icon{height:24px;padding:0;width:24px;z-index:10}.password-toggle-icon:hover{color:#1f2937}.password-toggle-icon:focus{color:#ff8c42;outline:none}.success-popup-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080}.success-popup-content{animation:slideUp .4s cubic-bezier(.4,0,.2,1);background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;padding:40px;position:relative;width:90%}.success-popup-icon{animation:scaleIn .5s cubic-bezier(.4,0,.2,1) .2s both}.success-popup-title{line-height:1.2;margin:0 0 24px}.success-popup-details{background:#f9fafb;border-radius:12px;margin-bottom:32px;padding:24px;text-align:left}.success-detail-item{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:12px 0}.success-detail-item:last-child{border-bottom:none;padding-bottom:0}.success-detail-label{color:#6b7280;font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.success-detail-value{color:#1f2937;font-size:16px;font-weight:600;text-align:right}.success-popup-actions{display:flex;gap:12px;justify-content:center}.success-popup-btn{background:linear-gradient(135deg,#ff8c42,#e67a35);border:none;border-radius:8px;box-shadow:0 4px 12px #ff8c424d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;min-width:140px;padding:14px 32px;transition:all .3s ease}.success-popup-btn:hover{box-shadow:0 6px 20px #ff8c4266;transform:translateY(-2px)}.success-popup-btn:active{transform:translateY(0)}.success-popup-btn.secondary{background:#fff;border:2px solid #e5e7eb;box-shadow:none;color:#6b7280}.success-popup-btn.secondary:hover{background:#f9fafb;border-color:#d1d5db;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}@media (max-width:768px){.success-popup-content{margin:20px;padding:32px 24px}.success-popup-title{font-size:24px}.success-popup-actions{flex-direction:column}.success-popup-btn{width:100%}}.error-popup-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.error-popup-content{animation:slideUp .4s cubic-bezier(.4,0,.2,1);background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;padding:40px;position:relative;text-align:center;width:90%}.error-popup-icon{align-items:center;animation:shake .5s cubic-bezier(.4,0,.2,1) .2s both;display:flex;justify-content:center;margin-bottom:24px}.error-popup-title{color:#1f2937;font-size:28px;font-weight:700;line-height:1.2;margin:0 0 20px}.error-popup-message{background:#fef2f2;border:1px solid #fee2e2;border-radius:12px;margin-bottom:32px;padding:20px;text-align:left}.error-popup-message p{word-wrap:break-word;color:#991b1b;font-size:16px;line-height:1.6;margin:0}.error-popup-actions{display:flex;gap:12px;justify-content:center}.error-popup-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:8px;box-shadow:0 4px 12px #ef44444d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;min-width:140px;padding:14px 32px;transition:all .3s ease}.error-popup-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 6px 20px #ef444466;transform:translateY(-2px)}.error-popup-btn:active{transform:translateY(0)}@media (max-width:768px){.error-popup-content{margin:20px;padding:32px 24px}.error-popup-title{font-size:24px}.error-popup-message{padding:16px}.error-popup-message p{font-size:14px}.error-popup-actions{flex-direction:column}.error-popup-btn{width:100%}}.delete-confirm-popup-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10001}.delete-confirm-popup-content{animation:slideUp .4s cubic-bezier(.4,0,.2,1);background:#fff;border:2px solid #fef3c7;border-radius:12px;box-shadow:0 10px 30px #0003;max-width:500px;padding:40px;position:relative;text-align:center;width:90%}.delete-confirm-popup-icon{align-items:center;animation:scaleIn .3s ease-out forwards;display:flex;height:64px;justify-content:center;margin:0 auto 20px;width:64px}.delete-confirm-popup-title{color:#1f2937;font-size:24px;font-weight:700;margin-bottom:15px}.delete-confirm-popup-message{background-color:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin-bottom:30px;padding:20px;text-align:left}.delete-confirm-popup-message p{word-wrap:break-word;color:#92400e;font-size:15px;line-height:1.6;margin:0}.delete-confirm-popup-message p strong{color:#ef4444;font-weight:700}.delete-confirm-popup-actions{display:flex;gap:15px;justify-content:center}.delete-confirm-popup-btn{border:none;border-radius:8px;cursor:pointer;font-size:15px;font-weight:600;min-width:120px;padding:12px 25px;transition:all .2s ease}.delete-confirm-popup-btn.cancel{background-color:#e5e7eb;color:#374151}.delete-confirm-popup-btn.cancel:hover{background-color:#d1d5db;transform:translateY(-1px)}.delete-confirm-popup-btn.confirm{background-color:#ef4444;color:#fff}.delete-confirm-popup-btn.confirm:hover{background-color:#dc2626;box-shadow:0 4px 12px #ef44444d;transform:translateY(-1px)}.delete-confirm-popup-btn:disabled{cursor:not-allowed;opacity:.6;transform:none!important}@media (max-width:480px){.delete-confirm-popup-content{padding:25px}.delete-confirm-popup-actions{flex-direction:column;gap:10px}.delete-confirm-popup-btn{width:100%}}.form-group input::placeholder,.form-group textarea::placeholder{color:#9ca3af;font-weight:400;opacity:1}.form-group input:hover:not(:focus),.form-group select:hover:not(:focus),.form-group textarea:hover:not(:focus){background:#fff!important;background-color:#fff!important;border-color:#9ca3af;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#fff!important;background-color:#fff!important;border-color:#ff8b3d!important;box-shadow:0 0 0 4px #ff8b3d1f!important;outline:none!important;transition:all .2s cubic-bezier(.4,0,.2,1)}.form-group input.error,.form-group select.error,.form-group textarea.error{background:#fff!important;background-color:#fff!important}.form-group input.success,.form-group select.success,.form-group textarea.success{background:#fff!important;background-color:#fff!important;border-color:#10b981}.form-group input.success:focus,.form-group select.success:focus,.form-group textarea.success:focus{border-color:#10b981!important;box-shadow:0 0 0 4px #10b9811f!important}.form-group textarea{background:#fff!important;background-color:#fff!important;font-size:15px;line-height:1.6;min-height:140px;padding:16px;resize:vertical}.form-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fff!important;background:#fff!important;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23374151' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;cursor:pointer;padding-right:40px}.form-group select:focus{background-color:#fff!important;background:#fff!important}.error-text{font-size:.875rem;font-weight:500;margin-top:8px}.form-actions{gap:16px;margin-top:40px;padding-top:32px}.cancel-btn,.submit-btn{border-radius:8px;font-size:15px;font-weight:600;padding:14px 32px}.cancel-btn{background-color:#6b7280!important;border:none!important;color:#fff!important}.cancel-btn:hover{background-color:#4b5563!important;transform:translateY(-1px)}.submit-btn{background-color:#ff8b3d!important;color:#fff!important;padding:14px 40px}.submit-btn:hover:not(:disabled){background-color:#ff7524!important;box-shadow:0 4px 12px #ff8b3d4d;transform:translateY(-1px)}.submit-btn:disabled{background-color:#fff}.schools-content{width:100%}.content-header h1{color:#1f2937;font-size:24px;margin-bottom:32px}.schools-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;margin-bottom:32px}.schools-stats{grid-gap:24px;display:grid;flex:1 1;gap:24px;grid-template-columns:repeat(3,1fr);min-width:0}.stat-item{background:#fff;border-left:4px solid #3b82f6;border-radius:12px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;overflow:hidden;padding:28px 24px;position:relative;transition:all .2s ease}.stat-item:first-child{border-left-color:#3b82f6}.stat-item:nth-child(2){border-left-color:#10b981}.stat-item:nth-child(3){border-left-color:#ff8b3d}.stat-item:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.stat-item:after{background:currentColor;border-radius:50%;content:"";height:24px;opacity:.2;position:absolute;right:12px;top:12px;width:24px}.stat-item:first-child:after{color:#3b82f6}.stat-item:nth-child(2):after{color:#10b981}.stat-item:nth-child(3):after{color:#ff8b3d}.stat-item-with-button{display:flex;flex-direction:column;position:relative}.stat-item-with-button .add-school-btn{justify-content:center;margin-top:20px;width:100%}.stat-number{color:#1f2937;font-size:36px;line-height:1}.stat-label{font-weight:600}.schools-actions{align-items:center;display:flex;gap:12px;justify-content:flex-end}.add-school-btn,.refresh-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s ease}.refresh-btn{background-color:#3b82f6;padding:12px 24px}.refresh-btn:hover:not(:disabled){background-color:#2563eb}.add-school-btn{background-color:#ff8b3d!important;color:#fff!important;padding:12px 28px}.add-school-btn:hover{background-color:#ff7524!important;transform:translateY(-1px)}.loading-container{border:1px solid #e9ecef;border-radius:8px;box-shadow:0 4px 15px #0000001a}.empty-state{box-shadow:0 4px 15px #0000001a;padding:3rem}.empty-state h3{margin-bottom:1rem}.schools-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;overflow:hidden;padding:0}.schools-table{border-collapse:collapse;table-layout:fixed;width:100%}.schools-table th{background-color:#ff8b3d;border-bottom:2px solid #e5e7eb;box-sizing:border-box;color:#fff;font-size:12px;font-weight:700;letter-spacing:.05em;padding:16px 24px;position:sticky;text-align:left;text-transform:uppercase;top:0;z-index:10}.schools-table th:first-child{text-align:left;width:25%}.schools-table th:nth-child(2){text-align:center;width:12%}.schools-table th:nth-child(3){text-align:left;width:25%}.schools-table th:nth-child(4),.schools-table th:nth-child(5){text-align:center;width:10%}.schools-table th:nth-child(6){text-align:center;width:18%}.schools-table td{word-wrap:break-word;border-bottom:1px solid #f3f4f6;box-sizing:border-box;color:#1f2937;font-size:14px;line-height:1.5;padding:20px 24px;text-align:left;transition:background-color .15s ease;vertical-align:middle}.schools-table td:first-child{text-align:left}.schools-table td:nth-child(2){text-align:center}.schools-table td:nth-child(3){text-align:left}.schools-table td:nth-child(4),.schools-table td:nth-child(5),.schools-table td:nth-child(6){text-align:center}.schools-table tbody tr{vertical-align:middle}.schools-table tbody tr:last-child td{border-bottom:none}.schools-table tbody tr:hover{background-color:#f9fafb;cursor:pointer}.schools-table tbody tr:hover td{background-color:#f9fafb}.school-name{word-wrap:break-word;align-items:center;color:#1f2937;display:flex;font-size:15px;font-weight:600;gap:.5rem;overflow-wrap:break-word}.website-link{color:#ff8c42;font-size:1.2rem;text-decoration:none}.website-link:hover{color:#e67a35}.email-link{color:#059669;display:inline-block;font-size:14px;text-align:left}.schools-table td:nth-child(4),.schools-table td:nth-child(5){color:#1f2937;font-weight:600;text-align:center}.action-buttons{flex-direction:row;gap:8px;height:auto;width:100%}.schools-table td:last-child{display:table-cell;line-height:1.5;padding:20px 24px;text-align:center;vertical-align:middle}.schools-table td:last-child .action-buttons{flex-direction:row;gap:8px;line-height:1.5}.delete-btn,.edit-btn,.schools-table td:last-child .action-buttons{align-items:center;display:inline-flex;justify-content:center;margin:0;padding:0;vertical-align:middle}.delete-btn,.edit-btn{border-radius:8px;flex-shrink:0;font-size:16px;height:36px;line-height:1;transition:all .2s ease;width:36px}.edit-btn{background-color:#fef3c7;color:#d97706}.edit-btn:hover{background-color:#fde68a}.delete-btn{background-color:#fee2e2;color:#dc2626}.delete-btn:hover{background-color:#fecaca}.popup-overlay{background-color:#00000080}.popup-content{box-shadow:0 20px 40px #00000026;max-width:1200px;position:relative;width:90%}.popup-header{background:linear-gradient(135deg,#ff8c42,#e67a35)!important;color:#fff!important}.popup-header h2{color:#fff!important;font-weight:600}.close-btn{height:2.5rem;padding:.5rem;width:2.5rem}.close-btn:hover{background-color:#fff3}.edit-school-form{padding:2rem}.edit-school-form .form-section{margin-bottom:2rem}.edit-school-form .form-section h3{border:1px solid #e9ecef;color:#2c3e50;font-size:1.1rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem}.edit-school-form .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.edit-school-form .form-group{display:flex;flex-direction:column}.edit-school-form .form-group label{color:#2c3e50;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.edit-school-form .form-group input,.edit-school-form .form-group select{border:1px solid #e9ecef;border-radius:6px;font-size:.9rem;padding:.75rem;transition:border-color .2s ease}.edit-school-form .form-group input:focus,.edit-school-form .form-group select:focus{border-color:#ff8c42!important;box-shadow:0 0 0 3px #ff8c421a!important;outline:none}.edit-school-form .form-group input.error,.edit-school-form .form-group select.error{border-color:#dc3545}.edit-school-form .error-text{color:#dc3545;font-size:.8rem;margin-top:.25rem}.edit-school-form .checkbox-label{align-items:center;color:#2c3e50;cursor:pointer;display:flex;font-weight:500}.edit-school-form .checkbox-label input[type=checkbox]{height:1.2rem;margin-right:.5rem;width:1.2rem}.edit-school-form .form-actions{border:1px solid #e9ecef;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem}.edit-school-form .cancel-btn,.edit-school-form .submit-btn{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;min-width:120px;padding:.75rem 1.5rem;transition:all .2s ease}.edit-school-form .cancel-btn{background-color:#fff;color:#fff}.edit-school-form .cancel-btn:hover{background-color:#5a6268}.edit-school-form .submit-btn{background:linear-gradient(135deg,#ff8c42,#e67a35);color:#fff}.edit-school-form .submit-btn:hover{box-shadow:0 4px 12px #007bff4d;transform:translateY(-1px)}.edit-school-form .submit-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.popup-content{margin:1rem;max-height:95vh}.popup-header{padding:1rem 1.5rem}.edit-school-form{padding:1.5rem}.edit-school-form .form-row{gap:.5rem;grid-template-columns:1fr}.edit-school-form .form-actions{flex-direction:column}.edit-school-form .cancel-btn,.edit-school-form .submit-btn{width:100%}}.principal-info{font-size:.9rem}.principal-info div{font-weight:500;margin-bottom:.2rem}.date-info{color:#2c3e50}.status-badge{padding:.3rem .8rem}.status-badge.active{background-color:#d4edda;color:#155724}.status-badge.inactive{background-color:#f8d7da;color:#721c24}.type-badge{background:#dbeafe;color:#1e40af;font-size:11px;letter-spacing:.025em;padding:6px 12px;text-align:left}.type-badge.blue{background-color:#dbeafe;color:#1e40af}.type-badge.green{background-color:#d1fae5;color:#065f46}.type-badge.orange{background-color:#fed7aa;color:#9a3412}.type-badge.purple{background-color:#e9d5ff;color:#6b21a8}.type-badge.gray{background-color:#e5e7eb;color:#374151}.coming-soon{width:100%}.coming-soon h1{color:#2c3e50;font-size:2.2rem;font-weight:700;margin-bottom:2rem}.coming-soon-content{background-color:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 4px 15px #0000001a;padding:3rem;text-align:center}.coming-soon-icon{font-size:4rem;margin-bottom:1.5rem}.coming-soon-content h2{color:#ff8c42;font-size:1.8rem;font-weight:600;margin-bottom:1rem}.coming-soon-content p{color:#2c3e50;font-size:1.1rem;line-height:1.6;margin-bottom:2rem}.feature-preview{background-color:#fff;border:1px solid #e9ecef;border-radius:8px;margin-top:2rem;padding:1.5rem;text-align:left}.feature-preview h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin-bottom:1rem}.feature-preview ul{color:#2c3e50;line-height:1.8;margin:0;padding-left:1.5rem}.feature-preview li{margin-bottom:.5rem}@media (max-width:768px){.mobile-header{display:flex!important}.mobile-overlay{display:none!important}.sidebar{background-color:#fff!important;border-bottom:1px solid #e5e7eb!important;border-right:none!important;border-top:none!important;box-shadow:0 4px 12px #00000026!important;display:flex!important;flex-direction:column!important;gap:0!important;height:auto!important;left:0!important;margin:0!important;max-height:0!important;opacity:0!important;overflow:hidden!important;padding:0!important;position:fixed!important;right:0!important;top:64px!important;transform:translateY(0)!important;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s ease .1s,visibility .3s ease!important;visibility:hidden!important;width:100%!important;z-index:1002!important}.sidebar.mobile-open{max-height:600px!important;overflow-y:auto!important;visibility:visible!important}.sidebar.mobile-open,.sidebar.mobile-open>*{display:flex!important;opacity:1!important}.sidebar.mobile-open .sidebar-nav{display:flex!important;flex-direction:column!important}.sidebar.mobile-open .sidebar-footer,.sidebar.mobile-open .sidebar-spacer{display:block!important}.sidebar-header,.sidebar-logo{display:none!important;height:0!important;margin:0!important;opacity:0!important;overflow:hidden!important;padding:0!important;visibility:hidden!important}.sidebar-logo{max-height:0!important;max-width:0!important;width:0!important}.sidebar .sidebar-header{border:none!important;display:none!important;height:0!important;min-height:0!important;opacity:0!important;overflow:hidden!important;visibility:hidden!important}.sidebar .sidebar-header,.sidebar-nav{margin:0!important;padding:0!important}.sidebar-nav{gap:0!important}.nav-item{border-bottom:1px solid #f3f4f6;border-left:none;border-radius:0;border-top:none;margin:0!important;padding:16px 20px;width:100%}.nav-item:first-child{border-top:none!important;margin-top:0!important;padding-top:16px!important}.nav-item.active{border-radius:0;margin-right:0}.sidebar-footer{border-top:1px solid #e5e7eb;padding:16px 20px}.logout-btn{width:100%}.main-content{background-color:#fff!important;background:#fff!important;margin-left:0;margin-top:64px;width:100%}.content-header{margin-top:0}.quick-stats{grid-template-columns:repeat(2,1fr)}.content-header{flex-direction:column;gap:1rem;text-align:center}.content-body{background-color:#fff!important;background:#fff!important;padding:1rem}.quick-stats{gap:16px;grid-template-columns:1fr}.activity-item{align-items:flex-start;flex-direction:column;gap:.5rem}.activity-time{min-width:auto}.activity-text{margin-left:0}.schools-stats{gap:16px;grid-template-columns:1fr}.schools-header{align-items:stretch;flex-direction:column}.schools-actions{flex-direction:column;justify-content:stretch}.add-school-btn,.refresh-btn{justify-content:center;width:100%}.schools-table-container{overflow-x:auto}.schools-table{min-width:800px}.schools-table td,.schools-table th{font-size:13px;padding:12px 16px}.stat-item{padding:20px 16px}.stat-number{font-size:28px}.form-row{grid-template-columns:1fr}.school-form-container{padding:24px}.form-section{margin-bottom:20px;padding:24px}.form-row{gap:20px;grid-template-columns:1fr!important}.form-row:has(.form-group:nth-child(3)){grid-template-columns:1fr!important}.form-actions{flex-direction:column;gap:12px}.cancel-btn,.submit-btn{width:100%}.schools-table{table-layout:auto}.schools-table th:first-child,.schools-table th:nth-child(2),.schools-table th:nth-child(3),.schools-table th:nth-child(4),.schools-table th:nth-child(5),.schools-table th:nth-child(6){width:auto}.schools-table td,.schools-table th{font-size:.9rem;padding:.8rem .5rem}}@media (max-width:480px){.coming-soon-content,.welcome-card{padding:24px}.quick-stats{grid-template-columns:1fr}.stat-card{padding:20px}.stat-icon-wrapper{height:48px;width:48px}.stat-icon{font-size:24px}.stat-info p{font-size:28px}.content-header{height:auto;min-height:64px;padding:0 16px}.content-header h1{font-size:20px}}.country-code-select{font-size:.9rem;max-width:180px;min-width:140px;padding:.75rem}.mobile-header{align-items:center;background-color:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;display:none;height:64px;justify-content:space-between;left:0;padding:0 20px;position:fixed;right:0;top:0;z-index:1003}.mobile-header-left{align-items:center;display:flex}.mobile-header-text{color:#1f2937;font-size:18px;font-weight:600}.mobile-menu-toggle{background:none;display:flex;height:40px;padding:8px;transition:background-color .2s ease;width:40px}.mobile-menu-toggle:hover{background-color:#f3f4f6}.hamburger{cursor:pointer;display:flex;flex-direction:column;height:18px;justify-content:space-between;width:24px}.hamburger span{background-color:#1f2937;border-radius:2px;display:block;height:3px;transition:all .3s ease;width:100%}.hamburger.open span:first-child{transform:rotate(45deg) translate(7px,7px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}@media (max-width:768px){.mobile-header{display:flex!important}.mobile-overlay{display:none!important}.sidebar{background-color:#fff!important;border-bottom:1px solid #e5e7eb!important;border-right:none!important;border-top:none!important;box-shadow:0 4px 12px #00000026!important;display:flex!important;flex-direction:column!important;gap:0!important;height:auto!important;left:0!important;margin:0!important;max-height:0!important;max-width:100%!important;opacity:0!important;overflow:hidden!important;padding:0!important;position:fixed!important;right:0!important;top:64px!important;transform:translateY(0)!important;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s ease .1s,visibility .3s ease!important;visibility:hidden!important;width:100%!important;z-index:1002!important}.sidebar.mobile-open{display:flex!important;max-height:600px!important;opacity:1!important;overflow-y:auto!important;visibility:visible!important}.sidebar-header{border:none!important;min-height:0!important}.sidebar-header,.sidebar-logo{display:none!important;height:0!important;margin:0!important;opacity:0!important;overflow:hidden!important;padding:0!important;visibility:hidden!important}.sidebar-logo{max-height:0!important;max-width:0!important;width:0!important}.sidebar-nav{display:flex!important;flex-direction:column!important;gap:0!important;margin:0!important;padding:0!important}.nav-item{border-bottom:1px solid #f3f4f6!important;border-left:none!important;border-radius:0!important;border-top:none!important;margin:0!important;padding:16px 20px!important;width:100%!important}.nav-item:first-child{border-top:none!important;margin-top:0!important;padding-top:16px!important}.nav-item.active{background-color:#ff8c42!important;border-radius:0!important;color:#fff!important;margin-right:0!important}.sidebar-footer{border-top:1px solid #e5e7eb!important;margin-top:0!important;padding:16px 20px!important}.logout-btn{width:100%!important}.sidebar.mobile-open>*{display:flex!important;opacity:1!important}.sidebar.mobile-open .sidebar-nav{display:flex!important;flex-direction:column!important}.sidebar.mobile-open .sidebar-footer,.sidebar.mobile-open .sidebar-spacer{display:block!important}.main-content{background-color:#fff!important;background:#fff!important;margin-left:0!important;margin-top:64px!important;width:100%!important}.content-header{margin-top:0!important}}.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{left:0;position:absolute;top:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.leaflet-tile::selection{background:#0000}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{height:1600px;-webkit-transform-origin:0 0;width:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-height:none!important;max-width:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-height:none!important;max-width:none!important;padding:0;width:auto}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;height:0;width:0;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{height:1px;width:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{pointer-events:visiblePainted;pointer-events:auto;position:relative;z-index:800}.leaflet-bottom,.leaflet-top{pointer-events:none;position:absolute;z-index:1000}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{clear:both;float:left}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;color:#000;display:block;height:26px;line-height:26px;text-align:center;text-decoration:none;width:26px}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.leaflet-bar a.leaflet-disabled{background-color:#f4f4f4;color:#bbb;cursor:default}.leaflet-touch .leaflet-bar a{height:30px;line-height:30px;width:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);height:36px;width:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{height:44px;width:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{background:#fff;color:#333;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{overflow-x:hidden;overflow-y:scroll;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;line-height:1.4;padding:0 5px}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;height:.6669em;vertical-align:initial!important;width:1em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{background:#fffc;border:2px solid #777;border-top:none;box-sizing:border-box;line-height:1.1;padding:2px 5px 1px;text-shadow:1px 1px #fff;white-space:nowrap}.leaflet-control-scale-line:not(:first-child){border-bottom:none;border-top:2px solid #777;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{margin-bottom:20px;position:absolute;text-align:center}.leaflet-popup-content-wrapper{border-radius:12px;padding:1px;text-align:left}.leaflet-popup-content{font-size:13px;font-size:1.08333em;line-height:1.3;margin:13px 24px 13px 20px;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{height:20px;left:50%;margin-left:-20px;margin-top:-1px;overflow:hidden;pointer-events:none;position:absolute;width:40px}.leaflet-popup-tip{height:17px;margin:-10px auto 0;padding:1px;pointer-events:auto;transform:rotate(45deg);width:17px}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;box-shadow:0 3px 14px #0006;color:#333}.leaflet-container a.leaflet-popup-close-button{background:#0000;border:none;color:#757575;font:16px/24px Tahoma,Verdana,sans-serif;height:24px;position:absolute;right:0;text-align:center;text-decoration:none;top:0;width:24px}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678,M12=0.70710678,M21=-0.70710678,M22=0.70710678);margin:0 auto;width:24px}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{background-color:#fff;border:1px solid #fff;border-radius:3px;box-shadow:0 1px 3px #0006;color:#222;padding:6px;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;white-space:nowrap}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{background:#0000;border:6px solid #0000;content:"";pointer-events:none;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{border-top-color:#fff;bottom:0;margin-bottom:-12px}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-left:-6px;margin-top:-12px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;left:0;margin-left:-12px}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.student-dashboard{background:#f9fafb;box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;max-width:100%;min-height:100vh;overflow-x:hidden;padding:0;width:100%}@media (max-width:768px){body{position:relative}body,html{max-width:100%!important;overflow-x:hidden!important;width:100%!important}}.schedule-title-card{border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;padding:32px}.schedule-title{font-size:32px}.schedule-subtitle{color:#6b7280;font-size:16px}.schedule-table-wrapper{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;overflow:hidden}.schedule-table-header-bar{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 32px}.table-title{color:#1f2937;font-size:18px;font-weight:700;margin:0}.download-pdf-btn{align-items:center;background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s ease}.download-pdf-btn:hover{background:#ff7524;box-shadow:0 4px 12px #ff8b3d4d;transform:translateY(-1px)}.download-pdf-btn svg{height:16px;width:16px}.schedule-table-container-modern{overflow-x:auto;overflow-y:visible}.schedule-table-modern{background:#fff;border-collapse:collapse;width:100%}.schedule-table-modern thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.schedule-table-modern th{color:#374151;font-size:14px;font-weight:700;letter-spacing:.05em;padding:16px 12px;text-align:center;text-transform:uppercase}.period-header-modern{background:#fff7ed;border-right:3px solid #ff8b3d;left:0;position:sticky;width:140px;z-index:10}.day-header-modern{min-width:130px}.schedule-table-modern tbody tr{border-bottom:1px solid #f3f4f6;transition:background .2s ease}.schedule-table-modern tbody tr:hover{background:#ff8b3d08}.period-cell-modern{background:#fff7ed;border-right:3px solid #ff8b3d;left:0;padding:20px 16px;position:sticky;text-align:center;width:140px;z-index:5}.period-label-modern{color:#1f2937;font-size:13px;font-weight:700;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.period-time-badge{background:#fff;border:1px solid #ffe4cc;border-radius:6px;color:#ff8b3d;display:inline-block;font-size:12px;font-weight:600;padding:4px 8px}.period-time-badge.error{background:#fee2e2;border-color:#fecaca;color:#dc2626}.subject-cell-modern{border-bottom:1px solid #f3f4f6;border-left:3px solid;border-right:1px solid #f3f4f6;min-width:130px;padding:16px 12px;position:relative;text-align:center;transition:all .2s ease;vertical-align:middle}.subject-cell-modern:hover{background:#f9fafb;cursor:pointer}.subject-cell-modern.has-subject{background:#fff}.subject-cell-modern.empty{background:#fafafa}.subject-content-modern{align-items:center;display:flex;flex-direction:column;gap:8px}.subject-name-modern{color:#1f2937;font-size:15px;font-weight:700;margin-bottom:4px}.teacher-info-modern{align-items:center;display:flex;flex-direction:column;gap:4px}.teacher-label-modern{color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.teacher-name-modern{background:#f0fdf4;border-left:3px solid #10b981;border-radius:6px;color:#10b981;display:inline-block;font-size:13px;font-weight:500;padding:6px 10px}.empty-period-modern{color:#9ca3af;font-size:13px;font-style:italic}.break-row-modern{background:#fef3c7}.break-period-cell-modern{background:#fef3c7;border-right:3px solid #f59e0b;left:0;padding:16px;position:sticky;text-align:center;z-index:5}.break-label-modern{color:#92400e;font-size:12px;font-weight:700;margin-bottom:6px;text-transform:uppercase}.break-time-modern{color:#92400e;font-size:11px;font-weight:600}.break-cell-modern{background:#fef3c7;border-right:1px solid #fde68a;padding:16px;text-align:center}.break-display-modern{color:#92400e;font-size:12px;font-weight:500}.schedule-table{min-width:max-content!important;table-layout:auto!important;width:max-content!important}.schedule-table-header th.day-header,.schedule-table-header th.period-header{max-width:120px!important;min-width:120px!important;width:120px!important}.schedule-table-header th.day-header{white-space:nowrap}.day-header,.period-header{max-width:120px!important;min-width:120px!important;width:120px!important}.schedule-table-row td{word-wrap:normal;overflow:visible;word-break:normal}.schedule-table-row td.period-cell,.schedule-table-row td.schedule-cell{max-width:120px!important;min-width:120px!important;width:120px!important}.schedule-table-row td.schedule-cell{word-wrap:normal;overflow:visible;white-space:normal;word-break:normal}.schedule-table-row .period-cell,.schedule-table-row .schedule-cell{max-width:120px!important;min-width:120px!important;width:120px!important}.subject-display strong,.teacher-display{word-wrap:normal;white-space:normal;word-break:normal}.teacher-display{color:#000;display:inline-block;max-width:100%;overflow-wrap:normal}.teacher-name{word-wrap:normal;color:#000!important;display:inline;overflow-wrap:normal;word-break:normal}.notices-section{box-sizing:border-box;max-width:1400px;padding:0;width:100%}.notices-list{grid-gap:1.5rem!important;display:grid!important;gap:1.5rem!important;grid-template-columns:repeat(3,1fr)!important;width:100%!important}@media (min-width:769px){.notices-list{gap:1.5rem!important;grid-template-columns:repeat(3,1fr)!important}}@media (min-width:769px) and (max-width:991px){.notices-list{gap:1.25rem!important;grid-template-columns:repeat(2,1fr)!important}}@media (min-width:1200px){.notices-list{gap:2rem!important;grid-template-columns:repeat(3,1fr)!important}}.attendance-header-title{color:#000}.attendance-cards-container{margin-top:40px}.attendance-cards-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin:0 auto;max-width:1400px;padding:32px 0}.attendance-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 6px #0000000f;padding:20px 24px;position:relative;transition:all .2s ease}.attendance-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.attendance-card:before{border-radius:12px 0 0 12px;bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.attendance-card-present:before{background:#10b981}.attendance-card-absent:before{background:#ef4444}.attendance-card-content{align-items:center;display:flex;justify-content:space-between;padding-left:12px}.attendance-card-left{display:flex;flex-direction:column;gap:8px}.attendance-card-date{color:#1f2937;font-size:18px;font-weight:700;line-height:1.2}.attendance-card-teacher{align-items:center;display:flex;gap:6px}.teacher-label{color:#6b7280;font-size:13px}.teacher-name-value{color:#374151;font-size:13px;font-weight:500}.attendance-card-right{flex-shrink:0}.attendance-status-badge{border-radius:8px;font-size:13px;font-weight:700;letter-spacing:.05em;padding:8px 20px;text-transform:uppercase}.status-present{background:#d1fae5;border:1px solid #10b981;color:#065f46}.status-absent{background:#fee2e2;border:1px solid #ef4444;color:#991b1b}@media (max-width:768px){.attendance-cards-grid{gap:16px;grid-template-columns:1fr;padding:24px 0}.attendance-card{padding:16px 20px}.attendance-card-content{align-items:flex-start;flex-direction:column;gap:16px}.attendance-card-right{align-self:flex-end}}@media (max-width:480px){.attendance-cards-grid{gap:12px;padding:20px 0}.attendance-card{padding:16px}.attendance-card-date{font-size:16px}.attendance-card-teacher{align-items:flex-start;flex-direction:column;gap:4px}}@media (max-width:768px){.dashboard-header{align-items:center!important;flex-direction:row!important;flex-wrap:nowrap!important;height:64px!important;justify-content:space-between!important;padding:0 16px!important}.header-left{flex:0 1 auto!important;justify-content:flex-start!important;max-width:calc(100% - 60px)!important;min-width:0!important;text-align:left!important}.header-left,.header-right{align-items:center!important;display:flex!important;margin:0!important;padding:0!important}.header-right{flex:0 0 auto!important;flex-shrink:0!important;justify-content:flex-end!important;width:auto!important}.student-info{min-width:0!important;text-align:left!important}.student-name-header{font-size:14px!important;max-width:180px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.student-grade-header{font-size:11px!important}.dropdown-arrow,.user-profile .user-details-header{display:none!important}.dashboard-main{padding:20px 16px}.welcome-card{border-radius:12px;margin:16px 12px 20px}.welcome-card-content{padding:32px 24px}.welcome-card-emoji{font-size:40px;margin-bottom:8px}.welcome-card h2{font-size:28px}.welcome-message{font-size:14px}.info-cards-grid{gap:24px;grid-template-columns:1fr!important;padding:24px 16px}.info-card-modern,.info-cards-grid{box-sizing:border-box;max-width:100%;width:100%}.info-card-modern{border-radius:16px}.card-header-modern{padding:24px}.card-icon-circle{height:56px;width:56px}.card-icon-circle svg{height:24px;width:24px}.card-title-modern{font-size:18px}.card-body-modern{padding:24px}.info-item-modern{padding:10px 0}.info-item-modern:hover{margin:0 -24px;padding-left:24px;padding-right:24px}.notices-section{padding:0;width:100%}.notices-list{gap:1rem!important;grid-template-columns:1fr!important}.notice-header{align-items:flex-start;flex-direction:column}.notice-card{padding:1rem}.notice-title{font-size:1.1rem}.attendance-section{padding:20px 16px}.attendance-header-card{padding:32px 24px}.attendance-header-title{font-size:28px}.attendance-header-icon{height:40px;width:40px}.attendance-header-subtitle{font-size:14px}.month-navigation{padding:16px 20px}.current-month h3{font-size:22px}.nav-btn{font-size:14px;padding:8px 16px}.nav-arrow{font-size:16px}.attendance-stats-grid{gap:16px;grid-template-columns:repeat(2,1fr)}.stat-card{padding:20px 16px}.stat-number{font-size:32px}.attendance-calendar-container{overflow-x:auto;padding:20px}.calendar-week{min-width:600px}.attendance-legend{flex-wrap:wrap;gap:16px}.attendance-empty-state{padding:60px 32px}.empty-state-title{font-size:24px}.empty-state-icon{height:60px;width:60px}}@media (max-width:480px){.attendance-stats-grid{grid-template-columns:1fr}.attendance-header-card{padding:24px 16px}.attendance-header-title{font-size:24px}.attendance-icon-title{flex-direction:column;gap:12px}.month-navigation{align-items:center;flex-direction:row!important;gap:8px;justify-content:space-between;padding:16px}.current-month{flex:1 1;order:2;text-align:center}.current-month h3{font-size:18px}.nav-btn-prev{flex-shrink:0;order:1}.nav-btn-next{flex-shrink:0;order:3}.nav-btn{font-size:13px;padding:8px 12px;white-space:nowrap}.nav-text{display:none}.nav-arrow{font-size:18px;margin:0}.attendance-legend{align-items:center;flex-direction:column;gap:12px}.info-cards-grid{gap:20px;grid-template-columns:1fr!important;padding:20px 12px}.info-card-modern,.info-cards-grid{max-width:100%;width:100%}.card-body-modern,.card-header-modern{padding:20px}}@media (min-width:769px) and (max-width:1024px){.info-cards-grid{gap:24px;grid-template-columns:repeat(2,1fr);padding:24px}.dashboard-header,.nav-tabs{padding:0 24px}.dashboard-main{padding:24px}.welcome-card{border-top:4px solid #ff8b3d;margin:24px;padding:40px 32px}}.student-name-header{color:#000!important;font-size:16px;font-weight:600;line-height:1.2}.student-grade-header{color:#6b7280;font-size:12px;font-weight:500;line-height:1.2;margin-top:2px}.header-icon-btn{font-size:18px}.mobile-menu-toggle{color:#ff8b3d!important;font-weight:900!important}.mobile-menu-toggle:hover{background:#fff7ed;color:#ff7524!important;font-weight:900!important}@media (max-width:768px){.mobile-menu-overlay{display:block}.desktop-only{display:none!important}.mobile-menu-toggle{display:flex!important;order:999!important}.nav-tabs{display:none!important}.school-name-header{font-size:18px!important;font-weight:900!important}}@media (max-width:480px){.school-name-header{font-size:16px!important;font-weight:900!important}.dashboard-header{padding:0 16px}}.dashboard-main{padding:32px}.welcome-card{animation:fadeIn .4s ease-out}.welcome-card-emoji{display:block;font-size:48px;margin-bottom:12px;text-align:center}.welcome-card h2{font-size:36px;margin-bottom:8px;margin-top:0}.all-info-cards-container{box-sizing:border-box;display:flex;flex-direction:column;gap:32px;margin:0 auto;max-width:1400px;width:100%}@media (min-width:992px){.all-info-cards-container{grid-gap:24px!important;align-items:start!important;display:grid!important;gap:24px!important;grid-template-columns:repeat(3,1fr)!important}.personal-info-card-full{margin-bottom:0!important;width:100%!important}.info-cards-grid{display:contents!important}.info-cards-grid>.info-card-modern{width:100%!important}}.personal-info-card-full{animation:fadeIn .4s ease-out;margin-bottom:32px;width:100%}.personal-info-card-full .info-card-modern{margin:0;width:100%}.info-cards-grid{grid-gap:32px;box-sizing:border-box;display:grid;gap:32px;grid-template-columns:repeat(2,1fr);margin:0 auto;max-width:1400px;padding:0;width:100%}@media (max-width:991px){.all-info-cards-container{display:flex!important;flex-direction:column!important;gap:24px!important}.info-cards-grid{gap:24px!important;grid-template-columns:1fr!important}.personal-info-card-full{margin-bottom:24px!important}}.info-card-modern{animation:fadeInUp .6s ease-out;background:#fff;border:1px solid #f3f4f6;border-radius:20px;box-shadow:0 4px 20px #00000014,0 1px 3px #0000001a;display:flex;flex-direction:column;height:100%;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1)}.info-card-modern:hover{border-color:#e5e7eb;box-shadow:0 12px 40px #0000001f,0 4px 12px #00000014;transform:translateY(-8px)}.card-header-modern{align-items:center;background:linear-gradient(135deg,#ff8b3d,#ff7524);display:flex;gap:16px;overflow:hidden;padding:32px;position:relative}.card-header-modern:before{animation:shimmer 3s infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;position:absolute;right:-50%;top:-50%;width:200%}@keyframes shimmer{0%,to{transform:translate(0)}50%{transform:translate(20px,20px)}}.card-icon-circle{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:50%;box-shadow:0 4px 12px #00000026;display:flex;flex-shrink:0;height:64px;justify-content:center;width:64px}.card-icon-circle svg{stroke-width:2.5;color:#fff;height:28px;width:28px}.card-title-modern{color:#fff;flex:1 1;font-size:20px;font-weight:700;letter-spacing:-.02em;margin:0;text-shadow:0 2px 4px #0003}.card-body-modern{background:#fff;display:flex;flex:1 1;flex-direction:column;gap:0;padding:32px}.info-item-modern{border-bottom:1px solid #f3f4f6;padding:10px 0;position:relative;transition:all .3s ease}.info-item-modern:before{background:#ff8b3d;bottom:0;content:"";left:0;position:absolute;top:0;transform:scaleY(0);transition:transform .3s ease;width:3px}.info-item-modern:hover:before{transform:scaleY(1)}.info-item-modern:hover{background:linear-gradient(90deg,#fff7ed,#0000);margin:0 -32px;padding-left:12px;padding-right:32px}.info-item-modern:last-child{border-bottom:none;padding-bottom:0}.info-item-modern:first-child{padding-top:0}.info-label-modern{color:#9ca3af;font-size:10px;font-weight:700;letter-spacing:.12em;line-height:1.2;margin-bottom:5px;text-transform:uppercase}.info-value-modern{color:#111827;font-size:16px;font-weight:600;line-height:1.5;word-break:break-word}.email-link-modern{color:#3b82f6;font-weight:600;position:relative;text-decoration:none;transition:all .2s ease}.email-link-modern:after{background:#3b82f6;bottom:-2px;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.email-link-modern:hover{color:#2563eb}.email-link-modern:hover:after{width:100%}.status-badge-modern{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:1px solid #055f461a;border-radius:24px;box-shadow:0 2px 6px #055f4633;color:#065f46;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.08em;padding:8px 16px;text-transform:uppercase}.status-badge-modern.inactive{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#991b1b1a;box-shadow:0 2px 6px #991b1b33;color:#991b1b}.fees-section{min-height:100vh}.fees-page-title{margin:0 0 8px}.fees-loading{align-items:center;display:flex;flex-direction:column;justify-content:center}.fees-loading p{color:#2c3e50;font-size:1rem}.no-fees{align-items:center;display:flex;flex-direction:column;justify-content:center}.no-fees h3{font-size:1.3rem;margin:0 0 .5rem}.no-fees p{margin:.5rem 0}.fees-grid{display:flex;flex-direction:column;gap:2rem;margin:0 auto;max-width:100%}.fee-card-horizontal{background:#fff;border:1px solid #e9ecef;border-radius:16px;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:row;margin-bottom:1rem;min-height:180px;overflow:hidden;width:100%}.fee-header-horizontal{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;flex-direction:column;justify-content:center;min-width:200px;padding:2rem;width:200px}.fee-header-horizontal h3{font-size:1.6rem;font-weight:700;margin:0 0 1rem;text-align:center}.fee-type-badge-horizontal{background:#fff3;border-radius:20px;color:#fff;font-size:.9rem;font-weight:500;margin-bottom:1rem;padding:.5rem 1rem;text-align:center}.fee-status-horizontal{border-radius:25px;color:#fff;font-size:.9rem;font-weight:600;padding:.75rem 1.25rem;text-align:center}.fee-content-horizontal{align-items:center;background:#fff;display:flex;flex:1 1;gap:2rem;padding:2rem}.fee-amount-horizontal{background:linear-gradient(135deg,#fff,#fff);border:1px solid #e9ecef;border-radius:16px;min-width:180px;padding:1.5rem;text-align:center}.amount-display-horizontal{align-items:center;display:flex;gap:.5rem;justify-content:center;margin-bottom:.5rem}.currency-horizontal{color:#2c3e50;font-size:1.2rem;font-weight:600}.amount-horizontal{color:#2c3e50;font-size:2.5rem;font-weight:800}.amount-label-horizontal{color:#2c3e50;font-size:.9rem;font-weight:500;text-transform:uppercase}.fee-info-horizontal{display:flex;flex:1 1;flex-direction:column;gap:1rem}.due-horizontal,.period-horizontal{background:#fff;border-left:4px solid #ff8c42;border-radius:12px;color:#2c3e50;font-size:1rem;padding:1rem}.due-horizontal{border-left-color:#f39c12}.fee-actions-horizontal{display:flex;flex-direction:column;gap:1rem;min-width:150px}.pay-btn-horizontal{background:linear-gradient(135deg,#27ae60,#2ecc71);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 1.5rem;transition:all .3s ease}.pay-btn-horizontal:hover{background:linear-gradient(135deg,#229954,#27ae60);transform:translateY(-2px)}.details-btn-horizontal{background:#0000;border:2px solid #ff8c42;border-radius:12px;color:#ff8c42;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 1.5rem;transition:all .3s ease}.details-btn-horizontal:hover{background:#ff8c42;color:#fff;transform:translateY(-2px)}.fee-card{background:#fff;border:1px solid #e9ecef;border-radius:16px;box-shadow:0 4px 20px #00000014;display:flex!important;flex-direction:row!important;min-height:200px;overflow:hidden;position:relative;transition:all .3s ease;width:100%}.fee-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-4px)}.fee-card.scheduled{border-left:5px solid #ff8c42}.fee-card.default{border-left:5px solid #27ae60}.fee-card.overdue{border-left:5px solid #e74c3c}.fee-card.current,.fee-card.overdue{background:linear-gradient(135deg,#fff,#fff)}.fee-card.current{border-left:5px solid #27ae60}.fee-card.due{background:linear-gradient(135deg,#fff,#fff);border-left:5px solid #f39c12}.fee-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex-direction:column;justify-content:center;min-width:200px;padding:2rem;width:200px}.fee-title-section h3{font-size:1.6rem;font-weight:700;margin:0 0 1rem;text-align:center;text-shadow:0 1px 2px #0000001a}.fee-type-badge{background:#fff3;border:1px solid #ffffff4d;font-size:.9rem;font-weight:500;margin-bottom:1rem;padding:.5rem 1rem}.fee-status-section,.fee-type-badge{text-align:center}.fee-status{border-radius:25px;box-shadow:0 2px 8px #0000001a;padding:.75rem 1.25rem;text-shadow:0 1px 2px #0003}.fee-content{align-items:center;background:#fff;display:flex;flex:1 1;gap:2rem;min-height:200px;padding:2rem}.fee-amount-section{background:linear-gradient(135deg,#fff,#fff);border:1px solid #e9ecef;border-radius:16px;min-width:200px;padding:2rem;text-align:center}.amount-display{align-items:center;display:flex;gap:.5rem;justify-content:center;margin-bottom:.5rem}.currency-symbol{color:#2c3e50;font-size:1.4rem;font-weight:600}.amount-value{color:#2c3e50;font-size:3rem;font-weight:800;text-shadow:0 1px 2px #0000001a}.amount-label{color:#2c3e50;font-size:.9rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.fee-info-section{display:flex;flex:1 1;flex-direction:column;gap:1rem}.due-info,.period-info{align-items:center;background:#fff;border-left:4px solid #ff8c42;border-radius:12px;display:flex;justify-content:space-between;padding:1rem}.due-info{border-left-color:#f39c12}.due-label,.period-label{color:#2c3e50;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.due-date,.period-dates{color:#2c3e50;font-size:1rem;font-weight:600}.fee-description-section{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:1rem}.description-label{color:#2c3e50;font-size:.85rem;font-weight:600;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.description-text{font-size:.95rem;line-height:1.5}.fee-actions{flex-direction:column;gap:1rem;min-width:150px}.pay-now-btn{background:linear-gradient(135deg,#27ae60,#2ecc71);border:none;border-radius:12px;box-shadow:0 4px 15px #27ae604d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;letter-spacing:.5px;padding:1rem 1.5rem;text-transform:uppercase;transition:all .3s ease}.pay-now-btn:hover{background:linear-gradient(135deg,#229954,#27ae60);box-shadow:0 6px 20px #27ae6066;transform:translateY(-2px)}.view-details-btn{background:#0000;border:2px solid #ff8c42;border-radius:12px;color:#ff8c42;font-size:1rem;letter-spacing:.5px;padding:1rem 1.5rem;text-transform:uppercase;transition:all .3s ease}.view-details-btn:hover{background:#ff8c42;box-shadow:0 6px 20px #3498db4d;color:#fff;transform:translateY(-2px)}@media (max-width:768px){.dashboard-header,.fees-section{padding:1rem}.fees-grid{grid-template-columns:1fr}.fee-actions{flex-direction:column}.pay-now-btn,.view-details-btn{flex:none}.header-content{flex-direction:column;gap:1rem;text-align:center}.dashboard-main{padding:1rem}.action-buttons,.info-cards{grid-template-columns:1fr}}@media (max-width:1024px){.schedule-section-modern{padding:24px}.schedule-table-container-modern{overflow-x:auto}.period-cell-modern{left:0;position:sticky;z-index:10}.period-header-modern{left:0;position:sticky;z-index:15}}@media (max-width:768px){.schedule-section-modern{padding:20px 16px}.schedule-title-card{padding:24px 20px}.schedule-icon-large{font-size:40px}.schedule-title{font-size:24px}.schedule-subtitle{font-size:14px}.timings-card-modern{padding:20px 24px}.schedule-table-header-bar,.timings-info-grid{flex-direction:column;gap:16px}.schedule-table-header-bar{align-items:flex-start;padding:16px 20px}.download-pdf-btn{justify-content:center;width:100%}.schedule-table-modern td,.schedule-table-modern th{font-size:12px;padding:12px 8px}.period-cell-modern{padding:16px 12px;width:120px}.subject-cell-modern{min-width:110px;padding:12px 8px}.subject-name-modern{font-size:13px}.teacher-name-modern{font-size:11px;padding:4px 8px}.schedule-table-container{-webkit-overflow-scrolling:touch;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin:0;max-width:100vw;overflow-x:auto;overflow-y:visible;padding:0;width:100%}.schedule-table{border-collapse:collapse;min-width:100%;table-layout:auto;width:max-content}.schedule-table-header th.day-header,.schedule-table-header th.period-header{max-width:120px!important;min-width:120px!important;width:120px!important}.schedule-table-header th.day-header{white-space:nowrap}.schedule-table-row td.period-cell,.schedule-table-row td.schedule-cell{max-width:120px!important;min-width:120px!important;width:120px!important}.schedule-table-row td.schedule-cell{overflow:visible;white-space:normal}.schedule-table-header th.period-header{box-shadow:2px 0 4px #0000001a;left:0;position:sticky;z-index:15}.schedule-table-row td.period-cell{box-shadow:2px 0 4px #0000001a;left:0;position:sticky;z-index:10}}@media (max-width:480px){.schedule-table-container{border-radius:0;margin:0 -16px;width:calc(100% + 32px)}.schedule-table-header th.day-header,.schedule-table-header th.period-header{max-width:100px!important;min-width:100px!important;width:100px!important}.schedule-table-header th.day-header{white-space:nowrap}.schedule-table-row td.period-cell,.schedule-table-row td.schedule-cell{max-width:100px!important;min-width:100px!important;width:100px!important}.schedule-table-row td.schedule-cell{overflow:visible;white-space:normal}.schedule-table-header th,.schedule-table-row td{font-size:.85rem;padding:.75rem .5rem}}.fee-container{box-sizing:border-box;margin:0 auto;max-width:1200px;padding:0;width:100%}@media (max-width:768px){.fee-container{gap:20px;margin:0;max-width:100%;padding:0;width:100%}}.fee-sidebar{align-items:center!important;display:flex!important;flex-direction:column!important;justify-content:center!important;text-align:center!important}.fee-sidebar>*{margin-left:auto!important;margin-right:auto!important;text-align:center!important}.fee-month-display{align-items:center!important;display:flex!important;flex-direction:column!important;justify-content:center!important;width:100%!important}.fee-month-display,.fee-month-name{margin:0 auto!important;text-align:center!important}.fee-month-name,.fee-year{display:block;width:100%}.fee-year{margin:-8px auto 0!important;text-align:center!important}.fee-status-badge-nexy,.fee-type-badge-nexy{display:block;margin:0 auto;text-align:center;width:fit-content}.fee-content-nexy{gap:32px}.fee-amount-card{margin-bottom:0}.fee-currency-label{display:block}.fee-details-nexy{margin-top:0}.fee-detail-row,.fee-pay-now-btn{transition:all .3s ease}.fee-pay-now-btn{background:#ff8b3d;border:none;border-radius:12px;box-shadow:0 4px 14px #ff8b3d66;color:#fff;cursor:pointer;font-size:16px;font-weight:700;margin-top:auto;padding:16px 32px;width:100%}.fee-pay-now-btn:hover{background:#ff7524;box-shadow:0 6px 18px #ff8b3d80;transform:translateY(-2px)}.fee-pay-now-btn:active{transform:translateY(0)}@media (max-width:768px){.fees-section{padding:24px 16px}.fees-page-header{padding:32px 24px}.fees-header-icon{font-size:40px}.fees-page-title{font-size:28px}.fees-page-subtitle{font-size:14px}.fee-card-nexy{gap:0!important;margin:0 16px!important;max-width:100%!important;padding:0!important;width:calc(100% - 32px)!important}.fee-card-nexy,.fee-sidebar{box-sizing:border-box!important;flex-direction:column!important}.fee-sidebar{align-items:center!important;background:#ff8b3d!important;border-radius:16px 16px 0 0!important;display:flex!important;gap:16px!important;justify-content:center!important;min-width:0!important;padding:40px 24px!important;width:100%!important}.fee-sidebar-arrow{display:none!important}.fee-month-display{align-items:center!important;display:flex!important;flex-direction:column!important;justify-content:center!important;margin:0 auto 8px!important;min-width:0!important;text-align:center!important;width:100%!important}.fee-month-name,.fee-month-name h3{font-size:32px!important;line-height:1.2!important;white-space:nowrap!important}.fee-month-name,.fee-month-name h3,.fee-year{color:#fff!important;display:block!important;font-weight:700!important;margin:0 auto!important;min-width:0!important;text-align:center!important;width:100%!important}.fee-year{font-size:28px!important}.fee-type-badge-nexy{background:#ffffff40!important;border:1.5px solid #ffffff4d!important;border-radius:24px!important;font-size:13px!important;margin:0 auto!important;padding:10px 24px!important}.fee-status-badge-nexy,.fee-type-badge-nexy{color:#fff!important;display:block!important;font-weight:700!important;letter-spacing:1px!important;min-width:0!important;text-align:center!important;text-transform:uppercase!important;width:fit-content!important}.fee-status-badge-nexy{border-radius:24px!important;font-size:14px!important;margin:4px auto 0!important;padding:10px 28px!important}.fee-status-badge-nexy,.fee-status-badge-nexy.fee-status-paid{background:#10b981!important;box-shadow:0 4px 12px #10b9814d!important}.fee-content-nexy{background:#fff!important;border-radius:0 0 16px 16px!important;display:flex!important;flex-direction:column!important;gap:24px!important;padding:32px 24px!important}.fee-amount-card,.fee-content-nexy{box-sizing:border-box!important;min-width:0!important;width:100%!important}.fee-amount-card{background:#f9fafb!important;border:1.5px solid #e5e7eb!important;border-radius:12px!important;padding:24px 20px!important;text-align:center!important}.fee-currency-label{color:#6b7280!important;font-size:16px!important;font-weight:600!important;letter-spacing:1px!important;margin-bottom:8px!important;text-transform:uppercase!important}.fee-amount-value,.fee-currency-label{display:block!important;text-align:center!important}.fee-amount-value{color:#1f2937!important;font-size:48px!important;font-weight:700!important;line-height:1!important}.fee-detail-row{align-items:center!important;background:#fff!important;border:1.5px solid #e5e7eb!important;border-left:4px solid #ff8b3d!important;border-radius:8px!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;gap:12px!important;min-width:0!important;padding:20px!important;width:100%!important}.fee-detail-label{color:#374151!important;display:block!important;font-weight:700!important;min-width:auto!important;width:100%!important}.fee-detail-label,.fee-detail-value{font-size:16px!important;text-align:center!important}.fee-detail-value{align-items:center!important;color:#1f2937!important;display:flex!important;font-weight:600!important;gap:8px!important;justify-content:center!important}.fee-calendar-icon{color:#ff8b3d!important;font-size:20px!important}}@media (max-width:480px){.fee-card-nexy{margin:0 12px!important}.fee-sidebar{padding:32px 20px!important}.fee-month-name,.fee-month-name h3{font-size:28px!important}.fee-year{font-size:24px!important}.fee-amount-value{font-size:42px!important}.fee-content-nexy{padding:24px 20px!important}}@media (max-width:360px){.fee-card-nexy{margin:0 8px!important}.fee-sidebar{padding:28px 16px!important}.fee-month-name,.fee-month-name h3{font-size:24px!important}.fee-year{font-size:20px!important}.fee-status-badge-nexy,.fee-type-badge-nexy{font-size:12px!important;padding:8px 20px!important}.fee-amount-value{font-size:36px!important}.fee-content-nexy{padding:20px 16px!important}}.homework-title-section{align-items:center}.homework-header-card h4{flex:1 1}.homework-subject{width:100%}@media (max-width:768px){.homework-section{padding:20px 16px}.homework-header{padding:32px 24px}.homework-header-icon{font-size:36px}.homework-header h2{font-size:28px}.homework-date-navigation{flex-direction:column;gap:16px;padding:20px}.current-date{margin:0;order:-1;padding:16px 24px;width:100%}.nav-btn{justify-content:center;width:100%}.homework-grid{gap:20px;grid-template-columns:1fr}.homework-header-card{align-items:flex-start;flex-direction:column;gap:12px;text-align:center}.homework-header-card h4{width:100%}.homework-dates{flex-direction:column;gap:10px}.no-homework{padding:60px 40px}}@media (max-width:1024px) and (min-width:769px){.homework-grid{grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}}.exam-schedule-section{background:#f9fafb;min-height:100vh;padding:32px 24px}.exam-schedule-header-content{justify-content:center}.exam-schedule-header-icon{align-items:center;display:flex;justify-content:center;margin-bottom:16px;width:100%}.exam-schedule-grid{grid-gap:32px;gap:32px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin:0 auto;max-width:1400px;padding:0}.exam-schedule-card{align-items:center;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;box-sizing:border-box;display:flex;flex-direction:column;margin:0 auto;max-width:100%;overflow:hidden;padding:0;width:100%}.exam-schedule-card:hover{box-shadow:0 8px 16px #0000001f;transform:translateY(-4px)}.exam-type-badge{align-items:center;display:flex;justify-content:center;margin:0 auto;min-width:fit-content;text-align:center;width:fit-content}.exam-card-content{align-items:center!important;justify-content:center!important;margin:0 auto;text-align:center!important}.exam-card-content h4,.exam-card-content h4.exam-title,.exam-title,h4.exam-title{align-self:center!important;color:#1f2937;display:block!important;font-size:22px;font-weight:700;line-height:1.2;margin:0 auto 4px!important;padding:0!important;text-align:center!important;width:100%!important}.exam-subjects{padding:20px}.subject-item{border-radius:12px;gap:14px}.no-exams{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;padding:80px 60px}.no-exams-icon{color:#d1d5db;font-size:80px;margin-bottom:24px}.no-exams h3{color:#6b7280;font-size:20px;font-weight:600;margin:0}@media (max-width:640px){.exam-schedule-section{padding:16px}.exam-schedule-header{padding:32px 24px}.exam-schedule-header-icon{font-size:40px}.exam-schedule-header h2{font-size:28px}.exam-schedule-grid{gap:20px;grid-template-columns:1fr;padding:0}.exam-card-content,.exam-card-header{padding:24px}}@media (min-width:641px) and (max-width:1024px){.exam-schedule-grid{gap:24px;grid-template-columns:repeat(2,1fr);padding:0}}@media (max-width:480px){.subject-item{gap:12px;padding:16px 18px}.subject-name{font-size:11px!important;letter-spacing:.4px}.subject-date-time-row{gap:16px}.subject-date,.subject-time{font-size:12px}.subject-date .date-icon,.time-icon{font-size:14px}}@media (min-width:1025px){.exam-schedule-grid{gap:32px;grid-template-columns:repeat(2,1fr);padding:0}}@media (max-width:768px){.exam-schedule-section{padding:20px 16px}.exam-schedule-header{padding:32px 24px}.exam-schedule-header-icon{font-size:36px}.exam-schedule-header h2{font-size:28px}.exam-schedule-grid{gap:20px;grid-template-columns:1fr}.exam-card-content{align-items:center!important;padding:24px 20px;text-align:center!important}.exam-title{font-size:20px;margin:0 auto 4px!important;text-align:center!important;width:100%!important}.subject-item{gap:12px;grid-template-columns:1fr;text-align:center}.subject-date,.subject-name,.subject-time{justify-content:center;text-align:center}.no-exams{padding:60px 40px}}@media (max-width:1024px) and (min-width:769px){.exam-schedule-grid{grid-template-columns:1fr}}.chat-section-modern{margin:0 auto;max-width:100%;overflow-x:hidden}.chat-main-container,.chat-section-modern{box-sizing:border-box;width:100%}.chat-sidebar{height:auto;max-width:100%;min-height:100%;min-width:0}.chat-sidebar,.chat-teachers-list{box-sizing:border-box;overflow-x:hidden;overflow-y:visible;width:100%}.chat-teachers-list{flex:0 1 auto;min-height:auto}.chat-teacher-name{box-sizing:border-box}.chat-unread-badge:has-text("99+"){padding:0 5px}.chat-header-teacher-name{color:#fff!important}@media (max-width:768px){.chat-section-modern{left:0;margin:0!important;min-height:auto;overflow-x:hidden!important;overflow-y:hidden!important;padding:20px 16px!important;position:relative;right:0}.chat-page-header,.chat-section-modern{box-sizing:border-box;max-width:100%!important;width:100%!important}.chat-page-header{border-radius:16px;margin-left:0!important;margin-right:0!important;padding:24px 20px!important;text-align:center}.chat-main-container{box-sizing:border-box;gap:0;grid-template-columns:1fr;height:auto;left:0;margin:0 auto!important;max-height:none;max-width:100%!important;min-height:auto;overflow-x:hidden!important;overflow-y:hidden;padding:0!important;position:relative;right:0;width:100%!important}.chat-sidebar.hidden-mobile{display:none}.chat-sidebar{-webkit-overflow-scrolling:touch;border-radius:0;bottom:0;box-sizing:border-box;display:flex;flex-direction:column;height:100vh;left:0;max-height:100vh;max-width:100%!important;min-height:100vh;overflow-x:hidden;overflow-y:auto;position:fixed;right:0;top:0;width:100%!important;z-index:1!important}body:has(.chat-sidebar:not(.hidden-mobile)){height:100%;overflow:hidden!important;position:fixed;width:100%}.chat-back-button{align-items:center;display:flex;justify-content:center}.chat-page-header{margin-bottom:16px;padding:24px 16px}.chat-header-icon{font-size:36px;margin-bottom:8px}.chat-page-title{font-size:24px}.chat-page-subtitle{font-size:13px}.chat-sidebar-header{box-sizing:border-box;flex-shrink:0;padding:16px;width:100%}.chat-sidebar-title{word-wrap:break-word;font-size:18px;margin:0;overflow-wrap:break-word}.chat-search-container{box-sizing:border-box;flex-shrink:0;padding:12px 16px;width:100%}.chat-search-input{box-sizing:border-box;font-size:14px;max-width:100%;padding:8px 12px;width:100%}.chat-teachers-list{box-sizing:border-box;flex:1 1;gap:8px;min-height:0;overflow-x:hidden;overflow-y:visible;padding:8px 16px 24px;width:100%}.chat-teacher-card{box-sizing:border-box;gap:10px;margin:0;max-width:100%;padding:12px;width:100%}.chat-teacher-avatar{font-size:36px;height:48px;width:48px}.chat-teacher-info{box-sizing:border-box;max-width:100%;padding:0 4px;width:100%}.chat-teacher-name{font-size:14px}.chat-teacher-name,.chat-teacher-subject{word-wrap:break-word;box-sizing:border-box;max-width:100%;overflow-wrap:break-word}.chat-teacher-subject{font-size:11px}.chat-teacher-avatar-wrapper{flex-shrink:0}.chat-unread-badge{right:8px;top:8px}.chat-window-modern{border-radius:0;height:100%;max-width:100%;overflow-x:hidden;width:100%}.chat-window-header-modern{border-radius:12px 12px 0 0;gap:12px;padding:12px 16px}.chat-header-avatar,.chat-header-avatar-wrapper{height:40px;width:40px}.chat-header-avatar{font-size:20px}.chat-header-teacher-name{font-size:16px}.chat-header-teacher-subject{font-size:12px}.chat-messages-area{padding:16px 12px}.chat-message{margin-bottom:12px}.chat-message-content{font-size:14px;max-width:85%;padding:10px 14px}.chat-input-area-modern{gap:8px;padding:12px 16px}.chat-input-modern{font-size:14px;padding:10px 16px}.chat-send-button{flex-shrink:0;font-size:18px;height:40px;width:40px}.chat-no-teachers{padding:40px 20px}.no-teachers-icon{font-size:60px;margin-bottom:16px}.chat-no-teachers h3{font-size:20px}.chat-no-teachers p{font-size:14px}.chat-loading-container{padding:40px 20px}}@media (max-width:480px){.chat-section-modern{left:0;margin:0!important;overflow-x:hidden!important;position:relative;right:0}.chat-page-header,.chat-section-modern{box-sizing:border-box;max-width:100%!important;padding:20px 16px!important;width:100%!important}.chat-page-header{border-radius:16px;margin-bottom:16px;margin-left:0!important;margin-right:0!important;text-align:center}.chat-main-container{box-sizing:border-box;gap:0;height:auto;left:0;margin:0 auto!important;max-height:none;max-width:100%!important;min-height:auto;overflow-x:hidden!important;overflow-y:visible;padding:0!important;position:relative;right:0;width:100%!important}.chat-page-header{margin-bottom:12px;padding:20px 12px}.chat-header-icon{font-size:32px}.chat-page-title{font-size:20px}.chat-page-subtitle{font-size:12px}.chat-window-header-modern{gap:8px;padding:10px 12px}.chat-header-avatar,.chat-header-avatar-wrapper{height:36px;width:36px}.chat-header-avatar{font-size:18px}.chat-header-teacher-name{font-size:14px}.chat-header-teacher-subject{font-size:11px}.chat-messages-area{padding:12px 8px}.chat-message-content{font-size:13px;max-width:90%;padding:8px 12px}.chat-input-area-modern{padding:10px 12px}.chat-input-modern{font-size:13px;padding:8px 14px}.chat-send-button{font-size:16px;height:36px;width:36px}.chat-sidebar{box-sizing:border-box;max-width:100%!important;width:100%!important}.chat-sidebar-header{box-sizing:border-box;padding:16px}.chat-search-container{box-sizing:border-box;padding:12px 16px}.chat-teachers-list{box-sizing:border-box;flex:0 1 auto;min-height:auto;overflow-y:visible;padding:8px 16px 24px}.chat-teacher-card{padding:12px}.chat-teacher-card,.chat-teacher-info{box-sizing:border-box;max-width:100%;width:100%}.chat-teacher-info{padding:0 4px}}.chat-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:2rem}.chat-header{border-bottom:2px solid #ecf0f1;margin-bottom:2rem;padding-bottom:1rem;text-align:center}.chat-header h2{color:#2c3e50;font-size:1.8rem;margin:0 0 .5rem}.chat-header p{color:#2c3e50;font-size:1rem;margin:0}.no-teachers{padding:3rem 2rem;text-align:center}.no-teachers-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.no-teachers h3{color:#2c3e50;margin-bottom:.5rem}.no-teachers p{color:#2c3e50}.chat-container{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:300px 1fr;min-height:500px}.teachers-list{background:#fff;border-radius:12px;max-height:600px;overflow-y:auto;padding:1.5rem}.teachers-list h3{color:#2c3e50;font-size:1.2rem;margin:0 0 1rem}.teachers-grid{display:flex;flex-direction:column;gap:1rem}.teacher-card{align-items:center;background:#fff;border:2px solid #0000;cursor:pointer;gap:1rem;padding:1rem;transition:all .3s ease}.teacher-card:hover{border-color:#ff8c42;box-shadow:0 2px 8px #0000001a;transform:translateX(5px)}.teacher-card.selected{background:#e3f2fd;border-color:#ff8c42}.teacher-avatar{align-items:center;background:#ff8c42;border-radius:50%;display:flex;flex-shrink:0;font-size:2.5rem;height:60px;justify-content:center;width:60px}.teacher-info h4{color:#2c3e50;font-size:1rem;margin:0 0 .25rem}.teacher-subjects{color:#2c3e50;font-size:.85rem;margin:.25rem 0}.teacher-qualification{color:#2c3e50;font-size:.8rem;font-style:italic;margin:.25rem 0 0}.chat-window{background:#fff;border:1px solid #e0e0e0;border-radius:12px;display:flex;flex-direction:column;height:600px}.chat-window-header{background:#ff8c42;border-bottom:2px solid #e67a35;border-radius:12px 12px 0 0;color:#fff;padding:1rem 1.5rem}.chat-window-header h3{font-size:1.2rem;margin:0}.chat-messages{background:#fff;display:flex;flex:1 1;flex-direction:column;gap:1rem;overflow-y:auto;padding:1.5rem}.no-messages{color:#2c3e50;padding:3rem 2rem;text-align:center}.message{margin-bottom:.5rem}.message.sent{justify-content:flex-end}.message.received{justify-content:flex-start}.message-content{box-shadow:0 1px 3px #0000001a;padding:.75rem 1rem}.message.sent .message-content{background:#ff8c42;color:#fff}.message.received .message-content{background:#fff;color:#2c3e50}.message-sender{font-size:.85rem;margin-bottom:.25rem}.message-text{margin:.5rem 0}.message-time{font-size:.75rem;margin-top:.25rem}.chat-input-area{background:#fff;border-radius:0 0 12px 12px;border-top:1px solid #e0e0e0;display:flex;gap:.5rem;padding:1rem 1.5rem}.chat-input{border:1px solid #e9ecef;border-radius:20px;font-size:1rem;outline:none;padding:.75rem 1rem}.chat-input:focus{border-color:#ff8c42}.send-button{background:#ff8c42;border:none;border-radius:20px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 2rem;transition:background .2s ease}.send-button:hover:not(:disabled){background:#e67a35}.send-button:disabled{background:#fff;cursor:not-allowed}.chat-placeholder{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:12px;color:#2c3e50;display:flex;flex-direction:column;height:600px;justify-content:center}.placeholder-icon{opacity:.5}.chat-placeholder h3{color:#2c3e50;margin:0 0 .5rem}.chat-loading{align-items:center;color:#2c3e50;display:flex;flex-direction:column;height:100%;justify-content:center}@media (max-width:768px){.chat-container{grid-template-columns:1fr}.teachers-list{max-height:300px}.chat-window{height:500px}}.result-card-body{-webkit-overflow-scrolling:touch;overflow-x:auto}.results-table{font-size:14px;min-width:600px}.results-table th{padding:16px 20px}.results-table th:first-child{padding-left:20px;padding-right:20px;width:30%}.results-table th:nth-child(2),.results-table th:nth-child(3),.results-table th:nth-child(4),.results-table th:nth-child(5){padding-left:20px;padding-right:20px;width:17.5%}.results-table td{color:#374151;font-size:14px;padding:16px 20px}.results-table td:first-child,.results-table td:nth-child(2),.results-table td:nth-child(3),.results-table td:nth-child(4),.results-table td:nth-child(5){padding-left:20px;padding-right:20px}.results-table tbody tr:hover{background:#f9fafb}.results-table tbody tr:last-child td{border-bottom:none}.grade-cell,.marks-cell,.percentage-cell{padding-left:20px!important;padding-right:20px!important}.results-table tfoot td{padding:16px 20px}.results-table tfoot td:first-child{padding-left:20px;padding-right:20px}.results-table tfoot td:nth-child(2),.results-table tfoot td:nth-child(3),.results-table tfoot td:nth-child(4),.results-table tfoot td:nth-child(5){padding-left:20px;padding-right:20px;text-align:center}.total-row td:nth-child(2),.total-row td:nth-child(3),.total-row td:nth-child(4),.total-row td:nth-child(5),.total-row td:nth-child(6){text-align:center!important}@media (max-width:768px){.results-section{padding:16px}.results-page-header{margin-bottom:24px;padding:32px 24px}.results-header-icon{font-size:40px}.results-page-title{font-size:28px}.results-page-subtitle{font-size:14px}.result-card-header{padding:24px 20px}.result-exam-name{font-size:24px}.result-exam-type-badge{font-size:11px;padding:6px 12px}.result-exam-date{font-size:14px}.results-table{-webkit-overflow-scrolling:touch;display:table;font-size:13px;min-width:600px;overflow-x:auto;table-layout:fixed;width:100%}.results-table tbody,.results-table tfoot,.results-table thead{display:table-row-group}.results-table tr{display:table-row}.results-table td,.results-table th{display:table-cell;font-size:13px;padding:12px 16px;vertical-align:middle}.results-table td:first-child,.results-table th:first-child{padding-left:16px;padding-right:16px;text-align:left;width:30%}.results-table td:nth-child(2),.results-table td:nth-child(3),.results-table td:nth-child(4),.results-table td:nth-child(5),.results-table th:nth-child(2),.results-table th:nth-child(3),.results-table th:nth-child(4),.results-table th:nth-child(5){padding-left:16px;padding-right:16px;text-align:center}.results-table td:nth-child(2),.results-table td:nth-child(3),.results-table td:nth-child(4),.results-table td:nth-child(5),.results-table th:nth-child(2),.results-table th:nth-child(3),.results-table th:nth-child(4),.results-table th:nth-child(5){width:17.5%}.results-table tfoot td{padding:12px 16px}.results-table tfoot td:first-child{text-align:left}.results-table tfoot td:nth-child(2),.results-table tfoot td:nth-child(3),.results-table tfoot td:nth-child(4),.results-table tfoot td:nth-child(5){text-align:center}.view-result-card-btn-main{font-size:14px;padding:14px 24px}}.transport-no-route,.transport-not-enabled{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:60px 20px;text-align:center}.transport-no-route h2,.transport-not-enabled h2{color:#1f2937;font-size:24px;font-weight:700;margin-bottom:12px}.transport-no-route p,.transport-not-enabled p{color:#6b7280;font-size:16px;line-height:1.6}.transport-details-card{background:#fff;box-shadow:0 2px 8px #0000001a;padding:24px}.transport-details-card h3{color:#1f2937;font-size:20px;font-weight:700;margin:0 0 20px}.transport-info-item{background:#f9fafb}.transport-map-container{background:#fff;padding:24px}.transport-map-container h3{color:#1f2937;font-size:20px;font-weight:700;margin:0 0 16px}.bus-status{background:#f9fafb}@media (max-width:768px){.transport-section{padding:16px}.transport-header{flex-direction:column;padding:20px;text-align:center}.transport-header-icon{font-size:40px}.transport-header-info h1{font-size:24px}.transport-header-info p{font-size:14px}.transport-details-card,.transport-map-container{padding:16px}.transport-info-grid{gap:12px;grid-template-columns:1fr}.transport-map-container{padding:16px}.transport-map-container h3{font-size:18px}}.contact-us-container{background:#f9fafb;min-height:100vh;padding:32px 24px}.contact-us-header{margin-bottom:2rem;text-align:center}.contact-us-header h2{color:#1f2937;font-size:2rem;margin-bottom:.5rem}.contact-us-header p{color:#6b7280;font-size:1rem}.contact-details-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;padding:2rem}.contact-details-card h3{color:#1f2937;font-size:1.5rem;margin-bottom:1.5rem;margin-top:0}.contact-info-list{display:flex;flex-direction:column;gap:1rem}.contact-info-item{align-items:center;background:#f9fafb;border-radius:8px;display:flex;gap:1rem;padding:1rem}.contact-label{color:#374151;font-weight:600;min-width:120px}.contact-link{color:#3b82f6;transition:color .2s}.contact-link:hover{color:#2563eb}.contact-value{color:#1f2937}.faqs-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;padding:2rem}.faqs-section h3{color:#1f2937;font-size:1.5rem;margin-bottom:1.5rem;margin-top:0}.faq-card{background:#f9fafb;border-left:4px solid #3b82f6;border-radius:8px;margin-bottom:1rem;padding:1.5rem}.faq-card h4{color:#1f2937;font-size:1.1rem;margin:0 0 .75rem}.faq-card p{color:#4b5563;line-height:1.6;margin:0}.submit-query-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:2rem;text-align:center}.submit-query-section h3{color:#1f2937;font-size:1.5rem;margin-bottom:.5rem;margin-top:0}.submit-query-section p{color:#6b7280;margin-bottom:1.5rem}@media (max-width:768px){.contact-us-container{padding:1rem}.contact-us-header h2{font-size:1.5rem}.contact-details-card,.faqs-section,.submit-query-section{padding:1.5rem}.contact-info-item{align-items:flex-start;flex-direction:column}.contact-label{min-width:auto}}.policies-container{background:#f9fafb;min-height:100vh;padding:32px 24px}.policies-header{margin-bottom:2rem;text-align:center}.policies-header h2{color:#1f2937;font-size:2rem;margin-bottom:.5rem}.policies-header p{color:#6b7280;font-size:1rem}.policies-filters{align-items:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;gap:1rem;margin-bottom:2rem;padding:1rem 1.5rem}.policies-filters label{color:#374151;font-weight:600}.policy-filter-select{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.95rem;padding:.5rem 1rem}.policies-list{grid-gap:1.5rem;display:grid;gap:1.5rem}.policy-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.5rem;transition:transform .2s,box-shadow .2s}.policy-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.policy-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.policy-card-header h3{color:#1f2937;font-size:1.25rem;margin:.5rem 0 0}.policy-description{color:#6b7280;line-height:1.6;margin:1rem 0}.policy-content{margin:1rem 0}.policy-link{margin-top:1rem}.policy-link-btn{background:#3b82f6;border-radius:8px;color:#fff;display:inline-block;font-weight:600;padding:.75rem 1.5rem;text-decoration:none;transition:background .2s}.policy-link-btn:hover{background:#2563eb}.policy-files h4{color:#374151;font-size:1rem;margin:0 0 .5rem}.file-list{display:flex;flex-direction:column;gap:.5rem}.file-download-link{align-items:center;background:#f3f4f6;border-radius:6px;color:#1f2937;display:flex;gap:.5rem;padding:.75rem 1rem;text-decoration:none;transition:background .2s}.file-download-link:hover{background:#e5e7eb}.file-size{color:#6b7280;font-size:.85rem;margin-left:auto}.policy-footer{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.policy-date{color:#6b7280;font-size:.9rem}.no-policies{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:3rem;text-align:center}.no-policies p{color:#6b7280;font-size:1.1rem}@media (max-width:768px){.policies-container{padding:1rem}.policies-header h2{font-size:1.5rem}.policies-filters{align-items:stretch;flex-direction:column}.policy-card{padding:1rem}.policy-card-header{flex-direction:column;gap:.5rem}}.school-login-container{align-items:center;animation:fadeIn .5s ease-out;background-color:#f9fafb;display:flex;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;justify-content:center;min-height:100vh;padding:2rem}.school-login-card{background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012,0 2px 4px #0000000d;margin:auto;max-width:480px;padding:48px 40px;position:relative;width:100%}.school-login-header{margin-bottom:40px;text-align:center}.school-login-logo{display:block;margin-bottom:32px;margin-left:auto;margin-right:auto;max-width:180px}.school-login-header h1{color:#000;font-size:32px;font-weight:700;margin:0 0 8px;text-align:center}.school-login-header p{color:#6b7280;font-size:16px;font-weight:400;margin:0;text-align:center}.school-login-form{margin-bottom:24px}.input-wrapper{align-items:center;display:flex;position:relative}.input-wrapper input{-webkit-appearance:none;appearance:none;background:#f9fafb!important;border:1.5px solid #e5e7eb;border-radius:8px;box-sizing:border-box;color:#1f2937;font-size:15px;outline:none!important;padding:14px 16px;transition:all .2s ease;width:100%}.input-wrapper input:-webkit-autofill,.input-wrapper input:-webkit-autofill:active,.input-wrapper input:-webkit-autofill:focus,.input-wrapper input:-webkit-autofill:hover{-webkit-text-fill-color:#1f2937!important;background-color:#f9fafb!important;background:#f9fafb!important;-webkit-box-shadow:inset 0 0 0 30px #f9fafb!important;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}.input-wrapper input::placeholder{color:#9ca3af}.input-wrapper input:focus{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;-webkit-box-shadow:0 0 0 3px #ff8b3d1a,inset 0 0 0 30px #f9fafb!important;outline:none!important}.input-wrapper input:focus,.input-wrapper input:hover{background:#f9fafb!important;background-color:#f9fafb!important}.input-wrapper input.error{border-color:#ef4444}.input-wrapper input.error:focus{background:#f9fafb!important;background-color:#f9fafb!important;border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a;-webkit-box-shadow:0 0 0 3px #ef44441a,inset 0 0 0 30px #f9fafb!important}.password-wrapper{position:relative}.password-wrapper input{padding-right:50px}.password-toggle-btn{right:14px}.error-text{margin-top:6px}.remember-me-container{margin-bottom:24px;margin-top:16px}.login-btn{align-items:center;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;margin-bottom:24px;padding:14px;transition:all .2s ease;width:100%}.login-btn:hover:not(:disabled){background:#ff7524;box-shadow:0 4px 12px #ff8b3d4d;transform:translateY(-1px)}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.login-btn .spinner{animation:spin 1s linear infinite}.forgot-password-link{background:none;border:none;cursor:pointer;display:block;font-size:14px;font-weight:500;margin-bottom:16px;padding:0;text-align:center}.forgot-password-link,.forgot-password-link:hover{color:#ff8b3d;text-decoration:none}.help-text{color:#6b7280;font-size:14px;margin:0 0 20px;text-align:center}.back-btn{background:#0000;border:2px solid #ff8b3d;border-radius:8px;color:#ff8b3d;cursor:pointer;font-size:14px;font-weight:600;padding:12px;transition:all .2s ease;width:100%}.back-btn:hover{background:#fff7ed;transform:translateY(-1px)}.back-btn:active{transform:translateY(0)}@media (max-width:640px){.school-login-container{padding:1rem}.school-login-card{max-width:95%;padding:32px 24px}.school-login-logo{margin-bottom:24px;max-width:150px}.school-login-header h1{font-size:28px}.school-login-header p{font-size:14px}.form-group{margin-bottom:20px}.form-group label{font-size:13px}.input-wrapper input{font-size:14px;padding:12px 14px 12px 40px}.login-btn{font-size:15px;padding:12px}}@media (min-width:641px) and (max-width:1024px){.school-login-card{padding:40px 36px}}.back-btn:focus-visible,.forgot-password-link:focus-visible,.login-btn:focus-visible,.password-toggle-btn:focus-visible{outline:2px solid #ff8b3d;outline-offset:2px}.remember-me-checkbox:focus-visible{outline:2px solid #ff8b3d;outline-offset:2px}.branch-selector{align-items:center;display:flex;gap:.5rem;margin-left:1rem}.sidebar-branch-selector .branch-selector{margin-left:0;width:100%}.branch-selector-label{color:#1f2937;font-size:.9rem;font-weight:600;white-space:nowrap}.branch-select{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#1f2937;cursor:pointer;font-size:.9rem;font-weight:500;min-width:150px;padding:.5rem 1rem;transition:all .2s ease}.branch-select:hover{border-color:#ff8c42;box-shadow:0 2px 4px #ff8c421a}.branch-select:focus{border-color:#ff8c42;box-shadow:0 0 0 3px #ff8c421a;outline:none}@media (max-width:768px){.branch-selector{align-items:flex-start;flex-direction:column;margin-left:0;margin-top:.5rem;width:100%}.branch-select{width:100%}}.content-header.centered .add-meal-btn.right-small{float:right;min-width:140px;width:auto}.toolbar{background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 1px 2px #0000000a;margin-bottom:.5rem;padding:.75rem 1rem}.toolbar .form-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px}.toolbar.tight{padding:.5rem .75rem}.form-row.single-line{flex-wrap:nowrap;gap:10px}.toolbar .form-group{margin:0;min-width:180px}.toolbar .form-group.align-end{align-self:flex-end}.classes-content.compact .card-body{padding:.75rem 1rem}.classes-content.compact .form-row{gap:12px}.classes-content.compact .form-group input,.classes-content.compact .form-group select,.classes-content.compact .form-group textarea{padding:8px 10px}.sticky-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:8px}.meals-table td,.meals-table th{padding:10px 12px}.meals-table tbody tr:hover{background:#fff}.compact-header{margin-bottom:4px}.content-header.centered{display:block;text-align:center}.content-header.centered h1{margin-bottom:6px}.content-header.centered p{margin:0 auto 6px}.content-header.centered .add-meal-btn{display:inline-block;margin-top:8px;min-width:180px;padding:10px 16px}.modal-backdrop{align-items:center;background:#00000059;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}.modal-card{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0003;max-height:82vh;max-width:92vw;overflow:auto;width:560px}.modal-card.small{width:420px}.modal-header{border:1px solid #e9ecef;padding:12px 16px}.modal-body{padding:10px 14px}.close-btn{background:#0000;font-size:20px}.modal-card.small .form-row{display:block}.modal-card.small .form-group{margin-bottom:8px;width:100%}.modal-card.small .form-group input,.modal-card.small .form-group select,.modal-card.small .form-group textarea{padding:8px 10px}.modal-card.small textarea{min-height:72px}.school-dashboard{background-color:#fff;display:flex;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;position:relative}.sidebar{box-shadow:2px 0 10px #0000001a;height:100vh;overflow:hidden;position:fixed;width:250px;z-index:1000}.sidebar,.sidebar-header{background:#fff;display:flex;flex-direction:column}.sidebar-header{align-items:center;border-bottom:1px solid #e9ecef;color:#2c3e50;flex-shrink:0;justify-content:flex-start;margin-bottom:0;min-height:auto;overflow:visible!important;padding:1.5rem 1.5rem 2rem!important;position:relative;text-align:center;z-index:1}.sidebar-logo{display:block;height:auto;margin-bottom:1rem;margin-top:.5rem;max-width:100%;width:140px}.sidebar-branch-selector{display:block!important;margin-bottom:1.5rem!important;margin-top:0;opacity:1!important;padding-bottom:.5rem;position:relative;visibility:visible!important;width:100%;z-index:2}.sidebar-branch-selector .branch-selector{align-items:center;display:flex!important;flex-direction:column;gap:.5rem;margin:0;opacity:1!important;padding:0;visibility:visible!important;width:100%!important}.sidebar-branch-selector .branch-selector-label{color:#2c3e50;font-size:.85rem;font-weight:600;text-align:center;width:100%}.sidebar-branch-selector .branch-select{background:#fff;border:1px solid #e9ecef;border-radius:6px;color:#2c3e50;cursor:pointer;font-size:.9rem;padding:.5rem .75rem;text-align:center;text-align-last:center;transition:border-color .2s;width:100%}.sidebar-branch-selector .branch-select:hover{border-color:#ff8c42}.sidebar-branch-selector .branch-select:focus{border-color:#ff8c42;box-shadow:0 0 0 2px #ff8c421a;outline:none}.sidebar-header h2{color:#ff8c42;font-size:1.2rem;font-weight:600;margin:0 0 .5rem}.sidebar-header p{color:#2c3e50;font-size:.9rem;margin:0}.sidebar-nav{flex:1 1;margin-bottom:1rem;margin-top:1.5rem!important;overflow-x:hidden;overflow-y:auto;padding:1.5rem 0 1rem!important}.sidebar-nav::-webkit-scrollbar{width:8px}.sidebar-nav::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.sidebar-nav::-webkit-scrollbar-thumb{background:#ff8c42;border-radius:4px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#e67a35}.sql-editor-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:2000}.sql-editor-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:1200px;overflow:hidden;width:100%}.sql-editor-header{align-items:center;background:#ff8c42;border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:1.5rem 2rem}.sql-editor-header h2{font-size:1.5rem;font-weight:600;margin:0}.sql-editor-info{display:flex;font-size:.9rem;gap:1rem;opacity:.9}.close-btn{background:#fff3;transition:background .2s ease}.close-btn:hover{background:#ffffff4d}.sql-editor-content{display:flex;flex:1 1;flex-direction:column;gap:2rem;overflow-y:auto;padding:2rem}.template-section{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:1.5rem}.template-section h3{color:#2c3e50;font-size:1.1rem;margin:0 0 1rem}.template-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.template-btn{background:#fff;border:1px solid #e9ecef;border-radius:6px;color:#2c3e50;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s ease}.template-btn:hover{background:#e3f2fd;border-color:#ff8c42;color:#ff8c42}.template-btn.active{background:#ff8c42;border-color:#ff8c42;color:#fff}.history-section{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:1.5rem}.history-section h3{color:#2c3e50;font-size:1.1rem;margin:0 0 1rem}.history-list{display:flex;flex-direction:column;gap:.5rem}.history-item{background:#fff;border:1px solid #e9ecef;border-radius:6px;cursor:pointer;padding:.75rem;transition:all .2s ease}.history-item:hover{background:#e3f2fd;border-color:#ff8c42}.history-query{color:#2c3e50;font-family:Courier New,monospace;font-size:.85rem;margin-bottom:.25rem}.history-time{color:#2c3e50;font-size:.75rem}.editor-section{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:1.5rem}.editor-section h3{color:#2c3e50;font-size:1.1rem;margin:0 0 1rem}.sql-textarea{background:#fff;border:1px solid #e9ecef;border-radius:6px;color:#2c3e50;font-family:Courier New,monospace;font-size:.9rem;line-height:1.5;min-height:300px;padding:1rem;resize:vertical;width:100%}.sql-textarea:focus{border-color:#ff8c42;box-shadow:0 0 0 3px #3498db1a;outline:none}.editor-actions{display:flex;gap:1rem;margin-top:1rem}.execute-btn{background:#27ae60;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:background .2s ease}.execute-btn:hover:not(:disabled){background:#229954}.execute-btn:disabled{background:#fff;cursor:not-allowed}.clear-btn{background:#e74c3c;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:background .2s ease}.clear-btn:hover:not(:disabled){background:#c0392b}.clear-btn:disabled{background:#fff;cursor:not-allowed}.error-section{background:#fdf2f2;border:1px solid #fecaca;border-radius:8px;padding:1.5rem}.error-section h3{color:#dc2626;font-size:1.1rem;margin:0 0 1rem}.error-message{background:#fff;border-radius:6px;padding:1rem}.error-message pre{color:#dc2626;font-family:Courier New,monospace;font-size:.9rem;margin:0;white-space:pre-wrap;word-break:break-word}.result-section{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:1.5rem}.query-result{background:#fff;border:1px solid #bae6fd;border-radius:6px;overflow:hidden}.result-header{background:#0ea5e9;color:#fff;padding:1rem}.result-header h4{font-size:1rem;margin:0}.result-table-container{max-height:400px;overflow:auto}.result-table{border-collapse:collapse;font-size:.9rem;width:100%}.result-table th{background:#f8fafc;font-weight:600;position:sticky;text-align:left;top:0}.result-table td,.result-table th{border:1px solid #e9ecef;color:#2c3e50;padding:.75rem}.result-table tr:hover{background:#fff}.table-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0 .5rem}.table-toolbar .search-input,.table-toolbar select{background:#fff;border:1px solid #e9ecef;border-radius:8px;color:#2c3e50;font-size:.9rem;padding:.55rem .75rem}.table-toolbar .search-input:focus,.table-toolbar select:focus{border-color:#ff8c42;box-shadow:0 0 0 3px #3498db1f;outline:none}.pagination-controls{gap:.5rem;justify-content:flex-end;margin-top:.75rem}.pagination-controls .page-btn{background:#fff;border:1px solid #e9ecef;border-radius:8px;color:#2c3e50;cursor:pointer;padding:.45rem .8rem;transition:all .15s ease}.pagination-controls .page-btn:hover{border-color:#ff8c42;box-shadow:0 6px 14px #3498db26;color:#ff8c42}.pagination-controls .page-info{color:#2c3e50;font-size:.9rem}.pagination-controls .page-size{background:#fff;border:1px solid #e9ecef;border-radius:8px;color:#2c3e50;font-size:.9rem;padding:.45rem .6rem}.result-message{padding:1rem}.result-message p{color:#059669;font-weight:500;margin:0}.help-section{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:1.5rem}.help-section h3{color:#2c3e50;font-size:1.1rem;margin:0 0 1rem}.help-content h4{color:#2c3e50;font-size:1rem;margin:1rem 0 .5rem}.help-content ul{color:#2c3e50;margin:.5rem 0 1rem 1.5rem}.help-content li{margin-bottom:.25rem}.help-content code{background:#fff;border-radius:3px;color:#e74c3c;font-family:Courier New,monospace;font-size:.85rem;padding:.2rem .4rem}@media (max-width:768px){.sql-editor-overlay{padding:1rem}.sql-editor-modal{max-height:95vh}.sql-editor-content{gap:1rem;padding:1rem}.template-buttons{flex-direction:column}.template-btn{text-align:center}.editor-actions{flex-direction:column}.sql-textarea{min-height:200px}}.nav-item{align-items:center;background:none;border:none;color:#2c3e50;cursor:pointer;display:flex;font-size:.9rem;gap:1rem;padding:1rem 1.5rem;text-align:left;transition:all .2s ease;width:100%}.nav-item:hover{background-color:#fff;color:#ff8c42}.nav-item.active{background-color:#e3f2fd;border-right:3px solid #ff8c42;color:#ff8c42}.nav-icon{font-size:1.2rem;text-align:center;width:20px}.nav-label{font-weight:500}.nav-section{width:100%}.nav-section-header{align-items:center;background:none;border:none;border-bottom:1px solid #f0f0f0;color:#2c3e50;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;justify-content:space-between;padding:1rem 1.5rem;position:relative;text-align:left;transition:all .2s ease;width:100%}.nav-section-header .nav-label{flex:1 1}.nav-section-header .nav-arrow{flex-shrink:0}.nav-section-header:hover{background-color:#f8f9fa;color:#ff8c42}.nav-section-header.active{background-color:#e3f2fd;border-right:3px solid #ff8c42;color:#ff8c42}.nav-section-header:focus{outline:none}.nav-arrow{align-items:center;color:#495057!important;display:inline-flex!important;flex-shrink:0;font-size:1rem;font-weight:700;justify-content:center;line-height:1;margin-left:12px;margin-right:0;min-width:20px;opacity:1!important;text-align:center;transition:color .2s ease,transform .2s ease;visibility:visible!important;width:20px}.nav-section-header.active .nav-arrow,.nav-section-header:hover .nav-arrow{color:#ff8c42!important}.nav-sub-items{animation:slideDown .2s ease;background-color:#f8f9fa;border-left:2px solid #e9ecef;margin-left:.5rem}@keyframes slideDown{0%{max-height:0;opacity:0}to{max-height:1000px;opacity:1}}.nav-sub-item{align-items:center;background:none;border:none;color:#495057;cursor:pointer;display:flex;font-size:.9rem;justify-content:flex-start;padding:.75rem 1.5rem .75rem 2.5rem;text-align:left;transition:all .2s ease;width:100%}.nav-sub-item:hover{background-color:#e9ecef;color:#ff8c42}.nav-sub-item.active{background-color:#d1ecf1;border-right:3px solid #ff8c42;color:#ff8c42;font-weight:500}.nav-sub-item:focus{outline:none}.sidebar-footer{border:1px solid #e9ecef;padding:1rem}.logout-btn{align-items:center;background:#e74c3c;border:2px solid #e74c3c;display:flex;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1rem;transition:all .2s ease;width:100%}.logout-btn:hover{background-color:#c0392b;border-color:#c0392b;color:#fff}.logout-icon{font-size:1rem}.main-content{display:flex;flex:1 1;flex-direction:column;margin-left:250px;min-height:100vh}.content-header{align-items:center;background:#fff;box-shadow:0 2px 10px #0000001a;display:flex;justify-content:space-between;padding:1.5rem 2rem}.content-header .btn-primary{min-width:auto!important;white-space:nowrap;width:fit-content!important}.content-header h1{color:#2c3e50;font-size:1.8rem;font-weight:600;margin:0}.user-info{color:#2c3e50}.user-avatar{background:linear-gradient(135deg,#ff8c42,#e67a35);font-size:1.2rem}.header-actions{align-items:center;display:flex;gap:1rem}.sql-editor-btn{align-items:center;background:#8e44ad;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.sql-editor-btn:hover{background:#7d3c98;box-shadow:0 4px 12px #8e44ad4d;transform:translateY(-1px)}.content-body{background-color:#fff;flex:1 1;padding:2rem}.dashboard-content{margin:0 auto;max-width:1200px}.welcome-section h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ff8c42,#e67a35);-webkit-background-clip:text;background-clip:text;color:#2c3e50;font-size:2.5rem;font-weight:700;margin-bottom:2rem}.welcome-card{box-shadow:0 10px 30px #0000001a;margin:0 auto;max-width:800px}.welcome-message h2{color:#2c3e50;font-size:1.8rem;font-weight:600;margin-bottom:1rem}.welcome-message p{color:#2c3e50;font-size:1.1rem;line-height:1.6;margin-bottom:2rem}.dashboard-branch-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:1.25rem}.branch-context{color:#2c3e50;font-size:.95rem;font-weight:600;text-align:center}.branch-context-loading{color:#6b7280;font-size:.85rem;font-weight:400}.stats-error{color:#dc2626;font-size:.85rem;margin-bottom:1rem}.school-stats{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:2rem 0}.stat-item{background:linear-gradient(135deg,#fff,#fff);border:1px solid #e9ecef;border-radius:8px;padding:1.5rem;text-align:center}.stat-number{color:#ff8c42;display:block;font-size:2rem;margin-bottom:.5rem}.stat-label{color:#2c3e50;font-size:.9rem;font-weight:500;letter-spacing:.5px}.recent-activity{margin-top:2rem;text-align:left}.recent-activity h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin-bottom:1rem;text-align:center}.activity-item{border:1px solid #e9ecef;justify-content:space-between;padding:.75rem 0}.activity-time{font-weight:500}.activity-text,.activity-time{color:#2c3e50;font-size:.9rem}.loading-container{height:100vh}.add-class-section,.add-student-section,.add-teacher-section{margin-bottom:2rem;text-align:center}.add-class-section h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ff8c42,#e67a35);-webkit-background-clip:text;background-clip:text;color:#2c3e50;font-size:2.5rem;font-weight:700;margin-bottom:2rem}.add-class-card{border:1px solid #e9ecef;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;max-width:800px;padding:30px}.add-class-card,.add-student-card{background:#fff;box-sizing:border-box;margin:0 auto;overflow-x:hidden;width:100%}.add-student-card,.add-teacher-card{border-radius:12px;box-shadow:0 10px 30px #0000001a;max-width:1000px;padding:3rem}.add-teacher-card{background:#fff;margin:0 auto}.add-class-form,.add-student-form{box-sizing:border-box;max-width:100%;overflow-x:hidden;text-align:left;width:100%}.add-student-form .submission-error-summary{background:#fef3f3;border:1px solid #fecaca;border-radius:10px;color:#b91c1c;font-weight:500;margin-bottom:1rem;padding:.85rem 1rem}.add-teacher-form{text-align:left}.add-teacher-form .submission-error-summary{background:#fef3f3;border:1px solid #fecaca;border-radius:10px;color:#b91c1c;font-weight:500;margin-bottom:1rem;padding:.85rem 1rem}.form-section{box-sizing:border-box;margin-bottom:2rem;max-width:100%;overflow-x:hidden;width:100%}.form-row{margin-bottom:1rem}.form-group label{margin-bottom:.5rem}.password-input-wrapper{align-items:center;display:flex}.password-input-wrapper input{padding-right:45px;width:100%}.password-input-wrapper input::-webkit-contacts-auto-fill-button,.password-input-wrapper input::-webkit-credentials-auto-fill-button,.password-input-wrapper input[type=password]::-webkit-contacts-auto-fill-button,.password-input-wrapper input[type=password]::-webkit-credentials-auto-fill-button,.password-input-wrapper input[type=password]::-webkit-inner-spin-button,.password-input-wrapper input[type=password]::-webkit-outer-spin-button{-webkit-appearance:none!important;display:none!important;visibility:hidden!important}.password-input-wrapper input[type=password]::-ms-clear,.password-input-wrapper input[type=password]::-ms-reveal{display:none!important}.password-input-wrapper input{background-image:none!important}.password-toggle-icon{align-items:center;background:none!important;border:none!important;box-shadow:none!important;color:#6b7280;cursor:pointer;display:flex;font-size:20px;justify-content:center;outline:none!important;padding:4px 8px;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:color .2s ease;-webkit-user-select:none;user-select:none;z-index:2}.password-toggle-icon:hover{color:#374151}.password-toggle-icon:active{color:#1f2937}.phone-input-wrapper{display:flex}.country-code-select{background:#fff;border:1px solid #e9ecef;border-radius:6px;color:#2c3e50;cursor:pointer;font-family:inherit;font-size:.85rem!important;padding:.75rem .5rem!important;transition:border-color .2s ease}.country-code-select:focus{border-color:#ff8c42;box-shadow:0 0 0 3px #3498db1a;outline:none}.phone-input-wrapper input{flex:1 1;min-width:0;width:50%!important}.form-group input,.form-group select,.form-group textarea{border-radius:6px;font-family:inherit;font-size:.9rem;padding:.75rem;transition:border-color .2s ease}.form-group input[type=file]{background:#fff;border:2px dashed #ff8c42;cursor:pointer;padding:.5rem;transition:all .3s ease}.form-group input[type=file]:focus,.form-group input[type=file]:hover{background:#e3f2fd;border-color:#e67a35}.form-group input[type=file]:focus{box-shadow:0 0 0 3px #3498db1a}.form-help{display:block;font-size:.875rem;margin-top:.5rem}.file-input{border:2px dashed #ff8c42;border-radius:6px}.file-input:hover{border-color:#e67a35}.parent-selection-toggle{display:flex;gap:.5rem;margin-top:.5rem}.toggle-btn{background:#fff;border:1px solid #e9ecef;border-radius:8px;color:#2c3e50;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .3s ease}.toggle-btn:hover{background:#fff;border-color:#ff8c42;color:#ff8c42}.toggle-btn.active{background:#ff8c42;border-color:#ff8c42;box-shadow:0 2px 4px #3498db33;color:#fff}.parent-dropdown{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 4px 12px #0000001a;left:0;margin-top:.25rem;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.parent-option{border:1px solid #e9ecef;cursor:pointer;padding:1rem;transition:background-color .2s ease}.parent-option:hover{background:#fff}.parent-option:last-child{border-bottom:none}.parent-email,.parent-name{color:#2c3e50;margin-bottom:.25rem}.parent-email{font-size:.875rem}.parent-phone{color:#2c3e50;font-size:.8rem}.loading-text,.no-parents-text{background:#fff;border-radius:6px;color:#2c3e50;font-style:italic;margin-top:.5rem;padding:1rem;text-align:center}.form-group:has(.parent-dropdown){position:relative}.parent-search-container{align-items:center;display:flex;position:relative}.parent-search-container input{flex:1 1;padding-right:2.5rem}.clear-selection-btn{align-items:center;background:#e74c3c;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:.8rem;height:24px;justify-content:center;position:absolute;right:.5rem;top:50%;transform:translateY(-50%);transition:all .2s ease;width:24px}.clear-selection-btn:hover{background:#c0392b;transform:translateY(-50%) scale(1.1)}.selected-parent-info{background:#ff8c42;border:1px solid #e67e22;border-radius:8px;margin-top:1rem;padding:1.5rem}.selected-parent-label{color:#fff;font-size:.9rem;font-weight:600;margin-bottom:.75rem}.selected-parent-details{color:#fff;font-size:1rem;font-weight:500}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#e74c3c}.error-text{word-wrap:break-word;color:#e74c3c;font-size:.8rem;margin-top:.25rem;overflow-wrap:break-word}.error-text,.subjects-header{box-sizing:border-box;max-width:100%;width:100%}.subjects-header{background:linear-gradient(135deg,#fff,#fff);border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:1.5rem;padding:1.5rem}.add-teacher-form .subjects-header{align-items:flex-start;flex-direction:column;gap:1rem}.subjects-header .add-subject-btn{margin-left:auto}.add-teacher-form .subjects-header .add-subject-btn{align-self:flex-start;margin-left:0}.subjects-header h4{align-items:center;color:#2c3e50;display:flex;font-size:1.1rem;font-weight:600;gap:.5rem;margin:0}.add-subject-btn{align-items:center;background:linear-gradient(135deg,#27ae60,#229954);border-radius:15px;box-shadow:0 2px 4px #27ae6033;display:flex;font-size:.8rem;gap:.2rem;min-width:auto;padding:.4rem .6rem;transition:all .3s ease;white-space:nowrap;width:fit-content}.add-subject-btn:hover{background:linear-gradient(135deg,#229954,#1e8449);box-shadow:0 4px 8px #27ae604d;transform:translateY(-1px)}.add-subject-btn:before{content:"➕";font-size:.9rem}.subjects-list{background:#fafbfc;border-radius:8px;margin-top:1rem;max-width:100%;overflow-x:hidden;padding:1.5rem}.subject-item,.subjects-list{border:1px solid #e9ecef;gap:1rem}.subject-item{box-shadow:0 2px 4px #0000000d;margin-bottom:.5rem;padding:1rem 1.5rem;transition:all .2s ease}.subject-item>.error-text{bottom:-20px;color:#e74c3c;font-size:.8rem;left:1.5rem;position:absolute}.subject-item:hover{border-color:#ff8c42;box-shadow:0 4px 8px #3498db1a}.subject-item input{background:#0000;border:2px solid #0000;border-radius:6px;flex:1 1;font-family:inherit;font-size:.9rem;min-width:0;padding:.75rem 1rem;transition:all .2s ease}.subject-item input:focus{background:#f8f9ff;border-color:#ff8c42;box-shadow:0 0 0 3px #3498db1a;outline:none}.subject-item input.error{background:#fef5f5;border-color:#e74c3c}.subject-item input::placeholder{color:#2c3e50;font-style:italic}.subject-teacher-item{align-items:flex-start;background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 1px 3px #0000000d;box-sizing:border-box;display:flex;gap:1rem;max-width:100%;overflow:hidden;padding:1rem;position:relative;transition:all .2s ease;width:100%}.subject-teacher-item:hover{border-color:#ff8c42;box-shadow:0 2px 6px #3498db1a}.section-input-group,.subject-input-group,.teacher-input-group{box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:.25rem;max-width:100%;min-width:0}.section-input-group select,.subject-input-group input,.subject-input-group select,.teacher-input-group select{background:#0000;border:2px solid #0000;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:.9rem;max-width:100%;padding:.75rem 1rem;transition:all .2s ease;width:100%}.subject-input-group input:focus,.subject-input-group select:focus,.teacher-input-group select:focus{background:#f8f9ff;border-color:#ff8c42;box-shadow:0 0 0 3px #3498db1a;outline:none}.subject-input-group input.error,.subject-input-group select.error,.teacher-input-group select.error{background:#fef5f5;border-color:#e74c3c}.subject-input-group input::placeholder{color:#2c3e50;font-style:italic}.subject-input-group select,.teacher-input-group select{background:#fff;border:1px solid #e9ecef;color:#2c3e50}.subject-input-group select:focus,.teacher-input-group select:focus{background:#f8f9ff;border-color:#ff8c42}.remove-subject-btn{align-items:center;border-radius:4px;box-shadow:0 1px 3px #ef44444d;display:flex;flex-shrink:0;font-size:18px;font-weight:600;height:28px;justify-content:center;line-height:1;margin-left:auto;min-width:28px;padding:0;transition:all .2s ease;width:28px}.remove-subject-btn:hover{box-shadow:0 2px 6px #ef444466;transform:scale(1.05)}.remove-subject-btn:active{transform:scale(.95)}.classes-selection{box-sizing:border-box;margin-top:1rem;overflow:visible;width:100%}.classes-grid{grid-gap:1.5rem;align-items:start;box-sizing:border-box;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));width:100%}.class-checkbox-item{align-items:flex-start;border-radius:8px;box-sizing:border-box;display:flex;flex-direction:column;min-height:fit-content;overflow:visible;padding:1rem;position:relative;width:100%}.class-checkbox-item:hover{background:#fff}.class-checkbox-label{margin-bottom:.5rem;width:100%}.class-checkbox-label input[type=checkbox]{margin-right:.75rem;transform:scale(1.2)}.class-checkbox-text{color:#2c3e50;font-weight:500}.class-section-dropdown{margin-top:.5rem;width:100%}.class-section-dropdown select{background:#fff;border:1px solid #e9ecef;border-radius:4px;font-size:.9rem;padding:.5rem;transition:border-color .2s ease;width:100%}.class-section-dropdown select:focus{border-color:#ff8c42;box-shadow:0 0 0 2px #3498db1a;outline:none}.class-section-dropdown select.error{border-color:#e74c3c}.class-sections-selection{background:#fff;border:1px solid #dee2e6;border-radius:6px;box-shadow:0 1px 3px #0000001a;box-sizing:border-box;margin-top:.5rem;max-width:100%;overflow:hidden;padding:.75rem;position:relative;width:100%;z-index:1}.schedule-content{max-width:1200px}.saved-holidays-section{margin-bottom:2rem}.saved-holidays-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 4px 12px #0000001a;overflow:hidden}.saved-holidays-card h2{background:linear-gradient(135deg,#ff8c42,#e67a35);color:#fff;font-size:1.5rem;font-weight:600;margin:0;padding:1.5rem 2rem}.saved-holidays-content{display:flex;flex-direction:column;padding:2rem}.saved-holidays-card .holidays-actions{display:flex!important;opacity:1!important;visibility:visible!important}.holidays-display h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin-bottom:1rem}.holidays-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.holiday-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:flex;justify-content:space-between;padding:1rem;transition:all .3s ease}.holiday-item.selected{background:#fff4ed;border-color:#ff8c42}.holiday-item.not-selected{background:#fff;border-color:#2c3e50}.holiday-day{color:#2c3e50;font-size:1rem;font-weight:600}.holiday-status{font-size:.9rem;font-weight:500}.holiday-item.selected .holiday-status{color:#e67a35}.holiday-item.not-selected .holiday-status{color:#2c3e50;font-weight:500}.holidays-actions{align-items:center;border-top:2px solid #e5e7eb;display:flex;gap:1rem;justify-content:center;margin-top:2rem;min-height:60px;padding-top:1.5rem;width:100%}.edit-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:8px;box-shadow:0 4px 12px #3b82f64d;font-size:1.1rem;gap:.5rem;justify-content:center;min-width:200px;opacity:1!important;padding:1rem 2rem;visibility:visible!important}.edit-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 8px #3b82f64d;transform:translateY(-2px)}.edit-btn:active{transform:translateY(0)}.schedule-header{border:1px solid #e9ecef;padding-bottom:1rem}.schedule-header h1{font-size:2.2rem}.schedule-header p{font-size:1rem}.schedule-stats{grid-gap:1.5rem;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem;padding:1.5rem}.add-schedule-section{margin-bottom:3rem}.add-schedule-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 4px 12px #0000001a;overflow:hidden}.add-schedule-card h2{background:linear-gradient(135deg,#ff8c42,#e67a35);color:#fff;font-size:1.5rem;font-weight:600;margin:0;padding:1.5rem 2rem}.add-schedule-form{padding:2rem}.holidays-grid{grid-gap:1rem;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-top:1rem;padding:1.5rem}.holiday-checkbox-item,.holiday-checkbox-label{align-items:center;display:flex;justify-content:flex-start}.holiday-checkbox-label{background:#fff;border:1px solid #e9ecef;border-radius:8px;cursor:pointer;font-weight:500;padding:1rem;transition:all .3s ease;width:100%}.holiday-checkbox-label:hover{background:#fff;border-color:#ff8c42;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.holiday-checkbox-label input[type=checkbox]{accent-color:#ff8c42;margin-right:.75rem;transform:scale(1.2)}.holiday-checkbox-label input[type=checkbox]:checked+.holiday-checkbox-text{color:#e74c3c;font-weight:600}.holiday-checkbox-label:has(input[type=checkbox]:checked){background:#fef2f2;border-color:#e74c3c;box-shadow:0 4px 12px #e74c3c33}.holiday-checkbox-text{color:#2c3e50;font-size:.95rem;transition:all .3s ease}.schedules-list{margin-top:2rem}.schedules-list h2{border:1px solid #e9ecef;color:#2c3e50;font-size:1.8rem;margin-bottom:1.5rem;padding-bottom:.5rem}.schedules-table-container{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.schedules-table{background:#fff;border-collapse:collapse;width:100%}.schedules-table th{font-weight:600;text-align:left}.schedules-table td,.schedules-table th{background:#fff;border:1px solid #e9ecef;color:#2c3e50;font-size:.9rem;padding:1rem 1.5rem}.schedules-table td{vertical-align:middle}.schedules-table tr:nth-child(2n){background:#fafafa}.schedules-table tr:hover,.schedules-table tr:nth-child(2n):hover{background:#fff}.schedule-name{color:#2c3e50;font-size:.95rem;font-weight:600}.academic-year{color:#059669;font-weight:500}.end-date,.start-date{color:#2c3e50}.holidays-cell{max-width:200px}.holidays-info{color:#7c3aed;font-size:.85rem;line-height:1.4}.status-badge{font-weight:500}.status-badge.active{border:1px solid #a7f3d0}.status-badge.inactive{border:1px solid #fecaca}@media (max-width:768px){.schedule-content{padding:1rem}.schedule-header h1{font-size:1.8rem}.schedule-stats{gap:1rem;grid-template-columns:1fr}.add-schedule-form{padding:1.5rem}.holidays-grid{gap:.75rem;grid-template-columns:repeat(2,1fr);padding:1rem}.holiday-checkbox-label{font-size:.9rem;padding:.75rem}.schedules-table-container{overflow-x:auto}.schedules-table td,.schedules-table th{font-size:.85rem;padding:.75rem 1rem}}.sections-label{color:#2c3e50;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.sections-grid{grid-gap:.4rem;box-sizing:border-box;display:grid;gap:.4rem;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));max-width:100%;overflow:hidden}.section-checkbox-item,.section-checkbox-label{align-items:center;box-sizing:border-box;display:flex;width:100%}.section-checkbox-label{cursor:pointer;font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.section-checkbox-label input[type=checkbox]{margin-right:.5rem;transform:scale(1.1)}.section-checkbox-text{color:#2c3e50;font-weight:500}.classes-content{margin:0 auto;max-width:1200px;padding:2rem}.classes-content.full-width{margin:0;max-width:none;padding-left:.5rem;padding-right:.5rem;width:100%}.classes-content.full-width.edge-to-edge{margin:0;padding:0 12px;width:100%}.classes-content.full-width.edge-to-edge .classes-table-container{border-left:none;border-radius:0;border-right:none;box-shadow:none}.icon-btn{background:#eef2ff;border:1px solid #c7d2fe;border-radius:8px;color:#2c3e50;cursor:pointer;margin-right:6px;padding:6px 8px}.icon-btn:hover{background:#e0e7ff}.icon-btn.danger{background:#fee2e2;border-color:#fecaca}.icon-btn.danger:hover{background:#fecaca}.classes-header{border:1px solid #e9ecef;margin-bottom:2rem;padding-bottom:1rem;text-align:center}.classes-header h1{color:#2c3e50;font-size:2.2rem;font-weight:600;letter-spacing:-.025em;margin-bottom:.5rem}.classes-header p{color:#2c3e50;font-size:1rem;font-weight:400}.classes-stats{grid-gap:1.5rem;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem;padding:1.5rem}.classes-actions{display:flex;justify-content:flex-end;margin-bottom:2rem}.add-class-btn{background:#059669;border:none;border-radius:6px;box-shadow:0 1px 3px #0000001a;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.add-class-btn:hover{background:#047857;box-shadow:0 2px 4px #00000026}.classes-table-container{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-left:0;margin-right:0;overflow:hidden;width:100%}.classes-table{background:#fff;border-collapse:collapse;font-size:.9rem;width:100%}.classes-table th{background:#fff;border:1px solid #e9ecef;color:#2c3e50;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:1rem 1.5rem;text-align:left;text-transform:uppercase}.classes-table th:last-child{border-right:none}.classes-table td{background:#fff;border:1px solid #e9ecef;padding:1rem 1.5rem;vertical-align:middle}.classes-table td:last-child{border-right:none}.classes-table tr:hover{background:#fff}.classes-table tr:last-child td{border-bottom:none}.classes-table tr:nth-child(2n){background:#fafafa}.classes-table tr:nth-child(2n):hover{background:#fff}.class-name{color:#2c3e50;font-size:.95rem;font-weight:600}.subjects-list{flex-wrap:wrap;gap:.5rem}.subject-tag{background:#fff;border:1px solid #e9ecef;border-radius:4px;color:#2c3e50;font-size:.8rem;font-weight:500;padding:.25rem .75rem}.teachers-cell{min-width:150px}.teachers-info{display:flex;flex-direction:column;gap:.25rem}.teachers-count{color:#059669;font-size:.9rem;font-weight:500}.created-date{color:#2c3e50;font-size:.9rem}.action-buttons{gap:.5rem}.archive-btn,.delete-btn,.edit-btn,.unarchive-btn{align-items:center;background:none;border:none;border-radius:6px;color:#2c3e50;cursor:pointer;display:inline-flex;font-size:1.1rem;height:36px;justify-content:center;padding:.5rem;transition:all .2s ease;width:36px}.edit-btn:hover{background:#fef3c7}.delete-btn:hover,.edit-btn:hover{transform:scale(1.1)}.archive-btn:disabled,.delete-btn:disabled,.unarchive-btn:disabled{background:#fff;color:#2c3e50;cursor:not-allowed;opacity:.5}.edit-btn:hover{background:#fff;color:#2c3e50}.delete-btn:hover{background:#fef2f2;color:#dc2626}.archive-btn:hover{background:#fef3c7;color:#d97706}.unarchive-btn:hover{background:#d1fae5;color:#059669}.no-data{color:#2c3e50;font-size:.9rem}.error-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a}.retry-btn{background:linear-gradient(135deg,#ff8c42,#e67a35);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem;transition:all .3s ease}.retry-btn:hover{box-shadow:0 4px 8px #3498db4d;transform:translateY(-2px)}.empty-state{border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:4rem 2rem}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{color:#2c3e50;font-size:1.5rem;margin-bottom:.5rem}.empty-state p{color:#2c3e50;font-size:1.1rem;margin-bottom:2rem}.add-first-class-btn{background:linear-gradient(135deg,#27ae60,#229954);border:none;border-radius:8px;box-shadow:0 2px 4px #27ae6033;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.add-first-class-btn:hover{box-shadow:0 4px 8px #27ae604d;transform:translateY(-2px)}@media (max-width:768px){.classes-content{padding:1rem}.classes-header h1{font-size:2rem}.classes-stats{grid-template-columns:1fr}.classes-table-container{overflow-x:auto}.classes-table{min-width:600px}.classes-table td,.classes-table th{padding:.75rem .5rem}.subjects-list{flex-direction:column;gap:.5rem}.students-table .action-buttons{flex-direction:row!important;gap:.5rem}body,html{max-width:100%!important;overflow-x:hidden!important;width:100%!important}.main-content,.school-dashboard{box-sizing:border-box;max-width:100%;overflow-x:hidden;width:100%}.main-content{margin-left:0!important}.students-content{max-width:100%;overflow-x:hidden}.students-content,.students-header{box-sizing:border-box;padding:1rem;width:100%}.students-header{margin-bottom:1rem}.students-header h1{word-wrap:break-word;font-size:1.5rem}.students-header p{word-wrap:break-word;font-size:.9rem}.table-toolbar{align-items:stretch;box-sizing:border-box;flex-direction:column;gap:.75rem;max-width:100%;width:100%}.table-toolbar .search-input,.table-toolbar select{box-sizing:border-box;max-width:100%;min-width:0;width:100%}.students-stats{grid-gap:.75rem!important;box-sizing:border-box;display:grid!important;gap:.75rem!important;grid-template-columns:repeat(3,1fr)!important;max-width:100%;padding:1rem!important;width:100%}.stat-item{box-sizing:border-box;text-align:center!important;width:auto!important}.students-actions{justify-content:center;margin-bottom:1rem}.add-student-btn,.students-actions{box-sizing:border-box;max-width:100%;width:100%}.add-student-btn{font-size:1rem;padding:.875rem 1.5rem}.settings-tabs{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.settings-tab{-webkit-appearance:none;appearance:none;background:#ff8c42!important;border:1px solid #ff8c42;border-radius:999px;box-shadow:0 6px 12px #ff8c4240;color:#fff!important;cursor:pointer;flex:1 1;font-weight:600;padding:.85rem 1rem;text-align:center;transition:all .2s ease}.settings-tab:hover{background:#ff7f1d!important}.settings-tabs button:last-child{margin-right:0}.settings-tab.active{background:#ff8c42!important;border-color:#ff8c42;color:#fff;transform:translateY(-1px)}.branch-cards-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-bottom:1.5rem}.branch-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 12px #0f172a0d;padding:1rem}.branch-card-header{align-items:center;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.5rem}.branch-card strong{color:#ff8c42;font-size:1rem}.branch-card .status-badge.active{background:#ff8c4226;border:1px solid #ff8c4280;color:#ff8c42}.branch-form-card h4{color:#ff8c42}.branch-form-card .submit-btn{background:#ff8c42;border:none;box-shadow:0 6px 12px #ff8c4240;color:#fff}.branch-form-card{border-top:1px dashed #e5e7eb;padding-top:1.5rem}.students-table-container{-webkit-overflow-scrolling:touch;box-sizing:border-box;max-width:100%;overflow-x:scroll!important;overflow-y:visible;padding-bottom:4px;position:relative;scrollbar-color:#ff8c42 #f1f1f1;scrollbar-width:thin;width:100%}.students-table-container::-webkit-scrollbar{display:block!important;height:10px!important}.students-table-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:5px;display:block!important}.students-table-container::-webkit-scrollbar-thumb{background:#ff8c42;border-radius:5px;display:block!important;min-height:10px}.students-table-container::-webkit-scrollbar-thumb:hover{background:#e67a35}.students-table{display:table;font-size:.85rem;min-width:800px!important;table-layout:auto;width:100%}.students-table th{font-size:.75rem;padding:.75rem .5rem}.students-table td{font-size:.85rem;padding:.75rem .5rem}.students-table td:first-child,.students-table th:first-child{padding-left:.75rem}.action-buttons{align-items:center;flex-direction:column;gap:.5rem}.status-badge{font-size:.75rem;padding:.25rem .5rem}.pagination-controls{flex-wrap:wrap;gap:.5rem;justify-content:center}.pagination-controls .page-btn{font-size:.85rem;padding:.5rem .75rem}.pagination-controls .page-info{font-size:.85rem;margin-top:.5rem;text-align:center;width:100%}.empty-state{padding:2rem 1rem}.empty-state h3{font-size:1.25rem}.empty-state p{font-size:.9rem}.add-first-class-btn{font-size:1rem;padding:.875rem 1.5rem;width:100%}.error-container,.loading-container{padding:2rem 1rem}}.teachers-content{margin:0 auto;max-width:1400px;padding:2rem}.teachers-header{border:1px solid #e9ecef;margin-bottom:2rem;padding-bottom:1rem;text-align:center}.teachers-header h1{color:#2c3e50;font-size:2.2rem;font-weight:600;letter-spacing:-.025em;margin-bottom:.5rem}.teachers-header p{color:#2c3e50;font-size:1rem;font-weight:400}.teachers-stats{grid-gap:1.5rem;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem;padding:1.5rem}.teachers-actions{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:2rem}.add-teacher-btn{background:#059669;border:none;border-radius:6px;box-shadow:0 1px 3px #0000001a;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.add-teacher-btn:hover{background:#047857;box-shadow:0 2px 4px #00000026}.filter-toggle,.teachers-filter{align-items:center;display:flex}.filter-toggle{border-radius:6px;color:#2c3e50;cursor:pointer;font-size:.9rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease;-webkit-user-select:none;user-select:none}.filter-toggle:hover{background:#fff}.filter-toggle input[type=checkbox]{accent-color:#ff8c42;cursor:pointer;height:18px;width:18px}.teachers-table-container{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.teachers-table{background:#fff;border-collapse:collapse;font-size:.85rem;width:100%}.teachers-table th{background:#fff;border:1px solid #e9ecef;color:#2c3e50;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:1rem .75rem;text-align:left;text-transform:uppercase}.teachers-table th:last-child{border-right:none}.teachers-table td{background:#fff;border:1px solid #e9ecef;padding:.75rem;vertical-align:middle}.teachers-table td:last-child{border-right:none}.teachers-table tr:hover{background:#fff}.teachers-table tr:last-child td{border-bottom:none}.teachers-table tr:nth-child(2n){background:#fafafa}.teachers-table tr:nth-child(2n):hover{background:#fff}.teacher-name{color:#2c3e50;font-size:.9rem;min-width:150px}.subjects-cell{min-width:200px}.classes-cell{min-width:150px}.classes-info{display:flex;flex-direction:column;gap:.25rem}.classes-count{color:#059669;font-size:.9rem;font-weight:500}.experience-cell{color:#2c3e50}.experience-cell,.salary-cell{font-size:.85rem;min-width:100px}.salary-cell{color:#059669;font-weight:500}.add-first-teacher-btn{background:linear-gradient(135deg,#27ae60,#229954);border:none;border-radius:8px;box-shadow:0 2px 4px #27ae6033;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.add-first-teacher-btn:hover{box-shadow:0 4px 8px #27ae604d;transform:translateY(-2px)}.students-content{margin:0 auto;max-width:1400px;padding:2rem}.students-header{border:1px solid #e9ecef;margin-bottom:2rem;padding-bottom:1rem;text-align:center}.students-header h1{color:#2c3e50;font-size:2.2rem;font-weight:600;letter-spacing:-.025em;margin-bottom:.5rem}.students-header p{color:#2c3e50;font-size:1rem;font-weight:400}.students-stats{grid-gap:1.5rem;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem;padding:1.5rem}.students-actions{display:flex;justify-content:flex-end;margin-bottom:2rem}.add-student-btn{background:#ff8c42;border:none;border-radius:6px;box-shadow:0 1px 3px #0000001a;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.add-student-btn:hover{background:#e67e22;box-shadow:0 2px 4px #00000026}.students-table-container{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow-x:auto;overflow-y:visible;scrollbar-color:#ff8c42 #f1f1f1;scrollbar-width:thin}.students-table-container::-webkit-scrollbar{height:12px}.students-table-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:6px}.students-table-container::-webkit-scrollbar-thumb{background:#ff8c42;border-radius:6px}.students-table-container::-webkit-scrollbar-thumb:hover{background:#e67a35}.students-table{background:#fff;border-collapse:collapse;font-size:.9rem;table-layout:fixed;width:100%}.students-table th{background:#ff8c42;border:none;border-right:1px solid #fff3;color:#fff;font-size:.85rem;font-weight:700;letter-spacing:.5px;padding:1rem;text-align:left;text-transform:uppercase;vertical-align:middle;white-space:nowrap}.students-table th:first-child{padding-left:1.5rem;padding-right:1rem;text-align:center;width:18%}.students-table th:nth-child(2){padding-left:1rem;padding-right:1rem;text-align:center;width:20%}.students-table th:nth-child(3),.students-table th:nth-child(4){padding-left:1rem;padding-right:1rem;text-align:center;width:12%}.students-table th:nth-child(5){padding-left:1rem;padding-right:1rem;text-align:center;width:15%}.students-table th:nth-child(6){padding-left:1rem;padding-right:1rem;text-align:center;width:10%}.students-table th:last-child{border-right:none;padding-left:1rem;padding-right:1rem;text-align:center;width:13%}.students-table td{word-wrap:break-word;background:#fff;border-bottom:1px solid #e9ecef;display:table-cell;font-weight:400;height:auto;line-height:1.5;padding:1rem;vertical-align:middle!important}.students-table tr{height:auto}.students-table td:first-child{padding-left:1.5rem;padding-right:1rem;text-align:center}.students-table td:nth-child(2),.students-table td:nth-child(3),.students-table td:nth-child(4),.students-table td:nth-child(5){padding-left:1rem;padding-right:1rem;text-align:center}.students-table td:last-child,.students-table td:nth-child(6){padding-left:1rem;padding-right:1rem}.students-table td:last-child{border-right:none;text-align:center;vertical-align:middle!important}.students-table tr:hover{background:#f9fafb}.students-table tr:last-child td{border-bottom:none}.students-table tr:nth-child(2n){background:#fafafa}.students-table tr:nth-child(2n):hover{background:#f9fafb}.student-name{display:table-cell;font-size:.95rem;line-height:1.5;padding:1rem;vertical-align:middle!important}.student-name,.student-name *{font-weight:400!important}.email-cell{display:table-cell;padding:1rem;vertical-align:middle!important}.email-link{color:#1f2937;display:inline;font-size:.9rem;text-decoration:none;vertical-align:middle;word-break:break-all}.email-link:hover{color:#374151;text-decoration:underline}.class-cell{display:table-cell;padding:1rem;vertical-align:middle!important}.class-name{display:inline;font-weight:500;vertical-align:middle}.class-name,.dob-cell{color:#374151;font-size:.9rem}.dob-cell{display:table-cell;padding:1rem;vertical-align:middle!important;white-space:nowrap}.gender-cell{min-width:80px;text-align:center}.gender-badge{border-radius:4px;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:.25rem .5rem;text-transform:uppercase}.gender-badge.male{background:#dbeafe;border:1px solid #93c5fd;color:#1e40af}.gender-badge.female{background:#fce7f3;border:1px solid #f9a8d4;color:#be185d}.phone-cell{color:#2c3e50;font-size:.85rem;min-width:120px}.parent-cell{color:#374151;font-size:.9rem}.parent-cell,.status-cell{display:table-cell;padding:1rem;vertical-align:middle!important}.status-cell{text-align:center}.status-badge{padding:.4rem .9rem}.status-badge.active{border:1px solid #10b981}.status-badge.inactive{border:1px solid #ef4444}.actions-cell{display:table-cell;padding:1rem;vertical-align:middle!important}.action-buttons{align-items:center;display:flex!important;flex-direction:row!important;gap:.25rem;justify-content:center;line-height:1;margin:0;padding:0}.students-table .action-buttons{align-items:center;display:flex!important;flex-direction:row!important;gap:.15rem!important;justify-content:center;margin:0!important;padding:0!important;vertical-align:middle}.students-table .delete-btn,.students-table .edit-btn,.students-table .view-btn{align-items:center;background:none!important;border:none!important;border-radius:0!important;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:1.2rem;height:auto!important;justify-content:center;line-height:1;margin:0!important;min-height:auto!important;min-width:auto!important;padding:0!important;transition:all .2s ease;vertical-align:middle;width:auto!important}.students-table .delete-btn:hover,.students-table .edit-btn:hover,.students-table .view-btn:hover{background:none!important;opacity:.8;transform:scale(1.1)}.students-table .students-edit-btn{align-items:center;background:none!important;border:none!important;border-radius:0!important;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:1.2rem;height:auto!important;justify-content:center;line-height:1;margin:0!important;min-height:auto!important;min-width:auto!important;padding:0!important;transition:all .2s ease;vertical-align:middle;width:auto!important}.students-table .students-edit-btn:hover{background:none!important;opacity:.8;transform:scale(1.1)}.add-first-student-btn{background:#ff8c42;border:none;border-radius:8px;box-shadow:0 2px 4px #ff8c4233;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.add-first-student-btn:hover{background:#e67e22;box-shadow:0 4px 8px #ff8c424d;transform:translateY(-2px)}.close-btn:hover{color:#2c3e50}.edit-student-header{background:#ff8c42!important}.edit-student-header .close-btn,.edit-student-header h3{color:#fff!important}.edit-student-header .close-btn:hover{background:#fff3!important;color:#fff!important}.edit-class-form{padding:2rem}.edit-class-form .form-group,.edit-class-form .form-section{margin-bottom:1.5rem}.edit-class-form .form-group label{color:#2c3e50;display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.edit-class-form .form-group input{border:1px solid #e9ecef;border-radius:6px;box-sizing:border-box;font-size:.9rem;margin:0;padding:.75rem 1rem;transition:all .2s ease;width:100%}.edit-class-form .form-group input:focus{border-color:#059669;box-shadow:0 0 0 3px #0596691a;outline:none}.edit-class-form .form-group input.error{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.edit-class-form .error-text{color:#dc2626;display:block;font-size:.8rem;margin-top:.25rem}.edit-class-form .form-actions{border:1px solid #e9ecef;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem}.edit-class-form .cancel-btn{background:#fff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.edit-class-form .cancel-btn:hover{background:#fff}.edit-class-form .submit-btn{background:#059669;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.edit-class-form .submit-btn:hover:not(:disabled){background:#047857}.edit-class-form .submit-btn:disabled{background:#fff;cursor:not-allowed}.edit-teacher-form{padding:2rem}.edit-teacher-form .form-section{margin-bottom:2rem}.edit-teacher-form .form-section h3{border:1px solid #e9ecef;color:#2c3e50;font-size:1.1rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem}.edit-teacher-form .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.edit-teacher-form .form-group{display:flex;flex-direction:column}.edit-teacher-form .form-group label{color:#2c3e50;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.edit-teacher-form .form-group input,.edit-teacher-form .form-group select,.edit-teacher-form .form-group textarea{border:1px solid #e9ecef;border-radius:6px;box-sizing:border-box;font-size:.9rem;margin:0;padding:.75rem 1rem;transition:all .2s ease}.edit-teacher-form .form-group input:focus,.edit-teacher-form .form-group select:focus,.edit-teacher-form .form-group textarea:focus{border-color:#059669;box-shadow:0 0 0 3px #0596691a;outline:none}.edit-teacher-form .form-group input.error,.edit-teacher-form .form-group select.error,.edit-teacher-form .form-group textarea.error{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.edit-teacher-form .error-text{color:#dc2626;display:block;font-size:.8rem;margin-top:.25rem}.edit-teacher-form .form-actions{border:1px solid #e9ecef;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem}.edit-teacher-form .cancel-btn{background:#fff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.edit-teacher-form .cancel-btn:hover{background:#fff}.edit-teacher-form .submit-btn{background:#059669;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.edit-teacher-form .submit-btn:hover:not(:disabled){background:#047857}.edit-teacher-form .submit-btn:disabled{background:#fff;cursor:not-allowed}.edit-student-form{padding:2rem}.edit-student-form .form-section{margin-bottom:2rem}.edit-student-form .form-section h4{border:1px solid #e9ecef;color:#2c3e50;font-size:1.1rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem}.edit-student-form .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.edit-student-form .form-group.full-width{grid-column:1/-1}.medical-records-guidelines{background:#ff8c42;border:1px solid #e67e22;border-radius:8px;margin-bottom:.75rem;overflow:visible;padding:1.5rem}.medical-guideline-text{color:#fff;font-size:1rem;font-weight:600;margin:0 0 1rem}.medical-guidelines-list{color:#fff;font-size:.9rem;line-height:1.8;margin:0;padding-left:1.5rem}.medical-guidelines-list li{color:#fff;margin-bottom:.5rem}.file-selected{background:#f0f9ff;border:1px solid #bae6fd;border-radius:4px;color:#075985;font-size:.875rem;margin-top:.5rem;padding:.5rem}.file-selected .file-size{color:#2c3e50;margin-left:.5rem}.existing-file{background:#f0fdf4;border:1px solid #86efac;border-radius:4px;color:#166534;font-size:.875rem;margin-top:.5rem;padding:.5rem}.file-link{color:#059669;font-weight:500;text-decoration:underline}.file-link:hover{color:#047857}.academic-history-content{margin-top:1rem}.academic-history-item{background:#fff;border:1px solid #e9ecef;border-radius:6px;margin-bottom:1.5rem;padding:1rem}.academic-history-item:last-child{margin-bottom:0}.academic-history-label{color:#2c3e50;font-size:.95rem;font-weight:600;margin:0 0 .5rem}.academic-history-value{color:#2c3e50;font-size:.9rem;line-height:1.6;margin:0;padding-left:1rem}.transport-service-toggle-container{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 4px #0000000d;margin-top:1rem;padding:1.5rem}.transport-service-label{align-items:center;color:#1f2937;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;justify-content:space-between;margin-bottom:.75rem;padding:.5rem 0}.toggle-switch{display:inline-block;flex-shrink:0;height:36px;position:relative;width:64px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#d1d5db;border:2px solid #9ca3af;border-radius:36px;bottom:0;box-shadow:inset 0 2px 4px #0000001a;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.4s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:4px;box-shadow:0 2px 4px #0003;content:"";height:28px;left:4px;position:absolute;transition:.4s;width:28px}.toggle-switch input:checked+.toggle-slider{background-color:#10b981;border-color:#059669;box-shadow:0 0 0 3px #10b98133,inset 0 2px 4px #0000001a}.toggle-switch input:checked+.toggle-slider:before{background-color:#fff;box-shadow:0 2px 4px #0003;transform:translateX(28px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 4px #10b9814d,inset 0 2px 4px #0000001a;outline:none}.toggle-switch:hover .toggle-slider{border-color:#6b7280}.toggle-switch input:checked:hover+.toggle-slider{background-color:#059669;border-color:#047857}.transport-service-help{background:#f3f4f6;border-left:4px solid #10b981;border-radius:8px;color:#374151;font-size:.9rem;font-weight:500;margin:1rem 0 0;padding:.75rem 1rem}.fees-content{margin-top:1rem}.fees-placeholder{background:#fff;border:1px solid #e9ecef;border-radius:6px;color:#2c3e50;font-style:italic;padding:1rem;text-align:center}.fees-list{margin-bottom:1.5rem}.fees-header{border:1px solid #e9ecef;margin-bottom:1rem;padding-bottom:.5rem}.fees-header h4{color:#2c3e50;font-size:1rem;font-weight:600;margin:0}.fee-item{background:#fff;border:1px solid #e9ecef;border-radius:6px;margin-bottom:.75rem;padding:1rem}.fee-item:last-child{margin-bottom:0}.fee-details{gap:.25rem}.fee-type{font-size:.9rem}.fee-amount,.fee-type{font-weight:600;margin:0}.fee-description{font-size:.875rem;font-style:italic;margin:.25rem 0 0}.no-fees-text{background:#fff;border:1px solid #e9ecef;border-radius:6px;color:#2c3e50;font-style:italic;margin-bottom:1.5rem;padding:1rem;text-align:center}.payment-method-section{border:1px solid #e9ecef;margin-top:1.5rem;padding-top:1.5rem}.payment-method-label{color:#2c3e50;display:block;font-size:.95rem;font-weight:600;margin-bottom:.75rem}.payment-method-options{display:flex;flex-direction:column;gap:.75rem}.payment-option{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:6px;cursor:pointer;display:flex;gap:.75rem;padding:.75rem;transition:all .2s ease}.payment-option:hover{background:#fff4ed;border-color:#ff8c42}.payment-option input[type=radio]{accent-color:#ff8c42;cursor:pointer;height:18px;width:18px}.payment-option input[type=radio]:checked{accent-color:#ff8c42}.payment-option input[type=radio]:checked+span{color:#ff8c42;font-weight:600}.payment-option:has(input[type=radio]:checked){background:#fff4ed;border-color:#ff8c42}.payment-option span{color:#2c3e50;font-size:.9rem}.payment-option:has(input[type=radio]:checked) span{color:#ff8c42}.documents-content{box-sizing:border-box;margin-top:1rem;max-width:100%;overflow-x:hidden}.document-upload-section{align-items:flex-end;background:#fff;border:1px solid #e9ecef;border-radius:6px;box-sizing:border-box;display:flex;gap:.75rem;margin-bottom:1.5rem;max-width:100%;overflow:hidden;padding:1rem}.document-upload-controls{align-items:flex-start;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:.5rem;max-width:100%;min-width:0}.document-type-label{color:#2c3e50;display:block;font-size:1rem;font-weight:600;line-height:1.5;margin-bottom:.5rem}.document-type-select{background:#fff;border:1px solid #e9ecef;border-radius:6px;box-sizing:border-box;flex:1 1;font-size:1rem;line-height:1.5;max-width:100%;min-width:0;padding:.75rem;width:100%}.document-file-input{display:none}.add-document-btn{background:#ff8c42;border:none;border-radius:6px;box-sizing:border-box;color:#fff;cursor:pointer;flex-shrink:0;font-size:.9rem;font-weight:500;max-width:none;min-width:auto;padding:.75rem 1.5rem;transition:all .2s ease;white-space:nowrap;width:auto}.add-document-btn:hover{background:#e67e22}.documents-list{box-sizing:border-box;margin-top:1rem;max-width:100%;overflow-x:hidden}.documents-list h4{color:#2c3e50;font-size:1rem;font-weight:600;margin:0 0 1rem}.document-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:6px;box-sizing:border-box;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.75rem;max-width:100%;overflow:hidden;padding:1rem;width:100%}.document-item:last-child{margin-bottom:0}.document-info{align-items:center;box-sizing:border-box;display:flex;flex:1 1;gap:1rem;max-width:100%;min-width:0;overflow:visible}.document-name{color:#2c3e50;display:inline-block;flex-shrink:1;font-size:.9rem;font-weight:500;max-width:300px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-type-edit{border:1px solid #e9ecef;border-radius:4px;box-sizing:border-box;font-size:.875rem;max-width:100%;min-width:150px;padding:.5rem;width:100%}.document-size{color:#2c3e50;font-size:.875rem}.remove-document-btn{background:#dc2626;border:none;border-radius:4px;color:#fff;cursor:pointer;flex-shrink:0;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease;white-space:nowrap;width:auto}.remove-document-btn:hover{background:#b91c1c}.no-documents-text{background:#fff;border:1px solid #e9ecef;border-radius:6px;color:#2c3e50;font-style:italic;padding:1rem;text-align:center}.document-type-badge{background:#e0e7ff;border-radius:4px;color:#4338ca;font-size:.875rem;font-weight:500;padding:.25rem .75rem;white-space:nowrap}.table-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin:1.5rem 0}.data-table thead{background:#fff;border:1px solid #e9ecef}.data-table th{font-size:.875rem;letter-spacing:.5px;text-transform:uppercase}.data-table td{border:1px solid #e9ecef;color:#2c3e50;padding:.875rem 1rem}.data-table tbody tr:hover{background:#fff}.data-table tbody tr:last-child td{border-bottom:none}.badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:.25rem .75rem;text-transform:uppercase}.badge-success{background:#d1fae5;color:#065f46}.badge-secondary{background:#fff;color:#2c3e50}.badge:not(.badge-success):not(.badge-secondary){background:#dbeafe;color:#1e40af}.search-bar-container{margin-bottom:1.5rem;max-width:500px;position:relative}.search-input{border-radius:6px;font-size:.9rem;padding:.75rem 1rem;transition:all .2s ease}.search-input:focus{border-color:#059669;box-shadow:0 0 0 3px #0596691a}.summary-card{background:#fff;border:1px solid #e9ecef;border-radius:6px;margin-top:1.5rem;padding:1rem 1.5rem}.summary-card h3{color:#2c3e50;font-size:1rem;margin:0 0 .5rem}.summary-card p{color:#2c3e50;font-size:.9rem;margin:.25rem 0}.summary-card strong{color:#059669;font-weight:600}.empty-state{background:#fff;border:1px solid #e9ecef;border-radius:8px;color:#2c3e50;padding:3rem 1rem;text-align:center}.empty-state p{font-size:1rem;margin:0}.show-details-btn{background:#059669;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.show-details-btn:hover{background:#047857}.parent-details-popup{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-height:90vh;max-width:700px;overflow-y:auto;width:100%}.close-popup-btn{align-items:center;background:none;border:none;border-radius:4px;color:#2c3e50;cursor:pointer;display:flex;font-size:2rem;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.close-popup-btn:hover{background:#fff;color:#2c3e50}.parent-details-section{margin-bottom:2rem}.parent-details-section:last-child{margin-bottom:0}.parent-details-section h3{border:1px solid #e9ecef;color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem}.details-grid{grid-gap:1rem;gap:1rem}.detail-item{gap:.25rem}.detail-item.full-width{grid-column:1/-1}.detail-item label{color:#2c3e50;font-size:.875rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-item span{color:#2c3e50;font-size:.95rem}.children-list{gap:.75rem}.child-item{background:#fff;border:1px solid #e9ecef;border-radius:6px;padding:1rem}.child-info{display:flex;flex-direction:column;gap:.25rem}.child-name{color:#2c3e50;font-size:1rem;font-weight:600}.child-class{font-size:.875rem}.no-children{font-style:italic;padding:1rem}.popup-footer{padding:1rem 1.5rem}.close-btn{background:#059669;border-radius:6px;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem}.close-btn:hover{background:#047857}.edit-student-form .form-group{display:flex;flex-direction:column}.edit-student-form .form-group label{color:#2c3e50;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.edit-student-form .form-group input,.edit-student-form .form-group select{border:1px solid #e9ecef;border-radius:6px;box-sizing:border-box;font-size:.9rem;margin:0;padding:.75rem 1rem;transition:all .2s ease}.edit-student-form .form-group input:focus,.edit-student-form .form-group select:focus{border-color:#059669;box-shadow:0 0 0 3px #0596691a;outline:none}.edit-student-form .form-group input.error,.edit-student-form .form-group select.error{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.edit-student-form .error-text{color:#dc2626;display:block;font-size:.8rem;margin-top:.25rem}.edit-student-form .form-actions{border:1px solid #e9ecef;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem}.edit-student-form .cancel-btn{background:#fff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.edit-student-form .cancel-btn:hover{background:#fff}.edit-student-form .submit-btn{background:#059669;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.edit-student-form .submit-btn:hover:not(:disabled){background:#047857}.edit-student-form .submit-btn:disabled{background:#fff;cursor:not-allowed}.siblings-list{margin-top:1rem;min-height:auto;overflow:visible;padding:0}.loading-text,.no-siblings-text{color:#2c3e50;font-style:italic;padding:1rem;text-align:center}.no-siblings-text{background:#fff;border:1px solid #e9ecef;border-radius:6px}.siblings-grid{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:1rem;overflow:visible}.sibling-card{background:#ff8c42;border:1px solid #e67e22;border-radius:8px;display:flex;flex-direction:column;min-height:auto;overflow:visible;padding:1.5rem;transition:all .2s ease}.sibling-card:hover{border-color:#d35400;box-shadow:0 4px 12px #ff8c424d;transform:translateY(-2px)}.sibling-header{border-bottom:2px solid #ffffff4d;flex-shrink:0;margin-bottom:1rem;padding-bottom:1rem}.sibling-header h5{color:#fff;font-size:1.1rem;font-weight:600;margin:0;text-align:left}.sibling-details{display:flex;flex:1 1;flex-direction:column;gap:.75rem;overflow:visible}.sibling-details p{word-wrap:break-word;color:#fff;font-size:.9rem;line-height:1.6;margin:0;text-align:left}.sibling-details p strong{color:#fff;display:inline-block;font-weight:600;margin-right:.5rem;min-width:100px}.sibling-details p a{color:#fff;text-decoration:underline}.sibling-details p a:hover{color:#f0f0f0;text-decoration:underline}.teachers-list{min-height:auto;padding:0}.teachers-grid,.teachers-list{margin-top:1rem;overflow:visible}.teachers-grid{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.teacher-card{background:#ff8c42;border:1px solid #e67e22;border-radius:8px;display:flex;flex-direction:column;min-height:auto;overflow:visible;padding:1.5rem;transition:all .2s ease}.teacher-card:hover{border-color:#d35400;box-shadow:0 4px 12px #ff8c424d;transform:translateY(-2px)}.teacher-header{border-bottom:2px solid #ffffff4d;flex-shrink:0;margin-bottom:1rem;padding-bottom:1rem}.teacher-header h5{color:#fff;font-size:1.1rem;font-weight:600;margin:0;text-align:left}.teacher-details{display:flex;flex:1 1;flex-direction:column;gap:.75rem;overflow:visible}.teacher-details p{word-wrap:break-word;color:#fff;font-size:.9rem;line-height:1.6;margin:0;text-align:left}.teacher-details p strong{color:#fff;display:inline-block;font-weight:600;margin-right:.5rem;min-width:100px}.teacher-details p a{color:#fff;text-decoration:underline}.teacher-details p a:hover{color:#f0f0f0;text-decoration:underline}.no-teachers-text{background:#fff;border:1px solid #e9ecef;border-radius:6px;color:#2c3e50;font-style:italic;padding:1rem;text-align:center}@media (max-width:768px){.edit-student-form .form-row,.edit-teacher-form .form-row{grid-template-columns:1fr}.popup-content{margin:1rem;max-height:95vh;max-width:95vw}.popup-header{padding:1rem 1.5rem}.edit-class-form,.edit-student-form,.edit-teacher-form{padding:1.5rem}}.loading-text,.no-classes-text{background:#fff;border:1px solid #e9ecef;border-radius:6px;color:#2c3e50;font-style:italic;padding:1rem;text-align:center}.classes-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:1rem}.class-checkbox-item{background:#fff;border:1px solid #e9ecef;border-radius:6px;padding:.75rem;transition:all .2s ease}.class-checkbox-item:hover{border-color:#ff8c42;box-shadow:0 2px 4px #3498db1a}.class-checkbox-label{align-items:center;color:#2c3e50;cursor:pointer;display:flex;font-weight:500;gap:.5rem;margin:0}.class-checkbox-label input[type=checkbox]{accent-color:#ff8c42;cursor:pointer;height:18px;width:18px}.class-checkbox-text{flex:1 1;font-size:.9rem}.form-actions{margin-top:2rem;padding-top:1.5rem}.cancel-btn,.submit-btn{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;min-width:120px;padding:.75rem 1.5rem;transition:all .2s ease}.cancel-btn{background-color:#fff;color:#fff}.cancel-btn:hover{background-color:#5a6268}.submit-btn{background:linear-gradient(135deg,#ff8c42,#e67a35);color:#fff}.submit-btn:hover{box-shadow:0 4px 12px #3498db4d;transform:translateY(-1px)}.submit-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.sidebar{width:200px}.main-content{margin-left:0;overflow-x:hidden}.content-header,.main-content{box-sizing:border-box;max-width:100%;width:100%}.content-header{padding:1rem 1.5rem}.content-header h1{font-size:1.5rem}.content-body{box-sizing:border-box;max-width:100%;overflow-x:hidden;padding:1.5rem;width:100%}.welcome-card{padding:2rem}.welcome-section h1{font-size:2rem}.school-stats{gap:1rem;grid-template-columns:1fr}.dashboard-content{box-sizing:border-box;margin:0!important;max-width:100%!important;overflow-x:hidden;padding:0!important;width:100%!important}.add-class-section{margin:0;padding:0}.add-class-card,.add-class-section{box-sizing:border-box;max-width:100%;overflow-x:hidden;width:100%}.add-class-card{margin:0 auto;padding:20px}.add-class-form,.form-section{box-sizing:border-box;max-width:100%;overflow-x:hidden;width:100%}.form-section{margin-bottom:1.5rem}.form-row{box-sizing:border-box;gap:1rem;max-width:100%;width:100%}.form-row,.form-row.three-columns{grid-template-columns:1fr!important}.form-actions,.form-group,.form-group input,.form-group select,.form-group textarea{box-sizing:border-box;max-width:100%;width:100%}.form-actions{flex-direction:column;gap:1rem}.cancel-btn,.submit-btn{box-sizing:border-box;max-width:100%;width:100%}}@media (max-width:480px){.sidebar{height:auto;position:relative;width:100%}.main-content{box-sizing:border-box;margin-left:0;max-width:100%;width:100%}.content-header{flex-direction:column;gap:1rem;text-align:center}.welcome-card{padding:1.5rem}.welcome-section h1{font-size:1.8rem}.school-dashboard,body,html{max-width:100%!important;overflow-x:hidden!important;width:100%!important}.add-class-section{box-sizing:border-box;margin:0!important;max-width:100%!important;overflow-x:hidden;padding:0!important;width:100%!important}.add-class-section h1{font-size:1.5rem;margin-bottom:1rem;padding:1rem 1rem 0}.add-class-card{border-radius:8px!important;box-sizing:border-box;margin:0 auto!important;max-width:100%!important;padding:15px!important;width:100%!important}.form-section{margin-bottom:1.5rem;padding:0}.form-section h3{font-size:1.1rem;margin-bottom:.75rem}.form-row{gap:1rem;margin-bottom:1rem}.form-row,.form-row.three-columns{grid-template-columns:1fr!important}.form-group{box-sizing:border-box;width:100%}.form-group input,.form-group select,.form-group textarea{box-sizing:border-box;font-size:1rem;padding:.875rem;width:100%}.form-actions{flex-direction:column;gap:1rem;margin-top:1.5rem}.cancel-btn,.submit-btn{font-size:1rem;padding:1rem;width:100%}.main-content{margin-left:0!important;max-width:100%!important;overflow-x:hidden;padding:0!important;width:100%!important}.content-header{padding:1rem!important}.content-body,.content-header{box-sizing:border-box;margin:0!important;max-width:100%!important;width:100%!important}.content-body,.dashboard-content{padding:0!important}.dashboard-content{box-sizing:border-box;margin:0!important;max-width:100%!important;width:100%!important}button[type=button]{box-sizing:border-box;font-size:.9rem;padding:.75rem 1rem;width:100%}.form-group textarea{min-height:100px;resize:vertical}.subject-item,.subject-teacher-item,.subjects-list{box-sizing:border-box;max-width:100%;overflow-x:hidden;padding:1rem!important;width:100%}.subject-item,.subject-teacher-item{align-items:stretch!important;flex-direction:column!important;gap:1rem!important}.subject-item input{box-sizing:border-box!important;flex:none!important;font-size:1rem!important;max-width:100%!important;min-width:0!important;padding:.875rem 1rem!important;width:100%!important}.remove-subject-btn,.section-input-group,.section-input-group select,.subject-input-group,.subject-input-group input,.teacher-input-group,.teacher-input-group select{box-sizing:border-box;max-width:100%;width:100%}.remove-subject-btn{font-size:1rem!important;margin-top:.5rem;padding:.75rem 1rem!important}.subjects-header{align-items:stretch!important;box-sizing:border-box;flex-direction:column!important;gap:1rem!important;max-width:100%;overflow-x:visible!important;padding:1rem!important;width:100%}.subjects-header h4{font-size:1rem!important;margin:0;width:100%}.add-subject-btn{word-wrap:break-word!important;box-sizing:border-box;font-size:.95rem!important;margin-left:0!important;max-width:100%!important;padding:.75rem 1rem!important;white-space:normal!important;width:100%!important}.add-class-form,.form-section{box-sizing:border-box;max-width:100%;overflow-x:hidden;width:100%}.form-section{margin:0!important;padding:1rem!important}.form-section:has(.subjects-header){max-width:100%!important;overflow-x:visible!important;padding:1rem!important;width:100%!important}.document-upload-section{align-items:stretch!important;flex-direction:column!important;gap:1rem!important;overflow-x:hidden}.add-document-btn,.document-type-select,.document-upload-controls,.document-upload-section{box-sizing:border-box;max-width:100%!important;width:100%!important}.add-document-btn{flex-shrink:0}.document-item{gap:1rem!important;overflow-x:hidden}.document-info,.document-item{align-items:stretch!important;box-sizing:border-box;flex-direction:column!important;max-width:100%!important;width:100%!important}.document-info{gap:.75rem!important}.remove-document-btn{align-self:flex-end;flex-shrink:0!important;width:auto!important}.document-name{white-space:normal!important;word-break:break-word}.document-type-edit{min-width:auto!important}.add-student-card,.document-type-edit{box-sizing:border-box;max-width:100%!important;width:100%!important}.add-student-card{margin:0!important;padding:1rem!important}.add-student-form{box-sizing:border-box;max-width:100%!important;overflow-x:hidden;width:100%!important}}.timing-content{box-sizing:border-box;margin:0;max-width:none;padding:2rem;width:100%}.timing-class-info{background:#e8f4fd;border-left:3px solid #ff8c42;border-radius:8px;margin-bottom:1.5rem;padding:1rem;text-align:center}.timing-class-info p{color:#2c3e50;font-size:1rem;font-weight:500;margin:0}.radio-group{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.radio-label{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:8px;cursor:pointer;display:flex;gap:.75rem;padding:.75rem;transition:all .3s ease}.radio-label:hover{background:#fff;border-color:#ff8c42}.radio-label input[type=radio]{accent-color:#ff8c42;height:18px;margin:0;width:18px}.radio-label input[type=radio]:checked+.radio-text{color:#2c3e50;font-weight:600}.radio-label:has(input[type=radio]:checked){background:#e8f4fd;border-color:#ff8c42}.radio-text{color:#2c3e50;font-size:1rem;transition:all .3s ease}.checkbox-group{grid-gap:.75rem;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:.5rem;max-height:200px;overflow-y:auto;padding:.5rem}.checkbox-label{border:1px solid #0000;border-radius:6px;padding:.5rem;transition:all .3s ease}.checkbox-label:hover{background:#e8f4fd;border-color:#ff8c42}.checkbox-label input[type=checkbox]{accent-color:#ff8c42;height:16px;width:16px}.checkbox-label input[type=checkbox]:checked+.checkbox-text{color:#2c3e50;font-weight:600}.checkbox-label:has(input[type=checkbox]:checked){background:#e8f4fd;border-color:#ff8c42}.checkbox-text{color:#2c3e50;font-size:.95rem;transition:all .3s ease}.selection-summary{background:#fff;border-left:3px solid #27ae60;border-radius:8px;margin-top:1rem;padding:1rem}.selection-summary p{color:#2c3e50;font-size:.95rem;margin:.25rem 0}.selection-summary p:first-child{font-weight:600;margin-bottom:.5rem}@media (max-width:768px){.radio-group{gap:.5rem}.radio-label{padding:.5rem}.radio-text{font-size:.9rem}.checkbox-group{grid-template-columns:1fr;max-height:150px}.checkbox-label{padding:.4rem}.checkbox-text{font-size:.9rem}}.timing-header{margin-bottom:2rem}.timing-header h1{color:#2c3e50;font-size:2rem;margin-bottom:.5rem}.timing-header p{color:#2c3e50;font-size:1.1rem}.saved-timings-section{margin-bottom:2rem}.saved-timings-card{align-items:center;background:#fff;border-left:4px solid #27ae60;border-radius:12px;box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;padding:2rem;text-align:center}.saved-timings-card h2{color:#27ae60;font-size:1.5rem;margin-bottom:1.5rem}.saved-timings-content{align-items:flex-start;display:flex;gap:2rem;justify-content:space-between}.timing-display{align-items:center;display:flex;flex:1 1;flex-direction:column;max-width:800px;width:100%}.timing-info{margin-bottom:1.5rem;max-width:300px;text-align:center}.timing-info h3{color:#2c3e50;font-size:1.1rem;margin-bottom:.5rem}.timing-info p{color:#2c3e50;margin:.25rem 0}.working-days-list{justify-content:center}.working-day-tag{font-size:.9rem}.breaks-list{align-items:center}.break-item{border-left:3px solid #ff8c42;border-radius:8px}.break-name{font-weight:600}.timing-actions{align-items:center;border-top:2px solid #e0e0e0;display:flex;flex-direction:column;gap:1rem;margin-top:2rem;padding-top:1.5rem;width:100%}.timing-actions .edit-btn{background:#f39c12;border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin:0 auto;max-width:300px;padding:1rem 2rem;transition:all .3s ease;width:100%}.timing-actions .edit-btn:hover{background:#e67e22;box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.add-timing-section{margin-bottom:2rem}.add-timing-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:2rem}.add-timing-card h2{color:#2c3e50;font-size:1.5rem;margin-bottom:1.5rem}.add-timing-form{display:flex;flex-direction:column;gap:2rem}.form-section{background:#fff;border:1px solid #e9ecef;border-radius:8px;min-height:auto;overflow:visible;padding:1.5rem}.form-section h3{border-bottom:2px solid #ff8c42;font-size:1.2rem;font-weight:600;padding-bottom:.5rem;text-align:center}.form-help,.form-section h3{color:#2c3e50;margin-bottom:1rem}.form-help{font-size:.9rem;font-style:italic}.working-days-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:1rem}.working-day-checkbox-label,.working-day-item{align-items:center;display:flex}.working-day-checkbox-label{border-radius:8px;cursor:pointer;padding:.75rem;transition:background-color .3s ease;width:100%}.working-day-checkbox-label:hover{background:#fff}.working-day-checkbox-label input[type=checkbox]{margin-right:.75rem;transform:scale(1.2)}.working-day-text{color:#2c3e50;font-weight:500}.breaks-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.add-break-btn{background:#ff8b3d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background-color .3s ease}.add-break-btn:hover{background:#ff7524}.breaks-list .break-item{grid-gap:1rem;align-items:end;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:grid;gap:1rem;grid-template-columns:2fr 1fr 1fr 1fr auto;padding:1rem}.break-input-group{display:flex;flex-direction:column}.break-input-group label{color:#2c3e50;font-size:.9rem;font-weight:600;margin-bottom:.25rem}.break-input-group input{border:1px solid #e9ecef;border-radius:4px;font-size:.9rem;padding:.5rem}.remove-break-btn{align-items:center;background:#e74c3c;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:30px;justify-content:center;transition:background-color .3s ease;width:30px}.remove-break-btn:hover{background:#c0392b}.day-specific-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-top:1rem}.day-specific-item{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:1rem}.day-specific-header{margin-bottom:1rem}.day-specific-checkbox-label{align-items:center;cursor:pointer;display:flex}.day-specific-checkbox-label input[type=checkbox]{margin-right:.75rem;transform:scale(1.2)}.day-specific-text{color:#2c3e50;font-weight:500}.day-specific-content{border:1px solid #e9ecef;padding-top:1rem}.day-custom-section{background:#fff;border:1px solid #e9ecef;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.day-custom-section h4{border-bottom:2px solid #ff8c42;color:#2c3e50;font-size:1.1rem;margin-bottom:1rem;padding-bottom:.5rem}.day-breaks-section{border:1px solid #e9ecef;margin-top:1.5rem;padding-top:1.5rem}.day-breaks-section h5{color:#2c3e50;font-size:1rem;margin-bottom:1rem}.day-breaks-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.add-day-break-btn{background:#ff8b3d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background-color .3s ease}.add-day-break-btn:hover{background:#ff7524}.day-break-item,.day-breaks-list{display:flex;flex-direction:column;gap:1rem}.day-break-item{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:1rem;position:relative}.remove-day-break-btn{align-items:center;background:#e74c3c;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:30px;justify-content:center;position:absolute;right:10px;top:10px;transition:background-color .3s ease;width:30px}.remove-day-break-btn:hover{background:#c0392b}.no-day-breaks-text{background:#fff;border:1px solid #e9ecef;border-radius:8px;color:#2c3e50;font-style:italic;padding:2rem;text-align:center}.day-break-input-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.day-break-input-row .break-input-group{display:flex;flex-direction:column}.day-break-input-row .break-input-group label{color:#2c3e50;font-size:.9rem;font-weight:600;margin-bottom:.25rem}.day-break-input-row .break-input-group input{border:1px solid #e9ecef;border-radius:4px;font-size:.9rem;padding:.5rem}.day-specific-summary{align-items:center;margin-top:1rem}.day-summary-item{border-left:3px solid #ff8c42;border-radius:8px;max-width:400px;text-align:center;width:100%}.day-summary-item h4{margin-bottom:.5rem}.summary-section{margin-bottom:.75rem}.summary-section strong{color:#2c3e50;font-size:.9rem}.summary-list{justify-content:center;margin-top:.25rem}.summary-tag{background:#ff8c42;border-radius:12px;color:#fff;font-weight:500}.edit-btn{background:#f39c12;border:none;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:background-color .3s ease}.edit-btn:hover{background:#e67e22}@media (max-width:1024px){.timing-content{padding:1.5rem}.timing-content>div[style*="grid-template-columns: 40% 60%"]{gap:24px!important;grid-template-columns:40% 60%!important}}@media (max-width:768px){.timing-content{padding:1rem}.timing-content>div[style*="grid-template-columns: 40% 60%"]{gap:20px!important;grid-template-columns:1fr!important}.timing-content>div[style*="background: #FFFFFF"][style*="borderRadius: 12px"]:first-of-type{padding:20px 16px!important}.timing-content>div[style*="background: #FFFFFF"][style*="borderRadius: 12px"]:first-of-type h1{font-size:24px!important}.timing-content>div[style*="background: #FFFFFF"][style*="borderRadius: 12px"]:first-of-type p{font-size:14px!important}.timing-content>div[style*="grid-template-columns: repeat(auto-fill, minmax(250px, 1fr))"]{grid-template-columns:1fr!important}.saved-timings-content{flex-direction:column;gap:1rem}.breaks-list .break-item{gap:.5rem;grid-template-columns:1fr}.working-days-grid{grid-template-columns:repeat(2,1fr)}.day-specific-grid{grid-template-columns:1fr}.day-custom-section{padding:1rem}.day-break-input-row{gap:.5rem;grid-template-columns:1fr}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.nexy-timing-page{background:#f9fafb;min-height:100vh;padding:32px}.nexy-page-title{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:32px;padding:40px;text-align:center}.nexy-page-title h1{color:#1f2937;font-size:32px;font-weight:700;margin:0 0 12px}.nexy-page-title p{color:#6b7280;font-size:16px;margin:0}.nexy-success-message{align-items:center;animation:slideInDown .3s ease-out;background:#d1fae5;border:1px solid #10b981;border-radius:8px;box-shadow:0 1px 3px #10b9811a;color:#065f46;display:flex;font-weight:600;gap:12px;margin-bottom:32px;padding:16px 20px}.nexy-success-icon{align-items:center;background:#fff;border-radius:50%;display:flex;flex-shrink:0;height:20px;justify-content:center;padding:4px;width:20px}.nexy-success-icon span{color:#10b981;font-size:14px}.nexy-timing-layout{grid-gap:32px;align-items:start;display:grid;gap:32px;grid-template-columns:40% 60%;width:100%}.nexy-school-hours-card{background:#fff;border-left:4px solid #ff8b3d;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:32px 28px}.nexy-section-block{margin-bottom:32px}.nexy-section-block h3{color:#1f2937;font-size:18px;font-weight:700;margin:0 0 20px}.nexy-timing-details{border-top:2px solid #f3f4f6;margin-top:32px;padding-top:32px}.nexy-info-row{border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:12px 0}.nexy-info-row.nexy-last-row{border-bottom:none}.nexy-label{color:#6b7280;font-size:14px;font-weight:600}.nexy-value{color:#1f2937;font-size:16px;font-weight:700}.nexy-right-column{display:flex;flex-direction:column;min-width:0;width:100%}.nexy-edit-btn{align-items:center;background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;margin-bottom:32px;padding:16px 24px;transition:all .2s ease;width:100%}.nexy-edit-btn:hover{background:#ff7524;box-shadow:0 4px 12px #ff8b3d4d;transform:translateY(-2px)}.nexy-working-days-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:32px;padding:28px 24px}.nexy-working-days-card h3{color:#1f2937;font-size:18px;font-weight:700;margin:0 0 20px}.nexy-day-badges{display:flex;flex-wrap:wrap;gap:12px}.nexy-day-badge{background:#ff8b3d;border-radius:20px;box-shadow:0 2px 4px #ff8b3d33;color:#fff;display:inline-block;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.nexy-day-badge:hover{box-shadow:0 4px 8px #ff8b3d4d;transform:translateY(-2px)}.nexy-day-specific-section{margin-top:0;width:100%}.nexy-no-custom-timings{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;color:#6b7280;font-size:14px;padding:24px 20px;text-align:center}.nexy-day-specific-section h3{color:#1f2937;font-size:18px;font-weight:700;margin:0 0 20px}.nexy-day-cards-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.nexy-day-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;border-top:4px solid;box-shadow:0 1px 3px #0000001a;padding:24px 20px}.nexy-day-card h4{color:#1f2937;font-size:16px;font-weight:700;letter-spacing:.05em;margin:0 0 16px;text-align:center;text-transform:uppercase}.nexy-day-card-content{display:flex;flex-direction:column;gap:12px}.nexy-day-info-row{border-bottom:1px solid #f3f4f6;display:flex;font-size:13px;justify-content:space-between;padding-bottom:8px}.nexy-day-info-row.nexy-day-last-row{border-bottom:none}.nexy-day-label{color:#6b7280;font-weight:600}.nexy-day-value{color:#1f2937;font-weight:700}.nexy-notification{align-items:center;animation:slideInRight .3s ease-out;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;font-weight:600;gap:12px;max-width:400px;padding:16px 20px;position:fixed;right:20px;top:20px;z-index:1000}.nexy-notification.success{background:#d1fae5;border:1px solid #10b981;box-shadow:0 1px 3px #10b9811a;color:#065f46}.nexy-notification.error{background:#fee2e2;border:1px solid #ef4444;box-shadow:0 1px 3px #ef44441a;color:#991b1b}.nexy-notification-icon{align-items:center;background:#fff;border-radius:50%;display:flex;flex-shrink:0;height:20px;justify-content:center;padding:4px;width:20px}.nexy-notification-icon.success{color:#10b981;font-size:14px}.nexy-notification-icon.error{color:#ef4444;font-size:14px}@media (max-width:1024px){.nexy-timing-layout{gap:24px}.nexy-page-title{padding:32px 24px}}@media (max-width:768px){.nexy-timing-page{padding:20px 16px}.nexy-timing-layout{gap:20px;grid-template-columns:1fr}.nexy-page-title{padding:20px 16px}.nexy-page-title h1{font-size:24px}.nexy-page-title p{font-size:14px}.nexy-day-cards-grid{grid-template-columns:1fr}.nexy-school-hours-card{padding:24px 20px}.nexy-working-days-card{padding:20px 16px}}.timing-list-section,.timing-management-section{margin-bottom:2rem}.timing-list-header{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:1rem}.timing-list-header h2{color:#2c3e50;font-size:1.5rem;margin:0}.add-new-timing-btn{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .3s ease}.add-new-timing-btn:hover{background:#218838}.timing-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.timing-list-item{background:#fff;border:1px solid #e9ecef;border-radius:8px;cursor:pointer;padding:1.5rem;position:relative;transition:all .3s ease}.timing-list-item:hover{border-color:#ff8c42;box-shadow:0 4px 12px #3498db26}.timing-list-item.active{background:#f8f9ff;border-color:#ff8c42;box-shadow:0 4px 12px #3498db33}.timing-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.timing-item-header h3{color:#2c3e50;font-size:1.1rem;margin:0}.timing-item-date{background:#fff;border-radius:4px;color:#2c3e50;font-size:.8rem;padding:.25rem .5rem}.timing-item-details{margin-bottom:1rem}.timing-item-details p{color:#2c3e50;font-size:.9rem;margin:.5rem 0}.timing-item-details strong{color:#2c3e50}.timing-item-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.view-details-btn{background:#ff8c42;border-radius:4px;font-size:.8rem;padding:.5rem 1rem;transition:background-color .3s ease}.view-details-btn:hover{background:#e67a35}.edit-timing-btn{background:#f39c12;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:.5rem 1rem;transition:background-color .3s ease}.edit-timing-btn:hover{background:#e67e22}.delete-timing-btn{background:#e74c3c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:.5rem 1rem;transition:background-color .3s ease}.delete-timing-btn:hover{background:#c0392b}.no-timings-section{margin-bottom:2rem}.no-timings-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:3rem 2rem;text-align:center}.no-timings-card h2{color:#2c3e50;font-size:1.5rem;margin:0 0 1rem}.no-timings-card p{color:#2c3e50;font-size:1rem;line-height:1.5;margin:0 0 2rem}.create-first-timing-btn{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:1rem 2rem;transition:background-color .3s ease}.create-first-timing-btn:hover{background:#218838}@media (max-width:768px){.timing-list{grid-template-columns:1fr}.timing-list-header{flex-direction:column;gap:1rem;text-align:center}.timing-item-header{align-items:flex-start;flex-direction:column;gap:.5rem}.timing-item-actions{flex-wrap:wrap;justify-content:center}.delete-timing-btn,.edit-timing-btn,.view-details-btn{flex:1 1;font-size:.75rem;min-width:80px;padding:.4rem .8rem}}.popup-overlay{z-index:10000}.popup-content{border-radius:12px;box-shadow:0 20px 40px #0000004d;display:flex;flex-direction:column}.popup-header{border-radius:12px 12px 0 0;padding:1.5rem}.popup-header h2{color:#2c3e50;font-size:1.5rem;margin:0}.popup-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#2c3e50;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;padding:.5rem;transition:all .3s ease;width:40px}.popup-close-btn:hover{background:#fff;color:#2c3e50}.popup-body{flex:1 1;overflow-y:auto;padding:1.5rem}.timing-details-section{display:flex;flex-direction:column;gap:1.5rem}.timing-detail-item{background:#fff;border-left:4px solid #ff8c42;border-radius:8px;padding:1.5rem}.timing-detail-item h3{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.timing-detail-item p{color:#2c3e50;line-height:1.5;margin:.5rem 0}.timing-detail-item strong{color:#2c3e50;font-weight:600}.working-days-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.working-day-tag{background:#ff8c42;border-radius:20px;color:#fff;font-size:.8rem;font-weight:500;padding:.25rem .75rem}.breaks-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.break-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:6px;display:flex;justify-content:space-between;padding:.75rem}.break-name{color:#2c3e50;font-weight:500}.break-time{color:#2c3e50;font-size:.9rem}.break-duration{background:#fff;border-radius:4px;color:#2c3e50;font-size:.8rem;padding:.25rem .5rem}.day-specific-summary{display:flex;flex-direction:column;gap:1rem;margin-top:.5rem}.day-summary-item{background:#fff;border:1px solid #e9ecef;border-radius:6px;padding:1rem}.day-summary-item h4{color:#2c3e50;font-size:1rem;font-weight:600;margin:0 0 .5rem}.summary-section p{font-size:.9rem;margin:.25rem 0}.summary-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.summary-tag{background:#fff;border-radius:4px;color:#2c3e50;font-size:.8rem;padding:.25rem .5rem}.popup-footer{background:#fff;border:1px solid #e9ecef;border-radius:0 0 12px 12px;display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem}.popup-edit-btn{background:#f39c12;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .3s ease}.popup-edit-btn:hover{background:#e67e22}.popup-close-footer-btn{background:#fff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .3s ease}.popup-close-footer-btn:hover{background:#5a6268}@media (max-width:768px){.popup-overlay{padding:.5rem}.popup-content{max-height:95vh}.popup-header{padding:1rem}.popup-header h2{font-size:1.2rem}.popup-body,.timing-detail-item{padding:1rem}.popup-footer{flex-direction:column;padding:1rem}.popup-close-footer-btn,.popup-edit-btn{width:100%}}.schedule-content{margin:0 auto;max-width:1400px;overflow-x:visible;padding:2rem;width:100%}.schedule-header h1{color:#2c3e50;margin-bottom:.5rem}.selection-section{margin-bottom:2rem}.selection-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:2rem}.selection-card h2{font-size:1.3rem;margin:0 0 1.5rem}.selection-row{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.form-select{border-radius:8px;width:100%}.selected-info{background:#e8f5e8;border-left:4px solid #28a745;border-radius:8px;padding:1rem}.selected-info p{color:#155724;font-weight:500;margin:0}.holiday-debug-info{background:#fff;border:1px solid #dee2e6;border-radius:8px;margin-top:1rem;padding:1rem}.holiday-debug-info p{color:#2c3e50;font-size:.9rem;margin:.5rem 0}.holiday-status-list{display:flex;flex-wrap:wrap;gap:.5rem;margin:.5rem 0}.holiday-status-item{border-radius:4px;font-size:.8rem;font-weight:500;padding:.25rem .5rem}.holiday-status-item.holiday{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.holiday-status-item.working{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.schedule-grid-section{margin-bottom:2rem;overflow-x:visible;width:100%}.schedule-grid-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;max-width:100%;overflow:visible;padding:2rem;width:100%}.schedule-grid-header{align-items:flex-start;border:1px solid #e9ecef;display:flex;gap:20px;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.schedule-header-left{display:flex;flex:1 1;flex-direction:column;gap:16px}.schedule-grid-header h2{color:#2c3e50;font-size:1.3rem;margin:0}.semester-selection-container{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.semester-label{color:#374151;font-size:14px;font-weight:600}.semester-select{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#1f2937;cursor:pointer;font-size:14px;min-width:150px;padding:8px 16px;transition:all .2s ease}.semester-select:hover{border-color:#ff8b3d}.semester-select:focus{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.add-semester-btn{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.add-semester-btn:hover{background:#ff7a2e;box-shadow:0 2px 8px #ff8b3d4d;transform:translateY(-1px)}.semester-name-display{color:#6b7280;font-size:13px;font-style:italic;margin:0}.modal-overlay{padding:1rem}.modal-content{box-shadow:0 20px 25px -5px #0000004d}.modal-header{background:#f9fafb}.modal-header h3{color:#1f2937}.modal-close{background:#0000;border-radius:6px;color:#6b7280;font-size:24px}.modal-close:hover{background:#e5e7eb;color:#374151}.modal-body .form-group{margin-bottom:0}.modal-body label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.modal-body .form-input{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:14px;padding:10px 14px;transition:all .2s ease;width:100%}.modal-body .form-input:focus{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.modal-footer{background:#f9fafb;gap:12px}.btn-secondary{background:#f3f4f6;border:1px solid #d1d5db;color:#374151;font-size:14px;padding:10px 20px}.btn-secondary:hover{background:#e5e7eb}.btn-primary{background:#ff8b3d;font-size:14px;padding:10px 20px}.btn-primary:hover{background:#ff7a2e;box-shadow:0 2px 8px #ff8b3d4d;transform:translateY(-1px)}.save-schedule-btn{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;min-width:fit-content;padding:.75rem 1.5rem;transition:background-color .3s ease;white-space:nowrap;width:auto}.save-schedule-btn:hover:not(:disabled){background:#ff7524}.save-schedule-btn:disabled{background:#fff;cursor:not-allowed}.schedule-grid{border:1px solid #e9ecef;border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.schedule-cell{word-wrap:break-word;align-items:stretch;border:1px solid #e9ecef;gap:.5rem;height:auto;justify-content:flex-start;overflow:hidden;padding:.75rem;position:relative}.schedule-cell:last-child{border-right:none}.header-cell{background:#ff8c42;color:#fff;text-align:center}.schedule-assignment{word-wrap:break-word;align-items:flex-start;box-sizing:border-box;display:flex;flex-direction:column;gap:.5rem;max-width:100%;min-width:0;overflow:visible;overflow-wrap:break-word;text-align:left;width:100%}.period-label,.schedule-table-row .period-cell,.schedule-table-row .period-cell *{color:#fff!important}.teacher-display .teacher-label{color:#fff;font-size:.65rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.teacher-display .teacher-name{word-wrap:break-word;background:none!important;border:none!important;border-radius:0!important;box-sizing:border-box;color:#fff;display:block;font-size:.6rem;font-weight:600;-webkit-hyphens:auto;hyphens:auto;line-height:1.5;max-width:100%;min-width:0;overflow:visible;overflow-wrap:break-word;padding:0!important;text-align:left;white-space:normal;width:100%;word-break:break-word}.empty-slot{padding:1rem}.empty-text{color:#adb5bd;font-size:.85rem}.schedule-select{background:#fff;border:1px solid #e9ecef;border-radius:4px;box-sizing:border-box;font-size:.75rem;min-width:0;overflow:hidden;padding:.5rem;text-overflow:ellipsis;transition:border-color .3s ease;width:100%}.schedule-select:focus{border-color:#ff8c42;outline:none}.assigned-teacher{word-wrap:break-word;align-items:flex-start;background:#fff4ed;border-left:3px solid #ff8c42;border-radius:4px;box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:1;font-size:.7rem;gap:.2rem;max-width:100%;min-height:auto;min-width:0;overflow:visible;overflow-wrap:break-word;padding:.35rem .45rem;text-align:left;width:100%}.assigned-teacher .teacher-label{color:#e67a35;font-size:.65rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.assigned-teacher .teacher-name{word-wrap:break-word;box-sizing:border-box;color:#e67a35;display:block;font-size:.6rem;font-weight:600;-webkit-hyphens:auto;hyphens:auto;line-height:1.5;max-width:100%;min-width:0;overflow:visible;overflow-wrap:break-word;text-align:left;white-space:normal;width:100%;word-break:break-word}.teacher-label{color:#e67a35;font-weight:500;margin-right:.5rem}.teacher-name{color:#e67a35}.schedule-view-container{display:flex;flex-direction:column;gap:2rem;margin-top:2rem}.schedules-list-section{background:#fff}.schedule-details-section,.schedules-list-section{border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:2rem}.section-header h2{color:#2c3e50;font-size:1.5rem;margin:0}.refresh-btn{background:#ff8c42;border-radius:4px;transition:background-color .3s ease}.refresh-btn:hover{background:#e67a35}.schedules-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.schedule-card{background:#fff;border:1px solid #e9ecef;border-radius:8px;cursor:pointer;padding:1rem;transition:all .3s ease}.schedule-card:hover{border-color:#ff8c42;box-shadow:0 4px 8px #3498db33;transform:translateY(-2px)}.schedule-card.selected{background:#e3f2fd;border-color:#ff8c42;box-shadow:0 4px 8px #3498db4d}.schedule-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.schedule-card-header h3{color:#2c3e50;font-size:1.2rem;margin:0}.section-badge{background:#ff8c42;border-radius:12px;color:#fff;font-size:.8rem;font-weight:500;padding:.25rem .5rem}.schedule-card-details{margin-bottom:1rem}.schedule-meta{display:flex;flex-direction:column;gap:.25rem}.meta-item{font-size:.85rem}.meta-item,.meta-item strong{color:#2c3e50}.schedule-card-actions{display:flex;justify-content:flex-end}.view-schedule-btn{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:.5rem 1rem;transition:background-color .3s ease}.view-schedule-btn:hover{background:#218838}.no-schedules-section{padding:3rem 1rem;text-align:center}.no-schedules-card{background:#fff;border:2px dashed #dee2e6;border-radius:8px;margin:0 auto;max-width:400px;padding:2rem}.no-schedules-icon{font-size:3rem;margin-bottom:1rem}.no-schedules-card h3{color:#2c3e50;margin-bottom:.5rem}.no-schedules-card p{color:#2c3e50;margin-bottom:1.5rem}.create-schedule-btn{background:#ff8c42;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:background-color .3s ease}.create-schedule-btn:hover{background:#e67a35}.schedule-details-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.schedule-info{align-items:center;display:flex;gap:1rem}.schedule-table-container{-webkit-overflow-scrolling:touch;display:block;margin-top:1rem;max-width:100%;overflow-y:visible;position:relative;scrollbar-color:#ff8b3d #f0f0f0;scrollbar-width:thin;width:100%}.schedule-table-container::-webkit-scrollbar{height:12px}.schedule-table-container::-webkit-scrollbar-track{background:#f0f0f0;border-radius:10px}.schedule-table-container::-webkit-scrollbar-thumb{background:#ff8b3d;border:2px solid #f0f0f0;border-radius:10px}.schedule-table-container::-webkit-scrollbar-thumb:hover{background:#e67a35}.schedule-table{border-collapse:initial;border-spacing:0;display:table;min-width:800px;table-layout:auto}.schedule-table tr{display:table-row}.schedule-table td,.schedule-table th{display:table-cell;vertical-align:top}.schedule-table-header,.schedule-table-row{display:contents}.schedule-cell{background:#fff;display:flex;flex-direction:column;justify-content:center;min-height:80px;padding:1rem}.period-header{font-weight:600;text-align:center}.day-header,.period-header{border-bottom:2px solid #dee2e6}.period-cell{background:#ff8b3d;font-weight:500;text-align:center}.period-cell,.period-cell *{color:#fff!important}.teacher-label{color:#fff;font-size:.65rem;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.no-schedule-data{color:#2c3e50;padding:3rem 1rem}.no-data-icon{font-size:3rem;margin-bottom:1rem}.no-schedule-data h3{color:#2c3e50;margin-bottom:.5rem}.no-schedule-data p{color:#2c3e50}@media (max-width:768px){.schedule-view-container{gap:1rem}.schedule-details-section,.schedules-list-section{padding:1rem}.schedules-grid{grid-template-columns:1fr}.schedule-table{min-width:600px}.schedule-cell{min-height:60px;padding:.5rem}.section-header{gap:1rem}.schedule-info,.section-header{align-items:flex-start;flex-direction:column}}.instructions-section{margin-top:2rem}.card-generation-container{display:flex;flex-direction:column;gap:2rem}.selection-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.selection-card{margin:0 auto;max-width:600px}.selection-card h2{color:#2c3e50;font-size:1.5rem;margin-bottom:1.5rem;text-align:center}.selection-form{display:flex;flex-direction:column;gap:1rem}.form-select{background:#fff;border:1px solid #e9ecef;border-radius:6px;font-size:1rem;padding:.75rem;transition:border-color .3s ease}.form-select:focus{border-color:#ff8c42;outline:none}.form-select:disabled{background:#fff;color:#2c3e50;cursor:not-allowed}.students-count{margin:1rem 0;text-align:center}.count-badge{background:#e3f2fd;border-radius:20px;color:#1976d2;font-size:.9rem;font-weight:500;padding:.5rem 1rem}.form-actions{text-align:center}.generate-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.generate-btn:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.generate-btn:disabled{background:#fff;box-shadow:none;cursor:not-allowed;transform:none}.show-all-btn{background:#17a2b8;border:none;border-radius:8px;box-shadow:0 4px 15px #17a2b84d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-left:1rem;padding:1rem 2rem;transition:all .3s ease}.show-all-btn:hover:not(:disabled){box-shadow:0 6px 20px #17a2b866;transform:translateY(-2px)}.show-all-btn:disabled{background:#fff;box-shadow:none;cursor:not-allowed;transform:none}.cards-display-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.cards-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.cards-header h2{color:#2c3e50;font-size:1.5rem;margin:0}.cards-info{align-items:center;display:flex;gap:1rem}.class-info{background:#e3f2fd;border-radius:20px;color:#1976d2;font-size:.9rem;font-weight:500;padding:.5rem 1rem}.print-btn{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .3s ease}.print-btn:hover{background:#218838}.cards-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:1rem}.modern-student-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#fff,#fff);border-radius:20px;box-shadow:0 20px 40px #0000001a,0 0 0 1px #ffffff0d;color:#2d3748;margin:0 auto;max-width:380px;overflow:hidden;padding:0;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);width:100%}.modern-student-card:before{background:linear-gradient(90deg,#667eea,#764ba2 50%,#f093fb);content:"";height:6px;left:0;position:absolute;right:0;top:0;z-index:1}.modern-student-card:hover{box-shadow:0 30px 60px #00000026,0 0 0 1px #ffffff1a;transform:translateY(-12px) scale(1.02)}.modern-card-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;gap:1rem;padding:1.5rem;position:relative;z-index:2}.school-logo-section{flex-shrink:0}.school-logo-circle{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:50%;display:flex;height:60px;justify-content:center;width:60px}.school-initials{color:#fff;font-size:1.2rem;font-weight:700;text-shadow:0 2px 4px #0000004d}.card-title-section{flex:1 1}.card-main-title{color:#fff;font-size:1.1rem;font-weight:700;letter-spacing:2px;margin:0 0 .25rem;text-shadow:0 2px 4px #0000004d}.card-subtitle{color:#ffffffe6;font-size:.85rem;font-weight:500;margin:0}.card-body{gap:1.5rem;margin-bottom:1.5rem;z-index:1}.card-body,.modern-card-body{display:flex;position:relative}.modern-card-body{align-items:center;flex-direction:column;gap:2rem;padding:2rem;z-index:2}.photo-section{display:flex;justify-content:center;width:100%}.photo-container{display:inline-block;position:relative}.student-photo{background:#f8fafc;border:5px solid #667eea;border-radius:50%;box-shadow:0 15px 35px #667eea4d;display:block;height:140px;object-fit:cover;position:relative;transition:all .3s ease;width:140px;z-index:2}.student-photo:hover{box-shadow:0 20px 45px #667eea66;transform:scale(1.05)}.student-photo[src*="ui-avatars.com"]{background:linear-gradient(135deg,#667eea,#764ba2)}.photo-border{animation:rotate 3s linear infinite;background:linear-gradient(45deg,#667eea,#764ba2,#f093fb);border-radius:50%;bottom:-8px;left:-8px;position:absolute;right:-8px;top:-8px;z-index:1}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.info-section{width:100%}.info-grid{display:flex;flex-direction:column}.info-item{background:#667eea0d;border-left:4px solid #667eea;border-radius:12px;padding:.75rem;transition:all .3s ease}.info-item:hover{background:#667eea1a;transform:translateX(4px)}.info-label{color:#667eea;font-size:.75rem;letter-spacing:1px}.info-value{color:#2d3748;font-size:.95rem;font-weight:600;line-height:1.3}.modern-card-footer{align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-top:1px solid #667eea1a;display:flex;justify-content:space-between;padding:1.25rem;position:relative;z-index:2}.footer-left{flex:1 1}.validity-text{color:#64748b;font-size:.8rem;font-weight:500}.footer-right{flex-shrink:0}.student-id-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 4px 15px #667eea4d;color:#fff;display:flex;gap:.5rem;padding:.5rem 1rem}.id-label{font-size:.75rem;font-weight:600;letter-spacing:1px}.id-number{font-size:1rem;font-weight:700}.card-decoration{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.decoration-circle{background:linear-gradient(45deg,#667eea1a,#764ba21a);border-radius:50%;position:absolute}.circle-1{animation:float 6s ease-in-out infinite;height:80px;right:-20px;top:20%;width:80px}.circle-2{animation:float 8s ease-in-out infinite reverse;bottom:30%;height:60px;left:-15px;width:60px}.decoration-line{background:linear-gradient(180deg,#0000,#667eea4d,#0000);height:100px;position:absolute;right:0;top:50%;transform:translateY(-50%);width:2px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.photo-img-vertical{border:3px solid #ffffff4d;border-radius:12px;box-shadow:0 6px 20px #0000004d;height:140px;object-fit:cover;width:120px}.student-details{flex:1 1}.student-details,.student-details-vertical{display:flex;flex-direction:column;gap:.75rem}.student-details-vertical{text-align:center;width:100%}.detail-row,.detail-row-vertical{display:flex;flex-direction:column;gap:.25rem}.detail-row-vertical{align-items:center}.detail-label{font-size:.8rem;font-weight:500;opacity:.9}.detail-label-vertical{font-size:.75rem;font-weight:500;letter-spacing:.5px;margin-bottom:.25rem;opacity:.9;text-transform:uppercase}.detail-value{color:#fff;font-size:.95rem}.detail-value-vertical{color:#fff;font-size:.9rem;font-weight:600;text-align:center}.card-footer{align-items:center;border-top:1px solid #fff3;display:flex;justify-content:space-between;padding-top:1rem;position:relative;z-index:1}.school-name{font-size:.85rem;font-weight:500;opacity:.9}.card-id{font-size:.8rem;font-weight:500;opacity:.8}.card-actions{display:flex;justify-content:center;margin-top:1rem;position:relative;z-index:1}.download-btn{background:#28a745;border:none;border-radius:6px;box-shadow:0 2px 8px #28a7454d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .3s ease}.download-btn:hover{background:#218838;box-shadow:0 4px 12px #28a74566;transform:translateY(-1px)}.no-students-section{padding:3rem 1rem;text-align:center}.no-students-card{background:#fff;border:2px dashed #dee2e6;border-radius:8px;margin:0 auto;max-width:400px;padding:2rem}.no-students-card h3{color:#2c3e50;margin-bottom:.5rem}.no-students-card p{color:#2c3e50}.debug-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:1rem;padding:1.5rem}.debug-card{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;padding:1rem}.debug-card h3{color:#856404;font-size:1.2rem;margin-bottom:1rem}.debug-info{color:#856404}.debug-info p{font-size:.9rem;margin-bottom:.5rem}.debug-students{border-top:1px solid #ffeaa7;margin-top:1rem;padding-top:1rem}.debug-students h4{color:#856404;font-size:1rem;margin-bottom:.5rem}.debug-student{background:#ffffff80;border-radius:4px;font-size:.85rem;margin-bottom:.5rem;padding:.75rem}.debug-student p{margin-bottom:.25rem}.debug-filtered{border-top:1px solid #ffeaa7;margin-top:1rem;padding-top:1rem}.debug-filtered h4{color:#856404;font-size:1rem;margin-bottom:.5rem}@media print{.school-dashboard{background:#fff}.sidebar{display:none}.main-content{margin-left:0;padding:0}.cards-header,.content-header,.selection-section{display:none}.cards-grid{gap:1rem;grid-template-columns:repeat(2,1fr);page-break-inside:avoid}.student-card{border:1px solid #e9ecef;box-shadow:none;margin-bottom:1rem;page-break-inside:avoid}.student-card:hover{transform:none}.card-actions{display:none}.curriculum-section>div[style*="background: #F9FAFB"],.no-print{display:none!important}.form-group:has(select[value*=selectedYear]){display:none!important}.curriculum-section h2{margin-bottom:1.5rem;page-break-after:avoid;text-align:center}.curriculum-section h3{border-bottom:2px solid #e5e7eb;margin-top:1.5rem;padding-bottom:.5rem;page-break-after:avoid}.grade-card{background:#fff;border:1px solid #e5e7eb;margin-bottom:1rem;padding:1rem;page-break-inside:avoid}.form-group{margin-bottom:.75rem}.form-group label{color:#374151;display:block;font-weight:700;margin-bottom:.25rem}.form-group input[type=date],.form-group input[type=number],.form-group input[type=text],.form-group input[type=time],.form-group select,.form-group textarea{background:#0000;border:none;color:#1f2937;display:block;font-size:14px;padding:0;width:100%}.form-group input[type=date]:empty:before{color:#9ca3af;content:"Not set"}.form-group textarea{white-space:pre-wrap}.form-group button[type=button]{display:none}.grade-card h5{color:#1f2937;font-size:16px;margin-bottom:.75rem}}@media (max-width:768px){.card-generation-container{gap:1rem}.cards-display-section,.selection-section{padding:1rem}.cards-grid{gap:1rem;grid-template-columns:1fr}.cards-header{gap:1rem}.cards-header,.cards-info{align-items:flex-start;flex-direction:column}.card-body{flex-direction:column;gap:1rem}.card-body-vertical{gap:.75rem}.student-photo{align-self:center}.student-photo-vertical{margin-bottom:.5rem}.photo-img{height:100px;width:80px}.photo-img-vertical{height:120px;width:100px}}.instructions-card{background:#fff;border-left:4px solid #17a2b8;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:2rem}.instructions-card h2{color:#2c3e50;font-size:1.3rem;margin:0 0 1rem}.instructions-card ol{margin:1rem 0;padding-left:1.5rem}.instructions-card li{color:#2c3e50;line-height:1.5;margin:.5rem 0}.instructions-card p{color:#2c3e50;font-style:italic;margin:1rem 0 0}@media (max-width:1200px){.schedule-table-container{-webkit-overflow-scrolling:touch;font-size:.9rem;overflow-x:auto}.schedule-table-row td{min-height:70px;padding:.75rem}.schedule-select{font-size:.8rem;padding:.4rem}.schedule-table-header th{font-size:.85rem;padding:.75rem}}@media (max-width:768px){.schedule-content{padding:1rem}.selection-row{flex-direction:column;gap:1rem}.schedule-table-container{-webkit-overflow-scrolling:touch;font-size:.8rem;overflow-x:auto}.schedule-table-row td{min-height:60px;padding:.5rem}.schedule-table-header th{font-size:.75rem;padding:.5rem}.schedule-assignment{gap:.25rem}.period-label,.schedule-select{font-size:.75rem;padding:.3rem}.schedule-grid-header{flex-direction:column;gap:1rem;text-align:center}}.academic-schedule-container{display:flex;flex-direction:column;gap:2rem;padding:1.5rem}.academic-year-section,.events-section{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;overflow:hidden}.section-card{padding:2rem}.section-card h2{margin-bottom:1.5rem}.academic-year-form{gap:1.5rem}.form-row{grid-gap:1rem;gap:1rem}.form-row:has(.form-group:only-child){grid-template-columns:1fr}.form-group{gap:.5rem}.form-input,.form-select,.form-textarea{padding:.75rem}.form-input-disabled,.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background-color:#f3f4f6;border-color:#d1d5db;color:#6b7280;cursor:not-allowed}.form-input-disabled:focus,.form-input:disabled:focus,.form-select:disabled:focus,.form-textarea:disabled:focus{border-color:#d1d5db;box-shadow:none}.add-event-form{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.add-event-form h3{color:#2c3e50;font-size:1.2rem;margin-bottom:1rem}.form-actions{gap:1rem;margin-top:1rem}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);transition:transform .2s ease,box-shadow .2s ease}.btn-primary:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.btn-secondary{padding:.75rem 1.5rem}.events-list{margin-top:1.5rem}.no-events{color:#2c3e50;padding:3rem 2rem;text-align:center}.no-events-icon{font-size:3rem;margin-bottom:1rem}.no-events h3{color:#2c3e50;margin-bottom:.5rem}.events-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.event-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:1.5rem;position:relative;transition:transform .2s ease,box-shadow .2s ease}.event-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.event-header{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem}.event-icon{font-size:1.5rem}.event-type{background:#fff;border-radius:20px;color:#2c3e50;font-size:.8rem;font-weight:500;letter-spacing:.5px;padding:.25rem .75rem;text-transform:uppercase}.event-content{margin-bottom:1rem}.event-title{font-size:1.1rem;font-weight:600}.event-date,.event-title{color:#2c3e50;margin-bottom:.5rem}.event-date{font-size:.9rem}.event-description{color:#2c3e50;font-size:.9rem;line-height:1.5}.event-actions{display:flex;gap:.5rem;position:absolute;right:1rem;top:1rem}.date-sheet-section{background:#f0f9ff;border:2px solid #0ea5e9;border-radius:12px;margin-top:1rem;padding:1.5rem}.checkbox-label{color:#2c3e50;font-weight:500;gap:.5rem}.checkbox-label input[type=checkbox]{height:18px;width:18px}.date-sheet-form{margin-top:1rem}.date-sheet-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.date-sheet-header h4{color:#0c4a6e;font-size:1.1rem;margin:0}.no-date-sheet{background:#fff;border:1px solid #e9ecef;border-radius:8px;color:#2c3e50;padding:2rem;text-align:center}.date-sheet-entries{display:flex;flex-direction:column;gap:1rem}.date-sheet-entry{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:1rem;position:relative}.entry-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.entry-number{color:#2c3e50;font-size:.9rem;font-weight:600}.remove-entry-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;padding:.25rem;transition:background-color .2s ease}.remove-entry-btn:hover{background:#fee2e2}.entry-fields{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:2fr 1fr 1fr}.date-sheet-preview{background:#f0f9ff;border:1px solid #0ea5e9;border-radius:8px;margin-top:1rem;padding:1rem}.date-sheet-label{color:#0c4a6e;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.date-sheet-subjects{display:flex;flex-direction:column;gap:.5rem}.subject-preview{grid-gap:.5rem;background:#fff;border-radius:4px;display:grid;font-size:.85rem;gap:.5rem;grid-template-columns:2fr 1fr 1fr;padding:.5rem}.subject-name{color:#2c3e50;font-weight:500}.subject-date,.subject-time{color:#2c3e50}.more-subjects{margin-top:.5rem}@media (max-width:768px){.academic-schedule-container{padding:1rem}.section-card{padding:1.5rem}.form-row{grid-template-columns:1fr}.section-header{align-items:stretch;flex-direction:column;gap:1rem}.events-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.entry-fields,.subject-preview{grid-template-columns:1fr}.subject-preview{text-align:center}.date-sheet-header{align-items:stretch;flex-direction:column;gap:1rem}}.notices-container{display:flex;flex-direction:column;gap:2rem;padding:1.5rem}.add-notice-section,.notices-display-section{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;overflow:hidden}.add-notice-form{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.add-notice-form h3{color:#2c3e50;font-size:1.2rem;margin-bottom:1rem}.notices-list{margin-top:1.5rem}.no-notices h3{color:#2c3e50;margin-bottom:.5rem}.notices-grid{grid-gap:1.5rem;gap:1.5rem}.notice-card{position:relative}.notice-card:hover{box-shadow:0 8px 25px #0000001a}.notice-card.expired{background:#fef2f2;border-color:#fca5a5;opacity:.7}.notice-header{border:1px solid #e9ecef;padding-bottom:.75rem}.notice-audience,.notice-priority{align-items:center;display:flex;gap:.5rem}.audience-icon,.priority-icon{font-size:1rem}.audience-label,.priority-label{font-size:.8rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.audience-label{color:#2c3e50}.notice-content{margin-bottom:1rem}.notice-title{font-size:1.1rem;font-weight:600}.notice-text{font-size:.9rem;white-space:pre-wrap}.notice-meta{display:flex;flex-direction:column;gap:.25rem}.notice-date,.notice-expiry{color:#2c3e50;font-size:.8rem}.notice-expiry.expired{color:#dc2626;font-weight:500}.notice-actions{display:flex;gap:.5rem;position:absolute;right:1rem;top:1rem}.delete-btn,.edit-btn{background:none;border:none;border-radius:6px;cursor:pointer;font-size:1rem;padding:.5rem;transition:background-color .2s ease}.edit-btn:hover{background:#dbeafe}.delete-btn:hover{background:#fee2e2}@media (max-width:768px){.notices-container{padding:1rem}.notices-grid{grid-template-columns:1fr}.notice-header{align-items:flex-start;flex-direction:column;gap:.5rem}.notice-actions{justify-content:flex-end;margin-top:1rem;position:static}}.password-change-info{background-color:#e8f4fd;border:1px solid #b8daff;border-radius:6px;margin-bottom:20px;padding:12px}.password-change-info p{color:#0c5460;font-size:.9rem;font-style:italic;margin:0}.password-change-info p:before{content:"💡 ";margin-right:5px}.form-group input[type=password]{border:1px solid #e9ecef;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .3s ease}.form-group input[type=password]:focus{border-color:#ff8c42;box-shadow:0 0 0 2px #3498db1a;outline:none}.period-timing{background-color:initial!important;border-radius:0!important;font-size:.75rem;margin-top:2px;text-align:center}.period-timing,.period-timing .timing-text{border:none!important;color:#fff!important;padding:0!important}.period-timing .timing-text{background:none!important;border-radius:0!important}.period-cell{background-color:#ff8b3d;border-right:2px solid #dee2e6;color:#fff;padding:8px}.period-label{font-weight:600}.form-group input[type=password].error{border-color:#e74c3c;box-shadow:0 0 0 2px #e74c3c1a}.nexy-class-schedule-page{background:#f9fafb;min-height:100vh;padding:40px 32px}.nexy-schedule-title-card{animation:fadeInUp .4s ease-out;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:32px;padding:40px;text-align:center}.nexy-calendar-icon{display:block;font-size:56px;margin-bottom:16px}.nexy-schedule-title-card h1{color:#1f2937;font-size:36px;font-weight:700;margin:0 0 12px}.nexy-schedule-title-card p{color:#6b7280;font-size:16px;line-height:1.5;margin:0}.nexy-selection-section{animation:fadeInUp .5s ease-out;margin-bottom:32px}.nexy-selection-card{background:#fff;border-left:4px solid #667eea;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden;padding:40px}.nexy-section-header{align-items:center;display:flex;gap:12px;justify-content:center;margin-bottom:32px}.nexy-books-icon{font-size:32px}.nexy-selection-card h2{color:#1f2937;font-size:22px;font-weight:700;margin:0}.nexy-dropdown-container{grid-gap:28px;align-items:start;box-sizing:border-box;display:grid;gap:28px;grid-template-columns:calc(50% - 14px) calc(50% - 14px);margin:0 auto;max-width:800px;width:100%}.nexy-dropdown-container>.nexy-form-group{grid-column:span 1;max-width:100%;width:100%}.nexy-form-group{display:flex;flex-direction:column;min-width:0;position:relative;width:100%}.nexy-form-group label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:10px}.nexy-asterisk{color:#ef4444;margin-left:2px}.nexy-dropdown{-webkit-appearance:none;appearance:none;background:#f9fafb;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%236B7280' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;background-size:12px;border:1.5px solid #e5e7eb;border-radius:8px;box-sizing:border-box;color:#6b7280;cursor:pointer;font-size:15px;min-width:0;padding:14px 40px 14px 16px;transition:border-color .2s ease,background-color .2s ease,color .2s ease,box-shadow .2s ease;width:100%}.nexy-dropdown:hover:not(:focus){border-color:#d1d5db;border-width:1.5px}.nexy-dropdown:focus{background:#fff;border-color:#ff8b3d;border-width:1.5px;box-shadow:0 0 0 3px #ff8b3d1a;color:#1f2937;outline:none}.nexy-dropdown.nexy-selected{color:#1f2937;font-weight:500}.nexy-dropdown.nexy-error{border-color:#ef4444;border-width:1.5px}.nexy-dropdown:disabled{background:#f3f4f6;cursor:not-allowed;opacity:.6}.nexy-error-message{color:#ef4444;display:block;font-size:13px;margin-top:6px}.nexy-checkmark{color:#10b981;font-size:16px;font-weight:700;pointer-events:none;position:absolute;right:40px;top:42px;z-index:1}.nexy-action-buttons{display:flex;gap:16px;justify-content:flex-end;margin-top:32px;padding:0 40px}.nexy-cancel-btn{background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;font-size:15px;font-weight:600;padding:12px 28px;transition:all .2s ease}.nexy-cancel-btn:hover{background:#f9fafb;border-color:#d1d5db}.nexy-continue-btn{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 32px;transition:all .2s ease}.nexy-continue-btn:hover:not(:disabled){background:#ff7524;box-shadow:0 4px 12px #ff8b3d4d;transform:translateY(-2px)}.nexy-continue-btn:disabled{cursor:not-allowed;opacity:.5}.nexy-instructions-section{animation:fadeInUp .6s ease-out;margin-bottom:32px}.nexy-instructions-card{background:#fff;border-left:4px solid #10b981;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:40px}.nexy-instructions-header{align-items:center;display:flex;gap:12px;margin-bottom:28px}.nexy-pencil-icon{font-size:28px}.nexy-instructions-card h2{color:#1f2937;font-size:20px;font-weight:700;margin:0}.nexy-steps-container{margin:0 auto;max-width:900px;padding-left:40px}.nexy-step{align-items:flex-start;display:flex;gap:16px;margin-bottom:16px}.nexy-step-number{color:#ff8b3d;font-size:18px;font-weight:700;min-width:32px}.nexy-step-text{color:#374151;font-size:15px;line-height:1.6}.nexy-note-section{background:#fff7ed;border-left:4px solid #ff8b3d;border-radius:8px;margin-top:28px;padding:20px 24px}.nexy-note-label{color:#1f2937;display:inline;font-size:14px;font-weight:700;margin-right:4px}.nexy-note-text{color:#374151;display:inline;font-size:14px;font-style:italic;line-height:1.6}@media (max-width:1024px){.nexy-class-schedule-page,.nexy-instructions-card,.nexy-schedule-title-card,.nexy-selection-card{padding:32px 24px}}@media (max-width:768px){.main-content.nexy-class-schedule-page{margin:0;max-width:100vw;scrollbar-color:#ff8b3d #f0f0f0;scrollbar-width:thin}.main-content.nexy-class-schedule-page,.schedule-content{box-sizing:border-box;overflow-x:visible;padding:0;width:100%}.schedule-content{max-width:100%}.nexy-class-schedule-page{padding:16px 12px}.nexy-dropdown-container{gap:20px;grid-template-columns:1fr;max-width:100%;width:100%}.nexy-instructions-card,.nexy-schedule-title-card,.nexy-selection-card{box-sizing:border-box;margin-left:0;margin-right:0;max-width:100%;padding:20px 16px;width:100%}.nexy-schedule-title-card h1{font-size:24px}.nexy-schedule-title-card p{font-size:13px}.nexy-calendar-icon{font-size:40px}.nexy-section-header{flex-direction:column;gap:8px;text-align:center}.nexy-selection-card h2{font-size:18px}.nexy-books-icon{font-size:28px}.nexy-steps-container{padding-left:0}.nexy-action-buttons{flex-direction:column;gap:12px;margin-top:24px;padding:0}.nexy-cancel-btn,.nexy-continue-btn{padding:14px 24px;width:100%}.nexy-checkmark{right:16px;top:38px}.schedule-grid-section{overflow-x:visible;padding:0}.schedule-grid-card,.schedule-grid-section{box-sizing:border-box;margin:0;max-width:100%;width:100%}.schedule-grid-card{border-radius:8px;padding:16px 12px}.schedule-grid-header{align-items:stretch;flex-direction:column;gap:16px;margin-bottom:16px;padding-bottom:16px}.schedule-header-left{width:100%}.schedule-grid-header h2{word-wrap:break-word;font-size:18px;line-height:1.4;margin-bottom:12px}.semester-selection-container{align-items:stretch;flex-direction:column;gap:12px;width:100%}.semester-label{width:100%}.semester-select{min-width:100%;width:100%}.add-semester-btn{padding:10px 16px;width:100%}.save-schedule-btn{font-size:14px;padding:12px 20px;width:100%}.schedule-table-container{-webkit-overflow-scrolling:touch;margin:0;max-width:100%;overflow-x:auto;overflow-y:visible;padding:0;scrollbar-color:#ff8b3d #f0f0f0;scrollbar-width:thin;width:100%}.schedule-table{min-width:600px;width:100%}.nexy-instructions-header{flex-direction:column;gap:8px;text-align:center}.nexy-instructions-card h2{font-size:18px}.nexy-pencil-icon{font-size:24px}}@media (max-width:480px){.nexy-class-schedule-page{padding:12px 8px}.nexy-instructions-card,.nexy-schedule-title-card,.nexy-selection-card{padding:16px 12px}.nexy-schedule-title-card h1{font-size:20px}.nexy-schedule-title-card p{font-size:12px}.nexy-calendar-icon{font-size:36px}.nexy-selection-card h2{font-size:16px}.nexy-form-group label{font-size:13px}.nexy-dropdown{font-size:14px;padding:12px 36px 12px 14px}.schedule-grid-card{padding:12px 8px}.schedule-grid-header h2{font-size:16px}.nexy-action-buttons{gap:10px}.nexy-cancel-btn,.nexy-continue-btn{font-size:14px;padding:12px 20px}.schedule-success-notification{left:10px;max-width:calc(100% - 20px);right:10px}.schedule-success-content{max-width:100%;min-width:auto;padding:1rem}}.schedule-success-notification{animation:slideInRight .3s ease-out;position:fixed;right:20px;top:20px;z-index:10000}.schedule-success-content{align-items:center;animation:fadeInScale .3s ease-out;background:linear-gradient(135deg,#10b981,#059669);border-radius:12px;box-shadow:0 10px 30px #10b9814d;color:#fff;display:flex;gap:1rem;max-width:450px;min-width:350px;padding:1.25rem 1.5rem;position:relative}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.schedule-success-icon{align-items:center;animation:bounceIn .5s ease-out;background:#fff3;border-radius:50%;display:flex;flex-shrink:0;font-size:2rem;height:50px;justify-content:center;width:50px}@keyframes bounceIn{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.schedule-success-text{flex:1 1}.schedule-success-text h3{color:#fff;font-size:1.1rem;font-weight:600;margin:0 0 .25rem}.schedule-success-text p{color:#fffffff2;font-size:.9rem;line-height:1.4;margin:0}.schedule-success-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.5rem;height:30px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:30px}.schedule-success-close:hover{background:#ffffff4d;transform:rotate(90deg)}.schedule-success-close:active{transform:rotate(90deg) scale(.9)}@media (max-width:768px){.schedule-success-notification{left:10px;right:10px;top:10px}.schedule-success-content{max-width:100%;min-width:auto;padding:1rem 1.25rem}.schedule-success-icon{font-size:1.5rem;height:40px;width:40px}.schedule-success-text h3{font-size:1rem}.schedule-success-text p{font-size:.85rem}}.mobile-dashboard-header{position:sticky}.school-info{display:flex;flex-direction:column}.school-name-header{color:#000!important;font-size:16px;font-weight:600}.school-role-header{color:#000!important;font-size:12px;font-weight:500;line-height:1.2;margin-top:2px}.mobile-menu-header{position:relative;z-index:10001}.mobile-user-info .user-avatar{font-size:20px}@media (max-width:768px){.desktop-only{display:none!important}.mobile-dashboard-header{display:flex!important;left:0!important;position:fixed!important;right:0!important;top:0!important;width:100%!important}.mobile-menu-toggle{display:flex!important}.mobile-menu-overlay{display:block}.sidebar{display:none!important}.main-content{margin-left:0!important;margin-top:64px!important;width:100%!important}.content-header{display:none!important}.content-body{padding-top:0!important}.school-name-header{font-size:14px!important;max-width:180px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.school-role-header{font-size:11px!important}.header-left{flex:0 1 auto!important;justify-content:flex-start!important;max-width:calc(100% - 60px)!important;min-width:0!important;text-align:left!important}.header-left,.header-right{align-items:center!important;display:flex!important;margin:0!important;padding:0!important}.header-right{flex:0 0 auto!important;flex-shrink:0!important;justify-content:flex-end!important;width:auto!important}.school-info{text-align:left!important}}.nav-tabs{gap:8px;padding:0 32px;top:64px}.nav-tab{border-bottom:3px solid #0000;font-size:14px;justify-content:center;padding:16px 20px;position:relative;transition:all .2s ease}.nav-tab.active,.nav-tab:hover:not(.active){border-radius:8px}.nav-tab.active{background:#ff8b3d!important;border-bottom:none;color:#fff!important}.tab-text{font-size:14px}.curriculum-section{border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.curriculum-section h2{margin-bottom:8px}.curriculum-section .form-group{margin-bottom:20px}.curriculum-section .form-group label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.multi-input-group{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.input-with-remove{align-items:center;display:flex;gap:8px}.input-with-remove .form-input{flex:1 1}.remove-btn{align-items:center;background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;transition:background .2s;width:32px}.remove-btn:hover{background:#dc2626}.form-actions{flex-wrap:wrap;margin-top:16px}.curriculum-section .form-actions{align-items:center;display:flex!important;flex-wrap:wrap;gap:12px;margin-top:16px}.curriculum-section .btn-secondary{align-items:center;background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:inline-flex!important;font-size:14px;font-weight:600;justify-content:center;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.curriculum-section .btn-secondary:hover{background:#e5e7eb;border-color:#9ca3af}.curriculum-section .btn-primary{align-items:center;background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex!important;font-size:14px;font-weight:600;justify-content:center;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.curriculum-section .btn-primary:hover:not(:disabled){background:#ff7a2e}.curriculum-section .btn-primary:disabled{cursor:not-allowed;opacity:.6}.grade-card{margin-bottom:16px}.grade-header{margin-bottom:12px}.grade-header h3{color:#1f2937;font-size:18px}.grade-actions{display:flex;gap:8px}.btn-link{color:#3b82f6;font-size:14px;text-decoration:underline}.btn-link:hover{color:#2563eb}.btn-danger{background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:6px 12px;transition:background .2s}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-danger:disabled{cursor:not-allowed;opacity:.5}.btn-danger-small{border-radius:4px;font-size:12px;padding:4px 8px;transition:background .2s}.btn-danger-small:hover:not(:disabled){background:#dc2626}.btn-danger-small:disabled{cursor:not-allowed;opacity:.5}.streams-section{border-top:1px solid #e5e7eb;margin-top:16px;padding-top:16px}.streams-section h4{color:#374151;font-size:16px;font-weight:600;margin-bottom:12px}.streams-list{margin-top:16px}.streams-list h5{color:#6b7280;font-size:14px;font-weight:600;margin-bottom:8px}.stream-item{border-radius:6px;margin-bottom:8px;min-width:200px;padding:10px 14px}.stream-item span{color:#374151;display:block;flex:1 1 auto;font-size:14px;font-weight:500;margin-right:12px;opacity:1;visibility:visible;white-space:normal;word-break:break-word}.stream-item .btn-danger-small{flex-shrink:0;font-size:12px;min-width:auto;padding:4px 12px}.subjects-grid{grid-gap:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.message{align-items:center;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:20px;padding:12px 16px}.message.success{background:#d1fae5;border:1px solid #10b981;color:#065f46}.message.error{background:#fee2e2;border:1px solid #ef4444;color:#991b1b}.message button{background:none;border:none;color:inherit;cursor:pointer;font-size:18px;opacity:.7}.message button:hover{opacity:1}@media (max-width:768px){.nav-tabs{padding:0 16px;top:64px}.nav-tab{font-size:13px;padding:12px 16px}.curriculum-section{padding:16px}.subjects-grid{grid-template-columns:1fr}}.bi-reports-container{margin:0 auto;max-width:1400px;padding:2rem}.bi-tabs{border-bottom:2px solid #e9ecef;display:flex;gap:1rem;margin-bottom:2rem}.bi-tab{background:none;border:none;border-bottom:3px solid #0000;color:#6c757d;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:all .2s ease}.bi-tab:hover{background:#f8f9fa;color:#495057}.bi-tab.active{background:none;border-bottom-color:#ff8c42;color:#ff8c42}.bi-dashboard-content h2,.bi-reports-content h2{color:#2c3e50;margin-bottom:2rem}.stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.stat-card{border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 8px #0000001a;padding:1.5rem}.stat-card h3{color:#6c757d;font-size:.9rem;font-weight:500;margin:0 0 .5rem}.stat-value{color:#ff8c42;font-size:2rem;font-weight:700;margin:0}.dashboard-section{background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;padding:1.5rem}.section-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.section-header h3{color:#2c3e50;font-size:1.2rem;margin:0}.section-actions{display:flex;gap:.5rem}.btn-secondary{background:#6c757d;font-size:.9rem;padding:.5rem 1rem;transition:background .2s ease}.btn-secondary:hover{background:#5a6268}.btn-primary{padding:.75rem 1.5rem;transition:background .2s ease}.table-container{overflow-x:auto}.data-table{border-collapse:collapse;font-size:.9rem;width:100%}.data-table thead{background:#f8f9fa}.data-table th{border-bottom:2px solid #e9ecef;color:#2c3e50;font-weight:600;padding:1rem;text-align:left}.data-table td{border-bottom:1px solid #f0f0f0;color:#495057;padding:1rem}.data-table tbody tr:hover{background:#f8f9fa}.status-badge{padding:.25rem .75rem}.status-badge.paid{background:#d1fae5;color:#065f46}.status-badge.unpaid{background:#fee2e2;color:#991b1b}.status-badge.partial{background:#fef3c7;color:#92400e}.type-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.type-badge.doc{background:#dbeafe;color:#1e40af}.type-badge.media{background:#fce7f3;color:#9f1239}.type-badge.link{background:#dcfce7;color:#166534}.status-badge.published{background:#d1fae5;color:#065f46}.status-badge.draft,.status-badge.published{border-radius:12px;font-size:.85rem;font-weight:500;padding:.25rem .75rem}.status-badge.draft{background:#fef3c7;color:#92400e}.file-link,.link-preview{background:#f3f4f6;border-radius:4px;color:#374151;display:inline-block;font-size:.85rem;margin:.25rem;padding:.25rem .5rem;text-decoration:none;transition:all .2s ease}.file-link:hover,.link-preview:hover{background:#e5e7eb;color:#111827}.policy-category-badge{background:linear-gradient(135deg,#ff8c42,#e67a35);border-radius:12px;box-shadow:0 2px 4px #ff8c424d;color:#fff;display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:.35rem .85rem;text-transform:uppercase}.delete-popup-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0009;z-index:10000}.delete-popup-message strong{color:#ef4444;font-weight:700}.success-popup-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:10000}.success-popup-message strong{color:#10b981}.summary-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-card{border-radius:10px;box-shadow:0 2px 8px #0000001a;padding:1.5rem;text-align:center}.summary-card.paid{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:2px solid #10b981}.summary-card.unpaid{background:linear-gradient(135deg,#fee2e2,#fecaca);border:2px solid #ef4444}.summary-card.total{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:2px solid #3b82f6}.summary-card h4{color:#2c3e50;font-size:.9rem;margin:0 0 .5rem}.summary-value{font-size:1.8rem;margin:0}.reports-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.report-card{background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 8px #0000001a;cursor:pointer;padding:2rem;transition:all .2s ease}.report-card:hover{border-color:#ff8c42;box-shadow:0 4px 12px #00000026;transform:translateY(-4px)}.report-card h3{color:#2c3e50;font-size:1.1rem;margin:0 0 .5rem}.report-card p{color:#6c757d;font-size:.9rem;margin:0}.charts-container{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:2rem}.chart-wrapper{background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 8px #0000001a;padding:1.5rem}.chart-wrapper h3{color:#2c3e50;font-size:1.1rem;margin:0 0 1.5rem}.bar-chart{flex-direction:column}.bar-chart,.bar-item{display:flex;gap:1rem}.bar-item{align-items:center}.bar-label{color:#495057;font-size:.9rem;font-weight:500;min-width:120px}.bar-container{background:#f0f0f0;border-radius:4px;flex:1 1;height:30px;overflow:hidden;position:relative}.bar-fill{align-items:center;border-radius:4px;display:flex;height:100%;justify-content:flex-end;padding-right:.5rem;transition:width .3s ease}.bar-value{color:#fff;font-size:.85rem;font-weight:600;text-shadow:0 1px 2px #0003}.pie-chart{align-items:center;display:flex;flex-direction:column;gap:1.5rem}.pie-svg{height:200px;width:200px}.pie-legend{display:flex;flex-direction:column;gap:.5rem;width:100%}.legend-item{color:#495057;font-size:.9rem;gap:.5rem}.legend-color{border:1px solid #e9ecef;border-radius:3px}@media (max-width:768px){.bi-reports-container{padding:1rem}.reports-grid,.stats-grid,.summary-cards{grid-template-columns:1fr}.bi-tabs,.section-header{flex-direction:column}.section-header{align-items:flex-start;gap:1rem}.charts-container{grid-template-columns:1fr}.bar-item{align-items:flex-start;flex-direction:column}.bar-label{min-width:auto}}.chat-groups-list{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));padding:0}.chat-group-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;overflow:hidden;padding:24px;position:relative;transition:all .3s ease}.chat-group-card:before{background:linear-gradient(90deg,#ff8b3d,#ffa366);content:"";height:4px;left:0;position:absolute;right:0;top:0}.chat-group-card:hover{border-color:#ff8b3d;box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.chat-group-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.chat-group-actions{align-items:center;display:flex;gap:8px}.chat-group-header h3{color:#1f2937;flex:1 1;font-size:1.25rem;font-weight:700;line-height:1.4;margin:0;word-break:break-word}.chat-group-description{background:#f9fafb;border-left:3px solid #ff8b3d;border-radius:8px;color:#6b7280;font-size:.95rem;line-height:1.6;margin-bottom:16px;padding:12px}.chat-group-info{border-top:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:16px;padding-top:16px}.chat-group-info span{align-items:center;color:#6b7280;display:flex;font-size:.875rem;font-weight:500;gap:6px}.chat-group-info span:before{color:#ff8b3d;content:"•";font-size:1.2rem;line-height:1}.btn-danger-small{background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;flex-shrink:0;font-size:.75rem;font-weight:600;height:fit-content;line-height:1.4;min-width:auto;padding:4px 10px;transition:all .2s ease;white-space:nowrap;width:fit-content}.btn-danger-small:hover{background:#dc2626;box-shadow:0 2px 6px #ef44444d;transform:scale(1.05)}.btn-danger-small:active{transform:scale(.98)}.btn-edit-small{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;flex-shrink:0;font-size:.75rem;font-weight:600;height:fit-content;line-height:1.4;min-width:auto;padding:4px 10px;transition:all .2s ease;white-space:nowrap;width:fit-content}.btn-edit-small:hover{background:#2563eb;box-shadow:0 2px 6px #3b82f64d;transform:scale(1.05)}.btn-edit-small:active{transform:scale(.98)}.chat-groups-list+.empty-state,.content-body>.empty-state{background:#fff;border:2px dashed #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;padding:80px 32px;position:relative;text-align:center}.content-body>.empty-state:before{content:"💬";display:block;font-size:64px;line-height:1;margin-bottom:24px}.content-body>.empty-state p{color:#6b7280;font-size:1.1rem;font-weight:500;margin:0}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000}.modal-content{border-radius:20px;overflow-x:hidden;position:relative}.modal-content::-webkit-scrollbar{width:12px}.modal-content::-webkit-scrollbar-track{background:#f3f4f6;border-radius:10px;margin:10px 0}.modal-content::-webkit-scrollbar-thumb{background:#d1d5db;border:2px solid #f3f4f6;border-radius:10px}.modal-content::-webkit-scrollbar-thumb:hover{background:#9ca3af}.modal-header{background:linear-gradient(135deg,#ff8b3d,#ffa366);border-bottom:1px solid #e5e7eb;border-radius:20px 20px 0 0;flex-shrink:0;padding:24px 32px}.modal-header h2{font-size:1.5rem}.modal-close{font-size:28px;height:36px;line-height:1;padding:0;transition:all .2s ease;width:36px}.modal-close:hover{transform:rotate(90deg)}.modal-close:disabled{cursor:not-allowed;opacity:.5}.create-group-form{flex:1 1;min-height:0;overflow-y:auto;padding:32px}.create-group-form::-webkit-scrollbar{width:10px}.create-group-form::-webkit-scrollbar-track{background:#f9fafb;border-radius:5px}.create-group-form::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:5px}.create-group-form::-webkit-scrollbar-thumb:hover{background:#9ca3af}.create-group-form .form-group{margin-bottom:24px}.create-group-form label{color:#1f2937;display:block;font-size:.95rem;font-weight:600;margin-bottom:8px}.create-group-form input[type=text],.create-group-form select,.create-group-form textarea{border:2px solid #e5e7eb;border-radius:10px;box-sizing:border-box;font-family:inherit;font-size:.95rem;padding:12px 16px;transition:all .2s ease;width:100%}.create-group-form input[type=text]:focus,.create-group-form select:focus,.create-group-form textarea:focus{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.create-group-form textarea{min-height:100px;resize:vertical}.selection-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.selection-header label{margin-bottom:0}.btn-link{background:none;border:none;border-radius:6px;color:#ff8b3d;cursor:pointer;font-size:.875rem;font-weight:600;padding:4px 8px;text-decoration:none;transition:all .2s ease}.btn-link:hover{background:#fff5f0;color:#ff7524}.selection-box{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;max-height:300px;overflow-y:auto;padding:12px}.selection-box::-webkit-scrollbar{width:8px}.selection-box::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.selection-box::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.selection-box::-webkit-scrollbar-thumb:hover{background:#9ca3af}.checkbox-label{align-items:center;background:#fff;border:2px solid #0000;border-radius:8px;cursor:pointer;display:flex;gap:12px;margin-bottom:8px;min-height:44px;padding:12px;transition:all .2s ease}.checkbox-label:hover{background:#fff5f0;border-color:#ffe5d4;transform:translateX(4px)}.checkbox-label input[type=checkbox]{accent-color:#ff8b3d;align-self:center;cursor:pointer;flex-shrink:0;height:20px;margin:0;vertical-align:middle;width:20px}.checkbox-label input[type=checkbox]:checked{background:#ff8b3d}.checkbox-label span{align-items:center;color:#1f2937;display:flex;flex:1 1;font-size:.95rem;font-weight:500;line-height:1.5;min-height:20px}.empty-selection{color:#9ca3af;font-size:.95rem;font-style:italic;padding:40px 20px;text-align:center}.form-actions{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:24px}.btn-primary{background:linear-gradient(135deg,#ff8b3d,#ffa366);border-radius:10px;box-shadow:0 4px 12px #ff8b3d4d;min-width:auto;white-space:nowrap;width:fit-content}.btn-primary:hover:not(:disabled){box-shadow:0 6px 20px #ff8b3d66;transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{transform:none}.btn-secondary{border:2px solid #e5e7eb;border-radius:10px;color:#6b7280;transition:all .2s ease}.btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db;color:#374151}.loading-container:before{animation:spin 1s linear infinite;content:"⏳";display:block;font-size:48px;margin-bottom:16px}@media (max-width:768px){.chat-groups-list{gap:16px;grid-template-columns:1fr}.chat-group-card{padding:20px}.modal-content{margin:10px;max-height:95vh;max-width:95vw}.modal-header{padding:20px}.create-group-form{padding:24px 20px}.selection-box{max-height:200px}.form-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}@media (max-width:480px){.chat-group-header{align-items:flex-start;flex-direction:column}.chat-group-header h3{font-size:1.1rem}.chat-group-info{flex-direction:column;gap:8px}.chat-group-info span{font-size:.8rem}}.edit-members-container{max-height:60vh;overflow-y:auto;padding:20px}.members-list-header{border-bottom:2px solid #e5e7eb;margin-bottom:20px;padding-bottom:16px}.members-list-header h3{color:#1f2937;font-size:1.25rem;font-weight:700;margin:0 0 8px}.members-subtitle{color:#6b7280;font-size:.875rem;margin:0}.members-list{display:flex;flex-direction:column;gap:12px}.member-item{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;justify-content:space-between;padding:16px;transition:all .2s ease}.member-item:hover{background:#f3f4f6;border-color:#d1d5db}.member-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.member-name{align-items:center;display:flex;font-size:1rem;gap:8px}.member-type-badge{font-size:1.2rem}.member-type{font-weight:500;margin-left:4px}.member-email,.member-type{color:#6b7280;font-size:.875rem}.member-email{margin-left:28px}.chat-modal{display:flex;flex-direction:column;height:90vh;max-width:800px}.chat-messages-container{background:#f9fafb;flex:1 1;min-height:0;overflow-y:auto;padding:20px}.chat-messages-container::-webkit-scrollbar{width:10px}.chat-messages-container::-webkit-scrollbar-track{background:#f3f4f6;border-radius:5px}.chat-messages-container::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:5px}.chat-messages-container::-webkit-scrollbar-thumb:hover{background:#9ca3af}.chat-empty,.chat-loading{color:#6b7280;padding:60px 20px;text-align:center}.chat-empty p{font-size:1rem;margin:0}.chat-messages-list{display:flex;flex-direction:column;gap:16px}.chat-message-item{display:flex;margin-bottom:12px}.chat-message-item.sent{justify-content:flex-end}.chat-message-item.received{justify-content:flex-start}.message-content{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;max-width:70%;padding:12px 16px}.chat-message-item.sent .message-content{background:linear-gradient(135deg,#ff8b3d,#ffa366);color:#fff}.chat-message-item.received .message-content{background:#fff;border:1px solid #e5e7eb;color:#1f2937}.message-sender{font-size:.75rem;font-weight:600;margin-bottom:4px;opacity:.8}.chat-message-item.sent .message-sender{color:#ffffffe6}.chat-message-item.received .message-sender{color:#6b7280}.message-text{word-wrap:break-word;font-size:.95rem;line-height:1.5;margin-bottom:4px}.message-time{font-size:.7rem;margin-top:4px;opacity:.7}.chat-input-form{background:#fff;border-top:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:12px;padding:20px}.chat-input{border:2px solid #e5e7eb;border-radius:10px;flex:1 1;font-family:inherit;font-size:.95rem;padding:12px 16px;transition:all .2s ease}.chat-input:focus{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.chat-input:disabled{background:#f3f4f6;cursor:not-allowed}.chat-send-btn{background:linear-gradient(135deg,#ff8b3d,#ffa366);border:none;border-radius:10px;box-shadow:0 4px 12px #ff8b3d4d;color:#fff;cursor:pointer;flex:0 0 auto;font-size:.95rem;font-weight:600;padding:8px 18px;transition:all .2s ease;white-space:nowrap;width:auto}.chat-send-btn:hover:not(:disabled){box-shadow:0 6px 20px #ff8b3d66;transform:translateY(-2px)}.chat-send-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.chat-modal{height:95vh;max-width:95vw}.message-content{max-width:85%}.chat-input-form{padding:16px}}.students-actions-container{min-width:130px;overflow:visible;padding:8px;white-space:nowrap;width:130px}.students-action-buttons{align-items:stretch;display:flex;flex-direction:column;gap:6px;justify-content:flex-start;overflow:visible;width:100%}.students-table .students-action-btn,.students-table .students-action-btn.archive-btn,.students-table .students-action-btn.delete-btn,.students-table .students-action-btn.edit-btn,.students-table .students-action-btn.restore-btn,.students-table .students-action-btn.view-btn,.students-table td .students-action-btn,.students-table td .students-action-btn.archive-btn,.students-table td .students-action-btn.delete-btn,.students-table td .students-action-btn.edit-btn,.students-table td .students-action-btn.restore-btn,.students-table td .students-action-btn.view-btn,table .students-action-btn,table .students-action-btn.archive-btn,table .students-action-btn.delete-btn,table .students-action-btn.edit-btn,table .students-action-btn.restore-btn,table .students-action-btn.view-btn,table td .students-action-btn,table td .students-action-btn.archive-btn,table td .students-action-btn.delete-btn,table td .students-action-btn.edit-btn,table td .students-action-btn.restore-btn,table td .students-action-btn.view-btn{align-items:center!important;background-color:initial!important;border:none!important;border-radius:8px!important;box-sizing:border-box!important;color:#fff!important;cursor:pointer!important;display:flex!important;flex-shrink:0!important;font-size:14px!important;font-weight:600!important;gap:10px!important;height:auto!important;justify-content:flex-start!important;line-height:normal!important;margin:0!important;min-height:auto!important;min-width:100%!important;padding:10px 14px!important;text-align:left!important;transition:all .2s ease!important;vertical-align:initial!important;white-space:nowrap!important;width:100%!important}.students-table .students-action-btn:hover:not(:disabled),.students-table td .students-action-btn:hover:not(:disabled),table .students-action-btn:hover:not(:disabled),table td .students-action-btn:hover:not(:disabled){background:none!important;box-shadow:0 4px 8px #00000026!important;opacity:.95!important;scale:1!important;transform:translateY(-1px)!important}.students-table .students-action-btn:active:not(:disabled),.students-table td .students-action-btn:active:not(:disabled),table .students-action-btn:active:not(:disabled),table td .students-action-btn:active:not(:disabled){transform:translateY(0)!important}.students-table .students-action-btn:disabled,.students-table td .students-action-btn:disabled,table .students-action-btn:disabled,table td .students-action-btn:disabled{cursor:not-allowed!important;opacity:.5!important}.students-table .students-action-btn svg,.students-table td .students-action-btn svg,table .students-action-btn svg,table td .students-action-btn svg{stroke-width:2.5!important;flex-shrink:0!important;height:18px!important;width:18px!important}.students-table .students-action-btn span,.students-table td .students-action-btn span,table .students-action-btn span,table td .students-action-btn span{flex:1 1;text-align:left}.students-table .students-action-btn.view-btn,.students-table td .students-action-btn.view-btn,table .students-action-btn.view-btn,table td .students-action-btn.view-btn{background-color:#3b82f6!important}.students-table .students-action-btn.view-btn:hover:not(:disabled),.students-table td .students-action-btn.view-btn:hover:not(:disabled),table .students-action-btn.view-btn:hover:not(:disabled),table td .students-action-btn.view-btn:hover:not(:disabled){background-color:#2563eb!important;background:#2563eb!important}.students-table .students-action-btn.edit-btn,.students-table td .students-action-btn.edit-btn,table .students-action-btn.edit-btn,table td .students-action-btn.edit-btn{background-color:#10b981!important}.students-table .students-action-btn.edit-btn:hover:not(:disabled),.students-table td .students-action-btn.edit-btn:hover:not(:disabled),table .students-action-btn.edit-btn:hover:not(:disabled),table td .students-action-btn.edit-btn:hover:not(:disabled){background-color:#059669!important;background:#059669!important}.students-table .students-action-btn.archive-btn,.students-table td .students-action-btn.archive-btn,table .students-action-btn.archive-btn,table td .students-action-btn.archive-btn{background-color:#8b5cf6!important}.students-table .students-action-btn.archive-btn:hover:not(:disabled),.students-table td .students-action-btn.archive-btn:hover:not(:disabled),table .students-action-btn.archive-btn:hover:not(:disabled),table td .students-action-btn.archive-btn:hover:not(:disabled){background-color:#7c3aed!important;background:#7c3aed!important}.students-table .students-action-btn.restore-btn,.students-table td .students-action-btn.restore-btn,table .students-action-btn.restore-btn,table td .students-action-btn.restore-btn{background-color:#10b981!important}.students-table .students-action-btn.restore-btn:hover:not(:disabled),.students-table td .students-action-btn.restore-btn:hover:not(:disabled),table .students-action-btn.restore-btn:hover:not(:disabled),table td .students-action-btn.restore-btn:hover:not(:disabled){background-color:#059669!important;background:#059669!important}.students-table .students-action-btn.delete-btn,.students-table td .students-action-btn.delete-btn,table .students-action-btn.delete-btn,table td .students-action-btn.delete-btn{background-color:#ef4444!important}.students-table .students-action-btn.delete-btn:hover:not(:disabled),.students-table td .students-action-btn.delete-btn:hover:not(:disabled),table .students-action-btn.delete-btn:hover:not(:disabled),table td .students-action-btn.delete-btn:hover:not(:disabled){background-color:#dc2626!important;background:#dc2626!important}.students-table th.actions-header{min-width:130px;width:130px}@media (max-width:768px){.students-actions-container{min-width:130px;width:130px}.students-action-buttons{align-items:stretch;flex-direction:column}.students-table th.actions-header{min-width:130px;width:130px}}.nexy-schedule-view-page{background:#fff;color:#000;min-height:100vh;padding:32px}.nexy-schedule-view-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:28px 32px}.nexy-header-left{align-items:center;display:flex;gap:12px}.nexy-header-icon{font-size:32px;line-height:1}.nexy-schedule-view-header h1{color:#1f2937;font-size:28px;font-weight:700;margin:0}.nexy-header-right p{color:#6b7280;font-size:15px;margin:0}.nexy-filters-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;padding:24px 28px}.nexy-search-wrapper{margin-bottom:20px;position:relative}.nexy-search-icon{color:#6b7280;font-size:18px;left:16px;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.nexy-search-input{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;box-sizing:border-box;color:#1f2937;font-size:15px;padding:12px 16px 12px 48px;transition:all .2s ease;width:100%}.nexy-search-input::placeholder{color:#9ca3af}.nexy-search-input:focus{background:#fff;border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.nexy-filters-container{display:flex;flex-wrap:wrap;gap:16px}.nexy-filter-dropdown{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;color:#1f2937;cursor:pointer;font-size:14px;font-weight:500;min-width:160px;padding:10px 14px;transition:all .2s ease}.nexy-filter-dropdown:focus{background:#fff;border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.nexy-saved-schedules-header{margin-bottom:20px;padding:0 8px}.nexy-saved-schedules-header,.nexy-section-title-wrapper{align-items:center;display:flex;gap:12px}.nexy-clipboard-icon{color:#ff8b3d;font-size:24px}.nexy-saved-schedules-header h2{color:#1f2937;font-size:22px;font-weight:700;margin:0}.nexy-refresh-btn{align-items:center;background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;margin-bottom:24px;padding:14px;transition:all .2s ease;width:100%}.nexy-refresh-icon{font-size:18px}.nexy-refresh-btn:hover{background:#2563eb;box-shadow:0 4px 12px #3b82f64d;transform:translateY(-2px)}.nexy-refresh-btn:active{transform:translateY(0)}.nexy-schedules-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));margin-bottom:32px}.nexy-schedule-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;cursor:pointer;padding:28px 24px;transition:all .2s ease}.nexy-schedule-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-4px)}.nexy-schedule-card.nexy-selected{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a}.nexy-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px}.nexy-grade-heading{color:#1f2937;font-size:24px;font-weight:700;letter-spacing:.01em;margin:0}.nexy-section-badge{background:#ff8b3d;border-radius:16px;box-shadow:0 2px 4px #ff8b3d33;color:#fff;font-size:12px;font-weight:600;letter-spacing:.05em;padding:6px 14px;text-transform:uppercase}.nexy-timestamps-section{border-bottom:1px solid #f3f4f6;display:flex;flex-direction:column;gap:8px;margin-bottom:20px;padding-bottom:20px}.nexy-timestamp-row{display:flex;font-size:13px;justify-content:space-between}.nexy-timestamp-label{color:#6b7280;font-weight:600}.nexy-timestamp-value{color:#374151;font-weight:500}.nexy-view-schedule-btn{align-items:center;background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s ease;width:100%}.nexy-view-icon{color:#fff;font-size:18px}.nexy-view-schedule-btn:hover{background:#e67a35;box-shadow:0 4px 12px #ff8b3d4d;color:#fff;transform:translateY(-2px)}.nexy-view-schedule-btn:hover .nexy-view-icon{color:#fff}.nexy-view-schedule-btn:active{transform:translateY(0)}.nexy-pagination{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;gap:16px;justify-content:center;padding:20px 24px}.nexy-pagination-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 32px;transition:all .2s ease}.nexy-pagination-btn:hover:not(:disabled){background:#2563eb}.nexy-pagination-btn:disabled{cursor:not-allowed;opacity:.5}.nexy-page-indicator{align-items:center;display:flex;flex-direction:column;padding:0 20px}.nexy-page-label{color:#6b7280;font-size:12px;font-weight:600;margin-bottom:4px;text-transform:uppercase}.nexy-page-number{color:#1f2937;font-size:20px;font-weight:700}.nexy-items-per-page{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;color:#1f2937;cursor:pointer;font-size:14px;font-weight:500;padding:8px 12px}.nexy-items-per-page:focus{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.nexy-empty-state{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:60px 40px;text-align:center}.nexy-empty-icon{color:#d1d5db;display:block;font-size:64px;margin-bottom:20px}.nexy-empty-state h3{color:#6b7280;font-size:18px;font-weight:600;margin-bottom:16px}.nexy-empty-state p{color:#6b7280;font-size:15px;margin-bottom:24px}.nexy-create-schedule-btn{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 28px;transition:all .2s ease}.nexy-create-schedule-btn:hover{background:#e67a35;box-shadow:0 4px 12px #ff8b3d4d;transform:translateY(-2px)}@media (max-width:1024px){.nexy-schedules-grid{gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.nexy-filters-container{flex-direction:column}.nexy-filter-dropdown{width:100%}}@media (max-width:768px){.nexy-schedule-view-page{padding:20px 16px}.nexy-schedule-view-header{align-items:flex-start;flex-direction:column;gap:16px;padding:20px 24px}.nexy-schedules-grid{gap:16px;grid-template-columns:1fr}.nexy-filters-section{padding:20px 16px}.nexy-filters-container{flex-direction:column}.nexy-filter-dropdown{min-width:auto;width:100%}.nexy-pagination{flex-wrap:wrap;gap:12px;padding:16px}.nexy-pagination-btn{font-size:14px;padding:10px 24px}.nexy-schedule-card{padding:20px 16px}.nexy-grade-heading{font-size:20px}}.break-info{align-items:center;background-color:#fff4ed;border:1px solid #ffe8d6;border-radius:2px;color:#e67a35;display:flex;font-size:.65rem;gap:2px;margin-top:2px;padding:1px 4px}.break-indicator{font-size:.7rem}.schedule-table-container{padding:24px}.schedule-table-header{background:#f9fafb}.schedule-table-header th{border-bottom:2px solid #e5e7eb;color:#374151;font-size:14px;padding:12px 16px;text-align:left}.period-header{min-width:120px}.day-header{color:#1f2937;font-weight:600;text-align:center}.schedule-table-row{border-bottom:1px solid #f3f4f6}.period-cell,.schedule-table-row:hover{background:#f9fafb}.period-cell{color:#374151;font-weight:600;padding:12px 16px;vertical-align:top}.period-label{font-size:14px;margin-bottom:4px}.period-timing{color:#6b7280;font-size:11px;font-weight:500}.schedule-cell{padding:12px 16px;text-align:center;vertical-align:top}.schedule-assignment-display{align-items:center;gap:4px}.subject-display{color:#1f2937;font-size:14px}.teacher-display{color:#6b7280;font-size:12px}.teacher-name{font-weight:500}.empty-slot{color:#9ca3af;font-size:12px;padding:8px}.empty-text{color:#d1d5db}.break-table-row{background:#fff7ed}.break-period-cell{background:#fff7ed;color:#92400e;font-size:12px;padding:8px 16px}.break-timing{color:#b45309;font-size:11px}.break-cell{background:#fff7ed;padding:8px 16px}.no-schedule-data{color:#6b7280;padding:60px 20px;text-align:center}.no-data-icon{font-size:48px}.no-schedule-data h3{color:#374151;font-size:20px;margin:0 0 8px}.exam-schedule-container{background:#f9fafb;min-height:100vh;padding:40px 32px}.exam-schedule-header{align-items:center;border-top:4px solid #ff8b3d;display:flex;justify-content:space-between;padding:32px 40px}.exam-schedule-header-left{align-items:center;display:flex;gap:16px}.exam-schedule-header-icon{color:#ff8b3d;height:40px;width:40px}.exam-schedule-title{color:#1f2937;font-size:32px;font-weight:700;margin:0}.exam-schedule-description{color:#6b7280;font-size:15px;margin:0;text-align:right}.academic-year-section{margin-bottom:32px}.academic-year-card{background:#fff;border-left:4px solid #3b82f6;border-radius:16px;box-shadow:0 2px 8px #00000014;margin-bottom:32px;padding:40px}.academic-year-header{align-items:center;display:flex;gap:12px;margin-bottom:28px}.academic-year-icon{color:#3b82f6;height:28px;width:28px}.academic-year-title{color:#1f2937;font-size:24px;font-weight:700;margin:0}.academic-year-form{display:flex;flex-direction:column;gap:24px}.academic-year-form .form-group{display:flex;flex-direction:column;gap:8px}.academic-year-form label{color:#374151;font-size:14px;font-weight:700;margin-bottom:8px}.required-asterisk{color:#ef4444}.academic-year-form .form-input{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;color:#1f2937;font-size:15px;padding:14px 18px;transition:all .2s ease;width:100%}.academic-year-form .form-input:focus{background:#fff;border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.date-inputs-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;margin-bottom:32px}.save-academic-year-btn{align-items:center;background:#ff8b3d;border:none;border-radius:12px;box-shadow:0 4px 14px #ff8b3d66;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;justify-content:center;padding:16px;transition:all .2s ease;width:100%}.save-academic-year-btn:hover{background:#ff7524;box-shadow:0 6px 20px #ff8b3d80;transform:translateY(-2px)}.quick-actions-header{align-items:center;display:flex;gap:12px;margin-bottom:24px}.quick-actions-icon{color:#ff8b3d;height:28px;width:28px}.quick-actions-title{color:#1f2937;font-size:24px;font-weight:700;margin:0}.quick-actions-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:40px}.quick-action-btn{align-items:center;background:#ff8b3d!important;border-radius:12px;box-shadow:0 2px 8px #ff8b3d4d;display:flex;flex-direction:column;gap:16px;padding:32px 24px;text-align:center}.quick-action-btn:hover{background:#ff7524;box-shadow:0 6px 20px #ff8b3d66;transform:translateY(-4px)}.quick-action-icon{font-size:48px;margin-bottom:0}.quick-action-label{color:#fff;font-size:16px;font-weight:700}.exam-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.exam-modal{background:#fff;border-radius:16px;box-shadow:0 8px 24px #00000026;max-height:90vh;max-width:700px;overflow-y:auto;padding:32px;position:relative;width:100%}.exam-modal-header{align-items:flex-start;border-bottom:2px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:28px;padding-bottom:20px}.exam-modal-header-left{align-items:center;display:flex;gap:12px}.exam-modal-icon{color:#ff8b3d;height:28px;width:28px}.exam-modal-title{color:#1f2937;font-size:22px;font-weight:700;margin:0}.exam-modal-close-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:#ef4444;cursor:pointer;display:flex;font-size:28px;height:36px;justify-content:center;line-height:1;margin:0;padding:0;position:relative;right:0;top:0;transition:all .2s ease;width:36px}.exam-modal-close-btn:hover{background:#fee2e2}.exam-modal .form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.exam-modal label{color:#374151;font-size:14px;font-weight:700}.exam-modal .form-input,.exam-modal .form-select,.exam-modal .form-textarea{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;color:#1f2937;font-size:15px;padding:14px 18px;transition:all .2s ease;width:100%}.exam-modal .form-input:focus,.exam-modal .form-select:focus,.exam-modal .form-textarea:focus{background:#fff;border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.exam-modal .form-textarea{min-height:80px;resize:vertical}.exam-modal .form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.subjects-section{background:#f9fafb;border-radius:12px;margin:24px 0;padding:24px}.subjects-header{justify-content:space-between;margin-bottom:16px}.subjects-section-title{color:#1f2937;font-size:16px;font-weight:700;margin:0}.add-subject-btn{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .2s ease}.add-subject-btn:hover{background:#059669}.no-subjects{color:#9ca3af;font-size:14px;font-style:italic;padding:20px;text-align:center}.subjects-list{gap:16px}.subject-entry{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.subject-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.subject-number{color:#1f2937;font-weight:600}.remove-subject-btn{background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:8px 12px;transition:background-color .2s ease}.remove-subject-btn:hover{background:#dc2626}.subject-fields{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr 1fr}.exam-modal-actions{display:flex;gap:16px;justify-content:flex-start;margin-top:28px}.exam-modal-submit-btn{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:700;min-width:150px;padding:14px 32px;transition:all .2s ease;width:auto}.exam-modal-submit-btn:hover{background:#ff7524;transform:translateY(-2px)}.exam-modal-cancel-btn{background:#fff;border:2px solid #ef4444;border-radius:8px;color:#ef4444;cursor:pointer;font-size:15px;font-weight:700;min-width:150px;padding:14px 32px;transition:all .2s ease;width:auto}.exam-modal-cancel-btn:hover{background:#fee2e2}.exams-section{margin-top:40px}.exams-stats-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 6px #0000000f;display:flex;justify-content:space-between;margin-bottom:32px;padding:20px 28px}.exams-stats-title{color:#1f2937;font-size:20px;font-weight:700;margin:0}.exams-stats-badges{display:flex;gap:16px}.exam-stat-badge{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:12px 20px;text-align:center}.exam-stat-number{color:#1f2937;display:block;font-size:24px;font-weight:700}.exam-stat-label{color:#6b7280;display:block;font-size:11px;font-weight:700;margin-top:4px;text-transform:uppercase}.exams-list{margin-top:0}.exams-grid{grid-gap:24px;gap:24px}.exam-event-card{background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 6px #0000000f;padding:24px;position:relative;transition:all .2s ease}.exam-event-card:hover{box-shadow:0 4px 12px #0000001a}.exam-event-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.exam-event-type-badge{background:#eff6ff;border-radius:6px;color:#1e40af;font-size:11px;font-weight:700;padding:4px 12px;text-transform:uppercase}.exam-event-actions{display:flex;gap:8px}.exam-delete-btn,.exam-edit-btn{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s ease}.exam-edit-btn:hover{background:#fef3c7;border-radius:4px}.exam-delete-btn:hover{background:#fee2e2;border-radius:4px}.exam-event-title{color:#1f2937;font-size:18px;font-weight:700;margin:0 0 8px}.exam-event-date-range{color:#6b7280;font-size:14px;margin:0 0 8px}.exam-event-assigned{color:#10b981;font-size:13px;font-weight:600;margin:0 0 16px}.exam-event-assigned strong{color:#10b981}.exam-event-subjects{background:#f9fafb;border-radius:8px;margin-top:16px;padding:16px}.exam-event-subject-row{border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:10px 0}.exam-event-subject-row:last-child{border-bottom:none}.exam-event-subject-name{color:#1f2937;font-weight:700}.exam-event-subject-datetime{color:#6b7280;font-size:13px}.no-exams{padding:60px 20px}.no-exams-icon{margin-bottom:20px}.no-exams h3{margin:0 0 10px}@media (max-width:1024px){.exams-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width:768px){.exam-schedule-container{padding:20px 16px}.exam-schedule-header{align-items:flex-start;flex-direction:column;gap:16px;padding:24px}.exam-schedule-description{text-align:left}.academic-year-card{padding:24px}.date-inputs-grid{grid-template-columns:1fr}.quick-actions-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.exams-stats-header{align-items:flex-start;flex-direction:column;gap:16px}.exams-stats-badges{flex-wrap:wrap}.exams-grid,.subject-fields{grid-template-columns:1fr}.exam-modal{max-width:95%;padding:24px}.exam-modal .form-row{grid-template-columns:1fr}}@media (max-width:480px){.quick-action-icon{font-size:36px}.quick-action-label{font-size:14px}.exam-event-card{padding:16px}}.exams-by-branch-container{display:flex;flex-direction:column;gap:32px}.exams-branch-group{background:#fff;border-left:4px solid #ff8b3d;border-radius:12px;box-shadow:0 2px 4px #0000000d;padding:24px}.exams-branch-title{border-bottom:2px solid #f3f4f6;color:#1f2937;font-size:20px;font-weight:600;margin:0 0 20px;padding-bottom:12px}.fees-container{box-sizing:border-box;margin:0 auto;max-width:1400px;padding:20px;width:100%}.class-fees-section,.student-fees-section{margin-bottom:30px}.amount-input-container{align-items:center}.amount-input{flex:1 1;min-width:200px;width:100%}.currency-select{background:#fff;border:1px solid #e9ecef;border-radius:8px;font-size:1rem;min-width:150px;padding:12px;transition:border-color .2s ease}.currency-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.currency-label{color:#2c3e50;font-size:.9rem;font-weight:600;pointer-events:none;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.form-group:has(.currency-label){position:relative}#fee-amount{min-width:300px;width:100%}.amount-input-container{align-items:stretch;display:flex;gap:10px;width:100%}.amount-input{flex:2 1;min-width:300px}.currency-select{flex:1 1;min-width:180px}.form-group label{font-weight:500}.form-input,.form-select,.form-textarea{border:1px solid #e9ecef;border-radius:8px;font-size:1rem;padding:12px;transition:border-color .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.final-amount{background:#f0f9ff;border-color:#0ea5e9;color:#0c4a6e}.class-fees-list{border:1px solid #e9ecef;margin-top:30px;padding-top:25px}.class-fees-list h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin-bottom:20px}.no-fees{border:1px solid #e9ecef;border-radius:8px;color:#2c3e50;padding:40px 20px}.fees-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.fee-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px;transition:all .2s ease}.fee-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #0000001a}.fee-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.fee-header h4{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0}.fee-type-badge{background:#3b82f6;border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.fee-amount{font-size:1.5rem;margin-bottom:10px}.fee-description{color:#2c3e50;font-size:.9rem;line-height:1.4;margin:0 0 8px}.fee-date{margin:0 0 8px}.fee-date,.fee-expiry{font-size:.85rem;font-weight:500}.fee-expiry{color:#dc2626;margin:0 0 15px}.fee-actions{border:1px solid #e9ecef;display:flex;gap:10px;margin-top:15px;padding-top:15px}.btn-edit{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:500;padding:8px 16px;transition:background-color .2s ease}.btn-edit:hover:not(:disabled){background:#059669}.btn-edit:disabled{background:#fff;cursor:not-allowed}.student-search{margin-bottom:25px}.search-container{max-width:500px;position:relative}.search-input{border:1px solid #e9ecef;border-radius:8px;font-size:1rem;padding:12px 45px 12px 15px;transition:border-color .2s ease;width:100%}.search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.search-icon{color:#2c3e50;font-size:1.2rem;position:absolute;right:15px;top:50%;transform:translateY(-50%)}.students-list h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin-bottom:20px}.search-prompt{color:#2c3e50;padding:60px 20px;text-align:center}.search-prompt-icon{font-size:4rem;margin-bottom:20px}.search-prompt h3{color:#2c3e50;font-size:1.5rem;margin:0 0 10px}.search-prompt p{font-size:1rem;margin:0}.no-students{border:1px solid #e9ecef;border-radius:8px;color:#2c3e50;padding:40px 20px}.students-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.student-card{border:1px solid #e9ecef;border-radius:8px}.student-card:hover{border-color:#3b82f6}.student-info h4{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 8px}.student-details{color:#2c3e50;font-size:.9rem;margin:0 0 8px}.student-contact{color:#2c3e50;font-size:.9rem;margin:0 0 15px}.student-actions{display:flex;gap:10px}.student-fee-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-top:25px;padding:25px}.form-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:25px}.form-header h3{color:#2c3e50;font-size:1.3rem;margin:0}.close-btn{background:#ef4444;color:#fff;font-size:1.2rem;height:40px;width:40px}.close-btn:hover{background:#dc2626}.student-info-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:20px;padding:20px}.student-details h4{color:#2c3e50;font-size:1.2rem;font-weight:600;margin:0 0 10px}.student-details p{color:#2c3e50;font-size:.9rem;margin:0 0 5px}.student-fees-list{border:1px solid #e9ecef;margin-top:30px;padding-top:25px}.student-fees-list h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin-bottom:20px}.fees-table{background:#fff;border:1px solid #e9ecef;border-radius:8px;overflow:hidden}.table-header{background:#f8fafc;border:1px solid #e9ecef;display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr 1fr 1fr 1fr}.header-cell{color:#2c3e50;font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:15px 12px;text-transform:uppercase}.table-row{border:1px solid #e9ecef;display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr 1fr 1fr 1fr;transition:background-color .2s ease}.table-row:hover{background:#fff}.table-row:last-child{border-bottom:none}.table-cell{display:flex;flex-direction:column;font-size:.9rem;justify-content:center;padding:15px 12px}.student-name{color:#2c3e50;margin-bottom:2px}.student-roll{color:#2c3e50;font-size:.8rem}.discount-info{color:#059669;font-size:.8rem}.final-amount{color:#059669;font-weight:600}.status-badge{border-radius:12px;font-size:.8rem;font-weight:600;padding:4px 8px}.status-badge.pending{background:#fef3c7;color:#92400e}.status-badge.overdue{background:#fee2e2;color:#991b1b}.btn-primary:hover{background:#2563eb}.fee-plan-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin:25px 0;padding:25px}.fee-plan-preview h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin:0 0 15px}.plan-description{color:#2c3e50;font-size:.95rem;line-height:1.5;margin:0 0 20px}.fee-plan-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:20px}.fee-plan-item{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:15px;text-align:center;transition:all .2s ease}.fee-plan-item:hover{border-color:#3b82f6;box-shadow:0 2px 8px #0000001a}.fee-date{color:#2c3e50;font-size:.9rem;font-weight:600;margin-bottom:8px}.fee-amount{color:#059669;font-size:1.1rem;margin-bottom:5px}.total-summary{background:#ecfdf5;border:1px solid #10b981;border-radius:8px;color:#047857;font-size:1.1rem;padding:15px;text-align:center}.expiry-info-display{background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;margin-top:8px;padding:15px}.expiry-info-display p{color:#92400e;font-size:.9rem;line-height:1.4;margin:0 0 8px}.expiry-info-display p:last-child{margin-bottom:0}.expiry-info-display strong{color:#78350f;font-weight:600}.expiry-note{color:#a16207!important;font-size:.8rem!important;font-style:italic}.additional-fees-grid{grid-gap:1rem;box-sizing:border-box;display:grid;gap:1rem;grid-template-columns:1fr 1fr;width:100%}.class-fee-form *{box-sizing:border-box;max-width:100%}@media (max-width:768px){.additional-fees-grid{gap:1rem;grid-template-columns:1fr}}@media (max-width:1200px){.table-header,.table-row{grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr 1fr}}@media (max-width:768px){body,html{max-width:100%!important;overflow-x:hidden!important;width:100%!important}.fees-container{margin:0 auto;overflow-x:hidden;padding:15px}.class-fees-section,.fees-container{box-sizing:border-box;max-width:100%;width:100%}.section-card{box-sizing:border-box;padding:20px;width:100%}.section-card h2{font-size:1.3rem}.form-row{gap:15px;grid-template-columns:1fr}.form-group{width:100%}.amount-input-container{flex-direction:column;gap:10px}.amount-input,.currency-select{min-width:100%;width:100%}.fees-grid,.students-grid{grid-template-columns:1fr}.fee-plan-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.table-header,.table-row{gap:10px;grid-template-columns:1fr}.header-cell,.table-cell{border:1px solid #e9ecef;padding:10px}.table-row{border:1px solid #e9ecef}.form-actions{flex-direction:column;width:100%}.btn-primary,.btn-secondary{width:100%}.search-container{max-width:100%}.academic-year-info{padding:15px}.academic-year-info h3{font-size:1rem}.academic-year-info p{font-size:.85rem}.fee-plan-preview{padding:15px}.additional-fees-section{margin-top:1.5rem;padding-top:1.5rem}.additional-fees-details{margin-top:1.5rem}.additional-fees-details>div{padding:1rem}.additional-fees-details>div>div[style*=grid]{gap:1rem!important;grid-template-columns:1fr!important}.class-fee-form{box-sizing:border-box;max-width:100%;width:100%}.additional-fees-details>div>div{grid-gap:1rem!important;display:grid!important;gap:1rem!important;grid-template-columns:1fr!important}.content-header{box-sizing:border-box;padding:1rem 1.5rem;width:100%}}@media (max-width:480px){body,html{max-width:100%!important;overflow-x:hidden!important;width:100%!important}.fees-container{margin:0 auto;overflow-x:hidden;padding:10px}.class-fees-section,.fees-container{box-sizing:border-box;max-width:100%;width:100%}.class-fees-section{margin:0}.section-card{border-radius:8px;padding:15px}.section-card h2{font-size:1.2rem;margin-bottom:8px}.section-description{font-size:.85rem;margin-bottom:20px}.fee-card,.student-card,.student-fee-form{padding:15px}.fee-plan-grid{gap:10px;grid-template-columns:1fr}.academic-year-info,.fee-plan-item{padding:12px}.academic-year-info h3{font-size:.95rem;margin-bottom:8px}.academic-year-info p{font-size:.8rem}.form-input,.form-select,.form-textarea{font-size:.95rem;padding:10px}.form-group label{font-size:.85rem}.expiry-info-display{padding:12px}.expiry-info-display p{font-size:.85rem}.fee-plan-preview{padding:12px}.fee-plan-preview h3{font-size:1rem;margin-bottom:10px}.plan-description{font-size:.85rem;margin-bottom:15px}.additional-fees-section h2{font-size:1.1rem;margin-bottom:.75rem}.additional-fees-details h3{font-size:1rem;margin-bottom:.75rem}.additional-fees-details h4{font-size:.95rem;margin-bottom:.75rem}.form-actions{margin-top:1.5rem;padding-top:1rem}.btn-primary,.btn-secondary{font-size:.95rem;padding:10px 20px}.class-fee-form{box-sizing:border-box;max-width:100%;width:100%}.additional-fees-details>div>div{grid-gap:1rem!important;display:grid!important;gap:1rem!important;grid-template-columns:1fr!important}.content-header{box-sizing:border-box;padding:1rem;width:100%}.academic-year-info p{word-wrap:break-word;overflow-wrap:break-word}}.success-popup{max-width:420px}.success-popup-title{color:#10b981}.fee-schedule-container{box-sizing:border-box;margin:0 auto;max-width:100%;padding:20px;width:100%}.class-selection-section,.schedule-display-section{margin-bottom:30px}.section-card{box-shadow:0 4px 6px #0000001a;box-sizing:border-box;padding:25px;width:100%}.section-card *{box-sizing:border-box;max-width:100%}.section-card h2{margin-bottom:20px}.academic-year-info{background:#f0f9ff;border:1px solid #0ea5e9;border-radius:8px;box-sizing:border-box;margin-bottom:25px;padding:20px;width:100%}.academic-year-info h3{color:#0c4a6e;font-size:1.2rem;font-weight:600;margin:0 0 10px}.academic-year-info h3,.academic-year-info p{word-wrap:break-word;overflow-wrap:break-word}.academic-year-info p{color:#0369a1;font-size:.95rem;margin:0}.class-selection-section,.class-selector{box-sizing:border-box;width:100%}.class-selector{align-items:flex-end;display:flex;gap:1rem;margin-top:20px}.class-selector>div{box-sizing:border-box;flex:1 1;min-width:0}.class-select{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-sizing:border-box;font-size:1rem;min-width:0;padding:12px 20px;transition:border-color .2s ease;width:100%}.class-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.edit-details-btn{background:#ff8c42;border:none;border-radius:8px;box-sizing:border-box;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem 1.5rem;transition:background-color .2s ease;white-space:nowrap}.edit-details-btn:hover{background:#e67e22}@media (max-width:768px){.edit-details-btn{white-space:normal;width:100%}}.schedule-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:25px}.schedule-month{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px;transition:all .2s ease}.schedule-month:hover{border-color:#3b82f6;box-shadow:0 4px 12px #0000001a}.schedule-month.scheduled{background:#ecfdf5;border-color:#10b981}.schedule-month.default{background:#fef3c7;border-color:#f59e0b}.month-header{align-items:center;border:1px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.month-header h3{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0}.fee-status{font-size:.8rem;font-weight:600;padding:4px 12px}.fee-status.scheduled{background:#10b981;color:#fff}.fee-status.default{background:#f59e0b;color:#fff}.month-details{display:flex;flex-direction:column;gap:12px}.date-range{flex-direction:column;gap:4px}.date-label{font-size:.8rem}.date-label,.date-value{color:#2c3e50;font-weight:500}.date-value{font-size:.9rem}.fee-info{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:flex;justify-content:space-between;padding:12px}.fee-amount{align-items:baseline;gap:4px}.currency{font-size:.9rem;font-weight:500}.amount{color:#059669;font-size:1.3rem;font-weight:700}.fee-type{color:#2c3e50;font-size:.8rem;letter-spacing:.5px;text-transform:uppercase}.scheduled-details{background:#f0f9ff;border:1px solid #0ea5e9;border-radius:8px;margin-top:10px;padding:12px}.scheduled-date,.scheduled-description{color:#0c4a6e;font-size:.9rem;margin-bottom:4px}.scheduled-description{margin-bottom:0}.due-date-info{background:#f0f9ff;border:1px solid #0ea5e9;border-radius:6px;margin-top:12px;padding:12px}.due-date{color:#1e40af;font-size:.9rem;margin-bottom:6px}.due-date strong{color:#1e40af;font-weight:600}.expiry-info{color:#dc2626;font-size:.85rem;font-weight:500}.expiry-info strong{color:#dc2626;font-weight:600}.month-actions{border:1px solid #e9ecef;display:flex;gap:10px;margin-top:15px;padding-top:15px}.btn-edit-month{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:500;padding:8px 16px;transition:background-color .2s ease}.btn-edit-month:hover:not(:disabled){background:#059669}.btn-edit-month:disabled{background:#fff;cursor:not-allowed}.edit-form-modal{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.edit-form-overlay{background:#00000080;bottom:0;left:0;position:absolute;right:0;top:0}.edit-form-container{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;max-width:600px;overflow-y:auto;padding:0;position:relative;width:90%}.edit-form-header{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:20px 25px}.edit-form-header h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin:0}.close-btn{border-radius:50%;font-size:24px;padding:0;transition:background-color .2s ease}.close-btn:hover{background:#fff}.edit-form{padding:25px}.edit-form .form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:20px}.edit-form .form-group{display:flex;flex-direction:column}.edit-form .form-group label{color:#2c3e50;font-size:.9rem;font-weight:600;margin-bottom:6px}.edit-form .form-input,.edit-form .form-select,.edit-form .form-textarea{border:1px solid #e9ecef;border-radius:6px;font-size:.9rem;padding:10px 12px;transition:border-color .2s ease,box-shadow .2s ease}.edit-form .form-input:focus,.edit-form .form-select:focus,.edit-form .form-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.edit-form .form-textarea{min-height:80px;resize:vertical}.edit-form .form-actions{border:1px solid #e9ecef;display:flex;gap:12px;margin-top:25px;padding-top:20px}.edit-form .btn-primary{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-weight:600;padding:10px 20px;transition:background-color .2s ease}.edit-form .btn-primary:hover{background:#2563eb}.edit-form .btn-secondary{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;flex:1 1;font-weight:600;padding:10px 20px;transition:all .2s ease}.edit-form .btn-secondary:hover{background:#e5e7eb;border-color:#9ca3af;color:#1f2937}@media (max-width:768px){.edit-form-container{margin:20px;width:95%}.edit-form .form-row{gap:15px;grid-template-columns:1fr}.edit-form .form-actions{flex-direction:column}}.no-schedule{border:1px solid #e9ecef;border-radius:8px;padding:60px 20px}.no-schedule p{margin:0}.schedule-summary{border:1px solid #e9ecef;margin-top:30px;padding-top:25px}.schedule-summary h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin-bottom:20px}.summary-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:15px;text-align:center}.summary-item.total{background:#ecfdf5;border-color:#10b981}.summary-label{color:#2c3e50;display:block;font-size:.8rem;font-weight:500;letter-spacing:.5px;margin-bottom:5px;text-transform:uppercase}.summary-value{color:#2c3e50;display:block;font-size:1.2rem;font-weight:700}.summary-item.total .summary-value{color:#059669}@media (max-width:1200px){.schedule-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width:768px){body,html{max-width:100%!important;overflow-x:hidden!important;width:100%!important}.fee-schedule-container{margin:0 auto;overflow-x:hidden;padding:15px}.class-selection-section,.fee-schedule-container{box-sizing:border-box;max-width:100%;width:100%}.section-card{box-sizing:border-box;padding:20px;width:100%}.section-card h2{font-size:1.3rem}.academic-year-info{box-sizing:border-box;padding:15px;width:100%}.academic-year-info h3{font-size:1rem}.academic-year-info p{font-size:.85rem}.class-selector{align-items:stretch;flex-direction:column;gap:1rem}.class-selector>div{width:100%}.class-select{min-width:100%;width:100%}.schedule-grid{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(2,1fr)}.fee-info,.month-header{align-items:flex-start;flex-direction:column;gap:8px}.content-header{box-sizing:border-box;padding:1rem 1.5rem;width:100%}}@media (max-width:480px){body,html{max-width:100%!important;overflow-x:hidden!important;width:100%!important}.fee-schedule-container{margin:0 auto;overflow-x:hidden;padding:10px}.class-selection-section,.fee-schedule-container{box-sizing:border-box;max-width:100%;width:100%}.section-card{border-radius:8px;padding:15px}.section-card h2{font-size:1.2rem;margin-bottom:15px}.academic-year-info{margin-bottom:20px;padding:12px}.academic-year-info h3{font-size:.95rem;margin-bottom:8px}.academic-year-info p{font-size:.8rem}.class-selector{align-items:stretch;flex-direction:column;gap:.75rem;margin-top:15px}.class-select{font-size:.95rem;padding:10px}.summary-grid{grid-template-columns:1fr}.schedule-month{padding:15px}.summary-item{padding:12px}.content-header{box-sizing:border-box;padding:1rem;width:100%}}.student-fees-content-wrapper{box-sizing:border-box;margin-left:250px!important;max-width:100%!important;overflow-x:hidden;padding:0;width:calc(100% - 250px)!important}.student-fees-page-container{background:#f9fafb;box-sizing:border-box;max-width:100%;min-height:calc(100vh - 200px);overflow-x:hidden;padding:32px 24px;width:100%}.student-fees-page-header{background:#fff;border-radius:16px;border-top:4px solid #ff8b3d;box-shadow:0 4px 6px #00000012;box-sizing:border-box;margin-bottom:32px;max-width:100%;padding:48px 40px;text-align:center;width:100%}.student-fees-header-icon{display:block;font-size:48px;margin-bottom:12px;text-align:center}.student-fees-page-title{color:#1f2937;font-size:36px;font-weight:700;margin:0 0 8px;text-align:center}.student-fees-page-subtitle{color:#6b7280;font-size:16px;font-weight:400;margin:0;text-align:center}.student-fees-filters-card{grid-gap:24px;align-items:end;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #00000014;box-sizing:border-box;display:grid;gap:24px;grid-template-columns:1fr 1fr auto;margin-bottom:32px;max-width:100%;padding:32px;width:100%}.filter-label{color:#374151;display:block;font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.filter-select{padding:12px 16px}.filter-select:disabled{color:#9ca3af}.student-fees-loading{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;gap:16px;justify-content:center;padding:48px;text-align:center}.student-fees-loading .loading-spinner{font-size:48px}.student-fees-loading p{color:#6b7280;font-size:15px;margin:0}.student-fees-empty-state{background:#f9fafb;border:2px dashed #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:64px 32px;text-align:center}.empty-state-icon{display:block;font-size:48px}.empty-state-message{font-size:18px}.student-fees-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;box-sizing:border-box;overflow:hidden;width:100%}.student-fees-table{border-collapse:collapse!important;table-layout:fixed!important;width:100%!important}.student-fees-table thead{background:#ff8b3d}.student-fees-table th{border:none!important;box-sizing:border-box!important;color:#fff!important;font-size:15px!important;font-weight:700!important;letter-spacing:.5px!important;text-transform:uppercase!important;vertical-align:middle!important}.student-fees-table th,.student-fees-table th.fee-amount-column,.student-fees-table th.student-name-column{padding:20px 24px!important;text-align:center!important}.fee-amount-column,.student-name-column{box-sizing:border-box!important;padding:20px 24px!important;text-align:center!important;width:50%!important}.actions-column{text-align:center;width:15%}.student-fee-row{border-bottom:1px solid #e5e7eb;transition:background-color .2s ease}.student-fee-row td{box-sizing:border-box}.student-fee-row:hover{background-color:#f9fafb}.student-fee-row:last-child{border-bottom:none}.student-name-cell{box-sizing:border-box!important;padding:20px 24px!important;text-align:center!important;vertical-align:middle!important;width:50%!important}.student-name-wrapper{align-items:center;display:flex;flex-direction:column;gap:6px;text-align:center}.student-name-main{color:#1f2937;font-size:16px;font-weight:700;line-height:1.4;text-align:center}.student-meta-info{color:#6b7280;font-size:13px;font-weight:500;line-height:1.4;text-align:center}.fee-amount-cell{box-sizing:border-box!important;padding:20px 24px!important;text-align:center!important;vertical-align:middle!important;width:50%!important}.fee-amount-wrapper{align-items:center!important;display:flex!important;flex-direction:column!important;gap:6px!important;justify-content:center!important}.fee-amount-main,.fee-amount-wrapper{box-sizing:border-box!important;text-align:center!important;width:100%!important}.fee-amount-main{color:#1f2937!important;display:block!important;font-size:18px!important;font-weight:700!important;line-height:1.4!important;margin:0!important;padding:0!important}.fee-breakdown{align-items:center!important;display:flex!important;flex-direction:column!important;gap:4px!important;margin-top:6px!important}.fee-breakdown,.fee-due,.fee-paid{box-sizing:border-box!important;padding:0!important;text-align:center!important;width:100%!important}.fee-due,.fee-paid{display:block!important;font-size:13px!important;font-weight:500!important;line-height:1.4!important;margin:0!important;white-space:nowrap!important}.fee-paid{color:#10b981!important;margin-bottom:2px!important}.fee-due{color:#ef4444!important}.actions-cell{padding:20px 24px}.edit-fee-btn{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.edit-fee-btn:hover{background:#ff7524;box-shadow:0 2px 8px #ff8b3d4d;transform:translateY(-1px)}.edit-fee-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.edit-fee-modal{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.edit-fee-modal-header{align-items:center;background:#ff8b3d;border-radius:16px 16px 0 0;color:#fff;display:flex;justify-content:space-between;padding:24px 32px}.edit-fee-modal-header h2{color:#fff;font-size:20px;font-weight:700;margin:0}.close-modal-btn{background:#0000;border:none;border-radius:4px;font-size:32px;height:32px;line-height:1;padding:0;transition:background-color .2s ease;width:32px}.close-modal-btn:hover{background:#fff3}.edit-fee-modal-body{padding:32px}.form-input,.form-textarea{border:1.5px solid #e5e7eb;border-radius:8px;box-sizing:border-box;color:#1f2937;font-size:15px;padding:12px 16px;transition:all .2s ease;width:100%}.form-input:focus,.form-textarea:focus{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.form-textarea{min-height:80px;resize:vertical}.edit-fee-modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:24px 32px}.btn-cancel,.btn-save{border:none;border-radius:8px;cursor:pointer;font-size:15px;font-weight:600;padding:12px 24px;transition:all .2s ease}.btn-cancel{background:#f3f4f6;color:#374151}.btn-cancel:hover{background:#e5e7eb}.btn-save{background:#ff8b3d;color:#fff}.btn-save:hover{background:#ff7524;box-shadow:0 2px 8px #ff8b3d4d;transform:translateY(-1px)}.student-fee-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;box-sizing:border-box;margin-bottom:24px;max-width:100%;overflow:hidden;transition:all .3s ease;width:100%}.student-fee-card:hover{box-shadow:0 8px 16px #0000001f;transform:translateY(-4px)}.student-fee-header-orange{align-items:center;background:#ff8b3d;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:24px 32px;width:100%}.student-name-header{color:#fff;flex:1 1;font-size:24px;font-weight:700;margin:0}.fee-status-badges{display:flex;gap:12px}.fee-badge{background:#fff;border-radius:8px;box-shadow:0 2px 6px #0000001a;display:flex;flex-direction:column;font-size:15px;font-weight:700;gap:4px;min-width:120px;padding:10px 20px}.paid-badge{color:#10b981}.due-badge{color:#ef4444}.badge-label{font-size:12px;letter-spacing:.5px;opacity:.8;text-transform:uppercase}.badge-value{font-size:15px;font-weight:700}.student-fee-content{background:#fff;padding:24px 32px}.student-info-row{align-items:center;color:#6b7280;display:flex;font-size:15px;font-weight:500;gap:24px}.info-item{align-items:center;gap:8px}.info-label{color:#374151}.info-value{font-weight:500}.info-separator{border-left:1.5px solid #e5e7eb;height:20px;margin-left:0;padding-left:24px}.fee-details-section{border-top:1px solid #e5e7eb;margin-top:20px;padding-top:20px}.fee-details-header{color:#1f2937;font-size:16px;font-weight:700;margin-bottom:16px}.fee-details-loading{align-items:center;color:#6b7280;display:flex;font-size:15px;gap:12px;justify-content:center;padding:32px}.loading-spinner-small{font-size:20px}.no-fees-message{color:#6b7280;font-size:15px;padding:24px;text-align:center}.fees-list{display:flex;flex-direction:column;gap:12px}.fee-item{align-items:center;background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:12px;display:flex;justify-content:space-between;padding:20px 24px;transition:all .2s ease}.fee-item:hover{border-color:#ff8b3d;box-shadow:0 2px 8px #ff8b3d26}.fee-item.paid{background:#f0fdf4;border-color:#10b981}.fee-item.due{background:#fef2f2;border-color:#ef4444}.fee-item-left{display:flex;flex-direction:column;gap:8px}.fee-month{color:#1f2937;font-size:18px;font-weight:700}.fee-due-date{align-items:center;color:#6b7280;display:flex;font-size:14px;gap:6px}.fee-item-right{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.fee-amount{color:#1f2937;font-size:20px;font-weight:700}.fee-status{font-size:12px;padding:6px 16px}.fee-status.status-paid{background:#10b981;color:#fff}.fee-status.status-due{background:#ef4444;color:#fff}@media (max-width:1024px){.student-fees-filters-card{grid-template-columns:1fr 1fr}.student-fees-page-container{padding:24px 16px}}@media (max-width:768px){.student-fees-content-wrapper{margin-left:0!important;width:100%!important}.student-fees-page-container{padding:16px}.student-fees-table-container{overflow-x:auto}.student-fees-table{min-width:600px}.fee-amount-column,.student-name-column{text-align:center!important;width:50%!important}.fee-amount-column{padding:15px 20px!important}.student-fees-table th,.student-name-cell{box-sizing:border-box!important;padding:15px 20px!important;text-align:center!important}.fee-amount-cell,.student-name-cell{width:50%!important}.fee-amount-cell{box-sizing:border-box!important;padding:15px 20px!important;text-align:center!important}.actions-column{width:20%}.edit-fee-modal{margin:20px;width:95%}.student-fees-page-header{padding:32px 24px}.student-fees-header-icon{font-size:40px}.student-fees-page-title{font-size:28px}.student-fees-page-subtitle{font-size:14px}.student-fees-filters-card{gap:16px;grid-template-columns:1fr;padding:24px}.student-fee-header-orange{align-items:flex-start;flex-direction:column;gap:16px}.fee-status-badges{flex-direction:column;width:100%}.fee-badge{width:100%}.student-info-row{align-items:flex-start;flex-direction:column;gap:12px}.info-separator{display:none}.student-fee-content{padding:20px 24px}}.fee-records-container{box-sizing:border-box;margin:0 auto;max-width:100%;padding:20px;width:100%}.fee-records-table-container{-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #e9ecef;border-radius:8px;margin-bottom:1.5rem;overflow-x:auto;overflow-y:visible;position:relative;scrollbar-color:#ff8c42 #f0f0f0;scrollbar-width:thin}.fee-records-table-container::-webkit-scrollbar{height:8px}.fee-records-table-container::-webkit-scrollbar-track{background:#f0f0f0;border-radius:4px}.fee-records-table-container::-webkit-scrollbar-thumb{background:#ff8c42;border-radius:4px}.fee-records-table-container::-webkit-scrollbar-thumb:hover{background:#e67e22}.fee-records-table-wrapper{display:block;min-width:1000px;width:100%}.fee-records-table-header{background:#ff8c42;border-bottom:2px solid #e67e22;box-sizing:border-box;display:grid;grid-template-columns:3fr 2fr 2.5fr 2fr 3fr;margin:0;padding:0;position:sticky;top:0;width:100%;z-index:10}.fee-records-header-cell{align-items:center;border-right:1px solid #fff3;box-sizing:border-box;color:#fff;display:flex;font-size:.95rem;font-weight:700;letter-spacing:.5px;min-width:0;overflow:hidden;padding:18px 20px;text-align:left;text-transform:uppercase;white-space:nowrap}.fee-records-header-cell:last-child{border-right:none}.fee-records-header-cell.center{justify-content:center;text-align:center}.fee-records-table-row{border-bottom:1px solid #e9ecef;box-sizing:border-box;display:grid;grid-template-columns:3fr 2fr 2.5fr 2fr 3fr;margin:0;padding:0;transition:background-color .2s ease;width:100%}.fee-records-table-row:last-child{border-bottom:none}.fee-records-table-row:hover{background:#f9fafb}.fee-records-table-row.even{background:#fff}.fee-records-table-row.odd{background:#fafafa}.fee-records-table-cell{align-items:center;border-right:1px solid #e9ecef;box-sizing:border-box;display:flex;min-height:70px;min-width:0;padding:18px 20px}.fee-records-table-cell:last-child{border-right:none}.fee-records-table-cell.center{justify-content:center}.fee-records-student-name{color:#1f2937;font-size:.95rem;font-weight:600}.fee-records-roll-number,.fee-records-student-name{word-wrap:break-word;margin:0;overflow-wrap:break-word}.fee-records-roll-number{color:#374151;font-size:.9rem}.fee-records-payment-status{align-items:center;cursor:pointer;display:flex;gap:.75rem;margin:0}.fee-records-checkbox{cursor:pointer;flex-shrink:0;height:22px;margin:0;width:22px}.fee-records-status-badge{border-radius:12px;display:inline-block;font-size:.85rem;font-weight:600;padding:.5rem 1rem;white-space:nowrap}.fee-records-status-badge.paid{background-color:#d1fae5;color:#065f46}.fee-records-status-badge.unpaid{background-color:#fee2e2;color:#991b1b}.fee-records-date-input{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;max-width:180px;padding:.6rem .85rem;transition:all .2s ease;width:100%}.fee-records-date-input:disabled{background:#f9fafb;cursor:not-allowed;opacity:.5}.fee-records-date-input:focus{border-color:#ff8c42;box-shadow:0 0 0 3px #ff8c421a;outline:none}.fee-records-notes-input{border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;padding:.6rem .85rem;transition:all .2s ease;width:100%}.fee-records-notes-input:focus{border-color:#ff8c42;box-shadow:0 0 0 3px #ff8c421a;outline:none}.fee-records-summary{background:#f0f9ff;border:1px solid #bfdbfe;border-radius:8px;margin-top:1.5rem;padding:1.25rem}.fee-records-summary-content{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.fee-records-summary-text{color:#1e40af;font-weight:600;margin-bottom:.5rem}.fee-records-summary-stats{color:#1e3a8a;font-size:.9rem;margin-top:.5rem}.fee-records-students-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.fee-records-students-header h3{color:#2c3e50;font-size:1.25rem;font-weight:600;margin:0}.fee-records-container .form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:2rem}.fee-records-container .section-card{box-sizing:border-box;width:100%}@media (max-width:1200px){.fee-records-table-wrapper{min-width:900px}.fee-records-table-header,.fee-records-table-row{grid-template-columns:3fr 2fr 2.5fr 2fr 3fr}.fee-records-header-cell,.fee-records-table-cell{box-sizing:border-box;padding:18px 20px}}@media (max-width:768px){body,html{max-width:100%!important;overflow-x:hidden!important;width:100%!important}.fee-records-container{box-sizing:border-box;margin:0 auto;max-width:100%;overflow-x:hidden;padding:15px;width:100%}.fee-records-table-container{border-radius:8px;margin-bottom:1rem}.fee-records-table-wrapper{min-width:800px}.fee-records-table-header,.fee-records-table-row{grid-template-columns:2.5fr 1.8fr 2.2fr 1.8fr 2.5fr}.fee-records-header-cell{font-size:.85rem}.fee-records-header-cell,.fee-records-table-cell{box-sizing:border-box;min-width:0;padding:15px 16px}.fee-records-table-cell{min-height:65px}.fee-records-student-name{font-size:.9rem}.fee-records-roll-number{font-size:.85rem}.fee-records-date-input{max-width:160px}.fee-records-date-input,.fee-records-notes-input{font-size:.85rem;padding:.5rem .75rem}.fee-records-students-header{align-items:stretch;flex-direction:column}.fee-records-students-header h3{font-size:1.1rem}.fee-records-summary-content{align-items:stretch;flex-direction:column}.btn-primary{width:100%}.fee-records-container .form-row{gap:15px;grid-template-columns:1fr}.fee-records-container .section-card{padding:20px}.fee-records-container .section-card h2{font-size:1.3rem}.content-header{box-sizing:border-box;padding:1rem 1.5rem;width:100%}}@media (max-width:480px){.fee-records-container{padding:10px}.fee-records-table-wrapper{min-width:700px}.fee-records-table-header,.fee-records-table-row{grid-template-columns:2.2fr 1.5fr 2fr 1.5fr 2.2fr}.fee-records-header-cell{font-size:.8rem}.fee-records-header-cell,.fee-records-table-cell{box-sizing:border-box;min-width:0;padding:12px 14px}.fee-records-table-cell{min-height:60px}.fee-records-student-name{font-size:.85rem}.fee-records-roll-number{font-size:.8rem}.fee-records-status-badge{font-size:.8rem;padding:.4rem .8rem}.fee-records-date-input{max-width:140px}.fee-records-date-input,.fee-records-notes-input{font-size:.8rem;padding:.45rem .65rem}.fee-records-summary{padding:1rem}.fee-records-summary-text{font-size:.9rem}.fee-records-summary-stats{font-size:.85rem}.fee-records-container .form-row{gap:12px;grid-template-columns:1fr}.fee-records-container .section-card{padding:15px}.fee-records-container .section-card h2{font-size:1.2rem}.content-header{box-sizing:border-box;padding:1rem;width:100%}}.attendance-records-container{background:#f9fafb;min-height:100vh;overflow-x:hidden;padding:40px 32px}.attendance-records-container,.records-filters{box-sizing:border-box;max-width:100%;width:100%}.records-filters{align-items:flex-end;background:#fff;border-left:4px solid #3b82f6;border-radius:12px;box-shadow:0 2px 6px #0000000f;display:flex;flex-wrap:wrap;gap:24px;margin-bottom:32px;overflow:hidden;padding:28px 32px}.filter-group{box-sizing:border-box;flex:1 1 auto;gap:10px;max-width:100%;min-width:0}.filter-group label{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.filter-select{-webkit-appearance:none;appearance:none;background:#f9fafb;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;box-sizing:border-box;font-size:15px;font-weight:500;max-width:100%;min-width:200px;padding:12px 3rem 12px 16px;width:100%}.filter-select:focus{background-color:#fff}.filter-select:disabled{background:#f3f4f6;cursor:not-allowed;opacity:.6}.date-range{align-items:flex-end;flex-direction:row;flex-wrap:nowrap;gap:16px;width:100%}.date-range,.date-range>div{box-sizing:border-box;display:flex;max-width:100%;min-width:0}.date-range>div{flex:1 1 auto;flex-direction:column;gap:10px}.date-range label{color:#374151;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.date-range input[type=date]{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;box-sizing:border-box;color:#1f2937;cursor:pointer;font-size:15px;font-weight:500;max-width:100%;min-width:0;padding:12px 16px;transition:all .2s ease;width:100%}.date-range input[type=date]:focus{background-color:#fff;border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.search-sort{align-items:flex-end;box-sizing:border-box;display:flex;flex:1 1;gap:12px;max-width:100%;min-width:300px;min-width:0}.search-sort input[type=text]{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;color:#1f2937;flex:1 1;font-size:15px;font-weight:500;padding:12px 16px 12px 44px;position:relative;transition:all .2s ease}.search-sort input[type=text]::placeholder{color:#9ca3af}.search-sort input[type=text]:focus{background-color:#fff;border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.search-sort input[type=text]{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E");background-position:left 16px center;background-repeat:no-repeat;background-size:18px 18px}.search-sort select{-webkit-appearance:none;appearance:none;background:#f9fafb;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;border:1.5px solid #e5e7eb;border-radius:8px;color:#1f2937;cursor:pointer;font-size:15px;font-weight:500;min-width:150px;padding:12px 3rem 12px 16px;transition:all .2s ease}.search-sort select:focus{background-color:#fff;border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.mark-actions{align-items:flex-end;box-sizing:border-box;display:flex;flex-shrink:0;max-width:100%;min-width:0;width:100%}.mark-actions .btn-primary{background:#ff8b3d;border:none;border-radius:8px;box-shadow:0 2px 8px #ff8b3d4d;box-sizing:border-box;color:#fff;cursor:pointer;font-size:15px;font-weight:600;max-width:100%;padding:12px 32px;transition:all .2s ease;white-space:nowrap}.mark-actions .btn-primary:hover:not(:disabled){background:#ff7524;box-shadow:0 4px 12px #ff8b3d66;transform:translateY(-2px)}.mark-actions .btn-primary:disabled{background:#d1d5db;box-shadow:none;color:#9ca3af;cursor:not-allowed;transform:none}.stat-card-orange{border-top-color:#ff8b3d}.stat-card-green{border-top-color:#10b981}.stat-card-red{border-top-color:#ef4444}.stat-card-purple{border-top-color:#8b5cf6}.date-text{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-count-badge{flex-shrink:0;white-space:nowrap}.students-grid{margin-bottom:16px}.student-card{align-items:center;display:flex;flex-direction:column;padding:20px;text-align:center}.student-card:hover{transform:translateY(-2px)}.student-name{font-size:18px;margin-bottom:12px}.student-card .teacher-name,.student-name{display:block;text-align:center!important;width:100%}.student-card .teacher-name{color:#1f2937!important;font-size:14px;font-weight:600;margin:0 auto 20px}.student-id-badge{background:#f9fafb;border-radius:6px;color:#6b7280;display:inline-flex;font-size:13px;font-weight:600;margin:0 auto 16px;padding:8px 14px;text-align:center}.status-badge,.student-id-badge{align-items:center;justify-content:center}.status-badge{display:flex;font-size:14px;gap:8px;padding:10px 16px}.status-badge.present{background:#10b981;color:#fff}.status-badge.absent{background:#ef4444;color:#fff}.status-badge svg{height:16px;width:16px}.pagination-controls{align-items:center;display:flex;gap:16px;justify-content:center;margin-top:32px;padding:24px}.page-btn{background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.page-btn:hover:not(:disabled){border-color:#ff8b3d;color:#ff8b3d}.page-btn:disabled{cursor:not-allowed;opacity:.5}.page-info{font-size:14px;font-weight:600}.loading-container,.page-info{color:#6b7280}.no-records,.select-prompt{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;padding:80px 60px;text-align:center}.no-records-icon,.select-prompt-icon{color:#d1d5db;font-size:80px;margin-bottom:1.5rem;opacity:.7}.no-records h3,.select-prompt h3{color:#1f2937;font-size:1.5rem;font-weight:700;margin-bottom:1rem}.no-records p,.select-prompt p{color:#6b7280;font-size:1rem;font-weight:500;margin-bottom:.5rem}@media (max-width:768px){body,html{max-width:100%!important;overflow-x:hidden!important;width:100%!important}.attendance-records-container{box-sizing:border-box;max-width:100%;overflow-x:hidden;padding:20px 16px;width:100%}.records-header-card{box-sizing:border-box;padding:32px 24px;width:100%}.records-title{font-size:28px}.records-icon{font-size:36px}.records-filters{align-items:stretch;flex-direction:column;gap:20px;padding:20px 24px}.date-range input[type=date],.filter-select,.search-sort input[type=text],.search-sort select{min-width:100%;width:100%}.date-range{flex-direction:column;flex-wrap:wrap;gap:16px}.date-range,.date-range>div{box-sizing:border-box;max-width:100%;width:100%}.date-range>div{flex:1 1;min-width:0}.date-range input[type=date]{min-width:0}.date-range input[type=date],.mark-actions{box-sizing:border-box;max-width:100%;width:100%}.mark-actions{align-items:center;display:flex;justify-content:center}.mark-actions .btn-primary{padding:14px 24px}.filter-group,.mark-actions .btn-primary{box-sizing:border-box;max-width:100%;width:100%}.filter-select{max-width:100%;min-width:0;width:100%}.attendance-stats-grid{gap:16px;grid-template-columns:repeat(2,1fr)}.students-grid{gap:16px;grid-template-columns:1fr}.date-group-header{align-items:center;flex-direction:row;flex-wrap:nowrap;gap:12px;justify-content:space-between}.date-text{flex:1 1;font-size:16px;min-width:0}.date-count-badge{flex-shrink:0;white-space:nowrap}}@media (min-width:769px) and (max-width:1024px){.attendance-stats-grid,.students-grid{grid-template-columns:repeat(2,1fr)}}.school-homework{box-sizing:border-box;margin:0 auto;max-width:1200px;padding:2rem;width:100%}.homework-header h1{color:#2c3e50;font-size:2.5rem;font-weight:600;margin-bottom:.5rem}.homework-header p{color:#2c3e50;font-size:1.2rem}.selection-container{align-items:end;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;display:flex;gap:2rem;margin-bottom:2rem;padding:1.5rem}.selection-group{flex:1 1}.selection-group label{color:#2c3e50;display:block;font-size:1rem;font-weight:600;margin-bottom:.5rem}.selection-dropdown{background:#fff;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;padding:.75rem 1rem;transition:all .3s ease;width:100%}.selection-dropdown:focus{border-color:#ff8c42;box-shadow:0 0 0 3px #3498db1a;outline:none}.selection-dropdown:disabled{background:#fff;color:#2c3e50;cursor:not-allowed}.homework-date-navigation{grid-column-gap:1rem;grid-row-gap:.75rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 15px #0000001a;box-sizing:border-box;column-gap:1rem;display:grid;grid-template-columns:auto 1fr auto;margin-bottom:2rem;padding:1rem 1.25rem;row-gap:.75rem;width:100%}.nav-btn{background:#ff8c42;color:#2c3e50;font-size:.9rem;padding:.75rem 1.5rem;transition:all .3s ease}.nav-btn:hover:not(:disabled){background:#e67a35;box-shadow:0 4px 12px #007bff4d;transform:translateY(-2px)}.nav-btn:disabled{background:#fff}.current-date{background:#e3f2fd;border:2px solid #2196f3;border-radius:8px;box-sizing:border-box;justify-self:center;min-width:220px;padding:.85rem 1rem}.homework-filters-inline{align-items:center;display:flex;gap:.75rem;grid-column:1/-1;justify-content:flex-end}.homework-filters-inline .selection-dropdown,.homework-filters-inline input[type=text]{background:#fff;color:#2c3e50;min-width:180px}.homework-filters-inline input[type=text]{min-width:240px}.btn-primary{padding:.6rem 1rem;transition:all .2s ease}.btn-primary:hover{box-shadow:0 6px 16px #2980b940}.download-link{color:#2563eb;display:block;margin-top:.5rem;text-decoration:none}.download-link:hover{text-decoration:underline}.published-badge{background:#10b981}.draft-badge,.published-badge{border-radius:6px;color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .5rem}.draft-badge{background:#f59e0b}.current-date h3{color:#000;font-size:1.1rem;margin:0 0 .5rem}.date-info{color:#000;font-size:.9rem;font-weight:500}.homework-content{margin-top:2rem}.homework-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:1rem}.homework-card{border-radius:12px;box-shadow:0 4px 15px #0000001a;transition:transform .3s ease,box-shadow .3s ease}.homework-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-5px)}.homework-header-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem}.homework-header-card h4{font-size:1.3rem;margin:0 0 1rem}.homework-meta{display:flex;flex-direction:column;gap:.5rem}.homework-subject,.homework-teacher{background:#fff3;border-radius:6px;font-size:.9rem;font-weight:500;padding:.5rem .75rem}.homework-teacher{color:#000!important}.homework-details{padding:1.5rem}.homework-description{margin-bottom:1.5rem}.homework-description p{color:#2c3e50}.homework-dates{border-top:1px solid #e0e0e0;gap:.75rem}.assigned-date,.due-date{color:#000!important;font-size:.9rem}.assigned-date strong,.due-date strong{color:#000!important}.no-homework{border-radius:12px;box-shadow:0 2px 10px #0000001a}.no-homework-icon{font-size:4rem}.no-homework p{color:#2c3e50;font-size:1.1rem;margin-bottom:.5rem}.selection-prompt{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:4rem 2rem;text-align:center}.prompt-icon{font-size:5rem;margin-bottom:1.5rem}.selection-prompt h3{color:#2c3e50;font-size:1.8rem;margin-bottom:1rem}.selection-prompt p{color:#2c3e50;font-size:1.2rem}.loading-container{padding:3rem 2rem}.loading-spinner{border:4px solid #f3f3f3;border-top-color:#ff8c42;margin:0 auto 1rem}@media (max-width:768px){body,html{max-width:100%!important;overflow-x:hidden!important;width:100%!important}.school-homework{box-sizing:border-box;margin:0 auto;max-width:100%;overflow-x:hidden;padding:1rem;width:100%}.homework-header{box-sizing:border-box;text-align:center;width:100%}.homework-header h1{font-size:2rem;margin:0 auto .5rem;text-align:center}.homework-header p{margin:0 auto;text-align:center}.selection-container{align-items:stretch;flex-direction:column;gap:1rem}.homework-date-navigation,.selection-container,.selection-group{box-sizing:border-box;max-width:100%;width:100%}.homework-date-navigation{gap:1rem;grid-template-columns:1fr;justify-items:center}.nav-btn{font-size:.9rem;margin:0 auto;max-width:200px;padding:.75rem 1.5rem;width:100%}.current-date{justify-self:center;max-width:100%;min-width:auto;text-align:center;width:100%}.homework-filters-inline{align-items:stretch;flex-direction:column;gap:.75rem;max-width:100%;width:100%}.homework-filters-inline .selection-dropdown,.homework-filters-inline input[type=text]{box-sizing:border-box;max-width:100%;min-width:0;width:100%}.homework-grid{grid-template-columns:1fr}.homework-card,.homework-grid{box-sizing:border-box;max-width:100%;width:100%}.homework-header-card,.homework-header-card h4,.homework-meta{text-align:center}.homework-meta{align-items:center;flex-direction:column}.homework-subject,.homework-teacher{max-width:100%;text-align:center;width:100%}.homework-dates,.homework-description,.homework-description p,.homework-details{text-align:center}.homework-dates{align-items:center}.assigned-date,.due-date{justify-content:center;text-align:center}.loading-container,.no-homework,.selection-prompt{box-sizing:border-box;max-width:100%;width:100%}}.add-transport-person-container{box-sizing:border-box;margin:0 auto;max-width:800px;padding:20px;width:100%}.section-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:30px}.section-card h2{align-items:center;color:#2c3e50;display:flex;font-size:1.5rem;font-weight:600;gap:10px;margin-bottom:10px}.section-description{color:#2c3e50;font-size:.95rem;line-height:1.5;margin-bottom:25px}.transport-person-form{display:flex;flex-direction:column;gap:20px}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.form-row.three-columns{grid-template-columns:1fr 1fr 1fr}.form-group label{font-size:.9rem}.form-input{background:#fff;border:1px solid #e9ecef;border-radius:8px;font-size:.95rem;padding:12px 16px;transition:border-color .2s ease,box-shadow .2s ease}.form-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-input.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.error-message{font-size:.8rem;font-weight:500;margin-top:4px}.form-actions{gap:15px;margin-top:25px}.btn-primary{background:#3b82f6;border-radius:8px;flex:1 1;font-size:.95rem;font-weight:600;padding:12px 24px}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-primary:disabled{background:#fff}.btn-secondary{border-radius:8px;flex:1 1;font-size:.95rem;font-weight:600;padding:12px 24px}@media (max-width:768px){.main-content{margin-left:0!important}.content-body,.main-content{box-sizing:border-box;max-width:100%!important;overflow-x:hidden;width:100%!important}.content-body,.content-header{padding:1rem!important}.content-header{box-sizing:border-box;max-width:100%!important;width:100%!important}.add-transport-person-container{margin:0;padding:15px}.add-transport-person-container,.section-card{box-sizing:border-box;max-width:100%;overflow-x:hidden;width:100%}.section-card{padding:20px}.section-card h2{font-size:1.25rem}.section-description{font-size:.9rem}.transport-person-form{overflow-x:hidden}.form-row,.transport-person-form{box-sizing:border-box;max-width:100%;width:100%}.form-row{gap:15px}.form-row,.form-row.three-columns{grid-template-columns:1fr!important}.form-actions,.form-group,.form-input{box-sizing:border-box;max-width:100%;width:100%}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{box-sizing:border-box;flex:none;max-width:100%;width:100%}}@media (max-width:480px){.add-transport-person-container{padding:10px}.add-transport-person-container,.section-card{box-sizing:border-box;max-width:100%!important;width:100%!important}.section-card{border-radius:8px;overflow-x:hidden;padding:15px}.section-card h2{font-size:1.1rem;margin-bottom:8px}.section-description{font-size:.85rem;margin-bottom:20px}.form-row{gap:12px}.form-input,.form-row{box-sizing:border-box;max-width:100%!important;width:100%!important}.form-input{font-size:.9rem;padding:10px 14px}.form-group{box-sizing:border-box;max-width:100%!important;width:100%!important}.form-group label{font-size:.85rem}.form-actions{gap:10px;margin-top:20px;padding-top:15px}.btn-primary,.btn-secondary,.form-actions{box-sizing:border-box;max-width:100%!important;width:100%!important}.btn-primary,.btn-secondary{font-size:.9rem;padding:10px 20px}.profile-picture-preview img{height:100px;width:100px}.error-message{word-wrap:break-word;font-size:.75rem;max-width:100%;overflow-wrap:break-word}}.loading-spinner{border-top:4px solid #3b82f6}.error-container h2{color:#ef4444}.form-input:valid{border-color:#10b981}.form-input:invalid:not(:placeholder-shown){border-color:#ef4444}.form-group.success .form-input{background-color:#f0fdf4;border-color:#10b981}.form-input:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.form-input::placeholder{color:#2c3e50;font-style:italic}.section-card h2:before{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="1" y="3" width="15" height="13"></rect><polygon points="16,8 20,8 23,11 23,16 16,16"></polygon><circle cx="5.5" cy="18.5" r="2.5"></circle><circle cx="18.5" cy="18.5" r="2.5"></circle></svg>');background-repeat:no-repeat;background-size:contain;content:"";display:inline-block;height:24px;width:24px}.transport-person-form.submitting{opacity:.7;pointer-events:none}.form-group:hover .form-input:not(:focus){border-color:#2c3e50}.btn-primary:active,.btn-secondary:active{transform:translateY(1px)}.file-input{background:#fff;border:2px dashed #3b82f6;border-radius:8px;cursor:pointer;padding:.5rem;transition:all .3s ease}.file-input:hover{background:#e3f2fd;border-color:#2563eb}.form-hint{color:#2c3e50;display:block;font-size:.8rem;margin-top:.5rem}.profile-picture-preview{align-items:flex-start;display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.profile-picture-preview img{border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 8px #0000001a;height:120px;object-fit:cover;width:120px}.remove-picture-btn{background:#dc2626;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.remove-picture-btn:hover{background:#b91c1c;box-shadow:0 2px 4px #dc26264d;transform:translateY(-1px)}.notices-page-container{background:#f9fafb;box-sizing:border-box;max-width:100%;min-height:100vh;overflow-x:hidden;padding:32px 24px;width:100%}.notices-container{box-sizing:border-box;margin:0 auto;max-width:1400px;width:100%}.branch-filter-row{max-width:1400px;padding:0 24px}.add-notice-header-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:16px;border-top:4px solid #ff8b3d;box-shadow:0 4px 6px #00000012;box-sizing:border-box;display:flex;justify-content:space-between;margin-bottom:32px;padding:28px 32px;width:100%}.add-notice-header-left{align-items:center;display:flex;gap:12px}.add-notice-header-icon{color:#ff8b3d;font-size:28px}.add-notice-header-title{color:#1f2937;font-size:22px;font-weight:700;margin:0}.add-notice-plus-btn{align-items:center;background:#ff8b3d;border:none;border-radius:50%;box-shadow:0 4px 12px #ff8b3d4d;color:#fff;cursor:pointer;display:flex;font-size:24px;height:48px;justify-content:center;transition:all .3s ease;width:48px}.add-notice-plus-btn:hover{background:#ff7524;box-shadow:0 6px 16px #ff8b3d66;transform:scale(1.1)}.add-notice-form-container{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 4px 12px #0000001a;box-sizing:border-box;margin-bottom:32px;padding:40px;width:100%}.add-notice-form-title{border-bottom:2px solid #f3f4f6;color:#1f2937;font-size:24px;font-weight:700;margin:0 0 32px;padding-bottom:20px;text-align:center}.notices-form-grid{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:repeat(2,1fr)}.notices-form-label{color:#374151;display:block;font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.notices-form-input,.notices-form-select,.notices-form-textarea{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:15px;padding:12px 16px;transition:all .2s ease;width:100%}.notices-form-input:focus,.notices-form-select:focus,.notices-form-textarea:focus{background:#fff;border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.notices-form-textarea-wrapper{grid-column:1/-1}.notices-form-textarea{min-height:150px;resize:vertical}.notices-form-bottom-row{grid-gap:24px;display:grid;gap:24px;grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.notices-form-actions{display:flex;gap:16px;grid-column:1/-1;justify-content:center;margin-top:24px}.notices-add-btn{align-items:center;background:#ff8b3d;border:none;border-radius:10px;box-shadow:0 4px 14px #ff8b3d66;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:8px;padding:14px 48px;transition:all .3s ease}.notices-add-btn:hover{background:#ff7524;box-shadow:0 6px 18px #ff8b3d80;transform:translateY(-2px)}.notices-cancel-btn{align-items:center;background:#fff;border:2px solid #ef4444;border-radius:50%;color:#ef4444;cursor:pointer;display:flex;font-size:24px;height:48px;justify-content:center;transition:all .3s ease;width:48px}.notices-cancel-btn:hover{background:#fee2e2}.all-notices-header-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:16px;border-top:4px solid #ff8b3d;box-shadow:0 4px 6px #00000012;box-sizing:border-box;display:flex;gap:12px;margin-bottom:32px;padding:28px 32px;width:100%}.all-notices-header-icon{color:#ff8b3d;font-size:28px}.all-notices-header-title{color:#1f2937;font-size:22px;font-weight:700;margin:0}.notices-grid{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:32px}.notice-card{align-self:start;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;height:fit-content;padding:24px;transition:all .3s ease}.notice-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-6px)}.notice-card.expired{border-left:4px solid #ef4444}.notice-card-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.notice-card-header-left{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.priority-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:11px;font-weight:700;gap:6px;padding:6px 12px;text-transform:uppercase;white-space:nowrap}.priority-badge.normal{background:#d1fae5;color:#065f46}.priority-badge.medium{background:#fef3c7;color:#92400e}.priority-badge.high{background:#fee2e2;color:#991b1b}.audience-badge{align-items:center;background:#ede9fe;border-radius:20px;color:#5b21b6;display:inline-flex;font-size:11px;font-weight:700;gap:6px;padding:6px 12px;white-space:nowrap}.notice-card-header-right{display:flex;gap:8px;margin-left:auto;position:relative;z-index:10}.notice-edit-icon{align-items:center;border-radius:6px;color:#4361ee;cursor:pointer;display:inline-flex;font-size:18px;justify-content:center;padding:6px;pointer-events:auto;position:relative;transition:all .2s;-webkit-user-select:none;user-select:none;z-index:10}.notice-edit-icon:hover{background:#eff6ff}.notice-delete-icon{align-items:center;border-radius:6px;color:#9ca3af;cursor:pointer;display:inline-flex;font-size:18px;justify-content:center;padding:6px;pointer-events:auto;position:relative;transition:all .2s;-webkit-user-select:none;user-select:none;z-index:10}.notice-delete-icon:hover{background:#fee2e2;color:#ef4444}.notice-card-title{color:#1f2937;font-size:20px;font-weight:700;line-height:1.3;margin:16px 0;text-align:center;word-break:break-word}.notice-card-content{-webkit-line-clamp:4;-webkit-box-orient:vertical;color:#6b7280;display:-webkit-box;font-size:14px;font-weight:400;line-height:1.6;margin-bottom:16px;overflow:hidden;text-align:center}.notice-card-footer{border-top:1px solid #f3f4f6;display:flex;flex-direction:column;gap:8px;padding-top:16px}.notice-date-row{align-items:center;color:#6b7280;display:flex;font-size:13px;gap:8px;justify-content:center}.notice-calendar-icon{color:#4361ee;font-size:16px}.notice-status-row{align-items:center;display:flex;font-size:13px;gap:8px;justify-content:center}.notice-status-badge{border-radius:12px;font-size:12px;font-weight:600;padding:6px 12px}.notice-status-badge.sent{background:#d1fae5;color:#065f46}.notice-status-badge.draft{background:#fef3c7;color:#92400e}.notice-expiry-warning{align-items:center;color:#ef4444;display:flex;font-size:12px;font-style:italic;font-weight:600;gap:6px;justify-content:center;margin-top:4px}.no-notices{border:2px dashed #e5e7eb;border-radius:16px;padding:64px 32px}.no-notices-icon{font-size:64px;margin-bottom:16px;opacity:.3}.no-notices h3{color:#1f2937;font-size:20px;font-weight:700;margin:0 0 8px}.no-notices p{color:#6b7280;font-size:14px}@media (max-width:768px){body,html{max-width:100%!important;overflow-x:hidden!important;width:100%!important}.notices-page-container{box-sizing:border-box;overflow-x:hidden;padding:20px 12px}.notices-container,.notices-page-container{max-width:100%;width:100%}.add-notice-header-card{align-items:center;flex-direction:column;gap:16px;margin:16px 12px 20px;padding:20px}.add-notice-header-left,.all-notices-header-card{flex-direction:column;text-align:center}.all-notices-header-card{margin:16px 12px 20px;padding:20px}.add-notice-form-container{margin:0 12px 20px;padding:28px 20px}.notices-form-bottom-row,.notices-form-grid{gap:16px;grid-template-columns:1fr}.notices-form-actions{flex-direction:column}.notices-add-btn{justify-content:center;width:100%}.notices-grid{gap:16px;grid-template-columns:1fr;margin:0 12px 20px}.notice-card{margin:0;padding:20px}}.school-dashboard,body,html{max-width:100%;overflow-x:hidden}.my-account-container{margin:0 auto;padding:20px;width:100%}.my-account-container,.school-dashboard .content-body,.school-dashboard .main-content{box-sizing:border-box;max-width:100%;overflow-x:hidden}.success-message{align-items:center;background:#d4edda;border:1px solid #c3e6cb;border-radius:8px;color:#155724;display:flex;gap:8px;margin-bottom:20px;padding:12px 16px}.success-icon{font-size:16px}.account-info-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;box-sizing:border-box;max-width:100%;overflow:hidden}.card-header{align-items:center;background:linear-gradient(135deg,#ff8c42,#e67a35);color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.card-header h2{font-size:24px;font-weight:600;margin:0}.edit-btn{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:6px;padding:8px 16px;transition:all .3s ease}.edit-btn:hover{background:#ffffff4d;transform:translateY(-1px)}.edit-icon{font-size:14px}.edit-form{overflow-x:hidden;padding:24px}.edit-form,.form-grid{box-sizing:border-box;max-width:100%}.form-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.form-group.full-width{grid-column:1/-1}.form-group label{color:#2c3e50;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1px solid #e9ecef;border-radius:8px;font-size:14px;padding:12px;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#ff8c42;box-shadow:0 0 0 3px #3498db1a;outline:none}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#ef4444}.error-text{font-size:12px}.form-actions{border:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding-top:20px}.btn-primary,.btn-secondary{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#ff8c42,#e67a35)}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #3498db4d;transform:translateY(-1px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-secondary{border:1px solid #e9ecef;color:#2c3e50}.btn-secondary:hover:not(:disabled){background:#fff;transform:translateY(-1px)}.btn-secondary:disabled{cursor:not-allowed;opacity:.6}.info-display{overflow-x:hidden;padding:24px}.info-display,.info-grid{box-sizing:border-box;max-width:100%}.info-grid{grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.info-item{word-wrap:break-word;background:#fff;border-left:4px solid #ff8c42;border-radius:8px;min-height:80px;overflow-wrap:break-word;padding:20px;word-break:break-word}.info-item.full-width{grid-column:1/-1}.info-item label{color:#2c3e50;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.info-item span{color:#111827;font-size:16px;font-weight:500;line-height:1.4}.info-item a,.info-item span{word-wrap:break-word;max-width:100%;overflow-wrap:break-word;word-break:break-word}.info-item a{color:#ff8c42;text-decoration:none}.info-item a:hover{text-decoration:underline}.description-text{background:#fff;border-left:4px solid #ff8c42;border-radius:8px;color:#2c3e50;font-size:14px;line-height:1.6;margin:0;padding:16px}@media (max-width:1200px){.my-account-container{padding:16px}.form-grid,.info-grid{gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media (max-width:1024px){.form-grid,.info-grid{gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media (max-width:768px){.my-account-container{padding:12px}.card-header{align-items:center;flex-direction:column;gap:16px;text-align:center}.card-header h2{text-align:center;width:100%}.edit-btn{justify-content:center;max-width:300px;width:100%}.form-grid,.info-grid{gap:16px;grid-template-columns:1fr}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}.edit-form,.info-display{padding:16px}}@media (max-width:480px){.my-account-container{padding:8px}.card-header h2{font-size:20px}.edit-form,.info-display{padding:12px}.form-group input,.form-group select,.form-group textarea{padding:10px}.info-item{padding:16px}}.home-container{align-items:center;background:#f9fafb;display:flex;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;justify-content:center;min-height:100vh;padding:20px}.home-main{max-width:500px;width:100%}.login-container{background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012,0 2px 4px #0000000d;overflow:hidden;width:100%}.nexy-logo-container{margin-bottom:32px;margin-top:20px;padding:0 20px;text-align:center}.nexy-logo{margin:0 auto}.role-tabs{background:#fff;border-bottom:2px solid #e5e7eb;display:flex;gap:0;justify-content:center;margin-bottom:40px}.role-tab{background:#0000;border:none;cursor:pointer;flex:1 1;margin:0;padding:16px 0;position:relative;transition:all .2s ease;width:33.333%}.role-tab:hover:not(.active){background:#f9fafb;color:#374151}.role-tab.active{border-bottom:3px solid #ff8b3d;color:#ff8b3d;font-weight:600}.role-tab:not(.active){border-bottom:3px solid #0000;color:#6b7280;font-weight:500}.role-tab:not(.active):hover{border-bottom:3px solid #d1d5db}.tab-content{align-items:center;display:flex;flex-direction:column;gap:4px}.tab-icon{font-size:32px;line-height:1;margin-bottom:0}.role-tab span{font-size:16px;font-weight:inherit;letter-spacing:.01em;text-align:center}.login-form-container{padding:40px}.login-form-container h2{color:#1f2937;font-size:28px;font-weight:700;margin-bottom:32px;margin-top:0;text-align:center}.error-message{box-sizing:border-box;color:#dc2626;width:100%}.login-form{margin:0;padding:0;width:100%}.login-form>*{margin:0}.form-group{margin-bottom:20px}.form-group:last-of-type{margin-bottom:4px!important}.form-group label{width:100%}.remember-me-container{margin-bottom:0!important;margin-top:-16px!important;padding:0!important}.remember-me-label{gap:10px}.login-button{box-sizing:border-box;margin-top:8px!important;text-transform:capitalize}.login-button:disabled{background:#d1d5db;box-shadow:none}.help-links{font-size:14px;margin-top:0;text-align:center;width:100%}.help-links a{display:inline}.divider{color:#6b7280;margin:0 8px}.transporter-link{font-size:14px;margin-top:16px;text-align:center;width:100%}.transporter-link a{color:#ff8b3d;display:block;text-decoration:none}.transporter-link a:hover{text-decoration:underline}.transporter-prompt{color:#374151;font-size:14px;margin-top:20px;text-align:center}.transporter-login-btn{background:#fff;border:1px solid #ff8b3d;border-radius:12px;color:#ff8b3d;margin-top:8px;padding:10px 20px}.transporter-login-btn:hover{background:#fff2e6;transform:translateY(-1px)}.role-description{border-top:1px solid #e5e7eb;box-sizing:border-box;color:#6b7280;font-size:14px;line-height:1.5;margin-top:24px;padding-top:24px;text-align:center;width:100%}@media (max-width:640px){.home-container{padding:0}.login-container{border-radius:0;box-shadow:none}.nexy-logo{max-width:140px}.nexy-logo-container{margin-bottom:24px;margin-top:20px}.role-tabs{margin-bottom:32px}.role-tab{padding:12px 0}.tab-icon{font-size:28px}.role-tab span{font-size:14px}.login-form-container{padding:32px 24px}.login-form-container h2{font-size:24px;margin-bottom:24px}.form-group{margin-bottom:20px}.form-group input{font-size:14px;padding:12px 14px}.login-button{font-size:15px;padding:14px}}.placeholder-dashboard{display:flex;flex-direction:column;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh}.placeholder-header{align-items:center;background-color:#ff8c42;box-shadow:0 2px 5px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:1rem 2rem}.placeholder-header h1{font-size:1.8rem;margin:0}.logout-button,.user-name{color:#fff;font-weight:500}.logout-button{background:none;border:2px solid #fff9;border-radius:4px;cursor:pointer;padding:.5rem 1rem;text-decoration:none;transition:all .2s ease}.logout-button:hover{background-color:#fff3}.user-credentials{background-color:#fff;border-left:4px solid #ff8c42;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.user-credentials p{color:#2c3e50;margin:.5rem 0}.loading{align-items:center;color:#ff8c42;font-size:1.2rem;height:100vh}.loading,.placeholder-main{display:flex;justify-content:center}.placeholder-main{background-color:#2c3e50;flex:1 1;padding:2rem}.placeholder-content{background-color:#fff;border-radius:8px;box-shadow:0 4px 10px #0000001a;max-width:800px;padding:2rem;text-align:center;width:100%}.placeholder-icon{font-size:4rem;margin-bottom:1rem}.placeholder-content h2,.placeholder-message{color:#2c3e50;margin-bottom:1.5rem}.placeholder-message{font-size:1.1rem}.feature-list{margin:0 auto 2rem;max-width:500px;padding-left:2rem;text-align:left}.feature-list li{color:#34495e;line-height:1.4;margin-bottom:.8rem}.action-buttons{margin-top:2rem}.action-button{background-color:#ff8c42;border-radius:4px;color:#fff;display:inline-block;font-weight:500;padding:.8rem 1.5rem;text-decoration:none;transition:background-color .2s ease}.action-button:hover{background-color:#e67a35}.placeholder-footer{background-color:#2c3e50;color:#fff;font-size:.9rem;padding:1rem;text-align:center}.placeholder-footer p{margin:0}@media (max-width:768px){.placeholder-header{flex-direction:column;gap:1rem;padding:1rem}.placeholder-header h1{font-size:1.5rem}.placeholder-main{padding:1rem}.placeholder-content{padding:1.5rem}}.transporter-login-container{background-color:#f9fafb;box-sizing:border-box;display:flex;flex-direction:column;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;padding:20px}.transporter-login-main{align-items:center;box-sizing:border-box;display:flex;flex:1 1;justify-content:center;width:100%}.transporter-login-card{animation:fadeIn .4s ease-out;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014,0 4px 16px #0000000a;margin:0 auto;max-width:480px;padding:48px 40px;width:100%}.transporter-login-logo{display:block;height:auto;margin:0 auto 32px;max-width:160px;width:100%}.transport-icon-wrapper{align-items:center;color:#ff8b3d;display:flex;justify-content:center;margin-bottom:20px}.transporter-login-form-container{width:100%}.transporter-login-form-container h2{color:#1f2937;font-size:28px;font-weight:700;margin:0 0 8px;text-align:center}.form-subtitle{font-size:15px;margin:0 0 36px;text-align:center}.transporter-login-form{width:100%}.form-group{margin-bottom:24px;width:100%}.form-group label{display:block;margin-bottom:8px}.form-group input::placeholder{color:#9ca3af;font-weight:400}.form-group input:hover:not(:focus){border-color:#d1d5db}.form-group input:disabled{background-color:#f9fafb;opacity:.7}.error-text{color:#ef4444;display:block;font-size:13px;margin-top:4px}.password-input-container{align-items:center;display:flex;position:relative;width:100%}.password-input-container input{padding-right:50px}.password-toggle-btn{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:8px;position:absolute;right:16px;top:50%;transform:translateY(-50%);transition:color .2s ease;z-index:2}.password-toggle-btn:hover{color:#374151}.password-toggle-btn:focus{color:#374151;outline:none}.password-toggle-btn:disabled{cursor:not-allowed;opacity:.5}.remember-me-container{align-items:center;display:flex;gap:8px;margin-bottom:40px!important}.remember-me-container+.transporter-login-btn{margin-top:40px!important}.remember-me-label{align-items:center;cursor:pointer;display:flex;gap:8px}.remember-me-checkbox{accent-color:#ff8b3d;border:2px solid #d1d5db;border-radius:4px;cursor:pointer;flex-shrink:0;height:18px;margin:0;width:18px}.remember-me-checkbox:checked{background-color:#ff8b3d;border-color:#ff8b3d}.remember-me-text{color:#374151;font-size:14px;-webkit-user-select:none;user-select:none}.error-message{animation:shake .4s ease-in-out;background-color:#fee2e2;border:1px solid #fecaca;color:#991b1b;margin-bottom:24px}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-10px)}75%{transform:translateX(10px)}}.transporter-login-btn{align-items:center;background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;margin-bottom:24px;margin-top:32px!important;padding:16px;text-transform:capitalize;transition:all .2s ease;width:100%}.transporter-login-btn:hover:not(:disabled){background:#ff7524;box-shadow:0 6px 20px #ff8b3d59;transform:translateY(-2px)}.transporter-login-btn:active:not(:disabled){box-shadow:0 2px 8px #ff8b3d4d;transform:translateY(0)}.transporter-login-btn:disabled{cursor:not-allowed;opacity:.8;transform:none}.transporter-login-btn .spinner{animation:spin 1s linear infinite}.help-links{align-items:center;display:flex;gap:12px;justify-content:center;margin-bottom:20px}.help-links a{color:#ff8b3d;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s ease}.help-links a:hover{color:#ff7524;text-decoration:underline}.divider{color:#d1d5db;font-weight:400}.back-to-login-link{border:1.5px solid #e5e7eb;border-radius:8px;color:#6b7280;display:block;font-size:14px;font-weight:500;padding:12px;text-align:center;text-decoration:none;transition:all .2s ease}.back-to-login-link:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}@media (max-width:640px){.transporter-login-container{padding:16px}.transporter-login-card{max-width:95%;padding:32px 24px}.transporter-login-logo{margin-bottom:24px;max-width:140px}.transporter-login-form-container h2{font-size:24px}.form-subtitle{font-size:14px}.transport-icon-wrapper svg{height:40px;width:40px}.form-group{margin-bottom:20px}.form-group input{font-size:14px;padding:12px 14px}.transporter-login-btn{font-size:15px;padding:14px}}@media (min-width:641px) and (max-width:1024px){.transporter-login-card{padding:40px 36px}}.back-to-login-link:focus-visible,.password-toggle-btn:focus-visible,.remember-me-checkbox:focus-visible,.transporter-login-btn:focus-visible{outline:2px solid #ff8b3d;outline-offset:2px}.help-links a:focus-visible{border-radius:4px;outline:2px solid #ff8b3d;outline-offset:2px}.transporter-dashboard{background-color:#f9fafb;display:flex;flex-direction:column;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh}.dashboard-header .header-left .student-info .school-name-header,.header-left .student-info .school-name-header{color:#ff8b3d!important;font-size:20px!important;font-weight:900!important}.desktop-only{display:block}@media (max-width:768px){.desktop-only{display:none!important}.logout-btn-header{display:block!important}.dashboard-header{align-items:center!important;flex-direction:row!important;flex-wrap:nowrap!important;height:64px!important;justify-content:space-between!important;padding:0 16px!important}.header-left{flex:0 1 auto!important;justify-content:flex-start!important;max-width:calc(100% - 60px)!important;min-width:0!important;text-align:left!important}.header-left,.header-right{align-items:center!important;display:flex!important;margin:0!important;padding:0!important}.header-right{flex:0 0 auto!important;flex-shrink:0!important;justify-content:flex-end!important;width:auto!important}.student-info{min-width:0!important;text-align:left!important}.school-name-header{font-size:14px!important;max-width:180px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.user-profile .user-details-header{display:none!important}}.dashboard-main{box-sizing:border-box;flex:1 1;width:100%}.welcome-container{align-items:center;display:flex;justify-content:center;min-height:60vh}.welcome-card{box-shadow:0 4px 15px #0000001a;max-width:600px;padding:3rem;width:100%}.welcome-icon{font-size:4rem;margin-bottom:1rem}.welcome-card h2{color:#2c3e50;font-size:2rem;font-weight:600;margin-bottom:1rem}.welcome-card p{color:#2c3e50;font-size:1.1rem;margin-bottom:2rem}.transporter-info{background:#fff;border-radius:8px;margin:2rem 0;padding:1.5rem;text-align:left}.transporter-info h3{color:#2c3e50;font-size:1.3rem;margin-bottom:1rem;text-align:center}.info-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.info-item{gap:.25rem}.info-label{color:#34495e;font-size:.9rem}.info-value{color:#2c3e50;font-size:1rem}.info-value.status.active{color:#27ae60;font-weight:600}.info-value.status.inactive{color:#e74c3c;font-weight:600}.assigned-routes-section{border-top:2px solid #e5e7eb;margin-top:2.5rem;padding-top:2rem}.assigned-routes-section h3{color:#2c3e50;font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;text-align:center}.routes-loading{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;padding:2rem}.routes-loading .loading-spinner{margin-bottom:1rem}.no-routes{background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px;color:#6b7280;padding:2rem;text-align:center}.routes-list{display:flex;flex-direction:column;gap:1.25rem}.route-card{background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 4px #0000000d;padding:1.5rem;transition:all .3s ease}.route-card:hover{border-color:#ff8c42;box-shadow:0 4px 12px #ff8c4226;transform:translateY(-2px)}.route-header{align-items:flex-start;justify-content:space-between;margin-bottom:1.25rem}.route-header,.route-title-section{display:flex;flex-wrap:wrap;gap:1rem}.route-title-section{align-items:center}.route-title-section h4{color:#1f2937;font-size:1.25rem;font-weight:700;margin:0}.route-type-badge{border-radius:6px;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:.4rem .85rem}.route-vehicle{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:.5rem;padding:.5rem 1rem}.vehicle-label{color:#6b7280;font-size:.85rem;font-weight:500}.vehicle-number{color:#1f2937;font-size:.95rem}.route-locations{border-top:1px solid #e5e7eb;margin-top:1.25rem;padding-top:1.25rem}.route-locations h5{color:#374151;font-size:1rem;font-weight:600;margin:0 0 1rem}.locations-list{gap:.75rem;margin:0;padding-left:1.5rem}.location-item,.locations-list{display:flex;flex-direction:column}.location-item{background:#f9fafb;border-left:3px solid #ff8c42;border-radius:6px;gap:.25rem;padding:.75rem}.location-name{color:#1f2937;font-size:.95rem;font-weight:600}.location-address{font-size:.85rem;font-style:italic}.route-navigation-buttons{border-top:1px solid #e5e7eb;display:flex;gap:1rem;justify-content:center;margin-top:1.5rem;padding-top:1.5rem}.btn-start-route{background:#10b981;border:none;border-radius:8px;box-shadow:0 2px 8px #10b9814d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.btn-start-route:hover{background:#059669;box-shadow:0 4px 12px #10b98166;transform:translateY(-2px)}.btn-start-route:active{transform:translateY(0)}.navigation-controls{display:flex;gap:1rem;justify-content:center;width:100%}.btn-next-stop{background:#3b82f6;border:none;border-radius:8px;box-shadow:0 2px 8px #3b82f64d;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;max-width:200px;padding:.75rem 1.5rem;transition:all .3s ease}.btn-next-stop:hover{background:#2563eb;box-shadow:0 4px 12px #3b82f666;transform:translateY(-2px)}.btn-next-stop:active{transform:translateY(0)}.btn-end-route{background:#ef4444;border:none;border-radius:8px;box-shadow:0 2px 8px #ef44444d;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;max-width:200px;padding:.75rem 1.5rem;transition:all .3s ease}.btn-end-route:hover{background:#dc2626;box-shadow:0 4px 12px #ef444466;transform:translateY(-2px)}.btn-end-route:active{transform:translateY(0)}.route-map-container{border-top:1px solid #e5e7eb;margin-top:1.5rem;padding-top:1.5rem}.route-map-container h5{color:#374151;font-size:1rem;font-weight:600;margin:0 0 1rem}.map-placeholder{background:#f9fafb;padding:2rem}.map-placeholder p{font-size:.9rem}.dashboard-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.btn-primary{background:#ff8c42;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.8rem 1.5rem;transition:background-color .2s ease}.btn-primary:hover{background:#e67a35}.btn-secondary{border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.8rem 1.5rem;transition:background-color .2s ease}.btn-secondary,.btn-secondary:hover{background:#fff}.dashboard-footer{background-color:#fff;border-top:1px solid #e5e7eb;color:#6b7280;font-size:.85rem;margin-top:auto;padding:1.5rem;text-align:center}.loading-container{min-height:400px}.loading-spinner{border:1px solid #e9ecef;border-top:4px solid #ff8c42}.error-container{min-height:400px;padding:40px}.error-container h2{color:#e74c3c;margin-bottom:15px}.error-container p{color:#2c3e50;margin-bottom:25px}@media (max-width:1024px){.header-content{gap:1.5rem;padding:1rem 1.5rem}.dashboard-title{font-size:1.35rem}.dashboard-subtitle{font-size:.8rem}}@media (max-width:768px){.dashboard-main{padding:1rem}.welcome-card{padding:2rem 1.5rem}.welcome-card h2{font-size:1.5rem}.info-grid{grid-template-columns:1fr}.dashboard-actions{flex-direction:column}.assigned-routes-section{margin-top:2rem;padding-top:1.5rem}.assigned-routes-section h3{font-size:1.25rem}.route-card{padding:1.25rem}.route-header{flex-direction:column;gap:1rem}.route-title-section{width:100%}.route-title-section h4{font-size:1.1rem}.route-vehicle{justify-content:space-between;width:100%}.locations-list{padding-left:1.25rem}.location-item{padding:.65rem}.route-navigation-buttons{margin-top:1.25rem;padding-top:1.25rem}.navigation-controls{flex-direction:column;gap:.75rem}.btn-end-route,.btn-next-stop{max-width:100%;width:100%}.route-map-container{margin-top:1.25rem;padding-top:1.25rem}.route-map-container h5{font-size:.95rem;margin-bottom:.75rem}.map-placeholder{padding:1.5rem}}.parent-dashboard{background-color:#f9fafb;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh}.dashboard-content{display:flex;flex-direction:column;gap:32px}.welcome-card{border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 4px 6px #00000012;overflow:hidden;padding:0}.welcome-card-orange-bar{background:#ff8b3d;height:4px;width:100%}.welcome-card-content{padding:48px 40px;text-align:center}.welcome-message{font-weight:400;line-height:1.5;margin:0}.section-orange-bar{background:#ff8b3d;height:4px;width:100%}.section-header{border-bottom:2px solid #f3f4f6;padding:32px 32px 24px}.section-title{font-size:24px;font-weight:700;margin:0}.children-header-flex{align-items:center;display:flex;justify-content:space-between}.count-badge{background:#ff8b3d;border-radius:12px;color:#fff;font-size:14px;font-weight:700;margin-left:12px;padding:4px 12px}.parent-details-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;margin-bottom:32px;overflow:hidden;padding:0}.details-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr);padding:32px}.detail-field{display:flex;flex-direction:column;gap:8px}.detail-field.full-width{grid-column:1/-1}.detail-label{color:#9ca3af;font-size:11px;font-weight:700;letter-spacing:1px;margin-bottom:4px}.detail-input{background:#f9fafb;border:1.5px solid #e5e7eb;border-left:3px solid #ff8b3d;border-radius:8px;color:#1f2937;font-size:15px;font-weight:500;padding:14px 18px;transition:all .2s ease}.detail-input:focus{background:#fff;border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.parent-status-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;margin-bottom:32px;overflow:hidden;padding:0}.permissions-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);padding:32px}.permission-badge{align-items:center;background:#d1fae5;border:2px solid #10b981;border-radius:12px;display:flex;gap:10px;justify-content:center;padding:16px 20px;transition:all .3s ease}.permission-badge.inactive{background:#fef2f2;border-color:#ef4444}.permission-badge:hover{box-shadow:0 4px 12px #10b98133;transform:translateY(-2px)}.permission-badge.inactive:hover{box-shadow:0 4px 12px #ef444433}.permission-checkmark{color:#10b981;font-size:20px;font-weight:700}.permission-badge.inactive .permission-checkmark{color:#ef4444}.permission-text{color:#065f46;font-size:13px;font-weight:700;letter-spacing:.5px;text-align:center;text-transform:uppercase}.permission-badge.inactive .permission-text{color:#991b1b}.parent-notices-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;margin-bottom:32px;overflow:hidden;padding:0}.refresh-notices-btn{background:#ff8b3d;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:10px 18px;transition:all .2s ease}.refresh-notices-btn:hover:not(:disabled){background:#f97316;transform:translateY(-1px)}.refresh-notices-btn:disabled{background:#d1d5db;cursor:not-allowed}.parent-notices-list{display:flex;flex-direction:column;gap:16px;padding:24px 32px 32px}.parent-notice-item{background:#fff;border:1.5px solid #e5e7eb;border-left:4px solid #3b82f6;border-radius:12px;padding:20px 24px}.parent-notice-item.priority-medium{border-left-color:#f59e0b}.parent-notice-item.priority-high{border-left-color:#ef4444}.parent-notice-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:12px}.parent-notice-title{color:#1f2937;font-size:18px;font-weight:700;margin:0}.parent-notice-priority{color:#4b5563;font-size:13px;font-weight:700;white-space:nowrap}.parent-notice-content{color:#4b5563;font-size:15px;line-height:1.6;margin:0 0 16px}.parent-notice-meta{color:#6b7280;display:flex;flex-wrap:wrap;font-size:13px;font-weight:600;gap:16px}.notices-empty-state{padding:40px 32px;text-align:center}.children-section-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;margin-bottom:32px;overflow:hidden;padding:0}.children-list{display:flex;flex-direction:column;gap:16px;padding:24px 32px 32px}.child-card-modern{align-items:center;background:#fff;border:1.5px solid #e5e7eb;border-left:3px solid #ff8b3d;border-radius:10px;cursor:pointer;display:flex;justify-content:space-between;padding:20px 24px;transition:all .3s ease}.child-card-modern:hover{border-color:#ff8b3d;box-shadow:0 4px 12px #ff8b3d26;transform:translateX(4px)}.child-card-left{align-items:center;display:flex;gap:12px}.child-icon{color:#ff8b3d;font-size:20px}.child-name-modern{color:#1f2937;font-size:17px;font-weight:700}.child-card-right{align-items:center;display:flex}.child-grade{color:#6b7280;font-size:14px;font-weight:500}.children-empty-state{padding:60px 32px;text-align:center}.empty-state-icon{font-size:64px;margin-bottom:16px}.empty-state-message{color:#6b7280;font-size:16px;margin:0}.children-list-summary .child-name{color:#1f2937!important;font-size:13px!important;font-weight:600!important}.children-list-summary .child-class{color:#6b7280!important;font-size:11px!important;font-weight:400!important}.nav-tabs{border:1px solid #e9ecef}.nav-tab{color:#2c3e50}.nav-tab:hover{background:#fff;color:#2c3e50}.nav-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 8px #667eea4d}.children-section{margin:0 auto;max-width:1200px;padding:2rem}.children-header{margin-bottom:2rem;text-align:center}.children-header h2{color:#2c3e50;font-size:2rem;font-weight:600;margin-bottom:.5rem}.children-header p{color:#2c3e50;font-size:1.1rem}.children-loading{color:#2c3e50;padding:3rem;text-align:center}.children-loading .loading-spinner{font-size:2rem;margin-bottom:1rem}.no-children{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;color:#2c3e50;padding:3rem 2rem;text-align:center}.no-children-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.no-children h3{color:#2c3e50;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.no-children p{font-size:1rem;line-height:1.6;margin-bottom:.5rem}.children-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(450px,1fr))}.child-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;padding:24px;transition:all .3s ease}.child-card:hover{border-color:#ff8b3d;box-shadow:0 12px 28px #0000001f;transform:translateY(-6px)}.child-card-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;gap:16px;margin-bottom:24px;padding-bottom:20px}.child-avatar{align-items:center;background:#ff8b3d;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:24px;font-weight:700;height:64px;justify-content:center;width:64px}.child-name-section{flex:1 1}.child-full-name{color:#1f2937;font-size:20px;font-weight:700;margin:0 0 4px}.child-id{color:#6b7280;font-size:13px;font-weight:500;margin:0}.child-details{gap:16px}.child-detail-row{align-items:center;background:#f9fafb;border-left:3px solid #ff8b3d;border-radius:10px;display:flex;gap:12px;padding:12px 16px;transition:all .2s ease}.child-detail-row:hover{background:#f3f4f6;transform:translateX(4px)}.detail-icon{flex-shrink:0;font-size:20px;height:32px;justify-content:center;width:32px}.detail-content,.detail-icon{align-items:center;display:flex}.detail-content{flex:1 1;gap:8px}.detail-content .detail-label{color:#6b7280;font-size:14px;font-weight:600;min-width:120px}.detail-content .detail-value{background:#0000;border:none;color:#1f2937;font-size:15px;font-weight:600;padding:0}.child-header{gap:1rem;margin-bottom:1rem}.child-header,.child-icon{align-items:center;display:flex}.child-icon{background:#ff8c42;border-radius:50%;flex-shrink:0;font-size:2rem;height:60px;justify-content:center;width:60px}.child-info h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin:0 0 .25rem}.child-class{color:#2c3e50;font-size:.9rem}.child-details{display:flex;flex-direction:column;gap:.5rem}.detail-item{align-items:flex-start;border-bottom:1px solid #f0f0f0;gap:1rem;justify-content:space-between;padding:.75rem 0}.detail-item:last-child{border-bottom:none}.detail-label{flex-shrink:0;min-width:120px}.detail-label,.detail-value{color:#2c3e50;font-size:.9rem}.detail-value{flex:1 1;text-align:right;word-break:break-word}.detail-value.active{color:#10b981;font-weight:600}.detail-value.inactive{color:#ef4444;font-weight:600}.notices-section{margin-left:auto;margin-right:auto;margin-top:2rem;max-width:1200px;padding:0 2rem}.notices-section h3{align-items:center;color:#2c3e50;display:flex;font-size:1.5rem;font-weight:600;gap:.5rem;margin-bottom:1.5rem}.notices-loading{color:#2c3e50}.notices-loading .loading-spinner{margin-bottom:1rem}.no-notices{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;color:#2c3e50;padding:3rem 2rem}.no-notices-icon{margin-bottom:1rem}.no-notices p{font-size:1.1rem;margin:0}.notice-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 8px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.notice-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.notice-card.high-priority{border-left:4px solid #ef4444}.notice-card.medium-priority{border-left:4px solid #f59e0b}.notice-card.normal-priority{border-left:4px solid #10b981}.notice-header{flex-wrap:wrap;gap:.5rem}.notice-priority{background:#fff;border-radius:20px;font-size:.8rem;font-weight:600;padding:.5rem 1rem}.priority-icon{font-size:.9rem}.priority-label{color:#2c3e50;letter-spacing:.5px;text-transform:uppercase}.notice-date{align-items:center;color:#2c3e50;display:flex;gap:.25rem}.notice-content{margin-bottom:.5rem}.notice-title{color:#2c3e50;font-size:1.2rem;font-weight:700;line-height:1.4;margin-bottom:.75rem}.notice-text{color:#2c3e50;font-size:1rem;margin-bottom:1rem}.notice-expiry{align-items:center;color:#2c3e50;display:flex;font-style:italic;gap:.25rem}.dashboard-header{background:#fff!important;background-image:none!important;box-shadow:0 1px 3px #0000000d;overflow:visible!important;width:100%;z-index:100}.header-left{min-width:0}.header-left,.student-info{overflow:visible}.school-name-header{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:break-word;color:#ff8b3d!important;font-size:20px!important;font-weight:900!important;letter-spacing:.02em;line-height:1.2;overflow:visible!important;text-overflow:clip!important;white-space:normal!important}.user-profile{padding:4px 12px}.user-avatar{font-size:14px}.user-details-header{display:flex;flex-direction:column}.user-name-header{color:#1f2937;font-size:14px;font-weight:600;line-height:1.2}.user-role-header{color:#6b7280;font-size:12px;line-height:1.2}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px}.header-content h1{font-size:1.8rem;font-weight:600;margin:0}.user-info{align-items:center;gap:1rem}.user-details{text-align:right}.parent-name{display:block;font-size:1.1rem;font-weight:600}.parent-email{display:block;font-size:.9rem;opacity:.9}.logout-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background .2s ease}.logout-btn:hover{background:#ffffff4d}.logout-btn-header{background:#ff8b3d!important;border:none!important;border-radius:8px;color:#fff!important;font-size:14px;padding:8px 16px;transition:all .2s ease}.logout-btn-header:hover{background:#ff7524!important;color:#fff!important}@media (max-width:768px){.desktop-only{display:none!important}.mobile-menu-toggle{display:flex!important}.mobile-menu-overlay{display:block}.dashboard-header{align-items:center!important;flex-direction:row!important;flex-wrap:nowrap!important;height:64px!important;justify-content:space-between!important;padding:0 16px!important}.header-left{flex:0 1 auto!important;justify-content:flex-start!important;max-width:calc(100% - 60px)!important;min-width:0!important;text-align:left!important}.header-left,.header-right{align-items:center!important;display:flex!important;margin:0!important;padding:0!important}.header-right{flex:0 0 auto!important;flex-shrink:0!important;justify-content:flex-end!important;width:auto!important}.parent-info{text-align:left!important}.parent-name-header{font-size:14px!important;max-width:180px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.parent-role-header{font-size:11px!important}.nav-tabs{display:none!important}}.dashboard-main{max-width:1200px;padding:2rem}.welcome-section{border-radius:12px;box-shadow:0 2px 10px #0000001a;margin-bottom:2rem;padding:2rem}.welcome-section h2{color:#2c3e50;font-size:1.5rem;margin:0 0 .5rem}.welcome-section p{color:#2c3e50;font-size:1rem;margin:0}.card-icon{align-items:center;background:#ff8c42;border-radius:50%;display:flex;font-size:2rem;height:60px;justify-content:center;width:60px}.card-content h3{font-size:1.1rem}.card-content p{color:#2c3e50;font-size:.9rem}.quick-actions{padding:2rem}.quick-actions h3{margin:0 0 1.5rem}.action-buttons{grid-gap:1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.action-btn{background:#ff8c42;font-size:.9rem;padding:1rem;transition:transform .2s ease,box-shadow .2s ease}.action-btn:hover{background:#e67a35;box-shadow:0 4px 15px #3498db66;transform:translateY(-2px)}.error-container,.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;text-align:center}.loading-spinner{font-size:2rem}.login-btn{background:#ff8c42;border-radius:6px;font-size:.9rem}.login-btn:hover{background:#e67a35}.schedule-section{margin:0 auto;max-width:1200px;padding:2rem}.break-table-row{background-color:#ff8c42!important;border-bottom:2px solid #e67a35!important;border-top:2px solid #e67a35!important}.break-period-cell{background-color:#ff8c42!important;border-right:2px solid #e67a35!important;padding:12px 8px;text-align:center}.break-label{color:#fff!important;font-size:.9rem;font-weight:600;margin-bottom:4px}.break-timing{color:#fff!important;font-size:.75rem;font-weight:500}.break-cell{background-color:#ff8c42!important;border:1px solid #e67a35!important;padding:12px 8px;text-align:center}.break-display{align-items:center;display:flex;height:100%;justify-content:center}.break-text{background-color:initial!important;border:none!important;border-radius:4px;color:#fff!important;font-size:.85rem;font-weight:600;padding:6px 12px}.schedule-section-modern{background:#f9fafb;box-sizing:border-box;margin:0;min-height:calc(100vh - 200px);padding:32px;width:100%}.schedule-title-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;border-top:4px solid #ff8b3d!important;box-shadow:0 4px 6px #00000012;margin-bottom:32px;padding:48px 40px;text-align:center}.schedule-icon-large{display:block;font-size:48px;margin-bottom:12px;text-align:center}.schedule-title{margin-bottom:8px;margin-top:0}.schedule-subtitle,.schedule-title{color:#1f2937;font-size:36px;font-weight:700;text-align:center}.schedule-subtitle{line-height:1.5;margin:0}.timings-card-modern{background:#fff;border-left:4px solid #ff8b3d;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;padding:24px 32px}.timings-header{align-items:center;display:flex;gap:12px;margin-bottom:20px}.timings-icon{font-size:20px}.timings-title{color:#1f2937;font-size:18px;font-weight:700;margin:0}.timings-info-grid{display:flex;gap:24px;justify-content:space-around}.timing-info-item{align-items:center;display:flex;flex-direction:column;text-align:center}.timing-label-modern{color:#6b7280;font-size:13px;font-weight:600;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.timing-value-modern{color:#1f2937;font-size:18px;font-weight:700}.schedule-header{margin-bottom:2rem;text-align:center}.schedule-header h2{color:#2c3e50;font-size:2rem;font-weight:600;margin-bottom:.5rem}.schedule-header p{color:#2c3e50;font-size:1.1rem}.schedule-loading{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;color:#2c3e50}.no-schedule{color:#2c3e50}.no-schedule p{font-size:1rem;line-height:1.6;margin-bottom:.5rem}.schedule-table-container{border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.schedule-table{background:#fff;border-collapse:collapse;border-radius:12px;overflow:hidden;table-layout:fixed;width:100%}.schedule-table-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.schedule-table-header th{border-right:1px solid #fff3;font-size:.95rem;font-weight:600;letter-spacing:.5px;overflow:hidden;padding:1rem;text-align:center;text-overflow:ellipsis;white-space:nowrap}.schedule-table-header th.period-header{background:#ff8b3d;color:#fff;max-width:120px;min-width:120px;width:120px}.schedule-table-header th.day-header{background:#ff8b3d;color:#fff;min-width:150px;width:calc(16.66667% - 20px);width:calc((100% - 120px)/var(--num-days, 6))}.schedule-table-header th:last-child{border-right:none}.period-header{min-width:100px;width:100px}.day-header,.period-header{background:#ff8b3d;color:#fff}.day-header{min-width:120px;width:120px}.schedule-table-row{transition:background-color .2s ease}.schedule-table-row:hover{background-color:#f8fafc}.schedule-table-row:nth-child(2n){background-color:#fafbfc}.schedule-table-row:nth-child(2n):hover{background-color:#f1f5f9}.schedule-table-row td{word-wrap:break-word;border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0;min-height:80px;overflow:hidden;padding:1rem;vertical-align:top;word-break:break-word}.schedule-table-row td.period-cell{max-width:120px;min-width:120px;width:120px}.schedule-table-row td.schedule-cell{word-wrap:break-word;max-width:calc(16.66667% - 20px);max-width:calc((100% - 120px)/var(--num-days, 6));min-width:120px;overflow:hidden;position:relative;vertical-align:top;width:calc(16.66667% - 20px);width:calc((100% - 120px)/var(--num-days, 6))}.schedule-table-row td:last-child{border-right:none}.schedule-table-row .period-cell{background:#ff8b3d;color:#fff;font-weight:600;min-width:100px;position:relative;text-align:center;width:100px}.period-label{background:#0000;border-radius:6px;box-shadow:none;color:#fff;font-size:.9rem;padding:.5rem}.schedule-table-row .schedule-cell{background:#fff;min-width:120px}.schedule-assignment-display{align-items:flex-start;display:flex;flex-direction:column;gap:.5rem;padding:.5rem;text-align:left}.subject-display{margin-bottom:0;text-align:left}.subject-display strong{color:#2c3e50;font-size:.75rem;font-weight:600;text-align:left}.teacher-display{align-items:flex-start;background:#ff8c42;border-left:3px solid #e67a35;border-radius:4px;display:flex;flex-direction:column;font-size:.7rem;gap:.2rem;padding:.35rem .45rem}.teacher-display,.teacher-name{word-wrap:break-word;box-sizing:border-box;color:#fff;min-width:0;overflow-wrap:break-word;text-align:left;width:100%}.teacher-name{background:none!important;border:none!important;border-radius:0!important;display:block;font-size:.6rem;font-weight:600;-webkit-hyphens:auto;hyphens:auto;line-height:1.5;max-width:100%;overflow:visible;padding:0!important;white-space:normal;word-break:break-word}.empty-slot{color:#2c3e50;font-style:italic;text-align:center}.empty-text{font-size:.8rem}.period-timing{margin-top:.5rem}.timing-text{background:none;border:none;border-radius:0;color:#fff;font-size:.75rem;font-weight:500;margin-bottom:2px;padding:0}@media (max-width:768px){.dashboard-header{padding:1rem}.header-content{flex-direction:column;gap:1rem;text-align:center}.dashboard-main{padding:16px 12px}.welcome-card{border-radius:12px;margin:16px 12px 20px}.welcome-card-content{padding:32px 24px}.welcome-emoji{font-size:40px}.welcome-title{font-size:28px}.welcome-message{font-size:14px}.children-section-card,.parent-details-card,.parent-notices-card,.parent-status-card{border-radius:12px;margin:16px 12px}.section-header{padding:24px 20px}.section-title{font-size:20px}.parent-notice-header{flex-direction:column;gap:8px}.parent-notices-list{padding:16px 20px 24px}.details-grid{gap:20px;grid-template-columns:1fr;padding:24px 20px}.permissions-grid{gap:12px;grid-template-columns:repeat(2,1fr);padding:24px 20px}.children-list{gap:12px;padding:16px 20px 24px}.child-card-modern{align-items:flex-start;flex-direction:column;gap:8px;padding:16px 20px}.child-grade{font-size:13px;margin-top:4px}.action-buttons,.children-grid,.info-cards{grid-template-columns:1fr}.detail-item{align-items:flex-start;flex-direction:column;gap:.25rem}.detail-label{min-width:auto}.detail-value{text-align:left}.notices-section{padding:0 1rem}.notice-header{align-items:flex-start;flex-direction:column}.notice-card{padding:1rem}.notice-title{font-size:1.1rem}.schedule-section{padding:1rem}.schedule-title-card{border-radius:12px;border-top:4px solid #ff8b3d!important;margin:16px 12px 20px;padding:32px 24px}.schedule-icon-large{font-size:40px}.schedule-subtitle,.schedule-title{font-size:28px}.schedule-table-container{overflow-x:auto}.schedule-table{min-width:600px}.schedule-cell{padding:.75rem .5rem}.schedule-table-header th{font-size:.8rem;padding:.75rem .5rem}}@media (min-width:769px) and (max-width:1024px){.details-grid,.permissions-grid{grid-template-columns:repeat(2,1fr);padding:24px}.section-header{padding:24px}}.fees-section{background:#f9fafb;margin:0 auto;max-width:1200px;padding:32px 24px}.fees-page-header{background:#fff;border-radius:16px;border-top:4px solid #ff8b3d;box-shadow:0 4px 6px #00000012;margin-bottom:32px;padding:48px 40px;text-align:center}.fees-header-icon{display:block;font-size:48px;margin-bottom:12px;text-align:center}.fees-page-title{color:#1f2937;font-size:36px;font-weight:700;margin-bottom:8px;margin-top:0;text-align:center}.fees-page-subtitle{color:#6b7280;font-size:16px;font-weight:400;margin:0;text-align:center}.fees-loading{padding:3rem;text-align:center}.fees-loading .loading-spinner{font-size:2rem;margin-bottom:1rem}.no-fees{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:3rem;text-align:center}.no-fees-icon{font-size:3rem;margin-bottom:1rem}.no-fees h3{color:#2c3e50;font-size:1.5rem;margin-bottom:1rem}.children-fees-container{display:flex;flex-direction:column;gap:32px}.child-fees-section{margin-bottom:32px}.child-fees-header{border-bottom:2px solid #e5e7eb;margin-bottom:24px;padding-bottom:16px}.child-fees-name{color:#1f2937;font-size:24px;font-weight:700;margin:0 0 8px}.child-fees-meta{color:#6b7280;font-size:16px;margin:0}.fee-container{gap:24px}.fee-card-nexy{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:row;margin:0 auto;max-width:1200px;overflow:hidden;transition:all .3s ease}.fee-card-nexy:hover{box-shadow:0 8px 16px #0000001f;transform:translateY(-4px)}.fee-sidebar{align-items:center;background:linear-gradient(135deg,#ff8b3d,#ff7524);display:flex;flex-direction:column;gap:20px;justify-content:center;padding:40px 32px;position:relative;width:320px}.fee-sidebar:before{background:linear-gradient(135deg,#ff8b3d1a,#ff75241a);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.fee-month-display{text-align:center;z-index:1}.fee-month-name{font-size:32px;line-height:1.2;margin:0}.fee-month-name,.fee-year{color:#fff;font-weight:700;text-align:center}.fee-year{font-size:28px;margin-top:-8px}.fee-type-badge-nexy{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff40;border:1.5px solid #ffffff4d;border-radius:24px;font-size:13px;letter-spacing:1px;padding:10px 24px}.fee-status-badge-nexy,.fee-type-badge-nexy{color:#fff;font-weight:700;text-transform:uppercase;z-index:1}.fee-status-badge-nexy{animation:pulse 2s infinite;background:#ff8b3d;border-radius:24px;box-shadow:0 4px 12px #ff8b3d66;font-size:14px;letter-spacing:.8px;padding:12px 28px}.fee-status-badge-nexy.fee-status-paid{animation:none;background:#10b981;box-shadow:0 4px 12px #10b98166}.fee-status-badge-nexy.fee-status-due{animation:pulse 2s infinite;background:#ff8b3d;box-shadow:0 4px 12px #ff8b3d66}.fee-sidebar-arrow{border-bottom:25px solid #0000;border-left:20px solid #ff7524;border-top:25px solid #0000;height:0;position:absolute;right:-20px;top:50%;transform:translateY(-50%);width:0;z-index:1}.fee-content-nexy{background:#fff;display:flex;flex:1 1;flex-direction:column;padding:48px 56px}.fee-amount-card{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:12px;margin-bottom:32px;padding:32px 40px;text-align:center}.fee-currency-label{color:#6b7280;font-size:18px;font-weight:600;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.fee-amount-value{color:#1f2937;font-size:56px;font-weight:700;line-height:1}.fee-details-nexy{display:flex;flex-direction:column;gap:24px;margin-top:32px}.fee-detail-row{align-items:center;background:#fff;border:1.5px solid #e5e7eb;border-left:4px solid #ff8b3d;border-radius:8px;display:flex;gap:12px;padding:20px 24px;transition:all .2s ease}.fee-detail-row:hover{border-left-width:6px;box-shadow:0 2px 8px #ff8b3d26}.fee-detail-label{color:#374151;font-size:16px;font-weight:700;min-width:80px}.fee-detail-value{align-items:center;color:#1f2937;display:flex;font-size:16px;font-weight:600;gap:8px}.fee-calendar-icon{color:#ff8b3d;font-size:18px;margin-right:4px}@media (max-width:1024px){.fee-sidebar{padding:32px 24px;width:280px}.fee-content-nexy{padding:40px 32px}}@media (max-width:768px){.fees-section{padding:24px 16px}.fees-page-header{padding:32px 24px}.fees-header-icon{font-size:40px}.fees-page-title{font-size:28px}.fees-page-subtitle{font-size:14px}.fee-card-nexy{flex-direction:column}.fee-sidebar{padding:32px 24px;width:100%}.fee-sidebar-arrow{display:none}.fee-content-nexy{padding:32px 24px}.fee-amount-value{font-size:48px}}.no-fees p{color:#2c3e50;font-size:1rem;margin-bottom:.5rem}.fee-container{display:flex;flex-direction:column;gap:1.5rem;max-width:100%;padding:1rem}.fee-card-new{background:linear-gradient(135deg,#fff,#fff);border:1px solid #e9ecef;border-radius:20px;box-shadow:0 8px 25px #0000001a;display:flex;flex-direction:row;min-height:140px;overflow:hidden;position:relative;transition:all .3s ease;width:100%}.fee-card-new:hover{box-shadow:0 12px 35px #00000026;transform:translateY(-3px)}.fee-card-new:before{background:linear-gradient(90deg,#667eea,#764ba2 50%,#f39c12);content:"";height:4px;left:0;position:absolute;right:0;top:0}.fee-left{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;flex-direction:column;justify-content:center;min-width:200px;padding:2rem;position:relative;width:200px}.fee-left:after{border-bottom:20px solid #0000;border-left:10px solid #764ba2;border-top:20px solid #0000;content:"";height:0;position:absolute;right:-10px;top:50%;transform:translateY(-50%);width:0}.fee-left h3{font-size:1.6rem;font-weight:800;letter-spacing:.5px;margin:0 0 1rem;text-align:center;text-shadow:0 2px 4px #0003}.fee-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff40;border:1px solid #ffffff4d;border-radius:20px;font-size:.85rem;font-weight:600;margin-bottom:1rem;padding:.5rem 1rem}.fee-badge,.fee-status{color:#fff;text-align:center}.fee-status{background:linear-gradient(135deg,#f39c12,#e67e22);border-radius:20px;box-shadow:0 4px 15px #f39c124d;font-size:.9rem;font-weight:700;letter-spacing:.5px;padding:.6rem 1.2rem;text-transform:uppercase}.fee-center{background:#fff;flex:1 1;flex-direction:column;gap:1.5rem;padding:2rem}.fee-amount,.fee-center{display:flex;justify-content:center}.fee-amount{align-items:center;background:linear-gradient(135deg,#fff,#fff);border:1px solid #e9ecef;border-radius:15px;box-shadow:0 4px 15px #0000000d;gap:.8rem;margin-bottom:1rem;padding:1.5rem}.currency{background:#fff;border-radius:10px;color:#2c3e50;font-size:1.4rem;font-weight:700;padding:.5rem .8rem}.amount{color:#2c3e50;font-size:2.8rem;font-weight:900;letter-spacing:-1px;text-shadow:0 2px 4px #0000001a}.fee-details{color:#2c3e50;display:flex;flex-direction:column;font-size:1rem;gap:1rem}.fee-details div{background:linear-gradient(135deg,#fff,#fff);border-left:4px solid #ff8c42;border-radius:12px;box-shadow:0 2px 8px #0000000d;font-weight:500;padding:1rem}.fee-details div:last-child{border-left-color:#f39c12}.attendance-section{animation:fadeIn .5s ease-in;margin:0 auto;max-width:1200px;min-height:100vh}.attendance-header-content{align-items:center;display:flex;flex-direction:column;gap:12px}.attendance-icon-title{align-items:center;display:flex;gap:16px;justify-content:center;margin-bottom:12px}.attendance-header-icon{color:#ff8b3d;height:48px;width:48px}.attendance-header-title{color:#ff8b3d;font-size:36px;font-weight:700;margin:0}.attendance-header-subtitle{color:#6b7280;font-size:16px;margin:0}.child-selection{background:linear-gradient(135deg,#fff,#fff);border:2px solid #fffc;border-radius:16px;box-shadow:0 8px 25px #00000014;display:flex;flex-direction:column;gap:.5rem;margin-bottom:2rem;padding:1.5rem}.child-selection label{color:#2c3e50;font-size:.9rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.child-select{-webkit-appearance:none;appearance:none;background:linear-gradient(135deg,#fff,#fff);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;border:2px solid #3498db33;border-radius:12px;color:#2c3e50;cursor:pointer;font-size:1rem;font-weight:500;padding:1rem 3rem 1rem 1.5rem;transition:all .3s ease}.child-select:hover{border-color:#3498db66;box-shadow:0 8px 20px #3498db26;transform:translateY(-2px)}.child-select:focus{border-color:#ff8c42;box-shadow:0 0 0 3px #3498db1a;outline:none}.month-navigation{align-items:center;background:#ff8b3d;border-radius:16px;display:flex;justify-content:space-between;margin-bottom:32px;padding:20px 32px}.nav-btn{background:#0000;border:none;border-radius:8px;color:#fff;display:inline-flex;font-size:16px;padding:10px 20px;width:auto}.nav-btn:hover{background:#0000001a}.nav-arrow{color:#fff;font-size:18px}.nav-text{color:#fff}.current-month{flex:1 1;text-align:center}.current-month h3{color:#fff;font-size:28px;font-weight:700;margin:0}.attendance-stats-grid{animation:staggerFadeIn .6s ease-out;grid-template-columns:repeat(4,1fr)}@keyframes staggerFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stat-card{border-top:4px solid;overflow:hidden;padding:28px 24px;position:relative}.stat-card-total{border-top-color:#ff8b3d}.stat-card-present{border-top-color:#10b981}.stat-card-absent{border-top-color:#ef4444}.stat-card-percentage{border-top-color:#f59e0b}.stat-number{font-size:42px}.stat-card-total .stat-number{color:#ff8b3d}.stat-card-present .stat-number{color:#10b981}.stat-card-absent .stat-number{color:#ef4444}.stat-card-percentage .stat-number{color:#f59e0b}.stat-label{font-size:12px}.attendance-records{display:flex;flex-direction:column;gap:1.5rem}.attendance-record{background:linear-gradient(135deg,#fff,#fff);border:2px solid #fffc;border-radius:16px;box-shadow:0 8px 25px #00000014;overflow:hidden;padding:2rem;position:relative;transition:all .4s ease}.attendance-record:before{background:linear-gradient(90deg,#ff8c42,#e67a35);border-radius:16px 16px 0 0;content:"";height:4px;left:0;position:absolute;right:0;top:0}.attendance-record:hover{box-shadow:0 15px 35px #0000001f;transform:translateY(-5px)}.record-date{border-bottom:2px solid #3498db26;margin-bottom:1.5rem;padding-bottom:1rem;position:relative}.record-date:after{background:linear-gradient(90deg,#ff8c42,#e67a35);border-radius:1px;bottom:-2px;content:"";height:2px;left:0;position:absolute;width:50px}.record-date h4{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ff8c42,#e67a35);-webkit-background-clip:text;background-clip:text;color:#2c3e50;font-size:1.3rem;font-weight:800;margin:0}.record-details{align-items:center;display:flex;gap:2rem;justify-content:space-between}.status-info{flex:1 1}.attendance-status.present{background:linear-gradient(135deg,#27ae60,#229954);box-shadow:0 6px 20px #27ae604d}.attendance-status.absent,.attendance-status.present{border:2px solid #fff3;border-radius:12px;color:#fff;display:inline-block;font-size:1.1rem;font-weight:800;padding:1rem 2rem}.attendance-status.absent{background:linear-gradient(135deg,#e74c3c,#c0392b);box-shadow:0 6px 20px #e74c3c4d}.teacher-info{flex:1 1;text-align:right}.teacher-label{color:#2c3e50;display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.teacher-name{background:#8e44ad1a;border-radius:12px;color:#8e44ad;display:inline-block;font-size:1rem;font-weight:700;padding:.5rem 1rem}.loading-container{color:#2c3e50;padding:4rem}.loading-spinner{margin-bottom:1.5rem}.loading-container p{color:#2c3e50;font-size:1.1rem;font-weight:600}.attendance-empty-state{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;margin:0 auto;max-width:600px;padding:80px 60px;text-align:center}.empty-state-icon{color:#9ca3af;filter:grayscale(20%) opacity(.7);height:80px;margin:0 auto 28px;width:80px}.empty-state-title{color:#1f2937;font-size:28px;font-weight:700;margin:0 0 16px}.empty-state-description{color:#6b7280;font-size:16px;margin:0 0 12px}.empty-state-helper{color:#9ca3af;font-size:14px;font-style:italic;margin:0}.attendance-calendar-container{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;overflow-x:auto;padding:32px}.attendance-calendar{display:flex;flex-direction:column;gap:8px}.calendar-week{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(7,1fr)}.calendar-day-header{color:#6b7280;font-size:12px;font-weight:700;padding:12px;text-align:center;text-transform:uppercase}.calendar-day-cell{align-items:center;aspect-ratio:1;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;justify-content:center;transition:all .2s ease}.calendar-day-empty{background:#0000}.calendar-day-default{background:#f9fafb;color:#9ca3af}.calendar-day-present{background:#10b981!important;border:2px solid #10b981!important;color:#fff!important}.calendar-day-absent{background:#ef4444!important;border:2px solid #ef4444!important;color:#fff!important}.calendar-day-holiday{background:#f3f4f6;color:#9ca3af}.calendar-day-today{border:2px solid #ff8b3d!important;box-shadow:0 0 0 3px #ff8b3d33}.calendar-day-cell:hover:not(.calendar-day-empty){box-shadow:0 2px 8px #0000001a;transform:scale(1.05)}.attendance-legend{background:#f9fafb;border-radius:8px;display:flex;gap:24px;justify-content:center;margin-top:24px;padding:16px}.legend-item{align-items:center;display:flex;gap:8px}.legend-color{border-radius:4px;height:16px;width:16px}.legend-present{background:#d1fae5;border:2px solid #10b981}.legend-absent{background:#fee2e2;border:2px solid #ef4444}.legend-holiday{background:#f3f4f6;border:2px solid #9ca3af}.legend-label{color:#374151;font-size:13px;font-weight:500}.fee-details strong{color:#2c3e50;font-weight:700;margin-right:.5rem}.homework-section{background:#f9fafb;margin:0 auto;max-width:1400px;min-height:100vh;padding:40px 32px}.homework-header{background:#fff;border-radius:16px;border-top:4px solid #ff8b3d;box-shadow:0 4px 6px #00000012;margin-bottom:32px;padding:48px 40px;text-align:center}.homework-header-content{align-items:center;display:flex;flex-direction:column}.homework-header-title{align-items:center;display:flex;gap:16px;justify-content:center;margin-bottom:12px}.homework-header-icon{color:#ff8b3d;font-size:48px}.homework-header h2{color:#1f2937;font-size:36px;font-weight:700;margin:0}.homework-subtitle{color:#6b7280;font-size:16px;margin:0}.homework-date-navigation{align-items:center;background:#ff8b3d!important;background-image:none!important;border:none!important;border-radius:16px;box-shadow:0 4px 12px #ff8b3d4d;display:flex;justify-content:space-between;margin-bottom:32px;padding:24px 32px}.nav-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff40;border:2px solid #ffffff4d;border-radius:10px;color:#fff!important;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s ease}.nav-btn.prev-btn:hover:not(:disabled){background:#ffffff59;transform:translateX(-4px)}.nav-btn.next-btn:hover:not(:disabled){background:#ffffff59;transform:translateX(4px)}.nav-btn:disabled{background:#ffffff26;cursor:not-allowed;opacity:.6;transform:none}.current-date{background:#0000!important;background-image:none!important;border:none!important;border-radius:0;box-shadow:none;flex:0 1 auto;margin:0 20px;padding:0}.current-date h3{color:#fff!important;font-size:20px;font-weight:700;margin:0 0 4px}.date-info{color:#fff!important;font-size:13px;font-style:italic;margin:0}.no-homework{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;padding:80px 60px}.no-homework-icon{color:#d1d5db;font-size:80px;margin-bottom:24px}.no-homework h3{color:#6b7280;font-size:20px;margin:0 0 12px}.no-homework p{color:#9ca3af;font-size:14px;margin:0}.homework-grid{grid-gap:28px;gap:28px;grid-template-columns:repeat(auto-fill,minmax(500px,1fr))}.homework-card{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:all .3s ease}.homework-card:hover{box-shadow:0 12px 28px #0000001f;transform:translateY(-6px)}.homework-card.completed-homework{border-left:4px solid #10b981}.homework-card.completed-homework .homework-header-card{background:linear-gradient(135deg,#10b981,#059669)!important}.homework-title-section{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px;width:100%}.homework-title-section>div{flex:1 1}.child-name-badge{color:#ffffffe6;font-size:12px;font-weight:500;margin:4px 0 0}.completion-badge{border-radius:8px;flex-shrink:0;font-size:12px;font-weight:700;padding:6px 12px;white-space:nowrap}.completed-badge{background:#10b98133;border:1px solid #10b98166}.completed-badge,.pending-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff}.pending-badge{background:#f59e0b33;border:1px solid #f59e0b66}.completion-info{background:#ecfdf5;border-left:3px solid #10b981;border-radius:8px;margin-bottom:16px;padding:12px 16px}.completion-date{align-items:center;color:#059669;display:flex;font-size:14px;font-weight:600;gap:8px}.homework-header-card{align-items:flex-start;background:#ff8b3d!important;background-image:none!important;flex-direction:column;gap:12px;padding:24px}.homework-header-card h4{color:#fff;font-size:22px;font-weight:700}.homework-subject{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff40;border-radius:8px;color:#fff;display:flex;font-size:13px;font-weight:600;gap:8px;padding:8px 16px}.subject-icon{color:#fff;font-size:16px}.homework-details{background:#fff;padding:24px}.homework-description{background:#f9fafb;border-left:3px solid #ff8b3d;border-radius:8px;margin-bottom:20px;padding:16px}.homework-description p{color:#374151;font-size:15px;line-height:1.6}.homework-dates{flex-direction:column;gap:12px}.assigned-date,.due-date{font-size:14px;gap:10px}.assigned-date{color:#10b981;font-weight:600}.assigned-date .date-icon{color:#10b981}.due-date{font-weight:600}.due-date,.due-date .date-icon{color:#ef4444}.date-icon{font-size:16px}.loading-spinner{margin:0 auto 20px}.loading-container p{color:#6b7280;font-size:16px}@media (max-width:768px){.homework-section{padding:1rem}.homework-date-navigation{flex-direction:column;gap:12px;padding:16px}.homework-date-navigation .nav-btn{font-size:12px;justify-content:center;padding:6px 12px;width:100%}.homework-grid{gap:1rem;grid-template-columns:1fr}.homework-header-card{padding:1rem}.homework-dates,.homework-meta{flex-direction:column;gap:.5rem}}.exam-schedule-section{margin:0 auto;max-width:1400px;padding:2rem}.exam-schedule-header{background:#fff;border:1px solid #e5e7eb;border-radius:16px;border-top:4px solid #ff8b3d!important;box-shadow:0 4px 6px #00000012;margin-bottom:32px;padding:48px 40px;text-align:center}.exam-schedule-header-content{align-items:center;display:flex;flex-direction:column;width:100%}.exam-schedule-header-icon{display:block;font-size:48px;margin-bottom:12px;text-align:center}.exam-schedule-header-title{align-items:center;display:flex;gap:16px;justify-content:center;margin-bottom:8px;width:100%}.exam-schedule-header h2{color:#1f2937;font-size:36px;font-weight:700;margin:0;text-align:center;width:100%}.exam-schedule-subtitle{color:#6b7280;font-size:16px;font-weight:400;line-height:1.5;margin:8px 0 0;text-align:center;width:100%}.exam-schedule-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:2rem}.exam-schedule-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;position:relative;transition:all .3s ease}.exam-schedule-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.exam-card-header{align-items:center;background:#ff8b3d!important;background-image:none!important;border-radius:0;box-sizing:border-box;justify-content:center;min-height:80px;padding:32px;width:100%}.exam-icon{color:#fff;font-size:32px}.exam-type-badge{border-radius:24px;box-shadow:0 2px 6px #00000026;color:#ff8b3d;display:inline-block;font-size:13px;letter-spacing:.8px;padding:10px 20px}.exam-card-content,.exam-type-badge{background:#fff;box-sizing:border-box}.exam-card-content{gap:20px;padding:32px;width:100%}.exam-child-info{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.child-badge{background:#eff6ff;color:#1e40af;font-size:13px;font-weight:600}.child-badge,.class-badge{border-radius:6px;display:inline-block;padding:6px 12px;width:fit-content}.class-badge{background:#f0fdf4;color:#166534;font-size:12px;font-weight:500}.exam-title{font-size:22px;line-height:1.2;margin-bottom:4px;text-align:center}.exam-dates{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:10px;box-sizing:border-box;justify-content:center;margin:0;padding:14px 24px;width:100%}.exam-date{color:#374151;font-size:13px;font-weight:600;text-align:center}.date-icon{color:#ff8b3d;font-size:14px}.exam-description{margin-bottom:1rem}.exam-description p{color:#2c3e50;font-size:.9rem;line-height:1.5;margin:0}.exam-type-info{margin-bottom:.75rem}.exam-type-label{color:#2c3e50;font-size:.8rem}.exam-assignment-info{margin-bottom:.75rem}.assignment-label{color:#059669;font-size:.8rem;font-weight:500}.child-info{margin-bottom:1rem}.child-label{color:#3b82f6;font-size:.8rem;font-weight:500}.exam-subjects{background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;box-sizing:border-box;margin:0;padding:18px;width:100%}.subjects-header{align-items:center;color:#10b981;display:flex;font-size:13px;font-weight:700;gap:10px;letter-spacing:.5px;margin-bottom:14px;text-transform:uppercase}.subjects-icon{color:#10b981;font-size:16px}.subjects-title{color:#10b981;font-size:13px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.subjects-list{display:flex;gap:14px;margin:0;padding:0}.subject-item,.subjects-list{box-sizing:border-box;flex-direction:column;width:100%}.subject-item{background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;gap:12px;padding:18px 20px;position:relative;transition:all .3s ease}.subject-item:hover{border-color:#ff8b3d;box-shadow:0 4px 12px #ff8b3d26;transform:translateY(-2px)}.subject-name{word-wrap:break-word;display:block;font-size:11px!important;letter-spacing:.4px;line-height:1.3;margin:0;overflow-wrap:break-word;padding:0;text-orientation:mixed;white-space:normal;writing-mode:horizontal-tb}.subject-date-time-row{align-items:flex-start;display:flex;flex-direction:column;gap:10px;margin:0;padding:0;width:100%}.subject-date{align-items:center;color:#6b7280;display:flex;flex-shrink:0;font-size:13px;font-weight:500;gap:8px;white-space:nowrap}.subject-date .date-icon{color:#4361ee;display:inline-block;font-size:15px;line-height:1}.subject-time{align-items:center;color:#6b7280;display:flex;flex-shrink:0;font-size:13px;font-weight:500;gap:8px;white-space:nowrap}.time-icon{color:#6b7280;display:inline-block;font-size:15px;line-height:1}.more-subjects{color:#2c3e50;font-size:.8rem;font-style:italic;margin:.25rem 0 0;text-align:center}.no-exams{padding:3rem 1rem}.no-exams h3,.no-exams p{color:#2c3e50;margin-bottom:.5rem}@media (max-width:768px){.exam-schedule-section{padding:1rem}.exam-schedule-header{border-radius:12px;border-top:4px solid #ff8b3d!important;margin:16px;padding:32px 24px}.exam-schedule-header-icon{font-size:40px}.exam-schedule-header h2{font-size:28px}.exam-schedule-subtitle{font-size:14px}.exam-schedule-grid{gap:1rem;grid-template-columns:1fr}.exam-schedule-card{padding:1rem}.exam-title{font-size:1.1rem}.subject-item{gap:.25rem;grid-template-columns:1fr;text-align:center}}.results-section{background:#f9fafb;min-height:100vh;padding:32px 24px}.results-page-header{background:#fff;border-radius:16px;border-top:4px solid #ff8b3d;box-shadow:0 4px 6px #00000012;margin-bottom:32px;margin-left:auto;margin-right:auto;max-width:1200px;padding:48px 40px;text-align:center}.results-header-icon{font-size:48px;margin-bottom:16px}.results-page-title{color:#1f2937;font-size:36px;font-weight:700;margin:0;text-align:center}.results-page-subtitle{color:#6b7280;font-size:16px;font-weight:400;margin-bottom:0;margin-top:8px;text-align:center}.results-list{display:flex;flex-direction:column;gap:32px;margin:0 auto;max-width:1200px}.child-results-section{display:flex;flex-direction:column;gap:24px}.child-results-header{background:#fff;border-left:4px solid #ff8b3d;border-radius:12px;box-shadow:0 2px 4px #0000000d;padding:20px 24px}.child-name{color:#1f2937;font-size:24px;font-weight:700;margin:0 0 8px}.child-class{color:#6b7280;font-size:14px;font-weight:500;margin:0}.result-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;overflow:hidden;padding:0}.result-card-header{background:#ff8b3d;border-radius:0;padding:32px 40px}.result-exam-name{color:#fff;font-size:32px;font-weight:700;margin:0 0 12px;text-align:center}.result-exam-meta{align-items:center;display:flex;gap:12px;justify-content:center}.result-exam-type-badge{background:#fff;border-radius:20px;color:#ff8b3d;font-size:13px;font-weight:700;letter-spacing:.5px;padding:8px 16px;text-transform:uppercase}.result-exam-date{color:#fff;font-size:16px;font-weight:600}.result-card-body{background:#fff;padding:0}.results-table{border-collapse:collapse;font-size:15px;table-layout:fixed;width:100%}.results-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.results-table th{color:#374151;font-size:13px;font-weight:700;letter-spacing:.5px;padding:16px 24px;text-align:left;text-transform:uppercase;vertical-align:middle}.results-table th:first-child{text-align:left;width:25%}.results-table th:nth-child(2),.results-table th:nth-child(3),.results-table th:nth-child(4),.results-table th:nth-child(5){text-align:center;width:15%}.results-table td{word-wrap:break-word;border-bottom:1px solid #e5e7eb;color:#1f2937;font-size:15px;font-weight:500;overflow-wrap:break-word;padding:20px 24px;transition:background-color .2s ease;vertical-align:middle}.results-table tbody tr:not(.total-row):hover{background:#f9fafb;cursor:pointer}.results-table td:first-child{text-align:left}.results-table td:nth-child(2),.results-table td:nth-child(3),.results-table td:nth-child(4),.results-table td:nth-child(5){text-align:center}.subject-cell{font-weight:700;letter-spacing:.3px;text-align:left!important;text-transform:uppercase}.marks-cell,.percentage-cell{color:#374151;text-align:center!important;white-space:nowrap}.grade-cell{text-align:center!important}.grade-badge{font-size:14px;margin:0 auto;min-width:30px;padding:6px 12px}.grade-badge.grade-A{background:#d1fae5;color:#065f46}.grade-badge.grade-B{background:#dbeafe;color:#1e40af}.grade-badge.grade-C{background:#fef3c7;color:#92400e}.grade-badge.grade-D{background:#fed7aa;color:#9a3412}.grade-badge.grade-F{background:#fee2e2;color:#991b1b}.actions-cell{padding:14px 16px!important;text-align:center!important;vertical-align:middle}.view-result-card-btn{background:#0000;border:2px solid #ff8b3d;border-radius:6px;color:#ff8b3d;display:inline-block;padding:8px 12px;white-space:nowrap}.view-result-card-btn:hover{background:#ff8b3d;box-shadow:0 2px 4px #ff8b3d4d;color:#fff;transform:translateY(-1px)}.results-table tfoot{background:#f9fafb;border-top:2px solid #ff8b3d}.results-table tfoot td{border-bottom:none;font-size:16px;padding:20px 24px;vertical-align:middle}.total-row td{font-size:16px}.total-row td:first-child{text-align:left!important}.total-row td:nth-child(2),.total-row td:nth-child(3),.total-row td:nth-child(4),.total-row td:nth-child(5){text-align:center!important}.result-card-action{border-radius:0 0 16px 16px;border-top:none;padding:0}.result-card-action,.view-result-card-btn-main{background:#ff8b3d;display:flex;justify-content:center}.view-result-card-btn-main{align-items:center;border:none;border-radius:0 0 16px 16px;box-shadow:0 -2px 8px #0000000d;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:16px 32px;text-align:center;transition:all .3s ease;width:100%}.view-result-card-btn-main:hover{background:#ff7524;box-shadow:0 4px 12px #ff8b3d66;transform:translateY(-2px)}.no-results{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;margin:0 auto;max-width:1200px;padding:60px 20px;text-align:center}.no-results-icon{font-size:64px;margin-bottom:16px;opacity:.5}.no-results h3{color:#1f2937;font-size:20px;font-weight:700;margin:0 0 8px}.no-results p{color:#6b7280;font-size:14px;margin:0}.loading-container{border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;margin:0 auto;max-width:1200px}.loading-spinner{border:4px solid #f3f4f6;height:40px;margin:0 auto 16px;width:40px}@media (max-width:1024px){.results-section{padding:24px 16px}.results-page-header{padding:40px 32px}.result-card-header{padding:28px 32px}}@media (max-width:768px){.results-section{padding:16px}.results-page-header{margin-bottom:24px;padding:32px 24px}.results-header-icon{font-size:40px}.results-page-title{font-size:28px}.results-page-subtitle{font-size:14px}.result-card-header{padding:24px 20px}.result-exam-name{font-size:24px}.result-exam-type-badge{font-size:11px;padding:6px 12px}.result-exam-date{font-size:14px}.results-table{display:table;font-size:13px;table-layout:fixed;width:100%}.results-table tbody,.results-table tfoot,.results-table thead{display:table-row-group}.results-table td,.results-table th{display:table-cell;font-size:12px;padding:12px 8px;vertical-align:middle}.results-table th:first-child{text-align:left;width:30%}.results-table th:nth-child(2),.results-table th:nth-child(3),.results-table th:nth-child(4),.results-table th:nth-child(5){text-align:center;width:17.5%}.results-table td:first-child{text-align:left!important}.results-table td:nth-child(2),.results-table td:nth-child(3),.results-table td:nth-child(4),.results-table td:nth-child(5){text-align:center!important}.total-row td:first-child{text-align:left!important}.total-row td:nth-child(2),.total-row td:nth-child(3),.total-row td:nth-child(4),.total-row td:nth-child(5){text-align:center!important}.result-card-body{-webkit-overflow-scrolling:touch;overflow-x:auto}.view-result-card-btn-main{font-size:14px;padding:14px 24px}}.result-card-header .modal-close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:36px;justify-content:center;line-height:1;transition:all .2s ease;width:36px}.result-card-header .modal-close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.result-card-table .subject-cell{color:#1f2937;font-weight:600}.result-card-table .marks-cell,.result-card-table .percentage-cell{color:#1f2937;font-family:"monospace";font-weight:600;text-align:center}.result-card-table .grade-cell{text-align:center}.grade-badge-large.grade-A{background:#d1fae5;color:#065f46}.grade-badge-large.grade-B{background:#dbeafe;color:#1e40af}.grade-badge-large.grade-C{background:#fef3c7;color:#92400e}.grade-badge-large.grade-D{background:#fee2e2;color:#991b1b}.grade-badge-large.grade-F{background:#f3f4f6;color:#374151}.result-card-table .total-row td{background:#f9fafb;color:#1f2937;font-weight:700}.result-card-table .total-row td:nth-child(2),.result-card-table .total-row td:nth-child(3),.result-card-table .total-row td:nth-child(4){text-align:center}.chat-main-container{overflow-x:hidden}.chat-sidebar{z-index:1}.chat-teacher-info{min-width:0;overflow-x:hidden}.chat-teacher-name,.chat-teacher-subject{max-width:100%;overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:768px){.month-navigation{padding:16px 20px}.month-navigation .nav-btn{font-size:12px;padding:6px 12px}.month-navigation .nav-arrow{font-size:14px}.month-navigation .current-month h3{font-size:22px}.chat-main-container{grid-template-columns:1fr;height:calc(100vh - 240px)}.chat-sidebar.hidden-mobile{display:none}.chat-sidebar{position:relative;z-index:1!important}.chat-back-button{display:flex}.chat-page-header{padding:32px 24px}.chat-header-icon{font-size:40px}.chat-page-title{font-size:28px}.chat-page-subtitle{font-size:14px}}.ai-chat-features{list-style:none;margin:24px auto;max-width:500px;padding:0;text-align:left}.ai-chat-features li{border-bottom:1px solid #e5e7eb;font-size:15px;padding:12px 0}.ai-chat-features li:last-child{border-bottom:none}.transport-section{margin:0 auto;max-width:1200px;padding:24px}.transport-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.transport-loading .loading-spinner{margin-bottom:20px}.transport-no-children,.transport-not-enabled-message{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:60px 20px;text-align:center}.transport-icon{font-size:64px;margin-bottom:20px}.transport-no-children h2{color:#1f2937;font-size:24px;font-weight:700;margin-bottom:12px}.transport-no-children p,.transport-not-enabled-message p{color:#6b7280;font-size:16px;line-height:1.6}.transport-content{display:flex;flex-direction:column;gap:24px}.transport-header{align-items:center;background:linear-gradient(135deg,#ff8b3d,#ff7524);border-radius:12px;color:#fff;display:flex;gap:16px;padding:24px}.transport-header-icon{flex-shrink:0;font-size:48px}.transport-header-info h1{color:#fff;font-size:28px;font-weight:700;margin:0}.transport-header-info p{color:#ffffffe6;font-size:16px;margin:4px 0 0}.children-transport-list{display:flex;flex-direction:column;gap:24px}.child-transport-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.child-transport-header{align-items:center;border-bottom:2px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.child-transport-header h3{color:#1f2937;font-size:22px;font-weight:700;margin:0}.transport-status-badge{border-radius:20px;font-size:13px;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.transport-status-badge.active{background-color:#d1fae5;color:#065f46}.transport-status-badge.inactive{background-color:#fee2e2;color:#991b1b}.transport-details-card{background:#f9fafb;border-radius:12px;margin-bottom:20px;padding:20px}.transport-details-card h4{color:#1f2937;font-size:18px;font-weight:700;margin:0 0 16px}.transport-info-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.transport-info-item{background:#fff;border-radius:8px;display:flex;flex-direction:column;gap:4px;padding:12px}.transport-info-label{color:#6b7280;font-size:13px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.transport-info-value{color:#1f2937;font-size:16px;font-weight:600}.transport-map-container{background:#f9fafb;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px}.transport-map-container h4{color:#1f2937;font-size:18px;font-weight:700;margin:0 0 16px}.bus-status{align-items:center;background:#fff;border-radius:8px;color:#374151;display:flex;font-size:14px;gap:8px;margin-top:16px;padding:12px}.bus-status-indicator{border-radius:50%;flex-shrink:0;height:12px;width:12px}.bus-status-indicator.active{animation:pulse 2s infinite;background-color:#10b981;box-shadow:0 0 8px #10b98180}.bus-status-indicator.inactive{background-color:#9ca3af}.map-placeholder{background:#fff;border:1px dashed #d1d5db;border-radius:8px;color:#6b7280;padding:60px 20px;text-align:center}.map-placeholder p{font-size:16px;margin:0}.custom-marker-icon{background:#0000!important;border:none!important}@media (max-width:768px){.transport-section{padding:16px}.transport-header{flex-direction:column;padding:20px;text-align:center}.transport-header-icon{font-size:40px}.transport-header-info h1{font-size:24px}.transport-header-info p{font-size:14px}.child-transport-card{padding:16px}.child-transport-header{align-items:flex-start;flex-direction:column;gap:12px}.transport-details-card,.transport-map-container{padding:16px}.transport-info-grid{gap:12px;grid-template-columns:1fr}}.meals-section{background:#f9fafb;margin:0 auto;max-width:1400px;min-height:100vh;padding:32px 24px}.meals-page-header{background:#fff;border-radius:16px;border-top:4px solid #ff8b3d;box-shadow:0 4px 6px #00000012;margin-bottom:32px;padding:48px 40px;text-align:center}.meals-header-icon{display:block;font-size:48px;margin-bottom:12px}.meals-page-title{color:#1f2937;font-size:36px;font-weight:700;margin:0 0 8px;text-align:center}.meals-page-subtitle{color:#6b7280;font-size:16px;font-weight:400;margin:0;text-align:center}.meals-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:3rem;text-align:center}.meals-loading .loading-spinner{font-size:2rem;margin-bottom:1rem}.meals-loading p{color:#2c3e50;font-size:1rem}.no-meals{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;display:flex;flex-direction:column;justify-content:center;padding:3rem;text-align:center}.no-meals-icon{font-size:3rem;margin-bottom:1rem}.no-meals h3{color:#2c3e50;font-size:1.3rem;margin:0 0 .5rem}.no-meals p{color:#2c3e50;font-size:1rem;margin:.5rem 0}.meals-grid{grid-gap:28px;display:grid;gap:28px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.meal-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;overflow:hidden;transition:all .3s ease}.meal-card:hover{box-shadow:0 12px 28px #0000001f;transform:translateY(-6px)}.meal-card-header{align-items:center;background:#ff8b3d!important;background-image:none!important;display:flex;justify-content:space-between;padding:24px}.meal-type-badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff40;border-radius:8px;color:#fff;display:flex;font-size:13px;font-weight:600;gap:8px;padding:8px 16px}.meal-type-text{color:#fff}.meal-frequency-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff40;border-radius:8px;color:#fff;font-size:13px;font-weight:600;letter-spacing:.5px;padding:8px 16px;text-transform:uppercase}.meal-frequency-badge.daily{background:#10b9814d}.meal-frequency-badge.weekly{background:#3b82f64d}.meal-frequency-badge.monthly{background:#8b5cf64d}.meal-card-content{background:#fff;display:flex;flex:1 1;flex-direction:column;padding:24px}.meal-name{color:#1f2937;font-size:20px;font-weight:700;margin:0 0 16px}.meal-description{background:#f9fafb;border-left:3px solid #ff8b3d;border-radius:8px;color:#374151;flex:1 1;font-size:15px;line-height:1.6;margin-bottom:20px;padding:16px}.meal-footer{border-top:1px solid #e5e7eb;gap:10px;margin-top:auto;padding-top:16px}.meal-date,.meal-footer{align-items:center;display:flex}.meal-date{color:#6b7280;font-size:14px;font-weight:500;gap:8px}@media (max-width:768px){.meals-section{padding:20px 16px}.meals-page-header{padding:32px 24px}.meals-header-icon{font-size:36px}.meals-page-title{font-size:28px}.meals-grid{gap:20px;grid-template-columns:1fr}.meal-card-header{align-items:flex-start;flex-direction:column;gap:12px;text-align:center}.meal-frequency-badge,.meal-type-badge{justify-content:center;width:100%}.no-meals{padding:60px 40px}}@media (max-width:1024px) and (min-width:769px){.meals-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}}.child-selector-container{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:16px;margin-bottom:24px;padding:20px 24px}.child-selector-label{color:#374151;font-size:15px;font-weight:700;white-space:nowrap}.child-selector-dropdown{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;color:#1f2937;cursor:pointer;flex:1 1;font-size:15px;font-weight:500;padding:12px 16px;transition:all .2s ease}.child-selector-dropdown:hover{border-color:#ff8b3d}.child-selector-dropdown:focus{background:#fff;border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}@media (max-width:768px){.child-selector-container{align-items:stretch;flex-direction:column;padding:16px}.child-selector-label{margin-bottom:8px}.child-selector-dropdown{width:100%}}.teacher-dashboard{background-color:#f9fafb;box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;max-width:100%;min-height:100vh;overflow-x:hidden;width:100%}.dashboard-header{align-items:center!important;background:#ff8c42;box-shadow:0 2px 10px #0000001a;box-sizing:border-box;color:#fff;display:flex!important;flex-direction:row!important;justify-content:space-between!important;padding:1rem 2rem}.header-left{flex:0 1 auto;justify-content:flex-start}.teacher-info{display:flex;flex-direction:column}.teacher-name-header{color:#000;font-size:1.3rem;font-weight:600;margin-bottom:.25rem}.teacher-role-header{color:#000;font-size:.9rem;opacity:.9}.header-right{flex:0 0 auto;justify-content:flex-end}.logout-btn-header{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:background .2s ease}.logout-btn-header:hover{background:#ffffff4d}.desktop-only{display:flex}.mobile-menu-overlay{z-index:1000}.mobile-menu-dropdown{z-index:1001}.mobile-user-info .user-avatar{align-items:center;background:#ff8b3d;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:40px;justify-content:center;width:40px}.mobile-logout-btn{background:#ff8b3d}.mobile-logout-btn:hover{background:#ff7524}.mobile-menu-tab{border-left:3px solid #0000;color:#374151}.mobile-menu-tab:hover{color:#1f2937}.mobile-menu-tab.active{background:#f0f9ff;border-left-color:#ff8b3d;color:#ff8b3d}@media (max-width:768px){.desktop-only{display:none!important}.mobile-menu-toggle{display:flex!important}.mobile-menu-overlay{display:block}.dashboard-header{align-items:center!important;flex-direction:row!important;flex-wrap:nowrap!important;height:64px!important;justify-content:space-between!important;padding:0 16px!important}.header-left{flex:0 1 auto!important;justify-content:flex-start!important;max-width:calc(100% - 60px)!important;min-width:0!important;text-align:left!important}.header-left,.header-right{align-items:center!important;display:flex!important;margin:0!important;padding:0!important}.header-right{flex:0 0 auto!important;flex-shrink:0!important;justify-content:flex-end!important;width:auto!important}.teacher-info{text-align:left!important}.teacher-name-header{font-size:14px!important;max-width:180px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.teacher-role-header{font-size:11px!important}.nav-tabs{display:none!important}}.nav-tabs{background:#fff;border-bottom:2px solid #e5e7eb;overflow-x:auto;padding:1rem 2rem;position:sticky;top:0;z-index:99}.nav-tab,.nav-tabs{display:flex;gap:.5rem}.nav-tab{align-items:center;background:#0000;border:none;border-radius:8px;color:#6b7280;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;transition:all .3s ease;white-space:nowrap}.nav-tab:hover:not(.active){background:#f9fafb;color:#374151}.nav-tab.active{background:#ff8b3d;box-shadow:0 2px 8px #ff8b3d4d;color:#fff;font-weight:600}.tab-text{font-size:.95rem}.dashboard-main{background:#f9fafb;margin:0 auto;max-width:1400px;padding:32px 24px}.welcome-section{background:#fff;border:1px solid #e5e7eb;border-radius:16px;border-top:4px solid #ff8b3d!important;box-shadow:0 4px 6px #00000012;margin-bottom:32px;padding:48px 40px;text-align:center}.welcome-emoji{display:block;font-size:48px;margin-bottom:12px;text-align:center}.welcome-title{color:#1f2937;font-size:36px;font-weight:700;margin:0 0 8px;text-align:center}.welcome-subtitle{color:#6b7280;font-size:16px;font-weight:400;line-height:1.5;margin:0 0 12px;text-align:center}.current-date{align-items:center;color:#6b7280;display:flex;font-size:15px;font-weight:500;gap:8px;justify-content:center;margin:0;text-align:center}.calendar-icon{color:#4361ee}.info-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:2rem}.info-card{align-items:flex-start;background:#fff;border:3px solid #ff8b3d;border-radius:12px;box-shadow:0 2px 10px #0000001a;display:flex;gap:1rem;padding:1.5rem}.card-icon{flex-shrink:0;font-size:2.5rem}.card-content{flex:1 1}.card-content h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin:0 0 1rem}.card-content p{color:#6b7280;font-size:.95rem;line-height:1.6;margin:.5rem 0}.card-content strong{color:#2c3e50;font-weight:600}.quick-actions{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;margin-bottom:2rem;padding:1.5rem}.quick-actions h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin:0 0 1rem}.action-buttons{display:flex;flex-wrap:wrap;gap:1rem}.action-btn{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;transition:background .2s ease}.action-btn:hover{background:#ff7a2e}.notices-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:1.5rem}.notices-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.notices-header h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin:0}.refresh-btn{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#374151;font-size:.9rem;padding:.5rem 1rem}.refresh-btn:hover:not(:disabled){background:#e5e7eb}.notices-loading{color:#6b7280;padding:2rem;text-align:center}.notices-loading .loading-spinner{font-size:2rem;margin-bottom:.5rem}.no-notices{color:#6b7280;padding:2rem;text-align:center}.no-notices-icon{font-size:3rem;margin-bottom:.5rem;opacity:.5}.notices-list{display:flex;flex-direction:column;gap:1rem}.notice-card{background:#f9fafb;border-left:4px solid #e5e7eb;border-radius:8px;padding:1.5rem;transition:all .2s ease}.notice-card.high-priority{background:#fef2f2;border-left-color:#ef4444}.notice-card.medium-priority{background:#fffbeb;border-left-color:#f59e0b}.notice-card.normal-priority{background:#f0fdf4;border-left-color:#10b981}.notice-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.notice-priority{align-items:center;display:flex;gap:.5rem}.priority-icon{font-size:1rem}.priority-label{color:#374151;font-size:.85rem;font-weight:600}.notice-date{color:#6b7280;font-size:.85rem}.notice-content h4{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.notice-text{color:#4b5563;line-height:1.6;margin:0 0 .5rem}.notice-expiry{color:#6b7280;font-size:.85rem;margin-top:.5rem}.loading-container{padding:3rem}.loading-spinner{font-size:3rem;margin-bottom:1rem}.error-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:3rem;text-align:center}.error-icon{font-size:3rem;margin-bottom:1rem}.login-btn{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;margin-top:1rem;padding:.75rem 1.5rem;transition:background .2s ease}.login-btn:hover{background:#ff7a2e}.schedule-section{background:#f9fafb;min-height:calc(100vh - 200px);overflow-x:hidden;padding:40px 32px}.schedule-header-card{background:#fff;border-radius:16px;border-top:4px solid #ff8b3d;box-shadow:0 4px 6px #00000012;margin-bottom:32px;padding:48px 40px;text-align:center}.schedule-header-content{align-items:center;display:flex;flex-direction:column}.schedule-icon-title{align-items:center;display:flex;gap:16px;justify-content:center;margin-bottom:12px}.schedule-header-icon{color:#ff8b3d;height:48px;width:48px}.schedule-header-title{color:#1f2937;font-size:36px;font-weight:700;margin:0}.schedule-header-subtitle{color:#6b7280;font-size:16px;margin:0}.refresh-button-container{margin-bottom:32px;text-align:center}.refresh-button{align-items:center;background:#ff8b3d;border:none;border-radius:10px;box-shadow:0 4px 14px #ff8b3d66;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:10px;padding:14px 32px;transition:all .2s ease}.refresh-button:hover:not(:disabled){background:#ff7524;box-shadow:0 6px 20px #ff8b3d80;transform:translateY(-2px)}.refresh-button:disabled{cursor:not-allowed;opacity:.6}.refresh-button svg{height:20px;width:20px}.school-timings-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border-left:4px solid #ff8b3d;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;gap:16px;margin-bottom:40px;padding:28px 32px;text-align:center;transition:all .3s ease}.school-timings-card:hover{border-left-width:6px;box-shadow:0 4px 12px #ff8b3d26;transform:translateY(-2px)}.header-row{align-items:center;display:flex;gap:12px;justify-content:center;margin-bottom:8px;width:100%}.clock-icon{color:#ff8b3d;font-size:28px}.title{color:#1f2937;font-size:22px;font-weight:700;margin:0}.timing-info{flex-direction:column;gap:12px}.info-row,.timing-info{align-items:center;display:flex;width:100%}.info-row{flex-wrap:wrap;gap:8px;justify-content:center}.label{color:#6b7280;font-weight:600}.label,.value{font-size:15px}.value{color:#1f2937;font-weight:700}.schedule-days-grid{grid-gap:28px;display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));margin:0 auto;max-width:1600px}.schedule-day-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;min-height:auto;overflow:hidden;transition:all .3s ease;width:100%}.schedule-day-card:hover{box-shadow:0 12px 28px #0000001f;transform:translateY(-6px)}.day-header-orange{align-items:center;background:#ff8b3d;display:flex;justify-content:space-between;padding:20px 24px}.day-name{color:#fff;font-size:20px;font-weight:700;margin:0;text-transform:uppercase}.class-count-badge{background:#ffffff40;border-radius:20px;color:#fff;font-size:13px;font-weight:600;padding:6px 16px}.day-content{background:#fafbfc;padding:24px}.period-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;gap:16px;margin-bottom:16px;padding:24px 28px;text-align:center;transition:all .3s ease}.period-card:last-child{margin-bottom:0}.period-card:hover{border-color:#ff8b3d;box-shadow:0 8px 16px #0000001f;transform:translateY(-4px)}.grade-info{border-bottom:2px solid #f3f4f6;color:#4361ee;font-size:15px;letter-spacing:.8px;margin-bottom:4px;padding-bottom:16px}.grade-info,.subject-name{font-weight:700;text-align:center;text-transform:uppercase;width:100%}.subject-name{color:#1f2937;font-size:18px;letter-spacing:.5px}.time-row{align-items:center;display:flex;gap:8px;justify-content:center;margin-top:4px;width:100%}.clock-icon{color:#6b7280;font-size:18px}.time-text{color:#6b7280;font-size:15px;font-weight:500}.schedule-loading{color:#6b7280;padding:3rem;text-align:center}.schedule-loading .loading-spinner{font-size:2rem;margin-bottom:1rem}.no-schedule{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;color:#6b7280;padding:3rem 2rem;text-align:center}.no-schedule-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.no-schedule h3{color:#2c3e50;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.semester-schedules-container{display:flex;flex-direction:column;gap:32px;margin-top:24px}.semester-schedule-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;padding:24px}.semester-schedule-section.first-semester{border-left:4px solid #ff8b3d;box-shadow:0 4px 12px #ff8b3d26}.semester-header{background:linear-gradient(135deg,#f9fafb,#fff);border-bottom:2px solid #e5e7eb;margin:-24px -24px 24px;padding:20px 24px}.semester-title{align-items:center;color:#1f2937;display:flex;font-size:20px;font-weight:700;gap:12px;margin:0}.primary-badge{background:#ff8b3d;border-radius:12px;color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.attendance-section{background:#f9fafb;box-sizing:border-box;margin:0;max-width:100%;min-height:calc(100vh - 200px);overflow-x:hidden;padding:40px 32px}.attendance-header-card{background:#fff;border-radius:16px;border-top:4px solid #ff8b3d;box-shadow:0 4px 6px #00000012;margin-bottom:32px;padding:48px 40px;text-align:center}.attendance-title{color:#1f2937;font-size:36px;font-weight:700;margin:0 0 12px}.attendance-subtitle{color:#6b7280;font-size:16px;margin:0 0 24px}.attendance-date{align-items:center;color:#374151;display:flex;font-size:15px;font-weight:500;gap:10px;justify-content:center}.calendar-icon{color:#ff8b3d;font-size:18px}.date-value{color:#374151}.attendance-controls-card{background:#fff;border-left:4px solid #ff8b3d;border-radius:12px;box-shadow:0 2px 6px #0000000f;margin-bottom:32px;padding:32px 40px}.attendance-controls{align-items:center;display:flex;gap:32px;justify-content:center}.dropdown-group{display:flex;flex-direction:column;gap:10px}.dropdown-group label{color:#374151;font-size:14px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.class-dropdown,.date-dropdown,.section-dropdown{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;color:#1f2937;cursor:pointer;font-size:15px;font-weight:500;min-width:250px;padding:14px 18px;transition:all .2s ease}.class-dropdown:hover,.date-dropdown:hover,.section-dropdown:hover{border-color:#ff8b3d}.class-dropdown:focus,.date-dropdown:focus,.section-dropdown:focus{background:#fff;border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.class-dropdown:disabled,.date-dropdown:disabled,.section-dropdown:disabled{background:#f3f4f6;cursor:not-allowed;opacity:.6}.students-loading{color:#6b7280;padding:3rem;text-align:center}.students-loading .loading-spinner{font-size:2rem;margin-bottom:1rem}.no-students{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;color:#6b7280;padding:3rem 2rem;text-align:center}.no-students-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.no-students h3{color:#2c3e50;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.select-prompt{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;color:#6b7280;padding:3rem 2rem;text-align:center}.select-prompt-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.select-prompt h3{color:#2c3e50;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.students-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin:0 auto;max-width:1600px;padding:0}.student-card{word-wrap:break-word!important;background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 6px #0000000f;overflow:visible!important;padding:20px 18px;transition:all .2s ease}.student-card:hover{border-color:#ff8b3d;box-shadow:0 4px 12px #0000001a}.student-name{word-wrap:break-word!important;font-size:24px!important;font-weight:700;margin:0 0 8px;max-width:100%!important;overflow:visible!important;overflow-wrap:break-word!important;text-overflow:clip!important;white-space:normal!important}.student-id-section{background:#f9fafb;border-radius:8px;margin-bottom:8px;padding:8px 16px;text-align:center}.student-id-text{font-weight:600}.status-display{margin-bottom:12px;text-align:center}.status-label{color:#6b7280;display:inline;font-size:13px;font-weight:600;margin-right:6px}.status-value{display:inline;font-size:14px;font-weight:700}.status-value.present{color:#059669}.status-value.absent{color:#dc2626}.attendance-options{display:flex;flex-direction:column;gap:12px}.attendance-option{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:14px 16px;position:relative;transition:all .2s ease}.radio-input{height:0;opacity:0;position:absolute;width:0}.custom-radio{background:#fff;border:2px solid #d1d5db;border-radius:50%;flex-shrink:0;height:20px;transition:all .2s ease;width:20px}.present-option{background:#fff;border:2px solid #e5e7eb}.present-option.selected{background:#d1fae5;border:2px solid #10b981;box-shadow:0 0 0 4px #10b9811a}.present-option.selected .custom-radio{background:#10b981;border:2px solid #10b981}.option-icon{font-size:20px;transition:all .2s ease}.present-option:not(.selected) .option-icon{color:#9ca3af}.present-option.selected .option-icon{color:#059669;font-weight:700}.option-text{font-size:15px;transition:all .2s ease}.present-option:not(.selected) .option-text{color:#6b7280;font-weight:500}.present-option.selected .option-text{color:#065f46;font-weight:700}.absent-option{background:#fff;border:2px solid #e5e7eb}.absent-option.selected{background:#fee2e2;border:2px solid #ef4444;box-shadow:0 0 0 4px #ef44441a}.absent-option.selected .custom-radio{background:#ef4444;border:2px solid #ef4444}.absent-option:not(.selected) .option-icon{color:#9ca3af}.absent-option.selected .option-icon{color:#dc2626;font-weight:700}.absent-option:not(.selected) .option-text{color:#6b7280;font-weight:500}.absent-option.selected .option-text{color:#991b1b;font-weight:700}.save-attendance-container{align-items:center;background:#fff;border-top:2px solid #f3f4f6;bottom:0;box-shadow:0 -4px 12px #0000000d;display:flex;gap:16px;justify-content:center;margin-top:32px;padding:20px 32px;position:sticky;z-index:10}.submit-attendance-btn{background:#ff8b3d;border:none;border-radius:12px;box-shadow:0 4px 14px #ff8b3d66;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:16px 48px;transition:all .2s ease}.submit-attendance-btn:hover:not(:disabled){background:#ff7524;box-shadow:0 6px 20px #ff8b3d80;transform:translateY(-2px)}.submit-attendance-btn:disabled{background:#d1d5db;box-shadow:none;color:#9ca3af;cursor:not-allowed;transform:none}.quick-action-btn{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s ease}.quick-action-btn:hover:not(:disabled){background:#ff7524;color:#fff}.quick-action-btn:disabled{cursor:not-allowed;opacity:.6}.attendance-records-section{background:#f9fafb;box-sizing:border-box;margin:0;max-width:100%;min-height:calc(100vh - 200px);overflow-x:hidden;padding:40px 32px}.records-header-card{background:#fff;border-radius:16px;border-top:4px solid #ff8b3d;box-shadow:0 4px 6px #00000012;margin-bottom:32px;padding:48px 40px;text-align:center}.records-header-title{align-items:center;display:flex;justify-content:center;margin-bottom:12px}.records-title{color:#1f2937;font-size:36px;font-weight:700;margin:0}.records-subtitle{color:#6b7280;font-size:16px;margin:0}.records-filters-card{background:#fff;border-left:4px solid #3b82f6;border-radius:12px;box-shadow:0 2px 6px #0000000f;margin-bottom:32px;padding:28px 32px}.records-controls{align-items:flex-end;display:flex;gap:32px;justify-content:flex-start}.records-controls .dropdown-group{display:flex;flex-direction:column;gap:10px}.records-controls .dropdown-group label{color:#374151;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.records-content{background:#0000}.month-navigation-bar{align-items:center;background:#ff8b3d;border-radius:16px;box-shadow:0 4px 12px #ff8b3d4d;display:flex;justify-content:space-between;margin-bottom:32px;padding:20px 32px}.month-nav-btn{background:#fff;border:none;border-radius:8px;color:#1f2937;cursor:pointer;font-size:15px;font-weight:600;min-width:120px;padding:10px 16px;text-align:center;transition:all .2s ease;white-space:nowrap}.month-nav-btn:hover{background:#f9fafb;transform:scale(1.02)}.current-month-display{color:#fff;font-size:28px;font-weight:700;text-align:center}.records-dropdown{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;color:#1f2937;cursor:pointer;font-size:15px;font-weight:500;min-width:200px;padding:12px 16px;transition:all .2s ease}.records-dropdown:focus{background:#fff;border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.attendance-stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(5,1fr);margin-bottom:32px}.stat-card{background:#fff;border-radius:12px;box-shadow:0 2px 6px #0000000f;padding:24px 20px;text-align:center;transition:all .2s ease}.stat-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-4px)}.stat-card-orange{border-top:4px solid #ff8b3d}.stat-card-green{border-top:4px solid #10b981}.stat-card-red{border-top:4px solid #ef4444}.stat-card-purple{border-top:4px solid #8b5cf6}.stat-number{font-size:48px;font-weight:700;margin-bottom:8px}.stat-card-orange .stat-number{color:#ff8b3d}.stat-card-green .stat-number{color:#10b981}.stat-card-red .stat-number{color:#ef4444}.stat-card-purple .stat-number{color:#8b5cf6}.stat-label{color:#6b7280;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.attendance-list-container{display:flex;flex-direction:column;gap:0}.date-group-wrapper{margin-bottom:0}.date-group-header{align-items:center;background:#ff8b3d;border-radius:12px;box-shadow:0 2px 8px #ff8b3d4d;display:flex;justify-content:space-between;margin-bottom:20px;margin-top:32px;padding:16px 24px}.date-group-wrapper:first-child .date-group-header{margin-top:0}.date-text{color:#fff;font-size:18px;font-weight:700}.date-count-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff40;border-radius:20px;color:#fff;font-size:13px;font-weight:600;padding:6px 14px}.students-list-card{background:#fff;border-radius:12px;box-shadow:0 2px 6px #0000000f;margin-bottom:16px;overflow:hidden}.student-row{grid-gap:16px;align-items:center;border-bottom:1px solid #f3f4f6;display:grid;gap:16px;grid-template-columns:50px 1fr auto;padding:20px 24px;transition:all .2s ease}.student-row.last-row{border-bottom:none}.student-row:hover{background:#f9fafb}.status-icon-circle{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.status-icon-circle.present{background:#d1fae5}.status-icon-circle.absent{background:#fee2e2}.status-icon-circle svg{height:24px;width:24px}.student-info-column{min-width:0;text-align:left}.student-name-text{word-wrap:break-word!important;color:#1f2937;font-size:20px!important;font-weight:700;margin-bottom:4px;max-width:100%!important;overflow:visible!important;overflow-wrap:break-word!important;text-overflow:clip!important;white-space:normal!important}.student-id-text{color:#6b7280;font-size:13px;font-weight:500}.status-badge{border-radius:8px;white-space:nowrap}.status-badge.present{background:#d1fae5;border:1px solid #10b981;color:#065f46}.status-badge.absent{background:#fee2e2;border:1px solid #ef4444;color:#991b1b}.no-records{color:#6b7280;padding:3rem 2rem;text-align:center}.no-records-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.no-records h3{color:#2c3e50;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.homework-section{background:#fff;padding:2rem 0}.homework-header{margin-bottom:2rem}.homework-header h2{color:#2c3e50;font-size:1.8rem;font-weight:600;margin:0 0 .5rem}.homework-header p{color:#6b7280;font-size:1rem;margin:0}.add-homework-form{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;margin-bottom:2rem;padding:1.5rem}.homework-date-info{border-bottom:2px solid #e5e7eb;margin-bottom:1.5rem;padding-bottom:1rem;text-align:center}.homework-date-info h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin:0 0 .5rem}.today-info{align-items:center;display:flex;gap:.5rem;justify-content:center}.today-date{color:#6b7280;font-size:.9rem}.homework-class-form{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.class-subject-header{margin-bottom:1rem}.class-subject-header h4{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.class-subject-header h5{color:#6b7280;font-size:1rem;font-weight:500;margin:0 0 1rem}.homework-textarea{border:1px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:.95rem;margin-bottom:1rem;padding:.75rem;resize:vertical;width:100%}.homework-textarea:focus{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.homework-file-upload{margin-bottom:1rem}.file-upload-label{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;display:inline-block;font-size:.9rem;padding:.5rem 1rem;transition:all .2s ease}.file-upload-label:hover{background:#e5e7eb}.file-input{display:none}.file-name{color:#6b7280;display:block;font-size:.85rem;margin-top:.5rem}.add-homework-btn{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;transition:background .2s ease}.add-homework-btn:hover{background:#ff7a2e}.no-classes-today{color:#6b7280;padding:2rem;text-align:center}.no-classes-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.no-classes-today h4{color:#2c3e50;font-size:1.2rem;font-weight:600;margin-bottom:.5rem}.homework-list{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:1.5rem}.homework-list h3{border-bottom:2px solid #e5e7eb;color:#2c3e50;font-size:1.2rem;font-weight:600;margin:0 0 1.5rem;padding-bottom:1rem}.homework-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.homework-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;transition:all .2s ease}.homework-card:hover{box-shadow:0 2px 8px #0000001a}.homework-header-card{align-items:center;background:#fff!important;border-bottom:1px solid #e5e7eb;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;margin-bottom:1rem;padding:1rem 1.5rem}.homework-header-card h4{color:#000!important;font-size:1.1rem;font-weight:600;margin:0}.homework-actions{display:flex;gap:.5rem}.delete-homework-btn,.edit-homework-btn,.view-completion-btn{background:#0000;border:none;cursor:pointer;font-size:1.2rem;padding:.5rem;transition:transform .2s ease}.delete-homework-btn:hover,.edit-homework-btn:hover,.view-completion-btn:hover{transform:scale(1.1)}.view-completion-btn{color:#3b82f6}.view-completion-btn:hover{color:#2563eb}.homework-edit-form{margin-top:1rem}.edit-form-group{margin-bottom:1rem}.edit-form-group label{color:#374151;display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.edit-input,.edit-textarea{border:1px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:.95rem;padding:.75rem;width:100%}.edit-input:focus,.edit-textarea:focus{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.edit-form-actions{display:flex;gap:.5rem;margin-top:1rem}.cancel-edit-btn,.save-edit-btn{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.save-edit-btn{background:#10b981;color:#fff}.save-edit-btn:hover{background:#059669}.cancel-edit-btn{background:#f3f4f6;border:1px solid #e5e7eb;color:#374151}.cancel-edit-btn:hover{background:#e5e7eb}.homework-details{display:flex;flex-direction:column;gap:1rem}.homework-info{color:#6b7280;display:flex;flex-wrap:wrap;font-size:.9rem;gap:1rem}.homework-class,.homework-subject{align-items:center;color:#000!important;display:flex;gap:.5rem}.homework-description{color:#374151;line-height:1.6}.homework-description p{margin:0}.homework-attachments{margin-top:1rem;text-align:center;width:100%}.homework-attachments h5{color:#374151;font-size:.9rem;font-weight:600;margin:0 0 1rem;text-align:center}.attachments-list{align-items:center;display:flex;flex-direction:column;gap:.5rem;width:100%}.attachment-image,.attachment-item{align-items:center;display:flex;flex-direction:column;gap:.5rem;justify-content:center;text-align:center;width:100%}.attachment-image{margin:.5rem 0}.attachment-image img{border-radius:8px;box-shadow:0 2px 8px #0000001a;cursor:pointer;display:block;margin:0 auto;max-height:200px;max-width:200px;object-fit:contain}.attachment-image .attachment-link{display:block;margin-top:.5rem;text-align:center}.attachment-link{color:#ff8b3d;font-size:.9rem;text-decoration:none;transition:color .2s ease}.attachment-link:hover{color:#ff7a2e;text-decoration:underline}.homework-dates{border-top:1px solid #e5e7eb;color:#6b7280;display:flex;font-size:.85rem;gap:1.5rem;padding-top:1rem}.assigned-date,.due-date{align-items:center;display:flex;gap:.5rem}.no-homework{color:#6b7280;padding:3rem 2rem;text-align:center}.no-homework-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.no-homework h3{color:#2c3e50;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.exams-section{background:#f9fafb;margin:0 auto;max-width:1400px;padding:32px 24px}.exams-header{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:16px;border-top:4px solid #ff8b3d!important;box-shadow:0 4px 6px #00000012;display:flex;flex-direction:column;margin-bottom:32px;padding:48px 40px;text-align:center}.exams-header-icon{display:block;font-size:48px;margin-bottom:12px;text-align:center}.exams-header-title{align-items:center;color:#1f2937;display:inline-flex;font-size:36px;font-weight:700;gap:12px;margin:0 0 8px}.exams-header-subtitle{color:#6b7280;font-size:16px;font-weight:400;line-height:1.5;margin:0;max-width:600px}.exams-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:1.5rem}.exam-card{background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.5rem;transition:all .2s ease}.exam-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.exam-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.exam-type-badge{background:#eff6ff;border-radius:6px;color:#1e40af;font-size:.75rem;font-weight:700;letter-spacing:.5px;padding:.4rem .8rem;text-transform:uppercase}.exam-card-content{display:flex;flex-direction:column;gap:.75rem}.exam-title{color:#1f2937;font-size:1.2rem;font-weight:700;margin:0}.exam-dates{align-items:center;display:flex;gap:.5rem}.exam-date{color:#6b7280;font-size:.95rem;font-weight:500}.exam-assigned{color:#10b981;font-size:.9rem;font-weight:600;margin:0}.exam-assigned strong{color:#059669}.exam-description{color:#4b5563;font-size:.9rem;line-height:1.5;margin:0}.exam-subjects{background:#f9fafb;border-radius:8px;margin-top:.5rem;padding:1rem}.exam-subjects-title{color:#1f2937;font-size:.9rem;font-weight:700;margin:0 0 .75rem;text-align:center}.exam-subject-item .subject-name{color:#1f2937;display:block;font-size:.9rem;font-weight:600;text-align:center;width:100%}.exam-subject-item .subject-datetime{color:#6b7280;display:block;font-size:.85rem;text-align:center;width:100%}.no-exams{color:#6b7280;padding:4rem 2rem;text-align:center}.no-exams-icon{font-size:4rem;margin-bottom:1rem}.no-exams h3{color:#1f2937;font-size:1.5rem;margin:0 0 .5rem}.no-exams p{font-size:1rem;margin:0}.marks-entry-section{background:#fff;border:2px solid #ff8b3d;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin-top:2rem;padding:2rem}.global-total-marks-section{background:#fff7ed;border:2px solid #ff8b3d;border-radius:10px;margin:1.5rem 0;padding:1.5rem}.global-total-marks-box{display:flex;flex-direction:column;gap:.75rem}.global-total-marks-label{color:#c2410c;font-size:1rem;font-weight:700;margin:0}.global-total-marks-input-group{align-items:center;display:flex;gap:1rem}.global-total-marks-input{border:2px solid #ff8b3d;border-radius:8px;color:#c2410c;flex:1 1;font-size:1rem;font-weight:600;max-width:200px;padding:.75rem 1rem;transition:all .2s ease}.global-total-marks-input:focus{background:#fff;border-color:#ff7524;box-shadow:0 0 0 3px #ff8b3d33;outline:none}.apply-total-marks-btn{background:#ff8b3d;border:none;border-radius:8px;box-shadow:0 4px 14px #ff8b3d66;color:#fff;cursor:pointer;font-size:.95rem;font-weight:700;padding:.75rem 1.5rem;transition:all .2s ease;white-space:nowrap}.apply-total-marks-btn:hover{background:#ff7524;box-shadow:0 6px 20px #ff8b3d80;transform:translateY(-2px)}.global-total-marks-hint{color:#c2410c;font-size:.85rem;font-style:italic;margin:0}.total-marks-cell-wrapper{align-items:center;display:flex;gap:.5rem;position:relative}.total-marks-cell{flex:1 1}.global-mark-indicator{color:#10b981;cursor:help;flex-shrink:0;font-size:1rem;font-weight:700}.total-marks-popup-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.total-marks-popup{animation:slideUpScale .4s ease;background:#fff;border:3px solid #ff8b3d;border-radius:24px;box-shadow:0 20px 60px #ff8b3d4d;max-width:480px;padding:3rem 2.5rem;position:relative;text-align:center;width:90%}.total-marks-popup-icon{animation:scaleInBounce .6s ease .2s both;display:flex;justify-content:center;margin-bottom:1.5rem}.total-marks-popup-title{color:#ff8b3d;font-size:1.75rem;font-weight:700;margin:0 0 1rem}.total-marks-popup-message{color:#374151;font-size:1.1rem;line-height:1.6;margin:0 0 .75rem}.total-marks-highlight{background:#fff7ed;border-radius:8px;color:#ff8b3d;display:inline-block;font-size:1.3rem;font-weight:700;margin:0 .25rem;padding:.25rem .75rem}.total-marks-popup-hint{color:#6b7280;font-size:.95rem;font-style:italic;margin:.5rem 0 1.5rem}.total-marks-popup-button{background:#ff8b3d;border:none;border-radius:12px;box-shadow:0 4px 14px #ff8b3d66;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:.875rem 2.5rem;transition:all .2s ease}.total-marks-popup-button:hover{background:#ff7524;box-shadow:0 6px 20px #ff8b3d80;transform:translateY(-2px)}.total-marks-popup-button:active{transform:translateY(0)}@keyframes slideUpScale{0%{opacity:0;transform:translateY(30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes scaleInBounce{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.1)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}.marks-saved-popup-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.marks-saved-popup{animation:slideUpScale .4s ease;background:#fff;border:3px solid #ff8b3d;border-radius:24px;box-shadow:0 20px 60px #ff8b3d4d;max-width:500px;padding:3rem 2.5rem;position:relative;text-align:center;width:90%}.marks-saved-popup-icon{animation:scaleInBounce .6s ease .2s both;display:flex;justify-content:center;margin-bottom:1.5rem}.marks-saved-popup-title{color:#ff8b3d;font-size:1.75rem;font-weight:700;margin:0 0 1rem}.marks-saved-popup-message{color:#374151;font-size:1.1rem;line-height:1.6;margin:0 0 .75rem}.marks-saved-highlight{background:#fff7ed;border-radius:8px;color:#ff8b3d;display:inline-block;font-size:1.3rem;font-weight:700;margin:0 .25rem;padding:.25rem .75rem}.marks-saved-popup-hint{color:#6b7280;font-size:.95rem;font-style:italic;margin:.5rem 0 1.5rem}.marks-saved-popup-button{background:#ff8b3d;border:none;border-radius:12px;box-shadow:0 4px 14px #ff8b3d66;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:.875rem 2.5rem;transition:all .2s ease}.marks-saved-popup-button:hover{background:#ff7524;box-shadow:0 6px 20px #ff8b3d80;transform:translateY(-2px)}.marks-saved-popup-button:active{transform:translateY(0)}.marks-entry-header{align-items:flex-start;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.marks-entry-header h3{color:#1f2937;font-size:1.5rem;font-weight:700;margin:0 0 .5rem}.marks-entry-header p{color:#6b7280;font-size:.95rem;margin:.25rem 0}.marks-entry-header p strong{color:#1f2937}.marks-instruction{background:#eff6ff;border-radius:6px;color:#1e40af!important;font-size:.9rem!important;margin-top:.5rem!important;padding:.75rem}.close-marks-btn{background:#ef4444;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.close-marks-btn:hover{background:#dc2626;transform:translateY(-2px)}.exam-subject-item{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:.75rem 0}.exam-subject-item:last-child{border-bottom:none}.subject-info{align-items:center;display:flex;flex-direction:column;gap:.25rem;text-align:center;width:100%}.add-marks-btn{align-self:center;background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;margin:0 auto;padding:.5rem .75rem;transition:all .2s ease;white-space:nowrap;width:fit-content}.add-marks-btn:hover{background:#059669;transform:translateY(-2px)}.marks-table-container{margin-top:1.5rem}.marks-table{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow:hidden}.marks-table thead{background:#ff8b3d;color:#fff}.marks-table th{font-size:.9rem;letter-spacing:.5px;padding:1rem}.marks-table th:first-child{width:20%}.marks-table th:nth-child(2){text-align:center;width:12%}.marks-table th:nth-child(3),.marks-table th:nth-child(4){text-align:center;width:15%}.marks-table th:nth-child(5){width:12%}.marks-table th:nth-child(6){width:26%}.marks-table td{padding:1rem}.marks-table td:nth-child(2),.marks-table td:nth-child(3),.marks-table td:nth-child(4),.marks-table td:nth-child(5){text-align:center}.student-name-cell{word-wrap:break-word;color:#1f2937;font-weight:600}.student-id-cell{color:#6b7280;font-size:.9rem;text-align:center}.grade-input,.marks-input,.remarks-input{border:1.5px solid #e5e7eb;border-radius:6px;box-sizing:border-box;font-size:.9rem;padding:.5rem;transition:all .2s ease;width:100%}.grade-input:focus,.marks-input:focus,.remarks-input:focus{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.grade-input,.marks-input{max-width:100%;text-align:center}.grade-input{text-transform:uppercase}.remarks-input{text-align:left;width:100%}.marks-actions{border-top:2px solid #e5e7eb;display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem}.save-marks-btn{background:#ff8b3d;border:none;border-radius:8px;box-shadow:0 4px 14px #ff8b3d66;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:.75rem 2rem;transition:all .2s ease}.save-marks-btn:hover:not(:disabled){background:#ff7524;box-shadow:0 6px 20px #ff8b3d80;transform:translateY(-2px)}.save-marks-btn:disabled{cursor:not-allowed;opacity:.6}.cancel-marks-btn{background:#fff;border:2px solid #ef4444;border-radius:8px;color:#ef4444;cursor:pointer;font-size:1rem;font-weight:700;padding:.75rem 2rem;transition:all .2s ease}.cancel-marks-btn:hover{background:#fee2e2}@media (max-width:768px){.dashboard-header{align-items:flex-start;flex-direction:column;gap:1rem;padding:1rem}.nav-tabs{overflow-x:auto;padding:.75rem 1rem}.nav-tab{font-size:.85rem;padding:.5rem 1rem}.dashboard-main{padding:16px 12px}.welcome-section{border-radius:12px;border-top:4px solid #ff8b3d!important;margin:16px 12px 20px;padding:32px 24px}.welcome-emoji{font-size:40px}.welcome-title{font-size:28px}.current-date,.welcome-subtitle{font-size:14px}.current-date{flex-direction:row;flex-wrap:wrap;justify-content:center}.homework-grid,.info-cards{grid-template-columns:1fr}.exams-section{padding:16px 12px}.exams-header{border-radius:12px;border-top:4px solid #ff8b3d!important;margin:16px 12px 20px;padding:32px 24px}.exams-header-icon{font-size:40px}.exams-header-title{flex-direction:column;font-size:28px;gap:8px}.exams-header-subtitle{font-size:14px}.exams-grid{grid-template-columns:1fr}.exam-card{padding:1.25rem}.exam-subject-item{align-items:flex-start;flex-direction:column;gap:.5rem}.marks-entry-section{padding:1.5rem}.marks-entry-header{flex-direction:column;gap:1rem}.global-total-marks-section{margin:1rem 0;padding:1rem}.global-total-marks-input-group{align-items:stretch;flex-direction:column;gap:.75rem}.global-total-marks-input{box-sizing:border-box;max-width:100%;width:100%}.apply-total-marks-btn{padding:.75rem 1rem;width:100%}.marks-table-container{overflow-x:scroll}.marks-table{min-width:900px}.marks-table td,.marks-table th{font-size:.75rem;padding:.75rem .5rem}.marks-table th{font-size:.7rem;letter-spacing:.2px;line-height:1.3;padding:.75rem .4rem;white-space:normal;word-break:break-word}.marks-table th:nth-child(3),.marks-table th:nth-child(4){font-size:.65rem;min-width:90px;padding:.75rem .6rem}.marks-table td:nth-child(3),.marks-table td:nth-child(4){padding:.75rem .6rem}.marks-actions{flex-direction:column}.cancel-marks-btn,.save-marks-btn{width:100%}.schedule-section{padding:20px 16px}.schedule-header-card{padding:32px 24px}.schedule-header-title{font-size:28px}.schedule-header-icon{height:36px;width:36px}.period-card{gap:12px;padding:20px 24px}.grade-info{font-size:13px;padding-bottom:12px}.subject-name{font-size:16px}.time-text{font-size:14px}.school-timings-card{gap:12px;padding:24px 20px}.header-row{gap:10px}.clock-icon{font-size:24px}.title{font-size:20px}.info-row{flex-direction:column;gap:4px}.label,.value{font-size:14px}.schedule-days-grid{gap:20px;grid-template-columns:1fr}.day-content{padding:20px}.attendance-records-section{padding:20px 16px}.records-header-card{padding:32px 24px}.records-title{font-size:28px}.records-filters-card{padding:20px 24px}.records-controls{align-items:stretch;flex-direction:column;gap:20px}.records-dropdown{min-width:100%}.month-navigation-bar{flex-direction:column;gap:16px;padding:16px 20px}.month-nav-btn{font-size:12px;min-width:100px;padding:6px 12px}.current-month-display{font-size:22px}.attendance-stats-grid{gap:16px;grid-template-columns:repeat(2,1fr)}.student-row{gap:12px;grid-template-columns:40px 1fr auto;padding:16px}.status-badge{align-self:center;font-size:11px;grid-column:auto;justify-self:end;margin-top:0;padding:6px 12px}.status-icon-circle{height:36px;width:36px}.status-icon-circle svg{height:20px;width:20px}.date-group-header{align-items:flex-start;flex-direction:column;gap:12px;padding:14px 20px}.date-count-badge{align-self:flex-end}.attendance-section{padding:20px 16px}.attendance-header-card{padding:32px 24px}.attendance-title{font-size:28px}.attendance-controls-card{padding:24px 20px}.attendance-controls{flex-direction:column;gap:20px}.class-dropdown,.date-dropdown,.section-dropdown{min-width:100%}.students-grid{gap:16px;grid-template-columns:1fr}.save-attendance-container{flex-direction:column;padding:16px 20px}.quick-action-btn,.submit-attendance-btn{width:100%}}.success-popup-overlay{background:#00000080;z-index:1000}.success-popup{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:480px;padding:48px 40px;text-align:center}.success-popup-icon{margin-bottom:24px}.success-popup-icon svg path{stroke-dasharray:50;stroke-dashoffset:50;animation:checkmarkDraw .6s ease .3s forwards}@keyframes checkmarkDraw{to{stroke-dashoffset:0}}.success-popup-title{color:#1f2937;font-size:28px;margin:0 0 16px}.success-popup-message{color:#6b7280;line-height:1.6;margin:0 0 32px}.success-popup-message strong{color:#ff8b3d;font-size:18px;font-weight:700}.success-popup-button{background:#ff8b3d;border:none;border-radius:12px;box-shadow:0 4px 14px #ff8b3d66;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 40px;transition:all .2s ease}.success-popup-button:hover{background:#ff7524;box-shadow:0 6px 20px #ff8b3d80;transform:translateY(-2px)}.success-popup-button:active{transform:translateY(0)}.delete-popup-overlay{align-items:center;animation:fadeIn .3s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.delete-popup{animation:slideUp .4s ease;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:480px;padding:48px 40px;position:relative;text-align:center;width:90%}.delete-popup-icon{animation:scaleIn .5s ease .2s both;display:flex;justify-content:center;margin-bottom:24px}.delete-popup-title{color:#1f2937;font-size:28px;font-weight:700;margin:0 0 16px}.delete-popup-message{color:#6b7280;font-size:16px;line-height:1.6;margin:0 0 32px}.delete-popup-buttons{display:flex;gap:12px;justify-content:center}.delete-popup-cancel-btn{background:#f3f4f6;border:none;border-radius:12px;color:#374151;cursor:pointer;font-size:16px;font-weight:600;padding:14px 32px;transition:all .2s ease}.delete-popup-cancel-btn:hover{background:#e5e7eb;transform:translateY(-2px)}.delete-popup-confirm-btn{background:#ef4444;border:none;border-radius:12px;box-shadow:0 4px 14px #ef444466;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 32px;transition:all .2s ease}.delete-popup-confirm-btn:hover{background:#dc2626;box-shadow:0 6px 20px #ef444480;transform:translateY(-2px)}.delete-popup-confirm-btn:active{transform:translateY(0)}@media (min-width:1400px){.schedule-days-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:900px) and (max-width:1399px){.schedule-days-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}}@media (min-width:769px) and (max-width:1024px){.students-grid{grid-template-columns:repeat(2,1fr)}.attendance-stats-grid{grid-template-columns:repeat(3,1fr)}.attendance-stats-grid .stat-card:nth-child(4),.attendance-stats-grid .stat-card:nth-child(5){grid-column:span 1}}.chat-section-modern{background:#f9fafb;min-height:calc(100vh - 200px);padding:32px 24px}.chat-page-header{align-items:center;background:#fff;border-radius:16px;border-top:4px solid #ff8b3d;box-shadow:0 4px 6px #00000012;display:flex;flex-direction:column;gap:24px;margin-bottom:32px;margin-left:auto;margin-right:auto;max-width:1400px;padding:48px 40px;text-align:center}.chat-view-toggle{background:#f3f4f6;border-radius:12px;display:flex;gap:8px;margin-top:16px;padding:4px}.chat-view-toggle .toggle-btn{background:#0000;border:none;border-radius:8px;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s ease}.chat-view-toggle .toggle-btn:hover{background:#ffffff80;color:#374151}.chat-view-toggle .toggle-btn.active{background:#ff8b3d;box-shadow:0 2px 4px #ff8b3d4d;color:#fff;font-weight:600}.chat-header-icon{display:block;font-size:48px;margin-bottom:12px}.chat-page-title{color:#1f2937;font-size:36px;font-weight:700;margin:0}.chat-page-subtitle{color:#6b7280;font-size:16px;font-weight:400;margin-bottom:0;margin-top:8px}.chat-main-container{grid-gap:24px;display:grid;gap:24px;grid-template-columns:380px 1fr;height:calc(100vh - 280px);margin:0 auto;max-width:1400px;min-height:600px}.chat-sidebar{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;height:100%;overflow-x:clip;overflow-y:auto;padding:0;position:relative}.chat-sidebar-header{border-bottom:2px solid #e5e7eb;padding:24px 24px 16px}.chat-sidebar-title{color:#1f2937;font-size:20px;font-weight:700;margin:0 0 4px}.chat-search-container{border-bottom:1px solid #e5e7eb;padding:16px 24px}.chat-search-input{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;color:#1f2937;font-size:14px;outline:none;padding:10px 16px;transition:all .2s ease;width:100%}.chat-search-input:focus{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a}.chat-search-input::placeholder{color:#9ca3af}.chat-teachers-list{display:flex;flex:1 1;flex-direction:column;gap:8px;overflow-x:clip;overflow-y:auto;padding:8px;position:relative}.chat-teachers-list::-webkit-scrollbar{width:6px}.chat-teachers-list::-webkit-scrollbar-track{background:#f9fafb}.chat-teachers-list::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:3px}.chat-teachers-list::-webkit-scrollbar-thumb:hover{background:#d1d5db}.chat-teacher-card{align-items:center;background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:12px;margin:0;min-width:0;overflow:visible;padding:16px;position:relative;transition:all .3s ease;width:100%}.chat-teacher-card:hover{background:#f9fafb;border-color:#ff8b3d;transform:translateX(4px)}.chat-teacher-card.selected{background:#ff8b3d;border-color:#ff8b3d}.chat-teacher-avatar-wrapper{margin-bottom:8px;position:relative}.chat-teacher-avatar{align-items:center;background:#f9fafb;border-radius:50%;display:flex;font-size:48px;height:64px;justify-content:center;width:64px}.chat-teacher-card.selected .chat-teacher-avatar{background:#fff3}.chat-online-indicator{bottom:2px;height:14px;right:2px;width:14px}.chat-online-indicator,.chat-online-indicator-small{background:#10b981;border:2px solid #fff;border-radius:50%;position:absolute}.chat-online-indicator-small{bottom:0;height:12px;right:0;width:12px}.chat-teacher-info{text-align:center;width:100%}.chat-teacher-name{color:#1f2937;font-size:17px;font-weight:700;margin:0 0 4px;text-align:center}.chat-teacher-card.selected .chat-teacher-name{color:#fff}.chat-teacher-subject{color:#6b7280;font-size:13px;font-weight:600;letter-spacing:.5px;margin:0 0 4px;text-align:center;text-transform:uppercase}.chat-teacher-card.selected .chat-teacher-subject{color:#ffffffe6}.chat-teacher-qualification{color:#9ca3af;font-size:12px;font-style:italic;font-weight:500;margin:0;text-align:center}.chat-teacher-card.selected .chat-teacher-qualification{color:#fffc}.chat-unread-badge{align-items:center;background:#25d366;border-radius:9px;box-shadow:0 2px 4px #25d36680;box-sizing:border-box;color:#fff;display:flex;flex-shrink:0;font-size:10px;font-weight:700;height:18px;justify-content:center;letter-spacing:.2px;line-height:1;min-width:18px;padding:0 5px;position:absolute;right:4px;top:4px;white-space:nowrap;z-index:10}.chat-teacher-card.selected .chat-unread-badge{background:#ffffff4d;color:#fff}.chat-empty-state{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;height:100%;justify-content:center;padding:64px 32px}.chat-empty-icon{font-size:80px;margin-bottom:24px;opacity:.3}.chat-empty-title{color:#1f2937;font-size:24px;font-weight:700;margin:0 0 12px}.chat-empty-message{color:#6b7280;font-size:16px;font-weight:400;line-height:1.5;margin:0;max-width:400px;text-align:center}.chat-window-modern{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;height:100%;overflow:hidden}.chat-window-header-modern{align-items:center;background:#ff8b3d;border-radius:16px 16px 0 0;display:flex;gap:16px;padding:20px 32px}.chat-back-button{background:#fff3;border:none;border-radius:8px;color:#fff;cursor:pointer;display:none;font-size:20px;height:36px;transition:all .2s ease;width:36px}.chat-back-button:hover{background:#ffffff4d}.chat-header-avatar-wrapper{height:48px;position:relative;width:48px}.chat-header-avatar{align-items:center;background:#fff;border-radius:50%;display:flex;font-size:24px;height:48px;justify-content:center;width:48px}.chat-header-teacher-info{flex:1 1}.chat-header-teacher-name{color:#fff;font-size:18px;font-weight:700;margin:0 0 2px}.chat-header-teacher-subject{color:#ffffffe6;font-size:13px;font-weight:500;margin:0}.chat-messages-area{background:#f9fafb;flex:1 1;overflow-y:auto;padding:24px;scroll-behavior:smooth}.chat-messages-area::-webkit-scrollbar{width:6px}.chat-messages-area::-webkit-scrollbar-track{background:#f9fafb}.chat-messages-area::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:3px}.chat-messages-area::-webkit-scrollbar-thumb:hover{background:#d1d5db}.chat-message{display:flex;margin-bottom:16px}.chat-message.sent{justify-content:flex-end}.chat-message.received{justify-content:flex-start}.chat-message-content{background:#fff;border-radius:16px;box-shadow:0 1px 2px #0000000d;max-width:70%;padding:12px 16px}.chat-message.sent .chat-message-content{background:#ff8b3d;color:#fff}.chat-message-sender{font-size:13px;font-weight:600;margin-bottom:4px;opacity:.8}.chat-message-text{word-wrap:break-word;font-size:15px;line-height:1.5;margin:0}.chat-message-time{font-size:11px;margin-top:4px;opacity:.7}.chat-message-content{position:relative}.unread-indicator-circle{animation:pulse 2s infinite;background:#ef4444;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #ef444480;height:16px;position:absolute;right:-6px;top:-6px;width:16px;z-index:10}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.chat-message.has-unread-indicator .chat-message-content{position:relative}.chat-no-messages{color:#6b7280;padding:40px 20px;text-align:center}.chat-input-area-modern{align-items:center;background:#fff;border-radius:0 0 16px 16px;border-top:1px solid #e5e7eb;display:flex;gap:12px;padding:20px 24px}.chat-input-modern{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:24px;color:#1f2937;flex:1 1;font-size:15px;font-weight:400;outline:none;padding:12px 20px;transition:all .2s ease}.chat-input-modern:focus{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a}.chat-input-modern::placeholder{color:#9ca3af}.chat-send-button{align-items:center;background:#ff8b3d;border:none;border-radius:50%;box-shadow:0 2px 8px #ff8b3d4d;color:#fff;cursor:pointer;display:flex;font-size:20px;height:48px;justify-content:center;transition:all .2s ease;width:48px}.chat-send-button:hover:not(:disabled){background:#ff7524;transform:scale(1.05)}.chat-send-button:disabled{background:#d1d5db;cursor:not-allowed;transform:none}.chat-loading-container,.chat-loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center}.chat-loading-container,.chat-loading-state,.chat-no-teachers{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;padding:64px 32px}.chat-no-teachers{text-align:center}.no-teachers-icon{font-size:80px;margin-bottom:24px;opacity:.3}.chat-no-teachers h3{color:#1f2937;font-size:24px;font-weight:700;margin:0 0 12px}.chat-no-teachers p{color:#6b7280;font-size:16px;font-weight:400;margin:0}@media (max-width:1024px){.chat-main-container{grid-template-columns:320px 1fr}}@media (max-width:768px){.chat-main-container{grid-template-columns:1fr;height:calc(100vh - 240px)}.chat-sidebar.hidden-mobile{display:none}.chat-back-button{display:flex}.chat-page-header{padding:32px 24px}.chat-header-icon{font-size:40px}.chat-page-title{font-size:28px}.chat-page-subtitle{font-size:14px}}.ai-chat-section{background:#f9fafb;box-sizing:border-box;display:flex;flex-direction:column;margin:0 auto;max-width:100%;max-width:1200px;min-height:calc(100vh - 200px);overflow-x:hidden;padding:32px 24px;width:100%}.ai-chat-header{background:linear-gradient(135deg,#ff8b3d,#ff7524);border-radius:16px;box-shadow:0 4px 6px #00000012;color:#fff;margin-bottom:32px;padding:48px 40px;text-align:center}.ai-chat-header-icon{display:block;font-size:48px;margin-bottom:12px}.ai-chat-title{color:#fff;font-size:36px;font-weight:700;margin:0}.ai-chat-subtitle{color:#ffffffe6;font-size:16px;font-weight:400;margin-bottom:0;margin-top:8px}.ai-chat-messages-container{background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000001a;flex:1 1;margin-bottom:24px;max-height:calc(100vh - 400px);min-height:400px;overflow-y:auto;padding:24px}.ai-chat-welcome{color:#6b7280;padding:60px 20px;text-align:center}.ai-chat-welcome-icon{font-size:64px;margin-bottom:20px}.ai-chat-welcome h3{color:#1f2937;font-size:24px;font-weight:700;margin-bottom:16px}.ai-chat-welcome p{font-size:16px;margin-bottom:12px}.ai-chat-start{color:#ff8b3d;font-weight:600;margin-top:24px}.ai-chat-messages{display:flex;flex-direction:column;gap:16px}.ai-chat-message{align-items:flex-start;animation:fadeIn .3s ease-in;display:flex;gap:12px}.ai-chat-message.user-message{flex-direction:row-reverse}.ai-chat-message-avatar{align-items:center;background:#f3f4f6;border-radius:50%;display:flex;flex-shrink:0;font-size:20px;height:40px;justify-content:center;width:40px}.user-message .ai-chat-message-avatar{background:#ff8b3d}.ai-message .ai-chat-message-avatar{background:linear-gradient(135deg,#ff8b3d,#ff7524)}.ai-chat-message-content{flex:1 1;max-width:70%}.user-message .ai-chat-message-content{align-items:flex-end;display:flex;flex-direction:column}.ai-chat-message-text{word-wrap:break-word;background:#f3f4f6;border-radius:16px;color:#1f2937;font-size:15px;line-height:1.5;padding:12px 16px}.user-message .ai-chat-message-text{background:#ff8b3d;border-bottom-right-radius:4px;color:#fff}.ai-message .ai-chat-message-text{background:#f3f4f6;border-bottom-left-radius:4px}.ai-chat-message-time{color:#9ca3af;font-size:12px;margin-top:4px;padding:0 4px}.ai-chat-typing-indicator{display:flex;gap:4px;padding:12px 16px}.ai-chat-typing-indicator span{animation:typing 1.4s infinite;background:#9ca3af;border-radius:50%;height:8px;width:8px}.ai-chat-typing-indicator span:nth-child(2){animation-delay:.2s}.ai-chat-typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.7;transform:translateY(0)}30%{opacity:1;transform:translateY(-10px)}}.ai-chat-input-container{align-items:center;background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000001a;display:flex;gap:12px;padding:20px 24px}.ai-chat-input{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:24px;color:#1f2937;flex:1 1;font-size:15px;font-weight:400;outline:none;padding:12px 20px;transition:all .2s ease}.ai-chat-input:focus{background:#fff;border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a}.ai-chat-input:disabled{cursor:not-allowed;opacity:.6}.ai-chat-send-button{align-items:center;background:linear-gradient(135deg,#ff8b3d,#ff7524);border:none;border-radius:50%;box-shadow:0 2px 8px #ff8b3d4d;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:20px;height:48px;justify-content:center;transition:all .2s ease;width:48px}.ai-chat-send-button:hover:not(:disabled){box-shadow:0 4px 12px #ff8b3d66;transform:scale(1.05)}.ai-chat-send-button:disabled{cursor:not-allowed;opacity:.5;transform:none}@media (max-width:768px){.ai-chat-section{min-height:auto;padding:20px 16px}.ai-chat-header{margin-bottom:20px;padding:32px 24px}.ai-chat-header-icon{font-size:40px}.ai-chat-title{font-size:28px}.ai-chat-subtitle{font-size:14px}.ai-chat-messages-container{max-height:calc(100vh - 350px);min-height:300px;padding:16px}.ai-chat-message-content{max-width:85%}.ai-chat-input-container{padding:12px 16px}.ai-chat-input{font-size:14px;padding:10px 16px}.ai-chat-send-button{font-size:18px;height:40px;width:40px}}@media (max-width:480px){.ai-chat-section{padding:16px 12px}.ai-chat-header{margin-bottom:16px;padding:24px 20px}.ai-chat-header-icon{font-size:36px}.ai-chat-title{font-size:24px}.ai-chat-messages-container{min-height:250px;padding:12px}.ai-chat-message-content{max-width:90%}.ai-chat-input-container{padding:10px 12px}.ai-chat-input{font-size:13px;padding:8px 14px}.ai-chat-send-button{font-size:16px;height:36px;width:36px}}.ai-chat-settings-modal{align-items:center;animation:fadeIn .3s ease;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.ai-chat-settings-content{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.ai-chat-settings-header{align-items:center;background:linear-gradient(135deg,#ff8b3d,#ff7524);border-bottom:1px solid #e5e7eb;border-radius:16px 16px 0 0;color:#fff;display:flex;justify-content:space-between;padding:24px}.ai-chat-settings-header h3{font-size:20px;font-weight:700;margin:0}.ai-chat-settings-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.ai-chat-settings-close:hover{background:#ffffff4d;transform:scale(1.1)}.ai-chat-settings-body{padding:24px}.ai-chat-settings-info{color:#6b7280;font-size:14px;line-height:1.6;margin-bottom:24px}.ai-chat-settings-steps{background:#f9fafb;border-radius:12px;margin-bottom:24px;padding:20px}.ai-chat-settings-steps h4{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 12px}.ai-chat-settings-steps ol{color:#374151;font-size:14px;line-height:1.8;margin:0;padding-left:20px}.ai-chat-settings-steps a{color:#ff8b3d;font-weight:600;text-decoration:none}.ai-chat-settings-steps a:hover{text-decoration:underline}.ai-chat-settings-input-group{margin-bottom:24px}.ai-chat-settings-input-group label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.ai-chat-settings-input{border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-size:14px;padding:12px 16px;transition:all .2s ease;width:100%}.ai-chat-settings-input:focus{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.ai-chat-settings-hint{color:#6b7280;font-size:12px;margin-top:8px}.ai-chat-settings-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.ai-chat-settings-cancel-btn,.ai-chat-settings-remove-btn,.ai-chat-settings-save-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;min-width:120px;padding:12px 24px;transition:all .2s ease}.ai-chat-settings-save-btn{background:linear-gradient(135deg,#ff8b3d,#ff7524);color:#fff}.ai-chat-settings-save-btn:hover:not(:disabled){box-shadow:0 4px 12px #ff8b3d66;transform:translateY(-2px)}.ai-chat-settings-save-btn:disabled{cursor:not-allowed;opacity:.5}.ai-chat-settings-remove-btn{background:#ef4444;color:#fff}.ai-chat-settings-remove-btn:hover{background:#dc2626;box-shadow:0 4px 12px #ef444466;transform:translateY(-2px)}.ai-chat-settings-cancel-btn{background:#f3f4f6;color:#374151}.ai-chat-settings-cancel-btn:hover{background:#e5e7eb}.ai-chat-settings-note{background:#fff7ed;border-left:4px solid #ff8b3d;border-radius:8px;color:#1f2937;font-size:13px;line-height:1.6;padding:16px}.ai-chat-settings-note p{margin:8px 0}.ai-chat-settings-note p:first-child{margin-top:0}.ai-chat-settings-note p:last-child{margin-bottom:0}.ai-chat-settings-note strong{color:#ff8b3d}@media (max-width:768px){.ai-chat-settings-modal{padding:10px}.ai-chat-settings-content{max-height:95vh}.ai-chat-settings-header{padding:20px}.ai-chat-settings-header h3{font-size:18px}.ai-chat-settings-body{padding:20px}.ai-chat-settings-actions{flex-direction:column}.ai-chat-settings-cancel-btn,.ai-chat-settings-remove-btn,.ai-chat-settings-save-btn{width:100%}}.homework-completion-modal-overlay{align-items:center;animation:modalFadeIn .25s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172abf;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.homework-completion-modal{animation:modalSlideUp .35s ease;background:#fff;border-radius:20px;box-shadow:0 25px 50px -12px #0006;display:flex;flex-direction:column;max-height:92vh;max-width:850px;overflow:hidden;width:100%}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.homework-completion-modal-header{align-items:center;background:linear-gradient(135deg,#ff8b3d,#ff6b1a);display:flex;justify-content:space-between;padding:2rem 2.5rem;position:relative}.homework-completion-modal-header h2{align-items:center;color:#fff;display:flex;font-size:1.625rem;font-weight:700;gap:.625rem;margin:0}.close-modal-btn{align-items:center;background:#ffffff40;border:1px solid #ffffff4d;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:1.125rem;height:36px;justify-content:center;padding:.5rem;transition:all .25s ease;width:36px}.close-modal-btn:hover{background:#ffffff59;transform:rotate(90deg)}.homework-completion-modal-content{background:#f8fafc;flex:1 1;overflow-y:auto;padding:2rem 2.5rem}.homework-info-section{background:#fff;border-left:5px solid #ff8b3d;border-radius:16px;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem;padding:1.75rem}.homework-info-section h3{color:#0f172a;font-size:1.5rem;font-weight:700;margin:0 0 1rem;text-align:left}.homework-class-info,.homework-subject-info{color:#475569;font-size:1rem;margin:.625rem 0;text-align:left}.students-list-header{align-items:center;background:#fff;border-radius:14px;box-shadow:0 2px 4px #0000000f;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:1.25rem 1.75rem}.students-list-header h4{color:#0f172a;font-size:1.25rem;font-weight:700;margin:0;text-align:left}.completion-stats{display:flex;gap:1rem}.completed-count{background:#d1fae5;color:#059669}.completed-count,.pending-count{border-radius:10px;font-size:.9375rem;font-weight:700;padding:.625rem 1.25rem}.pending-count{background:#fef3c7;color:#d97706}.students-completion-list{display:flex;flex-direction:column;gap:.875rem;margin-bottom:2rem}.student-completion-item{align-items:center!important;background:#fff!important;border:2px solid #e2e8f0!important;border-radius:14px!important;box-shadow:0 1px 3px #00000014!important;display:flex!important;justify-content:space-between!important;margin:0!important;padding:.75rem 1rem .75rem .5rem!important;transition:all .3s ease}.student-completion-item:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.student-completion-item.completed{background:#ecfdf5;border-color:#10b981}.student-info{align-items:center!important;display:flex!important;flex-direction:row!important;gap:.625rem!important;justify-content:flex-start!important;text-align:left!important;width:auto}.student-avatar,.student-info{margin:0!important;padding:0!important}.student-avatar{align-items:center;background:linear-gradient(135deg,#ff8b3d,#ff6b1a);border-radius:10px;color:#fff;display:flex;flex-shrink:0;font-size:1rem;font-weight:700;height:42px;justify-content:center;width:42px}.student-completion-item.completed .student-avatar{background:linear-gradient(135deg,#10b981,#059669)}.student-details{align-items:flex-start!important;display:flex!important;flex:0 1 auto!important;flex-direction:column!important;gap:.2rem!important;justify-content:center!important;margin:0!important;max-width:none!important;min-width:0!important;padding:0!important;text-align:left!important;width:auto!important}.homework-completion-modal .student-name,.student-completion-item .student-name{align-self:flex-start!important;color:#0f172a!important;display:block!important;font-size:1rem!important;font-weight:600!important;line-height:1.4!important;margin:0!important;padding:0!important;text-align:left!important;width:auto!important}.student-completion-item.completed .student-name{color:#065f46!important}.homework-completion-modal .student-roll,.student-completion-item .student-roll{align-self:flex-start!important;color:#64748b!important;display:block!important;font-size:.875rem!important;font-weight:500!important;margin:0!important;padding:0!important;text-align:left!important;width:auto!important}.student-completion-item.completed .student-roll{color:#047857}.completion-checkbox-label{align-items:center;cursor:pointer;display:flex;flex-shrink:0;gap:.75rem;padding:.5rem;-webkit-user-select:none;user-select:none}.completion-checkbox{display:none}.checkmark{align-items:center;background:#fff;border:2.5px solid #cbd5e1;border-radius:6px;display:flex;flex-shrink:0;height:24px;justify-content:center;position:relative;transition:all .25s ease;width:24px}.checkmark:after{border:solid #fff;border-width:0 2px 2px 0;content:"";height:9px;opacity:0;position:absolute;transform:rotate(45deg);width:5px}.completion-checkbox:checked+.checkmark{background:#10b981;border-color:#10b981}.completion-checkbox:checked+.checkmark:after{opacity:1}.completion-text{color:#64748b;font-size:.9rem;font-weight:600;white-space:nowrap}.completion-checkbox:checked~.completion-text{color:#059669}.homework-completion-modal-actions{background:#fff;border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end;padding:1.75rem 2.5rem}.cancel-completion-btn,.save-completion-btn{border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;padding:.9375rem 2rem;transition:all .25s ease}.cancel-completion-btn{background:#f1f5f9;border:2px solid #e2e8f0;color:#475569}.cancel-completion-btn:hover{background:#e2e8f0}.save-completion-btn{background:linear-gradient(135deg,#ff8b3d,#ff6b1a);box-shadow:0 4px 14px #ff8b3d66;color:#fff}.save-completion-btn:hover{box-shadow:0 6px 20px #ff8b3d80;transform:translateY(-2px)}.cancel-completion-btn:disabled,.save-completion-btn:disabled{cursor:not-allowed;opacity:.6}.no-students-message{background:#fff;border-radius:16px;color:#64748b;padding:4rem 2rem}.no-students-message p{font-size:1.0625rem;font-weight:500}.homework-completion-modal-content::-webkit-scrollbar{width:10px}.homework-completion-modal-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:5px}.homework-completion-modal-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:5px}.homework-completion-modal-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.completion-success-popup-overlay{align-items:center;animation:popupFadeIn .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a99;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}@keyframes popupFadeIn{0%{opacity:0}to{opacity:1}}.completion-success-popup{animation:popupSlideUp .4s cubic-bezier(.4,0,.2,1);background:#fff;border-radius:20px;box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0003;max-width:450px;overflow:hidden;padding:2.5rem 3rem;position:relative;text-align:center;width:90%}@keyframes popupSlideUp{0%{opacity:0;transform:translateY(30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.completion-success-popup:before{animation:gradientMove 2s ease infinite;background:linear-gradient(90deg,#10b981,#059669 50%,#10b981);background-size:200% 100%;content:"";height:5px;left:0;position:absolute;right:0;top:0}.completion-success-popup.error-popup:before{background:linear-gradient(90deg,#ef4444,#dc2626 50%,#ef4444)}@keyframes gradientMove{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.completion-success-icon{align-items:center;animation:iconBounce .6s ease;display:flex;height:80px;justify-content:center;margin:0 auto 1.5rem;width:80px}@keyframes iconBounce{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.completion-success-icon svg{height:100%;width:100%}.completion-success-title{color:#0f172a;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin:0 0 1rem}.completion-success-message{color:#475569;font-size:1.0625rem;font-weight:500;line-height:1.6;margin:0 0 2rem}.completion-success-close-btn{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:12px;box-shadow:0 4px 12px #10b9814d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;letter-spacing:-.01em;padding:.875rem 2.5rem;transition:all .3s ease}.completion-success-close-btn:hover{box-shadow:0 6px 16px #10b98166;transform:translateY(-2px)}.completion-success-close-btn:active{transform:translateY(0)}.completion-success-close-btn.error-btn{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #ef44444d}.completion-success-close-btn.error-btn:hover{box-shadow:0 6px 16px #ef444466}.receptionist-login-container{align-items:center;background:#f9fafb;display:flex;justify-content:center;min-height:100vh;padding:20px}.receptionist-login-card{animation:fadeInUp .4s ease-out;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012,0 2px 4px #0000000d;max-width:480px;padding:48px 40px;width:100%}.login-header{margin-bottom:32px;text-align:center}.nexy-logo{display:block;height:auto;margin:0 auto 24px;max-width:160px;object-fit:contain;width:100%}.login-header h1{color:#1f2937;font-size:28px;font-weight:700;margin:0 0 8px;text-align:center}.login-header p{color:#6b7280;font-size:15px;margin:0 0 32px;text-align:center}.login-form{gap:24px}.form-group,.login-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#374151;font-size:14px;font-weight:600;margin-bottom:0}.form-group input{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;box-sizing:border-box;color:#1f2937;font-family:inherit;font-size:15px;padding:14px 16px;transition:all .2s ease;width:100%}.form-group input:hover:not(:focus):not(:disabled){border-color:#d1d5db}.form-group input:focus{background:#fff;border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.form-group input:disabled{background:#f3f4f6;cursor:not-allowed;opacity:.6}.form-group input.error{border-color:#ef4444}.form-group input.error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.field-error{color:#ef4444;display:block;font-size:13px;margin-top:4px}.password-input-wrapper{position:relative;width:100%}.password-input-wrapper input{padding-right:50px}.password-toggle{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;font-size:20px;height:24px;justify-content:center;padding:4px;position:absolute;right:16px;top:50%;transform:translateY(-50%);transition:color .2s ease;width:24px}.password-toggle:hover:not(:disabled){color:#374151}.password-toggle:disabled{cursor:not-allowed;opacity:.5}.password-toggle:focus{border-radius:4px;outline:2px solid #ff8b3d;outline-offset:2px}.form-options{justify-content:space-between;margin-bottom:4px;margin-top:-8px}.form-options,.remember-me{align-items:center;display:flex}.remember-me{color:#374151;cursor:pointer;font-size:14px;gap:8px;-webkit-user-select:none;user-select:none}.remember-me input[type=checkbox]{accent-color:#ff8b3d;cursor:pointer;height:16px;margin:0;width:16px}.remember-me span{cursor:pointer}.forgot-password{color:#ff8b3d;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s ease}.forgot-password:hover{text-decoration:underline}.forgot-password:focus{border-radius:4px;outline:2px solid #ff8b3d;outline-offset:2px}.error-message{align-items:center;background:#fef2f2;border:1px solid #fee2e2;border-radius:8px;color:#ef4444;display:flex;font-size:14px;gap:8px;margin-bottom:8px;padding:12px 16px}.error-icon{flex-shrink:0;font-size:18px}.login-button{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-bottom:24px;margin-top:24px;padding:16px;transition:all .2s ease;width:100%}.login-button:hover:not(:disabled){background:#ff7524;box-shadow:0 6px 20px #ff8b3d59;transform:translateY(-2px)}.login-button:active:not(:disabled){box-shadow:0 2px 8px #ff8b3d4d;transform:translateY(0)}.login-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.login-button:focus{outline:2px solid #ff8b3d;outline-offset:2px}.login-footer{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:24px;text-align:center}.login-footer p{color:#6b7280;font-size:14px;margin:0}.contact-link{color:#ff8b3d;font-weight:500;text-decoration:none;transition:all .2s ease}.contact-link:hover{text-decoration:underline}.contact-link:focus{border-radius:4px;outline:2px solid #ff8b3d;outline-offset:2px}@media (max-width:640px){.receptionist-login-card{max-width:95%;padding:32px 24px}.nexy-logo{margin-bottom:20px;max-width:140px}.login-header h1{font-size:24px}.form-group input{font-size:15px;padding:12px 14px}.login-button{padding:14px}}@media (min-width:641px) and (max-width:1024px){.receptionist-login-card{padding:40px 32px}}:focus-visible{outline:2px solid #ff8b3d;outline-offset:2px}a,button,input,label{transition:all .2s ease}.receptionist-dashboard{background:#f9fafb;min-height:100vh;overflow-x:hidden;position:relative}.dashboard-layout{display:flex;height:100%;min-height:100vh;position:relative;z-index:1}.receptionist-sidebar{background:#fff;border-right:1px solid #e5e7eb;box-sizing:border-box;display:flex;flex-direction:column;height:100vh;left:0;min-height:100vh;overflow-x:hidden;overflow-y:hidden;padding:24px 16px 20px;position:fixed;top:0;transition:all .3s ease;width:240px;z-index:100}.sidebar-logo{margin-bottom:32px;text-align:center}.nexy-logo-sidebar{display:block;height:auto;margin:0 auto;max-width:140px;object-fit:contain;width:100%}.sidebar-menu{display:flex;flex:1 1;flex-direction:column;gap:4px;min-height:0;overflow:hidden}.sidebar-item{align-items:center;background:#0000;border:none;border-left:4px solid #0000;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;font-size:15px;font-weight:500;justify-content:flex-start;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.sidebar-item:hover{background:#f9fafb;color:#374151}.sidebar-item.active{background:#ff8b3d;border-left:4px solid #ff8b3d;border-radius:0 8px 8px 0;color:#fff;font-weight:600}.sidebar-item.active .sidebar-icon{color:#fff}.sidebar-icon{align-items:center;display:flex;flex-shrink:0;font-size:20px;height:20px;justify-content:center;margin-right:0;width:20px}.sidebar-label{flex:1 1}.sidebar-logout{align-items:center;background:#fee2e2;border:none;border-radius:8px;color:#dc2626;cursor:pointer;display:flex;flex-shrink:0;font-size:15px;font-weight:500;justify-content:flex-start;margin-bottom:0;margin-top:16px;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.sidebar-logout:hover{background:#fecaca}.sidebar-logout .sidebar-icon{color:#dc2626}.dashboard-main-content{background:#f9fafb;display:flex;flex:1 1;flex-direction:column;height:100vh;margin-left:240px;min-height:100vh;overflow-x:hidden;overflow-y:auto;width:calc(100% - 240px)}.dashboard-header{background:#fff;border-bottom:1px solid #e5e7eb;height:64px;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:10}.dashboard-header,.header-left{align-items:center;display:flex}.page-title{color:#1f2937;font-size:20px;font-weight:600;margin:0}.header-right{gap:16px}.header-icon-btn,.header-right{align-items:center;display:flex}.header-icon-btn{background:#0000;border:none;border-radius:8px;color:#6b7280;cursor:pointer;font-size:20px;height:40px;justify-content:center;padding:8px;position:relative;transition:all .2s ease;width:40px}.header-icon-btn:hover{background:#f9fafb;color:#374151}.notification-btn{position:relative}.notification-badge{background:#ef4444;border-radius:10px;color:#fff;font-size:10px;font-weight:600;line-height:1.4;min-width:18px;padding:2px 6px;position:absolute;right:4px;text-align:center;top:4px}.user-profile{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:8px 12px;transition:all .2s ease}.user-profile:hover{background:#f9fafb}.user-avatar{align-items:center;background:#ff8b3d;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:16px;font-weight:600;height:40px;justify-content:center;width:40px}.user-info{display:flex;flex-direction:column;gap:2px}.user-name{color:#1f2937;font-size:14px;font-weight:600;line-height:1.2}.user-role{color:#6b7280;font-size:12px;line-height:1.2}.dropdown-arrow{color:#6b7280;font-size:10px;margin-left:4px}.dashboard-content{animation:fadeIn .4s ease-out;padding:32px}.welcome-card{animation:fadeInUp .5s ease-out;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;margin-bottom:32px;padding:40px;text-align:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.welcome-card h2{color:#1f2937;font-size:28px;font-weight:700;margin:0 0 12px;text-align:center}.welcome-message{color:#6b7280;font-size:16px;line-height:1.6;margin:0 auto;max-width:800px;text-align:center}.profile-cards-grid{grid-gap:24px;animation:fadeInUp .6s ease-out;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:40px;margin-top:0}.profile-card{animation:fadeInUp .7s ease-out;background:#fff;border-left:4px solid;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px;text-align:center;transition:all .2s ease}.profile-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.profile-card-icon{align-items:center;background:#f3f4f6;border-radius:50%;display:flex;font-size:28px;height:56px;justify-content:center;line-height:1;margin:0 auto 16px;width:56px}.profile-card-label{color:#6b7280;font-size:12px;font-weight:700;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.profile-card-value{color:#1f2937;font-size:18px;font-weight:600;line-height:1.4;word-break:break-word}.quick-actions-section{animation:fadeInUp .8s ease-out;margin-bottom:40px;margin-top:40px}.section-title{color:#1f2937;font-size:20px;font-weight:600;margin:0 0 20px}.quick-actions-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.action-card{align-items:center;background:#fff;border:none;border-radius:12px;box-shadow:0 1px 3px #0000001a;cursor:pointer;display:flex;flex-direction:column;gap:12px;padding:24px;text-align:center;transition:all .2s ease}.action-card:hover{border-color:#ff8b3d;border-color:var(--action-color,#ff8b3d);box-shadow:0 4px 12px #0000001a;transform:translateY(-4px)}.action-icon{font-size:48px;margin-bottom:4px}.action-title{color:#1f2937;font-size:16px;font-weight:600;margin:0}.action-description{color:#6b7280;font-size:14px;margin:0}.recent-activity-section{animation:fadeInUp .9s ease-out;margin-top:40px}.activity-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.activity-item{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;gap:16px;padding:16px 0}.activity-item:last-child{border-bottom:none;padding-bottom:0}.activity-icon{align-items:center;background:#f3f4f6;border-radius:50%;display:flex;flex-shrink:0;font-size:20px;height:40px;justify-content:center;width:40px}.activity-content{display:flex;flex:1 1;flex-direction:column;gap:4px}.activity-description{color:#1f2937;font-size:15px;font-weight:500}.activity-timestamp{color:#6b7280;font-size:13px}.add-student-view{flex:1 1;min-height:0;padding:20px;width:100%}.add-student-view::-webkit-scrollbar{width:8px}.add-student-view::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.add-student-view::-webkit-scrollbar-thumb{background:#ff8b3d;border-radius:4px}.add-student-view::-webkit-scrollbar-thumb:hover{background:#ff7524}.add-student-view .school-dashboard .sidebar{display:none!important}.add-student-view .school-dashboard{display:flex;flex-direction:column;min-height:auto!important}.add-student-view .school-dashboard .main-content{margin-left:0!important;max-width:100%!important;padding:0!important;width:100%!important}.add-student-view .content-header{display:none!important}.add-student-view .add-student-section,.add-student-view .school-dashboard .content-body{margin:0!important;padding:0!important}.add-student-view .add-student-card{border-radius:0!important;box-shadow:none!important;margin:0!important;max-width:100%!important;padding:20px!important}.loading-container{align-items:center;color:#1f2937;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.loading-spinner{border:4px solid #e5e7eb;border-radius:50%;border-top-color:#ff8b3d;height:50px;margin-bottom:20px;width:50px}.mobile-dashboard-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d;box-sizing:border-box;color:#000;display:none;flex-direction:row;height:64px;justify-content:space-between;left:0;padding:0 16px;position:fixed;right:0;top:0;width:100%;z-index:1000}.receptionist-info{display:flex;flex-direction:column}.receptionist-name-header{color:#000!important;font-size:16px;font-weight:600;line-height:1.2}.mobile-menu-toggle{align-items:center;background:#0000;border:none;border-radius:8px;color:#000;cursor:pointer;display:none;flex-shrink:0;font-size:28px;justify-content:center;line-height:1;margin-left:auto;min-height:44px;min-width:44px;padding:8px 12px;transition:all .2s ease}.mobile-menu-toggle:hover{background:#0000001a}.mobile-menu-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:9999}.mobile-menu-dropdown{animation:slideInRight .3s ease;background:#fff;box-shadow:-2px 0 8px #0000001a;height:100vh;max-width:90vw;overflow-y:auto;padding-top:0;position:fixed;right:0;top:0;width:280px;z-index:10000!important}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}.mobile-menu-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:20px}.mobile-user-info{align-items:center;display:flex;gap:12px;margin-bottom:16px}.mobile-user-name{color:#1f2937;font-size:16px;font-weight:600;line-height:1.2}.mobile-user-role{color:#6b7280;font-size:12px;line-height:1.2;margin-top:2px}.mobile-logout-btn{background:#dc2626;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:all .2s ease;width:100%}.mobile-logout-btn:hover{background:#b91c1c}.mobile-menu-tabs{display:flex;flex-direction:column;padding:8px 0}.mobile-menu-tab{align-items:center;background:#0000;border:none;border-left:4px solid #0000;color:#6b7280;cursor:pointer;display:flex;font-size:15px;font-weight:500;padding:14px 20px;text-align:left;transition:all .2s ease;width:100%}.mobile-menu-tab:hover{background:#f9fafb;color:#374151}.mobile-menu-tab.active{background:#fff4ed;border-left:4px solid #ff8c42;color:#ff8c42;font-weight:600}@media (max-width:768px){.receptionist-dashboard{height:100vh;overflow-x:hidden;overflow-y:auto}.dashboard-layout{height:auto;min-height:auto}.mobile-dashboard-header,.mobile-menu-toggle{display:flex!important}.mobile-menu-overlay{display:block}.receptionist-sidebar{display:none!important}.dashboard-main-content{height:auto;margin-left:0;min-height:auto;overflow-x:hidden;overflow-y:visible;padding-top:64px;width:100%}.dashboard-header{display:none!important}.page-title{font-size:18px}.dropdown-arrow,.user-info{display:none}.dashboard-content{padding:20px 16px}.welcome-card{padding:24px 20px}.welcome-card h2{font-size:24px}.welcome-message{font-size:14px}.profile-cards-grid,.quick-actions-grid{gap:16px;grid-template-columns:1fr}.action-card,.profile-card{padding:20px}.add-student-view{padding:10px}}@media (min-width:769px) and (max-width:1024px){.receptionist-sidebar{padding:20px 12px;width:200px}.nexy-logo-sidebar{max-width:120px}.dashboard-main-content{margin-left:200px;width:calc(100% - 200px)}.profile-cards-grid,.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}.profile-card:first-child{animation-delay:.1s}.profile-card:nth-child(2){animation-delay:.2s}.profile-card:nth-child(3){animation-delay:.3s}.profile-card:nth-child(4){animation-delay:.4s}.action-card:focus-visible,.sidebar-item:focus-visible,button:focus-visible{outline:2px solid #ff8b3d;outline-offset:2px}*{transition:all .2s ease}.students-records-view{padding:0}.students-records-view .students-content{margin:0 auto;max-width:1400px;padding:2rem}.students-records-view .students-header{border-bottom:1px solid #e5e7eb;margin-bottom:2rem;padding-bottom:1rem;text-align:center}.students-records-view .students-header h1{color:#1f2937;font-size:2.2rem;font-weight:600;letter-spacing:-.025em;margin-bottom:.5rem}.students-records-view .students-header p{color:#6b7280;font-size:1rem;font-weight:400}.students-records-view .students-stats{grid-gap:1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem;padding:1.5rem}.students-records-view .stat-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;text-align:center}.students-records-view .stat-number{color:#ff8b3d;display:block;font-size:2rem;font-weight:700;margin-bottom:.5rem}.students-records-view .stat-label{color:#6b7280;display:block;font-size:.9rem;font-weight:500}.students-records-view .students-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.students-records-view .students-table{background:#fff;border-collapse:collapse;font-size:.9rem;table-layout:fixed;width:100%}.students-records-view .students-table th{background:#ff8c42;border:none;border-right:1px solid #fff3;color:#fff;font-size:.85rem;font-weight:700;letter-spacing:.5px;padding:1rem;text-align:left;text-transform:uppercase;vertical-align:middle}.students-records-view .students-table th:first-child{width:15%}.students-records-view .students-table th:nth-child(2){width:20%}.students-records-view .students-table th:nth-child(3),.students-records-view .students-table th:nth-child(4),.students-records-view .students-table th:nth-child(5){width:12%}.students-records-view .students-table th:nth-child(6){text-align:center;width:10%}.students-records-view .students-table th:nth-child(7){text-align:center;width:19%}.students-records-view .students-table th:last-child{border-right:none}.students-records-view .students-table td{word-wrap:break-word;background:#fff;border-bottom:1px solid #e5e7eb;line-height:1.5;padding:1rem;text-align:left;vertical-align:middle}.students-records-view .students-table td:last-child,.students-records-view .students-table td:nth-child(6){text-align:center}.students-records-view .students-table tr:hover{background:#f9fafb}.students-records-view .students-table tr:last-child td{border-bottom:none}.students-records-view .students-table tr:nth-child(2n){background:#fafafa}.students-records-view .students-table tr:nth-child(2n):hover{background:#f9fafb}.students-records-view .student-name{color:#1f2937;font-size:.95rem;font-weight:400}.students-records-view .email-cell{color:#1f2937}.students-records-view .email-link{color:#1f2937;display:inline-block;max-width:100%;text-decoration:none;transition:color .2s ease;word-break:break-word}.students-records-view .email-link:hover{color:#ff8c42;text-decoration:underline}.students-records-view .class-cell{color:#1f2937}.students-records-view .class-name{background:#eef2ff;border-radius:12px;color:#4338ca;display:inline-block;font-size:.85rem;font-weight:500;padding:.25rem .75rem}.students-records-view .dob-cell{color:#6b7280;font-size:.9rem}.students-records-view .parent-cell{color:#1f2937;font-size:.9rem}.students-records-view .status-cell{text-align:center}.students-records-view .status-badge{border-radius:12px;display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:.35rem .85rem;text-transform:uppercase}.students-records-view .status-badge.active{background:#d1fae5;color:#065f46}.students-records-view .status-badge.inactive{background:#fee2e2;color:#991b1b}.students-records-view .actions-cell{text-align:center}.students-records-view .action-buttons{align-items:center;display:flex;gap:.5rem;justify-content:center}.students-records-view .view-btn{align-items:center;background:none;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:1.1rem;justify-content:center;padding:.5rem;transition:all .2s ease}.students-records-view .view-btn:hover{background:#dbeafe;transform:scale(1.1)}.students-records-view .edit-btn{align-items:center;background:none;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:1.1rem;justify-content:center;padding:.5rem;transition:all .2s ease}.students-records-view .edit-btn:hover{background:#fef3c7;transform:scale(1.1)}.students-records-view .delete-btn{align-items:center;background:none;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:1.1rem;justify-content:center;padding:.5rem;transition:all .2s ease}.students-records-view .delete-btn:hover{background:#fee2e2;transform:scale(1.1)}.students-records-view .loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.students-records-view .loading-spinner{animation:spin 1s linear infinite;font-size:3rem;margin-bottom:1rem}.students-records-view .empty-state{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:4rem 2rem;text-align:center}.students-records-view .empty-icon{font-size:4rem;margin-bottom:1rem}.students-records-view .empty-state h3{color:#1f2937;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.students-records-view .empty-state p{color:#6b7280;font-size:1rem;margin-bottom:2rem}.students-records-view .add-first-student-btn{background:linear-gradient(135deg,#ff8c42,#ffa366);border:none;border-radius:8px;box-shadow:0 2px 4px #ff8c4233;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.students-records-view .add-first-student-btn:hover{box-shadow:0 4px 8px #ff8c424d;transform:translateY(-2px)}@media (max-width:768px){.students-records-view .students-content{padding:1rem}.students-records-view .students-stats{gap:1rem;grid-template-columns:repeat(2,1fr);padding:1rem}.students-records-view .students-table-container{overflow-x:auto}.students-records-view .students-table{min-width:800px}}.popup-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.popup-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-height:90vh;max-width:800px;overflow-x:hidden;overflow-y:auto;width:100%}.popup-header{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:1.5rem 2rem}.popup-header h3{color:#2c3e50;font-size:1.25rem;font-weight:600;margin:0}.close-btn{align-items:center;background:none;border:none;border-radius:4px;color:#2c3e50;cursor:pointer;display:flex;font-size:1.5rem;height:30px;justify-content:center;padding:.25rem;transition:all .2s ease;width:30px}.close-btn:hover{background:#f3f4f6;color:#1f2937}.document-upload-section,.documents-content{text-align:left!important;width:100%}.document-upload-controls{align-items:center!important;display:flex!important;flex-direction:row!important;gap:1rem!important;justify-content:flex-start!important;text-align:left!important;width:100%!important}.document-upload-controls>div{align-items:flex-start!important;display:flex!important;flex:0 0 auto!important;flex-direction:column!important;max-width:300px!important;min-width:250px!important;text-align:left!important}.document-type-label{color:#374151!important;display:block!important;font-weight:500!important;margin-bottom:.5rem!important}.document-type-label,.document-type-select{font-size:1rem!important;line-height:1.5!important;text-align:left!important}.document-type-select{padding:.75rem!important;width:100%!important}.add-document-btn{align-self:flex-end!important;margin-left:0!important}.documents-list{text-align:left!important;width:100%}.document-item{justify-content:space-between!important;width:100%!important}.document-info,.document-item{align-items:center!important;display:flex!important;text-align:left!important}.document-info{flex:1 1!important;gap:1rem!important;justify-content:flex-start!important}.no-documents-text{padding:1rem 0!important;text-align:left!important}.phone-input-wrapper{align-items:center;display:flex!important;gap:8px;width:100%}.country-code-select{border:1px solid #d1d5db!important;border-radius:6px!important;flex-shrink:0;font-size:.95rem!important;max-width:none!important;min-width:150px!important;padding:.75rem!important;width:50%!important}.phone-input-wrapper input[type=tel]{flex:1 1;min-width:0;width:50%!important}.exam-report-cards-container{background:#f9fafb;min-height:calc(100vh - 200px);padding:24px}.report-cards-filters{align-items:flex-end;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px;padding:20px}.report-cards-filters .branch-selector{margin-left:0;min-width:220px}.filter-group{display:flex;flex-direction:column;gap:8px;min-width:180px}.filter-group label{color:#374151;font-size:14px;font-weight:600}.filter-select{background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;color:#1f2937;cursor:pointer;font-size:14px;padding:10px 12px;transition:all .2s ease}.filter-select:hover{border-color:#ff8b3d}.filter-select:focus{border-color:#ff8b3d;box-shadow:0 0 0 3px #ff8b3d1a;outline:none}.refresh-btn{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;height:fit-content;padding:10px 20px;transition:all .2s ease}.refresh-btn:hover:not(:disabled){background:#ff7a2e;box-shadow:0 4px 8px #ff8b3d4d;transform:translateY(-1px)}.refresh-btn:disabled{cursor:not-allowed;opacity:.6}.publish-btn{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;height:fit-content;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.publish-btn:hover:not(:disabled){background:#ff7a2e;box-shadow:0 4px 8px #ff8b3d4d;transform:translateY(-1px)}.publish-btn:disabled{background:#6b7280;cursor:not-allowed;opacity:.6}.report-cards-list{display:flex;flex-direction:column;gap:24px}.student-report-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;transition:all .3s ease}.student-report-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.student-header{background:linear-gradient(135deg,#ff8b3d,#ff7a2e);padding:20px 24px}.student-header,.student-header *,.student-info,.student-info h3{color:#fff!important}.student-info h3{font-size:20px;font-weight:700;margin:0 0 8px}.student-id{margin:4px 0}.student-class,.student-id{color:#fff!important;font-size:14px;opacity:1!important}.student-class{margin:4px 0 0}.marks-table-container{overflow-x:auto;padding:0}.marks-table{border-collapse:collapse;font-size:13px;table-layout:fixed;width:100%}.marks-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.marks-table th{color:#1f2937;font-size:12px;font-weight:700;letter-spacing:.3px;padding:12px 10px;text-align:left;text-transform:uppercase;vertical-align:middle;white-space:nowrap}.marks-table th:first-child,.marks-table th:nth-child(2){width:25%}.marks-table th:nth-child(3),.marks-table th:nth-child(4){text-align:center;width:15%}.marks-table th:nth-child(5){text-align:center;width:20%}.marks-table td{word-wrap:break-word;border-bottom:1px solid #e5e7eb;color:#374151;font-size:13px;overflow-wrap:break-word;padding:12px 10px;vertical-align:middle}.marks-table td:nth-child(3),.marks-table td:nth-child(4),.marks-table td:nth-child(5){text-align:center}.marks-table tbody tr:hover{background:#f9fafb}.marks-table tbody tr:last-child td{border-bottom:none}.exam-info{display:flex;flex-direction:column;gap:3px;line-height:1.3}.exam-info strong{color:#1f2937;font-size:13px;font-weight:600;line-height:1.3}.exam-type{color:#6b7280;font-size:11px;font-weight:500;line-height:1.2}.grade-badge{background:#eff6ff;border-radius:6px;color:#1e40af;display:inline-block;font-size:12px;font-weight:700;min-width:28px;padding:4px 8px;text-align:center}.remarks-cell{word-wrap:break-word;line-height:1.4;max-width:150px}.date-cell,.remarks-cell{color:#6b7280;font-size:12px}.date-cell{white-space:nowrap}.no-data{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:60px 20px}.no-data-icon{font-size:64px;margin-bottom:16px;opacity:.5}.no-data h3{color:#1f2937;font-size:20px;margin:0 0 8px}.no-data p{color:#6b7280;font-size:14px;margin:0}.loading-container{background:#fff;border-radius:12px;padding:60px 20px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;font-size:48px;margin-bottom:16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.report-cards-filters{flex-direction:column}.filter-group{width:100%}.marks-table-container{overflow-x:scroll}.marks-table{min-width:800px}.student-header{padding:16px}.student-info h3{font-size:18px}}.view-details-btn{background:#ff8b3d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s ease;white-space:nowrap}.view-details-btn:hover{background:#ff7a2e;box-shadow:0 2px 4px #ff8b3d4d;transform:translateY(-1px)}.modal-overlay{animation:fadeIn .2s ease;background:#0009;padding:20px}.modal-content{animation:slideUp .3s ease;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:700px;overflow-y:auto;width:100%}.modal-header{background:linear-gradient(135deg,#ff8b3d,#ff7a2e);border-bottom:2px solid #e5e7eb;border-radius:16px 16px 0 0;padding:24px;position:sticky;top:0;z-index:10}.modal-header h2{color:#fff;font-size:24px;font-weight:700;margin:0}.modal-close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:36px;justify-content:center;line-height:1;transition:all .2s ease;width:36px}.modal-close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.detail-section{margin-bottom:24px}.detail-section:last-child{margin-bottom:0}.detail-section h3{border-bottom:2px solid #ff8b3d;color:#1f2937;font-size:18px;font-weight:700;margin:0 0 16px;padding-bottom:8px}.detail-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-label{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-value{color:#1f2937;font-size:15px;font-weight:600}.remarks-text{background:#f9fafb;border-left:4px solid #ff8b3d;border-radius:8px;color:#374151;font-size:14px;line-height:1.6;margin:0;padding:12px}.modal-footer{background:#fff;border-radius:0 0 16px 16px;border-top:1px solid #e5e7eb;bottom:0;display:flex;justify-content:flex-end;padding:20px 24px;position:sticky}.modal-close-button{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.modal-close-button:hover{background:#ff7a2e;box-shadow:0 4px 8px #ff8b3d4d;transform:translateY(-1px)}@media (max-width:768px){.modal-content{margin:10px;max-height:95vh;max-width:95%}.detail-grid{grid-template-columns:1fr}.modal-body,.modal-header{padding:20px}.modal-header h2{font-size:20px}}.view-result-card-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:12px;padding:10px 20px;transition:all .2s ease}.view-result-card-btn:hover{background:#ffffff4d;border-color:#ffffff80;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.result-card-modal{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:95vh;max-width:900px;overflow-y:auto;width:100%}.result-card-header{align-items:center;background:linear-gradient(135deg,#ff8b3d,#ff7a2e);border-radius:16px 16px 0 0;color:#fff;padding:30px;position:relative;text-align:center}.result-card-header,.result-card-school-info{display:flex;flex-direction:column;justify-content:center}.result-card-school-info{align-items:center!important;margin:0 auto;text-align:center!important;width:100%}.result-card-school-info h1{color:#fff;display:block;font-size:32px;font-weight:800;letter-spacing:2px;margin:0 auto 8px;text-align:center!important;text-transform:uppercase;width:100%}.result-card-school-info .school-name{color:#fff;display:block;font-size:16px;font-weight:500;margin:0 auto;opacity:1;text-align:center!important;width:100%}.result-card-header .modal-close-btn{position:absolute;right:20px;top:20px}.result-card-body{padding:30px}.result-card-student-info{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;margin-bottom:24px;padding:24px}.student-info-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);margin-bottom:16px}.student-info-row:last-child{margin-bottom:0}.info-item{display:flex;flex-direction:column;gap:4px}.info-label{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.info-value{color:#1f2937;font-size:16px;font-weight:700}.result-card-marks-table{margin-bottom:24px;overflow-x:auto}.result-card-table{background:#fff;border-collapse:collapse;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;width:100%}.result-card-table thead{background:linear-gradient(135deg,#ff8b3d,#ff7a2e);color:#fff}.result-card-table th{border-right:1px solid #fff3;font-size:13px;font-weight:700;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.result-card-table th:last-child{border-right:none}.result-card-table th:nth-child(2),.result-card-table th:nth-child(3),.result-card-table th:nth-child(4),.result-card-table th:nth-child(5){text-align:center}.result-card-table td{border-bottom:1px solid #e5e7eb;color:#374151;font-size:14px;padding:14px 16px}.result-card-table tbody tr:hover{background:#f9fafb}.result-card-table tbody tr:last-child td{border-bottom:none}.subject-cell{color:#1f2937;font-weight:600}.marks-cell,.percentage-cell{color:#1f2937;font-family:"monospace";font-weight:600;text-align:center}.grade-cell{text-align:center}.grade-badge-large{background:#eff6ff;border-radius:8px;color:#1e40af;display:inline-block;font-size:14px;font-weight:700;min-width:40px;padding:6px 14px}.teacher-cell{color:#6b7280;font-size:13px}.result-card-table tfoot{background:#f9fafb;border-top:3px solid #ff8b3d}.result-card-table tfoot td{border-top:2px solid #e5e7eb;font-size:15px;padding:16px}.total-row td{background:#f9fafb;color:#1f2937;font-weight:700}.total-row td:nth-child(2),.total-row td:nth-child(3),.total-row td:nth-child(4){text-align:center}.result-card-remarks{background:#f9fafb;border-left:4px solid #ff8b3d;border-radius:12px;padding:20px}.result-card-remarks h3{color:#1f2937;font-size:18px;font-weight:700;margin:0 0 16px}.remarks-list{display:flex;flex-direction:column;gap:12px}.remark-item{background:#fff;border-radius:8px;color:#374151;font-size:14px;line-height:1.6;padding:12px}.remark-item strong{color:#1f2937;margin-right:8px}.result-card-footer{background:#f9fafb;border-radius:0 0 16px 16px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;padding:20px 30px}@media (max-width:768px){.result-card-modal{margin:10px;max-width:95%}.result-card-header{padding:20px}.result-card-school-info h1{font-size:24px}.result-card-body{padding:20px}.student-info-row{gap:12px;grid-template-columns:1fr}.result-card-table{font-size:12px}.result-card-table td,.result-card-table th{padding:10px 8px}}.publish-confirm-modal{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;overflow:hidden;width:90%}.publish-confirm-header{background:linear-gradient(135deg,#ff8b3d,#ff7a2e);color:#fff;padding:30px;text-align:center}.publish-confirm-icon{font-size:64px;margin-bottom:12px}.publish-confirm-header h2{color:#fff;font-size:24px;font-weight:700;margin:0}.publish-confirm-body{padding:30px;text-align:center}.publish-confirm-text{color:#6b7280;font-size:16px;margin:0 0 12px}.publish-exam-name{color:#1f2937;font-size:20px;margin:0 0 20px}.publish-exam-name strong{color:#ff8b3d;font-weight:700}.publish-confirm-warning{background:#fef3c7;border-left:4px solid #f59e0b;border-radius:8px;color:#92400e;font-size:14px;margin:0;padding:12px 16px;text-align:left}.publish-confirm-footer{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:20px 30px}.publish-cancel-btn{background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s ease}.publish-cancel-btn:hover{background:#f9fafb;border-color:#d1d5db}.publish-confirm-btn{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s ease}.publish-confirm-btn:hover:not(:disabled){background:#ff7a2e;box-shadow:0 4px 8px #ff8b3d4d;transform:translateY(-1px)}.publish-confirm-btn:disabled{cursor:not-allowed;opacity:.6}.publish-success-modal{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;overflow:hidden;width:90%}.publish-success-header{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:30px;text-align:center}.publish-success-icon{font-size:64px;margin-bottom:12px}.publish-success-header h2{color:#fff;font-size:24px;font-weight:700;margin:0}.publish-success-body{padding:30px;text-align:center}.publish-success-text{color:#1f2937;font-size:18px;line-height:1.6;margin:0 0 16px}.publish-success-text strong{color:#10b981;font-weight:700}.publish-success-info{background:#f0fdf4;border-left:4px solid #10b981;border-radius:8px;color:#6b7280;font-size:14px;margin:0;padding:12px 16px}.publish-success-footer{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;justify-content:center;padding:20px 30px}.publish-success-btn{background:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 32px;transition:all .2s ease}.publish-success-btn:hover{background:#059669;box-shadow:0 4px 8px #10b9814d;transform:translateY(-1px)}.vehicles-page-container{background:#f9fafb;box-sizing:border-box;max-width:100%;min-height:100vh;overflow-x:hidden;padding:32px 24px;width:100%}.vehicles-container{box-sizing:border-box;margin:0 auto;max-width:1400px;width:100%}.vehicles-header-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;border-top:4px solid #ff8b3d;box-shadow:0 4px 6px #00000012;box-sizing:border-box;margin-bottom:32px;padding:48px 40px;position:relative;text-align:center;width:100%}.vehicles-header-icon{display:block;font-size:48px;margin-bottom:12px}.vehicles-header-title{color:#1f2937;font-size:36px;font-weight:700;margin:0 0 8px}.vehicles-header-subtitle{align-items:center;color:#6b7280;display:flex;font-size:16px;font-weight:500;gap:8px;justify-content:center;margin:0}.vehicles-count-badge{background:#ff8b3d;border-radius:12px;color:#fff;font-size:14px;font-weight:700;padding:4px 12px}.vehicles-add-button-container{position:absolute;right:40px;top:48px}.vehicles-add-button{align-items:center;background:#ff8b3d;border:none;border-radius:10px;box-shadow:0 4px 14px #ff8b3d66;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:700;gap:8px;padding:12px 24px;transition:all .3s ease}.vehicles-add-button:hover{background:#ff7524;box-shadow:0 6px 20px #ff8b3d80;transform:translateY(-2px)}.vehicles-add-button-icon{font-size:18px}.vehicles-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;box-sizing:border-box;margin-bottom:32px;overflow:hidden;width:100%}.vehicles-table{border-collapse:collapse;width:100%}.vehicles-table thead{background:linear-gradient(135deg,#ff8b3d,#ff7524)}.vehicles-table th{border-bottom:2px solid #ff7524;color:#fff;font-size:13px;font-weight:700;letter-spacing:.8px;padding:20px 24px;text-align:left;text-transform:uppercase}.vehicles-table th.vehicle-number-header{text-align:left}.vehicles-table th.seats-header{text-align:center}.vehicles-table th.driver-header,.vehicles-table th.rules-header{text-align:left}.vehicles-table th.actions-header{text-align:center}.vehicles-table tbody tr{background:#fff;border-bottom:1px solid #f3f4f6;transition:background .2s ease}.vehicles-table tbody tr:hover{background:#f9fafb;cursor:pointer}.vehicles-table tbody tr:last-child{border-bottom:none}.vehicles-table td{color:#1f2937;font-size:15px;font-weight:500;padding:20px 24px;vertical-align:middle}.vehicle-number-cell{align-items:center;color:#1f2937;display:flex;font-size:16px;font-weight:700;gap:10px}.seats-cell{text-align:center}.seats-badge{background:#eff6ff;border-radius:20px;color:#4361ee;display:inline-block;font-size:14px;font-weight:600;padding:6px 16px}.driver-name-cell{align-items:center;color:#1f2937;display:flex;font-weight:600;gap:8px}.driver-name-icon{font-size:16px}.bus-rules-cell{word-wrap:break-word;background:#f9fafb;border-left:3px solid #10b981;border-radius:8px;color:#6b7280;font-weight:500;max-width:400px;padding:8px 16px;white-space:pre-wrap}.vehicles-actions-container{align-items:center;display:flex;flex-wrap:nowrap;gap:12px;justify-content:center}.vehicles-actions-container .vehicle-action-btn{flex:0 0 40px!important;height:40px!important;max-height:40px!important;max-width:40px!important;min-height:40px!important;min-width:40px!important;width:40px!important}.vehicle-action-btn{align-items:center;border:none;border-radius:8px;box-sizing:border-box;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;height:40px;justify-content:center;transition:all .3s ease;width:40px}.vehicle-action-btn.view-btn{background:#4361ee;box-shadow:0 2px 6px #4361ee4d;color:#fff}.vehicle-action-btn.view-btn:hover{background:#3451d1;box-shadow:0 4px 12px #4361ee66;transform:translateY(-2px)}.vehicle-action-btn.edit-btn{background:#10b981;box-shadow:0 2px 6px #10b9814d;color:#fff;height:40px;max-width:40px;min-width:40px;width:40px}.vehicle-action-btn.edit-btn:hover{background:#059669;box-shadow:0 4px 12px #10b98166;transform:translateY(-2px)}.vehicle-action-btn.delete-btn{background:#ef4444;box-shadow:0 2px 6px #ef44444d;color:#fff}.vehicle-action-btn.delete-btn:hover{background:#dc2626;box-shadow:0 4px 12px #ef444466;transform:translateY(-2px)}.vehicles-empty-state{align-items:center;background:#f9fafb;border:2px dashed #e5e7eb;border-radius:16px;box-sizing:border-box;display:flex;flex-direction:column;gap:16px;padding:64px 32px;text-align:center;width:100%}.vehicles-empty-icon{font-size:64px;opacity:.3}.vehicles-empty-message{color:#6b7280;font-size:18px;font-weight:600;margin:0}.vehicles-empty-button{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:700;padding:12px 24px;transition:all .3s ease}.vehicles-empty-button:hover{background:#ff7524;box-shadow:0 4px 12px #ff8b3d66;transform:translateY(-2px)}@media (min-width:769px) and (max-width:1024px){.vehicles-page-container{padding:24px 20px}.vehicles-header-card{padding:40px 32px}.vehicles-header-title{font-size:32px}.vehicles-table td,.vehicles-table th{font-size:14px;padding:18px 20px}}@media (max-width:768px){body,html{max-width:100%!important;overflow-x:hidden!important;width:100%!important}.vehicles-page-container{box-sizing:border-box;overflow-x:hidden;padding:16px 12px}.vehicles-container,.vehicles-page-container{max-width:100%;width:100%}.vehicles-header-card{border-radius:12px;margin:16px 12px 20px;padding:32px 24px;position:relative}.vehicles-header-icon{font-size:40px;margin-bottom:10px}.vehicles-header-title{font-size:28px;margin-bottom:12px}.vehicles-header-subtitle{flex-direction:column;font-size:14px;gap:8px}.vehicles-add-button-container{margin-top:20px;position:static;width:100%}.vehicles-add-button{justify-content:center;width:100%}.vehicles-table-container{display:none}.vehicles-mobile-cards{box-sizing:border-box;display:block;width:100%}}.vehicles-mobile-cards{display:none}.vehicle-mobile-card{background:#fff;border:1px solid #e5e7eb;border-left:4px solid #ff8b3d;border-radius:12px;box-shadow:0 2px 8px #00000014;box-sizing:border-box;margin:0 12px 16px;padding:20px;width:calc(100% - 24px)}.vehicle-mobile-card-header{align-items:center;border-bottom:2px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:16px}.vehicle-mobile-number{align-items:center;color:#1f2937;display:flex;font-size:20px;font-weight:700;gap:8px}.vehicle-mobile-seats-badge{background:#eff6ff;border-radius:12px;color:#4361ee;font-size:13px;font-weight:700;padding:6px 12px}.vehicle-mobile-details{display:flex;flex-direction:column;gap:12px}.vehicle-mobile-detail-row{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.vehicle-mobile-detail-label{color:#9ca3af;font-size:12px;font-weight:700;text-transform:uppercase}.vehicle-mobile-detail-value{align-items:center;color:#1f2937;display:flex;font-size:14px;font-weight:600;gap:6px;text-align:right}.vehicle-mobile-actions{border-top:1px solid #f3f4f6;display:flex;gap:8px;margin-top:16px;padding-top:16px}.vehicle-mobile-action-btn{align-items:center;border:none;border-radius:8px;box-sizing:border-box;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;gap:6px;justify-content:center;min-width:0;padding:10px;transition:all .3s ease}.vehicle-mobile-action-btn.view-btn{background:#4361ee;color:#fff}.vehicle-mobile-action-btn.view-btn:hover{background:#3451d1}.vehicle-mobile-action-btn.edit-btn{background:#10b981;color:#fff}.vehicle-mobile-action-btn.edit-btn:hover{background:#059669}.vehicle-mobile-action-btn.delete-btn{background:#ef4444;color:#fff}.vehicle-mobile-action-btn.delete-btn:hover{background:#dc2626}@media (max-width:768px){.vehicles-mobile-cards{display:block}}.pickup-locations-page-container{background:#f9fafb;box-sizing:border-box;max-width:100%;min-height:100vh;overflow-x:hidden;padding:32px 24px;width:100%}.pickup-locations-container{box-sizing:border-box;margin:0 auto;max-width:1600px;width:100%}.pickup-locations-header-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;border-top:4px solid #ff8b3d;box-shadow:0 4px 6px #00000012;box-sizing:border-box;margin-bottom:32px;padding:48px 40px;position:relative;text-align:center;width:100%}.pickup-locations-header-icon{color:#ff8b3d;display:block;font-size:48px;margin-bottom:12px}.pickup-locations-header-title{color:#1f2937;font-size:36px;font-weight:700;margin:0 0 8px}.pickup-locations-header-subtitle{align-items:center;color:#6b7280;display:flex;font-size:16px;font-weight:500;gap:8px;justify-content:center;margin:0}.pickup-locations-count-badge{background:#ff8b3d;border-radius:12px;color:#fff;font-size:14px;font-weight:700;padding:4px 12px}.pickup-locations-add-button-container{position:absolute;right:40px;top:48px}.pickup-locations-add-button{align-items:center;background:#ff8b3d;border:none;border-radius:10px;box-shadow:0 4px 14px #ff8b3d66;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:700;gap:8px;padding:12px 24px;transition:all .3s ease}.pickup-locations-add-button:hover{background:#ff7524;box-shadow:0 6px 20px #ff8b3d80;transform:translateY(-2px)}.pickup-locations-add-button-icon{font-size:18px}.pickup-locations-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;box-sizing:border-box;margin-bottom:32px;overflow:hidden;width:100%}.pickup-locations-table{border-collapse:collapse;width:100%}.pickup-locations-table thead{background:linear-gradient(135deg,#ff8b3d,#ff7524)}.pickup-locations-table th{border-bottom:2px solid #ff7524;color:#fff;font-size:12px;font-weight:700;letter-spacing:.8px;padding:20px;text-align:left;text-transform:uppercase}.pickup-locations-table th.address-header,.pickup-locations-table th.location-name-header{text-align:left}.pickup-locations-table th.coordinates-header{text-align:center}.pickup-locations-table th.contact-person-header{text-align:left}.pickup-locations-table th.actions-header,.pickup-locations-table th.added-date-header,.pickup-locations-table th.contact-phone-header,.pickup-locations-table th.status-header{text-align:center}.pickup-locations-table tbody tr{background:#fff;border-bottom:1px solid #f3f4f6;transition:background .2s ease}.pickup-locations-table tbody tr:hover{background:#f9fafb;cursor:pointer}.pickup-locations-table tbody tr:last-child{border-bottom:none}.pickup-locations-table td{color:#1f2937;font-size:14px;font-weight:500;padding:20px;vertical-align:middle}.location-name-cell{align-items:center;color:#1f2937;display:flex;font-size:16px;font-weight:700;gap:8px}.location-name-icon{font-size:18px}.address-cell{align-items:center;color:#6b7280;display:flex;font-size:14px;font-weight:500;gap:6px}.address-icon{font-size:16px}.coordinates-cell{text-align:center}.coordinates-badge{background:#eff6ff;border-radius:8px;color:#4361ee;display:inline-block;font-size:13px;font-weight:500;padding:6px 12px}.coordinates-badge.empty{background:#f9fafb;color:#9ca3af}.contact-person-cell{align-items:center;color:#1f2937;display:flex;font-size:14px;font-weight:500;gap:6px}.contact-person-icon{font-size:16px}.contact-phone-cell{align-items:center;color:#10b981;display:flex;font-weight:600;gap:6px;justify-content:center;text-align:center}.contact-phone-icon{font-size:16px}.status-badge{letter-spacing:.5px}.added-date-cell{align-items:center;color:#6b7280;display:flex;font-size:14px;font-weight:500;gap:6px;justify-content:center;text-align:center}.added-date-icon{font-size:16px}.pickup-locations-actions-container{align-items:center;display:flex;flex-wrap:nowrap;gap:10px;justify-content:center}.pickup-locations-actions-container .location-action-btn{flex:0 0 40px!important;height:40px!important;max-height:40px!important;max-width:40px!important;min-height:40px!important;min-width:40px!important;width:40px!important}.location-action-btn{align-items:center;border:none;border-radius:8px;box-sizing:border-box;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;height:40px;justify-content:center;transition:all .3s ease;width:40px}.location-action-btn.view-btn{background:#4361ee;box-shadow:0 2px 6px #4361ee4d;color:#fff}.location-action-btn.view-btn:hover{background:#3451d1;box-shadow:0 4px 12px #4361ee66;transform:translateY(-2px)}.location-action-btn.edit-btn{background:#10b981;box-shadow:0 2px 6px #10b9814d;color:#fff}.location-action-btn.edit-btn:hover{background:#059669;box-shadow:0 4px 12px #10b98166;transform:translateY(-2px)}.location-action-btn.delete-btn{background:#ef4444;box-shadow:0 2px 6px #ef44444d;color:#fff}.location-action-btn.delete-btn:hover{background:#dc2626;box-shadow:0 4px 12px #ef444466;transform:translateY(-2px)}.pickup-locations-empty-state{align-items:center;background:#f9fafb;border:2px dashed #e5e7eb;border-radius:16px;box-sizing:border-box;display:flex;flex-direction:column;gap:16px;padding:64px 32px;text-align:center;width:100%}.pickup-locations-empty-icon{font-size:64px;opacity:.3}.pickup-locations-empty-message{color:#6b7280;font-size:18px;font-weight:600;margin:0}.pickup-locations-empty-button{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:700;padding:12px 24px;transition:all .3s ease}.pickup-locations-empty-button:hover{background:#ff7524;box-shadow:0 4px 12px #ff8b3d66;transform:translateY(-2px)}@media (min-width:769px) and (max-width:1024px){.pickup-locations-page-container{padding:24px 20px}.pickup-locations-header-card{padding:40px 32px}.pickup-locations-header-title{font-size:32px}.pickup-locations-table td,.pickup-locations-table th{font-size:13px;padding:18px 16px}}@media (max-width:768px){body,html{max-width:100%!important;overflow-x:hidden!important;width:100%!important}.pickup-locations-page-container{box-sizing:border-box;max-width:100%;overflow-x:hidden;padding:16px 12px;width:100%}.pickup-locations-container{max-width:100%;width:100%}.pickup-locations-header-card{border-radius:12px;margin:16px 12px 20px;padding:32px 24px;position:relative}.pickup-locations-header-icon{font-size:40px;margin-bottom:10px}.pickup-locations-header-title{font-size:28px;margin-bottom:12px}.pickup-locations-header-subtitle{flex-direction:column;font-size:14px;gap:8px}.pickup-locations-add-button-container{margin-top:20px;position:static;width:100%}.pickup-locations-add-button{justify-content:center;width:100%}.pickup-locations-table-container{display:none}.pickup-locations-mobile-cards{box-sizing:border-box;display:block;width:100%}}.pickup-locations-mobile-cards{display:none}.pickup-location-mobile-card{background:#fff;border:1px solid #e5e7eb;border-left:4px solid #ff8b3d;border-radius:12px;box-shadow:0 2px 8px #00000014;box-sizing:border-box;margin:0 12px 16px;padding:20px;width:calc(100% - 24px)}.pickup-location-mobile-card-header{align-items:flex-start;border-bottom:2px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:16px}.pickup-location-mobile-name{align-items:center;color:#1f2937;display:flex;font-size:20px;font-weight:700;gap:8px}.pickup-location-mobile-status-badge{border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.pickup-location-mobile-status-badge.active{background:#d1fae5;border:1.5px solid #10b981;color:#065f46}.pickup-location-mobile-status-badge.inactive{background:#fee2e2;border:1.5px solid #ef4444;color:#991b1b}.pickup-location-mobile-details{display:flex;flex-direction:column;gap:12px}.pickup-location-mobile-detail-row{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.pickup-location-mobile-detail-label{color:#9ca3af;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.pickup-location-mobile-detail-value{align-items:center;color:#1f2937;display:flex;font-size:14px;font-weight:600;gap:6px;justify-content:flex-end;text-align:right}.pickup-location-mobile-actions{border-top:1px solid #f3f4f6;display:flex;gap:8px;margin-top:16px;padding-top:16px}.pickup-location-mobile-action-btn{align-items:center;border:none;border-radius:8px;box-sizing:border-box;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;gap:6px;justify-content:center;min-width:0;padding:10px;transition:all .3s ease}.pickup-location-mobile-action-btn.view-btn{background:#4361ee;color:#fff}.pickup-location-mobile-action-btn.view-btn:hover{background:#3451d1}.pickup-location-mobile-action-btn.edit-btn{background:#10b981;color:#fff}.pickup-location-mobile-action-btn.edit-btn:hover{background:#059669}.pickup-location-mobile-action-btn.delete-btn{background:#ef4444;color:#fff}.pickup-location-mobile-action-btn.delete-btn:hover{background:#dc2626}@media (max-width:768px){.pickup-locations-mobile-cards{display:block}}.routes-page-container{background:#f9fafb;box-sizing:border-box;max-width:100%;min-height:100vh;overflow-x:hidden;padding:32px 24px;width:100%}.routes-container{box-sizing:border-box;margin:0 auto;max-width:1600px;width:100%}.routes-header-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;border-top:4px solid #ff8b3d;box-shadow:0 4px 6px #00000012;box-sizing:border-box;margin-bottom:32px;padding:48px 40px;position:relative;text-align:center;width:100%}.routes-header-icon{color:#ff8b3d;display:block;font-size:48px;margin-bottom:12px}.routes-header-title{color:#1f2937;font-size:36px;font-weight:700;margin:0 0 8px}.routes-header-subtitle{align-items:center;color:#6b7280;display:flex;font-size:16px;font-weight:500;gap:8px;justify-content:center;margin:0}.routes-count-badge{background:#ff8b3d;border-radius:12px;color:#fff;font-size:14px;font-weight:700;padding:4px 12px}.routes-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #00000014;box-sizing:border-box;margin-bottom:32px;overflow:hidden;width:100%}.routes-table{border-collapse:collapse;width:100%}.routes-table thead{background:linear-gradient(135deg,#ff8b3d,#ff7524)}.routes-table th{border-bottom:2px solid #ff7524;color:#fff;font-size:12px;font-weight:700;letter-spacing:.8px;padding:20px;text-align:left;text-transform:uppercase}.routes-table th.route-name-header,.routes-table th.vehicle-header{text-align:left}.routes-table th.route-type-header{text-align:center}.routes-table th.pickup-locations-header{text-align:left}.routes-table th.actions-header,.routes-table th.created-date-header,.routes-table th.status-header{text-align:center}.routes-table tbody tr{background:#fff;border-bottom:1px solid #f3f4f6;transition:background .2s ease}.routes-table tbody tr:hover{background:#f9fafb;cursor:pointer}.routes-table tbody tr:last-child{border-bottom:none}.routes-table td{color:#1f2937;font-size:14px;font-weight:500;padding:24px 20px;vertical-align:middle}.route-name-cell{align-items:center;color:#1f2937;display:flex;font-size:18px;font-weight:700;gap:8px}.route-name-icon{font-size:20px}.vehicle-info-cell{display:flex;flex-direction:column;gap:4px}.vehicle-number{align-items:center;color:#4361ee;display:flex;font-size:16px;font-weight:700;gap:6px}.vehicle-number-icon{font-size:18px}.driver-name{align-items:center;color:#6b7280;display:flex;font-size:13px;font-weight:500;gap:6px}.driver-name-icon{font-size:14px}.route-type-badge{border-radius:20px;display:inline-block;font-size:13px;font-weight:700;padding:8px 16px;text-align:center;text-transform:uppercase}.route-type-badge.two-way{background:#d1fae5;border:1.5px solid #10b981;color:#065f46}.route-type-badge.one-way{background:#dbeafe;border:1.5px solid #3b82f6;color:#1e40af}.pickup-locations-cell{display:flex;flex-direction:column;gap:12px;padding:16px 12px}.location-card{background:#f9fafb;border:1px solid #e5e7eb;border-left:3px solid #ff8b3d;border-radius:8px;display:flex;flex-direction:column;gap:4px;padding:12px 16px}.location-number-name{align-items:center;color:#1f2937;display:flex;font-size:14px;font-weight:700;gap:6px}.location-icon{font-size:16px}.location-address{color:#6b7280;font-size:12px;font-weight:500;padding-left:20px}.status-badge{border-radius:20px;display:inline-block;font-size:13px;font-weight:700;padding:8px 16px;text-align:center;text-transform:uppercase}.status-badge.active{background:#d1fae5;border:1.5px solid #10b981;color:#065f46}.status-badge.inactive{background:#fee2e2;border:1.5px solid #ef4444;color:#991b1b}.created-date-cell{align-items:center;color:#6b7280;display:flex;font-size:14px;font-weight:500;gap:6px;justify-content:center;text-align:center}.created-date-icon{font-size:16px}.actions-cell{text-align:center}.routes-actions-container{align-items:center;display:flex;flex-wrap:nowrap;gap:10px;justify-content:center}.routes-actions-container .route-action-btn{flex:0 0 42px!important;height:42px!important;max-height:42px!important;max-width:42px!important;min-height:42px!important;min-width:42px!important;width:42px!important}.route-action-btn{align-items:center;border:none;border-radius:8px;box-sizing:border-box;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;height:42px;justify-content:center;transition:all .3s ease;width:42px}.route-action-btn.view-btn{background:#4361ee;box-shadow:0 2px 6px #4361ee4d;color:#fff}.route-action-btn.view-btn:hover{background:#3451d1;box-shadow:0 4px 12px #4361ee66;transform:translateY(-2px)}.route-action-btn.edit-btn{background:#10b981;box-shadow:0 2px 6px #10b9814d;color:#fff}.route-action-btn.edit-btn:hover{background:#059669;box-shadow:0 4px 12px #10b98166;transform:translateY(-2px)}.route-action-btn.delete-btn{background:#ef4444;box-shadow:0 2px 6px #ef44444d;color:#fff}.route-action-btn.delete-btn:hover{background:#dc2626;box-shadow:0 4px 12px #ef444466;transform:translateY(-2px)}.routes-add-button-container-top{box-sizing:border-box;margin-top:24px;width:100%}.routes-add-button-top{align-items:center;background:#ff8b3d;border:none;border-radius:12px;box-shadow:0 6px 20px #ff8b3d66;color:#fff;cursor:pointer;display:flex;font-size:17px;font-weight:700;gap:12px;justify-content:center;margin:0 auto;max-width:400px;padding:18px 40px;transition:all .3s ease;width:100%}.routes-add-button-top:hover{background:#ff7524;box-shadow:0 8px 24px #ff8b3d80;transform:translateY(-3px)}.routes-add-button-icon{font-size:20px}.routes-empty-state{align-items:center;background:#f9fafb;border:2px dashed #e5e7eb;border-radius:16px;box-sizing:border-box;display:flex;flex-direction:column;gap:16px;padding:64px 32px;text-align:center;width:100%}.routes-empty-icon{font-size:64px;opacity:.3}.routes-empty-message{color:#6b7280;font-size:18px;font-weight:600;margin:0}.routes-empty-button{background:#ff8b3d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:700;padding:12px 24px;transition:all .3s ease}.routes-empty-button:hover{background:#ff7524;box-shadow:0 4px 12px #ff8b3d66;transform:translateY(-2px)}@media (min-width:769px) and (max-width:1024px){.routes-page-container{padding:24px 20px}.routes-header-card{padding:40px 32px}.routes-header-title{font-size:32px}.routes-table td,.routes-table th{font-size:13px;padding:18px 16px}.routes-add-button-top{max-width:100%}}@media (max-width:768px){body,html{max-width:100%!important;overflow-x:hidden!important;width:100%!important}.routes-page-container{box-sizing:border-box;overflow-x:hidden;padding:16px 12px}.routes-container,.routes-page-container{max-width:100%;width:100%}.routes-header-card{border-radius:12px;margin:16px 12px 20px;padding:32px 24px;position:relative}.routes-header-icon{font-size:40px;margin-bottom:10px}.routes-header-title{font-size:28px;margin-bottom:12px}.routes-header-subtitle{flex-direction:column;font-size:14px;gap:8px}.routes-table-container{display:none}.routes-mobile-cards{box-sizing:border-box;display:block;width:100%}.routes-add-button-container-top{margin-top:20px}.routes-add-button-top{box-shadow:0 4px 16px #ff8b3d66;font-size:16px;max-width:100%;padding:16px 32px}}.routes-mobile-cards{display:none}.route-mobile-card{background:#fff;border:1px solid #e5e7eb;border-left:4px solid #ff8b3d;border-radius:12px;box-shadow:0 2px 8px #00000014;box-sizing:border-box;margin:0 12px 16px;padding:20px;width:calc(100% - 24px)}.route-mobile-card-header{align-items:flex-start;border-bottom:2px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:16px}.route-mobile-name{align-items:center;color:#1f2937;display:flex;font-size:20px;font-weight:700;gap:8px}.route-mobile-type-badge{border-radius:20px;font-size:11px;font-weight:700;padding:6px 12px;text-transform:uppercase}.route-mobile-type-badge.two-way{background:#d1fae5;border:1.5px solid #10b981;color:#065f46}.route-mobile-type-badge.one-way{background:#dbeafe;border:1.5px solid #3b82f6;color:#1e40af}.route-mobile-card-body{display:flex;flex-direction:column;gap:16px}.route-mobile-section{display:flex;flex-direction:column;gap:8px}.route-mobile-section-label{color:#9ca3af;font-size:11px;font-weight:700;text-transform:uppercase}.route-mobile-vehicle-info{background:#f9fafb;border-left:3px solid #4361ee;border-radius:8px;padding:12px}.route-mobile-locations{display:flex;flex-direction:column;gap:8px}.route-mobile-location-card{background:#f9fafb;border:1px solid #e5e7eb;border-left:3px solid #ff8b3d;border-radius:8px;padding:12px}.route-mobile-actions{border-top:1px solid #f3f4f6;display:flex;gap:8px;margin-top:16px;padding-top:16px}.route-mobile-action-btn{align-items:center;border:none;border-radius:8px;box-sizing:border-box;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;gap:6px;justify-content:center;min-width:0;padding:12px;transition:all .3s ease}.route-mobile-action-btn.view-btn{background:#4361ee;color:#fff}.route-mobile-action-btn.view-btn:hover{background:#3451d1}.route-mobile-action-btn.edit-btn{background:#10b981;color:#fff}.route-mobile-action-btn.edit-btn:hover{background:#059669}.route-mobile-action-btn.delete-btn{background:#ef4444;color:#fff}.route-mobile-action-btn.delete-btn:hover{background:#dc2626}@media (max-width:768px){.routes-mobile-cards{display:block}}.bus-seat-management{margin:0 auto;max-width:1400px;padding:24px}.vehicle-selector{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:20px}.vehicle-selector label{color:#1f2937;display:block;font-size:16px;font-weight:600;margin-bottom:8px}.vehicle-select{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:16px;max-width:400px;padding:12px;transition:border-color .2s;width:100%}.branch-filter-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin:0 auto 24px;max-width:100%}.branch-context-text{color:#6b7280;font-size:14px;font-weight:600}.branch-filter-row .branch-selector{margin-left:0}.vehicle-select:focus{border-color:#ff8b3d;outline:none}.seats-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.seats-header{align-items:center;border-bottom:2px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.seats-header h3{color:#1f2937;font-size:24px;font-weight:700;margin:0}.seats-stats{display:flex;gap:24px}.stat-item{color:#6b7280;font-size:14px}.stat-item strong{color:#1f2937;font-size:16px;font-weight:700}.seats-grid{display:flex;flex-direction:column;gap:16px}.seat-row{gap:12px}.seat,.seat-row{align-items:center;display:flex;justify-content:center}.seat{background:#f9fafb;border:3px solid #e5e7eb;border-radius:12px;cursor:pointer;flex-direction:column;height:120px;position:relative;transition:all .2s;width:120px}.seat.available{background:#ecfdf5;border-color:#10b981}.seat.available:hover{background:#d1fae5;border-color:#059669;box-shadow:0 4px 12px #10b9814d;transform:scale(1.05)}.seat.occupied{background:#fee2e2;border-color:#ef4444;cursor:default}.seat-number{color:#1f2937;font-size:18px;font-weight:700;margin-bottom:4px}.seat-student{align-items:center;display:flex;flex-direction:column;gap:4px;padding:4px;width:100%}.student-initials{align-items:center;background:#ff8b3d;border-radius:50%;color:#fff;display:flex;font-size:14px;font-weight:700;height:40px;justify-content:center;width:40px}.student-name{color:#1f2937;font-size:11px;font-weight:600;max-width:100px;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.remove-seat-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:12px;height:20px;justify-content:center;position:absolute;right:4px;top:4px;transition:background .2s;width:20px}.remove-seat-btn:hover{background:#dc2626}.seat-aisle{align-items:center;background:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;display:flex;height:120px;justify-content:center;width:60px}.aisle-label{color:#9ca3af;font-size:12px;font-weight:600;transform:rotate(-90deg)}.no-vehicle-selected{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:60px 20px;text-align:center}.no-vehicle-selected p{color:#6b7280;font-size:16px}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;display:flex;flex-direction:column;max-height:80vh;max-width:500px;overflow:hidden;width:90%}.modal-header{align-items:center;background:linear-gradient(135deg,#ff8b3d,#ff7524);border-bottom:none;display:flex;justify-content:space-between;padding:20px 24px}.modal-header h3{color:#fff;font-size:20px;font-weight:700;margin:0}.modal-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;transition:all .2s;width:32px}.modal-close:hover{background:#ffffff4d;color:#fff}.modal-body{max-height:calc(80vh - 80px);overflow-y:auto;padding:24px}.no-students-message{padding:40px 20px;text-align:center}.no-students-message p{color:#6b7280;font-size:16px;line-height:1.6;margin:0}.student-list{display:flex;flex-direction:column;gap:12px}.student-item{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;gap:16px;justify-content:space-between;min-height:60px;padding:16px 20px;transition:all .2s}.student-item:hover{background:#fff7ed;border-color:#ff8b3d;box-shadow:0 2px 8px #ff8b3d33;transform:translateX(4px)}.student-info{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.modal-student-name{color:#1f2937!important;display:block!important;font-size:16px!important;font-weight:600!important;line-height:1.4!important;margin:0!important;max-width:none!important;opacity:1!important;padding:0!important;text-align:left!important;visibility:visible!important}.student-item:hover .modal-student-name{color:#ff8b3d!important}.assign-btn{background:#ff8b3d;border:none;border-radius:6px;color:#fff;cursor:pointer;flex-shrink:0;font-weight:600;min-width:auto;padding:8px 16px;transition:background .2s;white-space:nowrap;width:auto}.success-popup-overlay{align-items:center;animation:fadeIn .3s ease;background:#0006;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.success-popup{animation:slideUp .4s ease;background:linear-gradient(135deg,#10b981,#059669);border-radius:16px;box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0003;color:#fff;max-width:400px;padding:32px 40px;position:relative;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.success-popup-icon{align-items:center;animation:scaleIn .5s ease .2s both;background:#fff3;border-radius:50%;color:#fff;display:flex;font-size:36px;font-weight:700;height:64px;justify-content:center;margin:0 auto 20px;width:64px}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.success-popup-content{text-align:center}.success-popup-title{color:#fff;font-size:24px;font-weight:700;margin:0 0 12px}.success-popup-message{color:#fffffff2;font-size:16px;line-height:1.5;margin:0}.success-popup-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;position:absolute;right:12px;top:12px;transition:all .2s;width:32px}.success-popup-close:hover{background:#ffffff4d;transform:rotate(90deg)}@media (max-width:768px){.bus-seat-management{padding:16px}.seats-header{align-items:flex-start;flex-direction:column;gap:16px}.seats-stats{flex-wrap:wrap;gap:16px}.seat{height:80px;width:80px}.seat-number{font-size:14px}.student-initials{font-size:12px;height:30px;width:30px}.student-name{font-size:9px;max-width:70px}.seat-aisle{height:80px;width:40px}.modal-content{width:95%}.success-popup{max-width:90%;padding:24px 28px}.success-popup-icon{font-size:32px;height:56px;margin-bottom:16px;width:56px}.success-popup-title{font-size:20px}.success-popup-message{font-size:14px}}.settings-tabs-panel{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.settings-tabs-panel .settings-tab{-webkit-appearance:none;-moz-appearance:none;background:#ff8c42!important;border:1px solid #ff8c42;border-radius:999px;box-shadow:0 6px 12px #ff8c4240;color:#fff!important;cursor:pointer;flex:1 1;font-weight:600;padding:.85rem 1rem;text-align:center;transition:all .2s ease}.settings-tabs-panel .settings-tab:hover{background:#ff7f1d!important}.settings-tabs-panel .settings-tab.active{background:#ff8c42!important;border-color:#ff8c42;box-shadow:0 8px 16px #ff8c424d;color:#fff!important;transform:translateY(-1px)}.branches-table-wrapper{margin-top:1.5rem;overflow-x:auto}.branches-table{background:#fff;border-collapse:collapse;border-radius:12px;box-shadow:0 8px 20px #0f172a14;width:100%}.branches-table thead{background:#fffaf6}.branches-table td,.branches-table th{border-bottom:1px solid #f1f5f9;color:#1f2937;font-size:.9rem;padding:.85rem 1rem;text-align:left}.branches-table .actions-cell{display:flex;gap:.25rem}.table-icon-btn{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;display:inline-flex;font-size:1rem;height:32px;justify-content:center;transition:all .2s ease;width:32px}.table-icon-btn.edit{border-color:#f59e0b}.table-icon-btn.delete{border-color:#ef4444}.table-icon-btn:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.branches-table tbody tr:last-child td{border-bottom:none}.branch-subtext{color:#6b7280;font-size:.8rem}.grade-management-panel{display:flex;flex-direction:column;gap:2rem}.grade-management-section{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.grade-card{background:#fff;border:1px solid #f3f4f6;border-radius:16px;box-shadow:0 12px 30px #0f172a14;padding:1.5rem}.grade-card h3{font-size:1.25rem;margin-bottom:.5rem}.form-subtitle{color:#6b7280;font-size:.9rem;margin-bottom:1rem}.grade-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1.25rem}.grade-row{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;display:flex;gap:1rem;justify-content:space-between;padding:.85rem 1rem}.grade-row strong{display:block;font-size:1rem}.grade-row-subtext{color:#6b7280;display:block;font-size:.85rem}.grade-row-meta{color:#374151;font-size:.85rem}.scale-entry-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.curriculum-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:32px;padding:24px}.curriculum-section h2{color:#1f2937;font-size:20px;font-weight:600;margin-bottom:16px}.section-description{color:#6b7280;font-size:14px;margin-bottom:20px}.streams-list{margin-top:24px}.stream-group{margin-bottom:24px}.stream-group h4{color:#374151;font-size:16px;font-weight:600;margin-bottom:12px}.stream-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;gap:12px;height:auto;justify-content:space-between;min-width:120px;padding:12px 16px}.stream-item,.stream-name-horizontal{align-items:center;display:flex;flex-direction:row}.stream-name-horizontal{color:#374151;font-size:16px;font-weight:500;justify-content:center;line-height:1.5;padding-right:8px;white-space:nowrap}.stream-delete-btn{background:#dc2626;border:none;border-radius:6px;color:#fff;cursor:pointer;flex-shrink:0;font-size:12px;height:fit-content;padding:4px 8px;transition:background .2s;white-space:nowrap;width:auto}.stream-delete-btn:hover:not(:disabled){background:#b91c1c}.stream-delete-btn:disabled{cursor:not-allowed;opacity:.6}.grades-list{margin-top:24px}.grade-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:12px;padding:16px}.grade-header{align-items:center;display:flex;justify-content:space-between}.grade-header h3{color:#374151;font-size:16px;font-weight:600;margin:0}.subjects-list{margin-top:24px}.subject-group{margin-bottom:24px}.subject-group h4{color:#374151;font-size:16px;font-weight:600;margin-bottom:12px}.subjects-grid{display:flex;flex-wrap:wrap;gap:12px}.subject-item{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;display:flex;justify-content:space-between;min-width:150px;padding:10px 14px}.subject-item span{color:#374151;flex:1 1 auto;font-size:14px;font-weight:500}.no-data{color:#6b7280;font-style:italic;padding:24px;text-align:center}
/*# sourceMappingURL=main.02dd3cdf.css.map*/