:root{--primary-color: #285261;--primary-dark: #1e3d47;--primary-light: #3a6b7a;--text-primary: #213547;--text-secondary: #666666;--text-light: #888888;--background: #ffffff;--background-alt: #f8f9fa;--border-color: #e0e0e0;--success: #28a745;--warning: #ffc107;--error: #dc3545;--info: #17a2b8;--font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif;--font-size-xs: clamp(.75rem, 2vw, .875rem);--font-size-sm: clamp(.875rem, 2.5vw, 1rem);--font-size-base: clamp(1rem, 3vw, 1.125rem);--font-size-lg: clamp(1.125rem, 3.5vw, 1.25rem);--font-size-xl: clamp(1.25rem, 4vw, 1.5rem);--font-size-2xl: clamp(1.5rem, 5vw, 2rem);--font-size-3xl: clamp(2rem, 6vw, 2.5rem);--font-size-4xl: clamp(2.5rem, 7vw, 3.5rem);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--container-max: 1200px;--container-padding: 1rem;--border-radius: 8px;--border-radius-sm: 4px;--border-radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--transition-fast: .15s ease;--transition-base: .3s ease;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-tooltip: 600}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--text-primary);background-color:var(--background);min-height:100vh;min-width:320px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:600;color:var(--text-primary)}h1{font-size:var(--font-size-4xl);margin-bottom:var(--space-lg)}h2{font-size:var(--font-size-3xl);margin-bottom:var(--space-md)}h3{font-size:var(--font-size-2xl);margin-bottom:var(--space-md)}h4{font-size:var(--font-size-xl);margin-bottom:var(--space-sm)}h5{font-size:var(--font-size-lg);margin-bottom:var(--space-sm)}h6{font-size:var(--font-size-base);margin-bottom:var(--space-sm)}p{margin-bottom:var(--space-md)}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-dark)}button{cursor:pointer;border:none;border-radius:var(--border-radius);padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--background-alt);color:var(--text-primary);transition:all var(--transition-fast)}button:hover{background-color:var(--border-color)}button:focus,button:focus-visible{outline:none;box-shadow:0 0 0 3px #28526166}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:var(--primary-dark)}.btn-secondary{background-color:transparent;color:var(--primary-color);border:2px solid var(--primary-color)}.btn-secondary:hover{background-color:var(--primary-color);color:#fff}.container{width:100%;max-width:var(--container-max);margin-left:auto;margin-right:auto;padding-left:var(--container-padding);padding-right:var(--container-padding)}@media (min-width: 768px){:root{--container-padding: 1.5rem}}@media (min-width: 1024px){:root{--container-padding: 2rem}}.grid{display:grid;gap:var(--space-md)}.grid-2,.grid-3,.grid-4{grid-template-columns:repeat(1,1fr)}@media (min-width: 480px){.grid-2,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (min-width: 768px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.py-sm{padding-top:var(--space-sm);padding-bottom:var(--space-sm)}.py-md{padding-top:var(--space-md);padding-bottom:var(--space-md)}.py-lg{padding-top:var(--space-lg);padding-bottom:var(--space-lg)}.py-xl{padding-top:var(--space-xl);padding-bottom:var(--space-xl)}.px-sm{padding-left:var(--space-sm);padding-right:var(--space-sm)}.px-md{padding-left:var(--space-md);padding-right:var(--space-md)}.px-lg{padding-left:var(--space-lg);padding-right:var(--space-lg)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-sm{font-size:var(--font-size-sm)}.text-lg{font-size:var(--font-size-lg)}.text-muted{color:var(--text-secondary)}.font-bold{font-weight:600}.hide-mobile{display:none}.show-mobile{display:block}@media (min-width: 768px){.hide-mobile{display:block}.show-mobile,.hide-tablet{display:none}}@media (min-width: 1024px){.hide-tablet{display:block}.hide-desktop{display:none}}.card{background:var(--background);border-radius:var(--border-radius);box-shadow:var(--shadow-md);padding:var(--space-lg);transition:box-shadow var(--transition-base)}.card:hover{box-shadow:var(--shadow-lg)}input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=search],textarea,select{width:100%;padding:.75rem 1rem;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:var(--font-size-base);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2852611a}label{display:block;margin-bottom:var(--space-xs);font-weight:500;color:var(--text-primary)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}#root{width:100%;max-width:100%;margin:0;padding:0}.App{display:flex;flex-direction:column;min-height:100vh;width:100%;overflow-x:hidden}.App main{flex:1;width:100%}.page-section{padding:var(--space-2xl) 0}.page-section-sm{padding:var(--space-xl) 0}.page-section-lg{padding:var(--space-3xl) 0}.page-header{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-dark) 100%);color:#fff;padding:var(--space-2xl) var(--container-padding);text-align:center}.page-header h1{color:#fff;margin-bottom:var(--space-sm)}.page-header p{opacity:.9;max-width:600px;margin-left:auto;margin-right:auto}@media (min-width: 768px){.page-header{padding:var(--space-3xl) var(--container-padding)}}.content-wrapper{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--container-padding)}.two-column{display:flex;flex-direction:column;gap:var(--space-xl)}.two-column .column-main{flex:1}.two-column .column-sidebar{width:100%}@media (min-width: 768px){.two-column{flex-direction:row}.two-column .column-sidebar{width:280px;flex-shrink:0}}@media (min-width: 1024px){.two-column .column-sidebar{width:320px}}.responsive-img{width:100%;height:auto;display:block}.img-cover{object-fit:cover;width:100%;height:100%}.loading-spinner{display:flex;justify-content:center;align-items:center;padding:var(--space-2xl)}.loading-spinner:after{content:"";width:40px;height:40px;border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.empty-state{text-align:center;padding:var(--space-3xl) var(--space-lg);color:var(--text-secondary)}.empty-state-icon{font-size:3rem;margin-bottom:var(--space-md);opacity:.5}.empty-state h3{color:var(--text-primary);margin-bottom:var(--space-sm)}.table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}table{width:100%;min-width:600px;border-collapse:collapse}th,td{padding:var(--space-sm) var(--space-md);text-align:left;border-bottom:1px solid var(--border-color)}th{font-weight:600;background:var(--background-alt)}.modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:var(--space-md);z-index:var(--z-modal-backdrop)}.modal-content{background:#fff;border-radius:var(--border-radius-lg);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;z-index:var(--z-modal)}.error-boundary-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#285261,#1e3d47);padding:20px}.error-content{background:#fff;border-radius:12px;padding:40px;max-width:600px;width:100%;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}.error-icon{font-size:48px;text-align:center;margin-bottom:20px}.error-content h1{color:#2c3e50;text-align:center;margin-bottom:15px;font-size:28px}.error-message{color:#2c3e50;text-align:center;margin-bottom:30px;font-size:16px}.button-group{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.btn-primary,.btn-secondary{padding:12px 24px;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-primary:hover{background:#1e3d47;transform:translateY(-1px)}.btn-secondary{background:#fff;color:#285261;border:2px solid #285261}.btn-secondary:hover{background:#f0f9f9}.recurring-error-warning{background:#fff5f5;border:1px solid #dc3545;border-radius:8px;padding:15px;margin-bottom:20px}.warning-text{color:#dc3545;margin-bottom:15px}.error-details{margin-top:30px;border-top:1px solid #e5e7eb;padding-top:20px}.error-details summary{cursor:pointer;color:#6b7280;font-size:14px;margin-bottom:10px}.error-stack{background:#f8f9fa;padding:15px;border-radius:6px;overflow-x:auto}.error-stack pre{font-size:12px;color:#2c3e50;white-space:pre-wrap}.history-item{padding:5px 0;font-size:12px;border-bottom:1px solid #e5e7eb}.feedback-section{margin-top:30px;text-align:center;padding-top:20px;border-top:1px solid #e5e7eb}.support-link{color:#285261;text-decoration:none;font-weight:500}.support-link:hover{text-decoration:underline;color:#1e3d47}.component-error{padding:20px;background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;text-align:center}.retry-button{margin-top:10px;padding:8px 16px;background:#285261;color:#fff;border:none;border-radius:4px;cursor:pointer}.retry-button:hover{background:#1e3d47}.component-error-max-retry{padding:20px;background:#fff5f5;border:1px solid #dc3545;border-radius:8px;text-align:center;color:#dc3545}.studio-loading,.studio-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#2c3e50}.spinner{width:40px;height:40px;border:4px solid #f0f9f9;border-top:4px solid #285261;border-radius:50%;animation:spin 1s linear infinite}.favorite-button{background:none;border:none;cursor:pointer;padding:8px;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s,opacity .2s,background-color .2s;border-radius:50%}.favorite-button:hover{transform:scale(1.1);background-color:#ffd7001a}.favorite-button:active{transform:scale(.95)}.favorite-button:disabled{cursor:not-allowed;opacity:.5}.favorite-button svg{transition:fill .3s ease,stroke .3s ease,transform .3s ease}@keyframes starSpin{0%{transform:scale(1) rotate(0)}50%{transform:scale(1.3) rotate(180deg)}to{transform:scale(1) rotate(360deg)}}@keyframes sparkle{0%,to{opacity:1}50%{opacity:.7;transform:scale(1.1)}}.favorite-button:active:not(:disabled) svg{animation:starSpin .6s ease}.favorite-button svg[fill="#FFD700"]{filter:drop-shadow(0 0 3px rgba(255,215,0,.4));animation:sparkle 2s ease-in-out infinite}.favorite-button:before{content:attr(aria-label);position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-4px);padding:4px 8px;background:#000c;color:#fff;font-size:12px;border-radius:4px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s}.favorite-button:hover:before{opacity:1}.classes{padding:0;background-color:#fff;min-height:100vh}.compact-header{background-color:#fff;border-bottom:2px solid #285261;padding:12px 20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000001a}.compact-header-left{display:flex;align-items:center;gap:20px}.compact-title{font-size:20px;margin:0;color:#285261;font-weight:600}.connection-warning{color:#dc3545;font-size:14px}.compact-header-right{display:flex;align-items:center;gap:15px}.compact-signin-btn{padding:6px 16px;background-color:#285261;color:#fff;border:none;border-radius:6px;font-size:14px;cursor:pointer;font-weight:500;transition:background-color .2s}.compact-signin-btn:hover{background-color:#1e3d4a}.user-info-compact{display:flex;align-items:center;gap:12px}.user-name-compact{font-size:14px;color:#666}.credits-pill{background-color:#285261;color:#fff;padding:4px 12px;border-radius:20px;font-size:14px;font-weight:600}.get-credits-link-compact{font-size:12px;color:#285261;text-decoration:underline}.get-credits-link-compact:hover{color:#1e3d4a}.filters-section{background:#f8f9fa;padding:2rem 0;margin-bottom:3rem;border-top:1px solid #e9ecef;border-bottom:1px solid #e9ecef}.studio-selector{margin-bottom:2rem}.studio-selector h2{color:#285261;margin-bottom:1rem;font-size:1.5rem;font-weight:500}.studio-controls{display:flex;gap:1rem;margin-bottom:1rem}.studio-search{flex:1;max-width:300px;padding:.75rem;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:border-color .3s ease;background:#fff}.studio-search:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.studio-select{width:100%;max-width:500px;padding:1rem;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:border-color .3s ease;background:#fff}.studio-select:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.current-studio-info{background:#fff;padding:1.5rem;border-radius:12px;border-left:4px solid #285261;margin-bottom:2rem;box-shadow:0 2px 8px #0000000d}.current-studio-info h3{color:#285261;margin:0 0 .5rem;font-size:1.3rem;font-weight:600}.current-studio-info p{color:#666;margin:0;font-size:.95rem}.location-error-notice{margin-top:.5rem;padding:.5rem;background:#fff9e6;color:#8a6d3b;border-radius:6px;font-size:.85rem}.date-picker-section{margin:2rem 0;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d}.date-picker-section h3{color:#285261;margin-bottom:1rem;font-size:1.3rem;font-weight:500;display:flex;align-items:center}.date-picker-scroll{display:flex;gap:.5rem;overflow-x:auto;padding:0 1rem .5rem;scrollbar-width:thin;width:fit-content;max-width:100%;margin:0 auto}.date-picker-button{flex-shrink:0;padding:.75rem 1rem;border:2px solid #e9ecef;background:#fff;border-radius:8px;cursor:pointer;text-align:center;min-width:70px;transition:all .3s ease}.date-picker-button:hover{border-color:#285261;background:#f8f9fa}.date-picker-button.selected{background:#285261;color:#fff;border-color:#285261}.date-picker-button.today{border-color:#285261;border-width:2px}.date-weekday{font-size:.75rem;font-weight:500;margin-bottom:4px}.date-number{font-size:1.25rem;font-weight:700}.date-today-label{font-size:.7rem;margin-top:2px;color:#285261}.class-filters{margin-top:2rem}.class-filters h3{color:#285261;margin-bottom:1.5rem;font-size:1.3rem;font-weight:500}.filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.filter-toggle{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:transparent;border:1px solid #285261;border-radius:6px;color:#285261;cursor:pointer;font-size:.9rem;transition:all .3s ease}.filter-toggle:hover{background:#285261;color:#fff}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:1.5rem}.filter-group{display:flex;flex-direction:column}.filter-select{padding:.75rem;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:border-color .3s ease;background:#fff}.classes-section{padding:0 2rem}.classes-container{max-width:1400px;margin:0 auto}.no-studio-selected,.no-classes{text-align:center;padding:4rem 2rem;background:#fff;border-radius:15px;box-shadow:0 4px 20px #00000014;max-width:500px;margin:0 auto}.no-studio-selected h3,.no-classes h3{color:#285261;margin-bottom:1rem;font-size:1.5rem}.no-studio-selected p,.no-classes p{color:#666;margin-bottom:2rem;line-height:1.6}.classes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.class-card{background:#fff;border-radius:15px;padding:1.5rem;box-shadow:0 4px 20px #00000014;transition:all .3s ease;border:2px solid transparent}.class-card:hover{transform:translateY(-3px);box-shadow:0 8px 30px #0000001f;border-color:#e9ecef}.class-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #f0f0f0}.class-header h3{color:#285261;margin:0;font-size:1.4rem;font-weight:600;flex:1}.class-price{background:#285261;color:#fff;padding:.5rem 1rem;border-radius:25px;font-weight:600;font-size:1.1rem;margin-left:1rem}.class-meta{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1rem;font-size:.9rem;color:#666}.class-meta span{display:flex;align-items:center;gap:.5rem}.class-description{color:#555;line-height:1.5;margin-bottom:1.5rem;font-size:.95rem}.class-availability{margin-bottom:1.5rem;display:flex;flex-direction:column;gap:.5rem}.availability-status{padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:inline-block;width:fit-content}.availability-status.available{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.availability-status.limited{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.availability-status.full{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.availability-status.started{background:#e0e0e0;color:#666;border:1px solid #ccc}.insufficient-credits-notice{background:#ffeaa7;color:#856404;padding:.4rem .8rem;border-radius:15px;font-size:.8rem;font-weight:500;display:inline-block;width:fit-content}.class-actions{margin-top:1.5rem}.book-btn{width:100%;background:#285261;color:#fff;border:none;padding:1rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.book-btn:hover:not(.disabled){background:#1e3c47;transform:translateY(-2px);box-shadow:0 4px 15px #2852614d}.book-btn.disabled{background:#ccc;color:#999;cursor:not-allowed;transform:none;box-shadow:none}.sign-in-btn{background-color:#285261!important;color:#fff!important;cursor:pointer!important;position:relative;overflow:hidden}.sign-in-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.sign-in-btn:hover{background-color:#1e3d47!important}.sign-in-btn:hover:before{left:100%}.booking-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:2rem}.booking-modal{background-color:#fff;border-radius:15px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 8px 32px #0000004d}.modal-header{padding:2rem 2rem 1rem;border-bottom:1px solid #e9ecef}.modal-header h3{color:#285261;margin:0;font-size:1.8rem;font-weight:600}.booking-status{text-align:center;padding:2rem;border-radius:10px;margin-bottom:1rem}.booking-loading{background:#e3f2fd;color:#1565c0;border:1px solid #bbdefb}.booking-success{background:#e8f5e8;color:#2e7d32;border:1px solid #c8e6c9}.booking-error{background:#ffeaea;color:#c62828;border:1px solid #ffcdd2}.booking-status h4{margin:0 0 .5rem;font-size:1.3rem}.booking-status p{margin:.25rem 0}.booking-details{background:#f8f9fa;padding:1.5rem;border-radius:10px;margin-bottom:2rem}.booking-details h4{color:#285261;margin:0 0 1rem;font-size:1.3rem;font-weight:600}.booking-details p{margin:.5rem 0;color:#333}.booking-form{margin-bottom:2rem}.form-group label{display:block;font-weight:500;color:#2c3e50;margin-bottom:.5rem}.form-select{width:100%;padding:.75rem;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:border-color .3s ease;background:#fff}.form-select:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.booking-summary{border-top:1px solid #e9ecef;padding-top:1rem}.summary-line{display:flex;justify-content:space-between;margin-bottom:.5rem;color:#333}.summary-line.total{font-weight:600;font-size:1.1rem;color:#285261;border-top:1px solid #e9ecef;padding-top:.5rem;margin-top:.5rem}.modal-actions{display:flex;gap:1rem;padding-top:1rem;border-top:1px solid #e9ecef}.btn-primary{background:#285261;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;flex:1}.btn-primary:hover:not(:disabled){background:#1e3c47;transform:translateY(-2px);box-shadow:0 4px 15px #2852614d}.btn-primary:disabled{background:#ccc;color:#999;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:transparent;color:#285261;border:2px solid #285261;padding:10px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;flex:1}.btn-secondary:hover{background:#285261;color:#fff;transform:translateY(-2px)}.inline-icon{display:inline-block;vertical-align:middle}.class-started{opacity:.7}.timeline-class-row{transition:all .2s ease}.timeline-class-row:hover{box-shadow:0 2px 8px #0000001a}@media (max-width: 1024px){.filters-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.classes-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.class-meta{grid-template-columns:1fr;gap:.3rem}}@media (max-width: 768px){.compact-header{padding:10px 15px;flex-wrap:wrap;gap:10px}.compact-title{font-size:18px}.user-name-compact{display:none}.compact-signin-btn{padding:5px 12px;font-size:13px}.filters-section{padding:1.5rem 0}.filters-container,.classes-section{padding:0 1rem}.filters-grid{grid-template-columns:1fr;gap:1rem}.filter-actions{flex-direction:column;gap:1rem;align-items:stretch}.classes-grid{grid-template-columns:1fr;gap:1.5rem}.class-header{flex-direction:column;align-items:flex-start;gap:1rem}.class-price{margin-left:0;align-self:flex-end}.class-availability{align-items:flex-start}.modal-actions{flex-direction:column}.booking-modal{margin:1rem;max-height:calc(100vh - 2rem)}.modal-content{padding:1.5rem}}@media (max-width: 480px){.compact-title{font-size:16px}.class-card{padding:1.25rem}.class-header h3{font-size:1.2rem}.studio-select{max-width:100%}}.date-picker-top{background:#fff;border-bottom:1px solid #e9ecef;padding:1rem 0;overflow:hidden}.date-picker-container{max-width:1200px;margin:0 auto;padding:0 2rem}.filters-header-main{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #e9ecef}.filters-header-main h3{display:flex;align-items:center;color:#285261;font-size:1.2rem;margin:0}.active-filters-count{background:#285261;color:#fff;padding:2px 8px;border-radius:12px;font-size:.75rem;margin-left:8px}.filters-content{animation:slideDown .3s ease-out}.filter-row{margin-bottom:1.5rem}.studio-filter-row{padding-bottom:1rem;border-bottom:1px solid #e9ecef}.studio-filter-group label{font-weight:600;color:#285261;margin-bottom:.5rem;display:block}.studio-controls-inline{display:flex;gap:1rem}.current-studio-info-inline{background:#f0f9f9;padding:.5rem 1rem;border-radius:6px;font-size:.9rem;color:#285261;margin-bottom:1rem}.filters-summary{padding:.5rem 0;text-align:center}:root{--primary-dark: #285261;--primary-hover: #1e3d47;--primary-light: #a8d5d3;--white: #ffffff;--off-white: #f5f7fa;--light-gray: #f5f5f5;--gray: #666666;--dark-gray: #2c3e50;--black: #000000;--success: #4CAF50;--warning: #FFC107;--error: #dc3545;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .1);--transition-fast: all .2s ease;--transition: all .3s cubic-bezier(.4, 0, .2, 1);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 20px}button:focus,button:focus-visible,a:focus,a:focus-visible{outline:none!important;box-shadow:0 0 0 3px #28526166!important}.hero-modern{background:#285261;min-height:90vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.hero-modern:before{content:"";position:absolute;inset:0;background-image:url(/assets/Yoga-photo.jpg);background-size:cover;background-position:center;opacity:.15;z-index:0}.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at center,transparent 0%,rgba(40,82,97,.3) 100%);z-index:1}.hero-content-modern{max-width:800px;padding:2rem;text-align:center;position:relative;z-index:2;color:#fff}.hero-badge{display:inline-block;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:8px 20px;border-radius:var(--radius-xl);font-size:.9rem;margin-bottom:2rem;font-weight:500;letter-spacing:.5px;animation:fadeInDown .6s ease-out}.hero-title-modern{font-size:3.2rem;font-weight:500;margin-bottom:1.5rem;line-height:1.3;letter-spacing:3px;text-transform:uppercase;animation:fadeInUp .8s ease-out;color:#fff}.hero-description-modern{font-size:1.25rem;line-height:1.8;margin-bottom:2.5rem;opacity:.95;max-width:600px;margin-left:auto;margin-right:auto;animation:fadeInUp .8s ease-out .2s both}.hero-actions-modern{display:flex;gap:1rem;justify-content:center;margin-bottom:3rem;animation:fadeInUp .8s ease-out .4s both}.btn-hero-primary{background:#fff;color:var(--primary-dark);padding:16px 32px;font-size:1.1rem;font-weight:600;border:none;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-lg)}.btn-hero-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.btn-hero-secondary{background:transparent;color:#fff;padding:16px 32px;font-size:1.1rem;font-weight:600;border:2px solid rgba(255,255,255,.3);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-hero-secondary:hover{background:#ffffff1a;border-color:#ffffff80;transform:translateY(-2px)}.hero-features{display:flex;gap:2rem;justify-content:center;animation:fadeInUp .8s ease-out .6s both}.hero-feature{display:flex;align-items:center;gap:.5rem;font-size:.95rem;opacity:.9}.hero-feature .feature-icon{color:#ffffffe6;font-size:1.25rem;flex-shrink:0;margin-top:15px}.value-props{padding:1.5rem 0;background:#fff}.props-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:.5rem}.prop-card{text-align:center;padding:1rem}.prop-icon{font-size:3rem;margin-bottom:.75rem;display:block;color:#285261;margin-left:auto;margin-right:auto}.prop-card h3{color:var(--primary-dark);font-size:1.5rem;margin-bottom:.5rem;font-weight:600}.prop-card p{color:var(--gray);line-height:1.6;max-width:300px;margin:0 auto}.browse-classes-cta{padding:40px 20px;background-color:var(--off-white)}.browse-content{text-align:center;max-width:600px;margin:0 auto}.browse-content h2{font-size:2rem;font-weight:600;color:var(--dark-gray);margin-bottom:16px}.browse-content p{font-size:1.1rem;color:var(--dark-gray);opacity:.8;line-height:1.6;margin-bottom:24px}.btn-browse-classes{padding:14px 32px;font-size:1rem;font-weight:600;color:#fff;background-color:#285261;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background-color .2s,transform .2s}.btn-browse-classes:hover{background-color:#1e3d47;transform:translateY(-2px)}.how-it-works-modern{padding:3rem 0;background:#fff}.section-title{font-size:2.5rem;color:var(--primary-dark);text-align:center;margin-bottom:2rem;font-weight:600}.steps-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:1000px;margin:0 auto;position:relative}.timeline-step{text-align:center;position:relative;z-index:2;background:#fff;padding:2rem 1.5rem;border-radius:12px;box-shadow:0 4px 20px #00000014;border:2px solid #f0f0f0;transition:all .3s ease}.timeline-step:hover{transform:translateY(-5px);box-shadow:0 8px 30px #0000001f;border-color:#285261}.timeline-step:nth-child(1):after{content:"→";position:absolute;right:-35px;top:50%;transform:translateY(-50%);font-size:2rem;color:var(--primary-light);z-index:3}.timeline-step:nth-child(2):after{content:"→";position:absolute;right:-35px;top:50%;transform:translateY(-50%);font-size:2rem;color:var(--primary-light);z-index:3}.step-dot{width:60px;height:60px;background:#285261;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;font-size:1.5rem;font-weight:700;box-shadow:0 4px 6px #0000001a}.step-content h3{color:var(--primary-dark);font-size:1.25rem;margin-bottom:.5rem;font-weight:600}.step-content p{color:var(--gray);line-height:1.5;max-width:250px;margin:0 auto}.membership-modern{padding:1.5rem 0;background:#fff}.section-header-center{text-align:center;margin-bottom:2.5rem}.section-header-center h2{font-size:2.5rem;color:var(--primary-dark);margin-bottom:1rem;font-weight:600}.section-header-center p{color:var(--gray);font-size:1.1rem}.membership-grid-modern{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;max-width:1200px;margin:0 auto 2rem}.membership-card-modern{background:#fff;border-radius:15px;padding:2.5rem 2rem 2rem;box-shadow:0 4px 20px #00000014;border:2px solid transparent;transition:all .3s ease;position:relative;display:flex;flex-direction:column;text-align:center}.membership-card-modern:hover{transform:translateY(-5px);box-shadow:0 8px 30px #00000026;border-color:#285261}.membership-card-modern.featured{border-color:#285261;transform:scale(1.05);box-shadow:0 8px 30px #28526133;z-index:2}.featured-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#285261;color:#fff;padding:6px 16px;font-size:.75rem;font-weight:700;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.card-header{margin-bottom:1.5rem}.card-header h3{color:var(--primary-dark);font-size:1.5rem;font-weight:600;margin:0}.card-price{margin-bottom:.5rem}.price-amount{font-size:2.5rem;font-weight:700;color:var(--primary-dark)}.price-period{color:var(--gray);font-size:1rem}.card-classes{color:var(--gray);font-size:1.1rem;margin:0 auto 1.5rem;max-width:90%}.card-features{list-style:none;padding:0;margin:0 0 2rem;flex-grow:1;text-align:left}.card-features li{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem 0;font-size:.9rem;color:var(--gray);line-height:1.4;width:100%}.card-features li:before{content:"✓";color:var(--success);font-weight:700;flex-shrink:0}.card-btn{width:100%;padding:14px;background:transparent;color:#285261;border:2px solid #285261;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.card-btn:hover{background:#285261;color:#fff;transform:translateY(-1px)}.card-btn-primary{background:#285261;color:#fff;border:2px solid #285261}.card-btn-primary:hover{background:#1e3d47;border-color:#1e3d47}.card-btn.processing,.card-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.card-btn.processing:hover,.card-btn:disabled:hover{transform:none}.payment-error-banner{background:#fee;border:1px solid #fcc;border-radius:8px;padding:1rem;margin-bottom:1.5rem;max-width:600px;margin-left:auto;margin-right:auto}.membership-note{text-align:center;padding:1.5rem;background:#fff;border-radius:8px;max-width:600px;margin:2rem auto 0}.membership-note p{color:var(--gray);margin:0}.network-section{padding:1.5rem 0 3rem;background:var(--off-white)}.network-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.network-text h2{font-size:2.5rem;color:var(--primary-dark);margin-bottom:1.5rem;font-weight:600}.network-text p{color:var(--gray);line-height:1.8;font-size:1.1rem;margin-bottom:2rem}.network-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin:2rem 0}.stat-item{text-align:center}.stat-label{display:block;color:var(--gray);font-size:.9rem;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.stat-value{display:block;color:var(--primary-dark);font-size:1.5rem;font-weight:700}.partner-cta-card{background:#fff;padding:2.5rem;border-radius:12px;box-shadow:0 4px 20px #00000014;text-align:center;border:2px solid transparent;transition:all .3s ease}.partner-cta-card:hover{border-color:#285261;transform:translateY(-3px);box-shadow:0 8px 30px #00000026}.partner-cta-card h3{color:var(--primary-dark);font-size:1.5rem;margin-bottom:1rem;font-weight:600}.partner-cta-card p{color:var(--gray);line-height:1.6;margin-bottom:1.5rem}.btn-outline.partner-btn{background:transparent;color:#285261;padding:12px 24px;border:2px solid #285261;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-block;text-decoration:none}.btn-outline.partner-btn:hover{background:#285261;color:#fff;transform:translateY(-2px)}.faq-preview{padding:3rem 0;background:#fff}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.faq-item{padding:1.5rem}.faq-item h3{color:var(--primary-dark);font-size:1.25rem;margin-bottom:.75rem;font-weight:600}.faq-item p{color:var(--gray);line-height:1.6}.section-cta{text-align:center;margin-top:3rem}.btn-outline{background:transparent;color:var(--primary-dark);padding:12px 24px;border:2px solid var(--primary-dark);border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:var(--transition);display:inline-block;text-decoration:none}.btn-outline:hover{background:var(--primary-dark);color:#fff;transform:translateY(-2px)}.btn-outline:focus,.btn-secondary:focus,.btn-outline.partner-btn:focus,.btn-outline:focus-visible,.btn-secondary:focus-visible,.btn-outline.partner-btn:focus-visible{outline:none!important;box-shadow:0 0 0 3px #28526166!important}.btn-secondary{background:var(--primary-dark);color:#fff;padding:12px 24px;border:none;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:var(--transition)}.btn-secondary:hover{background:#1e3d47;transform:translateY(-2px);box-shadow:var(--shadow-md)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1200px){.membership-grid-modern{grid-template-columns:repeat(2,1fr);gap:2rem}}@media (max-width: 1024px){.timeline-step:after{display:none}.network-content{grid-template-columns:1fr;gap:3rem}}@media (max-width: 768px){.hero-title-modern{font-size:2.5rem}.hero-description-modern{font-size:1.1rem}.hero-actions-modern{flex-direction:column;width:100%;max-width:300px;margin-left:auto;margin-right:auto}.btn-hero-primary,.btn-hero-secondary{width:100%}.hero-features{flex-direction:column;align-items:center;gap:1rem}.hero-feature{flex-direction:column;text-align:center;gap:.25rem}.hero-feature .feature-icon{font-size:1.75rem;margin-top:0}.steps-timeline{grid-template-columns:1fr;gap:2rem}.timeline-step:after{display:none}.membership-grid-modern{grid-template-columns:1fr;max-width:400px;margin:0 auto 2rem}.membership-card-modern.featured{transform:scale(1)}.props-grid{grid-template-columns:1fr}.network-stats{grid-template-columns:1fr;gap:1rem}.faq-grid{grid-template-columns:1fr}.browse-classes-cta{padding:40px 16px}.browse-content h2{font-size:1.75rem}.browse-content p{font-size:1rem}.btn-browse-classes{width:100%;padding:14px 24px}}@media (max-width: 480px){.hero-title-modern{font-size:2rem}.section-title,.section-header-center h2{font-size:1.75rem}.container{padding:0 1rem}section{padding:3rem 0}.price-amount{font-size:2rem}.card-features li{font-size:.85rem}.faq-grid{grid-template-columns:1fr}.faq-item{padding:1rem}}.locations{background-color:#fff;min-height:100vh}.locations-hero{background:#285261;padding:2rem 0 1.75rem;text-align:center;color:#fff}.locations-hero h1{font-size:2.5rem;font-weight:400;margin-bottom:.75rem;letter-spacing:2px;text-transform:uppercase;color:#fff}.locations-hero p{font-size:1.2rem;opacity:.95;max-width:500px;margin:0 auto}.filters-section{background:#f8f9fa;padding:.5rem 0 1.5rem;margin-bottom:1.5rem;border-top:1px solid #e9ecef;border-bottom:1px solid #e9ecef}.filters-container{max-width:1200px;margin:0 auto;padding:0 2rem}.filters-container h2{color:#285261;margin-bottom:1rem;font-size:1.5rem;font-weight:500}.filters-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.filter-group{display:flex;flex-direction:column;min-width:0}.filter-group label{font-weight:500;color:#2c3e50;margin-bottom:.5rem;font-size:.9rem}.filter-select,.filter-input{width:100%;box-sizing:border-box;padding:.75rem;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;line-height:1.5;height:48px;transition:border-color .3s ease;background:#fff;-webkit-appearance:none;-moz-appearance:none;appearance:none}.filter-select{padding:.75rem;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-color:#fff;cursor:pointer}.filter-select:focus,.filter-input:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.filter-actions{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #e9ecef}.clear-filters-btn{background:transparent;color:#285261;border:2px solid #285261;padding:.5rem 1rem;border-radius:6px;font-weight:500;cursor:pointer;transition:all .3s ease}.clear-filters-btn:hover{background:#285261;color:#fff;transform:translateY(-1px)}.results-count{color:#666;font-weight:500}.studios-section{padding:0 2rem 2rem}.studios-container{max-width:1400px;margin:0 auto}.studios-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:2rem}.studio-card{background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 4px 20px #00000014;transition:all .3s ease;cursor:pointer;position:relative}.studio-card:hover{transform:translateY(-5px);box-shadow:0 8px 30px #0000001f}.studio-card.featured{border:2px solid #285261;box-shadow:0 6px 25px #28526126}.studio-image{position:relative;height:220px;overflow:hidden}.studio-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.studio-card:hover .studio-image img{transform:scale(1.05)}.studio-overlay{position:absolute;top:15px;right:15px;display:flex;flex-direction:column;gap:8px}.rating{background:#000c;color:#fff;padding:5px 12px;border-radius:20px;font-size:.9rem;font-weight:500}.featured-badge{background:#285261;color:#fff;padding:4px 10px;border-radius:15px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.studio-details{padding:15px 20px}.studio-details h3{color:#285261;font-size:1.4rem;margin-bottom:6px;font-weight:600}.studio-location{color:#285261;font-weight:500;margin-bottom:8px;font-size:1rem}.studio-address{color:#666;font-size:.9rem;margin-bottom:10px;line-height:1.4}.studio-meta{display:flex;flex-direction:column;gap:5px;margin-bottom:12px;font-size:.9rem;color:#666}.studio-actions{display:flex;gap:12px}.studio-actions button{background:#285261;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;flex:1}.studio-actions button:hover{background:#1e3c47;transform:translateY(-2px);box-shadow:0 4px 15px #2852614d}.btn-primary{background:#285261;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary:hover{background:#1e3c47;transform:translateY(-2px);box-shadow:0 4px 15px #2852614d}.btn-secondary{background:#285261;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#1e3c47;transform:translateY(-2px);box-shadow:0 4px 15px #2852614d}.btn-large{padding:15px 30px;font-size:1.1rem}.no-results{text-align:center;padding:4rem 2rem;background:#fff;border-radius:15px;box-shadow:0 4px 20px #00000014;max-width:500px;margin:0 auto}.no-results h3{color:#285261;margin-bottom:1rem;font-size:1.5rem}.no-results p{color:#666;margin-bottom:2rem;line-height:1.6}.studio-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:2rem}.studio-modal{background-color:#fff;border-radius:15px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 8px 32px #0000004d}.close-modal{position:absolute;top:1rem;right:1rem;background:#ffffffe6;border:none;font-size:1.5rem;cursor:pointer;color:#666;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease;z-index:10}.close-modal:hover{background:#f0f0f0;color:#285261}.modal-header{position:relative}.modal-image{width:100%;height:250px;object-fit:cover}.modal-title{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000000b3);color:#fff;padding:2rem}.modal-title h3{margin:0 0 .5rem;font-size:1.8rem;font-weight:600}.modal-title p{margin:0 0 .5rem;opacity:.9}.modal-rating{background:#fff3;padding:4px 12px;border-radius:15px;display:inline-block;font-weight:500}.modal-content{padding:2rem}.modal-info{margin-bottom:2rem}.modal-info p{margin-bottom:.75rem;line-height:1.5;color:#333}.modal-actions{display:flex;gap:1rem}.modal-actions button{background:#285261;color:#fff;border:none;padding:15px 30px;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;flex:1}.modal-actions button:hover{background:#1e3c47;transform:translateY(-2px);box-shadow:0 4px 15px #2852614d}@media (max-width: 1024px){.filters-grid{grid-template-columns:1fr 1fr;gap:1rem}.studios-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}}@media (max-width: 768px){.locations{padding:1rem 0}.locations-header h1{font-size:2rem}.filters-section{padding:.5rem 0 1.5rem}.filters-container{padding:0 1rem}.studios-section{padding:0 1rem 2rem}.filters-grid{grid-template-columns:1fr;gap:1rem}.filter-actions{flex-direction:column;gap:1rem;align-items:stretch}.studios-grid{grid-template-columns:1fr;gap:1.5rem}.studio-actions,.modal-actions{flex-direction:column}.studio-modal{margin:1rem;max-height:calc(100vh - 2rem)}.modal-content{padding:1.5rem}}@media (max-width: 480px){.locations-header{padding:0 1rem}.locations-header h1{font-size:1.75rem}.studio-details{padding:12px 15px}.studio-details h3{font-size:1.2rem}}:root{--primary-dark: #285261;--primary: #4f8fa3;--primary-light: #a8d5d3;--gray: #666666;--off-white: #fafafa;--success: #4CAF50;--shadow-md: 0 4px 20px rgba(0, 0, 0, .08);--shadow-xl: 0 8px 30px rgba(0, 0, 0, .15);--transition: all .3s ease;--radius-lg: 15px;--radius-md: 8px;--radius-xl: 20px}.memberships-modern{min-height:100vh;background:#fff}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.memberships-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1.5rem}.membership-hero{background:#285261;padding:3rem 0 2.5rem;text-align:center;color:#fff}.hero-subtitle{font-size:1.2rem;opacity:.95;max-width:500px;margin:0 auto}.payment-error-banner{background:#fee;border-bottom:2px solid #fcc;padding:1rem 0}.payment-error-banner p{color:#c33;text-align:center;margin:0;font-weight:500}.pricing-section-modern{padding:3rem 0 1.5rem;background:#fff}.pricing-cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;max-width:1200px;margin:0 auto 2rem}.pricing-card-modern{background:#fff;border-radius:15px;padding:2.5rem 2rem 2rem;box-shadow:0 4px 20px #00000014;border:2px solid transparent;transition:all .3s ease;position:relative;display:flex;flex-direction:column;text-align:center}.pricing-card-modern:hover{transform:translateY(-5px);box-shadow:0 8px 30px #00000026;border-color:#285261}.pricing-card-modern.popular{border:3px solid #285261;transform:scale(1.05);box-shadow:0 8px 30px #28526133}.pricing-card-modern.popular:hover{transform:scale(1.08) translateY(-5px)}.popular-ribbon{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#285261;color:#fff;padding:6px 20px;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;white-space:nowrap;z-index:1}.card-header{text-align:center;margin-bottom:1.5rem;padding-top:.5rem}.tier-name{font-size:1.75rem;color:#285261;margin:0;font-weight:600;text-align:center;width:100%}.card-pricing{text-align:center;padding:1rem 0;margin-bottom:1rem}.price-display{display:flex;align-items:baseline;justify-content:center;gap:2px;margin-bottom:.5rem}.price-display .currency{font-size:1.5rem;color:#285261;font-weight:500}.price-display .amount{font-size:2.5rem;color:#285261;font-weight:700}.price-display .period{font-size:1rem;color:#666}.classes-count{color:#4f8fa3;font-weight:600;font-size:1.1rem;text-align:center;background:#f8f9fa;padding:.75rem 1rem;border-radius:8px;margin:0 auto;max-width:90%}.card-description{text-align:center;margin-bottom:1.5rem;color:#666;font-size:.95rem;line-height:1.4;padding:0 .5rem}.features-list-modern{list-style:none;padding:0;margin:0 0 2rem;flex-grow:1;text-align:left;display:flex;flex-direction:column;align-items:flex-start;width:100%}.features-list-modern li{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem 0;font-size:.9rem;color:#555;line-height:1.4;width:100%}.check-icon{width:16px;height:16px;flex-shrink:0;margin-top:2px;color:#4caf50}.select-btn{width:100%;padding:.875rem;background:#285261;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.select-btn:hover{background:#1e3c47;transform:translateY(-1px);box-shadow:0 4px 12px #28526140}.select-btn.processing{opacity:.7;cursor:not-allowed}.pricing-card-modern.popular .select-btn{background:linear-gradient(135deg,#285261,#3a6b7a);color:#fff}.extra-classes-note{text-align:center;padding:1.5rem;background:#fff;border-radius:12px;max-width:600px;margin:0 auto}.extra-classes-note p{color:#666;margin:0}.features-section{padding:.5rem 0 2.5rem;background:#fff}.features-section h2{text-align:center;font-size:2.5rem;color:#285261;margin-bottom:2rem;font-weight:400}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.feature-card{text-align:center;padding:2rem}.feature-icon{font-size:3rem;margin-bottom:1rem;display:block;color:#285261;margin-left:auto;margin-right:auto}.feature-card h3{color:#285261;font-size:1.25rem;margin-bottom:.75rem;font-weight:600}.feature-card p{color:#666;line-height:1.5}.faq-section-modern{padding:.5rem 0 3rem;background:#fafafa}.faq-section-modern h2{text-align:center;font-size:2.5rem;color:#285261;margin-bottom:2rem;font-weight:400}.faq-wrapper{max-width:700px;margin:0 auto}.faq-item-modern{background:#fff;border-radius:8px;margin-bottom:1rem;overflow:hidden;box-shadow:0 2px 4px #0000000f}.faq-question-modern{width:100%;padding:1.25rem 1.5rem;background:#fff;border:none;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .2s ease;font-size:1.1rem;color:#285261;font-weight:500;text-align:left}.faq-question-modern:hover{background:#f8f8f8}.faq-icon{width:20px;height:20px;transition:transform .3s ease;color:#666}.faq-icon.rotated{transform:rotate(180deg)}.faq-answer-modern{padding:0 1.5rem 1.5rem;animation:slideDown .3s ease}.faq-answer-modern p{color:#555;line-height:1.6;margin:0}@media (max-width: 1024px){.pricing-cards-grid{grid-template-columns:repeat(2,1fr);gap:2rem;max-width:700px;margin:0 auto 3rem}.pricing-card-modern.popular{transform:scale(1)}}@media (max-width: 768px){.membership-hero h1{font-size:2rem}.pricing-cards-grid{grid-template-columns:1fr;max-width:400px}.classes-count .number{font-size:2rem}.price-display .amount{font-size:1.75rem}.features-grid{grid-template-columns:1fr;gap:1.5rem}.features-section h2,.faq-section-modern h2,.membership-cta-modern h2{font-size:2rem}}@media (max-width: 480px){.container{padding:0 1rem}.membership-hero{padding:4rem 0 3rem}.membership-hero h1{font-size:1.75rem}.hero-subtitle{font-size:1rem}.pricing-card-modern{padding:1.5rem 1rem}.tier-name{font-size:1.25rem}.features-list-modern li{font-size:.85rem}.faq-question-modern{font-size:1rem;padding:1rem 1.25rem}}.grace-cancel-modal{background:#fff;border-radius:12px;width:90%;max-width:500px;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.grace-modal-header{display:flex;align-items:center;gap:12px;padding:20px;border-bottom:1px solid #e0e0e0;background:#fff8f0;border-radius:12px 12px 0 0}.warning-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff3e0;border-radius:50%;color:#f57c00;flex-shrink:0}.grace-modal-header h2{flex:1;margin:0;font-size:20px;font-weight:600;color:#333}.grace-modal-header .close-btn{width:32px;height:32px;border:none;background:transparent;font-size:28px;line-height:1;color:#666;cursor:pointer;transition:color .2s;padding:0;display:flex;align-items:center;justify-content:center}.grace-modal-header .close-btn:hover{color:#333}.grace-modal-body{padding:24px;display:flex;flex-direction:column;gap:20px}.class-info{text-align:center;padding-bottom:16px;border-bottom:1px solid #f0f0f0}.class-info h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#333}.time-warning{margin:0;font-size:14px;color:#666}.time-warning strong{color:#f57c00;font-weight:600}.grace-info-box{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:12px}.grace-stat{display:flex;justify-content:space-between;align-items:center}.grace-label{font-size:13px;color:#666;font-weight:500}.grace-value{font-size:16px;font-weight:600;color:#285261}.warning-message{background:#fff8f0;border-left:4px solid #f57c00;padding:16px;border-radius:4px;display:flex;flex-direction:column;gap:12px}.warning-message p{margin:0;font-size:14px;color:#333;line-height:1.5}.warning-note{font-size:13px;color:#666}.warning-note strong{color:#f57c00}.grace-modal-footer{display:flex;gap:12px;padding:20px;border-top:1px solid #e0e0e0;background:#f8f9fa;border-radius:0 0 12px 12px}.btn-keep-booking,.btn-use-grace-cancel{flex:1;padding:12px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.btn-keep-booking{background:#fff;border:2px solid #ddd;color:#666}.btn-keep-booking:hover:not(:disabled){background:#f8f9fa;border-color:#ccc}.btn-use-grace-cancel{background:#285261;color:#fff;border:2px solid #285261}.btn-use-grace-cancel:hover:not(:disabled){background:#1f3f4a;border-color:#1f3f4a}.btn-keep-booking:disabled,.btn-use-grace-cancel:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 600px){.grace-cancel-modal{width:95%;max-width:none}.grace-modal-header{padding:16px}.grace-modal-header h2{font-size:18px}.grace-modal-body{padding:20px}.grace-modal-footer{flex-direction:column-reverse}.btn-keep-booking,.btn-use-grace-cancel{width:100%}}.dashboard-page{min-height:100vh;background:#fff}.dashboard-hero{background:#285261;padding:2rem 0 1.75rem;text-align:center;color:#fff;width:100%}.dashboard-hero h1{font-size:2.5rem;font-weight:400;margin-bottom:.75rem;letter-spacing:1px;color:#fff}.dashboard-hero p{font-size:1.2rem;opacity:.95;max-width:500px;margin:0 auto}.dashboard-container{max-width:1400px;margin:0 auto;padding:2rem;min-height:calc(100vh - 80px);background:#f8f9fa}.success-banner{background:#d4edda;border:1px solid #c3e6cb;border-radius:8px;padding:1rem 1.25rem;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;animation:slideDown .3s ease-out}.success-content{display:flex;align-items:center;gap:.75rem;color:#155724;flex:1}.success-content svg{flex-shrink:0;stroke:#155724}.success-content span{font-size:.95rem;line-height:1.4}.success-close{background:transparent;border:none;color:#155724;font-size:1.5rem;line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:opacity .2s}.success-close:hover{opacity:.7}.loading-spinner{text-align:center;padding:3rem;font-size:1.2rem;color:#2c3e50}.error-message{text-align:center;padding:2rem;color:#dc3545;background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;margin:2rem auto;max-width:600px}.dashboard-header{margin-bottom:2rem}.dashboard-header h1{font-size:2rem;color:#285261;margin:0 0 .5rem}.dashboard-header .subtitle{color:#666;font-size:1.1rem;margin:0}.credit-balance-card{background:linear-gradient(135deg,#285261,#1e3d47);border-radius:16px;padding:1rem 1.2rem;color:#fff;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 20px #28526140}.balance-number{font-size:4rem;font-weight:700;line-height:1;margin-bottom:.5rem}.balance-label{font-size:1.1rem;opacity:.9}.btn-white{padding:.875rem 1.75rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-block;background:#fff;color:#285261;border:2px solid white}.btn-white-outline{padding:.875rem 1.75rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-block;background:transparent;color:#fff;border:2px solid white}.btn-white-outline:hover{background:#fff;color:#285261}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;border:1px solid #e9ecef;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;background:#2852611a;color:#285261}.stat-icon svg{stroke:#285261}.stat-content h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;color:#666;margin:0 0 .5rem}.stat-content .stat-value{font-size:2rem;font-weight:700;color:#285261;margin:0 0 .5rem}.stat-content .stat-subtitle{font-size:.9rem;color:#666;margin:0}.stat-action{background:#285261;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .2s;margin-top:.5rem}.stat-action:hover{background:#1e3d47}.stat-card.credit-card{background:linear-gradient(135deg,#285261,#1e3d47);color:#fff;border:none}.stat-card.credit-card .stat-icon{background:#fff3}.stat-card.credit-card .stat-icon svg{stroke:#fff}.stat-card.credit-card .stat-content h3{color:#fffc}.stat-card.credit-card .stat-content .stat-value{color:#fff}.stat-card.credit-card.low-credits{background:linear-gradient(135deg,#e67e22,#d35400)}.stat-card.credit-card.no-credits{background:linear-gradient(135deg,#c0392b,#a93226)}.stat-card.credit-card .stat-action{background:#fff;color:#285261}.stat-card.credit-card .stat-action:hover{background:#f0f0f0}.dashboard-section{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #00000014;border:1px solid #e9ecef}.dashboard-section h2{font-size:1.25rem;color:#285261;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid #e9ecef}.classes-list{display:flex;flex-direction:column;gap:.75rem}.class-item{display:flex;align-items:center;padding:1rem;border-radius:8px;background:#f8f9fa;transition:background .2s}.class-item:hover{background:#f0f4f5}.class-item.past{opacity:.85}.class-item.past:hover{opacity:1}.class-date{background:#285261;color:#fff;padding:.75rem 1rem;border-radius:8px;text-align:center;min-width:70px;margin-right:1rem;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:background .2s ease}.class-date:hover{background:#1e3d47}.class-date .date-day{display:block;font-size:1.5rem;font-weight:700;line-height:1.2}.class-date .date-month{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;margin-top:.125rem}.class-date .day{display:block;font-size:1.5rem;font-weight:700;line-height:1.2}.class-date .month{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;margin-top:.125rem}.class-details{flex:1;min-width:0}.class-details h4{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#2c3e50}.class-details p{margin:0;font-size:.9rem;color:#666}.class-details .class-studio{color:#285261;font-weight:500;font-size:.85rem;margin-top:.25rem}.class-info{flex:1;min-width:0}.class-info h3{margin:0 0 .25rem;font-size:1rem;color:#2c3e50}.class-info p{margin:0;font-size:.9rem;color:#666}.class-info .studio-name{color:#285261;font-weight:500;font-size:.85rem;margin-top:.25rem}.class-actions{display:flex;gap:.5rem}.cancel-button{background:#fff;color:#dc3545;border:1px solid #dc3545;padding:.5rem 1rem;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.cancel-button:hover{background:#dc3545;color:#fff}.cancel-button:disabled{opacity:.6;cursor:not-allowed}.btn-cancel{background:#fff;color:#dc3545;border:1px solid #dc3545;padding:.5rem 1rem;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#dc3545;color:#fff}.btn-cancel:disabled{opacity:.6;cursor:not-allowed}.btn-view{background:#fff;color:#285261;border:1px solid #285261;padding:.5rem 1rem;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .2s}.btn-view:hover{background:#285261;color:#fff}.btn-primary{display:inline-block;background:#285261;color:#fff;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.completed-badge{padding:.35rem .85rem;border-radius:12px;font-size:.8rem;font-weight:600;background:#d4edda;color:#155724;white-space:nowrap}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.attended{background:#d4edda;color:#155724}.status-badge.cancelled{background:#f8d7da;color:#721c24}.status-badge.no-show{background:#fff3cd;color:#856404}.empty-state{text-align:center;padding:2rem 1rem;color:#666}.empty-state svg{width:48px;height:48px;stroke:#ccc;margin-bottom:1rem}.empty-state h3{margin:0 0 .5rem;color:#495057}.empty-state p{margin:0 0 1rem;font-size:.95rem}.btn-browse{display:inline-block;background:#285261;color:#fff;padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;font-weight:500;transition:background .2s}.btn-browse:hover{background:#1e3d47;color:#fff}.classes-section{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #00000014;border:1px solid #e9ecef}.classes-section h2{font-size:1.25rem;color:#285261;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid #e9ecef}.quick-actions{display:flex;gap:1rem;margin-bottom:2rem}.quick-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:#fff;border:2px solid #285261;border-radius:10px;color:#285261;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s}.quick-action-btn:hover,.quick-action-btn.primary{background:#285261;color:#fff}.quick-action-btn.primary:hover{background:#1e3d47}@media (max-width: 1024px){.dashboard-container{padding:1.5rem}.credit-balance-card{flex-direction:column;text-align:center;gap:1.5rem;padding:1rem}.credit-actions{width:100%;justify-content:center}.stats-row{grid-template-columns:repeat(2,1fr)}.stat-card.credit-card{grid-column:span 2}}@media (max-width: 768px){.dashboard-hero{padding:2rem 1rem}.dashboard-hero h1{font-size:2rem}.dashboard-container{padding:1rem}.dashboard-header h1{font-size:1.5rem}.balance-number{font-size:3rem}.credit-actions{flex-direction:column;width:100%}.btn-white,.btn-white-outline{width:100%;text-align:center}.stats-row{grid-template-columns:1fr;gap:1rem}.stat-card.credit-card{grid-column:span 1}.class-item{flex-direction:column;align-items:flex-start;gap:1rem}.class-date{margin-right:0;flex-direction:row;gap:.5rem;width:auto;min-width:unset;padding:.5rem 1rem}.class-date .date-day,.class-date .day{font-size:1.25rem}.class-date .date-month,.class-date .month{font-size:.8rem;margin-top:0}.class-details,.class-info,.class-actions{width:100%}.class-actions button,.cancel-button,.completed-badge{flex:1;text-align:center}.quick-actions{flex-direction:column}}@media (max-width: 480px){.dashboard-hero h1{font-size:1.75rem}.stat-content .stat-value{font-size:1.5rem}}.my-membership-page{min-height:100vh;background:#f8f9fa}.membership-hero{background:#285261;padding:2rem 0 1.75rem;text-align:center;color:#fff;width:100%}.membership-hero h1{font-size:2.5rem;font-weight:400;margin-bottom:.75rem;letter-spacing:2px;text-transform:uppercase;color:#fff}.membership-hero p{font-size:1.2rem;opacity:.95;max-width:500px;margin:0 auto;padding:0 1rem}.membership-content{padding:2rem 0 4rem}.membership-content>.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.membership-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:40vh;gap:1.5rem}.error-message{text-align:center;padding:2rem;color:#dc3545;background:#f8d7da;border:1px solid #f5c6cb;border-radius:12px;margin:2rem auto;max-width:600px}.credit-balance-section{margin-bottom:2rem}.credit-balance-card{background:linear-gradient(135deg,#285261,#1e3d47);border-radius:12px;padding:1.5rem 2rem;color:#fff;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 15px #28526133}.balance-display{display:flex;flex-direction:column}.balance-number{font-size:3.5rem;font-weight:700;line-height:1;margin-bottom:.25rem}.balance-label{font-size:1rem;opacity:.9}.credit-actions{display:flex;gap:1rem}.btn-white{padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;background:#fff;color:#285261;border:2px solid white;text-decoration:none}.btn-white:hover{background:transparent;color:#fff}.section{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000000a}.section h2{font-size:1.1rem;font-weight:600;color:#285261;margin:0 0 .5rem;padding-bottom:.75rem;border-bottom:2px solid #285261}.section-subtitle{font-size:.9rem;color:#6c757d;margin:0 0 1rem}.current-plan-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.25rem}.plan-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.plan-title{display:flex;flex-direction:column;gap:.5rem}.plan-title h3{font-size:1.5rem;font-weight:600;color:#285261;margin:0}.plan-status{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:capitalize}.plan-status.active{background:#28a7451a;color:#28a745}.plan-status.cancelled,.plan-status.canceled{background:#dc35451a;color:#dc3545}.plan-price-display{text-align:right}.plan-price-display .price{font-size:1.5rem;font-weight:700;color:#285261}.plan-price-display .period{font-size:.9rem;color:#6c757d}.plan-details-grid{display:flex;gap:2rem;padding:1rem 0;border-top:1px solid #f0f0f0;border-bottom:1px solid #f0f0f0;margin-bottom:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.8rem;color:#6c757d;text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:.95rem;font-weight:600;color:#285261}.plan-actions{display:flex;gap:1rem}.purchase-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.25rem}.purchase-controls{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}.quantity-selector{display:flex;flex-direction:column;gap:.5rem}.quantity-selector label{font-size:.8rem;color:#6c757d;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.quantity-input-group{display:flex;align-items:center;gap:.5rem}.quantity-btn{width:36px;height:36px;border-radius:8px;border:1px solid #285261;background:#fff;color:#285261;font-size:1.25rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;line-height:1}.quantity-btn:hover:not(:disabled){background:#285261;color:#fff}.quantity-btn:disabled{opacity:.4;cursor:not-allowed}.quantity-input{width:60px;height:36px;text-align:center;border:1px solid #e0e0e0;border-radius:8px;font-size:1.1rem;font-weight:600;color:#285261}.quantity-input:focus{outline:none;border-color:#285261}.quantity-input::-webkit-outer-spin-button,.quantity-input::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none;margin:0}.quantity-input[type=number]{-moz-appearance:textfield;appearance:textfield}.price-summary{flex:1;min-width:150px}.price-row{display:flex;justify-content:space-between;padding:.35rem 0;font-size:.9rem;color:#6c757d}.price-row.total{border-top:1px solid #e0e0e0;margin-top:.35rem;padding-top:.5rem;font-weight:600;font-size:1rem;color:#285261}.purchase-btn{padding:.75rem 2rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;background:#285261;color:#fff;border:none;white-space:nowrap}.purchase-btn:hover:not(:disabled){background:#1e3d47}.purchase-btn:disabled{opacity:.6;cursor:not-allowed}.purchase-error{background:#f8d7da;color:#721c24;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem}.change-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.change-plan-option{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;transition:all .2s ease}.change-plan-option:hover{border-color:#285261;background:#f0f9f9}.option-info h4{font-size:1rem;font-weight:600;color:#285261;margin:0 0 .25rem}.option-info .option-credits{font-size:.85rem;color:#6c757d;margin:0}.option-info .option-price{font-size:.9rem;font-weight:600;color:#285261;margin:.25rem 0 0}.history-list{display:flex;flex-direction:column;gap:.5rem}.history-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f8f9fa;border-radius:8px}.history-info{display:flex;flex-direction:column;gap:.15rem}.history-description{font-size:.95rem;font-weight:600;color:#285261}.history-date{font-size:.85rem;color:#6c757d}.history-status{text-transform:capitalize}.history-status.active{color:#28a745}.history-status.cancelled,.history-status.canceled{color:#dc3545}.history-amount{font-size:.95rem;font-weight:600;color:#285261}.no-history{text-align:center;padding:1.5rem;color:#6c757d;font-size:.9rem}.pricing-cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-top:1rem}.pricing-card-modern{background:#fff;border:2px solid #e0e0e0;border-radius:12px;padding:1.5rem;text-align:center;position:relative;transition:all .3s ease}.pricing-card-modern:hover{border-color:#285261;transform:translateY(-4px);box-shadow:0 8px 25px #28526126}.pricing-card-modern.popular{border-color:#285261;box-shadow:0 4px 20px #28526126}.popular-ribbon{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#285261;color:#fff;padding:.3rem 1rem;border-radius:20px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.card-header .tier-name{font-size:1.25rem;font-weight:600;color:#285261;margin:.5rem 0}.card-pricing{margin:1rem 0}.card-pricing .price-display{display:flex;align-items:baseline;justify-content:center;gap:.1rem}.card-pricing .currency{font-size:1.25rem;font-weight:600;color:#285261}.card-pricing .amount{font-size:2.5rem;font-weight:700;color:#285261}.card-pricing .period{font-size:.9rem;color:#6c757d}.card-pricing .classes-count{margin-top:.25rem}.card-pricing .classes-count .number{font-size:.95rem;color:#285261;font-weight:500}.features-list-modern{list-style:none;padding:0;margin:1rem 0;text-align:left}.features-list-modern li{display:flex;align-items:center;gap:.5rem;padding:.4rem 0;font-size:.85rem;color:#495057}.features-list-modern .check-icon{width:16px;height:16px;color:#28a745;flex-shrink:0}.select-btn{width:100%;padding:.75rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;background:#fff;color:#285261;border:2px solid #285261}.select-btn:hover{background:#285261;color:#fff}.extra-classes-note{text-align:center;margin-top:1.5rem;padding:1rem;background:#f0f9f9;border-radius:8px}.extra-classes-note p{margin:0;color:#285261;font-size:.9rem}.btn-outline{padding:.6rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;background:#fff;color:#285261;border:1px solid #285261;text-decoration:none}.btn-outline:hover{background:#285261;color:#fff}.btn-primary{padding:.6rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;background:#285261;color:#fff;border:none;text-decoration:none}.btn-danger{padding:.6rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;background:#fff;color:#dc3545;border:1px solid #dc3545}.btn-danger:hover{background:#dc3545;color:#fff}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:12px;padding:1.5rem;max-width:450px;width:100%;box-shadow:0 20px 60px #0000004d}.modal-content h3{font-size:1.25rem;color:#285261;margin:0 0 .75rem}.modal-content p{color:#6c757d;margin:0 0 1rem;font-size:.95rem}.modal-content .warning-text{color:#856404;background:#fff3cd;padding:.75rem;border-radius:8px;font-size:.9rem}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}@media (max-width: 1024px){.change-plan-grid,.pricing-cards-grid{grid-template-columns:repeat(2,1fr)}.credit-balance-card{flex-direction:column;text-align:center;gap:1rem}.credit-actions{width:100%;justify-content:center}.purchase-controls{flex-direction:column;align-items:stretch}.quantity-selector{align-items:center}.price-summary,.purchase-btn{width:100%}}@media (max-width: 768px){.membership-hero{padding:1.5rem 1rem}.membership-hero h1{font-size:1.75rem;letter-spacing:1px}.membership-content{padding:1.5rem 0 3rem}.section{padding:1.25rem;margin-bottom:1rem}.balance-number{font-size:2.5rem}.plan-header{flex-direction:column;gap:.75rem}.plan-price-display{text-align:left}.plan-details-grid{flex-direction:column;gap:.75rem}.detail-item{flex-direction:row;justify-content:space-between;align-items:center}.change-plan-grid,.pricing-cards-grid{grid-template-columns:1fr}.plan-actions,.modal-actions{flex-direction:column}.btn-outline,.btn-primary,.btn-danger{width:100%;text-align:center}}@media (max-width: 480px){.membership-hero h1{font-size:1.5rem}.section h2{font-size:1rem}.balance-number{font-size:2rem}.plan-title h3,.plan-price-display .price{font-size:1.25rem}}.profile-page{min-height:100vh;background-color:#f5f7fa}.profile-container{max-width:600px;margin:0 auto;padding:0 1rem}.profile-hero{background:#285261;padding:2rem 0 1.75rem;text-align:center;color:#fff}.profile-hero h1{font-size:2.5rem;font-weight:400;margin-bottom:.75rem;letter-spacing:2px;text-transform:uppercase;color:#fff}.profile-hero p{font-size:1.2rem;opacity:.95;max-width:500px;margin:0 auto;color:#fff}.profile-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:40vh;gap:1.5rem}.loading-spinner{width:48px;height:48px;border:3px solid #f0f0f0;border-top:3px solid #285261;border-radius:50%;animation:spin 1s linear infinite}.credits-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:linear-gradient(135deg,#285261,#1e3d47);color:#fff;border-radius:25px;font-size:14px;font-weight:600;margin-bottom:16px;box-shadow:0 2px 8px #28526140}.credits-icon{font-size:18px}.message{margin-bottom:16px;padding:12px 16px;border-radius:10px;font-size:14px;animation:slideIn .3s ease-out}.profile-content{padding:24px 0 40px}.profile-card{background:#fff;border-radius:16px;padding:24px;margin-bottom:16px;box-shadow:0 2px 8px #00000014}.avatar-section{text-align:center;margin-bottom:20px}.avatar{width:88px;height:88px;border-radius:50%;background:linear-gradient(135deg,#285261,#1e3d47);display:inline-flex;align-items:center;justify-content:center;margin-bottom:14px;box-shadow:0 4px 12px #28526140}.avatar-text{font-size:32px;font-weight:700;color:#fff}.user-name{font-size:24px;font-weight:600;color:#2c3e50;margin:0 0 6px}.user-email{font-size:14px;color:#6c757d;margin:0 0 4px}.member-since{font-size:12px;color:#6c757d;font-style:italic;margin:0}.editing-label{font-size:16px;color:#285261;font-weight:600;margin:8px 0 0}.stats-grid{display:flex;justify-content:center;align-items:stretch;padding:20px 0;border-top:1px solid #e1e4e8;margin-top:20px}.stat-item{flex:1;text-align:center;padding:0 15px;display:flex;flex-direction:column;align-items:center;justify-content:center}.stat-item:not(:last-child){border-right:1px solid #e1e4e8}.stat-value{display:block;font-size:26px;font-weight:700;color:#285261;margin-bottom:4px}.stat-label{font-size:11px;color:#6c757d;text-transform:uppercase;letter-spacing:.5px}.stat-divider{display:none}.edit-form{margin-top:20px}.field-group{margin-bottom:18px}.field-group label{display:block;font-size:13px;color:#6c757d;margin-bottom:8px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.field-group input{width:100%;padding:14px 16px;border:2px solid #e1e4e8;border-radius:10px;font-size:15px;color:#2c3e50;background-color:#f8f9fa;transition:all .2s ease;box-sizing:border-box}.field-group input:focus{outline:none;border-color:#285261;background-color:#fff;box-shadow:0 0 0 3px #2852611a}.field-group input.error{border-color:#dc3545;background-color:#fff5f5}.field-group input.error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.field-group .error-text{display:block;color:#dc3545;font-size:12px;margin-top:6px;font-weight:500}.field-hint{display:block;font-size:12px;color:#6c757d;margin-top:6px}.edit-actions{display:flex;gap:12px;margin-top:24px}.btn-cancel,.btn-save{flex:1;padding:14px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-cancel{background:#fff;color:#285261;border:2px solid #285261}.btn-cancel:hover:not(:disabled){background-color:#f8f9fa}.btn-save{background-color:#285261;color:#fff;border:none}.btn-save:hover:not(:disabled){background-color:#1e3d47}.btn-cancel:disabled,.btn-save:disabled{opacity:.6;cursor:not-allowed}.edit-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;border:none;border-top:1px solid #e1e4e8;margin-top:20px;background:none;color:#285261;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s ease}.edit-button:hover{background-color:#f8f9fa}.profile-section{background:#fff;border-radius:16px;margin-bottom:16px;overflow:hidden;box-shadow:0 2px 8px #00000014}.section-title{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:600;color:#2c3e50;padding:16px;border-bottom:1px solid #e1e4e8;margin:0}.coming-soon-badge{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:4px 10px;background:#f0f9f9;color:#285261;border-radius:12px;border:1px solid #285261}.menu-item{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #f0f0f0;transition:background-color .2s ease}.menu-item:last-child{border-bottom:none}.menu-item.clickable{cursor:pointer}.menu-item.clickable:hover{background-color:#f8f9fa}.menu-item.disabled{opacity:.6}.menu-item.disabled .menu-item-title{color:#6c757d}.menu-item-left{display:flex;align-items:center;flex:1;gap:12px}.menu-icon{font-size:22px;color:#285261;width:24px;flex-shrink:0}.menu-item.disabled .menu-icon{color:#adb5bd}.menu-item-content{flex:1;display:flex;flex-direction:column}.menu-item-title{font-size:15px;color:#2c3e50;font-weight:500}.menu-item-subtitle{font-size:13px;color:#6c757d;margin-top:2px}.chevron-icon{font-size:20px;color:#6c757d}.menu-item.clickable:hover .menu-icon{color:#1e3d47}.menu-item.clickable:hover .chevron-icon{color:#285261}.buy-credits-btn{padding:8px 18px;background-color:#285261;color:#fff;border:none;border-radius:18px;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .2s ease}.buy-credits-btn:hover{background-color:#1e3d47}.toggle-switch{position:relative;width:50px;height:28px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;transition:.3s;border-radius:28px}.toggle-slider:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 1px 3px #00000026}.toggle-switch input:checked+.toggle-slider{background-color:#285261}.toggle-switch input:checked+.toggle-slider:before{transform:translate(22px)}.toggle-switch.disabled .toggle-slider{cursor:not-allowed;opacity:.5}.toggle-switch.saving .toggle-slider{opacity:.7}.toggle-saving{position:absolute;top:50%;left:60px;transform:translateY(-50%);font-size:11px;color:#285261;font-weight:500;white-space:nowrap}.privacy-note{display:flex;gap:10px;padding:14px 16px;background-color:#f8f9fa;border-top:1px solid #e1e4e8}.info-icon{font-size:18px;color:#6c757d;flex-shrink:0;margin-top:1px}.privacy-note p{margin:0;font-size:13px;color:#6c757d;line-height:1.5}.logout-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px;background:#fff;border:2px solid #dc3545;border-radius:12px;color:#dc3545;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-bottom:12px}.logout-button:hover{background-color:#dc3545;color:#fff}.logout-icon{font-size:20px}.logout-button:hover .logout-icon{color:#fff}.delete-account-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px;background:#fff;border:1px solid #6c757d;border-radius:12px;color:#6c757d;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:20px}.delete-account-button:hover{background-color:#6c757d;color:#fff;border-color:#6c757d}.delete-account-button:hover .delete-icon{color:#fff}.delete-icon{font-size:18px}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:16px;max-width:450px;width:100%;padding:24px;box-shadow:0 10px 40px #0003;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:8px 16px 16px;border-bottom:1px solid #e1e4e8;margin-bottom:16px}.modal-header .warning-icon{font-size:48px;color:#dc3545;flex-shrink:0;margin-top:8px;overflow:visible;border-radius:0}.modal-header h3{margin:0;font-size:1.25rem;color:#2c3e50;font-weight:600}.modal-body p{margin:0 0 16px;color:#6c757d;line-height:1.6}.modal-body ul{margin:0 0 20px;padding-left:20px;color:#6c757d}.modal-body li{margin-bottom:8px}.modal-body .field-group{margin-bottom:20px}.modal-body .field-group label{display:block;font-size:14px;font-weight:600;color:#2c3e50;margin-bottom:8px}.modal-body .field-group input{width:100%;padding:12px 14px;border:2px solid #e1e4e8;border-radius:8px;font-size:15px;box-sizing:border-box}.modal-body .field-group input:focus{outline:none;border-color:#dc3545}.modal-actions{display:flex;gap:12px;margin-top:24px}.modal-actions .btn-cancel{flex:1;padding:12px;background:#fff;border:2px solid #e1e4e8;border-radius:8px;color:#6c757d;font-size:15px;font-weight:600;cursor:pointer}.modal-actions .btn-cancel:hover{background-color:#f8f9fa}.modal-actions .btn-delete{flex:1;padding:12px;background:#dc3545;border:none;border-radius:8px;color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:background-color .2s ease}.modal-actions .btn-delete:hover:not(:disabled){background-color:#c82333}.modal-actions .btn-delete:disabled{opacity:.6;cursor:not-allowed}.app-info{text-align:center;padding:20px}.app-info p{margin:0;font-size:12px;color:#6c757d}.app-info p:first-child{margin-bottom:4px}.icon-inline{font-size:16px;vertical-align:middle;color:#285261}@keyframes slideIn{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 768px){.profile-hero{padding:1.75rem 0 1.5rem}.profile-hero h1{font-size:2rem}.profile-container{padding:0 16px}.profile-content{padding:16px 0 32px}.profile-card{padding:20px}.avatar{width:80px;height:80px}.avatar-text{font-size:28px}.user-name{font-size:22px}.stats-grid{padding:16px 0}.stat-value{font-size:22px}}@media (max-width: 480px){.profile-hero h1{font-size:1.75rem;letter-spacing:1px}.profile-hero p{font-size:1rem}.credits-badge{font-size:13px;padding:8px 14px}.profile-card{padding:16px;border-radius:12px}.profile-section{border-radius:12px}.edit-actions{flex-direction:column}.toggle-saving{display:none}.modal-content{padding:20px}.modal-actions{flex-direction:column}}.navbar{background-color:#fff;box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1));position:sticky;top:0;z-index:var(--z-sticky, 200);padding:.75rem 0}.nav-container{max-width:var(--container-max, 1200px);margin:0 auto;padding:0 var(--container-padding, 1rem);display:flex;justify-content:space-between;align-items:center;position:relative}.nav-logo{display:flex;align-items:center;z-index:calc(var(--z-sticky, 200) + 10);flex-shrink:0}.nav-logo a{display:flex;align-items:center;text-decoration:none}.logo-image{height:50px;width:auto;display:block;transition:opacity var(--transition-fast, .15s ease)}.logo-image:hover{opacity:.8}.nav-right{display:flex;align-items:center;gap:1rem;z-index:calc(var(--z-sticky, 200) + 10);flex-shrink:0}.join-now-button-desktop{display:none;background-color:var(--primary-color, #285261);color:#fff;padding:.6rem 1.25rem;border-radius:var(--border-radius, 8px);font-weight:500;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;border:none;cursor:pointer;transition:all var(--transition-fast, .15s ease);white-space:nowrap}.join-now-button-desktop:hover{background-color:var(--primary-dark, #1e3d47);transform:translateY(-1px);box-shadow:0 2px 8px #2852614d}@media (min-width: 1024px){.join-now-button-desktop{display:block}}.hamburger{display:flex;flex-direction:column;justify-content:space-between;width:28px;height:20px;background:transparent;border:none;cursor:pointer;padding:0;z-index:calc(var(--z-sticky, 200) + 10)}.hamburger span{display:block;width:100%;height:3px;background-color:var(--primary-color, #285261);border-radius:2px;transition:all var(--transition-base, .3s ease);transform-origin:center}.hamburger.open span:nth-child(1){transform:translateY(8.5px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-8.5px) rotate(-45deg)}@media (min-width: 1024px){.hamburger{display:none}}.nav-menu{display:flex;list-style:none;margin:0;padding:0;align-items:center;gap:1.5rem}.nav-item-mobile-only{display:block}@media (min-width: 1024px){.nav-item-mobile-only{display:none}}@media (max-width: 1023px){.nav-menu{position:fixed;top:0;right:-100%;width:80%;max-width:320px;height:100vh;background:#fff;flex-direction:column;align-items:flex-start;padding:80px 24px 24px;gap:0;box-shadow:-4px 0 20px #00000026;transition:right var(--transition-base, .3s ease);overflow-y:auto;z-index:var(--z-sticky, 200)}.nav-menu.open{right:0;z-index:calc(var(--z-sticky, 200) + 20)}.nav-item{width:100%;border-bottom:1px solid var(--border-color, #e0e0e0)}.nav-item:last-child{border-bottom:none}.nav-link{display:block;padding:16px 0;font-size:1rem;width:100%}.nav-link.join-now-button{margin-top:16px;text-align:center}}.nav-overlay{display:none}@media (max-width: 1023px){.nav-overlay{display:block;position:fixed;inset:0;background:#00000080;opacity:0;visibility:hidden;transition:all var(--transition-base, .3s ease);z-index:calc(var(--z-sticky, 200) - 1)}.nav-overlay.open{opacity:1;visibility:visible}}.nav-link{text-decoration:none;color:var(--text-primary, #213547);font-weight:400;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;transition:color var(--transition-fast, .15s ease);padding:.5rem 0;white-space:nowrap}.nav-link:hover{color:var(--primary-color, #285261)}.nav-link.join-now-button{background-color:var(--primary-color, #285261);color:#fff;padding:.6rem 1.25rem;border-radius:var(--border-radius, 8px);font-weight:500;transition:all var(--transition-fast, .15s ease);border:none;cursor:pointer}.nav-link.join-now-button:hover{background-color:var(--primary-dark, #1e3d47);color:#fff;transform:translateY(-1px);box-shadow:0 2px 8px #2852614d}.quick-add-nav-button{background:var(--primary-color, #285261)!important;color:#fff!important;border:none!important;padding:8px 16px!important;border-radius:var(--border-radius, 8px)!important;cursor:pointer;font-weight:500;font-size:.85rem;transition:all var(--transition-fast, .15s ease)}.quick-add-nav-button:hover{background:var(--primary-dark, #1e3d47)!important}.profile-button{width:40px;height:40px;border-radius:50%;background-color:var(--primary-color, #285261);border:2px solid white;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast, .15s ease);padding:0;flex-shrink:0;margin:0}.profile-icon{width:24px;height:24px;stroke:#fff;fill:none}.profile-button:hover{background-color:var(--primary-dark, #1e3d47);transform:translateY(-1px);box-shadow:0 2px 8px #2852614d}.nav-role-badge{display:inline-block;padding:4px 12px;border-radius:var(--border-radius-sm, 4px);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.studio-portal-link{position:relative;color:var(--primary-color, #285261)!important;font-weight:500}.studio-portal-link:hover{color:var(--primary-dark, #1e3d47)!important}@media (min-width: 1024px){.navbar{padding:1rem 0}.logo-image{height:60px}.nav-menu{position:absolute;left:50%;transform:translate(-50%);gap:2rem}.nav-link{font-size:.85rem}}@media (min-width: 1200px){.logo-image{height:65px}.nav-menu{gap:2.5rem}}.navbar{animation:slideDown .3s ease-out}.navbar:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#fff,#f8f9fa);z-index:-1}.signin-form{max-width:520px;margin:0 auto;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a}.signin-header{text-align:center;margin-bottom:2rem}.signin-header h2{margin:0 0 .5rem;color:#1a1a1a;font-size:1.75rem;font-weight:600}.signin-header p{margin:0;color:#666;font-size:.95rem}.signin-form-content{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;width:100%}@media (max-width: 480px){.form-row{grid-template-columns:1fr;gap:1.5rem}}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:500;color:#333;font-size:.9rem}.form-group input,.select-input{padding:.75rem;border:2px solid #e1e5e9;border-radius:8px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;background:#fff}.form-group input:focus,.select-input:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.form-group input.error,.select-input.error{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.form-group input:disabled,.select-input:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.6}.select-input{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}.password-input-container{position:relative}.password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.password-toggle:hover{color:#374151}.password-toggle:disabled{cursor:not-allowed;opacity:.5}.checkbox-group{margin-top:.5rem}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;font-size:.9rem;line-height:1.5}.checkbox-label input[type=checkbox]{margin:0;width:1.25rem;height:1.25rem;flex-shrink:0;margin-top:.125rem}.checkbox-text{color:#4b5563}.error-message{color:#dc2626;font-size:.875rem;margin-top:.25rem}.general-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.75rem;margin-bottom:1rem;text-align:center}.success-message{background:#f0fdf4!important;border-color:#bbf7d0!important;color:#166534!important}.signin-button{background:#285261;color:#fff;border:none;padding:.875rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px}.signin-button:hover:not(:disabled){background:#1e3d47;transform:translateY(-1px)}.signin-button:active:not(:disabled){transform:translateY(0)}.signin-button:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.loading-spinner{animation:spin 1s linear infinite}.form-footer{text-align:center;margin-top:1rem}.link-button{background:none;border:none;color:#285261;text-decoration:underline;cursor:pointer;font-size:.9rem;padding:0;transition:color .2s ease}.link-button:hover{color:#1e3d47}.form-switch{text-align:center;margin-top:2rem;padding-top:2rem;border-top:1px solid #e5e7eb;color:#6b7280;font-size:.9rem}.form-switch .link-button{font-size:.9rem;font-weight:500}.resend-verification-section{margin-bottom:1rem;text-align:center}.resend-verification-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:#e8f4f8;border:1px solid #285261;color:#285261;padding:.625rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;width:100%}.resend-verification-button:hover:not(:disabled){background:#d4e8ed}.resend-verification-button:disabled{background:#f3f4f6;border-color:#d1d5db;color:#9ca3af;cursor:not-allowed}.loading-spinner-small{animation:spin 1s linear infinite}@media (max-width: 480px){.signin-form{padding:1.5rem;margin:1rem;max-width:calc(100% - 2rem)}.signin-header h2{font-size:1.5rem}.signin-form{border-radius:8px}.resend-verification-button{font-size:.8rem;padding:.5rem .75rem}}.password-checklist{margin-top:12px;padding:12px;background-color:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.requirement-item{display:flex;align-items:center;gap:8px;font-size:12px;transition:color .2s ease}.requirement-item.met{color:#28a745}.requirement-icon{font-size:14px;width:16px;text-align:center}.requirement-item.met .requirement-icon{color:#28a745}.password-match-indicator{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:12px}.password-match-indicator.match{color:#28a745}.match-icon{font-size:14px}@media (max-width: 480px){.password-checklist{padding:10px}.requirement-item{font-size:11px}.strength-label{font-size:11px;min-width:45px}}.forgot-password-form{max-width:520px;margin:0 auto;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a}.header-icon-container{display:flex;justify-content:center;margin-bottom:1.5rem}.header-icon{width:80px;height:80px;border-radius:50%;background-color:#f8f9fa;display:flex;align-items:center;justify-content:center}.forgot-password-title{text-align:center;margin:0 0 .75rem;color:#1a1a1a;font-size:1.75rem;font-weight:600}.forgot-password-description{text-align:center;margin:0 0 2rem;color:#666;font-size:.95rem;line-height:1.5}.forgot-password-form-content{display:flex;flex-direction:column;gap:1.5rem}.forgot-password-form .form-group{display:flex;flex-direction:column;gap:.5rem}.forgot-password-form .form-group label{font-weight:500;color:#333;font-size:.9rem}.forgot-password-form .form-group input{padding:.75rem;border:2px solid #e1e5e9;border-radius:8px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;background:#fff}.forgot-password-form .form-group input:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.forgot-password-form .form-group input.error{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.forgot-password-form .form-group input:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.6}.forgot-password-form .error-message{color:#dc2626;font-size:.875rem;margin-top:.25rem}.forgot-password-form .general-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.75rem;margin-bottom:1rem;text-align:center}.forgot-password-form .primary-button{background:#285261;color:#fff;border:none;padding:.875rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;width:100%}.forgot-password-form .primary-button:hover:not(:disabled){background:#1e3d47;transform:translateY(-1px)}.forgot-password-form .primary-button:active:not(:disabled){transform:translateY(0)}.forgot-password-form .primary-button:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.forgot-password-form .link-button{background:none;border:none;color:#285261;text-decoration:underline;cursor:pointer;font-size:.9rem;padding:0;transition:color .2s ease}.forgot-password-form .link-button:hover{color:#1e3d47}.forgot-password-form .link-button:disabled{color:#9ca3af;cursor:not-allowed}.back-to-login{text-align:center;margin-top:.5rem}.back-link{display:inline-flex;align-items:center;gap:.375rem;text-decoration:none!important}.back-link svg{transition:transform .2s ease}.back-link:hover svg{transform:translate(-3px)}.forgot-password-form .loading-spinner{animation:spin 1s linear infinite}.success-icon-container{display:flex;justify-content:center;margin-bottom:1.5rem;margin-top:1rem}.success-icon{width:100px;height:100px;border-radius:50%;background-color:#e8f4f8;display:flex;align-items:center;justify-content:center}.success-title{text-align:center;margin:0 0 1.25rem;color:#1a1a1a;font-size:1.75rem;font-weight:600;display:block;width:100%}.success-subtitle{text-align:center;margin:0 0 .5rem;color:#666;font-size:.95rem;line-height:1.5;display:block;width:100%;background:none!important;border:none!important;padding:0!important}.success-email{text-align:center;margin:0 0 .5rem;color:#285261;font-size:1.15rem;font-weight:600;word-break:break-word;display:block;width:100%}.success-note{text-align:center;margin:0 0 1.5rem;color:#888;font-size:.85rem;line-height:1.4;display:block;width:100%}.success-message{text-align:center;margin:0;color:#666;font-size:.95rem;line-height:1.5;display:block;width:100%;background:none!important;border:none!important;padding:0!important}.success-content{display:block;width:100%;text-align:center;margin-bottom:1.5rem}.email-highlight{font-weight:600;color:#285261}.instructions-container{background-color:#f8faf8;border-radius:12px;padding:1.25rem;margin-bottom:1rem;border:1px solid #e8f0e8}.instructions-title{font-size:.9rem;font-weight:600;color:#333;margin:0 0 1rem}.instruction-item{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;font-size:.9rem;color:#555}.instruction-item:last-child{margin-bottom:0}.instruction-item svg{flex-shrink:0}.expiry-note{font-size:.75rem;color:#666;text-align:center;font-style:italic;margin-bottom:1.5rem}.success-actions{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.try-again-button{text-align:center}.help-text{font-size:.75rem;color:#666;text-align:center;margin:0}.help-link{color:#285261;font-weight:500;text-decoration:none}.help-link:hover{text-decoration:underline}@media (max-width: 480px){.forgot-password-form{padding:1.5rem;margin:1rem;max-width:calc(100% - 2rem);border-radius:8px}.forgot-password-title,.success-title{font-size:1.5rem}.header-icon,.success-icon{width:70px;height:70px}.header-icon svg{width:32px;height:32px}.success-icon svg{width:40px;height:40px}}.profile-dropdown{position:relative;display:flex;align-items:center}.profile-button{width:40px;height:40px;border-radius:50%;background-color:#285261;border:2px solid white;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;margin:0;padding:0}.profile-button:hover{background-color:#1e3a4a;transform:translateY(-1px)}.profile-button:disabled{cursor:not-allowed;opacity:.6}.profile-icon{width:42px;height:42px;stroke:#fff;fill:none}.profile-icon.loading{animation:spin 1s linear infinite}.dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:260px;background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026;border:1px solid #e5e7eb;z-index:1000;overflow:hidden;animation:dropdownSlide .2s ease-out}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{padding:1rem;background:linear-gradient(135deg,#285261,#1e3d47);border-bottom:1px solid #e5e7eb}.dropdown-user-info{text-align:left}.dropdown-user-name{font-weight:600;color:#fff;margin-bottom:.25rem;font-size:.95rem}.dropdown-user-email{color:#fffc;font-size:.875rem;margin-bottom:.25rem}.dropdown-user-role{color:#5fd4d6;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.dropdown-divider{height:1px;background:#e5e7eb;margin:.25rem 0}.dropdown-item{width:100%;padding:.75rem 1rem;border:none;background:none;text-align:left;cursor:pointer;display:flex;align-items:center;gap:.75rem;font-size:.9rem;color:#374151;transition:background-color .15s ease}.dropdown-item:hover{background:#f3f4f6}.dropdown-item:active{background:#e5e7eb}.dropdown-item.sign-out{color:#dc2626}.dropdown-item.sign-out:hover{background:#fef2f2;color:#b91c1c}.dropdown-item svg{flex-shrink:0;color:currentColor}.auth-modal-overlay{position:fixed;inset:0;background:#00000080;z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem;animation:modalFadeIn .3s ease-out}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.auth-modal{position:relative;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;animation:modalSlideUp .3s ease-out}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:1rem;right:1rem;z-index:10;background:#ffffffe6;border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:#6b7280}.modal-close:hover{background:#fff;color:#374151;transform:scale(1.05)}@media (max-width: 768px){.dropdown-menu{min-width:240px;right:-20px}.auth-modal-overlay{padding:.5rem}.auth-modal{max-height:95vh}}@media (max-width: 480px){.dropdown-menu{min-width:220px;right:-40px}}.site-footer{background-color:var(--primary-color);color:#fff;padding:var(--space-2xl) var(--container-padding) var(--space-lg);margin-top:auto}.footer-container{max-width:var(--container-max);margin:0 auto}.footer-main{display:flex;flex-direction:column;gap:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:1px solid rgba(255,255,255,.15)}.footer-brand{text-align:center}.footer-logo{font-size:1.5rem;font-weight:700;color:#fff;text-decoration:none;display:inline-block;margin-bottom:var(--space-sm)}.footer-logo:hover{opacity:.9;color:#fff}.footer-tagline{font-size:var(--font-size-sm);color:#ffffffb3;line-height:1.6;max-width:280px;margin:0 auto}.footer-links{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}.footer-column h4{font-size:var(--font-size-xs);font-weight:600;color:#fff;margin:0 0 var(--space-md) 0;text-transform:uppercase;letter-spacing:.5px}.footer-column ul{list-style:none;padding:0;margin:0}.footer-column li{margin-bottom:var(--space-sm)}.footer-column a{font-size:var(--font-size-sm);color:#ffffffb3;text-decoration:none;transition:color var(--transition-fast)}.footer-column a:hover{color:#fff}.footer-bottom{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding-top:var(--space-lg);text-align:center}.footer-copyright,.footer-location{font-size:var(--font-size-xs);color:#ffffff80;margin:0}@media (min-width: 768px){.site-footer{padding:var(--space-2xl) var(--container-padding)}.footer-main{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:var(--space-2xl)}.footer-brand{text-align:left;flex-shrink:0;max-width:250px}.footer-tagline{margin-left:0;margin-right:0}.footer-links{grid-template-columns:repeat(4,1fr);gap:var(--space-xl);flex:1}.footer-bottom{flex-direction:row;justify-content:space-between}}@media (min-width: 1024px){.site-footer{padding:var(--space-3xl) var(--container-padding) var(--space-xl)}.footer-main{gap:var(--space-3xl);padding-bottom:var(--space-xl)}.footer-brand{max-width:280px}.footer-logo{font-size:1.75rem}}.become-partner-page{min-height:100vh;background:#f8f9fa}.partner-hero{background:#285261;color:#fff;text-align:center;padding:2rem 0 1.75rem;margin-bottom:0}.partner-hero h1{font-size:2.5rem;font-weight:400;margin-bottom:.75rem;letter-spacing:2px;text-transform:uppercase;color:#fff}.partner-hero p{font-size:1.2rem;opacity:.95;max-width:500px;margin:0 auto}.partner-benefits{max-width:1200px;margin:0 auto 40px;padding:1.5rem 20px 0}.partner-benefits h2{color:#285261;text-align:center;font-size:2.5rem;margin-top:0;margin-bottom:30px;font-weight:600}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-bottom:60px}.benefit-card{background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:40px 30px;text-align:center;transition:all .3s ease;box-shadow:0 2px 8px #28526114;position:relative;overflow:hidden}.benefit-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#285261,#3a6d7e);transform:scaleX(0);transition:transform .3s ease}.benefit-card:hover:before{transform:scaleX(1)}.benefit-card:hover{transform:translateY(-5px);box-shadow:0 8px 24px #28526126;border-color:#285261}.benefit-card h3{color:#285261;font-size:1.5rem;margin-bottom:15px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem}.benefit-card h3 svg{font-size:1.75rem;flex-shrink:0}.benefit-card p{color:#2c3e50;font-size:1.1rem;line-height:1.6}.partner-form-section{max-width:900px;margin:0 auto;padding:0 20px 80px}.partner-form-section h2{color:#285261;text-align:center;font-size:2rem;margin-bottom:40px;font-weight:600}.success-message{background:#d4edda;color:#155724;border:1px solid #c3e6cb;border-radius:8px;padding:30px;margin-bottom:30px;text-align:center;animation:slideDown .5s ease}.success-message h3{font-size:1.5rem;margin-bottom:15px}.success-message p{font-size:1.1rem;line-height:1.6;margin-bottom:10px}.error-message{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-radius:8px;padding:20px;margin-bottom:30px;text-align:center;animation:slideDown .5s ease}.error-message h3{font-size:1.3rem;margin-bottom:10px}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.partner-form{background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:0;box-shadow:0 4px 12px #28526114;overflow:hidden}.form-section{padding:30px 40px;border-bottom:1px solid #e5e5e5}.form-section h3{color:#285261;font-size:1.3rem;font-weight:600;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #f0f7ff}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px}.form-field{position:relative}.form-section>.form-field{margin-bottom:20px}.form-field input,.form-field select,.form-field textarea{width:100%;padding:14px 16px;border:2px solid #e0e0e0;border-radius:6px;font-size:1rem;font-family:inherit;background:#fff;color:#2c3e50;transition:all .3s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a;background:#fcfcfc}.form-field input::placeholder,.form-field textarea::placeholder{color:#999}.form-field input.error,.form-field select.error{border-color:#dc3545;background:#fff5f5}.error-text{color:#dc3545;font-size:.85rem;margin-top:5px;display:block;animation:slideDown .3s ease}.form-field select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23999' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}.form-field textarea{width:100%;resize:vertical;min-height:150px}.form-actions{padding:30px 40px;background:#f8f9fa;border-top:1px solid #e5e5e5}.submit-button{background:#285261;color:#fff;border:none;border-radius:8px;padding:16px 40px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;width:100%;text-transform:uppercase;letter-spacing:.5px;position:relative;overflow:hidden}.submit-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#fff3;transform:translate(-50%,-50%);transition:width .6s,height .6s}.submit-button:hover:not(:disabled):before{width:400px;height:400px}.submit-button:hover:not(:disabled){background:#1e3d47;transform:translateY(-2px);box-shadow:0 6px 20px #2852614d}.submit-button:disabled{background:#999;cursor:not-allowed;opacity:.7}.form-note{text-align:center;color:#666;font-size:.9rem;margin-top:15px;font-style:italic}.form-progress{display:flex;justify-content:space-between;padding:20px 40px;background:#f8f9fa;border-bottom:1px solid #e5e5e5}.progress-step{flex:1;text-align:center;position:relative}.progress-step:after{content:"";position:absolute;top:15px;right:-50%;width:100%;height:2px;background:#e0e0e0;z-index:0}.progress-step:last-child:after{display:none}.progress-step.active .progress-dot,.progress-step.completed .progress-dot{background:#285261;color:#fff}.progress-step.active:after,.progress-step.completed:after{background:#285261}.progress-dot{width:30px;height:30px;border-radius:50%;background:#e0e0e0;color:#999;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;position:relative;z-index:1}.progress-label{display:block;margin-top:8px;font-size:12px;color:#666}@media (max-width: 768px){.partner-hero h1{font-size:2rem}.partner-hero p{font-size:1.1rem}.form-row{grid-template-columns:1fr}.form-section,.form-actions{padding:20px}.benefits-grid{grid-template-columns:1fr}.partner-benefits h2{font-size:2rem}.form-field input,.form-field select,.form-field textarea{font-size:16px}}.submit-button:disabled:after{content:"";display:inline-block;width:14px;height:14px;margin-left:10px;border:2px solid #ffffff;border-radius:50%;border-top-color:transparent;animation:spin 1s linear infinite}.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible{outline:2px solid #285261;outline-offset:2px}@media print{.partner-hero,.partner-benefits,.submit-button{display:none}.partner-form{box-shadow:none;border:1px solid #000}}.settings-container{min-height:100vh;background-color:#f5f7fa;padding-bottom:40px}.settings-header{background-color:#fff;padding:20px 24px;border-bottom:1px solid #e1e4e8;box-shadow:0 2px 4px #0000000d}.settings-header h1{font-size:24px;font-weight:600;color:#2c3e50;margin:10px 0 0}.settings-content{padding:20px;max-width:800px;margin:0 auto}.settings-card{background:#fff;border-radius:12px;padding:24px;margin-bottom:20px;box-shadow:0 2px 8px #00000014}.settings-card h2{font-size:18px;font-weight:600;color:#2c3e50;margin:0 0 20px}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.card-header h2{margin:0}.field-group{margin-bottom:20px}.field-group label{display:block;font-size:14px;font-weight:500;color:#6c757d;margin-bottom:8px}.field-group input,.field-group textarea{width:100%;padding:12px;border:1px solid #e1e4e8;border-radius:8px;font-size:15px;transition:border-color .2s}.field-group input:focus,.field-group textarea:focus{outline:none;border-color:#285261}.btn-primary{background-color:#285261;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:background-color .2s}.btn-primary:hover:not(:disabled){background-color:#1e3d47}.btn-text{background:none;border:none;color:#285261;font-size:14px;cursor:pointer;padding:4px 8px;transition:opacity .2s}.btn-text:hover{opacity:.7}.btn-text.danger{color:#dc3545}.message{padding:12px 16px;border-radius:8px;margin-bottom:20px;animation:slideIn .3s ease-out}.message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.message.info{background-color:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.payment-methods-list{margin-top:20px}.payment-method-item{display:flex;justify-content:space-between;align-items:center;padding:16px;border:1px solid #e1e4e8;border-radius:8px;margin-bottom:12px}.method-info{display:flex;align-items:center;gap:12px}.card-icon{font-size:24px}.card-number{font-size:15px;font-weight:500;color:#2c3e50;margin:0 0 4px}.card-details{font-size:13px;color:#6c757d;margin:0}.method-actions{display:flex;align-items:center;gap:12px}.default-badge{background-color:#285261;color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.notification-item{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid #f0f0f0}.notification-info{flex:1;display:flex;flex-direction:column}.notification-title{font-size:15px;font-weight:500;color:#2c3e50;margin-bottom:4px}.notification-description{font-size:13px;color:#6c757d}.save-button{margin-top:20px;width:100%}.security-tips{list-style:none;padding:0;margin:0}.security-tips li{color:#6c757d;font-size:14px;padding:8px 0 8px 24px;position:relative}.security-tips li:before{content:"✓";position:absolute;left:0;color:#285261;font-weight:700}.empty-state{text-align:center;padding:40px 20px}.info-text{font-size:14px;color:#6c757d;margin:10px 0}.loading{text-align:center;padding:40px;color:#6c757d}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:16px;font-size:12px;font-weight:600;white-space:nowrap;flex-shrink:0}.status-badge.active{background-color:#d4edda;color:#155724}.status-badge.active svg{font-size:14px}.status-badge.coming-soon{background-color:#f0f0f0;color:#6c757d;font-size:11px}.coming-soon-badge{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:4px 10px;background:#f0f9f9;color:#285261;border-radius:12px;border:1px solid #285261;margin-left:12px;vertical-align:middle}.settings-header{margin-bottom:24px}.settings-subtitle{color:#6c757d;font-size:14px;margin-top:8px}.link-forward:hover{color:#1e3d47}.notification-item{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid #f0f0f0}.notification-item:last-child{border-bottom:none}.notification-item.always-on{background-color:#f8fdf9}.notification-item.disabled{opacity:.7}.notification-info{display:flex;align-items:flex-start;gap:12px;flex:1}.notification-icon{font-size:22px;color:#285261;margin-top:2px;flex-shrink:0}.notification-item.disabled .notification-icon{color:#adb5bd}.notification-title{display:block;font-size:15px;font-weight:500;color:#2c3e50;margin-bottom:2px}.notification-description{display:block;font-size:13px;color:#6c757d;line-height:1.4}.always-on-note{padding:12px 16px;background-color:#f8f9fa;border-top:1px solid #e1e4e8}.always-on-note p{margin:0;font-size:12px;color:#6c757d;line-height:1.5}.settings-card h2{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.info-text{font-size:13px;color:#6c757d;margin:0 0 16px;padding:0 16px}.settings-card{background:#fff;border-radius:12px;margin-bottom:16px;box-shadow:0 2px 8px #00000014;overflow:hidden}.settings-card h2{font-size:16px;font-weight:600;color:#2c3e50;padding:16px;margin:0;border-bottom:1px solid #e1e4e8}.support-container{min-height:100vh;background-color:#f5f7fa;padding-bottom:40px}.support-header{background-color:#fff;padding:20px 24px;border-bottom:1px solid #e1e4e8;box-shadow:0 2px 4px #0000000d}.support-header h1{font-size:24px;font-weight:600;color:#2c3e50;margin:10px 0 0}.support-content{padding:20px;max-width:800px;margin:0 auto}.support-tabs{display:flex;gap:10px;margin-bottom:30px;background:#fff;padding:4px;border-radius:12px;box-shadow:0 2px 8px #00000014}.tab{flex:1;padding:12px;background:none;border:none;border-radius:8px;font-size:15px;font-weight:500;color:#6c757d;cursor:pointer;transition:all .2s}.tab.active{background-color:#285261;color:#fff}.tab:not(.active):hover{background-color:#f0f0f0}.faq-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000014}.faq-section h2{font-size:20px;font-weight:600;color:#2c3e50;margin:0 0 24px}.faq-item{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #f0f0f0}.faq-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.faq-item h3{font-size:16px;font-weight:600;color:#285261;margin:0 0 8px}.faq-item p{font-size:14px;color:#6c757d;line-height:1.6;margin:0}.contact-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000014}.contact-section h2{font-size:20px;font-weight:600;color:#2c3e50;margin:0 0 12px}.contact-section>p{font-size:14px;color:#6c757d;margin-bottom:24px}.contact-section form{margin-bottom:32px}.contact-info{padding-top:24px;border-top:1px solid #e1e4e8}.contact-info h3{font-size:16px;font-weight:600;color:#2c3e50;margin:0 0 12px}.contact-info p{font-size:14px;color:#6c757d;margin:8px 0}.legal-links{margin-top:24px;padding-top:20px;border-top:1px solid #e1e4e8;text-align:center;font-size:14px;color:#6c757d}.legal-links a{color:#285261;text-decoration:none}.legal-links a:hover{text-decoration:underline}.legal-container{min-height:100vh;background-color:#f5f7fa;padding-bottom:40px}.legal-header{background-color:#fff;padding:20px 24px;border-bottom:1px solid #e1e4e8;box-shadow:0 2px 4px #0000000d}.legal-header h1{font-size:24px;font-weight:600;color:#2c3e50;margin:10px 0 0}.legal-content{padding:20px;max-width:800px;margin:0 auto}.legal-section{background:#fff;border-radius:12px;padding:24px;margin-bottom:20px;box-shadow:0 2px 8px #00000014}.legal-section h2{font-size:20px;font-weight:600;color:#285261;margin:0 0 12px}.legal-section h3{font-size:16px;font-weight:600;color:#2c3e50;margin:24px 0 12px}.legal-section p{font-size:14px;color:#6c757d;line-height:1.6;margin:0 0 16px}.last-updated{font-size:13px;font-style:italic;color:#999;margin-bottom:24px!important}.legal-section ul{margin:0 0 16px;padding-left:24px}.legal-section li{font-size:14px;color:#6c757d;line-height:1.6;margin-bottom:8px}.legal-section li strong{color:#2c3e50}.legal-link{color:#285261;text-decoration:none;font-weight:500}.legal-link:hover{text-decoration:underline}.legal-disclaimer{font-size:12px;text-transform:uppercase;letter-spacing:.3px}.back-button{display:inline-flex;align-items:center;gap:8px;background:none;border:2px solid #285261;color:#285261;font-size:14px;font-weight:600;cursor:pointer;padding:10px 18px;border-radius:8px;margin-bottom:24px;transition:all .2s ease}.back-button:hover{background-color:#285261;color:#fff}.back-button svg{font-size:18px}.link-forward{display:inline-flex;align-items:center;gap:6px;color:#285261;font-weight:500;text-decoration:none;transition:color .2s ease}.link-forward:hover{color:#1e3d47;text-decoration:none}.link-forward svg{font-size:16px}.studio-signup-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#285261,#1e3d47);padding:2rem}.signup-card{background:#fff;border-radius:16px;box-shadow:0 25px 80px #0003;width:100%;max-width:600px;overflow:hidden}.signup-header{text-align:center;padding:2.5rem 2rem;background:linear-gradient(135deg,#285261,#1e3d47);color:#fff;position:relative}.signup-header h1{font-size:2rem;font-weight:700;margin:0 0 .75rem;color:#fff}.signup-header .studio-name{font-size:1.35rem;font-weight:500;color:#fff!important;margin:.5rem 0;opacity:1}.signup-subtitle{font-size:1rem;opacity:.85;margin:.75rem 0 0;color:#fff}.signup-form{padding:2rem}.form-section{margin-bottom:.75rem}.form-section:last-of-type{margin-bottom:.5rem}.form-section h3{font-size:1.125rem;font-weight:600;color:#2c3e50;margin-bottom:.75rem;padding-bottom:.4rem;border-bottom:2px solid #f0f0f0}.form-group{margin-bottom:.75rem}.form-group label{display:block;font-size:.875rem;font-weight:600;color:#2c3e50;margin-bottom:.5rem}.form-group small{display:block;font-size:.75rem;color:#888;margin-top:.35rem}.form-input{width:100%;padding:.875rem 1rem;border:1.5px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:all .2s ease;color:#2c3e50;background:#fff}.form-input::placeholder{color:#aaa}.form-input:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.form-input.disabled{background-color:#f8f8f8;cursor:not-allowed;color:#666;border-color:#e5e5e5}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 640px){.studio-signup-container{padding:1rem}.signup-card{border-radius:12px}.signup-header{padding:2rem 1.5rem}.signup-header h1{font-size:1.75rem}.signup-form{padding:1.5rem}.form-row{grid-template-columns:1fr}}.password-requirements{margin-top:.75rem;padding:.875rem;background:#fef2f2;border-radius:8px;font-size:.875rem;border:1px solid #fecaca}.requirement-error{color:#dc3545;margin:.3rem 0;display:flex;align-items:center;gap:.5rem}.requirement-success{color:#16a34a;margin-top:.5rem;font-size:.875rem;font-weight:500}.alert{padding:1rem 1.25rem;border-radius:8px;margin:0 2rem 1.5rem;font-size:.9rem}.alert-error{background:#fef2f2;color:#dc3545;border:1px solid #fecaca}.terms-notice{font-size:.875rem;color:#666;line-height:1.6;margin:0}.terms-notice a{color:#285261;text-decoration:underline}.terms-notice a:hover{color:#1e3d47}.btn-submit{width:100%;padding:1rem 1.5rem;background:linear-gradient(135deg,#285261,#1e3d47);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-submit:hover:not(:disabled){background:linear-gradient(135deg,#1e3d47,#152a33);transform:translateY(-2px);box-shadow:0 10px 25px #28526159}.btn-submit:active:not(:disabled){transform:translateY(0)}.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.signup-footer{text-align:center;padding:1.5rem;background:#f9fafb;border-top:1px solid #e5e5e5}.signup-footer p{margin:0;font-size:.9rem;color:#666}.signup-footer a{color:#285261;text-decoration:none;font-weight:600}.signup-footer a:hover{color:#1e3d47;text-decoration:underline}.loading-spinner{text-align:center;padding:4rem 2rem;color:#666}.loading-spinner p{margin-top:1rem;font-size:1rem}.spinner{width:40px;height:40px;border:3px solid #e5e5e5;border-top-color:#285261;border-radius:50%;margin:0 auto;animation:spin .8s linear infinite}.error-message{text-align:center;padding:3rem 2rem}.error-icon{width:60px;height:60px;background:#fef2f2;color:#dc3545;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;margin:0 auto 1.5rem;border:2px solid #fecaca}.error-message h2{color:#dc3545;margin-bottom:.75rem;font-size:1.5rem}.error-message p{color:#666;margin-bottom:2rem;font-size:1rem;line-height:1.5}.error-message button{padding:.875rem 2rem;background:#285261;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.error-message button:hover{background:#1e3d47;transform:translateY(-2px);box-shadow:0 8px 20px #2852614d}.onboarding-container{min-height:100vh;background:linear-gradient(135deg,#285261,#1e3d47);display:flex;flex-direction:column}.onboarding-header{background:#fff;padding:16px 40px;box-shadow:0 2px 10px #0000001a;display:flex;justify-content:space-between;align-items:center}.onboarding-header .logo-text{font-size:1.25rem;font-weight:700;color:#285261;letter-spacing:.5px}.progress-bar-container{flex:1;max-width:400px;margin-left:40px}.progress-bar{height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;margin-bottom:5px}.progress-fill{height:100%;background:linear-gradient(90deg,#285261,#3a7a8c);transition:width .4s ease}.progress-text{font-size:12px;color:#666;text-align:right;display:block}.onboarding-content{flex:1;display:flex;max-width:1200px;width:100%;margin:30px auto;background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026;overflow:hidden}.steps-sidebar{width:260px;background:#f8f9fa;padding:24px;border-right:1px solid #e0e0e0}.steps-sidebar h3{font-size:16px;margin-bottom:20px;color:#2c3e50;font-weight:600}.steps-list{list-style:none;padding:0;margin:0}.step-item{display:flex;align-items:center;padding:12px 14px;margin-bottom:6px;border-radius:8px;cursor:pointer;transition:all .2s ease;position:relative}.step-item:hover{background:#e8e9ea}.step-item.active{background:#285261;color:#fff}.step-item.completed{color:#28a745}.step-item.completed:not(.active){background:#f1f8f4}.step-icon{font-size:20px;margin-right:12px;min-width:24px;display:flex;align-items:center;justify-content:center}.step-name{flex:1;font-size:14px;font-weight:500}.step-check{color:#28a745;font-size:16px;margin-left:8px;display:flex;align-items:center}.step-item.active .step-check{color:#fff}.step-content{flex:1;padding:32px 40px;overflow-y:auto;max-height:calc(100vh - 140px)}.welcome-header{text-align:center;margin-bottom:32px}.welcome-step h1{font-size:28px;color:#285261;margin-bottom:16px;font-weight:700}.welcome-header .lead{font-size:16px;color:#555;margin:0 auto;max-width:500px;line-height:1.6}.welcome-content .lead{font-size:16px;color:#555;margin-bottom:24px;line-height:1.6}.benefits-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:28px}.benefit-card{padding:18px;background:#f8f9fa;border-radius:8px;border:1px solid #e0e0e0;text-align:center;display:flex;flex-direction:column;align-items:stretch}.benefit-card .benefit-icon{font-size:24px;color:#285261;margin-bottom:8px}.benefit-card h3{font-size:15px;margin-bottom:8px;color:#2c3e50;font-weight:600}.benefit-card h3 svg{font-size:20px;color:#285261;vertical-align:middle;margin-right:8px}.benefit-card p,.benefit-card .benefit-description{font-size:13px;color:#666;margin:0;line-height:1.5;text-align:center}.setup-overview{background:#e8f4f8;padding:20px;border-radius:8px;margin-bottom:24px;border:1px solid #285261}.setup-overview h3{font-size:16px;margin-bottom:14px;color:#285261;font-weight:600}.setup-overview ul{list-style:none;padding:0;margin:0}.setup-overview li{padding:6px 0;font-size:14px;color:#2c3e50;display:flex;align-items:center;gap:10px}.setup-overview li svg{color:#285261;font-size:18px;flex-shrink:0}.time-estimate{margin-top:14px;padding-top:14px;font-size:14px;color:#555;display:flex;align-items:center;gap:8px}.time-estimate svg{color:#285261;font-size:18px}.welcome-cta{display:flex;justify-content:center;margin-top:8px}.btn-primary{background:linear-gradient(135deg,#285261,#1e3d47);color:#fff;border:none;padding:14px 28px;font-size:16px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .3s ease}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #28526159}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.welcome-cta .btn-primary{min-width:200px}.btn-secondary{background:#fff;color:#285261;border:2px solid #285261;padding:10px 20px;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.btn-secondary:hover:not(:disabled){background:#285261;color:#fff}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-text{background:none;border:none;color:#666;padding:10px 16px;font-size:14px;cursor:pointer;text-decoration:underline;transition:color .2s}.btn-text:hover{color:#285261}.btn-add{background:#fff;color:#285261;border:2px dashed #285261;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s;width:100%;margin-top:10px;display:flex;align-items:center;justify-content:center;gap:6px}.btn-add:hover{background:#e8f4f8;border-style:solid}.loading-spinner{text-align:center;padding:80px;color:#285261}.loading-spinner .spinner{width:50px;height:50px;border:4px solid rgba(40,82,97,.2);border-top-color:#285261;border-radius:50%;margin:0 auto 20px;animation:spin .8s linear infinite}.loading-spinner p{font-size:16px;color:#666}.error-message{text-align:center;padding:50px;background:#fff;border-radius:12px;max-width:450px;margin:80px auto;box-shadow:0 10px 40px #00000026}.error-message .error-icon{width:60px;height:60px;background:#fef2f2;color:#dc3545;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;margin:0 auto 20px;border:2px solid #fecaca}.error-message h2{color:#dc3545;margin-bottom:12px;font-size:24px}.error-message p{color:#666;margin-bottom:24px;line-height:1.5}.error-message button{padding:12px 24px;background:#285261;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.error-message button:hover{background:#1e3d47}.step-actions,.form-actions{display:flex;justify-content:space-between;align-items:center;margin-top:28px;padding-top:20px;border-top:1px solid #e5e5e5;gap:12px}.form-group{margin-bottom:18px}.form-group label{display:block;font-size:14px;font-weight:600;color:#2c3e50;margin-bottom:6px}.form-group .required{color:#dc3545}.form-group .field-hint{font-weight:400;color:#888;font-size:13px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:10px 12px;border:1.5px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .2s,box-shadow .2s;color:#2c3e50}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.form-group input.error,.form-group textarea.error{border-color:#dc3545}.form-group .error-text{color:#dc3545;font-size:12px;margin-top:4px;display:block}.form-group .char-count{font-size:12px;color:#888;text-align:right;margin-top:4px;display:block}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.info-box{background:#e8f4f8;border:1px solid #285261;border-radius:8px;padding:16px;margin-bottom:20px}.info-box strong{display:flex;align-items:center;gap:8px;color:#285261;margin-bottom:8px}.info-box ul{margin:8px 0 0 24px;padding:0}.info-box li{margin:4px 0;color:#2c3e50;font-size:14px}.success-message{background:#d4edda;color:#155724;padding:14px 18px;border-radius:8px;margin-bottom:20px;display:flex;align-items:center;gap:10px;font-size:14px;border:1px solid #c3e6cb}.success-message svg{font-size:20px}.stripe-success-content{text-align:center}.stripe-success-content h1{font-size:28px;color:#285261;margin-bottom:16px;font-weight:700}.stripe-success-content .lead{font-size:16px;color:#555;margin:0 auto 24px;max-width:500px;line-height:1.6}.step-header{text-align:center;margin-bottom:32px}.step-header h1{font-size:28px;color:#285261;margin-bottom:16px;font-weight:700}.step-header .lead{font-size:16px;color:#555;margin:0 auto;max-width:500px;line-height:1.6}.stripe-connect-step h2,.studio-profile-step h2,.instructor-import-step h2,.terms-acceptance-step h2{font-size:24px;color:#285261;margin-bottom:8px;font-weight:700}.step-description{font-size:15px;color:#555;margin-bottom:24px;line-height:1.5}.stripe-benefits{background:#f8f9fa;padding:20px;border-radius:8px;margin:20px 0}.stripe-benefits h3{font-size:16px;color:#285261;margin-bottom:14px;font-weight:600}.stripe-benefits .benefits-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:14px}.stripe-benefits .benefit-item{background:#fff;padding:14px;border-radius:6px;border:1px solid #e5e5e5}.stripe-benefits .benefit-item strong{color:#285261;font-size:14px;display:flex;align-items:center;gap:6px}.stripe-benefits .benefit-item p{font-size:13px;color:#666;margin:6px 0 0}.security-note{background:#e8f4f8;border:1px solid #285261;padding:14px;border-radius:8px;margin:20px 0;display:flex;align-items:flex-start;gap:12px}.security-note svg{font-size:22px;color:#285261;flex-shrink:0}.security-note p{margin:0;font-size:14px;color:#2c3e50;line-height:1.5}.instructor-row{display:flex;align-items:flex-start;gap:12px;padding:14px;background:#f8f9fa;border-radius:8px;margin-bottom:10px;animation:fadeIn .3s ease}.row-number{width:28px;height:28px;background:#285261;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:13px;flex-shrink:0}.instructor-inputs{flex:1;display:grid;grid-template-columns:1fr 1fr 2fr;gap:12px}.instructor-inputs input{width:100%;padding:10px 12px;border:1.5px solid #ddd;border-radius:6px;font-size:14px}.instructor-inputs input:focus{outline:none;border-color:#285261}.instructor-inputs input.error{border-color:#dc3545}.field-group{position:relative}.field-group .error-text{position:absolute;color:#dc3545;font-size:11px;margin-top:2px;left:0;white-space:nowrap}.remove-btn{width:28px;height:28px;border:1px solid #dc3545;background:#fff;color:#dc3545;border-radius:50%;cursor:pointer;transition:all .2s;font-size:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.remove-btn:hover{background:#dc3545;color:#fff}.existing-instructors-summary{background:#f8f9fa;border-radius:8px;padding:20px;margin-bottom:20px}.existing-instructors-summary h3{font-size:16px;color:#285261;margin-bottom:16px;font-weight:600;display:flex;align-items:center;gap:8px}.instructor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-bottom:16px}.instructor-card{background:#fff;padding:12px;border-radius:6px;border:1px solid #e5e5e5}.instructor-card .instructor-name{font-weight:600;color:#2c3e50;font-size:14px;margin-bottom:4px}.instructor-card .instructor-meta{font-size:12px;color:#666;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.status-badge{padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500}.status-badge.active{background:#d4edda;color:#155724}.status-badge.needs-invite{background:#f8d7da;color:#721c24}.instructor-stats{display:flex;justify-content:space-around;gap:20px;margin:16px 0;padding:16px;background:#fff;border-radius:8px;border:1px solid #e5e5e5}.instructor-stats .stat-item{text-align:center;flex:1}.instructor-stats .stat-number{font-size:28px;font-weight:700;color:#285261;line-height:1;margin-bottom:4px}.instructor-stats .stat-label{font-size:11px;text-transform:uppercase;color:#888;letter-spacing:.5px;font-weight:500}.terms-content{background:#f8f9fa;border:1px solid #e5e5e5;border-radius:8px;padding:24px;margin-bottom:20px;max-height:400px;overflow-y:auto}.terms-header{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e5e5e5}.terms-header h3{color:#285261;margin-bottom:4px}.terms-section{margin-bottom:20px}.terms-section h4{color:#285261;font-size:15px;margin-bottom:10px;display:flex;align-items:center;gap:8px}.terms-section h4 svg{font-size:18px}.terms-detail{padding-left:26px}.terms-detail p{margin:0 0 8px;color:#444;font-size:14px;line-height:1.5}.terms-detail ul{margin:8px 0;padding-left:20px}.terms-detail li{margin:4px 0;font-size:13px;color:#555}.terms-checkbox{background:#e8f4f8;padding:16px;border-radius:8px;margin-bottom:16px}.terms-checkbox label{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-size:14px;color:#2c3e50;line-height:1.5}.terms-checkbox input[type=checkbox]{width:20px;height:20px;margin-top:2px;flex-shrink:0;accent-color:#285261}.legal-note{display:flex;align-items:flex-start;gap:10px;padding:12px;background:#fff3cd;border-radius:6px;margin-bottom:20px}.legal-note svg{color:#856404;font-size:18px;flex-shrink:0}.legal-note p{margin:0;font-size:13px;color:#856404;line-height:1.5}.success-container{text-align:center;padding:0}.success-container.compact{padding:0}.success-container.compact .success-icon{margin-bottom:12px}.success-container.compact .success-icon svg{font-size:56px}.success-container.compact h2{margin-bottom:8px}.success-subtitle{color:#666;font-size:15px;margin-bottom:20px}.success-container .success-icon{margin-bottom:16px;display:flex;justify-content:center}.success-container .success-icon svg{font-size:72px;color:#28a745}.success-container h2{color:#2c3e50;margin-bottom:20px;font-size:28px}.benefits-summary{background:#f8f9fa;border-radius:8px;padding:16px 24px;margin:20px auto;max-width:400px;text-align:left}.benefit-row{display:flex;align-items:center;gap:10px;padding:8px 0;font-size:14px;color:#2c3e50}.benefit-row svg{color:#28a745;font-size:18px;flex-shrink:0}.acceptance-details,.connection-details{display:flex;justify-content:center;gap:24px;margin:24px 0;flex-wrap:wrap}.detail-card{background:#f8f9fa;padding:16px 24px;border-radius:8px;text-align:center;min-width:140px;display:flex;flex-direction:column;align-items:center}.detail-card svg{font-size:24px;color:#285261;margin-bottom:8px}.detail-card strong{display:block;font-size:12px;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.detail-card p{margin:0;font-size:14px;color:#2c3e50}.terms-summary{background:#f8f9fa;padding:20px;border-radius:8px;margin:20px auto;max-width:500px;text-align:left}.terms-summary h3{font-size:15px;color:#285261;margin-bottom:12px}.terms-highlights .term-item{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px;font-size:14px;color:#444}.terms-highlights .term-item svg{color:#28a745;font-size:16px;flex-shrink:0;margin-top:2px}.congratulations-message{background:linear-gradient(135deg,#285261,#1e3d47);color:#fff;padding:24px;border-radius:8px;margin:24px 0}.congratulations-message h3{margin:0 0 8px;font-size:18px}.congratulations-message p{margin:0;opacity:.9;font-size:14px}.action-buttons{display:flex;justify-content:center;gap:12px;margin-top:20px;flex-wrap:wrap}.amenities-preview{margin-top:8px}.amenity-tags{display:flex;flex-wrap:wrap;gap:6px}.amenity-tag{background:#e8f4f8;color:#285261;padding:4px 10px;border-radius:14px;font-size:12px;font-weight:500}@media (max-width: 900px){.onboarding-content{flex-direction:column;margin:16px}.steps-sidebar{width:100%;border-right:none;border-bottom:1px solid #e0e0e0;padding:16px}.steps-list{display:flex;overflow-x:auto;gap:8px;padding-bottom:8px}.step-item{min-width:100px;flex-direction:column;text-align:center;padding:10px 12px}.step-icon{margin-right:0;margin-bottom:4px}.step-check{position:absolute;top:4px;right:4px;margin-left:0}.benefits-grid,.stripe-benefits .benefits-grid{grid-template-columns:1fr}.step-content{padding:20px;max-height:none}.form-row,.instructor-inputs{grid-template-columns:1fr}.instructor-row{flex-direction:column;align-items:stretch}.remove-btn{align-self:flex-end;margin-top:8px}.form-actions,.step-actions{flex-direction:column}.form-actions button,.step-actions button{width:100%}}@media (max-width: 600px){.onboarding-header{padding:12px 16px;flex-direction:column;gap:12px}.progress-bar-container{margin-left:0;max-width:100%;width:100%}.acceptance-details,.connection-details{flex-direction:column;gap:12px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.step-content>*{animation:fadeIn .3s ease}.admin-dashboard{min-height:100vh;background:#f8f9fa;padding:2rem}.admin-container{max-width:1600px;margin:0 auto}.admin-container h1{color:#285261;margin-bottom:2rem;font-size:2rem;font-weight:600}.admin-header{background:#fff;border-radius:8px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a}.admin-header h1{color:#285261;margin-bottom:2rem;font-size:2rem;font-weight:600}.admin-stats,.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;text-align:center;box-shadow:0 2px 4px #0000000d;transition:all .3s ease}.stat-number{font-size:2rem;font-weight:700;color:#285261;margin-bottom:.5rem}.stat-label{font-size:.875rem;color:#2c3e50;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.platform-stats-grid{display:flex;gap:1rem;margin-bottom:2rem;padding:1rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;flex-wrap:wrap}.platform-stat{flex:1;min-width:120px;text-align:center;padding:.75rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.platform-stat .stat-value{display:block;font-size:1.5rem;font-weight:700;color:#285261}.platform-stat .stat-desc{display:block;font-size:.75rem;color:#6c757d;margin-top:.25rem}.admin-tabs{display:flex;gap:.75rem;margin-bottom:2rem;background:#f5f5f5;padding:.75rem;border-radius:8px}.admin-tabs button{background:#fff;border:1px solid #ddd;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;flex:1;color:#2c3e50}.admin-tabs button:hover{border-color:#285261;background:#f9f9f9;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.admin-tabs button.active{background:#285261;color:#fff;border-color:#285261;box-shadow:0 2px 4px #28526133}.admin-tabs button.active:hover{background:#1e3d47;border-color:#1e3d47}.tab-navigation{display:flex;gap:0;margin-bottom:1.5rem;border-bottom:2px solid #e9ecef;overflow-x:auto;-webkit-overflow-scrolling:touch}.tab-button{padding:1rem 1.25rem;border:none;background:transparent;color:#6c757d;font-size:.9rem;font-weight:500;cursor:pointer;white-space:nowrap;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .2s ease}.tab-button:hover{color:#285261;background:#2852610d}.tab-button.active{color:#285261;border-bottom-color:#285261;background:#fff}.admin-content{background:#fff;border-radius:8px;padding:2rem;min-height:500px;box-shadow:0 2px 8px #0000001a}.tab-content{background:#fff;border-radius:8px;padding:1.5rem;min-height:500px;box-shadow:0 2px 8px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h2{color:#285261;font-size:1.5rem;font-weight:600;margin:0}.applications-section h2,.onboarding-section h2,.emails-section h2,.studios-section h2,.users-section h2,.bookings-section h2{color:#285261;margin-bottom:1.5rem;font-size:1.5rem;font-weight:600;border-bottom:2px solid #e0e0e0;padding-bottom:.75rem}.filters-row{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap;align-items:center}.filters-row .search-input{flex:1;min-width:200px;padding:.6rem 1rem;border:1px solid #dee2e6;border-radius:6px;font-size:.9rem}.filters-row .search-input:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.filters-row select{padding:.6rem 1rem;border:1px solid #dee2e6;border-radius:6px;font-size:.9rem;background:#fff;cursor:pointer;min-width:150px}.filters-row select:focus{outline:none;border-color:#285261}.filters-row input[type=date]{padding:.6rem 1rem;border:1px solid #dee2e6;border-radius:6px;font-size:.9rem}.btn-search{padding:.6rem 1.25rem;background:#285261;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s ease}.btn-search:hover{background:#1e3d47}.applications-grid{display:grid;grid-template-columns:1fr 2fr;gap:2rem}.applications-layout{display:block}.applications-layout.has-details{display:grid;grid-template-columns:1fr 400px;gap:1.5rem}@media (max-width: 1200px){.applications-layout.has-details{grid-template-columns:1fr}.details-panel{position:fixed;top:0;right:0;width:100%;max-width:450px;height:100vh;z-index:1000;box-shadow:-5px 0 20px #00000026}}.applications-list{max-height:600px;overflow-y:auto;overflow-x:auto}.applications-layout.has-details .applications-list{border-right:1px solid #e0e0e0;padding-right:1.5rem}.application-card{background:#f8f9fa;padding:1rem;border-radius:6px;margin-bottom:.75rem;cursor:pointer;transition:all .2s ease;border:2px solid transparent}.application-card:hover{transform:translate(2px);border-color:#285261;background:#fff;box-shadow:0 2px 4px #0000001a}.application-card.selected{background:#fff;border-color:#285261;box-shadow:0 2px 8px #28526126}.app-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.app-header h3{font-size:1.125rem;color:#2c3e50;margin:0;font-weight:600}.app-owner{color:#666;font-size:.875rem;margin:.25rem 0}.app-location{color:#999;font-size:.813rem;margin:.25rem 0}.app-date{color:#999;font-size:.75rem;margin-top:.5rem}.application-details{padding-left:2rem}.application-details h2{color:#285261;margin-bottom:1.5rem;font-size:1.5rem;font-weight:600}.details-panel{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;display:flex;flex-direction:column;max-height:80vh}.details-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#285261;color:#fff}.details-header h3{margin:0;font-size:1.1rem;font-weight:600}.details-content{padding:1.25rem;overflow-y:auto;flex:1}.details-section{background:#f8f9fa;padding:1.5rem;border-radius:6px;margin-bottom:1.5rem;border:1px solid #e0e0e0}.details-section:last-child{margin-bottom:0}.details-section h3{color:#285261;font-size:1.125rem;margin-bottom:1rem;font-weight:600;border-bottom:2px solid #285261;padding-bottom:.5rem}.details-section h4{margin:0 0 .75rem;font-size:.85rem;font-weight:600;color:#6c757d;text-transform:uppercase;letter-spacing:.5px;padding-bottom:.5rem;border-bottom:1px solid #e9ecef}.detail-row{display:flex;padding:.75rem 0;border-bottom:1px solid #e0e0e0;margin-bottom:.6rem;font-size:.9rem}.detail-row:last-child{border-bottom:none}.detail-row .label{font-weight:600;color:#2c3e50;min-width:150px;flex-shrink:0;width:120px;font-size:.875rem}.detail-row .value{color:#666;font-size:.875rem;flex:1}.detail-row .value.code{font-family:monospace;font-size:.85rem;background:#f8f9fa;padding:.15rem .35rem;border-radius:3px}.detail-row .credits-value{font-weight:700;color:#285261;font-size:1.1rem}.detail-row a{color:#285261;text-decoration:none;font-weight:500;transition:color .2s ease}.detail-row a:hover{color:#1e3d47;text-decoration:underline}.mini-table{background:#f8f9fa;border-radius:6px;padding:.5rem}.mini-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem;border-bottom:1px solid #e9ecef;font-size:.825rem}.mini-row:last-child{border-bottom:none}.mini-row span:first-child{font-weight:500;flex:1}.mini-row .positive{color:#28a745;font-weight:600}.mini-row .negative{color:#dc3545;font-weight:600}table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000000d}.table-container{overflow-x:auto}thead{background:#285261}th{text-align:left;padding:1rem;font-weight:600;color:#fff;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}td{padding:1rem;border-bottom:1px solid #e0e0e0;color:#2c3e50;font-size:.875rem}tbody tr{transition:background-color .2s ease;cursor:pointer}tbody tr:hover{background:#f9f9f9}tbody tr.selected{background:#28526114}tbody tr:last-child td{border-bottom:none}.applications-list table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.applications-list th,.applications-list td{padding:.85rem 1rem;text-align:left;border-bottom:1px solid #e9ecef;font-size:.875rem}.applications-list th{background:#f8f9fa;font-weight:600;color:#495057;white-space:nowrap}.applications-list .studio-name{font-weight:600;color:#285261}.applications-list .no-data,.no-data{text-align:center;color:#6c757d;padding:2rem;font-style:italic}.status-badge{display:inline-block;font-size:.75rem;padding:.25rem .6rem;border-radius:12px;background:#e2e3e5;color:#383d41;font-weight:500;text-transform:capitalize}.status-badge.pending{background:#fff3cd;color:#856404}.status-badge.approved,.status-badge.active,.status-badge.confirmed,.status-badge.completed,.status-badge.sent{background:#d4edda;color:#155724}.status-badge.rejected,.status-badge.cancelled,.status-badge.failed,.status-badge.inactive{background:#f8d7da;color:#721c24}.status-badge.in-progress,.status-badge.warning,.status-badge.past_due{background:#cce5ff;color:#004085}.status-badge.refunded{background:#ffeeba;color:#856404}.status-badge.available{background:#d1ecf1;color:#0c5460}.status-badge.paid{background:#c3e6cb;color:#155724}.status-badge.not-started,.status-badge.stalled{background:#e2e3e5;color:#383d41}.user-type-badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:capitalize}.user-type-badge.customer{background:#e3f2fd;color:#1565c0}.user-type-badge.seller,.user-type-badge.studio_owner{background:#f3e5f5;color:#7b1fa2}.user-type-badge.instructor{background:#e8f5e9;color:#2e7d32}.user-type-badge.admin{background:#fff3e0;color:#e65100}.subscription-badge{display:inline-block;padding:.2rem .5rem;background:linear-gradient(135deg,#285261,#3a7289);color:#fff;border-radius:4px;font-size:.75rem;font-weight:500}.no-subscription{color:#adb5bd;font-size:.85rem;font-style:italic}.credits-cell{font-weight:700;color:#285261}.action-buttons{display:flex;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e9ecef}.action-buttons-row{display:flex;gap:.5rem;justify-content:center}.btn-approve,.btn-reject,.btn-remind{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-approve{background:#28a745;color:#fff;flex:1}.btn-approve:hover:not(:disabled){background:#218838;transform:translateY(-1px);box-shadow:0 2px 4px #0003}.btn-reject{background:#dc3545;color:#fff;flex:1}.btn-reject:hover:not(:disabled){background:#c82333;transform:translateY(-1px);box-shadow:0 2px 4px #0003}.btn-remind{background:#17a2b8;color:#fff;padding:.5rem 1rem;font-size:.875rem}.btn-remind:hover:not(:disabled){background:#138496;transform:translateY(-1px);box-shadow:0 2px 4px #0003}.btn-approve:disabled,.btn-reject:disabled,.btn-remind:disabled{opacity:.7;cursor:not-allowed}.btn-approve:disabled:hover,.btn-reject:disabled:hover,.btn-remind:disabled:hover{transform:none;box-shadow:none}.action-buttons-row button{padding:.375rem .75rem;border:none;background:#f5f5f5;border-radius:4px;cursor:pointer;font-size:.875rem;transition:all .2s ease;color:#2c3e50}.action-buttons-row button:hover{background:#285261;color:#fff;transform:translateY(-1px)}.btn-view,.btn-edit,.btn-cancel{padding:.35rem .75rem;border:none;border-radius:4px;font-size:.825rem;cursor:pointer;transition:all .2s ease}.btn-view{background:#e9ecef;color:#495057}.btn-view:hover{background:#dee2e6}.btn-edit{background:transparent;padding:.35rem}.btn-edit:hover{background:#e9ecef}.btn-cancel{background:transparent;padding:.35rem}.btn-cancel:hover{background:#f8d7da}.btn-primary{background:#285261;color:#fff;border:none;padding:.75rem 1.25rem;border-radius:6px;font-weight:600;cursor:pointer;transition:background .2s ease}.btn-primary:hover:not(:disabled){background:#1e3d47}.btn-primary:disabled{background:#adb5bd;cursor:not-allowed}.btn-primary.btn-small{padding:.5rem 1rem;font-size:.85rem;margin-top:.75rem}.btn-secondary{background:#6c757d;color:#fff;border:none;padding:.75rem 1.25rem;border-radius:6px;font-weight:600;cursor:pointer;transition:background .2s ease}.btn-secondary:hover:not(:disabled){background:#5a6268}.btn-close{background:transparent;border:none;color:inherit;font-size:1.5rem;cursor:pointer;padding:0;line-height:1;opacity:.7;transition:opacity .2s ease}.btn-close:hover{opacity:1}.btn-contact{padding:.35rem .5rem;background:transparent;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;font-size:1rem;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn-contact:hover{background:#e9ecef}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1100;padding:1rem}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 40px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#f8f9fa;border-bottom:1px solid #e9ecef}.modal-header h2{margin:0;font-size:1.15rem;font-weight:600;color:#212529}.modal-body{padding:1.25rem;overflow-y:auto}.modal-body p{margin:0 0 .75rem;font-size:.9rem}.modal-body .form-group{margin-bottom:1rem}.modal-body .form-group label{display:block;margin-bottom:.5rem;font-weight:500;font-size:.9rem;color:#495057}.modal-body .form-group input[type=number],.modal-body .form-group input[type=text],.modal-body .form-group textarea{width:100%;padding:.6rem;border:1px solid #dee2e6;border-radius:6px;font-size:.9rem;font-family:inherit}.modal-body .form-group input:focus,.modal-body .form-group textarea:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.modal-body .form-group small{display:block;margin-top:.35rem;font-size:.8rem;color:#6c757d}.modal-body .form-group input[type=checkbox]{margin-right:.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;background:#f8f9fa;border-top:1px solid #e9ecef}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.5rem;padding:1rem}.pagination button{padding:.5rem 1rem;border:1px solid #dee2e6;background:#fff;border-radius:6px;cursor:pointer;font-size:.875rem;transition:all .2s ease}.pagination button:hover:not(:disabled){background:#f8f9fa;border-color:#285261}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination span{font-size:.875rem;color:#6c757d}.progress-bar{position:relative;background:#e0e0e0;height:20px;border-radius:10px;overflow:hidden;min-width:150px}.progress-fill{position:absolute;left:0;top:0;height:100%;background:#285261;transition:width .3s ease}.progress-bar span{position:relative;z-index:1;display:block;text-align:center;line-height:20px;color:#2c3e50;font-size:.75rem;font-weight:600}.error-message,.error-banner{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;margin-bottom:1.5rem;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;font-size:.9rem}.success-message{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem;background:#d4edda;color:#155724;border:1px solid #c3e6cb}.error-message button,.error-banner button,.success-message button{background:transparent;border:none;font-size:1.25rem;cursor:pointer;color:inherit;opacity:.7;padding:0;line-height:1}.error-message button:hover,.error-banner button:hover,.success-message button:hover{opacity:1}.message-id{font-family:Courier New,monospace;font-size:.75rem;color:#999;background:#f5f5f5;padding:.25rem .5rem;border-radius:4px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem}.loading-spinner{width:40px;height:40px;border:4px solid #e9ecef;border-top-color:#285261;border-radius:50%;animation:spin 1s linear infinite}.loading,.no-data{text-align:center;padding:4rem;color:#999;font-size:1.125rem}.loading:before{content:"";display:inline-block;width:24px;height:24px;border:3px solid #e0e0e0;border-top-color:#285261;border-radius:50%;animation:spin 1s linear infinite;margin-right:1rem;vertical-align:middle}.load-more-btn{width:100%;padding:12px;margin-top:16px;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;color:#374151;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.load-more-btn:hover{background-color:#e5e7eb}.applications-list::-webkit-scrollbar{width:8px}.applications-list::-webkit-scrollbar-track{background:#f5f5f5;border-radius:4px}.applications-list::-webkit-scrollbar-thumb{background:#285261;border-radius:4px;opacity:.8}.applications-list::-webkit-scrollbar-thumb:hover{background:#1e3d47;opacity:1}button:focus-visible,a:focus-visible{outline:3px solid rgba(40,82,97,.3);outline-offset:2px}.earnings-process-section{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:8px;padding:1rem 1.5rem;margin-bottom:1.5rem}.earnings-summary{display:flex;align-items:center;gap:.5rem}.earnings-label{color:#495057;font-weight:500}.earnings-value{color:#285261;font-weight:600}.btn-process-earnings{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:.625rem 1.25rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.btn-process-earnings:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #28a7454d}.btn-process-earnings:disabled{background:#adb5bd;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 1200px){.applications-grid{grid-template-columns:1fr}.applications-list{border-right:none;border-bottom:1px solid #e0e0e0;padding-right:0;padding-bottom:1.5rem;max-height:400px;margin-bottom:2rem}.application-details{padding-left:0}}@media (max-width: 768px){.admin-dashboard{padding:1rem}.admin-header{padding:1.5rem}.admin-header h1,.admin-container h1{font-size:1.5rem}.admin-stats,.stats-grid{grid-template-columns:repeat(2,1fr)}.platform-stats-grid{flex-direction:column}.platform-stat{min-width:100%}.stat-card{padding:1rem}.stat-number{font-size:1.5rem}.admin-tabs{flex-direction:column;padding:.5rem}.admin-tabs button{width:100%}.tab-navigation{flex-wrap:nowrap}.tab-button{padding:.75rem 1rem;font-size:.8rem}.admin-content,.tab-content{padding:1.5rem}.filters-row{flex-direction:column}.filters-row .search-input,.filters-row select,.filters-row input[type=date]{width:100%}.earnings-process-section{flex-direction:column;gap:1rem;text-align:center}.action-buttons{flex-direction:column}.btn-approve,.btn-reject{width:100%}.detail-row{flex-direction:column}.detail-row .label{margin-bottom:.25rem;font-weight:700;width:100%}table{font-size:.813rem}th,td{padding:.75rem .5rem}.applications-list th,.applications-list td{padding:.6rem .5rem;font-size:.8rem}.progress-bar{min-width:100px}.applications-grid{gap:1rem}.application-details{padding-left:0}.error-banner{margin:0 12px 12px;padding:10px 12px}.error-banner span{font-size:13px}.modal-content{max-width:100%;margin:0;border-radius:0;height:100vh;max-height:100vh}}@media (max-width: 480px){.admin-stats,.stats-grid{grid-template-columns:1fr}.admin-header h1,.admin-container h1{font-size:1.25rem}.stat-card{padding:.75rem}.admin-content,.tab-content,.details-section{padding:1rem}}@media print{.admin-dashboard{background:#fff;padding:0}.admin-tabs,.tab-navigation,.action-buttons,.action-buttons-row,.filters-row{display:none}.admin-header,.admin-content,.tab-content{box-shadow:none;border:1px solid #e0e0e0}.stat-card{border:1px solid #285261}thead{background:#f5f5f5;color:#285261}th{color:#285261}}.admin-application-manager{padding:2rem;max-width:1400px;margin:0 auto}.admin-application-manager h1{color:#285261;margin-bottom:2rem}.statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;text-align:center;box-shadow:0 2px 4px #0000000d;transition:transform .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.stat-value{font-size:2rem;font-weight:700;color:#285261}.stat-label{font-size:.875rem;color:#2c3e50;margin-top:.5rem;text-transform:uppercase;letter-spacing:.5px}.filters{display:flex;gap:1rem;align-items:center;margin-bottom:2rem;padding:1rem;background:#f5f5f5;border-radius:8px}.filter-select{padding:.5rem 1rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;background:#fff;color:#2c3e50}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:#2c3e50}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#285261}.applications-table{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.applications-table table{width:100%;border-collapse:collapse}.applications-table thead{background:#285261;color:#fff}.applications-table th{padding:1rem;text-align:left;font-weight:600;color:#fff}.applications-table tbody tr{border-bottom:1px solid #e0e0e0;transition:background-color .2s}.applications-table tbody tr:hover{background-color:#f9f9f9}.applications-table tbody tr.deleted-row{opacity:.6;background-color:#f5f5f5}.applications-table td{padding:1rem;color:#2c3e50}.badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.badge-warning{background:#fff3cd;color:#856404}.badge-success{background:#d4edda;color:#155724}.badge-danger{background:#f8d7da;color:#721c24}.badge-secondary{background:#e2e3e5;color:#383d41}.badge-dark{background:#d1d3d4;color:#1b1e21}.badge-info{background:#d1ecf1;color:#0c5460}.progress-indicator{display:flex;align-items:center;gap:.5rem}.progress-bar{width:100px;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:#285261;transition:width .3s ease}.progress-indicator span{font-size:.875rem;color:#2c3e50}.action-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.btn-sm{padding:.25rem .75rem;font-size:.875rem;border:none;border-radius:4px;cursor:pointer;transition:all .2s;font-weight:500}.btn-sm:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0003}.btn-danger{background:#dc3545;color:#fff}.btn-warning{background:#ffc107;color:#212529}.btn-warning:hover{background:#e0a800}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268}.btn-success{background:#28a745;color:#fff}.btn-success:hover{background:#218838}.btn-info{background:#17a2b8;color:#fff}.btn-info:hover{background:#138496}.modal-content{background:#fff;border-radius:8px;padding:2rem;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 10px 30px #0003}.modal-content h2{margin-top:0;color:#285261;border-bottom:2px solid #e0e0e0;padding-bottom:1rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#2c3e50}.form-group textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;resize:vertical;color:#2c3e50;font-family:inherit}.form-group textarea:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.form-group input[type=checkbox]{margin-right:.5rem;accent-color:#285261}.modal-buttons{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}.details-grid div{padding:.5rem;background:#f9f9f9;border-radius:4px}.details-grid .full-width{grid-column:1 / -1}.details-grid strong{color:#285261;margin-right:.5rem}.details-grid p{margin-top:.5rem;color:#2c3e50;line-height:1.5}.loading{text-align:center;padding:3rem;font-size:1.25rem;color:#2c3e50}.filter-select:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.stat-card:hover .stat-value,.applications-table tbody tr:hover td{color:#1e3d47}@media (max-width: 768px){.statistics-grid{grid-template-columns:repeat(2,1fr)}.filters{flex-direction:column;align-items:stretch}.applications-table{overflow-x:auto}.applications-table table{min-width:800px}.details-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.btn-sm{width:100%}.modal-content{width:95%;margin:1rem}}@media print{.admin-application-manager{color:#2c3e50}.filters,.action-buttons,.modal-overlay{display:none}.applications-table{box-shadow:none}.stat-card{border:1px solid #285261}}.studio-switcher{position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.studio-switcher-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:200px;padding:10px 16px;background:#fff;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:14px;transition:all .2s ease;position:relative}.studio-switcher-trigger:hover{border-color:#285261;background:#f8fafc;box-shadow:0 2px 4px #28526114}.studio-switcher-trigger:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.studio-switcher-trigger.active{border-color:#285261;background:#f0f7f9}.trigger-content{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.studio-label{font-size:12px;font-weight:600;text-transform:uppercase;color:#64748b;letter-spacing:.5px}.studio-name{font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.studio-badge{padding:2px 8px;font-size:10px;font-weight:700;text-transform:uppercase;border-radius:4px;letter-spacing:.5px;white-space:nowrap}.studio-badge.primary{background:#285261;color:#fff}.studio-badge.owner{background:#1e3d47;color:#fff}.studio-badge.manager{background:#4a90a4;color:#fff}.studio-badge.instructor{background:#64748b;color:#fff}.dropdown-arrow{color:#64748b;transition:transform .2s ease;flex-shrink:0}.dropdown-arrow.open{transform:rotate(180deg);color:#285261}.studio-switcher-dropdown{position:absolute;top:calc(100% + 8px);left:0;width:100%;min-width:320px;max-width:400px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 10px 40px #28526126;z-index:1000;overflow:hidden;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{padding:12px 16px;background:linear-gradient(135deg,#285261,#1e3d47);border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.header-title{font-size:12px;font-weight:700;text-transform:uppercase;color:#fff;letter-spacing:.5px}.dropdown-search{padding:12px 16px;border-bottom:1px solid #f1f5f9;position:relative}.search-input{width:100%;padding:8px 12px 8px 36px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;transition:all .2s}.search-icon{position:absolute;left:28px;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.dropdown-studios{max-height:320px;overflow-y:auto;overscroll-behavior:contain}.dropdown-studios::-webkit-scrollbar{width:6px}.dropdown-studios::-webkit-scrollbar-track{background:#f8fafc}.dropdown-studios::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.dropdown-studios::-webkit-scrollbar-thumb:hover{background:#94a3b8}.studio-option{display:flex;align-items:center;width:100%;padding:12px 16px;background:#fff;border:none;border-left:3px solid transparent;cursor:pointer;transition:all .15s ease;position:relative}.studio-option:hover{background:#f8fafc}.studio-option.active{background:linear-gradient(90deg,#2852610d,#28526105);border-left-color:#285261}.studio-option-main{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px}.studio-option-info{flex:1;min-width:0}.studio-option-header{display:flex;align-items:center;gap:8px}.studio-option-name{font-size:14px;font-weight:600;color:#1e293b;line-height:1.2}.check-icon{color:#10b981;flex-shrink:0}.studio-option-location{display:block;font-size:12px;color:#64748b;margin-top:2px}.studio-option-stats{display:block;font-size:11px;color:#94a3b8;margin-top:4px;font-weight:500}.studio-role-badge{padding:4px 10px;font-size:10px;font-weight:700;text-transform:uppercase;border-radius:4px;letter-spacing:.5px;white-space:nowrap;flex-shrink:0}.studio-role-badge.primary{background:#285261;color:#fff}.studio-role-badge.owner{background:#1e3d47;color:#fff}.studio-role-badge.manager{background:#2852611a;color:#285261;border:1px solid #285261}.studio-role-badge.instructor{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.no-results{padding:24px 16px;text-align:center;color:#64748b;font-size:14px}.dropdown-footer{padding:8px;background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;justify-content:center}.footer-link{padding:6px 12px;font-size:12px;font-weight:600;color:#285261;text-decoration:none;transition:all .2s;border-radius:4px}.footer-link:hover{background:#2852611a}.studio-single{display:flex;align-items:center;gap:8px}.studio-single-name{font-weight:600;color:#1e293b;font-size:14px;padding:8px 0}.studio-switcher-skeleton{padding:10px 16px;background:#fff;border:2px solid #e2e8f0;border-radius:8px;min-width:200px}.skeleton-loader{display:flex;align-items:center;gap:8px}.skeleton-text{height:16px;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:4px;width:100px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.studio-switcher.compact .studio-switcher-trigger{min-width:auto;padding:8px 12px}.studio-switcher.compact .studio-switcher-dropdown{min-width:250px}.studio-switcher.header .studio-switcher-trigger{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.studio-switcher.header .studio-switcher-trigger:hover{background:#ffffff26;border-color:#ffffff4d}.studio-switcher.header .studio-name,.studio-switcher.header .dropdown-arrow{color:#fff}@media (max-width: 768px){.studio-switcher-dropdown{position:fixed;inset:auto 0 0;width:100%;max-width:100%;border-radius:12px 12px 0 0;max-height:70vh;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.dropdown-studios{max-height:50vh}.studio-switcher-trigger{width:100%}}@media (prefers-color-scheme: dark){.studio-switcher-trigger{background:#1e293b;border-color:#334155;color:#f1f5f9}.studio-name{color:#f1f5f9}.studio-switcher-dropdown{background:#1e293b;border-color:#334155}.studio-option{background:#1e293b}.studio-option:hover{background:#334155}.studio-option-name{color:#f1f5f9}.search-input{background:#0f172a;border-color:#334155;color:#f1f5f9}}:root{--primary-color: #285261;--primary-hover: #1e3d47;--text-color: #2c3e50;--background-color: #ffffff;--section-bg: #f8f9fa;--error-color: #dc3545;--success-color: #28a745;--warning-color: #ffc107;--subtle-bg: #f0f9f9;--border-color: #dee2e6}.studio-dashboard{min-height:100vh;background-color:var(--section-bg)}.dashboard-header{background-color:var(--background-color);border-bottom:1px solid var(--border-color);padding:32px 0;background:linear-gradient(180deg,#fff,#fafbfc)}.header-content{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center;gap:24px}.header-content>div:first-child{flex:1;max-width:600px}.dashboard-header h1{color:var(--text-color);font-size:32px;margin:0 0 6px;font-weight:600;letter-spacing:-.5px}.welcome-text{color:#6c757d;margin:0;font-size:16px;font-weight:400}.btn-primary{background-color:var(--primary-color);color:#fff;border:none;padding:12px 24px;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s;box-shadow:0 1px 3px #0000001f}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 6px #00000026}.btn-secondary{background-color:#fff;color:var(--primary-color);border:2px solid var(--primary-color);padding:10px 22px;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background-color:var(--subtle-bg)}.quick-add-btn,.header-content .btn-primary{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:500;white-space:nowrap}.revenue-banner{background:#285261;color:#fff;padding:32px 0}.revenue-grid{max-width:1200px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:32px}.revenue-item{text-align:center}.revenue-label{font-size:14px;opacity:.9;margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px}.revenue-amount{font-size:32px;font-weight:700;margin:0}.revenue-amount.strike{text-decoration:line-through;opacity:.7}.revenue-amount.highlight{color:#4ade80}.dashboard-tabs{background-color:#fff;border-bottom:1px solid var(--border-color);padding:0;max-width:1200px;margin:0 auto}.tab-btn{background:none;border:none;padding:16px 24px;color:#6c757d;font-size:16px;font-weight:500;cursor:pointer;position:relative;transition:color .2s}.tab-btn:hover{color:var(--text-color)}.tab-btn.active{color:var(--primary-color)}.tab-btn.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background-color:var(--primary-color)}.dashboard-content{max-width:1200px;margin:0 auto;padding:24px}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-bottom:24px}.metric-card{background-color:#fff;border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000001a}.metric-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.metric-header p{color:#6c757d;font-size:14px;margin:0;text-transform:uppercase;letter-spacing:.5px}.metric-icon{font-size:24px}.metric-value{font-size:28px;font-weight:700;color:var(--text-color);margin:0 0 8px}.metric-subtext{font-size:14px;color:#6c757d;margin:0}.metric-subtext.trend{color:var(--success-color)}.dashboard-card{background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.card-header{padding:20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.card-header h2{font-size:18px;font-weight:600;color:var(--text-color);margin:0}.card-content{padding:20px}.classes-list{display:flex;flex-direction:column;gap:16px}.class-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background-color:var(--section-bg);border-radius:6px}.class-info{flex:1}.class-name{font-weight:500;color:var(--text-color);margin:0 0 4px}.class-details{font-size:14px;color:#6c757d;margin:0}.class-stats{text-align:right}.enrollment{font-size:14px;font-weight:500;color:var(--text-color);margin:0 0 8px}.progress-bar{width:120px;height:6px;background-color:#e9ecef;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background-color:var(--primary-color);transition:width .3s}.dashboard-grid-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px}.popular-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--border-color)}.popular-item:last-child{border-bottom:none}.item-name{font-weight:500;color:var(--text-color);margin:0 0 4px}.item-stats{font-size:14px;color:#6c757d;margin:0}.item-revenue{font-size:18px;font-weight:600;color:var(--primary-color);margin:0}.booking-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--border-color)}.booking-item:last-child{border-bottom:none}.booking-student{font-weight:500;color:var(--text-color);margin:0 0 4px}.booking-class{font-size:14px;color:#6c757d;margin:0}.booking-value{text-align:right}.booking-value p{margin:0;font-weight:600;color:var(--text-color)}.booking-value .credits{font-size:12px;color:#6c757d;font-weight:400}.instant-payout-card{background:linear-gradient(135deg,var(--subtle-bg) 0%,#e8f5f5 100%);border-radius:8px;padding:32px;margin-bottom:24px}.payout-content{display:flex;justify-content:space-between;align-items:center}.payout-content h3{color:var(--text-color);margin:0 0 8px}.payout-content p{color:#6c757d;margin:0 0 12px}.available-amount{font-size:24px;font-weight:700;color:var(--primary-color)}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background-color:#fff;border-radius:8px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--border-color)}.modal-header h3{margin:0;color:var(--text-color)}.close-btn{background:none;border:none;font-size:24px;color:#6c757d;cursor:pointer}.close-btn:hover{color:var(--text-color)}.form-group{margin-bottom:20px;padding:0 20px}.form-group label{display:block;margin-bottom:8px;color:var(--text-color);font-weight:500}.form-group input{width:100%;padding:10px;border:1px solid var(--border-color);border-radius:4px;font-size:16px}.form-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2852611a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:0}.form-group.checkbox label{display:flex;align-items:center;gap:8px}.form-group.checkbox input[type=checkbox]{width:auto}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px;border-top:1px solid var(--border-color)}.empty-state{text-align:center;color:#6c757d;padding:40px 20px;font-style:italic}.placeholder{color:#6c757d;font-style:italic}.loading{display:flex;justify-content:center;align-items:center;height:400px;color:#6c757d}.error{display:flex;justify-content:center;align-items:center;height:400px;color:var(--error-color)}.export-btn{background:none;border:1px solid var(--primary-color);color:var(--primary-color);padding:6px 12px;border-radius:4px;font-size:14px;cursor:pointer}.export-btn:hover{background-color:var(--subtle-bg)}.dashboard-header-enhanced{background:linear-gradient(180deg,#fff,#f8f9fa);border-bottom:1px solid #dee2e6;padding:0}.header-inner{max-width:1200px;margin:0 auto}.header-content-row{padding:32px 24px 24px;display:flex;justify-content:space-between;align-items:center}.header-text-section h1{margin:0 0 4px;font-size:32px;font-weight:600;color:var(--text-color)}.header-subtitle{margin:0;font-size:16px;color:#6c757d}.add-class-btn{display:flex;align-items:center;font-size:16px;padding:12px 24px;font-weight:500;box-shadow:0 2px 4px #28526126;transition:all .2s}.add-class-btn:hover{box-shadow:0 4px 8px #28526133;transform:translateY(-1px)}.header-stats-bar{display:flex;align-items:center;gap:32px;padding:20px 24px;background:#28526108;border-top:1px solid rgba(40,82,97,.1)}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-value{font-size:24px;font-weight:600;color:var(--primary-color)}.stat-label{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#6c757d}.stat-divider{width:1px;height:32px;background:#dee2e6}.empty-state-container{text-align:center;padding:60px 20px}.empty-state-title{font-size:20px;font-weight:600;color:var(--text-color);margin:0 0 8px}.empty-state-text{color:#6c757d;margin:0}.btn-secondary.small{padding:6px 16px;font-size:14px}.quick-nav-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:24px}.quick-nav-card{background:#fff;border-radius:8px;padding:24px;text-align:center;cursor:pointer;transition:all .2s;box-shadow:0 1px 3px #0000001a}.quick-nav-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.nav-icon{font-size:32px;margin-bottom:12px;display:block}.quick-nav-card h3{margin:0 0 8px;font-size:18px;color:var(--text-color)}.quick-nav-card p{margin:0;color:#6c757d;font-size:14px}@media (max-width: 768px){.header-content{flex-direction:column;text-align:center;gap:20px}.header-content>div:first-child{max-width:100%}.header-content-row{flex-direction:column;gap:16px;text-align:center}.header-stats-bar{justify-content:space-around}.stat-divider{display:none}}.stats-bar{display:flex;gap:2rem;padding:1rem 2rem;background:#fff;border-bottom:1px solid #e5e7eb}.stat-item{display:flex;align-items:center;gap:.5rem}.stat-label{font-weight:600;color:#285261;font-size:.875rem;text-transform:uppercase}.stat-value{color:#2c3e50}.controls-bar{display:flex;justify-content:space-between;padding:1rem 2rem;background:#f8f9fa;border-bottom:1px solid #e5e7eb}.left-controls,.right-controls{display:flex;align-items:center;gap:1rem}.search-input{width:250px;padding:.5rem 1rem;border:1px solid #d1d5db;border-radius:.375rem;color:#2c3e50}.search-input:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.filter-select,.date-input{padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;color:#2c3e50;background:#fff}.filter-select:focus,.date-input:focus{outline:none;border-color:#285261}.view-toggle{display:flex;border:1px solid #285261;border-radius:.375rem;overflow:hidden}.toggle-btn{padding:.5rem 1rem;background:#fff;border:none;cursor:pointer;transition:all .2s;color:#285261}.toggle-btn.active{background:#285261;color:#fff}.toggle-btn:hover:not(.active){background:#f0f9f9}.classes-list-grouped{padding:1rem;background:#f8f9fa}.day-group{margin-bottom:2rem}.day-header{font-size:1.125rem;font-weight:600;margin-bottom:1rem;color:#285261;padding-bottom:.5rem;border-bottom:2px solid #285261}.class-card{display:flex;align-items:center;gap:1.5rem;padding:1rem;margin-bottom:.75rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;transition:all .2s}.class-card:hover{box-shadow:0 4px 12px #2852611a;border-color:#285261}.class-selection input[type=checkbox]{accent-color:#285261}.class-time{flex-shrink:0;display:flex;flex-direction:column;align-items:center;min-width:80px;padding:.5rem;background:#f0f9f9;border-radius:.375rem}.time-display{font-weight:600;font-size:1rem;color:#285261}.duration{font-size:.875rem;color:#2c3e50}.class-main-info{flex:1;min-width:0}.class-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.class-name{font-weight:600;font-size:1.125rem;margin:0;color:#2c3e50}.status-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:uppercase}.status-badge.green{background:#28a7451a;color:#28a745}.status-badge.blue{background:#2852611a;color:#285261}.status-badge.orange{background:#ffc1071a;color:#e07c00}.status-badge.red{background:#dc35451a;color:#dc3545}.status-badge.gray{background:#f8f9fa;color:#6c757d}.class-details{display:flex;gap:1rem;align-items:center;font-size:.875rem;color:#2c3e50}.class-details span{display:flex;align-items:center;gap:.25rem}.class-details svg{color:#285261}.class-enrollment{min-width:180px;flex-shrink:0}.enrollment-status{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.875rem}.enrollment-status.red{color:#dc3545;font-weight:600}.enrollment-status.orange{color:#e07c00}.enrollment-status.yellow{color:#ffc107}.enrollment-status.default{color:#2c3e50}.waitlist-info{font-size:.75rem;color:#6c757d}.progress-bar{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.progress-fill{height:100%;transition:width .3s ease}.progress-fill{background:#28a745}.class-actions{display:flex;gap:.5rem;flex-shrink:0}.action-btn{display:flex;align-items:center;gap:.25rem;padding:.5rem .75rem;background:#fff;border:1px solid #d1d5db;border-radius:.375rem;cursor:pointer;transition:all .2s;font-size:.875rem;color:#2c3e50}.action-btn:hover{background:#f0f9f9;border-color:#285261;color:#285261}.action-btn.danger{color:#dc3545}.action-btn.danger:hover{background:#dc35451a;border-color:#dc3545}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-btn svg{width:16px;height:16px}.dropdown{position:relative}.dropdown-content{display:none;position:absolute;top:100%;right:0;min-width:160px;background:#fff;border:1px solid #d1d5db;border-radius:.375rem;box-shadow:0 10px 25px #28526126;z-index:10}.dropdown-content button{display:block;width:100%;padding:.5rem 1rem;text-align:left;background:none;border:none;cursor:pointer;font-size:.875rem;color:#2c3e50;transition:all .2s}.dropdown-content button:hover{background:#f0f9f9;color:#285261}.btn-danger{padding:.5rem 1rem;background:#dc3545;color:#fff;border:none;border-radius:.375rem;cursor:pointer;font-weight:500;transition:all .2s}.empty-state-container{text-align:center;padding:3rem;background:#fff;border-radius:.5rem}.empty-state-container svg{color:#285261}.empty-state-title{font-size:1.25rem;font-weight:600;color:#2c3e50;margin:1rem 0 .5rem}.empty-state-text{color:#6c757d;margin-bottom:1rem}.btn-primary{background:#285261;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.375rem;font-weight:500;cursor:pointer;transition:all .2s}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#285261}.spinner{width:40px;height:40px;border:3px solid #f0f9f9;border-top-color:#285261;border-radius:50%;animation:spin 1s linear infinite}.calendar-view{padding:3rem;text-align:center;background:#fff;border-radius:.5rem;color:#2c3e50}.class-card:hover .class-name{color:#285261}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #285261;outline-offset:2px}.success-message{background:#28a7451a;color:#28a745;padding:.75rem 1rem;border-radius:.375rem;margin-bottom:1rem}.warning-message{background:#ffc1071a;color:#e07c00;padding:.75rem 1rem;border-radius:.375rem;margin-bottom:1rem}.class-card.cancelled{position:relative;background:linear-gradient(135deg,#fafafa,#f5f5f5);border-left:4px solid #dc3545;opacity:.9}.class-card.cancelled:before{content:"";position:absolute;inset:0;background:#fff9;pointer-events:none;z-index:0}.class-card.cancelled>*{position:relative;z-index:1}.cancelled-overlay{display:none}.class-card.cancelled .status-badge.red{background:#dc3545;color:#fff;font-weight:600;text-transform:uppercase;font-size:.75rem;letter-spacing:.5px;padding:4px 8px;box-shadow:0 2px 4px #dc354533}.class-card.cancelled .class-name{position:relative;color:#6c757d;text-decoration:none}.class-card.cancelled .class-name:after{content:"";position:absolute;left:0;top:50%;width:100%;height:1px;background:#6c757d;opacity:.4}.class-card.cancelled .class-details{opacity:.6}.class-card.cancelled .class-enrollment{opacity:.5}.cancelled-toggle{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:1px solid #d1d5db;border-radius:.375rem;cursor:pointer;transition:all .2s;font-size:.875rem}.cancelled-toggle:hover{background:#f0f9f9;border-color:#285261}.cancelled-toggle input[type=checkbox]{accent-color:#285261;cursor:pointer}.cancelled-toggle span{color:#2c3e50;-webkit-user-select:none;user-select:none;font-weight:500}.action-btn.success{color:#28a745;transition:all .2s}.action-btn.success:hover{background:#28a7451a;border-color:#28a745;transform:translateY(-1px)}.action-btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.class-card.cancelled-banner:before{content:"CANCELLED";position:absolute;top:0;left:0;right:0;background:#dc3545;color:#fff;text-align:center;font-size:.7rem;font-weight:600;letter-spacing:1px;padding:2px;z-index:2}.class-card.cancelled-ribbon:after{content:"CANCELLED";position:absolute;top:20px;right:-30px;transform:rotate(45deg);background:#dc3545;color:#fff;padding:5px 40px;font-size:.65rem;font-weight:600;letter-spacing:.5px;box-shadow:0 3px 10px #0003;z-index:2}.attendees-page{padding:0;background:#f9fafb}.attendees-header{background:#fff;padding:1.5rem;border-bottom:1px solid #e5e7eb}.back-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:1px solid #d1d5db;border-radius:.375rem;color:#4b5563;cursor:pointer;transition:all .2s;margin-bottom:1rem}.back-btn:hover{background:#f9fafb;border-color:#285261;color:#285261}.class-info-header h1{margin:0 0 .5rem;color:#2c3e50}.class-meta{display:flex;gap:1rem;color:#6c757d;font-size:.9rem}.cancelled-badge{background:#dc3545;color:#fff;padding:.25rem .5rem;border-radius:.25rem;font-weight:600;font-size:.75rem}.attendees-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;padding:1.5rem;background:#fff;border-bottom:1px solid #e5e7eb}.stat-card{text-align:center;padding:1rem;background:#f9fafb;border-radius:.5rem}.stat-value{display:block;font-size:1.5rem;font-weight:600;color:#285261;margin-bottom:.25rem}.stat-label{display:block;font-size:.875rem;color:#6c757d}.attendees-controls{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;gap:1rem;flex-wrap:wrap}.left-controls,.right-controls{display:flex;gap:.5rem;align-items:center}.attendees-table-container{margin:1.5rem;background:#fff;border-radius:.5rem;overflow:hidden;box-shadow:0 1px 3px #0000001a}.attendees-table{width:100%;border-collapse:collapse}.attendees-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.attendees-table th{text-align:left;padding:1rem;font-weight:600;color:#4b5563;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.attendees-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background .2s}.attendees-table tbody tr:hover{background:#f9fafb}.attendees-table tbody tr.checked-in{background:#f0fdf4}.attendees-table td{padding:1rem;color:#2c3e50}.attendee-name{font-weight:500}.email-link{color:#285261;text-decoration:none;transition:color .2s}.email-link:hover{color:#1e3a47;text-decoration:underline}.payment-type{display:inline-block;padding:.25rem .75rem;border-radius:1rem;font-size:.875rem;font-weight:500}.payment-type.credits{background:#e0f2fe;color:#0369a1}.payment-type.drop_in{background:#fef3c7;color:#92400e}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:1rem;font-size:.875rem;font-weight:500}.status-badge.checked{background:#d1fae5;color:#065f46}.status-badge.pending{background:#fee2e2;color:#991b1b}.btn-small{padding:.375rem .75rem;font-size:.875rem;border-radius:.375rem;border:none;cursor:pointer;transition:all .2s;font-weight:500}.btn-small.btn-primary{background:#285261;color:#fff}.btn-small.btn-primary:hover:not(:disabled){background:#1e3a47}.btn-small.btn-secondary{background:#fff;color:#4b5563;border:1px solid #d1d5db}.btn-small.btn-secondary:hover{background:#f9fafb;border-color:#285261}.btn-small:disabled{opacity:.5;cursor:not-allowed}.btn-icon{background:none;border:1px solid #d1d5db;padding:.375rem;display:inline-flex;align-items:center;justify-content:center}.actions{display:flex;gap:.5rem;align-items:center}.waitlist-section{margin:2rem 1.5rem}.waitlist-section h2{margin-bottom:1rem;color:#2c3e50}.modal-content{background:#fff;padding:2rem;border-radius:.5rem;width:90%;max-width:500px}.modal-content h2{margin-top:0;color:#2c3e50}.input-field,.textarea-field{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:.375rem;margin-bottom:1rem;font-size:1rem}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem}.dropdown{position:relative;display:inline-block}.dropdown-content{display:none;position:absolute;right:0;background:#fff;min-width:160px;box-shadow:0 4px 6px #0000001a;z-index:100;border-radius:.375rem;border:1px solid #e5e7eb}.dropdown:hover .dropdown-content{display:block}.dropdown-content button{display:block;width:100%;padding:.5rem 1rem;text-align:left;background:none;border:none;cursor:pointer;font-size:.875rem;color:#4b5563}.dropdown-content button:hover{background:#f9fafb}.dropdown-content button.danger{color:#dc3545}.empty-state{padding:3rem;text-align:center;color:#6c757d}.onboarding-top-bar{background:#285261;color:#fff;padding:8px 20px;display:flex;justify-content:center;align-items:center;font-size:13px;position:relative;box-shadow:0 2px 4px #0000001a;z-index:50;animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.onboarding-bar-content{display:flex;align-items:center;gap:16px;width:100%;max-width:1200px;justify-content:center;position:relative}.onboarding-bar-text{color:#fffffff2;font-weight:400;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;text-align:center}.onboarding-bar-button{background:#fff;color:#285261;border:none;padding:5px 14px;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;text-transform:none;letter-spacing:.02em;box-shadow:0 1px 2px #0000000d;flex-shrink:0}.onboarding-bar-button:hover{background:#f8f8f8;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.onboarding-bar-button:active{transform:translateY(0);box-shadow:0 1px 2px #0000000d}.onboarding-bar-close{background:transparent;border:none;color:#ffffffb3;cursor:pointer;padding:4px;margin-left:12px;font-size:18px;line-height:1;transition:color .2s;flex-shrink:0}.onboarding-bar-close:hover{color:#fff}@media (max-width: 1024px) and (min-width: 768px){.onboarding-top-bar{padding:8px 16px}.onboarding-bar-content{gap:12px}.onboarding-bar-text{font-size:12px}}@media (max-width: 767px){.onboarding-top-bar{padding:10px 12px;font-size:12px}.onboarding-bar-content{flex-direction:column;gap:8px;text-align:center}.onboarding-bar-text{font-size:12px;white-space:normal;text-align:center;max-width:100%;line-height:1.4}.onboarding-bar-button{width:100%;max-width:200px;padding:8px 16px;font-size:13px}}@media (max-width: 480px){.onboarding-top-bar{padding:10px}.onboarding-bar-text{font-size:11px;display:block}.onboarding-bar-button{width:auto;padding:6px 14px;font-size:12px}}@media print{.onboarding-top-bar{display:none}}@media (prefers-contrast: high){.onboarding-top-bar{border-bottom:2px solid white}.onboarding-bar-button{border:2px solid #285261}}@media (prefers-reduced-motion: reduce){.onboarding-top-bar{animation:none}.onboarding-bar-button{transition:none}}@media (prefers-color-scheme: dark){.onboarding-top-bar{background:#1e3d47;box-shadow:0 2px 4px #0000004d}.onboarding-bar-button{background:#f0f0f0;color:#1e3d47}.onboarding-bar-button:hover{background:#fff}}.onboarding-top-bar.hiding{animation:slideUp .3s ease-out forwards}@keyframes slideUp{to{transform:translateY(-100%);opacity:0}}.onboarding-top-bar.success{background:#22c55e;animation:pulse .5s ease-out}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.studio-dashboard{transition:margin-top .3s ease}.has-onboarding-bar+.studio-dashboard{margin-top:0}@-moz-document url-prefix(){.onboarding-bar-button{padding:6px 14px}}@supports (-webkit-appearance: none){.onboarding-top-bar{-webkit-font-smoothing:antialiased}}@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none){.onboarding-bar-content{display:table;width:100%}.onboarding-bar-text,.onboarding-bar-button{display:table-cell;vertical-align:middle}}.template-preview-overlay{position:fixed;inset:0;background:#285261b3;display:flex;justify-content:center;align-items:center;z-index:10001;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.template-preview-modal{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #2852614d;border:1px solid rgba(40,82,97,.1)}.preview-header{padding:24px;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#f8f9fa,#fff)}.preview-header h3{margin:0;color:#285261;font-size:1.4rem;font-weight:600}.preview-header .close-btn{background:none;border:none;font-size:1.5rem;color:#6c757d;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.preview-header .close-btn:hover{background:#2852611a;color:#285261}.preview-content{padding:24px;overflow-y:auto;flex:1;background:#fff}.preview-content h4{margin:0 0 24px;color:#285261;font-size:1.3rem;font-weight:600;padding-bottom:12px;border-bottom:2px solid #285261}.preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.preview-section{background:#f8f9fa;padding:16px;border-radius:8px;border:1px solid #e9ecef}.preview-section h5{margin:0 0 16px;color:#285261;font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.preview-item{display:flex;justify-content:space-between;margin-bottom:12px;padding:8px 0;border-bottom:1px solid #dee2e6}.preview-item:last-child{border-bottom:none;margin-bottom:0}.preview-item .label{color:#6c757d;font-size:.9rem;font-weight:500}.preview-item .value{color:#2c3e50;font-weight:600;text-align:right}.preview-description{margin-top:24px;padding:20px;background:linear-gradient(135deg,#f0f7f9,#f8f9fa);border-radius:8px;border-left:4px solid #285261}.preview-description h5{margin:0 0 12px;color:#285261;font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.preview-description p{margin:0;color:#2c3e50;line-height:1.6;font-size:.95rem}.preview-note{margin-top:16px;padding:14px 16px;background:#2852610d;border-left:4px solid #285261;border-radius:4px;color:#285261;font-size:.95rem;font-weight:500;display:flex;align-items:center;gap:8px}.preview-footer{padding:20px 24px;border-top:1px solid #e9ecef;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#f8f9fa,#fff)}.preview-footer button{padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;text-transform:uppercase;letter-spacing:.5px}.btn-cancel{background:#fff;color:#6c757d;border:1px solid #dee2e6}.btn-cancel:hover{background:#f8f9fa;border-color:#6c757d;color:#495057}.btn-group{display:flex;gap:12px}.btn-apply-single{background:#6c757d;color:#fff;position:relative;overflow:hidden}.btn-apply-single:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.btn-apply-single:hover{background:#5a6268;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.btn-apply-single:hover:before{left:100%}.btn-apply-series{background:#285261;color:#fff;position:relative;overflow:hidden}.btn-apply-series:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.btn-apply-series:hover{background:#1e3d47;transform:translateY(-1px);box-shadow:0 4px 8px #28526140}.btn-apply-series:hover:before{left:100%}.preview-section.full-width{grid-column:1 / -1}.template-preview-modal.loading{opacity:.7;pointer-events:none}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.template-preview-modal{animation:slideIn .3s ease}@media (max-width: 600px){.template-preview-modal{width:95%;max-height:90vh;margin:10px}.preview-grid{grid-template-columns:1fr;gap:16px}.preview-footer{flex-direction:column;gap:12px;padding:16px}.btn-group{width:100%;flex-direction:column}.btn-group button{width:100%}.btn-cancel{width:100%;order:3}}button:focus-visible{outline:2px solid #285261;outline-offset:2px}.preview-content::-webkit-scrollbar{width:8px}.preview-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.preview-content::-webkit-scrollbar-thumb{background:#285261;border-radius:4px}.preview-content::-webkit-scrollbar-thumb:hover{background:#1e3d47}.professional-modal{background:#fff;border-radius:12px;width:90%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.modal-header-pro{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0;background:#f8f9fa;border-radius:12px 12px 0 0}.header-tabs{display:flex;gap:10px}.header-tabs .tab{padding:8px 20px;background:transparent;border:2px solid transparent;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.header-tabs .tab.active{background:#fff;border-color:var(--primary-color);color:var(--primary-color)}.modal-body-pro{flex:1;overflow-y:auto;padding:20px}.form-section{margin-bottom:25px;padding-bottom:20px;border-bottom:1px solid #f0f0f0}.form-section:last-of-type{border-bottom:none}.form-section h4{margin:0 0 15px;color:#333;font-size:16px;font-weight:600}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1 / -1}.form-group label{margin-bottom:5px;font-size:13px;font-weight:500;color:#555}.form-group input,.form-group select,.form-group textarea{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color)}.form-group input.error,.form-group select.error{border-color:#dc3545}.error-text{color:#dc3545;font-size:12px;margin-top:3px}.template-selector{width:100%;padding:12px;border:2px dashed #ddd;border-radius:8px;font-size:14px;background:#fafafa}.checkbox-group{display:flex;gap:20px;margin-top:10px}.checkbox-group label{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}.days-selector{display:flex;gap:8px;flex-wrap:wrap}.day-checkbox{display:flex;flex-direction:column;align-items:center;padding:8px 12px;border:2px solid #ddd;border-radius:8px;cursor:pointer;transition:all .2s}.day-checkbox input{display:none}.day-checkbox input:checked+span{color:#fff}.day-checkbox input:checked~*{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.day-checkbox:has(input:checked){background:var(--primary-color);border-color:var(--primary-color)}.day-checkbox span{font-size:14px;font-weight:500}.preview-section{background:#f8f9fa;padding:15px;border-radius:8px;margin-top:15px}.preview-section h5{margin:0 0 10px;color:#333;font-size:14px}.preview-list{display:flex;flex-direction:column;gap:5px}.preview-item{font-size:13px;color:#666;padding:5px 10px;background:#fff;border-radius:4px}.conflicts-warning{background:#fff3cd;border:1px solid #ffc107;border-radius:8px;padding:15px;margin-bottom:20px}.conflicts-warning h5{margin:0 0 10px;color:#856404}.conflict-item{font-size:13px;color:#856404;margin-bottom:5px}.modal-footer-pro{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #e0e0e0;background:#f8f9fa}.btn-cancel,.btn-check,.btn-create{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-cancel{background:#fff;border:1px solid #ddd;color:#666}.btn-check{background:#fff;border:1px solid var(--primary-color);color:var(--primary-color)}.btn-create{background:var(--primary-color);color:#fff}.btn-create:hover{background:var(--primary-hover)}.btn-cancel:disabled,.btn-check:disabled,.btn-create:disabled{opacity:.6;cursor:not-allowed}.team-management{padding:20px;max-width:1400px;margin:0 auto;background:#f8f9fa}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e0e0e0}.page-header h1{color:#285261;font-size:28px;margin:0}.stats-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #2852611a;text-align:center}.stat-value{display:block;font-size:32px;font-weight:700;color:#285261;margin-bottom:8px}.stat-label{font-size:14px;color:#6c757d;text-transform:uppercase;letter-spacing:.5px}.instructors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:25px;margin-top:30px}.instructor-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;transition:transform .2s,box-shadow .2s}.instructor-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #28526126}.instructor-header{display:flex;align-items:center;gap:15px;padding-bottom:15px;border-bottom:1px solid #e0e0e0;margin-bottom:15px}.instructor-avatar{width:50px;height:50px;border-radius:50%;background:#285261;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px}.instructor-info{flex:1}.instructor-info h3{margin:0 0 5px;color:#2c3e50;font-size:18px}.instructor-info .email{color:#6c757d;font-size:14px;margin:0 0 8px}.permission-badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase;color:#fff}.badge-basic{background:#6c757d}.badge-senior{background:#285261}.badge-lead{background:#1e3d47}.instructor-details{margin:15px 0}.detail-row{display:flex;justify-content:space-between;padding:8px 0;font-size:14px}.detail-row .label{color:#6c757d}.detail-row .value{color:#2c3e50;font-weight:500}.status{padding:2px 8px;border-radius:4px;font-size:12px;font-weight:600}.status.active{background:#d4edda;color:#155724}.status.inactive{background:#f8d7da;color:#721c24}.permissions-grid{margin:20px 0;padding:15px;background:#f8f9fa;border-radius:8px}.permissions-grid h4{margin:0 0 10px;color:#285261;font-size:14px;text-transform:uppercase}.permission-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.permission-item{display:flex;align-items:center;font-size:13px;color:#2c3e50;cursor:pointer}.permission-item input[type=checkbox]{margin-right:8px}.permission-item input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.instructor-actions{display:flex;gap:10px;margin-top:15px;padding-top:15px;border-top:1px solid #e0e0e0}.btn-primary{background:#285261;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s}.btn-secondary{background:#fff;color:#285261;border:1px solid #285261;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.btn-secondary:hover{background:#f8f9fa}.btn-success{background:#28a745;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-danger{background:#dc3545;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s}.btn-danger:hover{background:#c82333}.empty-state{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;margin-top:30px}.empty-state h3{color:#285261;margin-bottom:10px}.empty-state p{color:#6c757d;margin-bottom:20px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:30px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-content h2{color:#285261;margin-bottom:20px}.form-group label{display:block;margin-bottom:5px;color:#2c3e50;font-size:14px;font-weight:500}.form-group input,.form-group select{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#285261;box-shadow:0 0 0 2px #2852611a}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px;padding-top:20px;border-top:1px solid #e0e0e0}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}.spinner{width:40px;height:40px;border:3px solid #f3f3f3;border-top:3px solid #285261;border-radius:50%;animation:spin 1s linear infinite}.loading p{margin-top:15px;color:#6c757d}@media (max-width: 768px){.instructors-grid,.form-row,.permission-list,.stats-bar{grid-template-columns:1fr}}.status-pending{background-color:#fff3cd;color:#856404;border:1px solid #ffeeba}.status-invited{background-color:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.status-active{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.badge-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;align-items:center}.email{word-break:break-word;flex:1}.btn-icon{background:none;border:none;color:#6c757d;cursor:pointer;padding:4px;transition:color .2s}.btn-icon:hover{color:#285261}.btn-small{padding:6px 12px;font-size:13px}.info-box{background:#f8f9fa;padding:12px;border-radius:6px;margin-bottom:20px}.info-box p{margin:4px 0;font-size:14px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px}.checkbox-label input[type=checkbox]{cursor:pointer}.instructor-dashboard{padding:20px;max-width:1200px;margin:0 auto;background:#f8f9fa;min-height:calc(100vh - 60px)}.studio-selector{background:#fff;padding:15px;border-radius:8px;margin-bottom:20px;display:flex;align-items:center;gap:15px;box-shadow:0 2px 4px #2852611a}.studio-selector label{font-weight:600;color:#285261}.studio-dropdown{flex:1;max-width:400px;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;color:#2c3e50;cursor:pointer;transition:border-color .2s}.studio-dropdown:hover,.studio-dropdown:focus{border-color:#285261;outline:none}.dashboard-header{background:#fff;padding:30px;border-radius:12px;margin-bottom:30px;box-shadow:0 2px 4px #28526114}.dashboard-header h1{color:#285261;margin:0 0 10px;font-size:28px}.welcome-text{color:#6c757d;font-size:16px;margin:0}.section{margin-bottom:40px}.section h2{color:#285261;font-size:20px;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #285261}.classes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.class-card{background:#fff;border-radius:10px;padding:20px;box-shadow:0 2px 8px #00000014;transition:transform .2s,box-shadow .2s}.class-card.today{border-left:4px solid #285261}.class-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #28526126}.class-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid #e0e0e0}.class-header h3{color:#2c3e50;margin:0;font-size:18px}.time{background:#285261;color:#fff;padding:4px 10px;border-radius:20px;font-size:14px;font-weight:500}.class-details{margin-bottom:15px}.class-details p{color:#6c757d;margin:8px 0;font-size:14px;display:flex;align-items:center;gap:8px}.no-classes{color:#6c757d;font-style:italic;padding:20px;text-align:center;background:#fff;border-radius:8px}.upcoming-classes-list{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 4px #28526114}.upcoming-class-item{display:flex;padding:15px 20px;border-bottom:1px solid #e0e0e0;transition:background .2s}.upcoming-class-item:last-child{border-bottom:none}.upcoming-class-item:hover{background:#f8f9fa}.class-date{min-width:80px;padding:8px 12px;background:#285261;color:#fff;border-radius:6px;text-align:center;font-size:13px;font-weight:600;margin-right:20px}.class-info h4{color:#2c3e50;margin:0 0 5px;font-size:16px}.class-info p{color:#6c757d;margin:0;font-size:14px}.attendees-panel{position:fixed;right:0;top:0;height:100vh;width:450px;background:#fff;box-shadow:-4px 0 20px #00000026;z-index:999;overflow-y:auto;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#285261;color:#fff}.panel-header h2{margin:0;font-size:20px}.close-btn{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.close-btn:hover{background:#ffffff1a}.attendees-stats{display:flex;justify-content:space-around;padding:20px;background:#f8f9fa;border-bottom:1px solid #e0e0e0}.stat{text-align:center}.stat-number{display:block;font-size:24px;font-weight:700;color:#285261;margin-bottom:5px}.stat-label{font-size:12px;color:#6c757d;text-transform:uppercase;letter-spacing:.5px}.attendees-list{padding:20px}.attendee-row{display:flex;justify-content:space-between;align-items:center;padding:15px;margin-bottom:10px;background:#f8f9fa;border-radius:8px;transition:background .2s}.attendee-row:hover{background:#e9ecef}.attendee-info{flex:1}.attendee-name{font-weight:600;color:#2c3e50;margin:0 0 5px}.attendee-email{font-size:13px;color:#6c757d;margin:0}.attendee-actions{display:flex;align-items:center;gap:10px}.checked-in-badge{background:#d4edda;color:#155724;padding:4px 10px;border-radius:4px;font-size:13px;font-weight:600}.btn-check-in{background:#285261;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s}.btn-check-in:hover{background:#1e3d47}.btn-undo{background:#fff;color:#6c757d;border:1px solid #ddd;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:13px;transition:all .2s}.btn-undo:hover{background:#f8f9fa;border-color:#6c757d}.btn-primary{background:#285261;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s;width:100%}.btn-primary:hover{background:#1e3d47}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#6c757d}.spinner{width:40px;height:40px;border:3px solid #f3f3f3;border-top:3px solid #285261;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:15px}@media (max-width: 768px){.instructor-dashboard{padding:15px}.classes-grid{grid-template-columns:1fr}.attendees-panel{width:100%}.dashboard-header{padding:20px}.dashboard-header h1{font-size:24px}}@media (max-width: 480px){.studio-selector{flex-direction:column;align-items:stretch}.studio-dropdown{max-width:100%}.attendee-row{flex-direction:column;align-items:flex-start}.attendee-actions{margin-top:10px;width:100%}.btn-check-in,.btn-undo{flex:1}}.invitation-page{min-height:100vh;background:linear-gradient(135deg,#f5f5f5,#e0e0e0);display:flex;align-items:center;justify-content:center;padding:20px}.invitation-container{width:100%;max-width:520px;margin:0 auto}.loading-state,.error-state,.success-state{background:#fff;border-radius:12px;padding:60px 40px;text-align:center;box-shadow:0 4px 6px #00000012;border:1px solid #e5e7eb}.spinner{width:50px;height:50px;border:4px solid #f3f4f6;border-top-color:#285261;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.spinner-small{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:8px}.error-icon{font-size:48px;margin-bottom:20px;color:#dc3545}.success-icon{font-size:48px;margin-bottom:20px;color:#285261}.error-state h2,.success-state h2{color:#2c3e50;margin-bottom:10px;font-size:24px}.progress-bar{width:100%;height:6px;background:#e5e7eb;border-radius:3px;margin:20px 0;overflow:hidden}.progress-bar-fill{height:100%;background:#285261;animation:progress 2s ease-in-out}@keyframes progress{0%{width:0%}to{width:100%}}.redirect-text{color:#6b7280;font-size:14px;margin-top:10px}.invitation-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #00000012;border:1px solid #e5e7eb;overflow:hidden}.invitation-header{background:#285261;background:linear-gradient(135deg,#285261,#1e3d47);color:#fff;padding:40px 30px;text-align:center}.studio-logo{width:80px;height:80px;border-radius:50%;background:#fff;padding:4px;margin-bottom:20px;object-fit:contain;box-shadow:0 2px 4px #0000001a}.invitation-header h1{font-size:24px;margin-bottom:8px;font-weight:600}.invitation-header h2{font-size:20px;margin-bottom:10px;opacity:.95;font-weight:400}.invitation-header p{opacity:.9;font-size:15px;margin:0}.invitation-form{padding:35px 30px}.form-section{margin-bottom:35px}.form-section:last-of-type{margin-bottom:25px}.form-section h3{color:#285261;font-size:17px;font-weight:600;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #e5e7eb}.form-group{margin-bottom:20px}.form-group label{display:block;color:#2c3e50;font-weight:500;margin-bottom:8px;font-size:14px}.required{color:#dc3545}.form-control{width:100%;padding:10px 14px;border:1px solid #d1d5db;border-radius:6px;font-size:15px;transition:all .2s;background:#fff;color:#2c3e50}.form-control:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #28526114}.form-control.disabled,.form-control:disabled{background-color:#f9fafb;cursor:not-allowed;color:#6b7280}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field-note{display:block;margin-top:6px;color:#6b7280;font-size:13px;font-style:italic}.password-input-container{position:relative;display:flex;align-items:center}.password-input-container .form-control{padding-right:45px}.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:5px;font-size:16px;opacity:.7;transition:opacity .2s}.password-toggle:hover{opacity:1}.password-toggle:disabled{cursor:not-allowed;opacity:.4}.password-checklist{margin-top:12px;padding:14px;background-color:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.strength-meter{display:flex;align-items:center;gap:10px;margin-bottom:12px}.strength-bar-background{flex:1;height:6px;background-color:#e0e0e0;border-radius:3px;overflow:hidden}.strength-bar-fill{height:100%;border-radius:3px;transition:width .3s ease,background-color .3s ease}.strength-label{font-size:12px;font-weight:600;min-width:50px;text-align:right}.requirements-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.requirement-item{display:flex;align-items:center;gap:8px;font-size:13px;transition:color .2s ease}.requirement-item.met{color:#10b981}.requirement-item.unmet{color:#6c757d}.requirement-item .requirement-icon{font-size:14px;width:16px;text-align:center;margin-right:0}.requirement-item.met .requirement-icon{color:#10b981}.requirement-item.unmet .requirement-icon{color:#dc3545}.password-match-indicator{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:13px}.password-match-indicator.match{color:#10b981}.password-match-indicator.no-match{color:#dc3545}.match-icon{font-size:14px;font-weight:600}.password-requirements{margin-top:12px;padding:14px;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.requirements-title{color:#6b7280;font-size:13px;margin-bottom:10px;font-weight:500}.password-requirements ul{list-style:none;padding:0;margin:0}.password-requirements li{font-size:13px;padding:5px 0;display:flex;align-items:center;transition:color .2s}.password-requirements li.complete{color:#10b981}.password-requirements li.incomplete{color:#dc3545}.alert{padding:12px 16px;border-radius:6px;margin-bottom:20px;font-size:14px}.alert-error{background:#fef2f2;border:1px solid #fecaca;color:#dc3545}.error-text{color:#dc3545;display:block;margin-top:6px;font-size:13px}.btn{padding:12px 24px;border:none;border-radius:6px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.btn-primary{background:#285261;color:#fff}.btn-primary:hover:not(:disabled){background:#1e3d47;transform:translateY(-1px);box-shadow:0 4px 12px #28526126}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-lg{padding:14px 28px;font-size:16px}.btn-block{width:100%}.form-actions{margin-top:30px}@media (max-width: 640px){.invitation-container{max-width:100%}.form-row{grid-template-columns:1fr}.invitation-header{padding:30px 20px}.invitation-form{padding:25px 20px}.invitation-header h1{font-size:20px}.invitation-header h2{font-size:18px}.password-checklist{padding:10px}.requirement-item{font-size:12px}.strength-label{font-size:11px;min-width:45px}}.form-control:hover:not(:disabled){border-color:#9ca3af}.btn:active{transform:scale(.98)}.verify-email-container{min-height:calc(100vh - 200px);display:flex;align-items:center;justify-content:center;padding:2rem;background-color:#f8f9fa}.verify-email-card{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;padding:3rem;max-width:450px;width:100%;text-align:center}.status-icon{width:80px;height:80px;margin:0 auto 1.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center}.status-icon svg{width:40px;height:40px}.status-icon.verifying{background-color:#e8f4f8}.status-icon.success{background-color:#d4edda;color:#28a745}.status-icon.error,.status-icon.expired{background-color:#f8d7da;color:#dc3545}.spinner{width:40px;height:40px;border:4px solid #e8f4f8;border-top-color:#285261;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.verify-title{font-size:1.75rem;color:#285261;margin-bottom:1rem;font-weight:600}.verify-message{color:#666;font-size:1rem;line-height:1.6;margin-bottom:2rem}.redirect-notice{color:#888;font-size:.9rem;margin-bottom:1rem}.verify-actions{display:flex;flex-direction:column;gap:.75rem}.btn-primary{background-color:#285261;color:#fff;border:none;padding:.875rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;text-decoration:none;display:inline-block;transition:background-color .2s ease}.btn-primary:hover{background-color:#1d3d4a}.btn-secondary{background-color:transparent;color:#285261;border:2px solid #285261;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;text-decoration:none;display:inline-block;transition:all .2s ease}.btn-secondary:hover{background-color:#285261;color:#fff}.help-text{margin-top:2rem;font-size:.875rem;color:#888}.help-text a{color:#285261;text-decoration:none}.help-text a:hover{text-decoration:underline}@media (max-width: 480px){.verify-email-card{padding:2rem 1.5rem}.verify-title{font-size:1.5rem}.status-icon{width:60px;height:60px}.status-icon svg{width:30px;height:30px}.spinner{width:30px;height:30px}}.reset-password-page{min-height:calc(100vh - 140px);display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.reset-password-container{max-width:480px;width:100%;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a}.reset-password-container .header-icon-container{display:flex;justify-content:center;margin-bottom:1.5rem}.reset-password-container .header-icon{width:80px;height:80px;border-radius:50%;background-color:#f8f9fa;display:flex;align-items:center;justify-content:center}.reset-password-title{text-align:center;margin:0 0 .75rem;color:#1a1a1a;font-size:1.75rem;font-weight:600}.reset-password-description{text-align:center;margin:0 0 2rem;color:#666;font-size:.95rem;line-height:1.5}.reset-password-form{display:flex;flex-direction:column;gap:1.5rem}.reset-password-container .form-group{display:flex;flex-direction:column;gap:.5rem}.reset-password-container .form-group label{font-weight:500;color:#333;font-size:.9rem}.reset-password-container .form-group input{padding:.75rem;border:2px solid #e1e5e9;border-radius:8px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;background:#fff;width:100%}.reset-password-container .form-group input:focus{outline:none;border-color:#285261;box-shadow:0 0 0 3px #2852611a}.reset-password-container .form-group input.error{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.reset-password-container .form-group input:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.6}.reset-password-container .password-input-container{position:relative}.reset-password-container .password-input-container input{padding-right:3rem}.reset-password-container .password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.reset-password-container .password-toggle:hover{color:#374151}.reset-password-container .password-toggle:disabled{cursor:not-allowed;opacity:.5}.reset-password-container .error-message{color:#dc2626;font-size:.875rem;margin-top:.25rem}.reset-password-container .password-checklist{margin-top:12px;padding:12px;background-color:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.reset-password-container .strength-meter{display:flex;align-items:center;gap:10px;margin-bottom:12px}.reset-password-container .strength-bar-background{flex:1;height:6px;background-color:#e0e0e0;border-radius:3px;overflow:hidden}.reset-password-container .strength-bar-fill{height:100%;border-radius:3px;transition:width .3s ease,background-color .3s ease}.reset-password-container .strength-label{font-size:12px;font-weight:600;min-width:50px;text-align:right}.reset-password-container .requirements-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.reset-password-container .requirement-item{display:flex;align-items:center;gap:8px;font-size:12px;transition:color .2s ease}.reset-password-container .requirement-item.met{color:#28a745}.reset-password-container .requirement-item.unmet{color:#6c757d}.reset-password-container .requirement-icon{font-size:14px;width:16px;text-align:center}.reset-password-container .requirement-item.met .requirement-icon{color:#28a745}.reset-password-container .requirement-item.unmet .requirement-icon{color:#dc3545}.reset-password-container .password-match-indicator{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:12px}.reset-password-container .password-match-indicator.match{color:#28a745}.reset-password-container .password-match-indicator.no-match{color:#dc3545}.reset-password-container .match-icon{font-size:14px}.reset-password-container .primary-button{background:#285261;color:#fff;border:none;padding:.875rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;width:100%}.reset-password-container .primary-button:hover:not(:disabled){background:#1e3d47;transform:translateY(-1px)}.reset-password-container .primary-button:active:not(:disabled){transform:translateY(0)}.reset-password-container .primary-button:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.reset-password-container .link-button{background:none;border:none;color:#285261;text-decoration:underline;cursor:pointer;font-size:.9rem;padding:0;transition:color .2s ease}.reset-password-container .link-button:hover{color:#1e3d47}.reset-password-container .back-to-login{text-align:center;margin-top:.5rem}.reset-password-container .loading-spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.status-icon-container{display:flex;justify-content:center;margin-bottom:1.5rem}.status-icon{width:100px;height:100px;border-radius:50%;display:flex;align-items:center;justify-content:center}.status-icon.success-icon{background-color:#d4edda}.status-icon.error-icon{background-color:#f8d7da}.status-title{text-align:center;margin:0 0 .5rem;color:#1a1a1a;font-size:1.75rem;font-weight:600;display:block;width:100%}.status-message{text-align:center;margin:0;color:#555;font-size:1rem;line-height:1.5;display:block;width:100%;background:none!important;border:none!important;padding:0!important}.status-note{text-align:center;margin:.5rem 0 2rem;color:#888;font-size:.9rem;line-height:1.4;display:block;width:100%}@media (max-width: 480px){.reset-password-page{padding:1rem;min-height:calc(100vh - 120px)}.reset-password-container{padding:1.5rem;border-radius:8px}.reset-password-title,.status-title{font-size:1.5rem}.reset-password-container .header-icon,.status-icon{width:70px;height:70px}.reset-password-container .header-icon svg{width:32px;height:32px}.status-icon svg{width:40px;height:40px}.reset-password-container .password-checklist{padding:10px}.reset-password-container .requirement-item{font-size:11px}.reset-password-container .strength-label{font-size:11px;min-width:45px}}
