.header{height:var(--header-height);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-subtle);z-index:100;background:#0a0a0fd9;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.header__inner{width:100%;max-width:var(--container-max);padding:0 var(--space-lg);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.header__brand{align-items:center;gap:var(--space-md);display:flex}.header__logo{border-radius:var(--radius-sm);width:40px;height:40px}.header__name{font-family:var(--font-display);font-size:var(--text-xl);background:var(--gold-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:700}.header__admin-link{font-size:var(--text-sm);color:var(--text-muted);transition:color var(--transition-fast)}.header__admin-link:hover{color:var(--gold-light)}.header__links{align-items:center;gap:var(--space-lg);display:flex}.header__client-link{font-size:var(--text-sm);color:var(--gold-light);transition:all var(--transition-fast);padding:var(--space-xs) var(--space-md);border:1px solid var(--border-gold);border-radius:var(--radius-md);font-weight:600}.header__client-link:hover{color:var(--gold-primary);background:#c8a45a1a}.hero{text-align:center;min-height:50vh;padding:calc(var(--header-height) + var(--space-3xl)) var(--space-lg) var(--space-2xl);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.hero:before{content:"";pointer-events:none;background:radial-gradient(circle,#c8a45a14 0%,#0000 70%);width:600px;height:600px;position:absolute;top:0;left:50%;transform:translate(-50%)}.hero__icon{margin-bottom:var(--space-lg);font-size:3.5rem;animation:.6s both fadeInUp}.hero__title{font-size:var(--text-4xl);margin-bottom:var(--space-md);animation:.6s .1s both fadeInUp}.hero__subtitle{font-size:var(--text-lg);color:var(--text-secondary);max-width:500px;margin:0 auto var(--space-xl);animation:.6s .2s both fadeInUp}.hero__cta{animation:.6s .3s both fadeInUp}.booking-section{padding:var(--space-2xl) 0 var(--space-3xl);z-index:1;position:relative}.progress-bar{margin-bottom:var(--space-2xl);padding:0 var(--space-lg);justify-content:center;align-items:center;gap:0;display:flex}.progress-step{align-items:center;gap:var(--space-xs);flex-direction:column;min-width:80px;display:flex;position:relative}.progress-step__circle{width:36px;height:36px;font-size:var(--text-sm);border:2px solid var(--border-subtle);color:var(--text-muted);background:var(--bg-secondary);transition:all var(--transition-base);z-index:2;border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex}.progress-step--active .progress-step__circle{border-color:var(--gold-primary);color:#0a0a0f;background:var(--gold-gradient);box-shadow:var(--gold-glow)}.progress-step--completed .progress-step__circle{border-color:var(--status-confirmed);color:#0a0a0f;background:var(--status-confirmed)}.progress-step__label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;transition:color var(--transition-base);white-space:nowrap}.progress-step--active .progress-step__label{color:var(--gold-light)}.progress-step--completed .progress-step__label{color:var(--status-confirmed)}.progress-line{background:var(--border-subtle);max-width:80px;height:2px;transition:background var(--transition-base);flex:1;margin-bottom:20px}.progress-line--filled{background:var(--status-confirmed)}.step-container{animation:.4s both fadeInUp;display:none}.step-container--active{display:block}.step__title{text-align:center;margin-bottom:var(--space-sm);font-size:var(--text-2xl)}.step__subtitle{text-align:center;color:var(--text-secondary);margin-bottom:var(--space-xl);font-size:var(--text-base)}.services-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));max-width:900px;margin:0 auto;display:grid}.service-card{padding:var(--space-xl);text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.service-card__icon{margin-bottom:var(--space-md);font-size:2.5rem;display:block}.service-card__name{font-family:var(--font-display);font-size:var(--text-lg);margin-bottom:var(--space-sm);font-weight:600}.service-card__details{justify-content:center;align-items:center;gap:var(--space-md);color:var(--text-secondary);font-size:var(--text-sm);display:flex}.service-card__price{color:var(--gold-light);font-weight:700;font-size:var(--text-xl);margin-top:var(--space-sm)}.barbers-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));max-width:700px;margin:0 auto;display:grid}.barber-card{padding:var(--space-xl);text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none}.barber-card__avatar{width:72px;height:72px;margin:0 auto var(--space-md);background:var(--bg-input);border:2px solid var(--border-subtle);transition:all var(--transition-base);border-radius:50%;justify-content:center;align-items:center;font-size:2rem;display:flex}.glass-card--active .barber-card__avatar{border-color:var(--gold-primary);box-shadow:var(--gold-glow)}.barber-card__name{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600}.datetime-container{gap:var(--space-xl);grid-template-columns:1fr 1fr;max-width:800px;margin:0 auto;display:grid}@media (width<=768px){.datetime-container{grid-template-columns:1fr}}.calendar{padding:var(--space-lg)}.calendar__header{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;display:flex}.calendar__month-year{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600}.calendar__nav{gap:var(--space-sm);display:flex}.calendar__nav-btn{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);font-size:var(--text-lg);justify-content:center;align-items:center;display:flex}.calendar__nav-btn:hover{border-color:var(--gold-primary);color:var(--gold-light)}.calendar__grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar__weekday{text-align:center;font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;padding:var(--space-sm) 0;font-weight:600}.calendar__day{aspect-ratio:1;font-size:var(--text-sm);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);color:var(--text-primary);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;font-weight:500;display:flex}.calendar__day:hover:not(.calendar__day--disabled):not(.calendar__day--empty){background:var(--bg-card-hover);border-color:var(--border-gold)}.calendar__day--selected{box-shadow:var(--shadow-gold);font-weight:700;background:var(--gold-gradient)!important;color:#0a0a0f!important}.calendar__day--today{border-color:var(--gold-primary);color:var(--gold-light)}.calendar__day--disabled{color:var(--text-muted);opacity:.3;cursor:not-allowed}.calendar__day--empty{cursor:default}.time-slots{padding:var(--space-lg)}.time-slots__title{font-family:var(--font-display);font-size:var(--text-lg);margin-bottom:var(--space-lg);font-weight:600}.time-slots__grid{gap:var(--space-sm);max-height:350px;padding-right:var(--space-xs);grid-template-columns:repeat(3,1fr);display:grid;overflow-y:auto}.time-slot{padding:var(--space-sm) var(--space-md);text-align:center;font-size:var(--text-sm);border-radius:var(--radius-sm);background:var(--bg-input);border:1px solid var(--border-subtle);cursor:pointer;transition:all var(--transition-fast);color:var(--text-primary);font-weight:500}.time-slot:hover:not(.time-slot--disabled){border-color:var(--gold-primary);background:#c8a45a14}.time-slot--selected{font-weight:700;background:var(--gold-gradient)!important;color:#0a0a0f!important;border-color:var(--gold-primary)!important}.time-slot--disabled{opacity:.2;cursor:not-allowed;text-decoration:line-through}.time-slots__empty{color:var(--text-muted);text-align:center;padding:var(--space-xl);font-size:var(--text-sm)}.confirmation-container{max-width:600px;margin:0 auto}.booking-summary{padding:var(--space-xl);margin-bottom:var(--space-xl)}.booking-summary__title{font-family:var(--font-display);font-size:var(--text-lg);margin-bottom:var(--space-lg);color:var(--gold-light)}.booking-summary__items{gap:var(--space-md);flex-direction:column;display:flex}.booking-summary__item{padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.booking-summary__label{color:var(--text-secondary);font-size:var(--text-sm)}.booking-summary__value{font-weight:600}.booking-summary__total{margin-top:var(--space-md);padding-top:var(--space-md);border-top:2px solid var(--border-gold);font-size:var(--text-lg);justify-content:space-between;font-weight:700;display:flex}.booking-summary__total-value{color:var(--gold-light);font-size:var(--text-xl)}.client-form{gap:var(--space-lg);flex-direction:column;display:flex}.success-screen{text-align:center;padding:var(--space-3xl) var(--space-lg);animation:.5s both fadeInUp}.success-screen__icon{margin-bottom:var(--space-lg);font-size:4rem}.success-screen__title{margin-bottom:var(--space-md);color:var(--status-confirmed)}.success-screen__message{color:var(--text-secondary);font-size:var(--text-lg);max-width:400px;margin:0 auto var(--space-xl)}.success-screen__info{padding:var(--space-lg);max-width:400px;margin:0 auto var(--space-xl);font-size:var(--text-sm);color:var(--text-secondary)}.step-navigation{margin-top:var(--space-2xl);justify-content:space-between;max-width:800px;margin-left:auto;margin-right:auto;display:flex}.footer{text-align:center;padding:var(--space-xl) var(--space-lg);color:var(--text-muted);font-size:var(--text-sm);border-top:1px solid var(--border-subtle);margin-top:var(--space-3xl)}.loading-overlay{z-index:2000;justify-content:center;align-items:center;gap:var(--space-lg);background:#0a0a0fe6;flex-direction:column;display:flex;position:fixed;inset:0}.loading-spinner{border:3px solid var(--border-subtle);border-top-color:var(--gold-primary);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{color:var(--text-secondary);font-size:var(--text-sm)}
