.admin-page{min-height:100vh;background:linear-gradient(135deg,#f0fdfa,#e0f2fe,#faf5ff);padding:0}.admin-page-container{max-width:1400px;margin:0 auto;padding:0 24px 48px}.admin-page-header{display:flex;justify-content:space-between;align-items:center;padding:24px 0;border-bottom:1px solid rgba(0,0,0,.1);margin-bottom:24px;position:sticky;top:0;background:linear-gradient(135deg,#f0fdfa,#e0f2fe,#faf5ff);z-index:10}.admin-page-header h1{font-family:Plus Jakarta Sans,sans-serif;font-size:32px;font-weight:700;color:#1f2937;margin:0}.admin-back-link{color:#2da7a7;text-decoration:none;font-weight:500;font-size:15px;display:flex;align-items:center;gap:4px;transition:color .2s}.admin-back-link:hover{color:#1d8f8f}.admin-user-info-small{display:flex;align-items:center;gap:10px;font-size:14px;color:#4b5563}.admin-avatar-small{width:36px;height:36px;border-radius:50%;object-fit:cover}.admin-access-denied{padding:80px 32px;text-align:center;background:#fff;border-radius:24px;margin-top:48px;box-shadow:0 4px 20px #00000014}.admin-access-denied h2{font-family:Plus Jakarta Sans,sans-serif;font-size:28px;color:#dc2626;margin-bottom:12px}.admin-access-denied p{color:#6b7280;margin-bottom:24px;font-size:16px}.admin-back-btn{display:inline-block;background:#2da7a7;color:#fff;text-decoration:none;padding:14px 32px;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:background .2s}.admin-close-btn:hover{background:#248f8f}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:24px;background:#fff;border-radius:20px;box-shadow:0 4px 20px #0000000f;margin-bottom:24px}.admin-stat-card{background:#fff;padding:20px;border-radius:16px;text-align:center;box-shadow:0 1px 3px #0000001a}.stat-number{display:block;font-family:Plus Jakarta Sans,sans-serif;font-size:32px;font-weight:700;color:#2da7a7;margin-bottom:4px}.stat-label{font-size:14px;color:#6b7280}.admin-controls{padding:20px 24px;display:flex;gap:16px;flex-wrap:wrap;align-items:center;background:#fff;border-radius:20px;box-shadow:0 4px 20px #0000000f;margin-bottom:24px}.admin-search{flex:1;min-width:250px}.admin-search input{width:100%;padding:12px 16px;border:1px solid #e5e7eb;border-radius:12px;font-size:15px;transition:border-color .2s}.admin-search input:focus{outline:none;border-color:#2da7a7}.admin-sort-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-sort-controls span{font-size:14px;color:#6b7280}.admin-sort-controls button{padding:8px 16px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;font-size:13px;color:#4b5563;cursor:pointer;transition:all .2s}.admin-sort-controls button:hover{border-color:#2da7a7;color:#2da7a7}.admin-sort-controls button.active{background:#2da7a7;border-color:#2da7a7;color:#fff}.admin-users-list{display:flex;flex-direction:column;gap:12px}.admin-loading,.admin-no-users{text-align:center;padding:64px;color:#6b7280;font-size:16px;background:#fff;border-radius:20px;box-shadow:0 4px 20px #0000000f}.admin-user-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden;transition:box-shadow .2s}.admin-user-card:hover{box-shadow:0 4px 12px #00000014}.admin-user-card.expanded{border-color:#2da7a7;box-shadow:0 4px 20px #2da7a726}.admin-user-row{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;gap:16px}.admin-user-info{display:flex;align-items:center;gap:12px;min-width:250px;cursor:pointer}.admin-view-profile-btn{background:linear-gradient(135deg,#0d9488,#0f766e);color:#fff;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap;transition:all .2s ease}.admin-view-profile-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0d94884d}.admin-user-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover}.admin-user-details{display:flex;flex-direction:column}.admin-user-name{font-weight:600;color:#1f2937;display:flex;align-items:center;gap:8px}.admin-badge{background:#fef3c7;color:#d97706;font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px;text-transform:uppercase}.admin-user-email{font-size:13px;color:#6b7280}.admin-user-metrics{display:flex;gap:24px}.admin-metric{text-align:center}.metric-value{display:block;font-weight:600;color:#1f2937;font-size:15px}.metric-label{font-size:11px;color:#9ca3af;text-transform:uppercase}.admin-expand-icon{color:#9ca3af;font-size:12px}.admin-user-expanded{border-top:1px solid #e5e7eb;background:#f9fafb;padding:20px}.admin-expanded-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.admin-expanded-section{background:#fff;padding:16px;border-radius:12px;border:1px solid #e5e7eb}.admin-expanded-section h4{font-family:Plus Jakarta Sans,sans-serif;font-size:14px;font-weight:600;color:#1f2937;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #f3f4f6}.admin-detail-list{font-size:14px;color:#4b5563;display:flex;flex-direction:column;gap:8px}.admin-detail-list>div{word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap}.admin-detail-list strong{color:#1f2937}.admin-schools-list,.admin-bookings-list,.admin-resources-list,.admin-packages-list{list-style:none;padding:0;margin:0;font-size:14px}.admin-package-item{padding:12px;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:8px;background:#fafafa}.package-info{display:flex;align-items:center;gap:12px;margin-bottom:6px}.package-type{font-size:11px;font-weight:600;padding:3px 8px;border-radius:4px;text-transform:uppercase}.package-type.trial{background:#fef3c7;color:#d97706}.package-type.regular{background:#dbeafe;color:#2563eb}.package-sessions{font-weight:500;color:#1f2937}.package-status{font-size:11px;font-weight:500;padding:2px 8px;border-radius:4px;text-transform:capitalize}.package-status.expired{background:#f3f4f6;color:#6b7280}.package-meta{font-size:12px;color:#6b7280}.admin-delete-package-btn{margin-top:8px;padding:6px 12px;background:#fee2e2;color:#dc2626;border:1px solid #fecaca;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.admin-delete-package-btn:hover{background:#fecaca;border-color:#fca5a5}.admin-schools-list li,.admin-bookings-list li{padding:8px 0;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;align-items:center}.admin-schools-list li:last-child,.admin-bookings-list li:last-child{border-bottom:none}.school-date{font-size:12px;color:#9ca3af}.booking-date{font-weight:500;color:#1f2937}.booking-time{color:#6b7280}.booking-status{font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px;text-transform:uppercase}.booking-status.pending{background:#fef3c7;color:#d97706}.booking-status.completed{background:#dbeafe;color:#2563eb}.admin-empty{color:#9ca3af;font-size:13px;font-style:italic}.admin-resources-section{grid-column:span 2}.admin-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #f3f4f6}.admin-section-header h4{margin:0;padding:0;border:none}.admin-add-resource-btn{background:#2da7a7;color:#fff;border:none;padding:6px 14px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.admin-add-resource-btn:hover{background:#248f8f}.admin-add-resource-form,.admin-add-session-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px;padding:16px;background:#f9fafb;border-radius:8px}.admin-add-session-form{grid-template-columns:1fr 1fr auto}.admin-add-resource-form input,.admin-add-resource-form select,.admin-add-session-form input,.admin-add-session-form select{padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px}.admin-add-resource-form input:focus,.admin-add-resource-form select:focus,.admin-add-session-form input:focus,.admin-add-session-form select:focus{outline:none;border-color:#2da7a7}.admin-save-resource-btn{grid-column:span 2;background:#2da7a7;color:#fff;border:none;padding:10px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.admin-save-resource-btn:hover{background:#248f8f}.admin-edit-user-form{display:flex;flex-direction:column;gap:12px;padding:16px;background:#f9fafb;border-radius:8px}.admin-edit-user-form .edit-field{display:flex;flex-direction:column;gap:4px}.admin-edit-user-form .edit-field label{font-size:12px;font-weight:500;color:#4b5563}.admin-edit-user-form .edit-field input{padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px}.admin-edit-user-form .edit-field input:focus{outline:none;border-color:#2da7a7}.admin-resources-group{margin-top:16px}.admin-resources-group:first-of-type{margin-top:12px}.resources-group-title{font-size:13px;font-weight:600;margin-bottom:8px;padding:6px 10px;border-radius:6px;display:inline-block}.resources-group-title.user-resources{background:#e0f2fe;color:#0369a1}.resources-group-title.coach-resources{background:#dcfce7;color:#15803d}.admin-resource-item.user-resource{border-left:3px solid #0ea5e9;padding-left:12px}.admin-resource-item.coach-resource{border-left:3px solid #22c55e;padding-left:12px}.admin-resource-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #f3f4f6}.admin-resource-item:last-child{border-bottom:none}.resource-info{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.resource-info a{color:#2da7a7;text-decoration:none;font-weight:500}.resource-type{font-size:11px;background:#e5e7eb;color:#6b7280;padding:2px 8px;border-radius:4px;text-transform:capitalize}.admin-added-badge{font-size:10px;background:#dbeafe;color:#2563eb;padding:2px 6px;border-radius:4px}.admin-remove-resource-btn{width:28px;height:28px;border-radius:50%;border:none;background:#fee2e2;color:#dc2626;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.admin-remove-resource-btn:hover{background:#fecaca}.admin-link{background:none;border:none;color:#d97706!important;font-weight:600;cursor:pointer}.admin-link:hover{color:#b45309!important}.admin-link-mobile{color:#d97706!important;background:#fef3c7!important}@media(max-width:1024px){.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-expanded-grid{grid-template-columns:1fr}.admin-resources-section{grid-column:span 1}}@media(max-width:768px){.admin-page-container{padding:0 16px 32px}.admin-page-header{flex-direction:column;gap:16px;padding:16px 0;text-align:center}.admin-page-header h1{font-size:24px;order:1}.admin-back-link{order:0;align-self:flex-start}.admin-user-info-small{order:2}.admin-stats{grid-template-columns:repeat(2,1fr);padding:16px;gap:12px}.admin-stat-card{padding:16px}.stat-number{font-size:24px}.admin-controls{padding:16px;flex-direction:column;align-items:stretch}.admin-search{min-width:unset}.admin-sort-controls{justify-content:center}.admin-users-list{gap:10px}.admin-user-row{flex-direction:column;align-items:flex-start;gap:12px}.admin-user-info{min-width:unset}.admin-user-metrics{width:100%;justify-content:space-between;padding-left:60px}.admin-expand-icon{position:absolute;right:16px;top:24px}.admin-user-card{position:relative}.admin-add-resource-form{grid-template-columns:1fr}.admin-save-resource-btn{grid-column:span 1}}.admin-user-page{background:linear-gradient(135deg,#f8fafc,#f0fdfa,#ecfeff)}.admin-user-profile-card{background:#fff;border-radius:16px;padding:32px;margin-bottom:24px;box-shadow:0 4px 24px #0000000f}.profile-header{display:flex;gap:24px;align-items:flex-start;margin-bottom:32px}.profile-avatar-large{width:100px;height:100px;border-radius:50%;object-fit:cover;border:4px solid #f0fdfa;box-shadow:0 4px 12px #0d948833}.profile-header-info h2{font-family:Plus Jakarta Sans,sans-serif;font-size:28px;font-weight:700;color:#0f172a;margin:0 0 4px;display:flex;align-items:center;gap:12px}.profile-email{color:#64748b;font-size:15px;margin:0 0 4px}.profile-phone{color:#475569;font-size:14px;margin:0 0 12px}.edit-profile-btn{background:#f1f5f9;border:none;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;color:#475569;cursor:pointer;transition:all .2s}.edit-profile-btn:hover{background:#e2e8f0;color:#1e293b}.edit-user-form{display:flex;flex-direction:column;gap:12px;max-width:300px}.edit-user-form input{padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px}.edit-user-form input:focus{outline:none;border-color:#0d9488}.edit-actions{display:flex;gap:8px}.edit-actions .save-btn{background:#0d9488;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer}.edit-actions .cancel-btn{background:#f1f5f9;color:#64748b;border:none;padding:8px 16px;border-radius:6px;font-size:13px;cursor:pointer}.profile-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding-top:24px;border-top:1px solid #e2e8f0}.profile-stat{text-align:center}.profile-stat .stat-value{display:block;font-family:Plus Jakarta Sans,sans-serif;font-size:24px;font-weight:700;color:#0d9488;margin-bottom:4px}.profile-stat .stat-label{font-size:13px;color:#64748b}.admin-user-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.admin-user-column{display:flex;flex-direction:column;gap:24px}.admin-section-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 12px #0000000a}.admin-section-card h3{font-family:Plus Jakarta Sans,sans-serif;font-size:16px;font-weight:600;color:#1e293b;margin:0 0 16px;padding-bottom:12px;border-bottom:2px solid #f1f5f9}.admin-section-card .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #f1f5f9}.admin-section-card .section-header h3{margin:0;padding:0;border:none}.detail-list{display:flex;flex-direction:column;gap:12px}.detail-row{display:flex;gap:12px}.detail-label{font-size:13px;color:#64748b;min-width:120px}.detail-value{font-size:14px;color:#1e293b;font-weight:500}.detail-value.yes{color:#059669}.detail-value.no{color:#dc2626}.concerns-section{margin-top:20px;padding-top:16px;border-top:1px solid #f1f5f9}.concerns-section h4{font-size:13px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin:0 0 8px}.concerns-text{font-size:14px;color:#475569;line-height:1.6;background:#f8fafc;padding:12px;border-radius:8px;border-left:3px solid #0d9488;margin:0;word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap}.schools-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.schools-list li{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#f8fafc;border-radius:8px}.school-name{font-size:14px;font-weight:500;color:#1e293b}.school-date{font-size:12px;color:#64748b;background:#e0f2fe;padding:4px 8px;border-radius:4px}.empty-state{font-size:14px;color:#94a3b8;text-align:center;padding:24px;background:#f8fafc;border-radius:8px;margin:0}.add-btn{background:#0d9488;color:#fff;border:none;padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.add-btn:hover{background:#0f766e}.add-form{display:flex;flex-direction:column;gap:10px;padding:16px;background:#f8fafc;border-radius:8px;margin-bottom:16px}.add-form input,.add-form select{padding:10px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px}.add-form input:focus,.add-form select:focus{outline:none;border-color:#0d9488}.add-form .save-btn{background:#0d9488;color:#fff;border:none;padding:10px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer}.add-session-form{flex-direction:row;align-items:center}.add-session-form select{flex:1}.add-session-form input{width:100px}.resources-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.resources-list li{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f8fafc;border-radius:8px}.resource-info{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.resource-info a{font-size:14px;font-weight:500;color:#0d9488;text-decoration:none}.resource-info a:hover{text-decoration:underline}.resource-type{font-size:11px;color:#64748b;background:#e2e8f0;padding:2px 8px;border-radius:4px;text-transform:uppercase}.admin-added{font-size:10px;color:#7c3aed;background:#ede9fe;padding:2px 6px;border-radius:4px;font-weight:500}.remove-btn{background:none;border:none;color:#94a3b8;font-size:20px;cursor:pointer;padding:4px 8px;line-height:1}.remove-btn:hover{color:#dc2626}.packages-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.package-item{padding:16px;background:#f8fafc;border-radius:10px;position:relative}.package-main{display:flex;align-items:center;gap:12px;margin-bottom:8px}.package-type-badge{font-size:12px;font-weight:600;padding:4px 10px;border-radius:4px}.package-type-badge.trial{background:#dbeafe;color:#1d4ed8}.package-type-badge.regular{background:#dcfce7;color:#15803d}.package-sessions{font-size:14px;font-weight:500;color:#1e293b}.package-status{font-size:11px;padding:2px 8px;border-radius:4px;text-transform:uppercase;font-weight:500}.package-status.active{background:#d1fae5;color:#059669}.package-status.cancelled{background:#fee2e2;color:#dc2626}.package-meta{display:flex;gap:12px;font-size:12px;color:#64748b}.delete-btn{position:absolute;top:12px;right:12px;background:#fee2e2;color:#dc2626;border:none;padding:4px 10px;border-radius:4px;font-size:12px;cursor:pointer;opacity:0;transition:opacity .2s}.package-item:hover .delete-btn{opacity:1}.bookings-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.booking-item{padding:14px;background:#f8fafc;border-radius:10px;border-left:3px solid #0d9488}.booking-main{display:flex;align-items:center;gap:12px;margin-bottom:8px}.booking-date{font-size:14px;font-weight:600;color:#1e293b}.booking-time{font-size:14px;color:#475569}.booking-duration{font-size:11px;padding:2px 8px;border-radius:4px;font-weight:500}.booking-duration.trial{background:#dbeafe;color:#1d4ed8}.booking-duration.regular{background:#dcfce7;color:#15803d}.booking-meta{display:flex;gap:12px;font-size:12px;color:#64748b}.booking-status{padding:2px 6px;border-radius:4px;text-transform:uppercase;font-weight:500;font-size:10px}.booking-status.confirmed{background:#d1fae5;color:#059669}.booking-status.cancelled{background:#fee2e2;color:#dc2626}.calendar-link{display:inline-block;margin-top:8px;font-size:12px;color:#0d9488;text-decoration:none}.calendar-link:hover{text-decoration:underline}@media(max-width:1024px){.admin-user-grid{grid-template-columns:1fr}}@media(max-width:768px){.profile-header{flex-direction:column;align-items:center;text-align:center}.profile-header-info h2{justify-content:center}.profile-stats-row{grid-template-columns:repeat(2,1fr)}.add-session-form{flex-direction:column}.add-session-form input{width:100%}}
