.navbar{background-color:var(--color-white);border-bottom:1px solid var(--color-gray-200);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100}.navbar-container{max-width:1200px;margin:0 auto;padding:0 var(--space-5);display:flex;align-items:center;justify-content:space-between;height:64px}.navbar-brand{flex-shrink:0}.navbar-logo{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--color-primary);text-decoration:none;transition:color .2s ease}.navbar-logo:hover{color:var(--color-primary-hover)}.navbar-content{display:flex;align-items:center;gap:var(--space-6)}.navbar-user-info{display:flex;align-items:center;gap:var(--space-3);padding-right:var(--space-4);border-right:1px solid var(--color-gray-200)}.navbar-welcome{font-size:var(--text-base);color:var(--color-gray-600)}.navbar-role{font-size:var(--text-sm);padding:var(--space-1) var(--space-2);border-radius:var(--border-radius);background-color:var(--color-primary-light);color:var(--color-primary);font-weight:var(--font-medium);text-transform:capitalize}.navbar-nav{display:flex;align-items:center;gap:var(--space-2);list-style:none;margin:0;padding:0}.navbar-item{margin:0}.navbar-link{display:inline-block;padding:var(--space-2) var(--space-4);font-size:var(--text-base);color:var(--color-gray-600);text-decoration:none;border-radius:var(--border-radius);transition:all .2s ease;border:none;background:none;cursor:pointer;font-family:inherit}.navbar-link:hover{background-color:var(--color-gray-50);color:var(--color-gray-800)}.navbar-link.active{background-color:var(--color-primary-light);color:var(--color-primary);font-weight:var(--font-medium)}.navbar-logout{color:var(--color-danger)}.navbar-logout:hover{background-color:var(--color-danger-light);color:var(--color-danger-dark)}@media (max-width: 768px){.navbar-container{padding:0 var(--space-3);height:56px}.navbar-logo{font-size:var(--text-lg)}.navbar-content{gap:var(--space-4)}.navbar-user-info{display:none}.navbar-nav{gap:var(--space-1)}.navbar-link{padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}}@media (max-width: 480px){.navbar-container{padding:0 var(--space-2)}.navbar-logo{font-size:var(--text-base)}.navbar-link{padding:var(--space-2)}}.profile-container{padding:16px;max-width:100%;overflow:hidden;width:100%;box-sizing:border-box;background-color:#f5f5f5;min-height:100vh}@media (min-width: 1200px){.profile-container{max-width:1200px;margin:0 auto;padding:24px}}@media (min-width: 768px) and (max-width: 1199px){.profile-container{max-width:1000px;margin:0 auto;padding:20px}}@media (max-width: 480px){.profile-container{padding:8px}}.profile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e0e0e0}.profile-title{font-size:28px;font-weight:700;color:#333;margin:0;letter-spacing:-.5px}@media (max-width: 480px){.profile-header{flex-direction:column;align-items:flex-start;gap:12px}.profile-title{font-size:24px}}.profile-header .btn-primary{background-color:var(--color-primary);color:#fff;padding:10px 20px;border:none;border-radius:6px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0000001a}.profile-header .btn-primary:hover{background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.profile-content{display:grid;grid-template-columns:1fr;gap:20px;max-width:100%}.profile-section{background:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 3px #00000014;transition:all .3s ease;border:1px solid #e0e0e0}.profile-section:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}@media (max-width: 480px){.profile-section{padding:16px;border-radius:6px}}.section-title{font-size:18px;font-weight:600;color:#333;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid #f0f0f0;display:flex;align-items:center;gap:10px}.profile-field{margin-bottom:20px}.profile-field:last-child{margin-bottom:0}.profile-field label{display:block;font-size:12px;font-weight:600;color:#666;margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.field-value{font-size:15px;color:#333;margin:0;line-height:1.5;min-height:24px}.field-value:empty:after{content:"Not set";color:#999;font-style:italic}.form-input{width:100%;padding:10px 14px;font-size:14px;border:2px solid #e0e0e0;border-radius:6px;background-color:#fff;color:#333;transition:all .2s;box-sizing:border-box}.form-input:hover{border-color:#ccc}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #007bff1a}.form-input:disabled{background-color:#f8f8f8;cursor:not-allowed;opacity:.7}.profile-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}@media (max-width: 480px){.profile-row{grid-template-columns:1fr}}.role-badge{display:inline-flex;align-items:center;padding:6px 12px;font-size:13px;font-weight:600;border-radius:20px;background-color:var(--color-primary);color:#fff;text-transform:capitalize}.status-badge{display:inline-flex;align-items:center;padding:6px 12px;font-size:13px;font-weight:600;border-radius:20px;position:relative;text-transform:capitalize}.status-badge:before{content:"";width:8px;height:8px;border-radius:50%;margin-right:6px;display:inline-block}.status-active{background-color:#e8f5e9;color:#2e7d32}.status-active:before{background-color:#2e7d32}.status-inactive{background-color:#ffebee;color:#c62828}.status-inactive:before{background-color:#c62828}.status-suspended{background-color:#fff3e0;color:#ef6c00}.status-suspended:before{background-color:#ef6c00}.profile-actions{display:flex;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid #e0e0e0}.btn{padding:10px 20px;font-size:14px;font-weight:600;border-radius:6px;border:none;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;box-shadow:0 1px 3px #0000001a}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.btn:active{transform:translateY(0)}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover{background-color:var(--color-primary-hover)}.btn-secondary{background-color:#e0e0e0;color:#333}.btn-secondary:hover{background-color:#d0d0d0}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.password-change-form{margin-top:20px;padding:20px;background-color:#f8f9fa;border-radius:6px;border:1px solid #e0e0e0}.field-hint{font-size:12px;color:#666;margin-top:4px;font-style:italic}.profile-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px;background:#fff;border-radius:8px;margin:20px}.loading-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.alert{padding:12px 16px;border-radius:6px;margin-bottom:20px;font-size:14px;display:flex;align-items:center;gap:10px;font-weight:500}.alert-danger{background-color:#ffebee;color:#c62828;border:1px solid #ef5350}.alert-success{background-color:#e8f5e9;color:#2e7d32;border:1px solid #66bb6a}@media (max-width: 768px){.profile-actions{flex-direction:column}.btn{width:100%;justify-content:center}}@media (min-width: 992px){.profile-content{grid-template-columns:1fr 1fr;gap:24px}.profile-section:first-child{grid-column:1 / -1}.profile-section:last-child{grid-column:1 / -1}}.btn,.form-input,.profile-section{transition:all .2s ease}*:focus{outline:none}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.profile-section{animation:fadeIn .3s ease-out}.profile-section:nth-child(2){animation-delay:.1s}.profile-section:nth-child(3){animation-delay:.2s}.profile-section:nth-child(4){animation-delay:.3s}@media (prefers-color-scheme: dark){.profile-container{background-color:#1a1a1a}.profile-section{background-color:#2a2a2a;border-color:#3a3a3a}.profile-title,.section-title,.field-value,.btn-secondary{color:#e0e0e0}.profile-field label{color:#aaa}.form-input{background-color:#333;border-color:#444;color:#e0e0e0}.form-input:hover{border-color:#555}.profile-header,.section-title{border-bottom-color:#444}.btn-secondary{background-color:#444}.btn-secondary:hover{background-color:#555}.password-change-form{background-color:#333;border-color:#444}}.dashboard-container{max-width:1200px;margin:0 auto;padding:var(--space-5)}.dashboard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--space-4)}.dashboard-header{margin-bottom:var(--space-8);text-align:center}.dashboard-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-gray-800);margin-bottom:var(--space-2)}.dashboard-subtitle{font-size:var(--text-lg);color:var(--color-gray-600)}.user-status{margin-top:var(--space-4);display:flex;align-items:center;gap:var(--space-3);justify-content:center}.status-label{font-size:var(--text-base);color:var(--color-gray-600);font-weight:var(--font-medium)}.status-badge.status-active{background-color:var(--color-success-light);color:var(--color-success-dark);padding:var(--space-1) var(--space-3);border-radius:12px;font-size:var(--text-sm);font-weight:var(--font-semibold);text-transform:uppercase}.status-badge.status-paused{background-color:var(--color-warning-light);color:var(--color-warning-dark);padding:var(--space-1) var(--space-3);border-radius:12px;font-size:var(--text-sm);font-weight:var(--font-semibold);text-transform:uppercase}.status-badge.status-deactive,.status-badge.status-blocked{background-color:var(--color-danger-light);color:var(--color-danger-dark);padding:var(--space-1) var(--space-3);border-radius:12px;font-size:var(--text-sm);font-weight:var(--font-semibold);text-transform:uppercase}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:var(--space-6);margin-bottom:var(--space-8)}.dashboard-section{background-color:var(--color-white);border-radius:var(--border-radius);padding:var(--space-6);box-shadow:var(--shadow-md)}.section-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-gray-800);margin-bottom:var(--space-5)}.booking-list{display:flex;flex-direction:column;gap:var(--space-4)}.booking-card{background-color:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--border-radius);padding:var(--space-4);transition:all .2s ease-in-out}.booking-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.booking-card.completed{opacity:.7}.booking-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.booking-name{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-gray-800);margin:0}.status-badge{padding:var(--space-1) var(--space-3);border-radius:12px;font-size:var(--text-sm);font-weight:var(--font-medium);text-transform:capitalize}.status-badge.upcoming{background-color:var(--color-success-light);color:var(--color-success-dark)}.status-badge.completed{background-color:var(--color-gray-200);color:var(--color-gray-600)}.booking-details{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-3)}.detail-row{display:flex;gap:var(--space-2);font-size:var(--text-base)}.detail-label{font-weight:var(--font-medium);color:var(--color-gray-600);min-width:80px}.detail-value{color:var(--color-gray-800)}.booking-actions{display:flex;gap:var(--space-2);justify-content:flex-end;padding-top:var(--space-3);border-top:1px solid var(--color-gray-200)}.quick-actions{background-color:var(--color-white);border-radius:var(--border-radius);padding:var(--space-6);box-shadow:var(--shadow-md)}.action-buttons{display:flex;gap:var(--space-3);flex-wrap:wrap}@media (max-width: 768px){.dashboard-container{padding:var(--space-3)}.dashboard-grid{grid-template-columns:1fr}.dashboard-header{text-align:left;margin-bottom:var(--space-6)}.dashboard-title{font-size:var(--text-2xl)}.booking-card{padding:var(--space-3)}.booking-actions{flex-direction:column}.booking-actions .btn{width:100%}.action-buttons{flex-direction:column}.action-buttons .btn{width:100%}}@media (max-width: 480px){.dashboard-grid{gap:var(--space-4)}.dashboard-section{padding:var(--space-4)}.booking-header{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.detail-row{flex-direction:column;gap:0}.detail-label{font-size:var(--text-sm)}}@keyframes pulse{0%{opacity:.6}to{opacity:1}}.pulse-animation{animation:pulse 1.5s ease-in-out infinite alternate}.app{font-family:Arial,sans-serif;max-width:500px;margin:0 auto;padding:20px;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.app.management-mode{max-width:none;width:100%;justify-content:flex-start;padding:0}@media (min-width: 1200px){.app.management-mode{max-width:1600px;margin:0 auto}}@media (min-width: 992px) and (max-width: 1199px){.app.management-mode{max-width:1200px;margin:0 auto}}@media (min-width: 768px) and (max-width: 991px){.app.management-mode{max-width:1000px;margin:0 auto}}@media (max-width: 768px){.app{padding:16px;max-width:90%}}@media (max-width: 480px){.app{padding:12px;max-width:95%}}.header{text-align:center;margin-bottom:30px}.header h1{font-size:2rem;margin-bottom:8px;color:#333}.header p{color:#666;font-size:1.1rem}@media (max-width: 768px){.header{margin-bottom:24px}.header h1{font-size:1.7rem}.header p{font-size:1rem}}@media (max-width: 480px){.header{margin-bottom:20px}.header h1{font-size:1.5rem}.header p{font-size:.9rem}}.main{border:1px solid #ddd;padding:24px;border-radius:8px;background-color:#fff;box-shadow:0 4px 6px #0000001a}@media (max-width: 768px){.main{padding:20px;border-radius:6px}}@media (max-width: 480px){.main{padding:16px;border-radius:4px;border:none;box-shadow:0 2px 4px #0000001a}}.login-form{max-width:400px;margin:0 auto}.form-group{margin-bottom:20px}@media (max-width: 480px){.form-group{margin-bottom:18px}}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333;font-size:.95rem}@media (max-width: 480px){.form-group label{font-size:1rem;margin-bottom:6px}}.form-group input{width:100%;padding:12px;border:2px solid #ddd;border-radius:6px;font-size:1rem;box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}@media (max-width: 480px){.form-group input{padding:14px;font-size:16px;border-radius:4px}}.form-button{background-color:#007bff;color:#fff;border:none;padding:12px 24px;cursor:pointer;border-radius:6px;font-size:1rem;font-weight:600;width:100%;transition:background-color .2s ease,transform .1s ease;margin-top:8px}@media (max-width: 480px){.form-button{padding:16px 24px;font-size:1.1rem;border-radius:4px}}.form-button:hover{background-color:#0056b3;transform:translateY(-1px)}.form-button:active{transform:translateY(0)}.form-button:disabled{background-color:#6c757d;cursor:not-allowed;transform:none}.error{color:#dc3545;background-color:#f8d7da;border:1px solid #f5c6cb;padding:12px;border-radius:6px;margin-bottom:20px;font-size:.9rem;text-align:center}@media (max-width: 480px){.error{padding:10px;border-radius:4px;font-size:.95rem}}.gym-manage-main{max-width:none;overflow:hidden;width:100%}@media (min-width: 768px){.gym-manage-main{padding:20px}}@media (max-width: 767px){.gym-manage-main{padding:16px}}.tab-navigation{display:flex;border-bottom:2px solid #dee2e6;gap:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.tab-navigation::-webkit-scrollbar{display:none}@media (min-width: 480px){.tab-navigation{margin-bottom:20px}}@media (max-width: 479px){.tab-navigation{margin-bottom:16px}}.tab-button{background-color:transparent;color:#007bff;border-top:1px solid transparent;border-left:1px solid transparent;border-right:1px solid transparent;border-bottom:none;cursor:pointer;font-weight:400;margin-bottom:-2px;white-space:nowrap;flex-shrink:0;transition:all .2s ease;min-height:44px;display:flex;align-items:center;justify-content:center;width:auto;margin-top:0}.tab-button.active{background-color:#007bff;color:#fff;border-top:1px solid #007bff;border-left:1px solid #007bff;border-right:1px solid #007bff;font-weight:700}@media (min-width: 480px){.tab-button{padding:12px 24px;border-radius:4px 4px 0 0;font-size:14px}}@media (max-width: 479px){.tab-button{padding:12px 16px;border-radius:6px 6px 0 0;font-size:13px;min-width:80px}}.tab-button:hover{background-color:#0056b3;transform:none}.tab-button.active:hover{background-color:#007bff}.section-header{margin-bottom:20px}@media (min-width: 480px){.section-header{font-size:1.5rem}}@media (max-width: 479px){.section-header{font-size:1.3rem;margin-bottom:16px}}.gym-info-section{background-color:#f8f9fa;margin-bottom:20px}@media (min-width: 480px){.gym-info-section{padding:20px;border-radius:4px}}@media (max-width: 479px){.gym-info-section{padding:16px;border-radius:6px;margin-bottom:16px}}.gym-info-header{margin-bottom:12px}@media (min-width: 480px){.gym-info-header{font-size:1.2rem}}@media (max-width: 479px){.gym-info-header{font-size:1.1rem}}.gym-info-grid{display:grid}@media (min-width: 768px){.gym-info-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}}@media (max-width: 767px){.gym-info-grid{grid-template-columns:1fr}}@media (max-width: 479px){.gym-info-grid{gap:12px}}@media (min-width: 480px) and (max-width: 767px){.gym-info-grid{gap:15px}}.gym-info-item{margin-bottom:8px;line-height:1.4}@media (min-width: 480px){.gym-info-item{font-size:16px}}@media (max-width: 479px){.gym-info-item{font-size:14px}}.gym-url-section{margin-top:15px;line-height:1.4}@media (min-width: 480px){.gym-url-section{font-size:16px}}@media (max-width: 479px){.gym-url-section{font-size:14px}}.gym-url-link{word-break:break-all;color:#007bff}.gym-address{line-height:1.4;margin-bottom:8px}@media (min-width: 480px){.gym-address{font-size:16px}}@media (max-width: 479px){.gym-address{font-size:14px}}.owner-account-section{margin-bottom:20px;padding:20px;background-color:#e9ecef;border-radius:4px}.quick-actions-section{margin-bottom:20px}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-top:15px}.quick-action-button{padding:15px;border:none;border-radius:4px;cursor:pointer;font-size:14px;text-align:center;width:auto;margin-top:0}.quick-action-button.primary{background-color:#007bff;color:#fff}.quick-action-button.success{background-color:#28a745;color:#fff}.quick-action-button.primary:hover{background-color:#0056b3}.quick-action-button.success:hover{background-color:#218838}.logout-section{text-align:center;margin-top:30px}.logout-button{padding:12px 24px;background-color:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:16px;width:auto;margin-top:0}.logout-button:hover{background-color:#c82333}.settings-coming-soon{padding:20px;background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;margin-top:20px}.settings-feature-list{margin-top:15px;padding-left:20px}.signup-center-text{text-align:center;margin-top:20px}.signup-description{margin-bottom:20px;color:#666;font-size:14px}.link-container{text-align:center;margin-top:20px}.primary-link{color:#007bff;text-decoration:underline}.text-button{background:none;border:none;color:#007bff;text-decoration:underline;cursor:pointer;font-size:inherit}.text-button:disabled{background:none;cursor:not-allowed;opacity:.6}.text-button:hover:not(:disabled){background:none;transform:none;text-decoration:underline}.success{color:green;text-align:center}.form-radio-group{margin-top:10px}.form-radio-label{display:block;margin-bottom:10px;font-size:14px}.form-radio-label input[type=radio]{margin-right:8px}.form-input-hint{display:block;margin-top:5px;color:#666}.form-input-hint.small{font-size:.875rem}.form-group input.input-valid{border-color:green}.form-group input.input-invalid{border-color:red}.form-status{display:block;margin-top:5px}.form-status.checking{color:#007bff}.form-status.available{color:green}.form-status.unavailable{color:red}.link-divider{margin:0 10px}.text-muted{color:#666}.mb-20{margin-bottom:20px}.pulse-animation{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.loading-title-placeholder{background-color:#e5e7eb;height:2rem;width:200px;border-radius:4px;margin:0 auto}.loading-form-placeholder-large{background-color:#e5e7eb;height:3rem;width:100%;border-radius:4px;margin-bottom:20px}.loading-form-placeholder-small{background-color:#e5e7eb;height:2rem;width:80%;border-radius:4px;margin:0 auto}.client-management-container{padding:16px;max-width:100%;overflow:hidden;width:100%;box-sizing:border-box}@media (min-width: 1200px){.client-management-container{max-width:1400px;margin:0 auto}}@media (min-width: 992px) and (max-width: 1199px){.client-management-container{max-width:1100px;margin:0 auto}}@media (min-width: 768px) and (max-width: 991px){.client-management-container{max-width:900px;margin:0 auto}}@media (max-width: 480px){.client-management-container{padding:8px}}.client-management-header,.search-section{margin-bottom:20px}.search-header{display:flex;align-items:center;gap:15px;margin-bottom:15px;flex-wrap:wrap}@media (max-width: 768px){.search-header{flex-direction:column;align-items:flex-start;gap:10px}}@media (max-width: 480px){.search-header{gap:8px}}.search-mode-title{margin:0}.search-mode-title.quick{color:#28a745}.search-mode-title.advanced{color:#17a2b8}.switch-mode-btn{padding:8px 16px;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:700;transition:background-color .2s;white-space:nowrap}@media (max-width: 480px){.switch-mode-btn{padding:6px 12px;font-size:12px}}.switch-mode-btn.loading{background-color:#6c757d;cursor:not-allowed}.switch-mode-btn.to-advanced{background-color:#17a2b8}.switch-mode-btn.to-quick{background-color:#28a745}.switch-mode-btn:hover:not(.loading){opacity:.9}.search-mode-toggle{display:flex;gap:0;border-radius:var(--border-radius);overflow:hidden;box-shadow:0 1px 3px #0000001a}.mode-btn{padding:8px 16px;font-size:14px;font-weight:500;border:none;background-color:#f8f9fa;color:#495057;cursor:pointer;transition:all .2s ease;position:relative}.mode-btn:first-child{border-radius:var(--border-radius) 0 0 var(--border-radius)}.mode-btn:last-child{border-radius:0 var(--border-radius) var(--border-radius) 0}.mode-btn:not(:last-child){border-right:1px solid #dee2e6}.mode-btn:hover:not(:disabled){background-color:#e9ecef}.mode-btn.active{background-color:var(--color-primary);color:#fff;cursor:default;font-weight:600}.mode-btn.loading{background-color:#6c757d;color:#fff;cursor:not-allowed}.mode-btn:disabled:not(.active){opacity:.6;cursor:not-allowed}.cache-info{font-size:12px;color:#666}.search-input-container{position:relative;width:100%;max-width:min(500px,100vw - 32px)}@media (min-width: 1200px){.search-input-container{max-width:800px}}@media (min-width: 992px) and (max-width: 1199px){.search-input-container{max-width:700px}}@media (min-width: 768px) and (max-width: 991px){.search-input-container{max-width:600px}}.search-input{width:100%;padding:12px 40px 12px 12px;font-size:14px;border:2px solid;border-radius:4px;box-sizing:border-box;outline:none;min-width:0}.search-input.quick{border-color:#28a745}.search-input.advanced{border-color:#17a2b8}.search-input:focus{box-shadow:0 0 0 3px #007bff1a}.search-clear-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:16px;cursor:pointer;color:#666;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:50%;width:24px;height:24px;transition:all .2s;line-height:1;margin:0}.search-clear-btn:hover{background-color:#f0f0f0;color:#333}.search-loading{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:12px;color:#666}.search-results-summary{margin-top:10px;font-size:14px;color:#666}.error-banner{background-color:#f8d7da;color:#721c24;padding:12px;border-radius:4px;margin-bottom:20px}.role-filter-grid{display:grid;gap:10px;margin-bottom:20px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}@media (max-width: 768px){.role-filter-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}@media (max-width: 480px){.role-filter-grid{grid-template-columns:1fr 1fr;gap:8px}}.role-filter-btn{padding:12px;border-radius:4px;text-align:center;border:2px solid #e9ecef;cursor:pointer;font-size:14px;min-height:64px;transition:all .2s ease;background-color:#f8f9fa;color:#333}.role-filter-btn.all.active{background-color:#007bff;color:#fff;border-color:#007bff;box-shadow:0 2px 4px #007bff4d}.role-filter-btn.trainer.active{background-color:#28a745;color:#fff;border-color:#28a745;box-shadow:0 2px 4px #28a7454d}.role-filter-btn.admin.active{background-color:#dc3545;color:#fff;border-color:#dc3545;box-shadow:0 2px 4px #dc35454d}.role-filter-btn.member.active{background-color:#6c757d;color:#fff;border-color:#6c757d;box-shadow:0 2px 4px #6c757d4d}.role-filter-btn:not(.active){box-shadow:0 1px 2px #0000001a}@media (max-width: 480px){.role-filter-btn{padding:14px 8px;border-radius:6px;font-size:13px}}.role-count{font-size:24px;font-weight:700;line-height:1.1;margin-bottom:4px}.role-label{font-size:12px;opacity:.8;line-height:1.2}@media (max-width: 480px){.role-count{font-size:20px}.role-label{font-size:10px}}.results-summary{margin-bottom:15px;font-size:14px;color:#666;display:flex;justify-content:space-between;align-items:center}@media (max-width: 480px){.results-summary{font-size:13px;flex-direction:column;align-items:flex-start;gap:4px}}.results-info{line-height:1.3}.filter-info{font-size:11px;color:#888}.page-info{font-size:12px;color:#888}@media (max-width: 480px){.page-info{font-size:11px;align-self:flex-end}}.no-results{text-align:center;padding:40px;background-color:#f8f9fa;border-radius:4px;color:#666}.desktop-view{background-color:#fff;border:1px solid #ddd;border-radius:4px;overflow:auto;display:block;width:100%;max-width:100%}.client-table{width:100%;border-collapse:collapse;min-width:700px;table-layout:fixed}.client-table th:nth-child(1),.client-table td:nth-child(1){width:25%}.client-table th:nth-child(2),.client-table td:nth-child(2){width:25%}.client-table th:nth-child(3),.client-table td:nth-child(3){width:12%}.client-table th:nth-child(4),.client-table td:nth-child(4){width:18%}.client-table th:nth-child(5),.client-table td:nth-child(5){width:10%}.client-table th:nth-child(6),.client-table td:nth-child(6){width:10%}.client-table thead{background-color:#f8f9fa}.client-table th,.client-table td{padding:12px;text-align:left;border-bottom:1px solid #ddd;word-wrap:break-word;overflow-wrap:break-word;max-width:0;white-space:normal}.client-table th{border-bottom:1px solid #ddd}.client-table tbody tr{border-bottom:1px solid #eee}.client-table tbody tr:nth-child(2n){background-color:#f9f9f9}.client-name{font-weight:700}.client-address{font-size:12px;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.client-email{font-size:14px;word-break:break-all;overflow-wrap:break-word}.client-phone{font-size:14px}.role-badge{color:#fff;padding:4px 8px;border-radius:12px;font-size:11px;text-transform:uppercase;font-weight:700}.role-badge.admin{background-color:#dc3545}.role-badge.trainer{background-color:#28a745}.role-badge.member{background-color:#007bff}.status-badge{font-weight:700;font-size:12px;text-transform:uppercase}.status-badge.active{color:#28a745}.status-badge.inactive{color:#dc3545}.action-buttons{display:flex;gap:4px;justify-content:center;flex-wrap:wrap;min-width:fit-content}.action-btn{padding:6px 10px;font-size:11px;color:#fff;border:none;border-radius:3px;cursor:pointer}.action-btn.view{background-color:#007bff}.action-btn.edit{background-color:#28a745}.action-btn.delete{background-color:#dc3545}.mobile-view{display:none;grid-template-columns:1fr;gap:16px}.client-card{background-color:#fff;border:1px solid #ddd;border-radius:8px;padding:16px;margin-bottom:12px;box-shadow:0 2px 4px #0000001a;transition:all .2s ease;height:fit-content}.client-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}@media (min-width: 768px){.client-card{padding:20px;margin-bottom:0}}.client-card-header{margin-bottom:12px}.client-card-name{font-size:16px;font-weight:700;margin-bottom:4px;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:8px}.client-card-details{font-size:14px;color:#666;margin-bottom:8px}.client-card-address{font-size:13px;color:#666;margin-bottom:8px}.client-card-status{font-size:12px;font-weight:700;text-transform:uppercase}.client-card-actions{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid #eee;padding-top:12px}.mobile-action-btn{flex:1;min-width:80px;padding:10px 16px;font-size:14px;color:#fff;border:none;border-radius:6px;cursor:pointer;text-align:center}.mobile-action-btn.view{background-color:#007bff}.mobile-action-btn.edit{background-color:#28a745}.mobile-action-btn.delete{background-color:#dc3545}.pagination{margin-top:20px;display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}.modal-close{background:none;border:none;font-size:20px;cursor:pointer;color:#666}.modal-field strong{margin-right:8px}.role-filter-btn.admin{background-color:#f8f9fa;color:#333;padding:12px;border-radius:4px;text-align:center;border:2px solid #e9ecef;cursor:pointer;font-size:14px;min-height:64px;transition:all .2s ease;transform:scale(1);box-shadow:0 1px 2px #0000001a}.role-filter-btn.admin.active{background-color:#dc3545;color:#fff;border-color:#dc3545;transform:scale(.98);box-shadow:0 2px 4px #dc35454d}.role-filter-btn.admin .role-count{font-size:24px;font-weight:700;line-height:1.1;margin-bottom:4px}.role-filter-btn.admin .role-label{font-size:12px;opacity:.8;line-height:1.2}.role-filter-btn.member{background-color:#f8f9fa;color:#333;padding:12px;border-radius:4px;text-align:center;border:2px solid #e9ecef;cursor:pointer;font-size:14px;min-height:64px;transition:all .2s ease;transform:scale(1);box-shadow:0 1px 2px #0000001a}.role-filter-btn.member.active{background-color:#6c757d;color:#fff;border-color:#6c757d;transform:scale(.98);box-shadow:0 2px 4px #6c757d4d}.role-filter-btn.member .role-count{font-size:24px;font-weight:700;line-height:1.1;margin-bottom:4px}.role-filter-btn.member .role-label{font-size:12px;opacity:.8;line-height:1.2}@media (max-width: 480px){.role-filter-btn.admin,.role-filter-btn.member{padding:14px 8px;border-radius:6px;font-size:13px}.role-filter-btn.admin .role-count,.role-filter-btn.member .role-count{font-size:20px}.role-filter-btn.admin .role-label,.role-filter-btn.member .role-label{font-size:10px}}.results-summary-container{margin-bottom:15px;font-size:14px;color:#666;display:flex;justify-content:space-between;align-items:center;flex-direction:row;gap:0}.results-summary-main{line-height:1.3}.results-summary-filter{font-size:11px;color:#888}.results-summary-page{font-size:12px;color:#888}@media (max-width: 480px){.results-summary-container{font-size:13px;flex-direction:column;align-items:flex-start;gap:4px}.results-summary-page{font-size:11px;align-self:flex-end}}.no-results-message{text-align:center;padding:40px;background-color:#f8f9fa;border-radius:4px;color:#666}.desktop-table{width:100%;border-collapse:collapse;min-width:700px}.desktop-table-header{background-color:#f8f9fa}.desktop-table-th{padding:12px;text-align:left;border-bottom:1px solid #ddd}.desktop-table-row{border-bottom:1px solid #eee}.desktop-table-row:nth-child(2n){background-color:#f9f9f9}.desktop-table-row:nth-child(odd){background-color:#fff}.desktop-table-td{padding:12px}.desktop-table-name{font-weight:700}.desktop-table-address{font-size:12px;color:#666}.desktop-table-email,.desktop-table-phone{font-size:14px}.desktop-table-actions{text-align:center}.desktop-table-actions-container{display:flex;gap:4px;justify-content:center;flex-wrap:wrap}.desktop-action-btn{padding:6px 10px;font-size:11px;color:#fff;border:none;border-radius:3px;cursor:pointer}.desktop-action-btn.view{background-color:#007bff}.desktop-action-btn.edit{background-color:#28a745}.desktop-action-btn.delete{background-color:#dc3545}.mobile-card{background-color:#fff;border:1px solid #ddd;border-radius:8px;padding:16px;margin-bottom:12px;box-shadow:0 2px 4px #0000001a}.mobile-card-header{margin-bottom:12px}.mobile-card-name-container{font-size:16px;font-weight:700;margin-bottom:4px;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:8px}.mobile-card-email,.mobile-card-phone{font-size:14px;color:#666;margin-bottom:8px}.mobile-card-address{font-size:13px;color:#666;margin-bottom:8px}.mobile-card-status{font-size:12px;font-weight:700;text-transform:uppercase}.mobile-card-status.active{color:#28a745}.mobile-card-status.inactive{color:#dc3545}.mobile-card-actions{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid #eee;padding-top:12px}.pagination-container{margin-top:20px;display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}.pagination-btn{padding:8px 12px;font-size:14px;border:1px solid #ddd;border-radius:4px;cursor:pointer}.pagination-btn.active{background-color:#007bff;color:#fff}.pagination-btn.disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}.pagination-info{padding:8px 16px;font-size:14px;color:#666;background-color:#f8f9fa;border:1px solid #ddd;border-radius:4px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background-color:#fff;padding:20px;border-radius:8px;max-width:500px;width:95%;max-height:90vh;overflow:auto;margin:10px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-title{margin:0}.modal-close-btn{background:none;border:none;font-size:20px;cursor:pointer;color:#666}.modal-body{font-size:14px;line-height:1.6}.modal-field{margin-bottom:15px}.modal-field-label{font-weight:700;margin-right:8px}.modal-field-status{font-weight:700;margin-left:8px}.modal-field-status.active{color:#28a745}.modal-field-status.inactive{color:#dc3545}@media (min-width: 1200px){.desktop-view{display:block!important}.mobile-view{display:none!important}}@media (max-width: 1199px){.desktop-view{display:none!important}.mobile-view{display:block!important}}.form-grid-3col{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}@media (max-width: 768px){.form-grid-3col{grid-template-columns:1fr}}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid #eee}.btn{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover:not(:disabled){background-color:#0056b3}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background-color:#545b62}.desktop-action-btn.status,.mobile-action-btn.status{background-color:#17a2b8;color:#fff}.desktop-action-btn.status:hover,.mobile-action-btn.status:hover{background-color:#138496}.status-options{display:flex;flex-direction:column;gap:20px;margin:20px 0}.status-option{padding:15px;border:1px solid #e9ecef;border-radius:8px;background-color:#f8f9fa}.status-option button{width:100%;margin-bottom:10px}.status-description{margin:0;font-size:14px;color:#6c757d;text-align:center}.modal-info{margin-top:20px;padding:15px;background-color:#f8f9fa;border-radius:8px;text-align:center}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:14px;font-weight:500;text-transform:capitalize}.status-badge.active{background-color:#d4edda;color:#155724}.status-badge.paused{background-color:#fff3cd;color:#856404}.status-badge.blocked{background-color:#f8d7da;color:#721c24}.btn-warning{background-color:#ffc107;color:#212529;border:none}.btn-warning:hover:not(:disabled){background-color:#e0a800}.btn-success{background-color:#28a745;color:#fff;border:none}.btn-success:hover:not(:disabled){background-color:#218838}.btn-danger{background-color:#dc3545;color:#fff;border:none}.btn-danger:hover:not(:disabled){background-color:#c82333}.delete-warning{padding:20px;text-align:center}.delete-warning p{margin:10px 0}.warning-text{color:#dc3545;font-weight:500;margin-top:20px!important}.modal-content{position:relative}.modal-close{position:absolute;top:var(--space-3);right:var(--space-3);z-index:10}.role-badge-modal{font-size:10px;padding:2px 6px;border-radius:8px;margin-left:8px}.mobile-card-status{margin-top:8px;font-size:14px;font-weight:500}.mobile-card-status.active{color:#155724}.mobile-card-status.paused{color:#856404}.mobile-card-status.blocked{color:#721c24}:root{--color-primary: #007bff;--color-primary-hover: #0056b3;--color-primary-light: rgba(0, 123, 255, .1);--color-success: #28a745;--color-success-light: rgba(40, 167, 69, .1);--color-success-dark: #1e7e34;--color-danger: #dc3545;--color-danger-light: rgba(220, 53, 69, .1);--color-danger-dark: #bd2130;--color-warning: #ffc107;--color-warning-light: rgba(255, 193, 7, .1);--color-warning-dark: #d39e00;--color-info: #17a2b8;--color-white: #ffffff;--color-gray-50: #f8f9fa;--color-gray-100: #e9ecef;--color-gray-200: #dee2e6;--color-gray-300: #ddd;--color-gray-400: #6c757d;--color-gray-500: #666;--color-gray-600: #333;--color-gray-700: #343a40;--color-gray-800: #212529;--color-gray-900: #000000;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--text-xs: 11px;--text-sm: 12px;--text-base: 14px;--text-md: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 32px;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-none: 1;--leading-tight: 1.1;--leading-snug: 1.2;--leading-normal: 1.4;--leading-relaxed: 1.6;--border-radius-sm: 3px;--border-radius: 4px;--border-radius-md: 6px;--border-radius-lg: 8px;--border-radius-xl: 12px;--border-radius-full: 50%;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .1);--shadow: 0 2px 4px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 8px rgba(0, 0, 0, .15);--shadow-focus: 0 0 0 3px var(--color-primary-light);--breakpoint-sm: 480px;--breakpoint-md: 768px;--breakpoint-lg: 1200px;--breakpoint-xl: 1600px;--transition-fast: .1s ease;--transition: .2s ease;--transition-slow: .3s ease;--z-dropdown: 100;--z-modal: 1000;--z-tooltip: 2000}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-gray-600);background-color:var(--color-white)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-5{margin:var(--space-5)}.m-6{margin:var(--space-6)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.mb-6{margin-bottom:var(--space-6)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-md{font-size:var(--text-md)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-primary{color:var(--color-primary)}.text-success{color:var(--color-success)}.text-danger{color:var(--color-danger)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-white{background-color:var(--color-white)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.w-full{width:100%}.h-full{height:100%}.rounded{border-radius:var(--border-radius)}.rounded-md{border-radius:var(--border-radius-md)}.rounded-lg{border-radius:var(--border-radius-lg)}.rounded-full{border-radius:var(--border-radius-full)}.shadow{box-shadow:var(--shadow)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-4);font-size:var(--text-base);font-weight:var(--font-medium);line-height:var(--leading-none);border:none;border-radius:var(--border-radius);cursor:pointer;transition:all var(--transition);text-decoration:none;-webkit-user-select:none;user-select:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);color:var(--color-white)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.btn-success{background-color:var(--color-success);color:var(--color-white)}.btn-danger{background-color:var(--color-danger);color:var(--color-white)}.btn-secondary{background-color:var(--color-gray-100);color:var(--color-gray-600)}.btn-ghost{background-color:transparent;color:var(--color-gray-600);border:1px solid var(--color-gray-300)}.btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.btn-lg{padding:var(--space-4) var(--space-6);font-size:var(--text-md)}.input{width:100%;padding:var(--space-3);font-size:var(--text-base);border:2px solid var(--color-gray-300);border-radius:var(--border-radius);transition:border-color var(--transition)}.input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.input-error{border-color:var(--color-danger)}.card{background-color:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--border-radius-lg);padding:var(--space-4);box-shadow:var(--shadow)}.modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal)}.modal-content{background-color:var(--color-white);border-radius:var(--border-radius-lg);padding:var(--space-6);max-width:500px;width:95%;max-height:90vh;overflow:auto}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;border-radius:var(--border-radius-xl);color:var(--color-white)}.badge-primary{background-color:var(--color-primary)}.badge-success{background-color:var(--color-success)}.badge-danger{background-color:var(--color-danger)}.badge-secondary{background-color:var(--color-gray-400)}@media (max-width: 480px){.sm\:hidden{display:none}.sm\:block{display:block}.sm\:text-sm{font-size:var(--text-sm)}.sm\:p-3{padding:var(--space-3)}}@media (min-width: 768px){.md\:hidden{display:none}.md\:block{display:block}.md\:flex{display:flex}.md\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.md\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.md\:p-6{padding:var(--space-6)}}@media (min-width: 1200px){.lg\:hidden{display:none}.lg\:block{display:block}.lg\:grid-cols-4{grid-template-columns:repeat(4,1fr)}.lg\:max-w-6xl{max-width:1200px}}.form-container{max-width:500px;margin:0 auto;padding:var(--space-5)}.form-group{margin-bottom:var(--space-5)}.form-label{display:block;margin-bottom:var(--space-2);font-weight:var(--font-semibold);color:var(--color-gray-600);font-size:var(--text-base)}.form-input{width:100%;padding:var(--space-3);border:2px solid var(--color-gray-300);border-radius:var(--border-radius);font-size:var(--text-base);transition:border-color var(--transition)}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.form-input.error{border-color:var(--color-danger)}.form-input.success{border-color:var(--color-success)}.form-hint{font-size:var(--text-sm);color:var(--color-gray-500);margin-top:var(--space-1)}.btn-form{width:100%;padding:var(--space-3) var(--space-6);background-color:var(--color-primary);color:var(--color-white);border:none;border-radius:var(--border-radius);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:background-color var(--transition);margin-top:var(--space-2)}.btn-form:hover:not(:disabled){background-color:var(--color-primary-hover)}.btn-form:disabled{background-color:var(--color-gray-400);cursor:not-allowed}.btn-text{background:none;border:none;color:var(--color-primary);cursor:pointer;text-decoration:underline;font-size:inherit;font-family:inherit;padding:0}.btn-text:hover{color:var(--color-primary-hover)}.btn-text:disabled{color:var(--color-gray-400);cursor:not-allowed}.role-filter-grid{display:grid;gap:var(--space-3);margin-bottom:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.role-filter-btn{padding:var(--space-3);border-radius:var(--border-radius);text-align:center;border:2px solid var(--color-gray-200);cursor:pointer;font-size:var(--text-base);min-height:64px;transition:all var(--transition);background-color:var(--color-gray-50);color:var(--color-gray-600);display:flex;flex-direction:column;align-items:center;justify-content:center}.role-filter-btn.active{transform:scale(.98)}.role-filter-btn.all.active{background-color:var(--color-primary);color:var(--color-white);border-color:var(--color-primary);box-shadow:var(--shadow-md)}.role-filter-btn.trainer.active{background-color:var(--color-success);color:var(--color-white);border-color:var(--color-success);box-shadow:var(--shadow-md)}.role-filter-btn.admin.active{background-color:var(--color-danger);color:var(--color-white);border-color:var(--color-danger);box-shadow:var(--shadow-md)}.role-filter-btn.member.active{background-color:var(--color-gray-400);color:var(--color-white);border-color:var(--color-gray-400);box-shadow:var(--shadow-md)}.role-count{font-size:var(--text-2xl);font-weight:var(--font-bold);line-height:var(--leading-tight);margin-bottom:var(--space-1)}.role-label{font-size:var(--text-xs);opacity:.8;line-height:var(--leading-snug)}.search-container{position:relative;width:100%;max-width:500px}.search-input{width:100%;padding:var(--space-3) var(--space-10) var(--space-3) var(--space-3);font-size:var(--text-base);border:2px solid var(--color-gray-300);border-radius:var(--border-radius);transition:border-color var(--transition)}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.search-input.quick{border-color:var(--color-success)}.search-input.advanced{border-color:var(--color-info)}.search-clear-btn{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);background:none;border:none;font-size:var(--text-md);cursor:pointer;color:var(--color-gray-500);padding:var(--space-1);display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-full);width:24px;height:24px;transition:all var(--transition);line-height:var(--leading-none);margin:0}.search-clear-btn:hover{background-color:var(--color-gray-100);color:var(--color-gray-600)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal)}.modal-content{background-color:var(--color-white);padding:var(--space-5);border-radius:var(--border-radius-lg);max-width:500px;width:95%;max-height:90vh;overflow:auto;margin:var(--space-3);box-shadow:var(--shadow-lg)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-5)}.modal-title{margin:0;font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-gray-600)}.modal-close{background:none;border:none;font-size:var(--text-xl);cursor:pointer;color:var(--color-gray-500);padding:var(--space-1);border-radius:var(--border-radius);transition:background-color var(--transition)}.modal-close:hover{background-color:var(--color-gray-100)}.modal-body{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--color-gray-600)}.modal-field{margin-bottom:var(--space-4)}.modal-field-label{font-weight:var(--font-semibold);margin-right:var(--space-2);color:var(--color-gray-600)}.pagination{margin-top:var(--space-5);display:flex;justify-content:center;align-items:center;gap:var(--space-2);flex-wrap:wrap}.pagination-btn{padding:var(--space-2) var(--space-3);font-size:var(--text-base);border:1px solid var(--color-gray-300);border-radius:var(--border-radius);cursor:pointer;background-color:var(--color-white);color:var(--color-gray-600);transition:all var(--transition)}.pagination-btn:hover:not(:disabled){background-color:var(--color-gray-50)}.pagination-btn.active{background-color:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.pagination-btn:disabled{background-color:var(--color-gray-100);color:var(--color-gray-400);cursor:not-allowed}.pagination-info{padding:var(--space-2) var(--space-4);font-size:var(--text-base);color:var(--color-gray-500);background-color:var(--color-gray-50);border:1px solid var(--color-gray-300);border-radius:var(--border-radius)}.table-container{background-color:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--border-radius);overflow:auto;width:100%;box-shadow:var(--shadow)}.table{width:100%;border-collapse:collapse;min-width:700px}.table thead{background-color:var(--color-gray-50)}.table th,.table td{padding:var(--space-3);text-align:left;border-bottom:1px solid var(--color-gray-200)}.table th{font-weight:var(--font-semibold);color:var(--color-gray-600);font-size:var(--text-base)}.table tbody tr:nth-child(2n){background-color:var(--color-gray-50)}.table tbody tr:hover{background-color:var(--color-gray-100)}.card-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.client-card{background-color:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--border-radius-lg);padding:var(--space-4);box-shadow:var(--shadow);transition:all var(--transition)}.client-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.client-card-header{margin-bottom:var(--space-3)}.client-card-name{font-size:var(--text-md);font-weight:var(--font-semibold);margin-bottom:var(--space-1);color:var(--color-gray-600)}.client-card-email{font-size:var(--text-base);color:var(--color-gray-500);margin-bottom:var(--space-2)}.client-card-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;border-top:1px solid var(--color-gray-200);padding-top:var(--space-3)}.status-badge{font-weight:var(--font-semibold);font-size:var(--text-sm);text-transform:uppercase;padding:var(--space-1) var(--space-2);border-radius:var(--border-radius)}.status-badge.active{color:var(--color-success);background-color:#28a7451a}.status-badge.inactive{color:var(--color-danger);background-color:#dc35451a}.role-badge{color:var(--color-white);padding:var(--space-1) var(--space-2);border-radius:var(--border-radius-xl);font-size:var(--text-xs);text-transform:uppercase;font-weight:var(--font-bold)}.role-badge.admin{background-color:var(--color-danger)}.role-badge.trainer{background-color:var(--color-success)}.role-badge.member{background-color:var(--color-primary)}.error-banner{background-color:#f8d7da;color:#721c24;padding:var(--space-3);border-radius:var(--border-radius);margin-bottom:var(--space-5);border:1px solid #f5c6cb}.success-message{background-color:#d4edda;color:#155724;padding:var(--space-3);border-radius:var(--border-radius);margin-bottom:var(--space-5);border:1px solid #c3e6cb}.info-message{background-color:#d1ecf1;color:#0c5460;padding:var(--space-3);border-radius:var(--border-radius);margin-bottom:var(--space-5);border:1px solid #bee5eb}@media (max-width: 480px){.role-filter-grid{grid-template-columns:1fr 1fr;gap:var(--space-2)}.role-filter-btn{padding:var(--space-4) var(--space-2);font-size:var(--text-sm)}.role-count{font-size:var(--text-xl)}.role-label{font-size:10px}.pagination{gap:var(--space-1)}.pagination-btn{padding:var(--space-2);font-size:var(--text-sm)}.client-card-actions{flex-direction:column}.form-container{padding:var(--space-3)}}@media (min-width: 768px){.client-card{padding:var(--space-5)}.search-container{max-width:600px}}@media (min-width: 1200px){.search-container{max-width:800px}.card-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));max-width:1400px}}*{box-sizing:border-box}html,body{overflow-x:hidden;width:100%;margin:0;padding:0}*,*:before,*:after{max-width:100%}#root{overflow-x:hidden;width:100%}.app-container{font-family:Arial,sans-serif;min-height:100vh;display:flex;flex-direction:column;width:100%}.main-content{flex:1;overflow-x:hidden;width:100%;max-width:1200px;margin:0 auto;padding:var(--space-5)}@media (max-width: 768px){.main-content{padding:var(--space-4)}}@media (max-width: 480px){.main-content{padding:var(--space-3)}}.error-banner{background-color:#f8d7da;color:#721c24;padding:12px;margin:12px 0;border:1px solid #f5c6cb;border-radius:6px;text-align:center;font-size:14px}.error-banner strong{margin-right:5px}@media (max-width: 768px){.error-banner{padding:10px;margin:10px 0;border-radius:4px;font-size:13px}}.container{max-width:1200px;margin:0 auto;padding:0 16px}.container-fluid{width:100%;padding:0 16px}@media (max-width: 768px){.container,.container-fluid{padding:0 12px}}@media (max-width: 480px){.container,.container-fluid{padding:0 8px}}.text-responsive{font-size:clamp(.875rem,2.5vw,1rem)}.heading-responsive{font-size:clamp(1.25rem,4vw,2rem)}.p-responsive{padding:clamp(8px,2vw,20px)}.m-responsive{margin:clamp(8px,2vw,20px)}.btn-responsive{padding:clamp(10px,2vw,16px) clamp(16px,3vw,24px);font-size:clamp(14px,2.5vw,16px);border-radius:clamp(4px,1vw,6px);min-height:44px}.grid-responsive{display:grid;gap:clamp(8px,2vw,16px);grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}@media (max-width: 768px){.grid-responsive{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media (max-width: 480px){.grid-responsive{grid-template-columns:1fr}}.error-page-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:20px;text-align:center;max-width:400px;margin:0 auto}.error-page-heading{font-size:2rem;margin-bottom:16px}@media (max-width: 480px){.error-page-heading{font-size:1.5rem}}.error-page-text{font-size:16px;margin-bottom:12px}.error-page-text-last{font-size:16px;margin-bottom:20px}.error-page-link{margin-top:20px;padding:12px 24px;background-color:#007bff;color:#fff;text-decoration:none;border-radius:6px;font-size:16px;display:inline-block;min-width:120px;text-align:center}.error-page-link:hover{background-color:#0056b3}.error-page-button{margin-top:20px;padding:12px 24px;background-color:#dc3545;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:16px;min-width:120px}.error-page-button:hover{background-color:#c82333}
