@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700&display=swap";.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:var(--background-color)}.login-card{background:var(--card-bg-color);padding:2.5rem 3rem;border-radius:12px;box-shadow:0 10px 25px #0000001a;text-align:center;width:100%;max-width:400px}.logo-img{max-width:180px;margin-bottom:1rem}.login-title{font-size:2rem;font-weight:700;color:var(--text-dark);margin-bottom:.5rem}.slogan{color:var(--text-light);margin-bottom:2.5rem}.form-group{text-align:left;margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-light);font-weight:600;font-size:.9rem}.form-group input{width:100%;padding:.8rem 1rem;border:1px solid #dee2e6;border-radius:8px;box-sizing:border-box;font-size:1rem}.form-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #007bff40}.btn-primary{width:100%;padding:.9rem;border:none;border-radius:8px;background-color:var(--primary-color);color:#fff;font-size:1rem;font-weight:700;cursor:pointer;transition:background-color .3s ease}.btn-primary:hover{background-color:#0056b3}.error-message{color:#d93025;margin-bottom:1rem;font-size:.9rem}.success-message{color:#28a745;margin-top:1rem;font-size:.9rem;font-weight:500}.forgot-password-link,.back-link-container{margin-top:1.5rem;font-size:.9rem}.forgot-password-link a,.back-link-container a{color:var(--primary-color);text-decoration:none}.forgot-password-link a:hover,.back-link-container a:hover{text-decoration:underline}.page-title{font-size:2.2rem;font-weight:700;margin-bottom:2rem;color:var(--text-dark)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.card{background-color:var(--card-bg-color);padding:1.5rem;border-radius:12px;box-shadow:0 4px 15px #0000000f}.stat-card{border-left:5px solid;display:flex;flex-direction:column;justify-content:space-between}.stat-card h2{font-size:1rem;color:var(--text-light);font-weight:600;margin-top:0;margin-bottom:.5rem}.stat-card .stat-number{font-size:2.8rem;font-weight:700;color:var(--text-dark);margin:0;line-height:1.1}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-title{margin-bottom:.25rem}.welcome-subtitle{margin:0;font-size:1.25rem;font-weight:400;color:var(--text-light)}.sidebar{width:250px;background-color:var(--sidebar-bg);color:var(--sidebar-text);padding:1.5rem;display:flex;flex-direction:column;height:100vh;flex-shrink:0}.sidebar-logo{text-align:center;padding:1rem;margin-bottom:1.5rem}.sidebar-logo-img{max-width:120px}.sidebar nav{display:flex;flex-direction:column;gap:.5rem}.sidebar nav a{color:var(--sidebar-text);text-decoration:none;padding:.9rem 1.2rem;border-radius:8px;font-weight:600;transition:background-color .2s,color .2s}.sidebar nav a:hover{background-color:#2a2a3e;color:#fff}.sidebar nav a.active{background-color:var(--sidebar-active);color:#fff}.sidebar-logout{margin-top:auto;padding-top:1rem;border-top:1px solid #495057}.sidebar-logout button{width:100%;padding:.8rem;border:none;border-radius:8px;background-color:#6c757d;color:#fff;font-weight:700;text-align:center;cursor:pointer;transition:background-color .2s}.sidebar-logout button:hover{background-color:#5a6268}.app-container{display:flex;min-height:100vh}.main-content{flex-grow:1;padding:2.5rem;background-color:var(--background-color);overflow-y:auto;height:100vh}.student-form{max-width:750px;margin:0 auto;padding:1.5rem}.student-form h2{margin-top:0;margin-bottom:1.2rem;color:var(--secondary-color);border-bottom:1px solid #eee;padding-bottom:.5rem;font-size:1.2rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-bottom:1.2rem}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:.4rem;font-weight:600;color:var(--text-light);font-size:.85rem}.form-group input[type=text],.form-group input[type=tel],.form-group input[type=date],.form-group input[type=number]{padding:.7rem .8rem;border:1px solid #dee2e6;border-radius:6px;font-size:.9rem;font-family:inherit}.invoice-group{flex-direction:row;align-items:center;justify-content:flex-start;gap:.5rem;padding-top:1.5rem}hr{border:none;border-top:1px solid #eee;margin:1.5rem 0}.total-amount{text-align:right;font-size:1.2rem;margin:1rem 0;color:var(--text-dark)}.student-form .btn-primary{display:block;width:auto;margin-left:auto;padding:.7rem 1.8rem}@media (max-width: 768px){.form-row{grid-template-columns:1fr;margin-bottom:0;gap:1.2rem}.form-group{margin-bottom:1.2rem}}.page-title{font-size:2.2rem;font-weight:700;margin-bottom:2rem;color:var(--secondary-color)}.filter-buttons{display:flex;gap:10px;margin-bottom:2rem;padding:1rem;box-shadow:0 2px 10px #0000000d;border-radius:8px;background-color:var(--card-bg-color)}.filter-buttons button{background-color:#e0e0e0;color:var(--text-dark);border:none;padding:.7rem 1.2rem;border-radius:6px;cursor:pointer;font-weight:600;transition:background-color .2s,color .2s}.filter-buttons button:hover{background-color:#d0d0d0}.filter-buttons button.active{background-color:var(--primary-color);color:#fff}.student-list-card{padding:1.5rem;box-shadow:0 4px 15px #0000000f}.table-responsive{overflow-x:auto}.student-table{width:100%;border-collapse:collapse;margin-bottom:1rem}.student-table thead tr{background-color:var(--primary-color);color:#fff;text-align:left}.student-table th,.student-table td{padding:12px 15px;border-bottom:1px solid #dee2e6}.student-table th{font-weight:600;font-size:.9rem;white-space:nowrap}.student-table tbody tr:nth-of-type(2n){background-color:#f8f9fa}.student-table tbody tr:hover{background-color:#f1f1f1}.payment-status-badge,.student-status-badge{display:inline-block;padding:.3em .6em;border-radius:.25rem;font-size:.75em;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline}.status-pending{background-color:#ffc107;color:#343a40}.status-approved{background-color:#28a745;color:#fff}.status-rejected,.status-inactive{background-color:#dc3545;color:#fff}.status-sinpagos,.status-active{background-color:#6c757d;color:#fff}.tracking-key-cell{display:flex;align-items:center;gap:5px;white-space:nowrap}.tracking-key-cell span{font-family:monospace;font-size:.9em}.copy-btn{background:none;border:none;color:var(--primary-color);cursor:pointer;padding:5px;display:flex;align-items:center;justify-content:center}.copy-btn:hover{color:#0056b3}.actions-cell{white-space:nowrap}.actions-cell button{margin-right:5px;padding:6px 10px;border:none;border-radius:5px;cursor:pointer;font-size:.85rem;font-weight:600;transition:background-color .2s}.action-btn-primary{background-color:var(--primary-color);color:#fff}.action-btn-primary:hover{background-color:#0056b3}.action-btn-danger{background-color:#dc3545;color:#fff}.action-btn-danger:hover{background-color:#c82333}.action-btn-success{background-color:#28a745;color:#fff}.action-btn-success:hover{background-color:#218838}.no-data{text-align:center;color:var(--text-light);font-style:italic;padding:20px}.tracking-info{margin-top:2rem;text-align:center;font-size:.95rem;color:var(--text-light)}.tracking-info a{color:var(--primary-color);text-decoration:none}.tracking-info a:hover{text-decoration:underline}.action-btn-warning{background-color:#ffc107;color:#212529}.action-btn-warning:hover{background-color:#e0a800}.payment-status-select{border:1px solid #ccc;border-radius:8px;padding:6px 10px;font-weight:500;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-position:right 10px center;background-repeat:no-repeat;background-size:12px;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23666%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.4-12.8z%22%2F%3E%3C%2Fsvg%3E)}.payment-status-select:disabled{cursor:not-allowed;background-color:#f0f0f0}.payment-status-select.status-pending{background-color:#fffbeb;color:#b45309;border-color:#fde68a}.payment-status-select.status-approved{background-color:#f0fdf4;color:#166534;border-color:#bbf7d0}.payment-status-select.status-rejected{background-color:#fef2f2;color:#991b1b;border-color:#fecaca}.search-filters-card{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem;margin-bottom:1rem;background-color:#f8f9fa}.search-input,.filter-select{padding:.65rem 1rem;border:1px solid #ddd;border-radius:8px;font-size:1rem;color:#333}.search-input{flex:2 1 300px}.filter-select{flex:1 1 200px}.filter-select:focus,.search-input:focus{outline:none;border-color:#0d9488;box-shadow:0 0 0 2px #0d948833}.student-name-link{color:#0d9488;font-weight:500;text-decoration:none}.student-name-link:hover{text-decoration:underline}.modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;padding:2rem;border-radius:12px;width:90%;max-width:500px;box-shadow:0 5px 15px #0000004d;animation:fadeIn .3s ease-out}.modal-content h2{margin-top:0;margin-bottom:1.5rem;color:#333}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;color:#555;font-weight:500}.form-group input{width:100%;padding:.75rem;border:1px solid #ccc;border-radius:8px;font-size:1rem}.form-group input:disabled{background-color:#f4f4f4;cursor:not-allowed}.modal-actions{margin-top:2rem;display:flex;justify-content:flex-end;gap:1rem}.modal-actions .btn-secondary{padding:.75rem 1.5rem;border:1px solid #ccc;background:#fff;color:#333;border-radius:8px;cursor:pointer;font-weight:500}.modal-actions .btn-primary{padding:.75rem 1.5rem;border:none;background:#0d9488;color:#fff;border-radius:8px;cursor:pointer;font-weight:500}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.birthday-container{padding:2rem}.birthday-title{display:flex;align-items:center;font-size:1.875rem;font-weight:700;margin-bottom:1.5rem;color:#374151}.birthday-title-icon{font-size:2rem;margin-right:.75rem}.birthday-card{background-color:#fff;border-radius:.75rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;overflow:hidden}.birthday-table-wrapper{overflow-x:auto}.birthday-table{min-width:100%;border-collapse:collapse}.birthday-table-head{background-color:#0d9488}.birthday-table-head th{padding:1rem 1.5rem;color:#fff;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;text-align:left}.birthday-table-head th.text-center{text-align:center}.birthday-table-body tr{border-bottom:1px solid #e5e7eb}.birthday-table-body tr:hover{background-color:#f9fafb}.birthday-table-body td{padding:1rem 1.5rem;white-space:nowrap;font-size:.875rem}.birthday-table-body td.text-center{text-align:center}.student-name{font-weight:500;color:#111827}.birth-date{color:#4b5563}.days-badge{display:inline-flex;padding:.25rem .75rem;font-size:.75rem;font-weight:600;border-radius:9999px;background-color:#dcfce7;color:#166534}.no-results{padding:2.5rem;text-align:center;color:#6b7281}.student-detail-container{padding:2rem}.back-link{display:inline-block;margin-bottom:1.5rem;color:#0d9488;text-decoration:none;font-weight:500}.back-link:hover{text-decoration:underline}.student-info-card{padding:1.5rem 2rem;margin-bottom:2rem}.info-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding-bottom:1rem;margin-bottom:1rem}.info-header h1{margin:0;font-size:2rem;color:#333}.status-badge{padding:.25rem .75rem;border-radius:9999px;font-weight:500;font-size:.8rem;text-transform:uppercase}.status-badge.status-active{background-color:#dcfce7;color:#166534}.status-badge.status-inactive{background-color:#fee2e2;color:#991b1b}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;color:#555}.payment-history-card{padding:1.5rem 2rem}.payment-history-card h2{margin-top:0}.payment-history-table{width:100%;border-collapse:collapse;margin-top:1rem}.payment-history-table th,.payment-history-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #eee}.payment-history-table th{background-color:#f8f9fa;font-weight:500;color:#555}.payment-status-badge{padding:4px 8px;border-radius:12px;font-size:.8em;font-weight:500}.payment-status-badge.status-pending{background-color:#fffbeb;color:#b45309}.payment-status-badge.status-approved{background-color:#f0fdf4;color:#166534}.payment-status-badge.status-rejected{background-color:#fef2f2;color:#991b1b}.settings-container{padding:2rem}.settings-card{background-color:var(--card-bg-color);padding:2rem;border-radius:12px;box-shadow:0 4px 12px #00000014;margin-bottom:2rem}.settings-card h2{margin-top:0;margin-bottom:1.5rem;color:var(--text-dark);border-bottom:1px solid #eee;padding-bottom:.8rem}.error-message{color:#d93025;margin-top:1rem;font-size:.9rem;text-align:left}.success-message{color:#28a745;margin-top:1rem;font-size:.9rem;font-weight:500;text-align:left}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #007bff;--secondary-color: #3d3d6b;--background-color: #f8f9fa;--card-bg-color: #ffffff;--text-dark: #343a40;--text-light: #6c757d;--sidebar-bg: #000000;--sidebar-text: #a5a5a5;--sidebar-active: #007bff}body{font-family:Montserrat,sans-serif;background-color:var(--background-color);color:var(--text-dark);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#root{height:100%}
