.compose-message-modal{max-width:560px;width:90%}.compose-message-modal .modal-header{align-items:center;display:flex;justify-content:space-between}.compose-message-modal .modal-header h2{color:#2d3748;font-size:1.125rem;margin:0}.compose-message-modal .modal-close-btn{align-items:center;background:none;border:none;color:#6c757d;cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;min-height:44px;min-width:44px}.compose-message-modal .modal-close-btn:hover{color:#333}.compose-error{background:#fff5f5;border-radius:6px;color:#dc3545;font-size:.875rem;padding:.75rem}.compose-error,.compose-message-modal .compose-field{margin-bottom:1rem}.compose-message-modal .compose-field label{color:#4a5568;display:block;font-size:.875rem;font-weight:600;margin-bottom:.25rem}.compose-message-modal .compose-input,.compose-message-modal .compose-textarea{border:1px solid #dee2e6;border-radius:8px;box-sizing:border-box;font-size:.875rem;padding:.75rem;width:100%}.compose-message-modal .compose-textarea{resize:vertical}.compose-message-modal .selected-recipient{align-items:center;background:#e7f3ff;border-radius:6px;display:inline-flex;font-size:.875rem;gap:.5rem;padding:.5rem .75rem}.compose-message-modal .btn-remove-recipient{align-items:center;background:none;border:none;color:#6c757d;cursor:pointer;display:flex;font-size:1rem;font-weight:700;justify-content:center;min-height:44px;min-width:44px}.compose-message-modal .search-status{color:#6c757d;font-size:.75rem;margin:.25rem 0 0}.compose-message-modal .user-results{border:1px solid #e9ecef;border-radius:8px;list-style:none;margin:.25rem 0 0;max-height:200px;overflow-y:auto;padding:0}.compose-message-modal .user-result-item{background:none;border:none;border-bottom:1px solid #f0f0f0;cursor:pointer;display:block;font-size:.875rem;min-height:44px;padding:.75rem;text-align:left;width:100%}.compose-message-modal .user-result-item:hover{background:#f8f9fa}.compose-message-modal .user-result-item:last-child{border-bottom:none}.compose-message-modal .role-tag{border-radius:4px;font-size:.6875rem;font-weight:600;margin-left:.25rem;padding:1px 6px}.compose-message-modal .compose-actions{display:flex;gap:.75rem}.compose-message-modal .btn-compose-send{background:var(--color-primary);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;min-height:44px;padding:10px 24px}.compose-message-modal .btn-compose-send:disabled{cursor:not-allowed;opacity:.6}.compose-message-modal .btn-compose-cancel{background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;min-height:44px;padding:10px 24px}.compose-message-modal .btn-compose-cancel:hover{background:#5a6268}.compose-loading{color:#6c757d;font-size:.875rem;padding:1rem;text-align:center}.existing-thread-info{display:flex;flex-direction:column;gap:.75rem}.existing-thread-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between}.existing-thread-subject{color:#2d3748;font-size:1rem;font-weight:600}.btn-new-conversation{background:var(--color-primary);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.8125rem;font-weight:600;min-height:44px;padding:6px 14px}.btn-new-conversation:hover{opacity:.9}.existing-thread-messages{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto;padding:.25rem}.thread-msg{background:#f8f9fa;border-radius:8px;padding:.625rem}.thread-msg-mine{background:#e7f3ff;border-left:3px solid #06c}.thread-msg-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.25rem}.thread-msg-sender{font-size:.8125rem;font-weight:600}.thread-msg-date{color:#6c757d;font-size:.6875rem}.thread-msg-body{color:#333;font-size:.875rem;line-height:1.4;margin:0;white-space:pre-wrap}.reply-section{border-top:1px solid #e9ecef;padding-top:.75rem}.new-conversation-notice{margin-bottom:.75rem}.btn-back-to-thread{background:none;border:1px solid var(--color-primary);border-radius:6px;color:var(--color-primary);cursor:pointer;font-size:.8125rem;min-height:44px;padding:6px 14px}.btn-back-to-thread:hover{background:var(--color-primary);color:#fff}.user-management{margin:0 auto;max-width:1400px;padding:20px}.user-management-header{margin-bottom:30px}.user-management-header h1{color:#2c3e50;font-size:28px;margin-bottom:10px}.user-management-header p{color:#7f8c8d;font-size:16px}.filters-section{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.filters-row{align-items:end;display:flex;flex-wrap:wrap;gap:20px}.filter-group{display:flex;flex-direction:column;min-width:200px}.filter-group label{color:#2c3e50;font-size:14px;font-weight:600;margin-bottom:5px}.filter-group input,.filter-group select{border:1px solid #ddd;border-radius:5px;font-size:14px;padding:10px;transition:border-color .3s ease}.filter-group input:focus,.filter-group select:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.users-table-container{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.users-table{border-collapse:collapse;width:100%}.users-table thead{background:#f8f9fa}.users-table th{border-bottom:2px solid #e9ecef;color:#2c3e50;font-size:14px;font-weight:600;padding:15px;text-align:left}.users-table td{border-bottom:1px solid #e9ecef;padding:15px;vertical-align:top}.user-row:hover{background:#f8f9fa}.user-info{min-width:200px}.user-name{color:#2c3e50;font-size:16px;font-weight:600;margin-bottom:5px}.user-details{display:flex;flex-direction:column;gap:2px}.username{color:#7f8c8d;font-size:12px}.email{color:#3498db;font-size:12px}.status-approved{background:#d4edda;color:#155724}.status-pending{background:#fff3cd;color:#856404}.status-rejected{background:#f8d7da;color:#721c24}.status-no-record{background:#e2e3e5;color:#6c757d}.status-not-required{background:#d1ecf1;color:#0c5460}.status-active{background:#d4edda;color:#155724}.status-inactive{background:#e2e3e5;color:#6c757d}.status-expired{background:#f8d7da;color:#721c24}.status-cancelled{background:#f5c6cb;color:#721c24}.type-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.type-student{background:#e3f2fd;color:#1976d2}.type-tutor{background:var(--color-primary-tint);color:var(--color-primary)}.type-mentor{background:#e8f5e8;color:#388e3c}.type-parent{background:#fff3e0;color:#f57c00}.type-admin{background:#ffebee;color:#d32f2f}.plan-badge{border-radius:8px;display:inline-block;font-size:10px;font-weight:600;letter-spacing:.5px;margin-left:5px;padding:2px 6px;text-transform:uppercase}.plan-basic{background:#e3f2fd;color:#1976d2}.plan-premium{background:var(--color-primary-tint);color:var(--color-primary)}.plan-enterprise{background:#e8f5e8;color:#388e3c}.subscription-info{display:flex;flex-direction:column;gap:5px}.days-remaining{color:#6c757d;font-size:11px;font-style:italic}.cohort-info,.cohort-list{display:flex;flex-wrap:wrap;gap:8px}.cohort-badge{background:var(--gradient-primary-simple);border-radius:12px;color:#fff;display:inline-block;font-size:12px;font-weight:500;padding:4px 8px}.no-cohort{color:#6c757d;font-size:13px;font-style:italic}.subscription-details{margin-top:15px}.child-subscription{align-items:center;display:flex;gap:5px;margin-top:5px}.detail-item .warning{color:#e74c3c;font-weight:600}.view-details-btn{background:#3498db;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:8px 16px;transition:background-color .3s ease}.view-details-btn:hover{background:#2980b9}.pagination-container{align-items:center;background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-top:20px;padding:20px}.pagination-info{color:#6c757d;font-size:14px}.pagination-controls{align-items:center;display:flex;gap:10px}.pagination-btn{background:#fff;border:1px solid #ddd;border-radius:5px;color:#2c3e50;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.pagination-btn:hover:not(:disabled){background:#f8f9fa;border-color:#3498db;color:#3498db}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}.page-numbers{display:flex;gap:5px}.page-number-btn{background:#fff;border:1px solid #ddd;border-radius:5px;color:#2c3e50;cursor:pointer;font-size:14px;font-weight:500;min-width:40px;padding:8px 12px;transition:all .2s}.page-number-btn:hover{background:#f8f9fa;border-color:#3498db}.page-number-btn.active{background:#3498db;border-color:#3498db;color:#fff}.close-btn{color:#7f8c8d}.close-btn:hover{color:#2c3e50}.modal-content .form-group{margin-bottom:15px}.modal-content .form-group label{color:#2c3e50;display:block;font-size:14px;font-weight:600;margin-bottom:5px}.password-input-wrapper{gap:8px}.password-input-wrapper input{flex:1 1;padding:10px 12px}.password-input-wrapper input,.password-toggle-btn{border:1px solid #ddd;border-radius:5px;font-size:14px}.password-toggle-btn{background:#f8f9fa;padding:8px 12px;transition:background .2s}.password-toggle-btn:hover{background:#e9ecef}.user-details-section{margin-bottom:30px}.user-details-section h3{border-bottom:2px solid #e9ecef;color:#2c3e50;font-size:18px;margin-bottom:15px;padding-bottom:5px}.detail-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.detail-item{display:flex;flex-direction:column;gap:5px}.detail-item.full-width{grid-column:1/-1}.detail-item label{color:#7f8c8d;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-item span{color:#2c3e50;font-size:14px}.detail-item .active{color:#27ae60;font-weight:600}.detail-item .inactive{color:#e74c3c;font-weight:600}.rejection-reason{background:#fdf2f2;border-left:4px solid #e74c3c;border-radius:5px;font-style:italic;padding:10px}.no-children{color:#7f8c8d;font-style:italic;padding:20px;text-align:center}.children-list{display:flex;flex-direction:column;gap:15px;margin-top:15px}.child-card{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;justify-content:space-between;padding:15px;transition:box-shadow .3s ease}.child-card:hover{box-shadow:0 2px 8px #0000001a}.child-info{flex:1 1}.child-name{color:#2c3e50;font-size:16px;font-weight:600;margin-bottom:5px}.child-details{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.child-username{color:#7f8c8d;font-size:12px}.child-email{color:#3498db;font-size:12px}.child-status{align-items:center;display:flex;gap:10px}.status-indicator{border-radius:10px;font-size:11px;font-weight:600;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase}.status-indicator.active{background:#d4edda;color:#155724}.status-indicator.inactive{background:#f8d7da;color:#721c24}.child-meta{color:#7f8c8d;font-size:11px;text-align:right}.child-date,.child-login{margin-bottom:2px}.subscription-details{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:15px}.no-subscription{color:#7f8c8d;font-style:italic;padding:20px;text-align:center}.subscription-plan{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.subscription-plan.basic{background:#e3f2fd;color:#1976d2}.subscription-plan.premium{background:var(--color-primary-tint);color:var(--color-primary)}.subscription-plan.enterprise{background:#e8f5e8;color:#388e3c}.subscription-status{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.subscription-status.active{background:#d4edda;color:#155724}.subscription-status.inactive{background:#e2e3e5;color:#6c757d}.subscription-status.expired{background:#f8d7da;color:#721c24}.subscription-status.cancelled{background:#fff3cd;color:#856404}.subscription-status.pending{background:#d1ecf1;color:#0c5460}.days-remaining{color:#27ae60;font-weight:600}.days-warning{color:#e74c3c;font-weight:600}.subscription-badge{border-radius:8px;display:inline-block;font-size:10px;font-weight:600;letter-spacing:.5px;margin-left:5px;padding:2px 6px;text-transform:uppercase}@media (max-width:768px){.filters-row{align-items:stretch;flex-direction:column}.filter-group{min-width:auto}.users-table-container{overflow-x:auto}.users-table{min-width:600px}.detail-grid{grid-template-columns:1fr}.modal{margin:10px;width:95%}}@media (max-width:480px){.user-management{padding:10px}.users-table td,.users-table th{padding:10px 8px}.user-name{font-size:14px}.email,.username{font-size:11px}}.status-badge.status-disabled{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.status-badge.status-enabled{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.action-buttons{align-items:flex-start;flex-direction:column}.disable-enable-buttons{display:flex;gap:5px}.disable-btn{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:4px 8px;transition:background-color .2s}.disable-btn:hover{background:#c82333}.enable-btn{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:4px 8px;transition:background-color .2s}.enable-btn:hover{background:#218838}.delete-btn{background:#6c757d;border:none;border-radius:4px;cursor:pointer;font-size:12px;margin-left:4px;padding:4px 8px}.delete-btn:hover{background:#5a6268}.delete-user-modal .delete-warning{background:#fff3cd;border-radius:6px;color:#856404;margin-bottom:16px;padding:12px}.delete-confirm-btn{background:#dc3545!important}.delete-confirm-btn:hover:not(:disabled){background:#c82333!important}.assign-parent-btn,.manage-students-btn{border:none;border-radius:4px;cursor:pointer;font-size:12px;margin-left:4px;padding:4px 10px}.assign-parent-btn{background:#6f42c1;color:#fff}.assign-parent-btn:hover{background:#5a32a3}.manage-students-btn{background:#0d6efd;color:#fff}.manage-students-btn:hover{background:#0b5ed7}.send-message-btn{background:#198754;border-radius:4px;font-size:12px;margin-left:4px;min-height:44px;padding:4px 10px}.send-message-btn:hover{background:#157347}.assign-parent-modal,.manage-students-modal{max-width:580px;width:100%}.current-parent-info{align-items:center;background:#f0f7ff;border:1px solid #bdd7f5;border-radius:6px;display:flex;font-size:14px;gap:12px;margin-bottom:14px;padding:10px 14px}.no-parent-msg,.no-students-msg{color:#666;font-size:14px;margin-bottom:14px}.remove-link-btn{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;margin-left:auto;padding:3px 10px}.remove-link-btn:hover{background:#b02a37}.current-students-section{font-size:14px;margin-bottom:14px}.current-students-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.current-student-tag{align-items:center;background:#e8f0fe;border:1px solid #4285f4;border-radius:20px;display:inline-flex;font-size:13px;gap:4px;padding:3px 10px}.remove-tag-btn{background:none;border:none;color:#666;cursor:pointer;font-size:16px;line-height:1;padding:0 2px}.remove-tag-btn:hover{color:#dc3545}.user-pick-list{border:1px solid #e0e0e0;border-radius:6px;margin-top:8px;max-height:300px;overflow-y:auto}.user-pick-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:10px 14px}.user-pick-item:last-child{border-bottom:none}.user-pick-item.is-linked{background:#f0fff4}.user-pick-info{display:flex;flex-direction:column;gap:2px}.user-pick-name{font-size:14px;font-weight:600}.user-pick-username{color:#555;font-size:12px}.user-pick-email{color:#888;font-size:12px}.other-parent-note{color:#e67e22;font-size:11px}.assign-btn{background:#198754;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;padding:5px 14px;white-space:nowrap}.assign-btn:hover:not(:disabled){background:#157347}.assign-btn:disabled{background:#6c757d;cursor:default}.assign-btn.remove-assign-btn{background:#dc3545}.assign-btn.remove-assign-btn:hover{background:#b02a37}.assign-btn.already-assigned{background:#6c757d}.no-results{color:#999;font-size:14px;padding:16px;text-align:center}@media (max-width:768px){.action-buttons{flex-direction:row;flex-wrap:wrap}.disable-enable-buttons{flex-direction:column;gap:3px}}.registration-code-management{margin:0 auto;max-width:1200px;padding:20px}.header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.header h2{color:#2c3e50;margin:0}.actions{display:flex;gap:10px}.btn{border:none;border-radius:5px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .3s ease}.btn-primary{background:#3498db}.btn-primary:hover{background:#2980b9}.btn-secondary{background:#95a5a6}.btn-secondary:hover{background:#7f8c8d}.btn-danger{background:#e74c3c;color:#fff}.btn-danger:hover{background:#c0392b}.btn-sm{font-size:12px;padding:5px 10px}.current-codes-section{margin-bottom:40px}.current-codes-section h3{color:#2c3e50;margin-bottom:8px}.section-description{color:#7f8c8d;font-size:.875rem;margin-bottom:20px}.codes-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.code-card{background:#fff;border-left:4px solid #3498db;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:20px}.code-card.current{border-left-color:#27ae60}.code-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.code-header h4{color:#2c3e50;margin:0}.status-badge{border-radius:12px}.status-badge.current{background:#d5f4e6;color:#27ae60}.status-badge.expired{background:#fadbd8;color:#e74c3c}.status-badge.future{background:#d6eaf8;color:#3498db}.code-content{text-align:center}.code-value{color:#2c3e50;font-family:Courier New,monospace;font-size:24px;font-weight:700;letter-spacing:2px;margin-bottom:10px}.code-dates{color:#7f8c8d;font-size:14px;margin-bottom:15px}.code-actions{display:flex;gap:10px;justify-content:center}.all-codes-section h3{color:#2c3e50;margin-bottom:20px}.codes-table{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.codes-table table{border-collapse:collapse;width:100%}.codes-table th{background:#f8f9fa;border-bottom:2px solid #e9ecef;color:#2c3e50;font-weight:600;padding:15px;text-align:left}.codes-table td{border-bottom:1px solid #e9ecef;padding:15px}.codes-table tr:hover{background:#f8f9fa}.code-cell{font-family:Courier New,monospace;font-weight:700;letter-spacing:1px}.form-group input,.form-group select{border:1px solid #ddd;border-radius:5px;font-size:14px;padding:10px;width:100%}.form-group input:focus,.form-group select:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.modal-footer{border-top:1px solid #e9ecef;display:flex;gap:10px;justify-content:flex-end;padding:20px}@media (max-width:768px){.header{align-items:stretch;flex-direction:column;gap:15px}.actions{justify-content:center}.codes-grid{grid-template-columns:1fr}.codes-table{overflow-x:auto}.codes-table table{min-width:600px}}.referral-code-management{margin:0 auto;max-width:1200px;padding:20px}.management-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.management-header h2{color:#333;margin:0}.stat-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px}.stat-card h3{color:#666;font-weight:500}.stat-number{color:#333;font-size:24px;margin:0}.table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.referral-codes-table{border-collapse:collapse;width:100%}.referral-codes-table th{background:#f8f9fa;border-bottom:2px solid #e9ecef;color:#333;font-weight:600;padding:15px;text-align:left}.referral-codes-table td{border-bottom:1px solid #e9ecef;padding:15px;vertical-align:middle}.referral-codes-table tr:hover{background:#f8f9fa}.code-text{background:#e3f2fd;border-radius:4px;color:#007bff;font-family:Courier New,monospace;font-size:14px;font-weight:700;padding:4px 8px}.unavailable-badge{background:#dc3545;border-radius:3px;color:#fff;font-size:10px;margin-left:8px;padding:2px 6px}.status-badge{border-radius:4px;font-weight:500;padding:4px 8px}.btn-danger-small,.btn-secondary-small,.btn-warning-small{border:none;border-radius:4px;cursor:pointer;font-size:12px;padding:4px 8px;transition:all .2s}.btn-secondary-small{background:#6c757d;color:#fff}.btn-secondary-small:hover{background:#5a6268}.btn-warning-small{background:#ffc107;color:#212529}.btn-warning-small:hover{background:#e0a800}.btn-danger-small{background:#dc3545;color:#fff}.btn-danger-small:hover{background:#c82333}.close-btn{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;width:30px}.close-btn:hover{color:#333}.modal-form{padding:20px}.form-group label{margin-bottom:5px}.form-group input,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.checkbox-label{align-items:center;cursor:pointer;display:flex!important}.checkbox-label input{margin-right:8px;width:auto!important}.modal-actions button{border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 16px}.modal-actions button[type=button]{background:#fff;color:#666}.modal-actions button[type=button]:hover{background:#f8f9fa}.modal-actions .btn-primary{background:#007bff;border-color:#007bff;color:#fff}.modal-actions .btn-primary:hover{background:#0056b3}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;padding:12px}.btn-primary{background:#007bff;border-radius:4px;font-size:14px;font-weight:500;padding:10px 20px}.btn-primary:hover{background:#0056b3}@media (max-width:768px){.management-header{align-items:stretch;flex-direction:column;gap:15px}.stats-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.referral-codes-table{font-size:14px}.referral-codes-table td,.referral-codes-table th{padding:10px 8px}}.cohort-management{margin:0 auto;max-width:1200px;padding:20px}.cohort-management-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.cohort-management-header h1{color:#2c3e50;font-size:28px;margin-bottom:10px}.cohort-management-header p{color:#7f8c8d;font-size:16px;margin:0}.create-cohort-btn{background:var(--gradient-primary-simple);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:transform .2s,box-shadow .2s}.create-cohort-btn:hover{box-shadow:0 4px 12px #0d948866;transform:translateY(-2px)}.results-summary{color:#7f8c8d;font-size:14px;margin-bottom:15px}.cohorts-table-container{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.cohorts-table{border-collapse:collapse;width:100%}.cohorts-table thead{background:#f8f9fa}.cohorts-table th{border-bottom:2px solid #e9ecef;color:#2c3e50;font-size:14px;font-weight:600;padding:15px;text-align:left}.cohorts-table td{border-bottom:1px solid #e9ecef;padding:15px;vertical-align:top}.cohort-row:hover{background-color:#f8f9fa}.cohort-name{min-width:200px}.cohort-title{color:#2c3e50;font-size:16px;font-weight:600}.cohort-description{max-width:300px}.description-text{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#6c757d;display:-webkit-box;font-size:14px;line-height:1.4;max-height:60px;overflow:hidden;text-overflow:ellipsis}.cohort-count{min-width:120px;text-align:center}.count-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:500;margin-right:8px;padding:4px 8px}.schedule-badge{background-color:#e8f5e9;color:#2e7d32}.onboarding-badge{background-color:#fff3e0;color:#e65100}.staff-only-badge{background-color:#ede7f6;color:#4527a0}.tutors-count{background-color:#e3f2fd;color:#1976d2}.students-count{background-color:var(--color-primary-tint);color:var(--color-primary)}.assign-btn-small{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;margin-left:5px;padding:4px 8px;transition:background .2s}.assign-btn-small:hover{background:#218838}.cohort-mentor{min-width:150px;text-align:center}.mentor-info{align-items:center;display:flex;gap:8px;justify-content:center}.mentor-name{color:#2c3e50;font-size:14px;font-weight:500}.remove-btn-small{background:#dc3545;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:12px;line-height:1;padding:2px 6px;transition:background .2s}.remove-btn-small:hover{background:#c82333}.cohort-discord{text-align:center}.discord-link{color:var(--color-primary);font-size:14px;text-decoration:none}.discord-link:hover{text-decoration:underline}.no-discord{color:#6c757d;font-size:14px;font-style:italic}.cohort-template{min-width:150px}.template-info{align-items:center;display:flex;gap:8px}.template-name-badge{background-color:#e3f2fd;border-radius:12px;color:#1976d2;font-size:12px;font-weight:600;padding:4px 12px}.template-assignment-modal{padding:10px 0}.template-assignment-modal p{color:#2c3e50;margin-bottom:20px}.template-select{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;width:100%}.template-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #0d94881a;outline:none}.no-templates-message{color:#868e96;font-size:13px;font-style:italic;margin-top:15px}.cohort-date{color:#6c757d;font-size:14px;white-space:nowrap}.action-buttons{align-items:center}.clone-btn,.delete-btn,.edit-btn{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;padding:6px 12px;transition:all .2s}.edit-btn{background:#17a2b8}.edit-btn:hover{background:#138496}.clone-btn{background:#6f42c1;color:#fff}.clone-btn:hover{background:#5a32a3}.delete-btn{background:#dc3545;color:#fff}.delete-btn:hover{background:#c82333}.cohort-leaderboard{min-width:140px;text-align:center}.leaderboard-badge{background:#eef2ff;border-radius:999px;color:#4338ca;display:inline-block;font-size:12px;font-weight:600;padding:4px 10px}.no-leaderboard{color:#9ca3af;font-size:12px}.leaderboard-select-wrapper{display:flex;flex-direction:column;gap:8px;margin-top:12px}.leaderboard-select-wrapper select{border:1px solid #d1d5db;border-radius:6px;padding:10px}.leaderboard-select-hint{color:#6b7280;font-size:12px;margin:0}.cohort-modal-select-popup{z-index:1100!important}.modal{border-radius:12px}.modal h3{color:#333;font-size:24px;margin:0 0 20px}.form-group input,.form-group select,.form-group textarea{border:2px solid #e0e0e0;border-radius:8px;font-size:16px;padding:12px;transition:border-color .2s;width:100%}.form-group select[multiple]{height:120px}.modal-actions{gap:15px;margin-top:30px}.cancel-btn{background:#f8f9fa;border:2px solid #e0e0e0;color:#666;transition:all .2s}.cancel-btn:hover{background:#e9ecef;border-color:#d0d0d0}.confirm-btn{background:var(--gradient-primary-simple);border-radius:8px;font-size:16px;padding:12px 24px;transition:transform .2s,box-shadow .2s}.confirm-btn:hover:not(:disabled){box-shadow:0 4px 12px #0d948866;transform:translateY(-1px)}.confirm-btn:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.retry-btn{border-radius:6px;margin-top:15px}.retry-btn,.retry-btn:hover{background:var(--color-primary)}@media (max-width:768px){.cohort-management-header{align-items:flex-start;flex-direction:column;gap:15px}.cohorts-grid{grid-template-columns:1fr}.cohort-header{align-items:flex-start;flex-direction:column;gap:15px}.cohort-actions{justify-content:flex-end;width:100%}.modal{margin:20px;padding:20px}.modal-actions{flex-direction:column}}.toggle-switch{cursor:pointer;display:inline-block;height:24px;position:relative;width:44px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#ccc;border-radius:24px;bottom:0;left:0;position:absolute;right:0;top:0;transition:background-color .3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:transform .3s;width:18px}.toggle-switch input:checked+.toggle-slider{background-color:#1890ff}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.admin-profile{margin:0 auto;max-width:800px;padding:20px}.profile-header{margin-bottom:30px}.profile-header h2{color:#333;margin-bottom:10px}.profile-header p{color:#666;font-size:16px}.profile-content{display:flex;flex-direction:column;gap:30px}.profile-card{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;justify-content:space-between;padding:30px}.profile-card,.profile-info{align-items:center;display:flex}.profile-info{gap:20px}.profile-avatar{flex-shrink:0}.avatar-circle{align-items:center;background:var(--gradient-primary-simple);border-radius:50%;color:#fff;display:flex;font-size:28px;font-weight:700;height:80px;justify-content:center;text-transform:uppercase;width:80px}.profile-details h3{color:#333;font-size:24px;margin:0 0 5px}.profile-details .username{color:#666;font-size:16px;margin:0 0 5px}.profile-details .user-type{color:#007bff;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.profile-actions{flex-shrink:0}.edit-btn{background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:background-color .2s}.edit-btn:hover{background:#0056b3}.edit-actions{display:flex;gap:10px}.save-btn{background:#28a745;font-weight:500;padding:12px 24px;transition:background-color .2s}.save-btn:hover:not(:disabled){background:#218838}.cancel-btn,.save-btn:disabled{background:#6c757d}.cancel-btn{border-radius:8px;font-size:16px;font-weight:500;padding:12px 24px;transition:background-color .2s}.cancel-btn:hover:not(:disabled){background:#5a6268}.cancel-btn:disabled{background:#adb5bd;cursor:not-allowed}.profile-form{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;padding:30px}.form-section{margin-bottom:40px}.form-section:last-child{margin-bottom:0}.form-section h4{border-bottom:2px solid #e9ecef;color:#333;font-size:18px;margin:0 0 20px;padding-bottom:10px}.form-section .section-description{color:#666;font-size:14px;font-style:italic;margin-bottom:20px;margin-top:-10px}.password-section{background:#fffbf0;border:2px solid #ffc107;border-radius:8px;padding:20px}.password-section h4{border-bottom:2px solid #ffc107;color:#856404}.form-row{grid-gap:20px;gap:20px}.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-weight:500;margin-bottom:8px}.form-group input{border:2px solid #e9ecef;border-radius:8px;box-sizing:border-box;font-size:16px;padding:12px 16px;transition:border-color .2s,box-shadow .2s;width:100%}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-input-wrapper input{padding-right:45px;width:100%}.password-toggle-btn{align-items:center;background:#0000;border:none;color:#666;cursor:pointer;display:flex;font-size:20px;justify-content:center;padding:5px;position:absolute;right:10px;transition:color .2s}.password-toggle-btn:hover{color:#007bff}.password-toggle-btn:focus{border-radius:4px;outline:2px solid #007bff;outline-offset:2px}.form-group select{background:#fff;border:2px solid #e9ecef;border-radius:8px;box-sizing:border-box;cursor:pointer;font-size:16px;padding:12px 16px;transition:border-color .2s,box-shadow .2s;width:100%}.form-group input.editable,.form-group select.editable{border-color:#007bff}.form-group input.editable:focus,.form-group select.editable:focus{border-color:#0056b3;box-shadow:0 0 0 3px #007bff1a;outline:none}.form-group input.readonly,.form-group select.readonly{background:#f8f9fa;border-color:#e9ecef;color:#6c757d;cursor:not-allowed}.form-help{color:#666;display:block;font-size:12px;font-style:italic;margin-top:5px}.info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.info-item{background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;padding:15px}.info-item label{color:#666;display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:5px;text-transform:uppercase}.info-value{color:#333;font-size:16px;font-weight:500;margin-bottom:5px}.info-item small{color:#666;font-size:12px;font-style:italic}.admin-badge{background:#007bff;color:#fff}.admin-badge,.status-badge{border-radius:20px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.status-badge.active{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.status-badge.inactive{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.loading{color:#666}.error,.loading{font-size:16px}@media (max-width:768px){.admin-profile{padding:15px}.profile-card{align-items:stretch;flex-direction:column;gap:20px}.profile-info{flex-direction:column;text-align:center}.profile-actions{align-self:center}.form-row,.info-grid{grid-template-columns:1fr}.edit-actions{flex-direction:column;width:100%}.edit-actions button{width:100%}}@media (max-width:480px){.profile-card,.profile-form{padding:20px}.avatar-circle{font-size:20px;height:60px;width:60px}.profile-details h3{font-size:20px}}.star-rating{display:flex;flex-direction:column;gap:.5rem}.star-rating-label{color:#333;font-size:.875rem;font-weight:500;margin-bottom:.25rem}.star-rating-container{align-items:center;display:flex;gap:.25rem}.star-rating .star{color:#ddd;display:inline-block;font-size:1.5rem;overflow:hidden;position:relative;transition:color .2s ease,transform .1s ease;-webkit-user-select:none;user-select:none}.star-rating .star .star-base{color:inherit;display:inline-block;width:100%}.star-rating .star .star-half{-webkit-clip-path:inset(0 50% 0 0);clip-path:inset(0 50% 0 0);color:#ffc107;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:50%}.star-rating .star.half,.star-rating .star.half .star-base{color:#ddd}.star-rating.small .star{font-size:1rem}.star-rating.large .star{font-size:2rem}.star-rating .star.filled{color:#ffc107}.star-rating .star.empty{color:#ddd}.star-rating:not(.readonly) .star:hover{color:#ffc107;transform:scale(1.1)}.star-rating:not(.readonly) .star.filled:hover~.star{color:#ddd}.star-rating-value{color:#666;font-size:.875rem;font-weight:500;margin-left:.5rem}.star-rating.readonly .star{cursor:default!important}.form-group .star-rating{margin-top:.5rem}.form-group .star-rating-label{display:block;font-weight:500;margin-bottom:.5rem}.proficiency-item .star-rating{align-items:center;flex-direction:row;justify-content:space-between}.proficiency-item .star-rating-container{flex:1 1;justify-content:flex-end}.notification-settings{background:#f8f9fa;border-radius:12px;box-shadow:0 4px 6px #0000001a;margin:0 auto;max-width:800px;padding:20px}.settings-header{border-bottom:2px solid #e9ecef;margin-bottom:30px;padding-bottom:20px;text-align:center}.settings-header h2{color:#2c3e50;font-size:28px;font-weight:700;margin-bottom:10px}.settings-header p{color:#6c757d;font-size:16px;margin:0}.settings-content{display:flex;flex-direction:column;gap:30px}.settings-section{background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 4px #0000000d;padding:25px}.settings-section h3{align-items:center;color:#2c3e50;display:flex;font-size:20px;font-weight:600;gap:10px;margin-bottom:20px}.frequency-options{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.frequency-option{align-items:flex-start;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;display:flex;padding:15px;transition:all .3s ease}.frequency-option:hover{background:#f0f4ff;border-color:var(--color-primary)}.frequency-option input[type=radio]{accent-color:var(--color-primary);margin-right:12px;margin-top:2px}.frequency-option input[type=radio]:checked+.option-content{color:var(--color-primary)}.option-content{flex:1 1}.option-label{color:#2c3e50;font-size:16px;font-weight:600;margin-bottom:5px}.option-description{color:#6c757d;font-size:14px;line-height:1.4}.notification-group{display:flex;flex-direction:column;gap:15px}.notification-toggle{align-items:center;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;display:flex;padding:15px;transition:all .3s ease}.notification-toggle:hover{background:#f0f4ff;border-color:var(--color-primary)}.notification-toggle input[type=checkbox]{accent-color:var(--color-primary);margin-right:12px;transform:scale(1.2)}.toggle-label{color:#2c3e50;font-size:16px;font-weight:600}.notification-types{grid-gap:12px;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-left:30px;padding:15px}.notification-type{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:6px;cursor:pointer;display:flex;padding:10px;transition:all .2s ease}.notification-type:hover{background:#f0f4ff;border-color:var(--color-primary)}.notification-type input[type=checkbox]{accent-color:var(--color-primary);margin-right:10px}.notification-type span{color:#495057;font-size:14px;font-weight:500}.contact-info{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:20px}.contact-item{color:#495057;font-size:16px;margin-bottom:10px}.contact-item strong{color:#2c3e50;margin-right:10px}.contact-note{background:#e3f2fd;border-left:4px solid #2196f3;border-radius:6px;color:#1976d2;font-size:14px;margin-top:15px;padding:12px}.test-email-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.test-email-input{border:2px solid #e9ecef;border-radius:8px;flex:1 1;font-size:16px;min-width:200px;padding:12px 16px}.test-email-input:focus{border-color:var(--color-primary);outline:none}.settings-actions{border-top:2px solid #e9ecef;padding-top:20px;text-align:center}.save-btn{background:var(--gradient-primary-simple);border:none;border-radius:8px;box-shadow:0 4px 6px #0d94884d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:15px 40px;transition:all .3s ease}.save-btn:hover:not(:disabled){box-shadow:0 6px 12px #0d948866;transform:translateY(-2px)}.save-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.alert{border-left:4px solid;border-radius:8px;font-weight:500;margin-bottom:20px;padding:15px 20px}.alert-error{background:#f8d7da;border-left-color:#dc3545;color:#721c24}.alert-success{background:#d4edda;border-left-color:#28a745;color:#155724}.loading{color:#6c757d}.error,.loading{font-size:18px;padding:40px;text-align:center}.error{background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#dc3545}@media (max-width:768px){.notification-settings{margin:10px;padding:15px}.frequency-options,.notification-types{grid-template-columns:1fr}.notification-types{margin-left:0}.settings-section{padding:20px}.settings-header h2{font-size:24px}}@media (max-width:480px){.notification-settings{margin:5px;padding:10px}.settings-section{padding:15px}.frequency-option,.notification-toggle{padding:12px}}.manager-opportunities{background:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;padding:20px}.manager-opportunities .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.opportunities-tables-split{display:flex;flex-direction:column;gap:32px}.opportunities-table-section{display:flex;flex-direction:column;gap:12px}.opportunities-table-section h3{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0}.manager-opportunities .section-header h2{color:#2c3e50;font-size:1.25rem;margin:0}.manager-opportunities .form-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:10px;margin-bottom:24px;padding:24px}.manager-opportunities .form-card h3{color:#2c3e50;font-size:1.1rem;margin:0 0 20px}.manager-opportunities .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.manager-opportunities .form-group{display:flex;flex-direction:column;margin-bottom:16px}.manager-opportunities .form-group label{color:#2c3e50;font-size:14px;font-weight:600;margin-bottom:6px}.event-date-row{align-items:center;display:flex;gap:12px;margin-bottom:10px}.event-date-row input{flex:1 1;min-width:0}.btn-remove-date{background:#0000;border:1px solid #dc3545;border-radius:6px;color:#dc3545;cursor:pointer;font-size:13px;padding:6px 12px;white-space:nowrap}.btn-remove-date:hover{background:#dc3545;color:#fff}.btn-add-date{background:#0000;border:1px dashed var(--color-primary);border-radius:6px;color:var(--color-primary);cursor:pointer;font-size:14px;margin-top:8px;padding:8px 16px}.btn-add-date:hover{background:#f0f0ff}.form-hint{color:#6c757d;font-size:13px;margin:-4px 0 10px}.manager-opportunities .form-group input,.manager-opportunities .form-group select,.manager-opportunities .form-group textarea{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px}.manager-opportunities .form-group input:focus,.manager-opportunities .form-group select:focus,.manager-opportunities .form-group textarea:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.manager-opportunities .form-group textarea{min-height:80px;resize:vertical}.manager-opportunities .required-indicator{color:#e74c3c}.manager-opportunities .checkbox-item{align-items:center;color:#495057;display:flex;font-size:14px;gap:8px}.manager-opportunities .grade-selection{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:16px}.manager-opportunities .grade-range-row{grid-gap:16px;border-bottom:1px solid #e9ecef;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:16px;padding-bottom:16px}.manager-opportunities .grade-range-row .form-group label{font-size:13px;font-weight:500}.manager-opportunities .grade-other-section{margin-top:12px}.manager-opportunities .grade-other-label{color:#2c3e50;display:block;font-size:13px;font-weight:600;margin-bottom:10px}.manager-opportunities .grade-checkbox-grid{grid-gap:8px 16px;display:grid;gap:8px 16px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.manager-opportunities .grade-checkbox{font-weight:400;margin:0}.manager-opportunities .btn-primary{background:#3498db;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px}.manager-opportunities .btn-primary:hover:not(:disabled){background:#2980b9}.manager-opportunities .btn-primary:disabled{background:#bdc3c7;cursor:not-allowed}.manager-opportunities .btn-secondary{background:#95a5a6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;margin-left:10px;padding:10px 20px}.manager-opportunities .btn-secondary:hover{background:#7f8c8d}.manager-opportunities .btn-outline{background:#fff;border:1px solid #e74c3c;border-radius:6px;color:#e74c3c;cursor:pointer;font-size:13px;padding:6px 12px}.manager-opportunities .btn-outline:hover{background:#fdeaea}.manager-opportunities .button-group{display:flex;gap:8px}.manager-opportunities .message{border-radius:6px;margin-bottom:16px;padding:12px 16px}.manager-opportunities .message.error{background:#fdeaea;border:1px solid #f5c6cb;color:#c0392b}.manager-opportunities .message.success{background:#eafaf1;border:1px solid #c9f0d8;color:#1e7e34}.manager-opportunities .message-icon{margin-right:8px}.manager-opportunities .students-table-container{border:1px solid #e9ecef;border-radius:8px;overflow-x:auto}.manager-opportunities .students-table{border-collapse:collapse;width:100%}.manager-opportunities .students-table thead{background:#f8f9fa}.manager-opportunities .students-table th{border-bottom:2px solid #e9ecef;color:#2c3e50;font-size:14px;font-weight:600;padding:12px 16px;text-align:left}.manager-opportunities .students-table td{border-bottom:1px solid #e9ecef;font-size:14px;padding:12px 16px}.opportunity-form-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}.opportunity-form-modal{background:#fff;border-radius:10px;box-shadow:0 10px 30px #0003;max-height:90vh;max-width:700px;overflow-y:auto;width:90%}.opportunity-form-modal-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:20px}.opportunity-form-modal-header h3{color:#2c3e50;font-size:1.25rem;margin:0}.opportunity-form-modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#7f8c8d;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;width:32px}.opportunity-form-modal-close:hover{background:#f8f9fa;color:#2c3e50}.opportunity-form-modal-body{padding:20px}.opportunity-details .detail-grid{grid-gap:10px 20px;display:grid;gap:10px 20px;grid-template-columns:140px 1fr;margin:0}.opportunity-details .detail-grid dt{color:#2c3e50;font-weight:600;margin:0}.opportunity-details .detail-grid dd{color:#495057;margin:0}.opportunity-details .detail-grid dd a{color:#3498db}.opportunity-approval-modal-actions{border-top:1px solid #e9ecef;display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;padding-top:20px}.opportunity-approval-modal-actions .approve-btn{margin-left:auto}.template-management{margin:0 auto;max-width:1400px;padding:20px}.template-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:25px}.template-header h2{color:#2c3e50;font-size:28px;margin:0}.message{align-items:center;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:20px;padding:12px 20px}.message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.message button{background:none;border:none;color:inherit;cursor:pointer;font-size:24px;margin-left:15px;padding:0}.error-message{background-color:#f8d7da;border-radius:6px;color:#721c24;margin-bottom:20px;padding:12px 20px}.templates-table-container{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;overflow-x:auto}.templates-table{border-collapse:collapse;width:100%}.templates-table thead{background:#f8f9fa}.templates-table th{border-bottom:2px solid #e9ecef;color:#2c3e50;font-size:14px;font-weight:600;padding:15px;text-align:left}.templates-table td{border-bottom:1px solid #e9ecef;padding:15px;vertical-align:middle}.templates-table tbody tr:hover{background-color:#f8f9fa}.template-name{color:#2c3e50;font-weight:600;min-width:200px}.template-description{color:#7f8c8d;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px}.badge.active{background-color:#d4edda;color:#155724}.badge.inactive{background-color:#f8d7da;color:#721c24}.action-buttons{display:flex;flex-wrap:wrap;gap:8px}.btn-small{border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;padding:6px 12px;transition:all .2s}.btn-preview{background-color:#e3f2fd;color:#1976d2}.btn-preview:hover{background-color:#bbdefb}.btn-edit{background-color:#fff3e0;color:#f57c00}.btn-edit:hover{background-color:#ffe0b2}.btn-assign{background-color:var(--color-primary-tint);color:var(--color-primary)}.btn-assign:hover{background-color:#e1bee7}.btn-danger{background-color:#ffebee;color:#c62828}.btn-danger:hover{background-color:#ffcdd2}.empty-state{font-style:italic}.btn-primary{background:var(--gradient-primary-simple);border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:transform .2s,box-shadow .2s}.btn-primary:hover{box-shadow:0 4px 12px #0d948866;transform:translateY(-2px)}.btn-secondary{background-color:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:background-color .2s}.btn-secondary:hover{background-color:#5a6268}.modal-actions{border-top:1px solid #e9ecef;margin-top:25px;padding-top:20px}.template-form{gap:25px}.form-group,.template-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#2c3e50;font-size:14px;font-weight:600}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;transition:border-color .3s,box-shadow .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #0d94881a;outline:none}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.form-group.full-width{grid-column:1/-1}.checkbox-group{align-items:center;flex-direction:row;gap:8px}.checkbox-group label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:8px}.checkbox-group input[type=checkbox]{cursor:pointer;width:auto}.form-section{border-top:2px solid #e9ecef;margin-top:10px;padding-top:25px}.form-section h3{color:#2c3e50;font-size:20px;margin:0 0 10px}.section-help{color:#7f8c8d;font-size:13px;font-style:italic;margin:0 0 15px}.attribute-item,.question-item{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:15px;padding:20px}.attribute-header,.question-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.attribute-number,.question-number{color:var(--color-primary);font-size:14px;font-weight:600}.attribute-actions,.question-actions{display:flex;gap:5px}.btn-icon{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:12px;padding:4px 8px;transition:all .2s}.btn-icon:hover:not(:disabled){background-color:#f8f9fa;border-color:var(--color-primary)}.btn-icon:disabled{cursor:not-allowed;opacity:.5}.btn-icon.btn-danger:hover:not(:disabled){background-color:#ffebee;border-color:#c62828}.preview-container{display:flex;flex-direction:column;gap:20px}.preview-message{background-color:#e3f2fd;border-radius:6px;color:#1976d2;font-size:14px;margin:0;padding:12px 16px}.preview-container h3{color:#2c3e50;margin:10px 0}.preview-description{color:#7f8c8d;font-size:14px;margin:0 0 20px}.preview-attributes,.preview-questions{display:flex;flex-direction:column;gap:20px}.preview-attributes h4,.preview-questions h4{color:#2c3e50;font-size:18px;margin:0 0 15px}.preview-attribute-item,.preview-question-item{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:15px}.preview-attribute-header,.preview-question-header{margin-bottom:10px}.preview-attribute-header label,.preview-question-header label{color:#2c3e50;font-size:15px;font-weight:600}.required{color:#c62828;margin-left:4px}.preview-help-text{color:#1976d2;font-size:13px;font-style:italic;margin:8px 0}.preview-rating-scale{background-color:#fff3e0;border-radius:6px;color:#f57c00;font-size:14px;margin-bottom:20px;padding:12px 16px}.preview-rating-selector{display:flex;gap:10px;margin-top:10px}.rating-btn{background:#fff;border:2px solid var(--color-primary);border-radius:6px;color:var(--color-primary);font-size:16px;font-weight:600;height:40px;opacity:.6;width:40px}.rating-btn,.rating-btn:disabled{cursor:not-allowed}.assign-form{display:flex;flex-direction:column;gap:20px}.assign-form p{color:#2c3e50;font-size:15px;margin:0}.warning{background-color:#ffebee;border-radius:6px;color:#c62828;font-size:13px;margin-top:10px;padding:10px}.admin-billing{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr;margin-top:30px}.billing-header{align-items:center;display:flex;justify-content:space-between}.billing-header h2{color:#333;font-size:1.8rem;margin:0}.billing-header p{color:#667085;margin:4px 0 0}.billing-error,.billing-loading{background:#f9fafb;border:1px dashed #d0d5dd;border-radius:8px;color:#475467;padding:16px;text-align:center}.billing-error{background:#fef2f2;border-color:#fca5a5;color:#b91c1c}.billing-table-wrapper{border:1px solid #e4e7ec;border-radius:10px;box-shadow:0 2px 10px #0f172a14;overflow:auto}.billing-table{border-collapse:collapse;min-width:720px;width:100%}.billing-table thead{background:#f4f6fb}.billing-table td,.billing-table th{border-bottom:1px solid #eef1f6;font-size:.95rem;padding:16px 20px;text-align:left}.billing-table tbody tr{cursor:pointer;transition:background .2s ease}.billing-table tbody tr:hover{background:#f8fafc}.billing-table tbody tr.selected{background:#eef2ff}.billing-student{display:flex;flex-direction:column;gap:4px}.student-name{color:#1f2937;font-weight:600}.student-meta{color:#667085;font-size:.85rem}.credit-balance{color:#0f172a;font-weight:600}.credit-balance.negative{color:#dc2626}.status-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:.8rem;font-weight:600;letter-spacing:.02em;padding:6px 12px;text-transform:uppercase}.status-pill.paid{background:#ecfdf3;color:#027a48}.status-pill.pending{background:#fef3c7;color:#b45309}.status-pill.inline{margin-right:12px}.attendance-panel{background:#fff;border:1px solid #dde1ea;border-radius:10px;box-shadow:0 2px 12px #0f172a1a;padding:20px}.attendance-panel-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.attendance-panel-header h3{font-size:1.4rem;margin:0}.attendance-panel-header p{color:#667085;margin:4px 0 0}.attendance-summary{align-items:center;color:#475467;display:flex;gap:12px}.credit-summary{font-weight:600}.attendance-empty,.attendance-error,.attendance-loading{background:#f9fafb;border:1px dashed #d0d5dd;border-radius:8px;color:#475467;padding:16px}.attendance-error{background:#fef2f2;border-color:#fca5a5;color:#b91c1c}.attendance-log{grid-gap:14px;display:grid;gap:14px;list-style:none;margin:0;padding:0}.attendance-log li{background:#f8fafc;border:1px solid #eef1f6;border-radius:8px;box-shadow:inset 0 1px 0 #fff3;padding:14px}.log-header{align-items:center;color:#1f2937;display:flex;font-weight:600;gap:12px;justify-content:space-between}.log-topic{color:#0f172a;font-weight:600;margin-top:8px}.log-notes{color:#475467;line-height:1.45;margin-top:6px}.log-meta{color:#667085;font-size:.85rem;margin-top:8px}.modal-overlay{align-items:center;background:#0f172a8c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:999}.modal{box-shadow:0 12px 40px #0f172a40;max-width:90%;padding:24px;width:360px}.modal h3{color:#1f2937;margin-bottom:16px;margin-top:0}.modal .form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.modal input[type=number]{border:1px solid #d0d5dd;border-radius:6px;font-size:1rem;padding:10px}.modal-actions{gap:12px}.btn-outline,.btn-primary,.btn-secondary{border:none;border-radius:999px;cursor:pointer;font-weight:600;padding:8px 16px;transition:background .2s ease,color .2s ease,border-color .2s ease}.btn-primary{background:#4f46e5;color:#fff}.btn-primary:hover{background:#4338ca}.btn-secondary{background:#e4e7ec;color:#1f2937}.btn-secondary:hover{background:#d2d6dd}.btn-outline{background:#fff;border:1px solid #4f46e5;border-radius:999px;color:#4f46e5;cursor:pointer;font-weight:600;padding:6px 14px}.btn-outline:hover{background:#4f46e5;color:#fff}.btn-primary:disabled,.btn-secondary:disabled{cursor:not-allowed;opacity:.6}@media (max-width:1024px){.attendance-panel{padding:16px}}.opportunity-interests-pane{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:1.5rem}.opportunity-interests-pane h3{color:#2d3748;font-size:1.25rem;margin:0 0 .5rem}.opportunity-interests-pane .pane-subtitle{color:#6c757d;font-size:14px;margin:0 0 1rem}.opportunity-interests-pane.error,.opportunity-interests-pane.loading{color:#6c757d;padding:2rem;text-align:center}.opportunity-interests-pane.error{color:#dc3545}.opportunity-interests-pane .no-data{color:#6c757d;margin:1rem 0}.interests-sub-tabs{display:flex;gap:8px;margin-bottom:1rem}.interests-sub-tabs button{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;color:#495057;cursor:pointer;font-size:14px;padding:8px 16px}.interests-sub-tabs button:hover{background:#e9ecef}.interests-sub-tabs button.sub-tab-active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.parent-notifications-inline{margin:0;max-width:none;padding:0}.interests-grouped-wrapper{display:flex;flex-direction:column;gap:24px}.opportunity-group{background:#f8f9fa;border:1px solid #e9ecef;border-radius:10px;padding:16px}.opportunity-group-header{align-items:flex-start;border-bottom:1px solid #dee2e6;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.opportunity-group-title{display:flex;flex-direction:column;gap:4px}.opportunity-group-title .interest-count{color:#6c757d;font-size:13px;font-weight:400}.opportunity-group-meta{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.interests-table-wrapper{overflow-x:auto}.interests-table{border-collapse:collapse;font-size:14px;width:100%}.interests-table td,.interests-table th{border-bottom:1px solid #e9ecef;padding:12px;text-align:left}.interests-table th{background:#f8f9fa;color:#495057;font-weight:600}.interests-table tbody tr:hover{background:#f8f9fa}.interests-table .muted{color:#6c757d;font-size:12px}.interests-table .contact-link{color:#06c;text-decoration:none}.interests-table .contact-link:hover{text-decoration:underline}.interests-table .contact-details{line-height:1.5}.interests-table .opportunity-link{color:#06c;font-size:12px;text-decoration:none}.interests-table .opportunity-link:hover{text-decoration:underline}.interests-table .opportunity-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.interests-table .view-opportunity-details-btn{background:#f0f7ff;border:1px solid #b3d4ff;border-radius:4px;color:#06c;cursor:pointer;font-size:12px;padding:4px 10px}.interests-table .view-opportunity-details-btn:hover{background:#e0efff}.interests-table .view-ads-list-btn{background:#f0f7ff;border:1px solid #b3d4ff;border-radius:6px;color:#06c;cursor:pointer;font-size:13px;padding:6px 12px}.interests-table .view-ads-list-btn:hover{background:#e0efff}.interests-table .expressed-by-parent-ad{color:#0d6efd;font-weight:500}.interests-table .ad-course-name{color:#495057;font-size:12px;margin-top:2px}.interests-table .demo-slots-display,.interests-table .preferred-days-display,.interests-table .preferred-slots-display{color:#6c757d;font-size:11px;margin-top:2px}.ad-details-modal .ad-detail-section{margin:12px 0;white-space:pre-wrap}.ad-details-modal .ad-details-grid{display:flex;flex-direction:column;font-size:14px;gap:8px;margin:16px 0}.ad-details-modal .ad-details-grid p{margin:0}.ads-list-modal{max-height:80vh;max-width:480px}.ads-list-modal h4,.ads-list-pane{margin-bottom:16px}.ads-list-pane{max-height:400px;overflow-y:auto}.ads-list-item{background:#f8f9fa;border-left:3px solid #3498db;border-radius:6px;display:flex;gap:10px;margin-bottom:8px;padding:10px 12px}.ads-list-item:last-child{margin-bottom:0}.ads-list-number{color:#6c757d;flex-shrink:0;font-weight:600}.ads-list-content{flex:1 1;min-width:0}.ads-list-modal .view-ad-details-btn{background:none;border:none;color:#06c;cursor:pointer;display:block;font-size:12px;margin-top:6px;padding:4px 0;text-align:left}.ads-list-modal .view-ad-details-btn:hover{text-decoration:underline}.opportunity-details-modal{max-height:85vh;max-width:560px}.opportunity-details-content{margin-bottom:16px;max-height:60vh;overflow-y:auto}.opportunity-details-modal .opportunity-detail-section{margin:12px 0;white-space:pre-wrap}.opportunity-details-modal .opportunity-details-grid{display:flex;flex-direction:column;font-size:14px;gap:8px;margin:16px 0}.opportunity-details-modal .opportunity-details-grid p{margin:0}.interests-table .contact-details .address{display:block;margin-top:4px;max-width:200px}.interests-table .view-user-link{color:var(--color-primary);display:inline-block;font-size:12px;margin-top:8px;text-decoration:none}.interests-table .view-user-link:hover{text-decoration:underline}.actions-cell{display:flex;flex-wrap:wrap;gap:8px}.view-thread-btn{background:#e7f3ff;border:1px solid #b3d9ff;border-radius:6px;color:#06c;cursor:pointer;font-size:13px;padding:6px 12px}.view-thread-btn:hover{background:#cce5ff}.send-message-btn{border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;padding:6px 12px}.send-message-btn,.send-message-btn:hover{background:var(--color-primary)}.send-message-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.send-message-modal{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;max-width:480px;padding:1.5rem;width:90%}.send-message-modal h4{font-size:1.1rem;margin:0 0 .5rem}.send-message-modal .modal-context{color:#6c757d;font-size:13px;margin:0 0 1rem}.send-message-textarea{border:1px solid #dee2e6;border-radius:8px;box-sizing:border-box;font-size:14px;padding:10px;resize:vertical;width:100%}.send-message-error{color:#dc3545;font-size:13px;margin:.5rem 0 0}.send-message-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:1rem}.send-message-cancel{background:#6c757d}.send-message-cancel,.send-message-submit{border:none;border-radius:6px;color:#fff;cursor:pointer;padding:8px 16px}.send-message-submit,.send-message-submit:hover:not(:disabled){background:var(--color-primary)}.send-message-submit:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.interests-table td,.interests-table th{font-size:13px;padding:8px}}.opportunity-interests-pane .admin-search-bar{margin-bottom:16px}.opportunity-interests-pane .admin-search-bar input{border:1px solid #ddd;border-radius:6px;font-size:14px;max-width:300px;padding:8px 12px;width:100%}.opportunity-interests-pane .admin-search-bar input:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.opportunity-interests-pane .admin-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:16px;padding:12px 0}.opportunity-interests-pane .admin-pagination-info{color:#7f8c8d;font-size:14px}.opportunity-interests-pane .admin-pagination-buttons{align-items:center;display:flex;gap:6px}.opportunity-interests-pane .admin-pagination-btn{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 12px}.opportunity-interests-pane .admin-pagination-btn:hover:not(:disabled){background:#f8f9fa;border-color:#3498db}.opportunity-interests-pane .admin-pagination-btn:disabled{cursor:not-allowed;opacity:.5}.opportunity-interests-pane .admin-pagination-btn.active{background:#3498db;border-color:#3498db;color:#fff}.opportunity-interests-pane .admin-pagination-ellipsis{color:#7f8c8d;padding:0 4px}.acm-container{margin:0 auto;max-width:1200px}.acm-message{align-items:center;border-radius:6px;display:flex;font-size:.875rem;justify-content:space-between;margin-bottom:12px;padding:10px 16px}.acm-message--success{background:#f6ffed;border:1px solid #b7eb8f;color:#389e0d}.acm-message--error{background:#fff2f0;border:1px solid #ffccc7;color:#cf1322}.acm-message button{align-items:center;background:none;border:none;cursor:pointer;display:flex;justify-content:center;min-height:44px;min-width:44px;padding:4px}.acm-list-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:8px}.acm-list-header h2{font-size:1.25rem;margin:0}.acm-list-header__actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.acm-pagination-wrap{margin-top:.75rem}.acm-list-subtitle{color:#595959;font-size:.875rem;margin:0 0 16px}.acm-header{margin-bottom:16px}.acm-back-btn{align-items:center;background:none;border:none;color:#1890ff;cursor:pointer;display:inline-flex;font-size:.875rem;gap:6px;margin-bottom:12px;min-height:36px;padding:4px 0}.acm-back-btn:hover{text-decoration:underline}.acm-header__title-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.acm-header__title-row h2{font-size:1.25rem;margin:0}.acm-state-tag{border-radius:4px;display:inline-block;font-size:.6875rem;font-weight:600;padding:2px 8px;text-transform:uppercase}.acm-state-tag--active{background:#f6ffed;border:1px solid #b7eb8f;color:#389e0d}.acm-state-tag--archived{background:#f0f0f0;border:1px solid #d9d9d9;color:#595959}.acm-search{margin-bottom:16px;max-width:400px;position:relative}.acm-search input{border:1px solid #d9d9d9;border-radius:6px;box-sizing:border-box;font-size:.875rem;min-height:36px;padding:8px 32px 8px 30px;width:100%}.acm-search input:focus{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;outline:none}.acm-search__icon{left:10px;pointer-events:none}.acm-search__clear,.acm-search__icon{color:#999;position:absolute;top:50%;transform:translateY(-50%)}.acm-search__clear{align-items:center;background:none;border:none;cursor:pointer;display:flex;justify-content:center;min-height:32px;min-width:32px;right:8px}.acm-section{margin-bottom:24px}.acm-section__title{color:#262626;font-size:1rem;margin:0 0 12px}.acm-section--archived{opacity:.85}.acm-empty,.acm-section--archived .acm-section__title{color:#8c8c8c}.acm-empty{font-size:.875rem;padding:16px 0}.acm-loading{color:#8c8c8c;padding:24px 0;text-align:center}.acm-table-wrapper{overflow-x:auto}.acm-table{border-collapse:collapse;font-size:.875rem;width:100%}.acm-table th{background:#fafafa;border-bottom:1px solid #e8e8e8;color:#595959;font-size:.8125rem;font-weight:500;padding:10px 12px;text-align:left;white-space:nowrap}.acm-table td{border-bottom:1px solid #f0f0f0;padding:10px 12px;vertical-align:middle}.acm-table tbody tr:hover{background:#f5f5f5}.acm-table__link{background:none;border:none;color:#1890ff;cursor:pointer;font-size:inherit;font-weight:500;min-height:28px;padding:0;text-align:left}.acm-table__link:hover{color:#096dd9;text-decoration:underline}.acm-table__link--archived{color:#8c8c8c;text-decoration:line-through}.acm-table__link--archived:hover{color:#595959}.acm-table__desc{color:#8c8c8c;display:block;font-size:.75rem;margin-top:2px}.acm-table__actions{align-items:center;display:flex;gap:6px}.acm-table--archived{opacity:.8}.acm-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:6px;min-height:36px;padding:8px 16px;transition:all .2s;white-space:nowrap}.acm-btn:disabled{cursor:not-allowed;opacity:.5}.acm-btn--primary{background:#1890ff;color:#fff}.acm-btn--primary:hover:not(:disabled){background:#096dd9}.acm-btn--secondary{background:#f5f5f5;border:1px solid #d9d9d9;color:#262626}.acm-btn--secondary:hover:not(:disabled){border-color:#40a9ff;color:#1890ff}.acm-btn--danger{background:#ff4d4f;color:#fff}.acm-btn--danger:hover:not(:disabled){background:#cf1322}.acm-btn--danger-outline{background:none;border:1px solid #ff4d4f;color:#ff4d4f}.acm-btn--danger-outline:hover:not(:disabled){background:#fff2f0}.acm-btn--sm{font-size:.75rem;min-height:30px;padding:4px 10px}.acm-inline-form{background:#fff;border:1px solid #e8e8e8;border-radius:8px;margin-bottom:16px;max-width:600px;padding:20px}.acm-inline-form h3{font-size:1rem;margin:0 0 16px}.acm-inline-form--warning{align-items:flex-start;background:#fffbe6;border-color:#ffe58f;display:flex;gap:12px}.acm-inline-form--warning p{color:#614700;font-size:.875rem;margin:4px 0}.acm-form-group{margin-bottom:12px}.acm-form-group label{color:#262626;display:block;font-size:.875rem;font-weight:500;margin-bottom:4px}.acm-form-group input,.acm-form-group textarea{border:1px solid #d9d9d9;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:.875rem;min-height:36px;padding:8px 12px;width:100%}.acm-form-group input:focus,.acm-form-group textarea:focus{border-color:#40a9ff;box-shadow:0 0 0 2px #1890ff33;outline:none}.acm-form-group textarea{min-height:70px;resize:vertical}.acm-form-actions{display:flex;gap:8px;margin-top:16px}.demos-pane{padding:1rem}.demos-pane.error,.demos-pane.loading{padding:2rem;text-align:center}.demos-pane.error{color:#dc3545;color:var(--danger-color,#dc3545)}.demos-pane h3{margin:0 0 .5rem}.demos-pane-notification-banner{background:#e3f2fd;border:1px solid #2196f3;border-radius:6px;color:#1565c0;margin-bottom:1rem;padding:10px 14px}.demos-pane-subtitle{color:#666;margin-bottom:1rem}.demos-pane-empty{color:#666;padding:2rem;text-align:center}.demos-list{display:flex;flex-direction:column;gap:1.5rem}.demos-opportunity-group{background:#fafafa;border:1px solid #e8e8e8;border-radius:8px;padding:1rem}.demos-opportunity-title{border-bottom:1px solid #e0e0e0;color:#333;font-size:1.1rem;margin:0 0 1rem;padding-bottom:.5rem}.demos-parent-group{margin-bottom:1rem}.demos-parent-group:last-child{margin-bottom:0}.demos-parent-title{color:#555;font-size:.95rem;font-weight:600;margin:0 0 .5rem}.demos-parent-slots{display:flex;flex-direction:column;gap:.75rem}.demo-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1rem}.demo-card.status-pending{border-left:4px solid #ffc107}.demo-card.status-tutor_accepted{border-left:4px solid #17a2b8}.demo-card.status-parent_accepted{border-left:4px solid #28a745}.demo-card.status-rejected{border-left:4px solid #6c757d;opacity:.8}.demo-card-highlighted{animation:highlight-pulse 2s ease-in-out;box-shadow:0 0 0 3px #1890ff}@keyframes highlight-pulse{0%,to{box-shadow:0 0 0 3px #1890ff}50%{box-shadow:0 0 0 6px #1890ff4d}}.demo-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.demo-status-badge{background:#e9ecef;border-radius:4px;font-size:.75rem;padding:.2rem .5rem;text-transform:capitalize}.demo-card-body p{font-size:.9rem;margin:.25rem 0}.demo-time-row{font-family:monospace;font-size:.85rem}.demo-time-label{font-weight:600;margin-right:.5rem}.demo-meta{color:#666;font-size:.8rem}.demo-card-actions{border-top:1px solid #eee;margin-top:.75rem;padding-top:.75rem}.demo-meeting-url{border-top:1px solid #eee;margin-top:.5rem;padding-top:.5rem}.demo-meeting-url-edit{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.demo-meeting-url-input{border:1px solid #d9d9d9;border-radius:4px;flex:1 1;font-size:.9rem;min-width:200px;padding:.35rem .5rem}.demo-meeting-url-display{align-items:center;display:flex;gap:.5rem}.demo-meeting-url-empty{color:#999;font-style:italic}.demo-feedback-display{border-top:1px solid #eee;margin-top:.75rem;padding-top:.5rem}.demo-feedback-label{color:#555;font-size:.85rem;font-weight:500;margin:0 0 .25rem}.demo-feedback-rating{margin-bottom:.25rem}.demo-feedback-text{color:#333;font-size:.9rem;font-style:italic;margin:0}.demo-close-section{border-top:1px solid #eee;margin-top:.75rem;padding-top:.5rem}.demo-create-cohort-row{margin-bottom:.5rem}.demo-close-edit label{display:block;font-size:.85rem;font-weight:500;margin-bottom:.25rem}.demo-post-mortem-input{border:1px solid #d9d9d9;border-radius:4px;font-size:.9rem;margin-bottom:.5rem;padding:6px 8px;resize:vertical;width:100%}.demo-close-actions{display:flex;flex-wrap:wrap;gap:.5rem}.demos-pane .admin-search-bar{margin-bottom:16px}.demos-pane .admin-search-bar input{border:1px solid #ddd;border-radius:6px;font-size:14px;max-width:300px;padding:8px 12px;width:100%}.demos-pane .admin-search-bar input:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.demos-pane .admin-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:16px;padding:12px 0}.demos-pane .admin-pagination-info{color:#7f8c8d;font-size:14px}.demos-pane .admin-pagination-buttons{align-items:center;display:flex;gap:6px}.demos-pane .admin-pagination-btn{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 12px}.demos-pane .admin-pagination-btn:hover:not(:disabled){background:#f8f9fa;border-color:#3498db}.demos-pane .admin-pagination-btn:disabled{cursor:not-allowed;opacity:.5}.demos-pane .admin-pagination-btn.active{background:#3498db;border-color:#3498db;color:#fff}.demos-pane .admin-pagination-ellipsis{color:#7f8c8d;padding:0 4px}.courses-manager{padding:20px 0}.courses-manager-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.courses-manager-header>div:first-child{flex:1 1;min-width:200px}.courses-manager-header h2{margin:0 0 8px}.courses-manager-header p{color:#666;font-size:14px;margin:0}.courses-manager-form.ant-form-vertical .ant-form-item{display:block;margin-bottom:16px}.courses-manager-form.ant-form-vertical .ant-form-item-label{display:block;padding-bottom:4px}.courses-manager-form .ant-input,.courses-manager-form .ant-select,.courses-manager-form textarea.ant-input,.courses-manager-form.ant-form-vertical .ant-form-item-control{width:100%}.feature-requests-management{padding:20px 0}.feature-requests-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.feature-requests-header h2{font-size:1.2em;margin:0}.feature-requests-section{margin-bottom:32px}.feature-requests-section h3{color:#64748b;font-size:1em;margin:0 0 12px}.feature-request-message-cell{max-width:400px;white-space:pre-wrap;word-break:break-word}.feature-request-email{color:#64748b;font-size:.9em}.feature-requests-management .button-group{display:flex;gap:8px}.feature-requests-management .approve-btn{background:#22c55e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:6px 12px}.feature-requests-management .approve-btn:hover{background:#16a34a}.feature-requests-management .btn-secondary{font-size:14px;padding:6px 12px}.admin-tunables{padding:0}.admin-tunables h2{color:#2c3e50;font-size:1.5rem;margin-bottom:4px}.tunables-subtitle{color:#7f8c8d;font-size:.875rem;margin-bottom:24px}.tunables-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.tunable-card{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:20px;transition:box-shadow .2s ease}.tunable-card:hover{box-shadow:0 2px 8px #00000014}.tunable-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.tunable-header h3{color:#2c3e50;font-size:1rem;margin:0}.tunable-unit{background:#f8f9fa;border-radius:12px;color:#95a5a6;font-size:.75rem;padding:2px 8px}.tunable-description{color:#7f8c8d;font-size:.8125rem;line-height:1.4;margin:0 0 12px}.tunable-input-row{align-items:center;display:flex;gap:8px}.tunable-input-row input{border:1px solid #ddd;border-radius:6px;flex:1 1;font-size:.875rem;max-width:140px;min-height:44px;padding:8px 12px}.tunable-input-row input:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.tunable-save-btn{background:#3498db;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;min-height:44px;min-width:44px;padding:8px 16px;transition:background .2s ease}.tunable-save-btn:hover:not(:disabled){background:#2980b9}.tunable-save-btn:disabled{background:#bdc3c7;cursor:not-allowed}.tunable-message{border-radius:4px;font-size:.8125rem;margin-top:8px;padding:4px 8px}.tunable-message-success{background:#eafaf1;color:#1e7e34}.tunable-message-error{background:#fdecea;color:#c0392b}.tunable-meta{color:#bdc3c7;font-size:.75rem;margin-top:8px}.tunables-error,.tunables-loading{color:#7f8c8d;font-size:1rem;padding:40px;text-align:center}.tunables-error p{color:#e74c3c;margin-bottom:12px}@media (max-width:576px){.tunables-grid{grid-template-columns:1fr}.tunable-input-row input{max-width:none}}.admin-dashboard{margin:0 auto;max-width:1200px;padding:20px}.admin-dashboard h1{color:#2c3e50;margin-bottom:30px;text-align:center}.admin-tabs{border-bottom:1px solid #e0e0e0;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding-bottom:12px}.admin-tabs button{background:#f8f9fa;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 16px}.admin-tabs button:hover{background:#e9ecef;border-color:#adb5bd}.admin-tabs button.tab-active{background:#3498db;border-color:#3498db;color:#fff}.admin-header{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:30px}.admin-header h1{margin-bottom:0;text-align:left}.error,.loading{font-size:18px;padding:40px;text-align:center}.error{color:#e74c3c}.retry-btn{background:#3498db;border:none;border-radius:5px;color:#fff;cursor:pointer;margin-top:10px;padding:10px 20px}.retry-btn:hover{background:#2980b9}.admin-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:16px;padding:12px 0}.admin-pagination-info{color:#7f8c8d;font-size:14px}.admin-pagination-buttons{align-items:center;display:flex;gap:6px}.admin-pagination-btn{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 12px}.admin-pagination-btn:hover:not(:disabled){background:#f8f9fa;border-color:#3498db}.admin-pagination-btn:disabled{cursor:not-allowed;opacity:.5}.admin-pagination-btn.active{background:#3498db;border-color:#3498db;color:#fff}.admin-pagination-ellipsis{color:#7f8c8d;padding:0 4px}.admin-search-bar{margin-bottom:16px}.admin-search-bar input{border:1px solid #ddd;border-radius:6px;font-size:14px;max-width:300px;padding:8px 12px;width:100%}.admin-search-bar input:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{background:#fff;border-left:4px solid;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:20px;text-align:center}.stat-card.pending{border-left-color:#f39c12}.stat-card.approved{border-left-color:#27ae60}.stat-card.subscribed{border-left-color:#9b59b6}.stat-card.rejected{border-left-color:#e74c3c}.stat-card.total{border-left-color:#3498db}.stat-card h3{color:#7f8c8d;font-size:14px;letter-spacing:1px;margin:0 0 10px;text-transform:uppercase}.stat-number{color:#2c3e50;font-size:36px;font-weight:700}.tabs{border-bottom:2px solid #ecf0f1;display:flex;margin-bottom:20px}.tab{background:none;border:none;border-bottom:3px solid #0000;color:#7f8c8d;cursor:pointer;font-size:16px;padding:15px 25px;transition:all .3s ease}.tab:hover{background:#f8f9fa;color:#3498db}.tab.active{border-bottom-color:#3498db;color:#3498db;font-weight:600}.opportunities-approval{background:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;padding:20px}.opportunities-approval-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.opportunities-approval .button-group{display:flex;gap:8px}.admin-table{border-collapse:collapse;font-size:14px;width:100%}.admin-table td,.admin-table th{border-bottom:1px solid #ecf0f1;padding:10px 12px;text-align:left}.admin-table th{background:#f8f9fa;font-weight:600}.approve-btn{background:#27ae60;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;padding:6px 12px}.approve-btn:hover{background:#219150}.success-message{background:#eafaf1;border:1px solid #c9f0d8;border-radius:6px;color:#1e7e34;margin:10px 0;padding:10px 12px}.tab-content{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:20px}.tab-content h2{color:#2c3e50;margin-bottom:20px}.empty-state{color:#7f8c8d;font-size:18px;padding:40px;text-align:center}.approvals-list,.tutors-list{grid-gap:20px;display:grid;gap:20px}.approval-card,.tutor-card{align-items:flex-start;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;justify-content:space-between;padding:20px;transition:all .3s ease}.approval-card:hover,.tutor-card:hover{box-shadow:0 4px 15px #0000001a;transform:translateY(-2px)}.approval-info,.tutor-info{flex:1 1}.approval-info h3,.tutor-info h3{color:#2c3e50;font-size:20px;margin:0 0 5px}.approval-info .email,.tutor-info .email{color:#7f8c8d;margin:5px 0}.approval-info .username,.tutor-info .username{color:#95a5a6;font-size:14px;margin:5px 0}.approval-info .bio,.tutor-info .bio{color:#34495e;line-height:1.5;margin:10px 0}.approval-info .date,.tutor-info .date{color:#95a5a6;font-size:12px;margin:10px 0 0}.approval-actions,.tutor-actions{display:flex;flex-direction:column;gap:10px;margin-left:20px}.approve-btn,.create-approval-btn{background:#27ae60;border:none;border-radius:5px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:background .3s ease}.approve-btn:hover,.create-approval-btn:hover{background:#229954}.reject-btn{background:#e74c3c;border:none;border-radius:5px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:background .3s ease}.reject-btn:hover{background:#c0392b}.modal{background:#fff;border-radius:10px;max-height:80vh;max-width:500px;overflow-y:auto;padding:30px;width:90%}.modal h3{color:#2c3e50;margin-bottom:15px}.modal p{color:#7f8c8d;line-height:1.5;margin-bottom:20px}.modal textarea{border:1px solid #ddd;border-radius:5px;font-family:inherit;font-size:14px;margin-bottom:15px;min-height:80px;padding:10px;resize:vertical;width:100%}.modal textarea:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.cancel-btn{background:#95a5a6;border:none;border-radius:5px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px}.cancel-btn:hover{background:#7f8c8d}.confirm-btn{background:#27ae60;border:none;border-radius:5px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px}.confirm-btn:hover{background:#229954}.reject-confirm-btn{background:#e74c3c;border:none;border-radius:5px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px}.reject-confirm-btn:hover:not(:disabled){background:#c0392b}.reject-confirm-btn:disabled{background:#bdc3c7;cursor:not-allowed}@media (max-width:768px){.admin-dashboard{padding:10px}.stats-grid{grid-template-columns:repeat(2,1fr)}.approval-card,.tutor-card{flex-direction:column}.approval-actions,.tutor-actions{flex-direction:row;margin-left:0;margin-top:15px}.modal{margin:20px;padding:20px}}.stats-section{margin-bottom:40px}.stats-section h2{color:#2c3e50;font-size:24px;padding-bottom:10px}.main-tabs,.stats-section h2{border-bottom:2px solid #ecf0f1;margin-bottom:20px}.main-tabs{display:flex}.main-tab{background:none;border:none;border-bottom:3px solid #0000;color:#7f8c8d;cursor:pointer;font-size:16px;font-weight:600;padding:15px 30px;transition:all .3s ease}.main-tab:hover{background:#f8f9fa;color:#2c3e50}.main-tab.active{background:#f8f9fa;border-bottom-color:#3498db;color:#3498db}.mentor-card{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;margin-bottom:15px;padding:20px;transition:box-shadow .3s ease}.mentor-card:hover{box-shadow:0 4px 8px #00000026}.mentor-info h3{color:#2c3e50;font-size:18px;margin:0 0 5px}.mentor-info .username{color:#7f8c8d;font-size:14px;margin:0 0 5px}.mentor-info .email{color:#3498db;font-size:14px;margin:0 0 5px}.mentor-info .bio{color:#555;font-size:14px;font-style:italic;margin:0 0 5px}.mentor-info .date{color:#95a5a6;font-size:12px;margin:0}.mentor-actions{display:flex;gap:10px}.mentors-list{display:flex;flex-direction:column;gap:15px}.student-card{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;margin-bottom:15px;padding:20px;transition:box-shadow .3s ease}.student-card:hover{box-shadow:0 4px 8px #00000026}.student-info h3{color:#2c3e50;font-size:18px;margin:0 0 5px}.student-info .username{color:#7f8c8d;font-size:14px;margin:0 0 5px}.student-info .email{color:#3498db;font-size:14px;margin:0 0 5px}.student-info .bio{color:#555;font-size:14px;font-style:italic;margin:0 0 5px}.student-info .date{color:#95a5a6;font-size:12px;margin:0}.student-actions{display:flex;gap:10px}.students-list{display:flex;flex-direction:column;gap:15px}@media (max-width:768px){.admin-header{align-items:flex-start}.admin-header,.main-tabs{flex-direction:column}.main-tab{font-size:14px;padding:12px 20px}.mentor-card{align-items:flex-start;flex-direction:column;gap:15px}.mentor-actions{justify-content:center;width:100%}.stats-section h2{font-size:20px}}
/*# sourceMappingURL=2369.1a24113c.chunk.css.map*/