.app-toolbar-title-icons{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:0}.app-toolbar-title-icons__a11y{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-toolbar-title-icons__icons{display:inline-flex;align-items:center;gap:10px;color:var(--ct-brand-primary);margin-inline-end:var(--ct-space-4)}.app-toolbar-title-icons__slot{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:inherit}.app-toolbar-title-icons__slot--brand svg{transform:rotate(-45deg)}.public-not-found-page{background:linear-gradient(180deg,rgb(var(--brand-background)),rgb(var(--brand-surface)) 55%,rgb(var(--brand-background)))}.public-not-found-page .app-toolbar{background:transparent;border-bottom-color:rgba(55,65,81,.65)}.public-not-found-main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:12px 20px max(28px,var(--safe-area-inset-bottom));max-width:26rem;margin:0 auto;width:100%;box-sizing:border-box;position:relative}.public-not-found-glow{position:absolute;width:min(120vw,420px);height:min(120vw,420px);border-radius:50%;background:radial-gradient(circle,rgb(var(--brand-primary) / .14),rgb(var(--brand-primary) / 0) 65%);pointer-events:none;top:50%;left:50%;transform:translate(-50%,-52%);z-index:0}.public-not-found-inner{position:relative;z-index:1;width:100%}.public-not-found-code{font-size:clamp(4.25rem,20vw,6rem);font-weight:500;line-height:1;margin:0 0 16px;color:rgb(var(--brand-primary));letter-spacing:-.045em;text-shadow:0 0 40px rgb(var(--brand-primary) / .25)}.public-not-found-title{font-size:clamp(1.15rem,4vw,1.35rem);font-weight:500;color:var(--ct-brand-text);margin:0 0 12px;line-height:1.3}.public-not-found-desc{color:var(--ct-brand-text-secondary);line-height:1.55;margin:0 0 16px;font-size:.98rem}.public-not-found-hint{font-size:.875rem;line-height:1.5;color:var(--ct-brand-text-secondary);margin:0 0 28px;opacity:.88}.public-not-found-hint strong{color:var(--ct-brand-text);font-weight:500}.public-not-found-actions{display:flex;flex-direction:column;gap:12px;width:100%;max-width:300px;margin:0 auto}.public-not-found-actions a{text-decoration:none;text-align:center;box-sizing:border-box}@media (prefers-reduced-motion: reduce){.public-not-found-code{text-shadow:none}}.app-page-body.establishment-public-page-main{display:flex;flex-direction:column;min-height:0;overflow:hidden}.establishment-public-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.establishment-public-hero{display:flex;flex-direction:column;gap:.75rem;align-items:stretch}.establishment-public-hero__top{display:flex;gap:1rem;align-items:flex-start}.establishment-public-hero__logo{width:88px;height:88px;border-radius:12px;object-fit:cover;flex-shrink:0}.establishment-public-hero__logo-placeholder{width:88px;height:88px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--app-surface-elevated, #2d2d2d);flex-shrink:0}.establishment-public-hero__body{min-width:0;flex:1}.establishment-public-hero__title{margin:0 0 .5rem;font-size:1.25rem;line-height:1.25;font-weight:500;color:var(--ct-brand-text)}.establishment-public-hero__row{display:flex;align-items:flex-start;gap:8px;margin:.35rem 0;font-size:.875rem;color:var(--ct-brand-text-secondary)}.establishment-public-hero__row--middle{align-items:center}.establishment-public-hero__row-icon{flex-shrink:0;margin-top:2px}.establishment-public-hero__link{color:var(--ion-color-warning);text-decoration:none;font-weight:500}.establishment-public-hero__link--break{word-break:break-all}.establishment-public-hero__link:hover{text-decoration:underline}.establishment-public-hero__address{white-space:pre-wrap}.establishment-public-hero__hours-block{display:flex;align-items:flex-start;gap:8px;width:100%;min-width:0;box-sizing:border-box;margin:0;font-size:.875rem;color:var(--ct-brand-text-secondary)}.establishment-public-hero__hours{flex:1;min-width:0;line-height:1.5;color:var(--ct-brand-text-secondary)}.establishment-public-hero__cta{margin-top:var(--ct-space-3)}.establishment-public-about{font-size:.875rem;line-height:1.5;color:rgb(var(--brand-text))}.establishment-public-about a{color:var(--ct-brand-primary);text-decoration:underline}.establishment-public-about ul{list-style:disc;padding-left:1.25rem;margin:.5rem 0}.establishment-public-about ol{list-style:decimal;padding-left:1.25rem;margin:.5rem 0}.establishment-public-about h2{font-size:1.05rem;font-weight:500;margin:.75rem 0 .35rem}.establishment-public-about h3{font-size:.95rem;font-weight:500;margin:.65rem 0 .3rem}.establishment-public-about p{margin:0 0 .65rem}.establishment-public-about p:last-child{margin-bottom:0}.establishment-gallery-lightbox-modal.app-modal-backdrop{align-items:stretch;padding:0;background:rgba(0,0,0,.92)}.establishment-gallery-lightbox-inner{min-height:100%;width:100%;display:flex;flex-direction:column}.ct-tenant-summary-card{padding:var(--ct-space-3);background:linear-gradient(135deg,rgba(31,41,55,.98),rgba(17,24,39,.98));border:1px solid rgba(245,165,36,.35)}.ct-tenant-summary-card__header{display:flex;align-items:flex-start;gap:var(--ct-space-2);margin-bottom:var(--ct-space-2)}.ct-tenant-summary-card__body{flex:1;min-width:0}.ct-tenant-summary-card__title{margin:0 0 2px;color:var(--ct-brand-text);font-size:18px;line-height:1.25;font-weight:500}.ct-tenant-summary-card__subtitle{margin:0 0 6px;color:var(--ct-brand-text-secondary);font-size:12px;line-height:1.35;word-break:break-word}.ct-tenant-summary-card__contact{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:12px;line-height:1.35;color:var(--ct-brand-text-secondary)}.ct-tenant-summary-card__contact-segment{display:inline-flex;align-items:center;gap:5px;min-width:0;max-width:100%}.ct-tenant-summary-card__contact-segment span,.ct-tenant-summary-card__contact-segment a{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ct-tenant-summary-card__contact-sep{opacity:.45;user-select:none;flex-shrink:0}.ct-tenant-summary-card__phone{color:var(--ct-brand-text-secondary);text-decoration:none;font-weight:500}.ct-tenant-summary-card__phone:hover{color:var(--ct-brand-primary);text-decoration:underline;text-underline-offset:2px}.ct-tenant-summary-card__phone:active{color:var(--ct-brand-primary)}.ct-tenant-summary-card__logo{width:48px;height:48px;border-radius:999px;overflow:hidden;flex-shrink:0;border:1px solid rgba(245,165,36,.45)}.ct-tenant-summary-card__logo--fallback{display:inline-flex;align-items:center;justify-content:center;color:var(--ct-brand-primary);background:rgba(245,165,36,.12)}.ct-tenant-summary-card__actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--ct-space-2);align-items:stretch;margin-top:var(--ct-space-2);width:100%}.ct-tenant-summary-card__action-slot{flex:1 1 140px;min-width:0;display:flex}.ct-tenant-summary-card__action-slot>button{width:100%;margin:0;font-weight:500;font-size:var(--ct-font-size-sm);min-height:42px;padding-top:6px;padding-bottom:6px}.ct-tenant-summary-card__action-slot>button.scheduling-cta svg{width:18px;height:18px}.ct-tenant-summary-card__action-slot>button.secondary-cta{font-size:var(--ct-font-size-sm);font-weight:500}[data-theme=dark] .ct-tenant-summary-card{background:linear-gradient(135deg,#303a4b,#262e3c);border:1px solid rgba(245,165,36,.32)}.ct-appointment-card{width:100%;box-sizing:border-box;background:var(--ct-brand-surface)!important;border:1px solid var(--ct-brand-border)!important;box-shadow:0 4px 10px rgba(2,6,23,.18)!important;color:var(--ct-brand-text-secondary);padding:var(--ct-space-3);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.ct-appointment-card:before{content:none!important;display:none!important}[data-theme=dark] .ct-appointment-card{background:var(--ct-dark-card-surface)!important;border:1px solid var(--ct-dark-card-edge)!important;box-shadow:var(--ct-card-shadow)!important}.ct-appointment-card__header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;padding-right:2px}.ct-appointment-card__header-aside{display:flex;flex-direction:row;align-items:flex-start;justify-content:flex-end;gap:4px;flex-shrink:0}.ct-appointment-card__header-delete{flex-shrink:0}.ct-appointment-card .appointment-status-chip{flex-shrink:0;border-style:solid;border-width:1px}.ct-appointment-card__main{flex:1;min-width:0}.ct-appointment-card h2{margin:0 0 6px;font-size:15px;line-height:1.25;color:var(--ct-brand-text);font-weight:500}.ct-appointment-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:var(--ct-font-size-sm);line-height:1.35;color:var(--ct-brand-text-secondary);margin:0 0 6px}.ct-appointment-card__meta-item{display:inline-flex;align-items:center;gap:4px}.ct-appointment-card__meta-sep{opacity:.45;user-select:none}.ct-appointment-card__professional{display:flex;align-items:center;gap:6px;margin:0 0 6px;font-size:var(--ct-font-size-sm);line-height:1.35;font-weight:500;color:var(--ct-brand-text-secondary)}.ct-appointment-card__links{display:flex;flex-wrap:wrap;align-items:center;gap:var(--ct-space-3);margin:0 0 4px}.ct-appointment-card__link{background:none;border:none;padding:0;font:inherit;font-size:var(--ct-font-size-sm);font-weight:500;color:var(--ct-brand-primary);cursor:pointer;text-decoration:underline;text-underline-offset:2px;-webkit-tap-highlight-color:transparent}.ct-appointment-card__link:active{opacity:.85}.ct-appointment-card__action-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:40px;height:40px;margin:0;padding:0;box-sizing:border-box;background:none;border:none;border-radius:var(--ct-radius-md);box-shadow:none;font:inherit;line-height:0;color:var(--ct-brand-primary);text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:opacity .15s ease,background-color .15s ease}.ct-appointment-card__action-icon:visited{color:var(--ct-brand-primary)}.ct-appointment-card__action-icon:hover{background-color:rgb(var(--brand-primary) / .1)}.ct-appointment-card__action-icon--muted,.ct-appointment-card__action-icon--muted:visited{color:var(--ct-brand-text-secondary)}.ct-appointment-card__action-icon--muted:hover{background-color:rgba(148,163,184,.12)}.ct-appointment-card__action-icon--danger,.ct-appointment-card__action-icon--danger:visited{color:#fca5a5}.ct-appointment-card__action-icon--danger:hover{background-color:rgba(248,113,113,.12)}.ct-appointment-card__action-icon:active{opacity:.82}.ct-appointment-card__action-icon svg{flex-shrink:0;color:currentColor}.ct-appointment-card .appointment-actions{margin-top:var(--ct-space-2);align-items:center;gap:var(--ct-space-1)}.ct-appointment-empty{width:100%;box-sizing:border-box;background:var(--ct-brand-surface)!important;border:1px solid var(--ct-brand-border)!important;box-shadow:var(--ct-card-shadow);color:var(--ct-brand-text-secondary);padding:var(--ct-space-3);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}[data-theme=dark] .ct-appointment-empty{background:var(--ct-dark-card-surface)!important;border:1px solid var(--ct-dark-card-edge)!important}.ct-appointment-empty h2{margin:0 0 8px;color:var(--ct-brand-text);font-size:15px;line-height:1.25;font-weight:500}.ct-appointment-empty p{margin:0;font-size:13px;line-height:1.35;color:var(--ct-brand-text-secondary)}.ct-appointment-empty p.app-text-danger{color:var(--ion-color-danger)!important;font-size:14px;line-height:1.45}.booking-content{--background: var(--ct-brand-background);color:var(--ct-brand-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.booking-toolbar{--background: var(--ct-brand-background);--color: var(--ct-brand-text)}.booking-steps{display:flex;align-items:center;gap:0;margin:var(--ct-space-3) 0 var(--ct-space-5)}.step-wrapper{display:flex;align-items:center;flex:1}.step-item{-webkit-appearance:none;appearance:none;border:0;background:transparent;padding:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;font-size:var(--ct-font-size-xs);color:var(--ct-brand-text-secondary);min-width:72px}.step-item span{margin-top:var(--ct-space-2);line-height:var(--ct-line-tight);text-align:center}.step-item:disabled{opacity:.45;cursor:not-allowed}.step-item.active,.step-item.completed{color:var(--ct-brand-primary)}.step-icon{width:42px;height:42px;border-radius:999px;background:var(--ct-brand-surface);color:var(--ct-brand-text);display:flex;align-items:center;justify-content:center;font-size:18px}.step-item.active .step-icon,.step-item.completed .step-icon{background:var(--ct-brand-primary);color:var(--ct-brand-on-primary)}.step-line{flex:1;height:2px;background:var(--ct-brand-border);margin:0 var(--ct-space-1)}.step-line.active{background:var(--ct-brand-primary)}.booking-section{padding:var(--ct-space-3);margin-bottom:var(--ct-space-3)}.booking-section h3{margin:0 0 var(--ct-space-2);font-size:var(--ct-font-size-lg);color:var(--ct-brand-text)}.booking-step-professionals,.booking-step-services{margin-bottom:var(--ct-space-3)}.booking-step-services-hint{max-width:22rem;margin:0 auto var(--ct-space-3);padding:0 var(--ct-space-3);box-sizing:border-box;font-size:var(--ct-font-size-sm);line-height:var(--ct-line-normal);text-align:center;color:var(--ct-brand-text-secondary, rgba(255, 255, 255, .78))}.booking-step-services-hint strong{color:var(--ct-brand-text, #f9fafb)}.booking-step-datetime,.booking-step-confirm{margin-bottom:var(--ct-space-3)}.booking-step-title-centered{margin:0 0 var(--ct-space-3);font-size:var(--ct-font-size-2xl);text-align:center;color:var(--ct-brand-text);font-weight:500}.booking-datetime-card{background:var(--ct-brand-surface)!important;border:1px solid var(--ct-brand-border)!important;box-shadow:0 4px 10px rgba(2,6,23,.18)!important;margin-bottom:var(--ct-space-3)}.booking-datetime-card,.booking-datetime-card h3,.booking-datetime-card p,.booking-datetime-card span,.booking-datetime-card strong,.booking-datetime-card button{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important;letter-spacing:normal}.booking-datetime-card:before{content:none!important;display:none!important;background:none!important;box-shadow:none!important;filter:none!important}.booking-datetime-card h3{margin-bottom:var(--ct-space-2)}.selector-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ct-space-2)}.selector-grid--professionals{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ct-space-3);margin:0;padding:4px;box-sizing:border-box}.selector-grid--services{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ct-space-3);margin:0;padding:3px;box-sizing:border-box}.selector-card{border:1px solid var(--ct-brand-border);border-radius:var(--ct-radius-md);background:var(--ct-brand-surface);color:var(--ct-brand-text);min-height:56px;padding:var(--ct-space-2);text-align:left;display:flex;flex-direction:column;justify-content:center;gap:2px}.selector-card--professional{min-height:0;padding:8px;border-width:2px;border-color:rgba(55,65,81,.92);box-shadow:0 4px 10px rgba(2,6,23,.18);text-align:left;align-items:stretch;gap:0;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.selector-card--professional:not(.selector-card--service) .professional-card-content{flex-direction:row;align-items:center;gap:8px}.selector-card--professional:hover{border-color:rgba(245,165,36,.5);box-shadow:0 8px 14px rgba(2,6,23,.24);transform:translateY(-1px)}.professional-card-content{display:flex;flex-direction:column;align-items:center;gap:6px}@media (min-width: 640px){.professional-card-content{flex-direction:row;align-items:flex-start;gap:8px}}.professional-avatar-wrap{width:32px;height:32px;border-radius:var(--ct-radius-pill);display:inline-flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}@media (min-width: 640px){.professional-avatar-wrap{width:40px;height:40px;flex-shrink:0}}.professional-avatar-image{width:100%;height:100%;object-fit:cover}.professional-avatar-fallback{width:100%;height:100%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:500;font-size:15px;letter-spacing:.03em;text-transform:uppercase}.professional-info{display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;flex:1}.selector-card--professional:not(.selector-card--service) .professional-info{align-items:flex-start;text-align:left;justify-content:center;min-width:0}@media (min-width: 640px){.professional-info{align-items:flex-start;text-align:left}}.professional-info strong{font-size:10px;color:var(--ct-brand-text);line-height:var(--ct-line-tight);font-weight:500;margin:0}.professional-info small{color:var(--ct-brand-text-secondary);font-size:7px;line-height:1.35;margin:0}.avatar-tone-slate{background:#334155}.avatar-tone-cyan{background:#0891b2}.avatar-tone-orange{background:#ea7c17}.avatar-tone-violet{background:#6d28d9}.selector-card.selected{background:var(--ct-brand-primary);color:var(--ct-brand-on-primary);border-color:var(--ct-brand-primary)}.selector-card.selected small{color:var(--ct-brand-on-primary);opacity:.82}.selector-card--professional.selected strong{color:var(--ct-brand-text)}.selector-card--professional.selected small{color:var(--ct-brand-text-secondary);opacity:1}.selector-card--professional.selected{background:var(--ct-brand-surface);color:var(--ct-brand-text);border-color:var(--ct-brand-primary);box-shadow:0 12px 20px rgba(245,165,36,.2)}.selector-card--professional:not(.selector-card--service).selected{transform:none}.selector-card--service.selected{transform:none}.professional-selected-chip{display:inline-flex;align-items:center;gap:2px;font-size:7px;font-weight:500;line-height:var(--ct-line-tight);color:var(--ct-brand-primary);margin-top:2px}.selector-card--professional:not(.selector-card--service){min-height:84px;padding:12px}.selector-card--professional:not(.selector-card--service) .professional-card-content{gap:12px}.selector-card--professional:not(.selector-card--service) .professional-avatar-wrap{width:48px;height:48px}.selector-card--professional:not(.selector-card--service) .professional-info strong{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.selector-card--professional:not(.selector-card--service) .professional-info small{font-size:11px}.selector-card--professional:not(.selector-card--service) .professional-selected-chip{gap:3px;font-size:10px}@media (min-width: 640px){.selector-card--professional:not(.selector-card--service) .professional-avatar-wrap{width:60px;height:60px}}.selector-card--service .professional-avatar-fallback{font-size:0;background:var(--ct-brand-primary);display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%}.selector-card--service{padding:8px}.selector-card--service .professional-card-content{gap:6px}.selector-card--service .professional-avatar-wrap{width:40px;height:40px}.selector-card--service .professional-info{gap:3px}.selector-card--service .professional-info strong{font-size:13px;line-height:1.2}.selector-card--service .professional-selected-chip{margin-top:0;font-size:10px}.service-meta-price{color:var(--ct-brand-primary);font-size:17px;font-weight:500;line-height:1.15;margin:0}.service-meta-duration{display:inline-flex;align-items:center;gap:4px;color:var(--ct-brand-text-secondary);font-size:11px;line-height:1.2;margin:0}.service-meta-duration svg{width:12px;height:12px;color:currentColor;flex-shrink:0}.selector-card--service .professional-avatar-fallback svg{width:15px;height:15px;color:#fff}.selector-card--service:active{transform:scale(.985)}@keyframes service-card-attention-pulse{0%,to{border-color:rgba(55,65,81,.92);box-shadow:0 4px 10px rgba(2,6,23,.18)}50%{border-color:rgba(245,165,36,.62);box-shadow:0 6px 20px rgba(245,165,36,.26)}}@media (hover: none){@media (prefers-reduced-motion: no-preference){.selector-grid--services-attention .selector-card--service:not(.selected){animation:service-card-attention-pulse 2.2s ease-in-out infinite}}}@media (prefers-reduced-motion: reduce){.selector-grid--services-attention .selector-card--service:not(.selected){border-color:rgba(245,165,36,.52);box-shadow:0 4px 16px rgba(245,165,36,.22)}}.selector-card small{color:var(--ct-brand-text-secondary)}.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:var(--ct-space-2)}.month-label{text-transform:capitalize;font-size:16px!important;font-weight:500;margin-bottom:2px!important}.calendar-header p{margin:4px 0 0;color:var(--ct-brand-text-secondary);text-transform:capitalize;font-size:13px;font-weight:500}.calendar-actions{display:flex;justify-content:flex-end;margin:6px 0 8px}.calendar-today-button.scheduling-cta{flex-shrink:0}.date-strip{display:flex;gap:var(--ct-space-2);overflow-x:auto;padding-bottom:var(--ct-space-2)}.date-chip{border:1px solid var(--ct-brand-border);border-radius:var(--ct-radius-md);min-width:56px;min-height:60px;background:var(--ct-brand-surface);color:var(--ct-brand-text-secondary);padding:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.date-chip span{font-size:11px;line-height:1;font-weight:500}.date-chip strong{font-size:22px;line-height:1;font-weight:500}.date-chip.selected{background:var(--ct-brand-primary);color:var(--ct-brand-on-primary);border-color:var(--ct-brand-primary)}.slots-section h3{display:flex;gap:6px;align-items:center}.slots-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.slot-chip{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;border:1px solid var(--ct-brand-border);border-radius:var(--ct-radius-md);background:var(--ct-brand-surface);color:var(--ct-brand-text);min-height:40px;padding:8px 6px;font-weight:500;font-size:var(--ct-font-size-sm);line-height:1.25;text-align:center;font-family:inherit}.slot-chip.selected{background:var(--ct-brand-primary);color:var(--ct-brand-on-primary);border-color:var(--ct-brand-primary)}.booking-step-nav{display:flex;justify-content:flex-start;align-items:center;gap:var(--ct-space-2);flex-wrap:wrap;margin-top:var(--ct-space-3)}.booking-page-scroll--services-fab{padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}.booking-services-fab{position:fixed;left:50%;right:auto;transform:translate(-50%);bottom:calc(var(--ct-space-4) + env(safe-area-inset-bottom,0px));z-index:200;width:fit-content;max-width:calc(100vw - 2 * var(--ct-space-4));margin:0;box-sizing:border-box}.booking-services-fab.app-btn-block{width:fit-content;max-width:min(calc(100vw - 2 * var(--ct-space-4)),520px)}.booking-services-fab.scheduling-cta{padding:0 var(--ct-space-4);font-size:var(--ct-font-size-sm)}.booking-services-fab.scheduling-cta svg{width:18px;height:18px}.booking-step-action-button,.booking-top-back-button{color:var(--ct-brand-primary);padding:0 var(--ct-space-1);min-height:var(--ct-button-height);border-radius:var(--ct-button-radius);font-size:var(--ct-font-size-sm);font-weight:500;text-transform:none;background:transparent;border:none;cursor:pointer}.calendar-nav-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px;background:transparent;border:none;cursor:pointer;color:var(--ct-brand-primary)}.booking-summary-card p{margin:0 0 var(--ct-space-2);color:var(--ct-brand-text-secondary);font-size:var(--ct-font-size-md)}.booking-summary-card{border:1px solid rgba(55,65,81,.92)!important;box-shadow:0 4px 10px rgba(2,6,23,.18)!important}.booking-summary-card:before{content:none!important;display:none!important}.booking-summary-card h3{margin:0 0 var(--ct-space-3);font-size:var(--ct-font-size-lg);font-weight:500;color:var(--ct-brand-text);text-align:center}.booking-summary-list{display:grid;gap:8px}.booking-summary-item{display:flex;align-items:flex-start;gap:10px;border:1px solid rgba(55,65,81,.6);border-radius:var(--ct-radius-md);background:rgba(17,24,39,.32);padding:8px 10px}.booking-summary-item-icon{width:26px;height:26px;border-radius:999px;background:rgba(var(--brand-primary),.18);color:var(--ct-brand-primary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.booking-summary-item-content{min-width:0;display:flex;flex-direction:column;gap:2px}.booking-summary-item-content strong{font-size:11px;color:var(--ct-brand-text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.02em}.booking-summary-item-content span{font-size:14px;line-height:1.3;color:var(--ct-brand-text);font-weight:500;word-break:break-word}.booking-summary-item-extra{margin:0;padding:0;font-size:12px;color:var(--ct-brand-text-secondary);line-height:1.2}.booking-summary-item-extra.forgot-password-link{width:auto;padding:0;display:inline-flex;align-self:flex-start;justify-content:flex-start;text-align:left}[data-theme=light] .booking-summary-item{border:var(--ct-cta-secondary-border);background:#f8fbff}[data-theme=light] .booking-summary-item-icon{background:var(--ct-brand-primary);color:#fff}[data-theme=light] .booking-summary-item-content strong{color:#64748b}[data-theme=light] .booking-summary-item-content span{color:#0f172a}.appointments-header-cta{--background: var(--ct-brand-background);padding-bottom:2px}.app-page-body.appointments-page-main{display:flex;flex-direction:column;min-height:0;overflow:hidden}.appointments-page-top{flex-shrink:0;padding-bottom:4px;background:var(--ct-brand-background);border-bottom:1px solid var(--ct-brand-border)}.appointments-list-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.appointments-page-lead{margin:0 0 var(--ct-space-3);font-size:var(--ct-font-size-sm);line-height:1.45;color:var(--ct-brand-text-secondary);font-weight:500}.appointments-hero-card{padding:var(--ct-space-4) var(--ct-space-3) var(--ct-space-3)!important;margin:0!important}.appointments-hero-card .scheduling-cta{margin-bottom:var(--ct-space-3);border-radius:var(--ct-cta-radius);min-height:var(--ct-cta-height)}.appointments-empty-cta.scheduling-cta{border-radius:var(--ct-cta-radius);min-height:var(--ct-cta-height)}.appointments-hero-error{margin-top:var(--ct-space-2);margin-bottom:0}.appointments-empty-card{text-align:center;padding:var(--ct-space-5) var(--ct-space-4) var(--ct-space-4)!important;max-width:420px;margin-left:auto!important;margin-right:auto!important}.appointments-empty-icon-wrap{display:flex;align-items:center;justify-content:center;width:72px;height:72px;margin:0 auto var(--ct-space-4);border-radius:var(--ct-radius-xl);background:rgba(var(--brand-primary),.1);border:1px solid rgba(var(--brand-primary),.22);color:var(--ct-brand-primary)}.appointments-empty-title{margin:0 0 var(--ct-space-2);font-size:var(--ct-font-size-lg);font-weight:500;color:var(--ct-brand-text);line-height:1.3}.appointments-empty-hint{margin:0 0 var(--ct-space-4);font-size:var(--ct-font-size-sm);line-height:1.5;color:var(--ct-brand-text-secondary)}.appointments-empty-cta{max-width:280px;margin-left:auto;margin-right:auto}.appointments-list{padding:var(--ct-space-2) var(--ct-space-4);display:grid;gap:var(--ct-space-2)}.appointment-card{background:var(--ct-brand-surface)!important;border:1px solid var(--ct-brand-border)!important;box-shadow:0 4px 10px rgba(2,6,23,.18)!important;color:var(--ct-brand-text-secondary);padding:var(--ct-space-3) var(--ct-space-3) 6px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.appointment-card:before{content:none!important;display:none!important}.appointment-card h2{margin:0 0 8px;color:var(--ct-brand-text);font-size:15px;line-height:1.25;font-weight:500}.appointment-card p{margin:0 0 5px;display:flex;align-items:center;gap:8px;color:var(--ct-brand-text-secondary);font-size:13px;line-height:1.3;font-weight:500}.appointment-card p:last-child{margin-bottom:0}.appointment-card p.appointment-card-ver-mais-wrap{display:flex;align-items:center;min-height:20px;color:var(--ct-brand-primary)}.appointment-card-ver-mais{flex:0 1 auto;display:inline-flex;align-items:center;justify-content:flex-start;margin:0;padding:0;width:auto;max-width:100%;min-height:auto;border:none;background:transparent;color:inherit;font-family:inherit;font-size:13px;font-weight:500;line-height:1.3;cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent}.appointment-card-ver-mais:active{opacity:.85}.appointment-card-header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;padding-right:2px}.appointment-status-chip{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:84px;min-height:32px;padding:6px 12px;text-transform:none;font-weight:500;font-size:var(--ct-font-size-xs);line-height:1.2;text-align:center;border-radius:var(--ct-button-radius);background:rgba(var(--brand-primary),.16);color:var(--ct-brand-primary);border:1px solid rgba(var(--brand-primary),.32);box-shadow:0 2px 6px rgba(var(--brand-primary),.14),inset 0 1.5px rgba(255,255,255,.12),inset 0 -2px 6px rgba(var(--brand-primary),.12)}.appointment-status-chip--medium{background:rgba(107,114,128,.2);color:var(--ct-brand-text-secondary);border:1px solid rgba(156,163,175,.4);box-shadow:0 2px 6px rgba(0,0,0,.2),inset 0 1.5px rgba(255,255,255,.08),inset 0 -2px 6px rgba(0,0,0,.22)}.appointment-status-chip--warning{background:rgba(var(--brand-primary),.16);color:var(--ct-brand-primary);border:1px solid rgba(var(--brand-primary),.32);box-shadow:0 2px 6px rgba(var(--brand-primary),.14),inset 0 1.5px rgba(255,255,255,.12),inset 0 -2px 6px rgba(var(--brand-primary),.12)}.appointment-status-chip--success{background:rgba(34,197,94,.18);color:#4ade80;border:1px solid rgba(74,222,128,.38);box-shadow:0 2px 6px rgba(var(--color-success),.2),inset 0 1.5px rgba(255,255,255,.1),inset 0 -2px 6px rgba(var(--color-success),.15)}.appointment-status-chip--danger{background:rgba(239,68,68,.16);color:#f87171;border:1px solid rgba(248,113,113,.38);box-shadow:0 2px 6px rgba(var(--color-error),.22),inset 0 1.5px rgba(255,255,255,.1),inset 0 -2px 6px rgba(var(--color-error),.18)}.appointment-actions{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px;width:100%;align-items:center;padding-right:2px}.appointment-actions .appointment-action-btn{flex:1 1 0;min-width:0}.appointment-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;box-sizing:border-box;min-height:38px;padding:4px 10px;border-radius:var(--ct-cta-radius);font-family:inherit;font-weight:400;font-size:var(--ct-font-size-sm);line-height:1.2;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:var(--ct-cta-transition);color:var(--ct-cta-secondary-fg);background:linear-gradient(to bottom,var(--ct-cta-secondary-grad-top),var(--ct-cta-secondary-grad-bottom));border:var(--ct-cta-secondary-border);box-shadow:var(--ct-cta-secondary-drop),inset 0 1.5px rgba(255,255,255,.14),inset 0 -2px 8px 0 var(--ct-cta-secondary-inset-low)}.appointment-action-btn .action-button-icon{flex-shrink:0;width:14px;height:14px;margin-right:0;color:currentColor}.appointment-action-btn:active:not(:disabled){transform:scale(.98);filter:brightness(.97)}.appointment-action-btn--muted{color:var(--ct-brand-text-secondary);background:linear-gradient(to bottom,rgb(var(--brand-border)),rgb(var(--brand-surface)));border:1px solid rgba(148,163,184,.38);box-shadow:var(--ct-cta-secondary-drop),inset 0 1.5px rgba(255,255,255,.08),inset 0 -2px 8px rgba(0,0,0,.32)}.appointment-action-btn--danger{border:1px solid rgba(248,113,113,.35);color:#fca5a5;background:linear-gradient(to bottom,rgba(239,68,68,.14),rgba(17,24,39,.88));box-shadow:var(--ct-cta-secondary-drop),inset 0 1px rgba(255,255,255,.06),inset 0 -2px 8px rgba(0,0,0,.35)}.appointment-action-btn--danger .action-button-icon{color:#fca5a5}.action-button-icon{margin-right:6px}.appointments-filter-tabs{display:flex;flex-direction:row;flex-wrap:nowrap;width:100%;margin-top:var(--ct-space-3);margin-bottom:0;border-radius:var(--ct-radius-md);border:1px solid var(--ct-brand-border);background:var(--ct-brand-surface);overflow:hidden;box-sizing:border-box}.appointments-filter-tab{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;padding:8px 4px;font-size:clamp(10px,2.85vw,12px);line-height:1.2;letter-spacing:.01em;text-align:center;cursor:pointer;border:none;border-radius:0;border-right:1px solid var(--ct-brand-border);background:transparent;color:var(--ct-brand-text-secondary);font-family:inherit;font-weight:500;touch-action:manipulation;-webkit-tap-highlight-color:transparent;white-space:normal;hyphens:none}.appointments-filter-tab:last-child{border-right:none}.appointments-filter-tab:active{filter:brightness(1.06)}.appointments-filter-tab--active{background:var(--ct-brand-primary);color:var(--ct-brand-on-primary)}.services-modal-professional{display:flex;align-items:center;gap:var(--ct-space-3);margin-bottom:var(--ct-space-4);padding-bottom:var(--ct-space-3);border-bottom:1px solid rgba(55,65,81,.75)}.services-modal-professional-photo{width:56px;height:56px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid var(--ct-brand-border)}.services-modal-professional-placeholder{width:56px;height:56px;border-radius:50%;background:rgba(55,65,81,.65);display:flex;align-items:center;justify-content:center;color:var(--ct-brand-text-secondary);flex-shrink:0;border:1px solid var(--ct-brand-border)}.services-modal-professional-text{min-width:0}.services-modal-professional-label{margin:0;font-size:var(--ct-font-size-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--ct-brand-text-secondary)}.services-modal-professional-name{margin:4px 0 0;font-size:var(--ct-font-size-md);font-weight:500;color:var(--ct-brand-text);line-height:1.25}.services-modal-list{list-style:none;margin:0;padding:0}.services-modal-item{display:flex;flex-direction:column;gap:4px;padding-bottom:var(--ct-space-3);margin-bottom:var(--ct-space-3);border-bottom:1px solid rgba(55,65,81,.75)}.services-modal-item:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.services-modal-item-name{font-weight:500;font-size:var(--ct-font-size-md);color:var(--ct-brand-text);line-height:1.25}.services-modal-item-meta{font-size:var(--ct-font-size-sm);color:var(--ct-brand-text-secondary);line-height:1.35}.services-modal-total{display:flex;align-items:center;gap:8px;margin-top:var(--ct-space-2);padding-top:var(--ct-space-4);border-top:1px solid rgba(55,65,81,.85);font-weight:500;font-size:var(--ct-font-size-sm);color:var(--ct-brand-text)}.services-modal-total-icon{flex-shrink:0;color:var(--ct-brand-text-secondary)}.ptr-indicator{display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;color:var(--ct-brand-primary);transition:height .12s ease}.ptr-icon{display:block}.ptr-icon--spin{animation:ptr-spin .75s linear infinite}@media (prefers-reduced-motion: reduce){.ptr-icon--spin{animation:none}}@keyframes ptr-spin{to{transform:rotate(360deg)}}:root{--color-primary: 59 130 246;--color-secondary: 99 102 241;--color-success: 34 197 94;--color-warning: 245 165 36;--color-error: 239 68 68;--color-surface: 255 255 255;--color-surface-dark: 17 24 39;--brand-primary: 245 165 36;--brand-secondary: 99 102 241;--brand-accent: 59 130 246;--brand-on-primary: 17 24 39;--brand-background: 17 24 39;--brand-surface: 31 41 55;--brand-text: 255 255 255;--brand-text-secondary: 209 213 219;--brand-border: 55 65 81;--brand-card-background: 31 41 55;--app-surface-elevated: #2d2d2d;--safe-area-inset-top: env(safe-area-inset-top, 0px);--safe-area-inset-bottom: env(safe-area-inset-bottom, 0px);--safe-area-inset-left: env(safe-area-inset-left, 0px);--safe-area-inset-right: env(safe-area-inset-right, 0px)}:root{--ct-brand-primary: rgb(var(--brand-primary));--ct-brand-on-primary: rgb(var(--brand-on-primary));--ct-brand-background: rgb(var(--brand-background));--ct-brand-surface: rgb(var(--brand-surface));--ct-brand-text: rgb(var(--brand-text));--ct-brand-text-secondary: rgb(var(--brand-text-secondary));--ct-brand-border: rgb(var(--brand-border));--ct-link-color: var(--ct-brand-primary);--ct-space-1: 4px;--ct-space-2: 8px;--ct-space-3: 12px;--ct-space-4: 16px;--ct-space-5: 20px;--ct-space-6: 24px;--ct-space-8: 32px;--ct-radius-sm: 8px;--ct-radius-md: 10px;--ct-radius-lg: 12px;--ct-radius-xl: 16px;--ct-radius-pill: 999px;--ct-font-size-xs: 12px;--ct-font-size-sm: 14px;--ct-font-size-md: 16px;--ct-font-size-lg: 18px;--ct-font-size-xl: 20px;--ct-font-size-2xl: 24px;--ct-line-tight: 1.2;--ct-line-normal: 1.4;--ct-line-relaxed: 1.55;--ct-card-shadow: 0 2px 10px rgba(0, 0, 0, .32);--ct-card-shadow-hover: 0 10px 20px rgba(0, 0, 0, .42);--ct-glow: radial-gradient( ellipse at center, rgba(245, 165, 36, .12) 0%, rgba(245, 165, 36, .05) 42%, rgba(245, 165, 36, 0) 78% );--ct-button-height: 42px;--ct-button-radius: 12px;--ct-card-radius: 22px;--ct-modal-radius: 28px;--ct-modal-halo-padding: 12px;--ct-modal-outer-radius: calc( var(--ct-modal-radius) + var(--ct-modal-halo-padding) );--ct-modal-halo-bg: rgba(100, 116, 139, .28);--ct-modal-halo-ring: rgba(255, 255, 255, .16);--ct-modal-elevation: 0 20px 56px rgba(0, 0, 0, .45);--ct-modal-backdrop-blur: 4px;--ion-color-warning: rgb(var(--brand-primary));--ion-color-warning-contrast: rgb(var(--brand-on-primary));--ion-color-warning-shade: #d97706;--ion-color-warning-tint: #fbbf24;--ion-color-success: rgb(var(--color-success));--ion-color-danger: rgb(var(--color-error));--ion-color-medium: #9ca3af;--ct-cta-height: 44px;--ct-cta-radius: var(--ct-button-radius);--ct-cta-gap: 8px;--ct-cta-pad-x: var(--ct-space-4);--ct-cta-pad-y: 6px;--ct-cta-font-size: var(--ct-font-size-md);--ct-cta-font-weight: 400;--ct-cta-transition: transform .2s ease, filter .2s ease, opacity .2s ease;--ct-cta-inset-highlight: rgba(255, 255, 255, .25);--ct-cta-primary-grad-top: color-mix( in srgb, rgb(var(--brand-primary)) 82%, white );--ct-cta-primary-grad-bottom: color-mix( in srgb, rgb(var(--brand-primary)) 68%, black );--ct-cta-primary-fg: rgb(var(--brand-on-primary));--ct-cta-primary-border: 1px solid #000000;--ct-cta-primary-outer-shadow: rgba(var(--brand-primary), .22);--ct-cta-primary-inset-low: rgba(194, 65, 12, .12);--ct-cta-primary-shadow-rgb: var(--brand-primary);--ct-cta-secondary-grad-top: rgb(55, 65, 81);--ct-cta-secondary-grad-bottom: rgb(var(--brand-surface));--ct-cta-secondary-fg: var(--ct-brand-primary);--ct-cta-secondary-border: 1px solid rgba(var(--brand-primary), .42);--ct-cta-secondary-outer-a: .2;--ct-cta-secondary-inset-low: rgba(0, 0, 0, .38);--ct-cta-danger-grad-top: #f87171;--ct-cta-danger-grad-bottom: #b91c1c;--ct-cta-danger-fg: #ffffff;--ct-cta-danger-shadow-rgb: var(--color-error)}[data-theme=dark]{--ct-dark-card-surface: rgb(45 55 71);--ct-dark-input-fill: rgb(30 38 52);--ct-dark-card-edge: rgba(148, 163, 184, .22);--ct-card-shadow: 0 2px 12px rgba(0, 0, 0, .45), 0 0 0 1px rgba(255, 255, 255, .05);--ct-card-shadow-hover: 0 12px 28px rgba(0, 0, 0, .52)}button.primary-cta,a.primary-cta,a.app-link-button.primary-cta,button.scheduling-cta,a.scheduling-cta,button.secondary-cta,a.secondary-cta,button.danger-cta{display:inline-flex;align-items:center;justify-content:center;gap:var(--ct-cta-gap);min-height:var(--ct-cta-height);padding:var(--ct-cta-pad-y) var(--ct-cta-pad-x);border-radius:var(--ct-cta-radius);font-size:var(--ct-cta-font-size);font-weight:var(--ct-cta-font-weight);line-height:1.2;cursor:pointer;font-family:inherit;text-decoration:none;box-sizing:border-box;-webkit-tap-highlight-color:transparent;transition:var(--ct-cta-transition)}button.primary-cta,a.primary-cta,a.app-link-button.primary-cta,button.scheduling-cta,a.scheduling-cta{border:var(--ct-cta-primary-border);color:var(--ct-cta-primary-fg);background:linear-gradient(to bottom,var(--ct-cta-primary-grad-top),var(--ct-cta-primary-grad-bottom));box-shadow:0 2px 8px 0 var(--ct-cta-primary-outer-shadow),inset 0 1.5px rgba(255,255,255,.14),inset 0 -2px 8px 0 var(--ct-cta-primary-inset-low)}a.scheduling-cta{text-align:center}button.secondary-cta,a.secondary-cta{color:var(--ct-cta-secondary-fg);background:linear-gradient(to bottom,var(--ct-cta-secondary-grad-top),var(--ct-cta-secondary-grad-bottom));border:var(--ct-cta-secondary-border);box-shadow:0 2px 8px rgba(var(--brand-primary),var(--ct-cta-secondary-outer-a)),inset 0 1.5px rgba(255,255,255,.14),inset 0 -2px 8px 0 var(--ct-cta-secondary-inset-low)}button.danger-cta{border:none;color:var(--ct-cta-danger-fg);background:linear-gradient(to bottom,var(--ct-cta-danger-grad-top),var(--ct-cta-danger-grad-bottom));box-shadow:0 2px 8px rgba(var(--ct-cta-danger-shadow-rgb),.38),inset 0 1.5px 0 0 var(--ct-cta-inset-highlight),inset 0 -2px 8px rgba(var(--ct-cta-danger-shadow-rgb),.48)}button.primary-cta:disabled,button.scheduling-cta:disabled,button.secondary-cta:disabled,button.danger-cta:disabled{opacity:.52;cursor:not-allowed}button.primary-cta:not(:disabled):active,a.primary-cta:active,a.app-link-button.primary-cta:active,button.scheduling-cta:not(:disabled):active,a.scheduling-cta:active,button.secondary-cta:not(:disabled):active,a.secondary-cta:active,button.danger-cta:not(:disabled):active{transform:scale(.98);filter:brightness(.97)}button.primary-cta svg,a.primary-cta svg,a.app-link-button.primary-cta svg,button.scheduling-cta svg,a.scheduling-cta svg,button.danger-cta svg{flex-shrink:0}button.scheduling-cta svg,a.scheduling-cta svg,button.primary-cta svg,a.primary-cta svg,a.app-link-button.primary-cta svg{color:var(--ct-cta-primary-fg)}button.danger-cta svg{color:var(--ct-cta-danger-fg)}button.secondary-cta svg,a.secondary-cta svg{flex-shrink:0;color:var(--ct-cta-secondary-fg)}button.scheduling-cta--compact{min-height:40px;padding:4px var(--ct-space-3);font-size:var(--ct-font-size-sm);gap:6px}button.scheduling-cta--compact svg{width:16px;height:16px}button.primary-cta.app-btn-block,a.primary-cta.app-btn-block,a.app-link-button.primary-cta.app-btn-block,button.scheduling-cta.app-btn-block,a.scheduling-cta.app-btn-block,button.secondary-cta.app-btn-block,a.secondary-cta.app-btn-block,button.danger-cta.app-btn-block{display:inline-flex;align-items:center;justify-content:center;gap:var(--ct-cta-gap);width:100%;box-sizing:border-box}a.app-link-button.app-btn-block{width:100%}button.app-btn-block,.app-btn-block{width:100%;display:block;box-sizing:border-box}[data-theme=light]{--ct-cta-secondary-grad-top: #f8fafc;--ct-cta-secondary-grad-bottom: #e2e8f0;--ct-cta-secondary-fg: #c2410c;--ct-cta-secondary-border: 1px solid rgba(249, 115, 22, .45);--ct-cta-secondary-outer-a: .22;--ct-cta-secondary-inset-low: rgba(249, 115, 22, .12);--ct-cta-primary-border: 1px solid #ffffff;--ct-cta-primary-outer-shadow: rgba(var(--brand-primary), .35);--ct-cta-primary-inset-low: rgba(194, 65, 12, .12)}button.forgot-password-link{background:transparent;border:none;color:var(--ct-brand-primary);font-weight:500;cursor:pointer;width:100%;padding:10px}.profile-compact-field span{font-size:10px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;line-height:1.1;color:var(--ct-brand-text-secondary)}.profile-compact-field:focus-within{outline:none;border-color:rgba(245,165,36,.55);box-shadow:0 0 0 4px rgba(245,165,36,.14)}html{height:100%;background:rgb(var(--brand-background))}body{margin:0;height:100%;min-height:100%;min-height:-webkit-fill-available;background:rgb(var(--brand-background));color:rgb(var(--brand-text))}#root{height:100%;min-height:var(--app-visual-vh, 100dvh);display:flex;flex-direction:column}body,button,input,textarea,select{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-feature-settings:"rlig" 1,"calt" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{letter-spacing:-.02em;margin-top:0}p{line-height:var(--ct-line-relaxed)}a,.ct-link{color:var(--ct-link-color)}.flex-center{display:flex;align-items:center;justify-content:center}.text-brand-text{color:rgb(var(--brand-text))}.text-brand-text-secondary{color:rgb(var(--brand-text-secondary))}.bg-brand-background{background-color:rgb(var(--brand-background))}.bg-brand-surface{background-color:rgb(var(--brand-surface))}.bg-brand-card{background-color:rgb(var(--brand-card-background))}.border-brand-border{border-color:rgb(var(--brand-border))}.safe-area-top{padding-top:var(--safe-area-inset-top)}.safe-area-bottom{padding-bottom:var(--safe-area-inset-bottom)}.safe-area-x{padding-left:var(--safe-area-inset-left);padding-right:var(--safe-area-inset-right)}.safe-area-y{padding-top:var(--safe-area-inset-top);padding-bottom:var(--safe-area-inset-bottom)}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{width:0;height:0;display:none}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in .3s ease-out}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.ion-padding{padding:16px;box-sizing:border-box}.ion-margin-top{margin-top:16px}.ion-margin-bottom{margin-bottom:16px}.ion-margin-horizontal{margin-left:16px;margin-right:16px}.ion-padding-horizontal{padding-left:16px;padding-right:16px;box-sizing:border-box}.ion-text-center{text-align:center}.ion-no-margin{margin:0}.skeleton-line{box-sizing:border-box;max-width:100%}.skeleton-line,.skeleton-avatar,.skeleton-pill,.skeleton-block,.skeleton-square{border-radius:6px;background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(255,255,255,.16),rgba(255,255,255,.08));background-size:200% 100%}@media (prefers-reduced-motion: no-preference){.skeleton-line,.skeleton-avatar,.skeleton-pill,.skeleton-block,.skeleton-square{animation:skeleton-shimmer 1.2s ease-in-out infinite}}@media (prefers-reduced-motion: reduce){.skeleton-line,.skeleton-avatar,.skeleton-pill,.skeleton-block,.skeleton-square{animation:none;background:rgba(255,255,255,.12)}}.skeleton-line--lg{width:30%;height:18px;margin-bottom:10px}.skeleton-line--md{width:80%;height:14px;margin-bottom:8px}.skeleton-line--sm{width:60%;height:14px}.skeleton-avatar{border-radius:50%;flex-shrink:0}.skeleton-avatar--professional{width:56px;height:56px}.skeleton-avatar--large{width:72px;height:72px}.skeleton-square--tenant-logo{width:48px;height:48px;border-radius:10px;flex-shrink:0}.skeleton-square--summary-logo{width:52px;height:52px;border-radius:12px;flex-shrink:0}.skeleton-square--establishment-logo{width:56px;height:56px;border-radius:12px;flex-shrink:0}.skeleton-pill{border-radius:999px;height:36px;min-width:48px}.skeleton-pill--slot{height:40px;min-width:64px;border-radius:10px}.skeleton-block{display:block;width:100%;height:48px;border-radius:10px}.skeleton-block--sm{height:40px}.skeleton-block--cta{height:48px;border-radius:12px}.skeleton-stat-icon{width:40px;height:40px;border-radius:10px;flex-shrink:0;background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(255,255,255,.16),rgba(255,255,255,.08));background-size:200% 100%}@media (prefers-reduced-motion: no-preference){.skeleton-stat-icon{animation:skeleton-shimmer 1.2s ease-in-out infinite}}@media (prefers-reduced-motion: reduce){.skeleton-stat-icon{animation:none;background:rgba(255,255,255,.12)}}.skeleton-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.auth-form-skeleton-wrap{position:relative}.auth-form-skeleton-wrap--busy .auth-form-skeleton-content{opacity:0;pointer-events:none}.auth-form-skeleton-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;border-radius:inherit;overflow:hidden}.app-shell-skeleton{min-height:100vh;display:flex;flex-direction:column;background:var(--ion-background-color, #0f172a)}.app-shell-skeleton__toolbar{display:flex;align-items:center;gap:12px;padding:10px 16px;min-height:52px;border-bottom:1px solid rgba(255,255,255,.06)}.app-shell-skeleton__body{flex:1;padding:24px 16px;display:flex;flex-direction:column;align-items:stretch;gap:16px;max-width:480px;margin:0 auto;width:100%}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.app-card{position:relative;z-index:0;background:var(--ct-brand-surface);border:1px solid var(--ct-brand-border);border-radius:var(--ct-card-radius);box-shadow:var(--ct-card-shadow);box-sizing:border-box;max-width:100%}.app-card:before{content:"";display:none}.app-card--hoverable{transition:box-shadow .2s ease,transform .2s ease}.app-card--hoverable:hover{box-shadow:var(--ct-card-shadow-hover);transform:translateY(-1px)}[data-theme=dark] .app-card{background:var(--ct-dark-card-surface);border:1px solid var(--ct-dark-card-edge)}.dark-page{--background: var(--ct-brand-background);color:var(--ct-brand-text)}.dark-toolbar{--background: var(--ct-brand-background);--color: var(--ct-brand-text);--border-color: var(--ct-brand-border);border-bottom:1px solid var(--ct-brand-border)}.dark-section{padding:var(--ct-space-3);margin-bottom:var(--ct-space-3)}.dark-section h2,.dark-section h3{color:var(--ct-brand-text);margin-top:0}.dark-muted{color:var(--ct-brand-text-secondary)}.dark-section a{color:var(--ct-brand-primary);text-decoration:underline}.forgot-password-link{--color: var(--ct-brand-primary);color:var(--ct-brand-primary);font-weight:500}.session-loading-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ct-space-4);padding:var(--ct-space-5);box-sizing:border-box}.session-loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.15);border-top-color:var(--ion-color-warning);border-radius:50%;animation:session-loading-spin .75s linear infinite}@keyframes session-loading-spin{to{transform:rotate(360deg)}}.session-loading-text{margin:0;font-size:var(--ct-font-size-sm);color:var(--ct-brand-text-secondary)}.appointments-infinite-sentinel{min-height:1px;width:100%}.appointments-infinite-footer{display:flex;justify-content:center;padding:var(--ct-space-3) 0 var(--ct-space-4)}.appointments-infinite-footer .session-loading-spinner{width:28px;height:28px;border-width:2px}.home-actions{display:flex;flex-direction:column;gap:var(--ct-space-3);margin-top:var(--ct-space-1);margin-bottom:var(--ct-space-4)}.home-layout{display:flex;flex-direction:column;gap:var(--ct-space-4);padding-top:calc(var(--ct-space-2) - 2px);min-width:0;max-width:100%;box-sizing:border-box}.app-page-body.home-page-main,.app-page-body.profile-page-main,.app-page-body.booking-page-main{display:flex;flex-direction:column;min-height:0;min-width:0;width:100%;max-width:100%;overflow:hidden}.home-page-scroll,.profile-page-scroll,.booking-page-scroll{flex:1 1 auto;min-height:0;min-width:0;width:100%;max-width:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.home-page-scroll{overflow-x:hidden}.booking-page-scroll{overflow-anchor:none}.home-separator{height:1px;width:100%;background:linear-gradient(90deg,transparent 0%,rgba(209,213,219,.4) 20%,rgba(209,213,219,.7) 50%,rgba(209,213,219,.4) 80%,transparent 100%);margin:2px 0 -6px}.home-hero-card{background:var(--ct-brand-primary);color:var(--ct-brand-on-primary);border:none;padding:var(--ct-space-3) var(--ct-space-3) var(--ct-space-4);text-align:center}.home-hero-card:before{content:"";position:absolute;top:-14px;right:-12px;bottom:-14px;left:-12px;border-radius:calc(var(--ct-card-radius) + 14px);background:radial-gradient(ellipse at center,rgba(37,99,235,.28),rgba(37,99,235,.16) 38%,rgba(37,99,235,0) 78%);filter:blur(10px);z-index:-1;pointer-events:none}.home-hero-brand{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:8px}.home-hero-brand h1{margin:0;font-size:34px;line-height:1.05;color:var(--ct-brand-on-primary);font-weight:500}.home-hero-icon-wrap{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}.home-hero-icon{width:22px;height:22px;transform:rotate(-45deg)}.home-hero-card p{margin:0 auto 10px;max-width:560px;color:var(--ct-brand-on-primary);font-size:14px;line-height:1.35}.home-hero-cta{--border-color: var(--ct-brand-on-primary);--color: var(--ct-brand-on-primary);--border-style: solid;--border-width: 2px;--border-radius: var(--ct-button-radius);min-height:var(--ct-button-height);font-size:var(--ct-font-size-sm);font-weight:500;max-width:220px;margin:0 auto}ion-alert.ct-confirm-alert{--background: linear-gradient( 160deg, rgba(17, 24, 39, .98) 0%, rgba(2, 6, 23, .98) 100% );--backdrop-opacity: .55;--max-width: min(92vw, 440px);--width: min(92vw, 440px);--color: var(--ct-brand-text);--border-radius: var(--ct-modal-radius);--box-shadow: var(--ct-modal-elevation);--button-color: var(--ct-brand-primary)}ion-alert.ct-confirm-alert::part(message){color:var(--ct-brand-text-secondary)}ion-alert.ct-confirm-alert::part(button){text-transform:none;font-weight:500;letter-spacing:0}ion-alert.ct-confirm-alert .ct-confirm-alert-cancel{color:var(--ct-brand-text-secondary)}ion-alert.ct-confirm-alert .ct-confirm-alert-danger{color:#f87171}.home-appointment-card{padding:16px}.home-highlight-label{display:block;margin:2px 0 -6px 2px;color:var(--ct-brand-text);font-size:15px;letter-spacing:.02em;text-transform:capitalize;font-weight:500}.home-appointment-card h2{margin:0 0 8px;color:var(--ct-brand-text);font-size:22px;line-height:1.15}.home-appointment-card p{margin:0 0 6px;color:var(--ct-brand-text-secondary);font-size:15px;line-height:1.4}.home-features-section{background:transparent}.home-section-title{margin:var(--ct-space-3) 0 var(--ct-space-3);font-size:clamp(18px,5vw,24px);line-height:1.2;text-align:center;color:var(--ct-brand-text);max-width:100%;overflow-wrap:break-word;white-space:normal}.home-features-grid{display:grid;grid-template-columns:1fr;gap:var(--ct-space-3)}.home-feature-card{padding:var(--ct-space-6) var(--ct-space-4);text-align:center}.home-feature-icon-wrap{width:48px;height:48px;border-radius:999px;margin:0 auto 14px;background:var(--ct-brand-primary);color:var(--ct-brand-on-primary);display:flex;align-items:center;justify-content:center}.home-feature-icon{width:22px;height:22px}.home-feature-card h3{margin:0 0 9px;color:var(--ct-brand-text);font-size:18px}.home-feature-card p{margin:0;color:var(--ct-brand-text-secondary);font-size:14px;line-height:1.55}.home-stats-section{background:transparent;min-width:0;max-width:100%}.home-stats-section h4{margin:0 0 var(--ct-space-3);font-size:var(--ct-font-size-xs);font-weight:600;line-height:1.25;letter-spacing:.05em;text-transform:uppercase;color:#94a3b8;text-align:center}.home-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ct-space-3)}.home-stats-grid>*{min-width:0}.home-stat-card{padding:var(--ct-space-4)}.home-stat-card-button{-webkit-appearance:none;appearance:none;width:100%;text-align:left;cursor:pointer}.home-stat-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--ct-space-2)}.home-stat-card-head .home-feature-icon-wrap{margin:0}.home-stat-card-head strong{font-size:1.3rem;font-weight:300;line-height:var(--ct-line-tight);letter-spacing:-.02em;color:var(--ct-brand-text)}.home-stat-card h3{margin:0 0 6px;color:var(--ct-brand-text);font-size:var(--ct-font-size-md)}.home-stat-card p{margin:0;color:var(--ct-brand-text-secondary);font-size:var(--ct-font-size-sm);line-height:var(--ct-line-normal)}.home-stats-drawer-content{padding-top:var(--ct-space-2);padding-bottom:calc(var(--ct-space-8) + env(safe-area-inset-bottom))}.home-stats-drawer-header{margin-bottom:var(--ct-space-3)}.home-stats-drawer-header h2{margin:0 0 var(--ct-space-1);color:var(--ct-brand-text);font-size:var(--ct-font-size-xl)}.home-stats-drawer-header p{margin:0;color:var(--ct-brand-text-secondary);font-size:var(--ct-font-size-sm)}.home-stats-drawer-controls{display:flex;flex-direction:column;gap:var(--ct-space-3);margin-bottom:var(--ct-space-3);padding-bottom:var(--ct-space-2);border-bottom:1px solid var(--ct-brand-border)}.home-stats-drawer-filters{display:flex;flex-wrap:wrap;gap:var(--ct-space-2)}.home-stats-drawer-chip{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:40px;padding:8px 14px;font-size:var(--ct-font-size-sm);line-height:1.25;letter-spacing:.01em;text-align:center;cursor:pointer;border-radius:var(--ct-radius-md);border:1px solid var(--ct-brand-border);background:var(--ct-brand-surface);color:var(--ct-brand-text);font-family:inherit;font-weight:500;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.home-stats-drawer-chip--active{background:var(--ct-brand-primary);color:var(--ct-brand-on-primary);border-color:var(--ct-brand-primary)}.home-stats-drawer-sort{--background: transparent}.home-stats-drawer-sort ion-segment-button{--indicator-color: var(--ct-brand-primary);min-height:40px;font-size:var(--ct-font-size-sm)}.home-stats-drawer-full-cta{margin-bottom:var(--ct-space-3)}@media (max-width: 520px){.home-hero-card{padding:18px 14px 20px}.home-hero-brand h1{font-size:28px}.home-hero-icon-wrap{width:26px;height:26px}.home-hero-icon{width:22px;height:22px}.home-hero-card p{font-size:14px}.home-hero-cta{min-height:46px;font-size:16px;max-width:240px}.home-section-title{font-size:22px}.home-stats-grid{grid-template-columns:1fr}}.next-appointment-card{margin-top:10px;margin-bottom:12px;border:1px solid var(--ct-brand-border);background:var(--ct-brand-surface);border-radius:var(--ct-card-radius);box-shadow:var(--ct-card-shadow);padding:var(--ct-space-3)}.next-appointment-label{display:inline-block;font-size:11px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--ct-brand-primary);margin-bottom:4px}.next-appointment-card h3{margin:0;font-size:22px;color:var(--ct-brand-text)}.next-appointment-card p{margin:6px 0 10px;color:var(--ct-brand-text-secondary);font-size:15px}.next-appointment-edit-btn{--background: transparent;--color: var(--ct-brand-primary);--border-color: var(--ct-brand-primary);--border-style: solid;--border-width: 1px;--border-radius: var(--ct-button-radius);min-height:28px;font-size:var(--ct-font-size-xs)}.dark-field{--background: var(--ct-brand-surface) !important;--border-color: var(--ct-brand-border) !important;--border-radius: var(--ct-button-radius);--color: var(--ct-brand-text);margin-bottom:var(--ct-space-2);background:var(--ct-brand-surface)!important;border:1px solid var(--ct-brand-border)!important;box-shadow:var(--ct-card-shadow)!important}.dark-field ion-label{color:var(--ct-brand-text-secondary)!important}.dark-field ion-input{--color: var(--ct-brand-text) !important;--background: transparent !important}.dark-field::part(native){background:transparent!important}.dark-field input{background:transparent!important}.home-layout .dark-field,.auth-page .dark-field,.profile-page .dark-field{background:var(--ct-brand-surface)!important;border:1px solid var(--ct-brand-border)!important}[data-theme=dark] .dark-field{--background: var(--ct-dark-input-fill) !important;--border-color: rgba(148, 163, 184, .28) !important;background:var(--ct-dark-input-fill)!important;border:1px solid rgba(148,163,184,.28)!important}[data-theme=dark] .home-layout .dark-field,[data-theme=dark] .auth-page .dark-field,[data-theme=dark] .profile-page .dark-field{background:var(--ct-dark-input-fill)!important;border:1px solid rgba(148,163,184,.28)!important}.avatar-upload-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}.profile-avatar{width:88px;height:88px;border:2px solid var(--ct-brand-border)}.profile-photo-row{align-items:center;gap:12px;margin-bottom:0}.profile-avatar-picker{position:relative;display:inline-flex;cursor:pointer}.profile-avatar-large{width:76px;height:76px;border:0;background:var(--ct-brand-border);border-radius:50%;overflow:hidden}.profile-avatar-img{width:100%;height:100%;object-fit:cover;display:block}.profile-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:28px}.profile-avatar-overlay{position:absolute;left:50%;bottom:-10px;transform:translate(-50%);border-radius:999px;width:24px;height:24px;background:rgba(245,165,36,.95);color:var(--ct-brand-on-primary);display:flex;align-items:center;justify-content:center;border:1px solid rgba(17,24,39,.6)}.profile-avatar-overlay svg{width:12px;height:12px}.hidden-file-input{display:none}.profile-page .dark-section{padding:var(--ct-space-3);background:var(--ct-brand-surface)!important;border:1px solid var(--ct-brand-border)!important;border-radius:var(--ct-card-radius);box-shadow:var(--ct-card-shadow)!important}[data-theme=dark] .profile-page .dark-section{background:var(--ct-dark-card-surface)!important;border:1px solid var(--ct-dark-card-edge)!important}.profile-page .dark-section:before{content:none!important;display:none!important}.auth-page .auth-card{background:var(--ct-brand-surface)!important;border:1px solid var(--ct-brand-border)!important;border-radius:var(--ct-card-radius);box-shadow:var(--ct-card-shadow)!important}[data-theme=dark] .auth-page .auth-card{background:var(--ct-dark-card-surface)!important;border:1px solid var(--ct-dark-card-edge)!important}.auth-page .auth-card:before{content:none!important;display:none!important}.auth-page .auth-card.login-brand-card{background:var(--ct-modal-halo-bg)!important;border:1px solid var(--ct-modal-halo-ring)!important;border-radius:var(--ct-modal-outer-radius)!important;box-shadow:var(--ct-modal-elevation)!important;padding:var(--ct-modal-halo-padding)!important;text-align:center}.auth-page .auth-card.login-brand-card .login-brand-card__surface{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ct-space-3);padding:var(--ct-space-5) var(--ct-space-4);margin:0;text-align:center;box-sizing:border-box;width:100%;background:var(--ct-brand-primary);border-radius:var(--ct-modal-radius);border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px rgba(255,255,255,.12),0 4px 14px rgba(0,0,0,.12)}.auth-page .home-section-title{margin-top:calc(var(--ct-space-3) + 40px)}.login-brand-wrap{display:inline-flex;align-items:center;justify-content:center;gap:10px;margin:0}.login-brand-icon{width:34px;height:34px;flex-shrink:0;color:var(--ct-brand-on-primary);transform:rotate(-45deg)}.login-brand-card h2{margin:0;font-size:clamp(34px,8vw,48px);line-height:1.05;font-weight:500;color:var(--ct-brand-on-primary)}.login-brand-lead{margin:0;max-width:22rem;font-size:clamp(14px,3.8vw,18px);line-height:1.4;font-weight:500;color:rgb(var(--brand-on-primary));opacity:.92}.profile-compact-field{display:flex;flex-direction:column;gap:6px;background:var(--ct-brand-surface);border:1px solid var(--ct-brand-border);border-radius:var(--ct-button-radius);padding:10px 12px;margin-bottom:8px}.profile-compact-field input{background:transparent;border:none;color:var(--ct-brand-text);font-size:16px;line-height:1.2;padding:0;outline:none}[data-theme=dark] .profile-compact-field{background:var(--ct-dark-input-fill);border-color:rgba(148,163,184,.28)}[data-theme=dark] .profile-compact-field:focus-within{border-color:rgba(245,165,36,.55);box-shadow:0 0 0 4px rgba(245,165,36,.12)}.auth-page .auth-tenant-search-field input{font-size:var(--ct-font-size-sm);line-height:1.4}.auth-page .auth-tenant-search-field input::placeholder{color:var(--ct-brand-text-secondary);opacity:.82;font-weight:400}.auth-page .auth-login-browse-establishments{margin-bottom:var(--ct-space-3)}.auth-page .auth-tenant-search-status{margin:var(--ct-space-2) 0 0;font-size:var(--ct-font-size-sm)}.auth-page .auth-tenant-search-results{display:flex;flex-direction:column;gap:var(--ct-space-3);margin-top:var(--ct-space-3);width:100%;box-sizing:border-box}.auth-page .auth-tenant-result-card{margin:0;padding:var(--ct-space-4);box-sizing:border-box;border-radius:var(--ct-card-radius);background:var(--ct-brand-surface);border:1px solid var(--ct-brand-border);box-shadow:var(--ct-card-shadow);display:flex;flex-direction:column;gap:var(--ct-space-3)}[data-theme=dark] .auth-page .auth-tenant-result-card{background:var(--ct-dark-card-surface);border:1px solid var(--ct-dark-card-edge)}.auth-page .auth-tenant-result-card__row{display:flex;flex-direction:row;align-items:center;gap:var(--ct-space-3);min-width:0}.auth-page .auth-tenant-result-card__logo{width:44px;height:44px;border-radius:999px;object-fit:cover;flex-shrink:0;border:1px solid var(--ct-brand-border);background:var(--ct-brand-background)}.auth-page .auth-tenant-result-card__logo--fallback{display:inline-flex;align-items:center;justify-content:center;color:var(--ct-brand-primary);background:rgba(var(--brand-primary),.14)}.auth-page .auth-tenant-result-card__body{flex:1;min-width:0}.auth-page .auth-tenant-result-card__name{margin:0 0 2px;font-size:var(--ct-font-size-md);font-weight:500;line-height:1.3;color:var(--ct-brand-text)}.auth-page .auth-tenant-result-card__slug{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--ct-font-size-sm);line-height:1.35;font-weight:500;color:var(--ct-brand-text-secondary);word-break:break-word}.auth-page .auth-tenant-result-card__slug-icon{flex-shrink:0;color:var(--ct-brand-text-secondary);opacity:.85}.auth-page .auth-tenant-phone-link{color:inherit;font-weight:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}.auth-page .auth-tenant-phone-link:hover{color:var(--ct-brand-primary);text-decoration:underline}.auth-page .auth-tenant-result-card__cta{margin:0;align-self:stretch}.auth-page .tenant-selection-title{margin:0 0 var(--ct-space-2);font-size:var(--ct-font-size-lg);line-height:1.25;font-weight:500;color:var(--ct-brand-text)}.auth-page .tenant-selection-lead{margin:0;font-size:var(--ct-font-size-sm);line-height:1.45;max-width:26rem}.auth-page .tenant-directory-list{display:flex;flex-direction:column;gap:var(--ct-space-3);width:100%;box-sizing:border-box;padding:0 var(--ct-space-1)}.auth-page .tenant-directory-card{margin:0;padding:var(--ct-space-4);box-sizing:border-box;border-radius:var(--ct-card-radius);background:var(--ct-brand-surface);border:1px solid var(--ct-brand-border);box-shadow:var(--ct-card-shadow);display:flex;flex-direction:column;gap:0}.auth-page .tenant-directory-card__actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--ct-space-2);margin-top:var(--ct-space-3);align-items:stretch}.auth-page .tenant-directory-card__actions .tenant-directory-card__cta{flex:1 1 calc(50% - var(--ct-space-2) / 2);min-width:min(100%,132px);min-height:42px;padding-top:10px;padding-bottom:10px;font-size:var(--ct-font-size-sm);font-weight:500;box-sizing:border-box}@media (max-width: 360px){.auth-page .tenant-directory-card__actions{flex-direction:column}.auth-page .tenant-directory-card__actions .tenant-directory-card__cta{flex:1 1 auto;min-width:0;width:100%}}.auth-page .tenant-directory-card--empty{text-align:center;padding:var(--ct-space-5) var(--ct-space-4)}.auth-page .tenant-directory-card__empty-title{margin:0 0 var(--ct-space-2);font-size:var(--ct-font-size-md);font-weight:500;line-height:1.3;color:var(--ct-brand-text)}.auth-page .tenant-directory-card__empty-hint{margin:0;font-size:var(--ct-font-size-sm);line-height:1.4;color:var(--ct-brand-text-secondary)}.auth-tenant-selected-card{padding:var(--ct-space-3);border:1px solid rgba(245,165,36,.35);background:linear-gradient(135deg,rgba(31,41,55,.95),rgba(17,24,39,.95));margin-bottom:var(--ct-space-2)}.auth-tenant-selected-label{margin:0 0 8px;color:var(--ct-brand-text-secondary);font-size:12px;letter-spacing:.03em;text-transform:uppercase;font-weight:500}.auth-tenant-selected-content{display:flex;align-items:center;gap:10px}.auth-tenant-selected-logo{width:46px;height:46px;border-radius:999px;overflow:hidden;flex-shrink:0;border:1px solid rgba(245,165,36,.45)}.auth-tenant-selected-logo--fallback{display:inline-flex;align-items:center;justify-content:center;color:var(--ct-brand-primary);background:rgba(245,165,36,.12)}.auth-tenant-selected-text h3{margin:0;color:var(--ct-brand-text);font-size:17px;line-height:1.25}.auth-tenant-selected-text p{margin:2px 0 0;color:var(--ct-brand-text-secondary);font-size:12px}.profile-password-block{margin-top:var(--ct-space-3)}.profile-password-block h3{margin:0 0 var(--ct-space-1);color:var(--ct-brand-text);font-size:18px;font-weight:500}.profile-password-block p{margin:0 0 var(--ct-space-3);color:var(--ct-brand-text-secondary);font-size:14px}.profile-page .profile-action-button{min-height:var(--ct-cta-height)}.profile-page .profile-logout-button{margin-top:14px}[data-theme=dark] .profile-page .profile-logout-button.danger-cta{border:1px solid rgba(239,68,68,.4);color:#fecaca;background:linear-gradient(to bottom,#374151,rgb(var(--brand-surface)));box-shadow:0 2px 8px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.06),inset 0 -2px 8px rgba(0,0,0,.35)}[data-theme=dark] .profile-page .profile-logout-button.danger-cta svg{color:#fecaca}.profile-page .establishment-public-card{margin-bottom:12px}.profile-appearance-row{display:flex;flex-direction:column;gap:var(--ct-space-2);margin-bottom:var(--ct-space-2)}.profile-appearance-label{font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--ct-brand-text-secondary)}.profile-theme-options{display:flex;gap:var(--ct-space-2)}.profile-theme-option{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 var(--ct-space-3);border-radius:var(--ct-button-radius);border:1px solid var(--ct-brand-border);background:var(--ct-brand-surface);color:var(--ct-brand-text-secondary);font-family:inherit;font-weight:500;font-size:var(--ct-font-size-sm);cursor:pointer;-webkit-tap-highlight-color:transparent}.profile-theme-option--active{border-color:var(--ct-brand-primary);color:var(--ct-brand-primary);background:rgba(245,165,36,.14)}.establishment-public-header{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px}.establishment-public-icon{flex-shrink:0;margin-top:2px;color:var(--ct-brand-primary)}.establishment-public-title{margin:0;font-size:17px;font-weight:500;color:var(--ct-brand-text);line-height:1.25}.establishment-public-subtitle{margin:4px 0 0;font-size:14px;color:var(--ct-brand-text-secondary);line-height:1.3}.establishment-public-hint{margin:0 0 12px;font-size:13px;line-height:1.4;color:var(--ct-brand-text-secondary)}.establishment-public-slug-row{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.establishment-public-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;font-weight:500;color:var(--ct-brand-text-secondary)}.establishment-public-slug{display:block;font-size:14px;padding:8px 10px;border-radius:var(--ct-button-radius);background:rgba(17,24,39,.45);border:1px solid var(--ct-brand-border);color:var(--ct-brand-primary);word-break:break-all}.establishment-public-url{margin:0 0 12px;font-size:12px;line-height:1.45;color:var(--ct-brand-text);word-break:break-all}.establishment-public-url--muted{color:var(--ct-brand-text-secondary)}.establishment-public-url code{font-size:11px;color:var(--ct-brand-primary)}.establishment-public-actions{display:flex;flex-direction:column;gap:8px}.establishment-public-action{min-height:var(--ct-button-height)}@media (max-width: 520px){.profile-photo-row{justify-content:center}}.app-tabbar{--background: var(--ct-brand-background);--border: 1px solid var(--ct-brand-border);border-top:1px solid var(--ct-brand-border);padding-bottom:env(safe-area-inset-bottom)}.app-tab-button{--color: var(--ct-brand-text-secondary);--color-selected: var(--ct-brand-primary);--ripple-color: rgba(245, 165, 36, .25)}.app-tab-icon{width:24px;height:24px}.app-tab-button ion-label{font-size:12px;font-weight:500}.app-header-logo{display:inline-flex;align-items:center;gap:10px;padding-left:4px;max-width:100%;min-width:0}.app-header-logo-brand{display:inline-flex;align-items:center;gap:10px;margin:0;padding:0;border:none;background:none;cursor:pointer;font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}.app-header-logo-brand:focus-visible{outline:2px solid var(--ct-brand-primary);outline-offset:2px;border-radius:10px}.app-header-logo-brand span:last-child{color:var(--ct-brand-text);font-size:18px;font-weight:500;letter-spacing:.01em;line-height:1.2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-menu-button{--color: var(--ct-brand-text);margin-inline-start:0;margin-inline-end:2px}.app-header-logo-icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.app-header-logo-icon svg{color:var(--ct-brand-text);transform:rotate(-45deg)}.app-side-menu{--width: 248px}.app-side-menu ion-content{--background: var(--ct-brand-background)}.app-side-menu-list{background:transparent;padding-top:18px}.app-side-menu-item{--background: var(--ct-brand-surface);--color: var(--ct-brand-text);--border-radius: var(--ct-radius-md);margin:0 10px 10px}.app-side-menu-item-icon{color:var(--ct-brand-primary);margin-right:10px}.lucide-inline-icon{width:14px;height:14px;margin-right:6px;vertical-align:-2px}.app-root{flex:1 1 auto;min-height:0;max-height:var(--app-visual-vh, 100dvh);overflow:hidden;display:flex;flex-direction:column;box-sizing:border-box;background:var(--ct-brand-background)}.app-root>.app-shell-page{flex:1 1 auto;min-height:0}.app-root>.app-tab-shell{flex:1 1 auto;min-height:0;width:100%;align-self:stretch}.app-shell-page{width:100%;max-width:100%;min-width:0;box-sizing:border-box;min-height:var(--app-visual-vh, 100dvh);max-height:var(--app-visual-vh, 100dvh);display:flex;flex-direction:column;overflow:hidden;background:var(--ct-brand-background)}.app-page-body{flex:1;min-height:0;min-width:0;width:100%;max-width:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.app-toolbar{z-index:120;flex-shrink:0;align-self:stretch;padding-top:env(safe-area-inset-top,0px);border-bottom:1px solid var(--ct-brand-border);background:var(--ct-brand-background);position:relative}.app-toolbar__row{display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:0 max(8px,env(safe-area-inset-right,0px)) 0 max(8px,env(safe-area-inset-left,0px));position:relative;gap:0}.app-toolbar__row--has-title{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;column-gap:10px}.app-toolbar__row--has-title .app-toolbar__start{grid-column:1;justify-self:start;overflow:hidden}.app-toolbar__row--has-title .app-toolbar__title{grid-column:2;justify-self:center;flex:unset;max-width:min(100%,16rem);min-width:0;pointer-events:auto}.app-toolbar__row--has-title .app-toolbar__title:has([data-toolbar-title-icons]){grid-column:3;justify-self:end;max-width:none}.app-toolbar__row--has-title .app-toolbar__end{grid-column:3;justify-self:end}.app-toolbar__start{flex:0 0 auto;min-width:0}.app-toolbar__start-cluster{display:flex;align-items:center;gap:10px;min-width:0}.app-toolbar__title{flex:1;text-align:center;font-size:1rem;font-weight:500;line-height:1.25;color:var(--ct-brand-text);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-toolbar__title:has([data-toolbar-title-icons]){display:flex;align-items:center;justify-content:flex-end;overflow:visible;white-space:normal;text-overflow:clip}.app-toolbar__end{flex:0 0 auto;min-width:0}.app-page-body.auth-page{display:flex;flex-direction:column;min-height:0;overflow:hidden}.auth-page-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.app-padding{padding:16px;box-sizing:border-box}.app-text-danger{color:var(--ion-color-danger);margin:8px 0}.app-text-success{color:var(--ion-color-success);margin:8px 0}.app-text-warning{color:var(--ion-color-warning);margin:8px 0}.app-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25000;background:rgba(0,0,0,.72);display:flex;align-items:stretch;justify-content:center;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0);box-sizing:border-box}.home-stats-side-drawer-modal.app-modal-backdrop{justify-content:flex-end;align-items:stretch}.home-stats-drawer-panel{display:flex;flex-direction:column;width:min(100vw - 8px,420px);max-width:420px;height:100%;min-height:0;overflow:hidden;background:var(--ct-brand-background);border-left:1px solid var(--ct-brand-border);box-shadow:-8px 0 32px rgba(0,0,0,.42);border-radius:var(--ct-radius-lg) 0 0 var(--ct-radius-lg)}.home-stats-drawer-panel .app-toolbar,.app-modal-backdrop .app-toolbar{flex-shrink:0;padding-top:0}.home-stats-drawer-scroll{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.app-modal-backdrop--bottom-sheet{align-items:flex-end;justify-content:center}.app-modal-backdrop--centered{align-items:center;justify-content:center;background:rgba(0,0,0,.42);backdrop-filter:blur(var(--ct-modal-backdrop-blur));-webkit-backdrop-filter:blur(var(--ct-modal-backdrop-blur))}.app-modal-panel{box-sizing:border-box}.app-modal-panel--bottom-sheet{width:min(100%,520px);max-height:min(88vh,100%);margin:0 auto;overflow:hidden;display:flex;flex-direction:column;background:var(--ct-brand-surface);border:1px solid var(--ct-brand-border);border-radius:var(--ct-radius-xl) var(--ct-radius-xl) 0 0;box-shadow:0 -12px 40px rgba(0,0,0,.45);border-bottom:none}.app-modal-panel--centered,.app-modal-panel--confirm{width:min(100% - 32px,420px);max-width:420px;max-height:min(88vh,100%);margin:0;padding:var(--ct-modal-halo-padding);background:var(--ct-modal-halo-bg);border-radius:var(--ct-modal-outer-radius);box-shadow:var(--ct-modal-elevation);border:1px solid var(--ct-modal-halo-ring);overflow:visible;display:flex;flex-direction:column;align-items:stretch}.app-modal-panel__surface{position:relative;z-index:0;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;width:100%;box-sizing:border-box;background:var(--ct-brand-surface);border:1px solid var(--ct-brand-border);border-radius:var(--ct-modal-radius);overflow:hidden}.app-modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--ct-space-3);flex-shrink:0;padding:var(--ct-space-4);padding-bottom:var(--ct-space-3);border-bottom:1px solid var(--ct-brand-border)}.app-modal-title{margin:0;font-size:var(--ct-font-size-lg);font-weight:500;color:var(--ct-brand-text);line-height:1.25}.app-modal-close{flex-shrink:0;margin:0;padding:8px 14px;border-radius:var(--ct-radius-md);background:transparent;border:1px solid var(--ct-brand-border);color:var(--ct-brand-primary);font-weight:500;font-size:var(--ct-font-size-sm);font-family:inherit;cursor:pointer;line-height:1.2}.app-modal-close:active:not(:disabled){opacity:.88}.app-modal-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}@keyframes app-confirm-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes app-confirm-panel-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.app-modal-backdrop--confirm-layer{z-index:26000;align-items:center;justify-content:center;background:rgba(0,0,0,.42);backdrop-filter:blur(var(--ct-modal-backdrop-blur));-webkit-backdrop-filter:blur(var(--ct-modal-backdrop-blur));animation:app-confirm-backdrop-in .24s ease-out forwards}.app-modal-panel--confirm{transform-origin:center center;animation:app-confirm-panel-in .28s cubic-bezier(.22,1,.36,1) .04s both}.app-modal-panel--confirm .app-modal-panel__surface{min-height:0}.app-modal-standard-inner{display:flex;flex-direction:column;align-items:center;gap:var(--ct-space-3);padding:var(--ct-space-8) var(--ct-space-4) var(--ct-space-4);margin:0;text-align:center;overflow-y:auto;-webkit-overflow-scrolling:touch;flex:1;min-height:0;width:100%;box-sizing:border-box}.app-modal-lead-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.app-modal-lead-icon--danger{background:rgba(239,68,68,.18);color:#f87171}.app-modal-lead-icon--primary{background:rgba(245,165,36,.14);color:var(--ct-brand-primary)}.app-modal-title--centered{text-align:center;align-self:stretch;width:100%}.confirm-dialog-message{color:var(--ct-brand-text-secondary);font-size:var(--ct-font-size-sm);line-height:1.55}.app-modal-standard-inner .confirm-dialog-message{text-align:center;align-self:stretch;width:100%}.confirm-dialog-message p{margin:0}.confirm-dialog-message p+p{margin-top:var(--ct-space-2)}.confirm-dialog-hint{font-size:var(--ct-font-size-xs);opacity:.92}.confirm-dialog-actions{display:flex;flex-direction:row;align-items:stretch;gap:var(--ct-space-3);margin-top:var(--ct-space-2);width:100%;align-self:stretch}.confirm-dialog-actions>button.app-btn-block{flex:1 1 0;min-width:0;width:auto;padding-left:var(--ct-space-2);padding-right:var(--ct-space-2)}.app-toolbar-link-btn{display:inline-flex;align-items:center;background:none;border:none;color:var(--ct-link-color);font-weight:500;cursor:pointer;font-size:14px;padding:6px 8px}.app-loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:rgba(17,24,39,.72)}.app-tab-shell{display:flex;flex-direction:column;height:var(--app-visual-vh, 100dvh);max-height:var(--app-visual-vh, 100dvh);min-height:0;overflow:hidden;position:relative}.app-tab-outlet{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;padding-bottom:calc(56px + env(safe-area-inset-bottom,0px))}.app-tab-outlet>.app-shell-page{flex:1 1 auto;min-height:0;max-height:100%;height:100%;width:100%;display:flex;flex-direction:column;overflow:hidden}.app-tabbar-native{position:fixed;left:0;right:0;bottom:0;z-index:100;display:flex;align-items:stretch;justify-content:space-around;min-height:56px;padding-bottom:env(safe-area-inset-bottom,0px);background:var(--ct-brand-background);border-top:1px solid var(--ct-brand-border);-webkit-backface-visibility:hidden;backface-visibility:hidden}.app-tab-button-native{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 4px;text-decoration:none;color:var(--ct-brand-text-secondary);font-size:12px;font-weight:500;background:transparent;border:none;cursor:pointer}.app-tab-button-native--selected{color:var(--ct-brand-primary)}.app-tab-label{font-size:12px;font-weight:300}.app-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:19999;border:0;padding:0;margin:0;background:rgba(0,0,0,.45);opacity:0;pointer-events:none;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.app-drawer-backdrop--visible{opacity:1;pointer-events:auto;visibility:visible}.app-drawer-panel{position:fixed;top:0;left:0;bottom:0;width:min(248px,88vw);z-index:20000;background:var(--ct-brand-background);box-shadow:4px 0 24px rgba(0,0,0,.35);transform:translate(-100%);transition:transform .22s ease;pointer-events:none;visibility:hidden}.app-drawer-panel--open{transform:translate(0);pointer-events:auto;visibility:visible}.app-side-menu-item--logout{margin-top:8px;border:1px solid rgba(239,68,68,.45);color:#fca5a5;background:transparent;cursor:pointer;font:inherit;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--ct-radius-md)}.app-side-menu-item{display:flex;align-items:center;gap:10px;padding:12px 14px;margin:0 10px 10px;border-radius:var(--ct-radius-md);background:var(--ct-brand-surface);color:var(--ct-brand-text);text-decoration:none;font-weight:400;font-size:14px;border:none;width:calc(100% - 20px);box-sizing:border-box;cursor:pointer;text-align:left}.app-side-menu-item--active{outline:1px solid var(--ct-brand-primary)}.app-menu-button-native{display:inline-flex;align-items:center;justify-content:center;padding:6px;margin:0;border:none;background:transparent;color:var(--ct-brand-text);cursor:pointer;border-radius:8px}@keyframes app-toast-enter{0%{opacity:0;transform:translate(-50%,-14px)}to{opacity:1;transform:translate(-50%)}}.app-toast{position:fixed;left:50%;transform:translate(-50%);z-index:30000;box-sizing:border-box;width:max-content;max-width:min(96vw,520px);padding:12px 16px;border-radius:var(--ct-button-radius);font-size:14px;font-weight:500;box-shadow:0 8px 24px rgba(0,0,0,.35);animation:app-toast-enter .32s cubic-bezier(.22,1,.36,1) forwards;text-align:center;word-break:normal;overflow-wrap:break-word}.app-toast--top{top:max(16px,env(safe-area-inset-top,16px))}.app-toast--confirmation{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;background:rgb(var(--brand-primary));color:rgb(var(--brand-on-primary));font-size:var(--ct-font-size-lg);font-weight:500;line-height:1.25;text-align:center}.app-toast__confirmation-icon{flex-shrink:0;width:24px;height:24px}.app-toast__confirmation-text{font-weight:500;color:rgb(var(--brand-on-primary));flex-shrink:0;text-wrap:balance}.app-toast--success{background:rgba(34,197,94,.95);color:#052e16}.app-toast--danger{background:rgba(239,68,68,.95);color:#fff}.app-toast--warning{background:rgba(245,158,11,.95);color:#111827}[data-theme=light]{--brand-primary: 249 115 22;--brand-on-primary: 255 255 255;--brand-background: 241 245 249;--brand-surface: 255 255 255;--brand-text: 15 23 42;--brand-text-secondary: 100 116 139;--brand-border: 226 232 240;--brand-card-background: 255 255 255;--app-surface-elevated: #e2e8f0;--ct-card-shadow: 0 2px 10px rgba(15, 23, 42, .04);--ct-card-shadow-hover: 0 10px 20px rgba(15, 23, 42, .08);--ct-glow: radial-gradient( ellipse at center, rgba(249, 115, 22, .07) 0%, rgba(249, 115, 22, .03) 50%, rgba(249, 115, 22, 0) 76% );--ct-modal-halo-bg: rgba(203, 213, 225, .55);--ct-modal-halo-ring: rgba(255, 255, 255, .92);--ct-modal-elevation: 0 24px 56px rgba(15, 23, 42, .12);--ion-color-warning: rgb(var(--brand-primary));--ion-color-warning-contrast: rgb(var(--brand-on-primary));--ion-color-medium: #94a3b8}[data-theme=light] .app-card{background:#fff;border:1px solid rgba(226,232,240,.7);box-shadow:var(--ct-card-shadow)}[data-theme=light] .app-card--hoverable:hover{box-shadow:var(--ct-card-shadow-hover)}[data-theme=light] .home-hero-card:before{background:radial-gradient(ellipse at center,rgba(249,115,22,.18),rgba(249,115,22,.08) 42%,rgba(249,115,22,0) 78%)}[data-theme=light] .ct-tenant-summary-card{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid rgba(249,115,22,.28)}[data-theme=light] .ct-tenant-summary-card__logo{border:1px solid rgba(249,115,22,.35)}[data-theme=light] .ct-tenant-summary-card__logo--fallback{background:rgba(249,115,22,.1)}[data-theme=light] .home-separator{background:linear-gradient(90deg,transparent 0%,rgba(148,163,184,.35) 20%,rgba(148,163,184,.55) 50%,rgba(148,163,184,.35) 80%,transparent 100%)}[data-theme=light] .next-appointment-card{border:1px solid rgba(226,232,240,.9);background:#fff;box-shadow:var(--ct-card-shadow)}[data-theme=light] .next-appointment-label{color:rgb(var(--brand-primary))}[data-theme=light] .next-appointment-card h3{color:var(--ct-brand-text)}[data-theme=light] .next-appointment-card p{color:var(--ct-brand-text-secondary)}[data-theme=light] .dark-field{border:1px solid rgba(226,232,240,.95)!important;box-shadow:var(--ct-card-shadow)!important}[data-theme=light] .home-layout .dark-field,[data-theme=light] .auth-page .dark-field,[data-theme=light] .profile-page .dark-field{border:1px solid rgba(226,232,240,.95)!important}[data-theme=light] .profile-page .dark-section,[data-theme=light] .auth-page .auth-card{background:#fff!important;border:1px solid rgba(226,232,240,.7)!important;box-shadow:var(--ct-card-shadow)!important}[data-theme=light] .auth-page .auth-card.login-brand-card{background:var(--ct-modal-halo-bg)!important;border:1px solid var(--ct-modal-halo-ring)!important;border-radius:var(--ct-modal-outer-radius)!important;box-shadow:var(--ct-modal-elevation)!important;padding:var(--ct-modal-halo-padding)!important}[data-theme=light] .auth-page .auth-card.login-brand-card .login-brand-card__surface{background:linear-gradient(to bottom,var(--ct-cta-primary-grad-top),var(--ct-cta-primary-grad-bottom))!important;border:1px solid rgba(255,255,255,.28)!important;box-shadow:inset 0 1px rgba(255,255,255,.2),0 4px 14px rgba(15,23,42,.08)!important}[data-theme=light] .auth-page .auth-card.login-brand-card .login-brand-icon,[data-theme=light] .auth-page .auth-card.login-brand-card h2,[data-theme=light] .auth-page .auth-card.login-brand-card .login-brand-lead{color:rgb(var(--brand-on-primary))!important;opacity:1}[data-theme=light] .profile-compact-field{background:#f8fafc;border:1px solid #e2e8f0}[data-theme=light] .profile-compact-field:focus-within{border-color:#fdba74;box-shadow:0 0 0 4px rgba(255,237,213,.95)}[data-theme=light] .profile-compact-field input{color:var(--ct-brand-text)}[data-theme=light] .profile-avatar-large{background:#e2e8f0}[data-theme=light] .profile-avatar-placeholder{color:#94a3b8}[data-theme=light] .profile-avatar-overlay{border:1px solid rgba(255,255,255,.95)}[data-theme=light] .auth-tenant-selected-card{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid rgba(249,115,22,.28)}[data-theme=light] .auth-tenant-selected-logo{border:1px solid rgba(249,115,22,.35)}[data-theme=light] .auth-tenant-selected-logo--fallback{background:rgba(249,115,22,.1)}[data-theme=light] .session-loading-spinner{border:3px solid rgba(15,23,42,.08);border-top-color:var(--ion-color-warning)}[data-theme=light] .app-loading-overlay{background:rgba(241,245,249,.85)}[data-theme=light] .app-modal-backdrop{background:rgba(15,23,42,.4)}[data-theme=light] .app-modal-backdrop--centered,[data-theme=light] .app-modal-backdrop--confirm-layer{backdrop-filter:blur(var(--ct-modal-backdrop-blur));-webkit-backdrop-filter:blur(var(--ct-modal-backdrop-blur))}[data-theme=light] .home-stats-drawer-panel{background:var(--ct-brand-background);border-left:1px solid var(--ct-brand-border);box-shadow:-8px 0 32px rgba(15,23,42,.08)}[data-theme=light] .app-modal-panel--bottom-sheet{background:#fff;border:1px solid rgba(226,232,240,.85);box-shadow:0 -12px 40px rgba(15,23,42,.1)}[data-theme=light] .app-modal-header{border-bottom:1px solid rgba(226,232,240,.95)}[data-theme=light] .app-modal-lead-icon--danger{background:rgba(239,68,68,.12);color:#e11d48}[data-theme=light] .app-modal-lead-icon--primary{background:rgba(249,115,22,.12);color:rgb(var(--brand-primary))}[data-theme=light] .app-drawer-backdrop{background:rgba(15,23,42,.35)}[data-theme=light] .app-drawer-panel{background:var(--ct-brand-background);box-shadow:4px 0 24px rgba(15,23,42,.12)}[data-theme=light] .app-toast{box-shadow:0 8px 24px rgba(15,23,42,.12)}[data-theme=light] ion-alert.ct-confirm-alert{--background: #ffffff;--backdrop-opacity: .45;--color: var(--ct-brand-text);--border-radius: var(--ct-modal-radius);--box-shadow: var(--ct-modal-elevation)}[data-theme=light] ion-alert.ct-confirm-alert .ct-confirm-alert-danger{color:#e11d48}[data-theme=light] .establishment-gallery-lightbox-modal.app-modal-backdrop{background:rgba(15,23,42,.9)}[data-theme=light] .profile-appearance-label{color:var(--ct-brand-text)}[data-theme=light] .profile-theme-option{border:1px solid rgba(226,232,240,.9);background:#f8fafc;color:var(--ct-brand-text-secondary)}[data-theme=light] .profile-theme-option--active{border-color:rgba(249,115,22,.45);background:rgba(255,237,213,.65);color:rgb(var(--brand-primary));box-shadow:0 2px 8px rgba(249,115,22,.12)}[data-theme=light] .booking-datetime-card,[data-theme=light] .booking-summary-card{border:1px solid rgba(226,232,240,.85)!important;box-shadow:var(--ct-card-shadow)!important}[data-theme=light] .booking-step-services-hint strong{color:var(--ct-brand-text)}[data-theme=light] .selector-card--professional:not(.selected){border-color:rgba(226,232,240,.95);box-shadow:var(--ct-card-shadow)}[data-theme=light] .selector-card--professional:not(.selected):hover{border-color:rgba(249,115,22,.45);box-shadow:0 8px 14px rgba(15,23,42,.08)}[data-theme=light] .skeleton-line{background:linear-gradient(90deg,#f1f5f9,#e2e8f0,#f1f5f9)}@media (prefers-reduced-motion: reduce){[data-theme=light] .skeleton-line{background:#e2e8f0}}[data-theme=light] .skeleton-avatar,[data-theme=light] .skeleton-pill,[data-theme=light] .skeleton-block,[data-theme=light] .skeleton-square,[data-theme=light] .skeleton-stat-icon{background:linear-gradient(90deg,#f1f5f9,#e2e8f0,#f1f5f9)}@media (prefers-reduced-motion: reduce){[data-theme=light] .skeleton-avatar,[data-theme=light] .skeleton-pill,[data-theme=light] .skeleton-block,[data-theme=light] .skeleton-square,[data-theme=light] .skeleton-stat-icon{background:#e2e8f0}}[data-theme=light] .appointment-card{border:1px solid rgba(226,232,240,.85)!important;box-shadow:var(--ct-card-shadow)!important}[data-theme=light] .appointment-status-chip{background:rgba(249,115,22,.12);border:1px solid rgba(249,115,22,.28);box-shadow:0 2px 6px rgba(249,115,22,.1),inset 0 1.5px rgba(255,255,255,.75),inset 0 -2px 6px rgba(249,115,22,.08)}[data-theme=light] .appointment-status-chip--medium{background:rgba(148,163,184,.15);color:#64748b;border:1px solid rgba(148,163,184,.35);box-shadow:0 2px 6px rgba(15,23,42,.06),inset 0 1.5px rgba(255,255,255,.8),inset 0 -2px 6px rgba(148,163,184,.12)}[data-theme=light] .appointment-status-chip--warning{background:rgba(249,115,22,.12);border:1px solid rgba(249,115,22,.28);box-shadow:0 2px 6px rgba(249,115,22,.1),inset 0 1.5px rgba(255,255,255,.75),inset 0 -2px 6px rgba(249,115,22,.08)}[data-theme=light] .appointment-status-chip--success{background:rgba(34,197,94,.12);color:#15803d;border:1px solid rgba(34,197,94,.35);box-shadow:0 2px 6px rgba(34,197,94,.12),inset 0 1.5px rgba(255,255,255,.75),inset 0 -2px 6px rgba(34,197,94,.08)}[data-theme=light] .appointment-status-chip--danger{background:rgba(239,68,68,.1);color:#dc2626;border:1px solid rgba(239,68,68,.3);box-shadow:0 2px 6px rgba(239,68,68,.12),inset 0 1.5px rgba(255,255,255,.75),inset 0 -2px 6px rgba(239,68,68,.08)}[data-theme=light] .appointment-action-btn--muted{background:linear-gradient(to bottom,#f8fafc,#e2e8f0);border:1px solid rgba(148,163,184,.45);color:var(--ct-brand-text-secondary);box-shadow:0 2px 8px rgba(15,23,42,.06),inset 0 1.5px rgba(255,255,255,.9),inset 0 -2px 8px rgba(148,163,184,.14)}[data-theme=light] .appointment-action-btn--danger{color:#b91c1c;border:1px solid rgba(239,68,68,.38);background:linear-gradient(to bottom,#fef2f2,#fee2e2);box-shadow:0 2px 8px rgba(239,68,68,.14),inset 0 1.5px rgba(255,255,255,.85),inset 0 -2px 8px rgba(239,68,68,.1)}[data-theme=light] .appointment-action-btn--danger .action-button-icon,[data-theme=light] .ct-appointment-card__action-icon--danger,[data-theme=light] .ct-appointment-card__action-icon--danger:visited{color:#b91c1c}[data-theme=light] .ct-appointment-card__action-icon--danger:hover{background-color:rgba(239,68,68,.1)}[data-theme=light] .services-modal-professional{border-bottom:1px solid rgba(226,232,240,.95)}[data-theme=light] .services-modal-professional-placeholder{background:#e2e8f0}[data-theme=light] .services-modal-item{border-bottom:1px solid rgba(226,232,240,.9)}[data-theme=light] .services-modal-item:last-child{border-bottom:none}[data-theme=light] .services-modal-total{border-top:1px solid rgba(226,232,240,.95)}[data-theme=light] .appointments-empty-icon-wrap{background:rgba(249,115,22,.08);border:1px solid rgba(249,115,22,.22)}@keyframes service-card-attention-pulse-light{0%,to{border-color:rgba(226,232,240,.95);box-shadow:0 2px 10px rgba(15,23,42,.04)}50%{border-color:rgba(249,115,22,.45);box-shadow:0 6px 20px rgba(249,115,22,.14)}}@media (hover: none){@media (prefers-reduced-motion: no-preference){[data-theme=light] .selector-grid--services-attention .selector-card--service:not(.selected){animation:service-card-attention-pulse-light 2.2s ease-in-out infinite}}}@media (prefers-reduced-motion: reduce){[data-theme=light] .selector-grid--services-attention .selector-card--service:not(.selected){border-color:rgba(249,115,22,.42);box-shadow:0 4px 16px rgba(249,115,22,.12)}}[data-theme=light] .public-not-found-page .app-toolbar{border-bottom-color:rgba(226,232,240,.95)}[data-theme=light] .professional-avatar-wrap{box-shadow:inset 0 0 0 1px rgba(15,23,42,.08)}[data-theme=light] .selector-card--professional.selected{background:#fff!important;border-color:#f97316!important;box-shadow:0 0 0 1px rgba(249,115,22,.35),0 12px 24px rgba(249,115,22,.18)!important;color:var(--ct-brand-text)}[data-theme=light] .selector-card--service.selected .service-meta-duration{color:var(--ct-brand-text-secondary)}[data-theme=light] .selector-card--service.selected .service-meta-price{color:#f97316}
