/* ReservaPro Client Premium v19 */
:root{--cp-gold:#f2b84b;--cp-gold2:#ffd77a;--cp-ink:#080d12;--cp-ink2:#141c25;--cp-paper:#f7f7f4;--cp-line:#e7e9ed;--cp-muted:#687386}
body{background:var(--cp-paper)!important;color:#111827!important}.portal-topbar{background:rgba(8,13,18,.97)!important;border-bottom:1px solid rgba(255,255,255,.08)!important;box-shadow:0 10px 30px rgba(0,0,0,.1)!important}.portal-brand-copy strong{color:#fff!important}.portal-brand-copy span{color:#aab3bf!important}.portal-menu a{color:#cbd2db!important}.portal-menu a.active,.portal-menu a:hover{color:#ffd77a!important}.portal-brand-mark{background:linear-gradient(135deg,#2c2213,#0d1116)!important;border:1px solid rgba(242,184,75,.38)!important;color:#f2b84b!important}.portal-button{background:linear-gradient(135deg,#ffd77a,#f2b84b)!important;color:#171108!important;border-color:#e4aa3e!important}.portal-button--ghost,.portal-chip{background:#141b23!important;color:#e5e7eb!important;border:1px solid #2a3540!important}.portal-page{max-width:1560px!important;padding:22px 24px 40px!important}.portal-hero{background:linear-gradient(115deg,#080d12,#19232d)!important;border:1px solid rgba(242,184,75,.16)!important;border-radius:24px!important;box-shadow:0 22px 60px rgba(4,8,12,.18)!important;overflow:hidden!important}.portal-hero h1{font-size:clamp(30px,4vw,56px)!important;line-height:.99!important;letter-spacing:-.055em!important}.portal-hero h1,.portal-hero strong{color:#fff!important}.portal-hero p{color:#c1c8d1!important}.portal-highlight-card{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.12)!important;backdrop-filter:blur(12px)!important}.portal-stat{background:rgba(255,255,255,.07)!important}.portal-banner-card,.booking-card,.step-content-area,.sidebar-summary,.profile-card,.history-card,.support-card{background:#fff!important;border:1px solid var(--cp-line)!important;border-radius:18px!important;box-shadow:0 9px 28px rgba(15,23,42,.06)!important}.stepper-bar{border-radius:15px!important;overflow:hidden!important;box-shadow:0 8px 24px rgba(15,23,42,.05)!important}.step-item.active{background:#111820!important;color:#ffd77a!important}.category-pill.active,.service-card.selected,.professional-card.selected,.time-slot.selected{border-color:#e0a640!important;box-shadow:0 0 0 3px rgba(242,184,75,.14)!important}.btn-submit,.btn-primary,.portal-primary-action{background:linear-gradient(135deg,#ffd77a,#f2b84b)!important;color:#181108!important;border:1px solid #dfa43d!important;border-radius:11px!important;font-weight:800!important}.service-card,.professional-card,.history-item,.support-ticket{border-radius:16px!important;border:1px solid var(--cp-line)!important}.service-card:hover,.professional-card:hover{transform:translateY(-2px)!important;box-shadow:0 14px 36px rgba(15,23,42,.08)!important}
/* auth pages */
.portal-auth-page{min-height:100vh;background:radial-gradient(circle at 85% 12%,rgba(242,184,75,.13),transparent 24%),linear-gradient(135deg,#070b0f,#151e27)!important;padding:32px 18px!important}.portal-auth-card{border-radius:24px!important;border:1px solid rgba(242,184,75,.16)!important;box-shadow:0 28px 80px rgba(0,0,0,.3)!important}.portal-auth-card h1,.portal-auth-card h2{letter-spacing:-.04em!important}.portal-auth-card input{border-radius:11px!important;border:1px solid #dfe3e8!important;min-height:44px!important}.portal-auth-footer{color:#7a8491!important}.portal-auth-footer a{color:#9c6915!important;font-weight:800!important}
/* client dashboard navigation */
body.client-dashboard .portal-page{padding-left:250px!important;position:relative!important}.client-side-nav{position:fixed!important;left:0;top:68px;bottom:0;width:228px;background:#0a0f14;border-right:1px solid #1d2731;padding:18px 12px;z-index:50;overflow:auto}.client-side-nav a{display:flex;gap:10px;align-items:center;color:#c6ced8;text-decoration:none;padding:11px 12px;border-radius:11px;margin-bottom:4px;font-size:13px;font-weight:700}.client-side-nav a:hover,.client-side-nav a.active{background:linear-gradient(90deg,rgba(242,184,75,.2),rgba(242,184,75,.07));color:#ffd77a}.client-side-nav i{width:18px;text-align:center}.client-side-brand{padding:12px;margin-bottom:12px;border:1px solid #27313b;border-radius:14px;color:#fff}.client-side-brand small{display:block;color:#8994a1;margin-top:3px}
@media(max-width:1020px){body.client-dashboard .portal-page{padding-left:18px!important}.client-side-nav{display:none!important}}
@media(max-width:720px){.portal-page{padding:12px 12px 30px!important}.portal-topbar{padding:10px 12px!important}.portal-menu{display:none!important}.portal-hero{border-radius:18px!important}.portal-hero-grid{grid-template-columns:1fr!important}.portal-banner-strip{grid-template-columns:1fr!important}}
/* existing authenticated account sidebar compatibility */
.client-account-sidebar{background:linear-gradient(180deg,#090e13,#0d141b)!important;border:1px solid #1f2933!important;border-radius:18px!important;padding:14px!important;box-shadow:0 14px 40px rgba(3,8,14,.12)!important;align-self:start!important;position:sticky!important;top:86px!important}.client-account-user{padding:12px!important;border-bottom:1px solid #202a34!important;margin-bottom:10px!important}.client-account-user strong{color:#fff!important}.client-account-avatar{background:linear-gradient(135deg,#ffd77a,#f2b84b)!important;color:#1a1207!important;font-weight:900!important}.client-account-sidebar nav a{display:flex!important;align-items:center!important;gap:10px!important;padding:10px 11px!important;margin:4px 0!important;border-radius:10px!important;color:#c7d0da!important;text-decoration:none!important;font-weight:700!important;font-size:13px!important}.client-account-sidebar nav a:hover,.client-account-sidebar nav a.active{background:linear-gradient(90deg,rgba(242,184,75,.22),rgba(242,184,75,.07))!important;color:#ffd77a!important}.client-account-main{min-width:0!important}.portal-grid-2{grid-template-columns:230px minmax(0,1fr)!important;gap:18px!important}.portal-section-head{margin-bottom:16px!important}.portal-page-title{letter-spacing:-.04em!important}.appointment-card,.citas-grid>div,.perfil-card,.support-panel{border:1px solid var(--cp-line)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 24px rgba(15,23,42,.06)!important}.filters{display:flex!important;gap:8px!important;flex-wrap:wrap!important;margin-bottom:16px!important}.filter-btn{border:1px solid #e1e5ea!important;border-radius:999px!important;background:#fff!important;color:#596474!important;font-weight:800!important;padding:8px 12px!important}.filter-btn.active{background:#111820!important;color:#ffd77a!important;border-color:#111820!important}.bottom-nav{background:rgba(8,13,18,.97)!important;border-top:1px solid #26313b!important}.bottom-nav .nav-item{color:#c8d0d8!important}.bottom-nav .nav-item.active{color:#ffd77a!important}
@media(max-width:920px){.portal-grid-2{grid-template-columns:1fr!important}.client-account-sidebar{position:static!important}.client-account-sidebar nav{display:flex!important;overflow:auto!important;gap:6px!important}.client-account-sidebar nav a{white-space:nowrap!important}.client-account-user{display:none!important}}
