body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}*{box-sizing:border-box}:root{--primary-color:#2563eb;--secondary-color:#1e40af;--success-color:#10b981;--danger-color:#ef4444;--warning-color:#f59e0b;--light-gray:#f3f4f6;--gray:#d1d5db;--dark-gray:#6b7280;--text-dark:#1f2937;--border-radius:8px;--transition:all 0.3s ease}a{color:#2563eb;color:var(--primary-color)}a:hover{color:#1e40af;color:var(--secondary-color)}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.ms-0{margin-left:0!important}.ms-1{margin-left:.25rem!important}.ms-2{margin-left:.5rem!important}.ms-3{margin-left:1rem!important}.ms-4{margin-left:1.5rem!important}.ms-5{margin-left:3rem!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.mx-0{margin-left:0!important;margin-right:0!important}.mx-1{margin-left:.25rem!important;margin-right:.25rem!important}.mx-2{margin-left:.5rem!important;margin-right:.5rem!important}.mx-3{margin-left:1rem!important;margin-right:1rem!important}.mx-4{margin-left:1.5rem!important;margin-right:1.5rem!important}.mx-5{margin-left:3rem!important;margin-right:3rem!important}.my-0{margin-bottom:0!important;margin-top:0!important}.my-1{margin-bottom:.25rem!important;margin-top:.25rem!important}.my-2{margin-bottom:.5rem!important;margin-top:.5rem!important}.my-3{margin-bottom:1rem!important;margin-top:1rem!important}.my-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}.my-5{margin-bottom:3rem!important;margin-top:3rem!important}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:3rem!important}.ps-0{padding-left:0!important}.ps-1{padding-left:.25rem!important}.ps-2{padding-left:.5rem!important}.ps-3{padding-left:1rem!important}.ps-4{padding-left:1.5rem!important}.ps-5{padding-left:3rem!important}.pe-0{padding-right:0!important}.pe-1{padding-right:.25rem!important}.pe-2{padding-right:.5rem!important}.pe-3{padding-right:1rem!important}.pe-4{padding-right:1.5rem!important}.pe-5{padding-right:3rem!important}.px-0{padding-left:0!important;padding-right:0!important}.px-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}.px-3{padding-left:1rem!important;padding-right:1rem!important}.px-4{padding-left:1.5rem!important;padding-right:1.5rem!important}.px-5{padding-left:3rem!important;padding-right:3rem!important}.py-0{padding-bottom:0!important;padding-top:0!important}.py-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.py-3{padding-bottom:1rem!important;padding-top:1rem!important}.py-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}.py-5{padding-bottom:3rem!important;padding-top:3rem!important}.text-decoration-none{text-decoration:none!important}.text-decoration-underline{text-decoration:underline!important}.text-decoration-line-through{text-decoration:line-through!important}.link-primary{color:#2563eb!important;color:var(--primary-color)!important;-webkit-text-decoration-color:#2563eb80;text-decoration-color:#2563eb80}.link-primary:focus,.link-primary:hover{color:#1e40af!important;color:var(--secondary-color)!important}.link-secondary{color:#6b7280!important;color:var(--dark-gray)!important;-webkit-text-decoration-color:#6b728080;text-decoration-color:#6b728080}.link-secondary:focus,.link-secondary:hover{color:#1f2937!important;color:var(--text-dark)!important}.text-primary{color:#2563eb!important;color:var(--primary-color)!important}.text-secondary{color:#6b7280!important;color:var(--dark-gray)!important}.text-success{color:#10b981!important;color:var(--success-color)!important}.text-danger{color:#ef4444!important;color:var(--danger-color)!important}.text-warning{color:#f59e0b!important;color:var(--warning-color)!important}.text-dark{color:#1f2937!important;color:var(--text-dark)!important}.text-muted{color:#6b7280!important;color:var(--dark-gray)!important}.text-white{color:#fff!important}.text-black{color:#000!important}.text-body{color:#1f2937!important;color:var(--text-dark)!important}.bg-primary{background-color:#2563eb!important;background-color:var(--primary-color)!important}.bg-secondary{background-color:#6b7280!important;background-color:var(--dark-gray)!important}.bg-success{background-color:#10b981!important;background-color:var(--success-color)!important}.bg-danger{background-color:#ef4444!important;background-color:var(--danger-color)!important}.bg-warning{background-color:#f59e0b!important;background-color:var(--warning-color)!important}.bg-light{background-color:#f3f4f6!important;background-color:var(--light-gray)!important}.bg-white{background-color:#fff!important}.bg-dark{background-color:#1f2937!important;background-color:var(--text-dark)!important}.bg-transparent{background-color:initial!important}.container{margin:0 auto;max-width:1200px;padding:0 20px}.form-group{margin-bottom:20px}.form-group label{color:#1f2937;color:var(--text-dark);display:block;font-weight:600;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;border:1px solid var(--gray);border-radius:8px;border-radius:var(--border-radius);font-family:inherit;font-size:14px;padding:10px 12px;transition:all .3s ease;transition:var(--transition);width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#2563eb;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a;outline:none}.form-group textarea{min-height:100px;resize:vertical}.error-message{color:#ef4444;color:var(--danger-color);font-size:12px;margin-top:4px}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.form-row-three{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr)}.btn{border:none;border-radius:8px;border-radius:var(--border-radius);cursor:pointer;display:inline-block;font-size:14px;font-weight:600;padding:10px 20px;text-align:center;text-decoration:none;transition:all .3s ease;transition:var(--transition)}.btn-primary{background-color:#2563eb;background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:#1e40af;background-color:var(--secondary-color)}.btn-secondary{background-color:#d1d5db;background-color:var(--gray);color:#1f2937;color:var(--text-dark)}.btn-secondary:hover{background-color:#6b7280;background-color:var(--dark-gray)}.btn-success{background-color:#10b981;background-color:var(--success-color);color:#fff}.btn-success:hover{opacity:.9}.btn-danger{background-color:#ef4444;background-color:var(--danger-color);color:#fff}.btn-danger:hover{opacity:.9}.btn-block{width:100%}.btn-group{display:flex;gap:10px}.table{background:#fff;border-collapse:collapse;border-radius:8px;border-radius:var(--border-radius);box-shadow:0 1px 3px #0000001a;overflow:hidden;width:100%}.table th{background-color:#f3f4f6;background-color:var(--light-gray);border-bottom:2px solid #d1d5db;border-bottom:2px solid var(--gray);color:#1f2937;color:var(--text-dark);font-weight:600;padding:10px 12px;text-align:left}.table td{border-bottom:1px solid #d1d5db;border-bottom:1px solid var(--gray);padding:10px 12px}.table tr:hover{background-color:#f3f4f6;background-color:var(--light-gray)}.table tr:last-child td{border-bottom:none}.card{background:#fff;border-radius:8px;border-radius:var(--border-radius);box-shadow:0 1px 3px #0000001a;margin-bottom:20px;padding:20px}.card-header{border-bottom:2px solid #f3f4f6;border-bottom:2px solid var(--light-gray);margin-bottom:15px;padding-bottom:15px}.card-title{color:#1f2937;color:var(--text-dark);font-size:20px;font-weight:700;margin:0}.search-bar{align-items:center;display:flex;gap:10px;margin-bottom:20px}.search-bar input{flex:1 1;font-size:14px}.search-bar input,.search-bar select{border:1px solid #d1d5db;border:1px solid var(--gray);border-radius:8px;border-radius:var(--border-radius);padding:10px 12px}.search-bar select{min-width:150px}.pagination{display:flex;gap:5px;justify-content:center;margin-top:20px}.pagination a,.pagination button{background:#fff;border:1px solid #d1d5db;border:1px solid var(--gray);border-radius:8px;border-radius:var(--border-radius);cursor:pointer;padding:8px 12px;transition:all .3s ease;transition:var(--transition)}.pagination a:hover,.pagination button:hover{background-color:#f3f4f6;background-color:var(--light-gray)}.pagination .active{background-color:#2563eb;background-color:var(--primary-color);border-color:#2563eb;border-color:var(--primary-color);color:#fff}.alert{border-radius:8px;border-radius:var(--border-radius);margin-bottom:20px;padding:15px}.alert-success{background-color:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.alert-error{background-color:#fee2e2;border:1px solid #fecaca;color:#991b1b}.alert-info{background-color:#dbeafe;border:1px solid #bfdbfe;color:#0c4a6e}.alert-warning{background-color:#ffedd5;border:1px solid #fdba74;color:#9a3412}.badge{border-radius:4px;display:inline-block;font-size:12px;font-weight:600;padding:4px 8px}.badge-success{background-color:#d1fae5;color:#065f46}.badge-warning{background-color:#fef3c7;color:#92400e}.badge-danger{background-color:#fee2e2;color:#991b1b}@media (max-width:768px){.form-row,.form-row-three{grid-template-columns:1fr}.table{font-size:12px}.table td,.table th{padding:8px}.btn-group,.search-bar{flex-direction:column}.search-bar input,.search-bar select{width:100%}}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f4f6;border-top:4px solid #2563eb;border:4px solid var(--light-gray);border-radius:50%;border-top-color:var(--primary-color);height:40px;margin:20px auto;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.autocomplete-dropdown{border:1px solid #d1d5db;border:1px solid var(--gray);border-radius:0 0 var(--border-radius) var(--border-radius);box-shadow:0 4px 6px #0000001a;max-height:300px;z-index:1000}.autocomplete-item{border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--light-gray);padding:12px;transition:all .3s ease;transition:var(--transition)}.autocomplete-item:hover{background-color:#f3f4f6;background-color:var(--light-gray)}.autocomplete-item strong{color:#1f2937;color:var(--text-dark)}.class-badge{background-color:#e3f2fd;border-radius:4px;color:#1976d2;font-size:12px;padding:4px 8px}.autocomplete-empty,.autocomplete-loading{color:#6b7280;color:var(--dark-gray);font-size:14px;padding:20px}.autocomplete-loading i{color:#2563eb;color:var(--primary-color);margin-right:8px}.btn-clear-student{align-items:center;background:none;color:#1976d2;display:flex;font-size:16px;justify-content:center;padding:4px 8px;transition:all .3s ease;transition:var(--transition);z-index:10}.btn-clear-student:hover{color:#ef4444;color:var(--danger-color);transform:translateY(-50%) scale(1.2)}.filter-input:disabled{background-color:#f3f4f6;color:#9ca3af;cursor:not-allowed;opacity:.7}.auth-container{align-items:center;background:linear-gradient(135deg,#2563eb,#1e40af);display:flex;justify-content:center;min-height:100vh}.auth-box{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:400px;padding:40px;width:100%}.auth-box h1{color:#2563eb;font-size:28px;margin:0 0 10px;text-align:center}.auth-box h2{color:#6b7280;font-size:18px;font-weight:600;margin:0 0 30px;text-align:center}.auth-box form{margin-bottom:20px}.demo-credentials{background:#f3f4f6;border-radius:8px;padding:15px;text-align:center}.demo-credentials p{color:#374151;font-weight:600;margin:0 0 10px}.demo-credentials small{color:#6b7280;display:block;font-size:12px;margin:4px 0}@media (max-width:480px){.auth-box{padding:30px 20px}.auth-box h1{font-size:24px}}.layout{background-color:#f5f5f5;display:flex;min-height:100vh}.sidebar{background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:2px 0 8px #0000001a;color:#fff;display:flex;flex-direction:column;height:100vh;overflow-y:auto;padding:20px;position:fixed;width:280px}.sidebar-header{border-bottom:1px solid #fff3;margin-bottom:30px;padding-bottom:20px;text-align:center}.sidebar-header h2{font-size:24px;font-weight:700;margin:0}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:10px}.nav-item{border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:12px 16px;text-decoration:none;transition:all .3s ease}.nav-item:hover{background-color:#fff3;color:#fff;transform:translateX(5px)}.nav-item.active{background-color:#ffffff4d;font-weight:600}.sidebar-footer{border-top:1px solid #fff3;padding-top:20px}.admin-info{background-color:#ffffff1a;border-radius:8px;margin-bottom:20px;padding:12px}.admin-info p{font-weight:600;margin:0 0 4px}.admin-info small{display:block;font-size:12px;opacity:.8}.admin-role{letter-spacing:.4px;margin-top:6px;text-transform:capitalize}.main-content{flex:1 1;margin-left:280px;overflow-y:auto;padding:20px 10px}@media (max-width:768px){.sidebar{height:auto;position:static;width:100%}.main-content{margin-left:0;padding:20px}.layout{flex-direction:column}.sidebar-footer{margin-top:20px}}.dashboard{width:100%}.dashboard h1{color:#1f2937;margin-bottom:30px;margin-top:0}.section-header{margin:10px 0 20px}.section-header h2{color:#1f2937;font-size:22px;margin:0}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;gap:20px;padding:20px;transition:transform .3s ease,box-shadow .3s ease}.stat-card:hover{box-shadow:0 8px 16px #00000026;transform:translateY(-5px)}.stat-icon{color:#2563eb;font-size:40px;min-width:60px;text-align:center}.stat-content h3{color:#6b7280;font-size:14px;font-weight:500;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.stat-number{color:#2563eb;font-size:32px;font-weight:700;margin:0}.stat-number-money{font-size:24px;line-height:1.3}.stat-split{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.stat-split-item{align-items:center;background:#eff6ff;border-radius:999px;color:#1d4ed8;display:inline-flex;font-size:12px;font-weight:700;gap:6px;padding:4px 8px}.stat-split-boys{background:#e0f2fe;color:#0f4c81}.stat-split-girls{background:#fce7f3;color:#9d174d}.birthday-card,.class-breakdown-card{margin-top:30px;padding:16px}.class-breakdown-subtitle{color:#6b7280;font-size:13px;margin:4px 0 0}.class-breakdown-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.class-breakdown-row{background:#f8fbff;border:1px solid #dbeafe;border-radius:12px;padding:12px 14px}.class-breakdown-meta{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:4px}.class-breakdown-meta h4{color:#1f2937;font-size:14px;line-height:1.2;margin:0}.class-breakdown-count{background:#2563eb;border-radius:999px;color:#fff;font-size:13px;font-weight:700;min-width:36px;padding:4px 8px;text-align:center}.class-breakdown-gender{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:6px}.class-gender-chip{align-items:center;background:#eff6ff;border-radius:999px;color:#1e40af;display:inline-flex;font-size:12px;font-weight:700;gap:5px;padding:3px 8px}.class-gender-boys{background:#e0f2fe;color:#0f4c81}.class-gender-girls{background:#fce7f3;color:#9d174d}.birthday-list{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.birthday-row{align-items:center;background:linear-gradient(135deg,#fff7ed,#eff6ff);border:1px solid #fed7aa;border-radius:12px;display:flex;gap:10px;justify-content:space-between;padding:10px 12px}.birthday-student{align-items:center;display:flex;gap:12px;min-width:0}.birthday-avatar{align-items:center;background:#fff;border-radius:50%;box-shadow:0 4px 10px #ea580c1f;color:#ea580c;display:inline-flex;flex-shrink:0;height:34px;justify-content:center;width:34px}.birthday-student h4,.birthday-student p{margin:0}.birthday-student h4{color:#1f2937;font-size:13px}.birthday-student-link{color:inherit;text-decoration:none}.birthday-student-link:focus,.birthday-student-link:hover{color:#1d4ed8;text-decoration:underline}.birthday-student p{color:#6b7280;font-size:11px;margin-top:3px}.birthday-meta{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:5px}.birthday-date{color:#9a3412;font-size:12px;font-weight:700}.birthday-countdown{background:#2563eb1a;border-radius:999px;color:#1d4ed8;font-size:11px;font-weight:700;padding:3px 7px}@media (max-width:768px){.stats-grid{grid-template-columns:1fr}.class-breakdown-list{grid-template-columns:1fr 1fr}.birthday-row{align-items:flex-start}}@media (max-width:520px){.class-breakdown-list{grid-template-columns:1fr}.birthday-row{flex-direction:column}.birthday-meta{align-items:flex-start;width:100%}}.form-page,.list-page,.profile-page{width:100%}.form-header,.list-header,.profile-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.form-header h1,.list-header h1,.profile-header h1{margin:0}.form-header,.profile-header{flex-wrap:wrap;gap:15px}.action-buttons{display:flex;gap:5px}.action-buttons .btn{font-size:12px;padding:6px 12px}.header-actions{display:flex;flex-wrap:wrap;gap:12px}.btn-link.student-name-link,.name-with-gender{align-items:center;display:inline-flex;gap:8px}.btn-link.student-name-link{background:none;border:none;color:var(--primary-color);cursor:pointer;font:inherit;padding:0;text-align:left}.btn-link.student-name-link:hover{text-decoration:underline}.gender-icon{font-size:14px;line-height:1}.gender-icon-male{color:#2563eb}.gender-icon-female{color:#db2777}.fee-pagination-section{background:#fafafa;border-top:1px solid #e0e0e0;padding:20px}.fee-pagination-section,.list-export-section{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between}.list-export-section{padding:18px 20px 0}.list-export-text{color:#4b5563;font-size:14px;font-weight:500}.fee-summary-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:24px}.fee-stat-card{border:1px solid #e5e7eb}.fee-details-grid{grid-gap:24px;display:grid;gap:24px}.pagination-center,.pagination-controls,.pagination-left{align-items:center;display:flex;gap:15px}.rows-per-page{align-items:center;color:#333;display:flex;font-size:13px;font-weight:500;gap:10px}.page-size-select{background:#fff;border:2px solid #ddd;border-radius:4px;cursor:pointer;font-weight:500;padding:6px 12px;transition:all .3s ease}.page-size-select:focus{border-color:#667eea;outline:none}.page-info{color:#666;font-size:13px}.page-indicator{color:#666;font-size:14px;font-weight:500}.btn.btn-pagination{background:#fff;border:2px solid #667eea;border-radius:6px;color:#667eea;cursor:pointer;font-size:13px;font-weight:500;padding:8px 18px;transition:all .3s ease}.btn.btn-pagination:hover:not(:disabled){background:#667eea;color:#fff}.btn.btn-pagination:disabled{border-color:#ccc;color:#999;cursor:not-allowed;opacity:.5}.fee-filter-card{background:linear-gradient(135deg,#667eea,#764ba2);border:none;box-shadow:0 4px 15px #667eea33;margin-bottom:25px}.filter-header{margin-bottom:16px}.filter-header h3{color:#fff;font-size:18px;font-weight:600;margin:0}.filter-content{background:#fff;border-radius:10px;padding:24px}.filter-row{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:24px}.filter-group{display:flex;flex-direction:column;min-width:0}.filter-group label{color:#333;font-size:13px;font-weight:600;letter-spacing:.5px;margin-bottom:9px;text-transform:uppercase}.filter-input{border:2px solid #e0e0e0;border-radius:6px;font-family:inherit;font-size:14px;min-height:44px;padding:11px 13px;transition:all .3s ease;width:100%}.filter-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.filter-input::placeholder{color:#999}.filter-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;padding-top:4px}.filter-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .3s ease}.btn.btn-primary.filter-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn.btn-primary.filter-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.btn.btn-secondary.filter-btn{background:#f0f0f0;border:1px solid #ddd;color:#333}.btn.min-height-46{min-height:46px}.btn.btn-secondary.filter-btn:hover{background:#e8e8e8;border-color:#999}.autocomplete-group{position:relative}.autocomplete-wrapper{position:relative;width:100%}.btn-clear-student{background:#0000;border:none;color:#667eea;cursor:pointer;position:absolute;right:10px;top:50%;transform:translateY(-50%);z-index:2}.autocomplete-dropdown{background:#fff;border:2px solid #667eea;border-radius:0 0 8px 8px;border-top:none;box-shadow:0 8px 16px #667eea26;left:0;max-height:280px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.autocomplete-item{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:background-color .2s ease}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover{background-color:#f5f7ff}.autocomplete-item strong{color:#333;font-size:14px}.autocomplete-empty,.autocomplete-loading{color:#999;font-size:13px;padding:16px;text-align:center}.class-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-size:11px;font-weight:600;margin-left:10px;padding:3px 10px}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0009;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 60px #0000004d;max-height:85vh;max-width:600px;overflow-y:auto;width:90%}.modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;padding:20px 24px}.modal-header h2{color:#fff;font-size:20px;margin:0}.modal-close{align-items:center;background:#fff3;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;width:32px}.modal-body{padding:30px 24px}.modal-footer{background:#fafafa;border-top:2px solid #f0f0f0;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;padding:20px 24px}.modal-footer .btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .3s ease}.detail-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.detail-item{display:flex;flex-direction:column}.detail-item-wide{grid-column:1/-1}.detail-item label{color:#667eea;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.detail-item p{color:#333;font-size:15px;font-weight:500;margin:0;word-break:break-word}.receipt-container{display:none;left:0;position:absolute;top:0}.receipt{background:#fff;box-sizing:border-box;color:#111827;font-family:Courier New,monospace;height:auto;margin:0;padding:0;width:80mm}.receipt-header{color:#111827;padding:4mm 4mm 3mm;text-align:center}.receipt-kicker{font-size:10px;font-weight:700;letter-spacing:.12em;margin:0 0 2mm;text-transform:uppercase}.receipt-title{font-size:16px;font-weight:700;letter-spacing:.02em;margin:0 0 1mm}.receipt-subtitle{font-size:10px;margin:.5mm 0}.receipt-body{font-size:10px;line-height:1.35;padding:0 4mm 4mm}.receipt-meta{grid-gap:1.5mm;display:grid;gap:1.5mm}.receipt-detail-row,.receipt-meta-row{align-items:flex-start;display:flex;gap:3mm;justify-content:space-between}.receipt-detail-row span,.receipt-meta-row span{color:#4b5563}.receipt-detail-row strong,.receipt-meta-row strong{text-align:right;word-break:break-word}.receipt-section{margin-bottom:0}.receipt-section h3{border-bottom:1px dashed #9ca3af;color:#333;font-size:10px;font-weight:700;letter-spacing:.5px;margin:0 0 2.5mm;padding-bottom:1mm;text-transform:uppercase}.receipt-section p{color:#333;margin:1mm 0}.receipt-detail-list{grid-gap:1.5mm;display:grid;gap:1.5mm}.receipt-detail-row-stack{flex-direction:column}.receipt-detail-row-stack strong{text-align:left}.amount{color:#111827;font-size:15px;font-weight:700;margin:1.5mm 0 0}.receipt-amount-panel{border:1px dashed #6b7280;margin-bottom:3mm;padding:2.5mm;text-align:center}.receipt-amount-panel span{color:#4b5563;display:block;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.receipt-signoff{text-align:center}.receipt-line-divider{border-top:1px dashed #6b7280;margin:3mm 0}.receipt-footer{font-size:9px;padding:0 4mm 4mm;text-align:center}.receipt-bottom-line{border-bottom:2px solid #111827;margin:0 0 2.5mm;text-align:center}.receipt-thank-you{color:#111827;font-size:10px;font-weight:700;margin:0;padding:0;text-align:center}@media (max-width:768px){.form-header,.list-header,.profile-header{align-items:flex-start;flex-direction:column}.form-header button,.header-actions,.profile-header button{width:100%}.action-buttons{flex-direction:column;width:100%}.action-buttons .btn{width:100%}.fee-pagination-section,.list-export-section{align-items:stretch;flex-direction:column}.filter-row{gap:14px;grid-template-columns:1fr}.pagination-center,.pagination-controls,.pagination-left{flex-wrap:wrap;justify-content:center;width:100%}.autocomplete-item{align-items:flex-start;flex-direction:column;gap:6px}.modal-content{width:95%}.detail-grid{grid-template-columns:1fr}}@media print{@page{size:80mm auto;margin:4mm}*{color-adjust:exact!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body{background:#fff;margin:0;padding:0}.receipt-container{display:block;margin:0 auto;min-width:80mm;padding:0;position:static;width:80mm}.receipt{margin:0;max-width:72mm;padding:0;page-break-after:avoid;width:72mm}.btn,.list-page,.modal-content,.modal-overlay,input,nav,select{display:none!important}}.form-page,.profile-page{max-width:1200px}.form-actions{display:flex;gap:10px;margin-top:30px}.form-actions .btn{flex:1 1}.profile-content{background:#f9fafb;border-radius:8px;padding:20px}.profile-section{margin-bottom:30px}.profile-section:last-child{margin-bottom:0}.profile-section h3{border-bottom:2px solid #e5e7eb;color:#1f2937;margin-bottom:20px;margin-top:0;padding-bottom:10px}.profile-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.profile-item label{color:#6b7280;display:block;font-size:12px;font-weight:600;margin-bottom:4px;text-transform:uppercase}.profile-item p{color:#1f2937;margin:0;word-break:break-word}.profile-actions{display:flex;flex-wrap:wrap;gap:10px}.profile-actions .btn{padding:10px 15px}@media print{.profile-actions,.profile-header{display:none}.profile-page{background:#fff}.card{box-shadow:none;page-break-inside:avoid}}@media (max-width:768px){.profile-grid{grid-template-columns:1fr}.form-actions,.profile-actions{flex-direction:column}.profile-actions .btn{width:100%}}.profile-page{width:100%}.ex-teacher-highlight{color:#9a3412;display:inline-block;font-weight:700}.profile-secondary-card{background:linear-gradient(180deg,#f8fbff,#fff);border:1px solid #dbeafe;margin-top:1.5rem;padding:1.25rem}.profile-secondary-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.profile-secondary-header h3{color:#0f172a;margin:0}.profile-secondary-header p{color:#64748b;font-size:.95rem;margin:0}.profile-table-wrapper{background:#fff;border:1px solid #e5e7eb;border-radius:14px;overflow-x:auto;width:100%}.profile-table{border-collapse:collapse;min-width:760px;width:100%}.profile-table td,.profile-table th{border-bottom:1px solid #e5e7eb;padding:.95rem 1rem;text-align:left}.profile-table th{background:#f8fafc;color:#334155;font-size:.84rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.profile-table td{color:#1f2937;font-size:.95rem}.profile-table tbody tr:last-child td{border-bottom:none}.profile-table tbody tr:nth-child(2n){background:#fcfdff}.profile-table-state{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;color:#64748b;padding:1rem 1.1rem}.transfer-certificate-container{display:none}.transfer-certificate{background:#fff;border:1px solid #516ab0;border-radius:8mm;box-sizing:border-box;color:#1f3c88;font-family:Times New Roman,serif;min-height:277mm;padding:7mm 8mm;width:190mm}.transfer-certificate__header{margin-bottom:3mm}.transfer-certificate__govt-note{color:#3d57a2;font-size:3mm;font-weight:700;margin-bottom:2mm}.transfer-certificate__brand{display:table;padding-bottom:2mm;width:100%}.transfer-certificate__logo{display:table-cell;height:22mm;vertical-align:middle;width:22mm}.transfer-certificate__brand-copy{display:table-cell;padding-left:3mm;text-align:center;vertical-align:middle}.transfer-certificate__school-name{color:#29408d;font-size:7mm;font-weight:700;letter-spacing:.2mm;margin:0;text-transform:uppercase}.transfer-certificate__address{color:#35508f;font-size:3.3mm;font-weight:600;margin:1mm 0 0}.transfer-certificate__meta-line{color:#35508f;font-size:3mm;font-weight:600;margin:.6mm 0 0}.transfer-certificate__title-wrap{border-bottom:1px dashed #7f90c8;border-top:1px dashed #7f90c8;margin-bottom:3mm;padding-bottom:2mm;padding-top:2mm;text-align:center}.transfer-certificate__body{display:block}.transfer-certificate__topline{margin-bottom:3mm;width:100%}.transfer-certificate__topline-field{color:#334f97;display:inline-block;font-size:3.2mm;font-weight:700;vertical-align:top;width:48%}.transfer-certificate__topline-field strong{border-bottom:1px solid #5f73b3;display:inline-block;min-width:28mm;padding:0 1mm .5mm}.transfer-certificate__topline-field--right{text-align:right}.transfer-certificate__title-band{color:#29408d;font-size:5.6mm;font-weight:700;letter-spacing:.2mm;margin:0;text-align:center;text-transform:uppercase}.transfer-certificate__subtitle{color:#5f73b3;font-size:2.6mm;font-weight:600;margin:.6mm 0 0}.transfer-certificate__content{display:block}.transfer-certificate__field-row,.transfer-certificate__text-row{color:#35508f;font-size:3.2mm;line-height:1.45;margin:0 0 2.2mm}.transfer-certificate__field-row{width:100%}.transfer-certificate__field-row--split,.transfer-certificate__field-row--triple{margin-bottom:8px}.transfer-certificate__field-inline{display:inline-block;margin-right:1%;vertical-align:top;width:49%}.transfer-certificate__field-row--triple .transfer-certificate__field-inline{width:32%}.transfer-certificate__field-row--fromto .transfer-certificate__field-inline{width:48%}.transfer-certificate__field-inline strong,.transfer-certificate__field-row strong{border-bottom:1px solid #5f73b3;display:inline-block;font-size:3.2mm;font-weight:600;min-width:16mm;padding:0 .7mm .5mm}.transfer-certificate__signatures{margin-top:10mm;padding-top:3mm;text-align:right}.transfer-certificate__signature{border-top:1px solid #29408d;color:#29408d;display:inline-block;font-size:3.4mm;font-weight:600;min-height:16mm;padding-top:2mm;text-align:center;text-transform:uppercase;width:34mm}@media (max-width:768px){.profile-header,.profile-secondary-header{flex-direction:column}.profile-actions{width:100%}.profile-actions .btn{flex:1 1}.transfer-certificate__topline-field{display:block;margin-bottom:8px;width:100%}.transfer-certificate__topline-field--right{text-align:left}.transfer-certificate__field-inline{display:block;margin-bottom:8px;margin-right:0;width:100%}.transfer-certificate__brand{display:block}.transfer-certificate__logo{display:block;margin:0 auto 10px}.transfer-certificate__field-row--fromto .transfer-certificate__field-inline,.transfer-certificate__field-row--triple .transfer-certificate__field-inline{width:100%}.transfer-certificate__school-name,.transfer-certificate__title-band{font-size:1.05rem}}@media print{@page{size:A4 portrait;margin:0}.back-button,.navbar,.profile-actions,.profile-page,.sidebar{display:none}.main-content{margin-left:0;padding:0}.card{box-shadow:none;page-break-inside:avoid}.transfer-certificate-container{box-sizing:border-box;display:block;height:297mm;padding:10mm;width:210mm}.transfer-certificate{background:#fff;border:2px solid #5b6fb5;border-radius:8mm;box-sizing:border-box;color:#1f3c88;display:block;margin:0 auto;min-height:277mm;padding:7mm 8mm;width:190mm}.transfer-certificate__brand{display:table;width:100%}.transfer-certificate__logo{display:table-cell;height:24mm;vertical-align:middle;width:24mm}.transfer-certificate__brand-copy{display:table-cell;padding-left:4mm;text-align:center;vertical-align:middle}.transfer-certificate__school-name{font-size:19pt;letter-spacing:.5pt}.transfer-certificate__address{font-size:9pt}.transfer-certificate__title-band{font-size:15pt}.transfer-certificate__subtitle{font-size:7.5pt}.transfer-certificate__govt-note{font-size:8pt}.transfer-certificate__topline{margin-bottom:3mm}.transfer-certificate__topline-field{font-size:9pt;width:49%}.transfer-certificate__field-inline,.transfer-certificate__field-row,.transfer-certificate__text-row{color:#1f3c88;font-size:8.7pt}.transfer-certificate__field-row{margin-bottom:2.1mm}.transfer-certificate__field-inline{width:49%}.transfer-certificate__field-row--triple .transfer-certificate__field-inline{width:32%}.transfer-certificate__field-row--fromto .transfer-certificate__field-inline{width:39%}.transfer-certificate__signatures{margin-top:9mm;padding-top:4mm}.transfer-certificate__signature{font-size:9pt;min-height:14mm;width:34mm}}.fee-payment-page .form-header{border-bottom:2px solid #f0f0f0;margin-bottom:30px;padding-bottom:20px}.fee-payment-page .form-header h2{align-items:center;color:#1f2937;display:flex;font-size:24px;gap:12px;margin:0 0 8px}.fee-payment-page .form-header h2 i{color:#2196f3}.fee-payment-page .form-header p{color:#6b7280;font-size:14px;margin:0}.fee-payment-alert{align-items:center;display:flex;gap:10px}.fee-payment-alert i{font-size:16px}.fee-payment-page form h3{align-items:center;border-bottom:2px solid #e5e7eb;color:#1f2937;display:flex;font-size:16px;gap:10px;margin-bottom:20px;margin-top:30px;padding-bottom:10px}.fee-payment-page .badge-value,.fee-payment-page .btn-clear-search,.fee-payment-page .info-badge i,.fee-payment-page .student-search-input:focus,.fee-payment-page form h3 i{color:#2196f3}.required{color:#dc3545}.fee-payment-page .selected-student-info{background:linear-gradient(135deg,#f0f7ff,#e3f2fd);border:2px solid #2196f3;border-left:5px solid #1976d2;border-radius:8px;box-shadow:0 2px 8px #2196f326;margin:25px 0;padding:20px}.fee-payment-page .student-search-wrapper{position:relative;width:100%}.fee-payment-page .btn-clear-search{align-items:center;background:none;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:18px;justify-content:center;padding:6px 8px;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:all .3s ease;z-index:5}.fee-payment-page .btn-clear-search:hover{background-color:#dc35451a;color:#dc3545;transform:translateY(-50%) scale(1.15)}.fee-payment-page .info-badge{align-items:center;border-bottom:2px solid #1976d233;display:flex;gap:12px;margin-bottom:18px;padding-bottom:15px}.fee-payment-page .badge-label{color:#666;font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.fee-payment-page .badge-value{font-size:16px;font-weight:700}.fee-payment-page .info-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.fee-payment-page .info-col{background:#fff;border:1px solid #2196f326;border-radius:6px;box-shadow:0 1px 3px #0000000d;padding:14px}.fee-payment-page .info-col label{color:#999;display:block;font-size:11px;font-weight:700;letter-spacing:.3px;margin-bottom:8px;text-transform:uppercase}.fee-payment-page .info-col p{color:#333;font-size:14px;font-weight:600;margin:0;word-break:break-word}.fee-payment-page .form-actions{border-top:1px solid #e5e7eb;gap:12px;margin-top:35px;padding-top:20px}.fee-payment-page .form-actions .btn{align-items:center;display:flex;gap:8px;justify-content:center}.fee-payment-page .btn i{font-size:14px}.fee-payment-page .student-search-input{background:#fff;border:2px solid #e0e0e0;border-radius:8px;font-family:inherit;font-size:14px;padding:12px 14px;transition:all .3s ease;width:100%}.fee-payment-page .student-search-input:focus{border-color:#2196f3;box-shadow:0 0 0 4px #2196f31a;outline:none}.fee-payment-page .student-search-input::placeholder{color:#999}.fee-payment-page .student-search-dropdown{background:#fff;border:2px solid #2196f3;border-radius:8px;box-shadow:0 8px 24px #2196f333;left:0;max-height:320px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 4px);z-index:1000}.fee-payment-page .student-search-item{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;gap:12px;justify-content:space-between;padding:12px 16px;transition:background-color .2s ease}.fee-payment-page .student-search-item:last-child{border-bottom:none}.fee-payment-page .student-search-item:hover{background-color:#f5f7ff}.fee-payment-page .student-name{color:#333;flex:1 1;font-size:14px;font-weight:500}.fee-payment-page .student-meta{align-items:center;display:flex;gap:8px}.fee-payment-page .aadhar-badge{background:#f0f0f0;border-radius:12px;color:#666;font-size:11px;font-weight:600;padding:4px 8px;white-space:nowrap}.fee-payment-page .student-search-empty,.fee-payment-page .student-search-loading{color:#999;font-size:13px;padding:16px;text-align:center}.fee-payment-page .student-search-dropdown::-webkit-scrollbar{width:6px}.fee-payment-page .student-search-dropdown::-webkit-scrollbar-track{background:#f0f0f0;border-radius:8px}.fee-payment-page .student-search-dropdown::-webkit-scrollbar-thumb{background:#2196f3;border-radius:8px}.fee-payment-page .student-search-dropdown::-webkit-scrollbar-thumb:hover{background:#1976d2}@media (max-width:768px){.fee-payment-page .info-row{grid-template-columns:1fr}.fee-payment-page .form-header h2{font-size:20px}.fee-payment-page .student-meta{flex-direction:column;gap:4px}.fee-payment-page .student-search-item{align-items:flex-start;flex-direction:column}.fee-payment-page .student-name{width:100%}}.admin-page-subtitle{color:var(--dark-gray);font-size:14px;margin:6px 0 0}.admin-name-cell{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.admin-modal{max-width:720px}.checkbox-label{align-items:center;color:var(--text-dark);cursor:pointer;display:inline-flex;font-weight:500;gap:10px}.checkbox-label input[type=checkbox]{margin:0;width:auto}.site-enquiry-subtitle{color:#6b7280;margin:6px 0 0}.site-enquiry-table td,.site-enquiry-table th{vertical-align:top}td.width-100{width:100px}.site-enquiry-message-cell{max-width:270px;min-width:260px;white-space:pre-wrap;word-break:break-word}.site-enquiry-submitted{display:flex;flex-direction:column;gap:2px;min-width:80px}.site-enquiry-submitted strong{color:#1f2937;font-size:13px}.site-enquiry-submitted span{color:#6b7280;font-size:12px}.site-enquiry-modal{max-width:720px}
/*# sourceMappingURL=main.27b4d84a.css.map*/