*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-padding-top:var(--nav-h)}body,html{background:var(--bg-canvas)}body{font-family:var(--font-sans);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2{font-family:var(--font-display);font-weight:600;letter-spacing:-.015em;font-synthesis-weight:none;text-wrap:balance}.miacreno-logo{display:block;flex:none;background:var(--logo-image) center /contain no-repeat}.miacreno-logo-wrap{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}.miacreno-logo-tagline{font-size:12px;color:var(--text-tertiary);letter-spacing:.02em;text-align:center}a{color:var(--text-brand);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;border:none;background:none;color:inherit}button,input,select,textarea{font-family:inherit;font-size:1rem}input,select,textarea{border:1.5px solid var(--border-default);border-radius:var(--radius-md);padding:10px 14px;width:100%;background:var(--bg-surface);color:var(--text-primary);transition:border-color .15s;outline:none}input:focus,textarea:focus{border-color:var(--border-brand);box-shadow:0 0 0 3px var(--focus-ring)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 22px;background:var(--brand-fill);color:var(--text-on-brand);border-radius:var(--radius-md);font-weight:600;font-size:.95rem;transition:background .15s,transform .1s,box-shadow .15s;white-space:nowrap}.btn-primary:hover:not(:disabled){background:var(--brand-hover);text-decoration:none;box-shadow:var(--elev-2)}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 22px;background:transparent;color:var(--text-brand);border:1.5px solid var(--border-brand);border-radius:var(--radius-md);font-weight:600;font-size:.95rem;transition:background .15s;white-space:nowrap}.btn-secondary:hover{background:var(--brand-subtle);text-decoration:none}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;color:var(--text-secondary);border-radius:var(--radius-md);font-weight:500;font-size:.9rem;transition:background .15s,color .15s}.btn-ghost:hover{background:var(--bg-sunken);color:var(--text-primary);text-decoration:none}.btn-lg{min-height:52px;padding:13px 28px;font-size:1.05rem}.btn-sm{min-height:40px;padding:7px 14px;font-size:.875rem}.btn-full{width:100%}.btn-danger-ghost:focus-visible,.btn-danger:focus-visible,.btn-ghost:focus-visible,.btn-primary:focus-visible,.btn-secondary:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.site-nav{position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky);background:var(--bg-canvas);background:color-mix(in srgb,var(--bg-canvas) 94%,transparent);border-bottom:1px solid var(--border-subtle)}@media (min-width:861px){.site-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}}.site-nav-inner{max-width:var(--max-w);margin:0 auto;padding:0 var(--pad-x);height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;gap:8px}.nav-menu-btn{display:none;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:transparent;cursor:pointer;color:var(--text-primary);border-radius:var(--radius-sm);flex-shrink:0;transition:background .15s}.nav-menu-btn:hover{background:var(--bg-canvas)}.nav-categories{display:flex;align-items:center;gap:4px;flex:1 1;justify-content:center}.nav-cat-link{font-size:.875rem;font-weight:500;color:var(--text-tertiary);padding:6px 10px;border-radius:var(--radius-sm);white-space:nowrap;transition:color .15s,background .15s;text-decoration:none}.nav-cat-link.active,.nav-cat-link:hover{color:var(--text-brand);background:var(--brand-subtle)}.nav-cat-link.active{font-weight:600}.nav-mobile-backdrop{position:fixed;inset:0;z-index:98;background:var(--bg-scrim);cursor:pointer}.nav-mobile-menu{border-top:1px solid var(--border-default);background:var(--bg-surface);animation:slideDown .18s ease-out;position:relative;z-index:100}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.nav-mobile-menu-inner{max-width:var(--max-w);margin:0 auto;padding:12px var(--pad-x) 16px}.nav-mobile-section-label{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);margin:0 0 8px}.nav-mobile-cat-link{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:var(--radius-md);color:var(--text-primary);font-size:.9375rem;font-weight:500;text-decoration:none;transition:background .12s}.nav-mobile-cat-link.active,.nav-mobile-cat-link:hover{background:var(--brand-subtle);color:var(--text-brand)}.nav-mobile-cat-thumb{width:28px;height:28px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg-surface) 92%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-default)}.nav-inner{max-width:var(--max-w);margin:0 auto;padding:0 var(--pad-x);height:var(--nav-h);justify-content:space-between;gap:16px}.nav-brand,.nav-inner{display:flex;align-items:center}.nav-brand{font-size:1.25rem;font-weight:700;color:var(--text-brand);letter-spacing:-.5px;flex-shrink:0}.nav-brand img{max-height:36px;width:auto;max-width:min(160px,40vw)}.nav-brand:hover{text-decoration:none}.nav-actions{gap:8px}.hero,.nav-actions{display:flex;align-items:center}.hero{position:relative;min-height:calc(100vh - var(--nav-h));justify-content:center;padding:80px var(--pad-x) 100px}.hero-bg-img{object-fit:cover;object-position:center 20%}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,var(--photo-scrim-top) 0,var(--photo-scrim-mid) 50%,var(--photo-scrim-bottom) 100%)}.hero-content{position:relative;z-index:10;max-width:760px;width:100%;text-align:center}.hero-content h1{font-size:clamp(2.5rem,6vw,4rem);font-weight:700;line-height:1.1;letter-spacing:-1.5px;margin-bottom:16px;text-shadow:0 2px 20px rgba(0,0,0,.2)}.hero-tagline{color:var(--text-on-photo-muted);letter-spacing:2px;margin-bottom:40px}.how-it-works{background:var(--bg-canvas);padding:80px var(--pad-x);border-top:1px solid var(--border-default);border-bottom:1px solid var(--border-default)}.section-inner{max-width:var(--max-w);margin:0 auto}.section-center-title,.section-inner>h2{font-size:clamp(1.5rem,3vw,2rem);font-weight:700;letter-spacing:-.5px;text-align:center;margin-bottom:48px}.step{text-align:center}.step h3{font-size:1.05rem;font-weight:700;margin-bottom:8px}.step p{font-size:.9rem;color:var(--text-tertiary)}.section-label{display:inline-block;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-brand);background:var(--brand-subtle);padding:4px 12px;border-radius:100px;margin-bottom:16px}.footer{border-top:1px solid var(--border-default)}.footer-cols{max-width:var(--max-w);margin:0 auto;padding:56px var(--pad-x) 40px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;grid-gap:40px;gap:40px}.footer-store-btns{display:flex;flex-direction:column;gap:8px}.footer-col-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-primary);margin-bottom:16px}.footer-col-nav{display:flex;flex-direction:column;gap:10px}.footer-col-nav a{font-size:.9rem;color:var(--text-tertiary);text-decoration:none}.footer-col-nav a:hover{color:var(--text-brand)}.footer-contact-links{display:flex;flex-direction:column;gap:10px}.footer-contact-link{display:flex;align-items:center;gap:10px;font-size:.875rem;color:var(--text-tertiary);text-decoration:none;padding:11px 14px;border-radius:var(--radius-md);border:1px solid var(--border-default);transition:border-color .15s,color .15s,background .15s;line-height:1;min-width:0;overflow:hidden;word-break:break-all}.footer-contact-link svg{flex-shrink:0}.footer-contact-link:hover{color:var(--text-primary);border-color:var(--border-brand);background:var(--brand-subtle)}.footer-contact-link--wa:hover{color:var(--status-success-fg);border-color:var(--status-success-border);background:var(--status-success-bg)}.footer-bottom{border-top:1px solid var(--border-default);padding:24px var(--pad-x) 32px;max-width:var(--max-w);margin:0 auto;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.footer-copy,.footer-policy-link{font-size:.85rem;color:var(--text-tertiary)}.footer-policy-link{text-decoration:underline;text-underline-offset:3px}.footer-policy-link:hover{color:var(--text-brand)}.policy-page{min-height:100vh;display:flex;flex-direction:column}.policy-header,.policy-page{background:var(--bg-surface)}.policy-header{border-bottom:1px solid var(--border-default)}.policy-header-inner{max-width:var(--max-w);margin:0 auto;padding:0 var(--pad-x);height:var(--nav-h);display:flex;align-items:center}.policy-logo-link{display:inline-flex;text-decoration:none}.policy-main{flex:1 1;max-width:800px;width:100%;margin:0 auto;padding:0 var(--pad-x) 64px}.policy-hero{padding:48px 0 32px;border-bottom:1px solid var(--border-default);margin-bottom:40px}.policy-h1{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0 0 8px;line-height:1.2}.policy-date{font-size:.9rem;color:var(--text-tertiary);margin:0}.policy-body{display:flex;flex-direction:column;gap:0}.policy-section{padding:32px 0;border-bottom:1px solid var(--border-default)}.policy-section--last{border-bottom:none}.policy-h2{font-size:1.2rem;font-weight:700;margin:0 0 16px}.policy-h2,.policy-h3{color:var(--text-primary)}.policy-h3{font-size:1rem;font-weight:600;margin:20px 0 8px}.policy-section p{font-size:.95rem;color:var(--text-primary);line-height:1.7;margin:0 0 12px}.policy-section p:last-child{margin-bottom:0}.policy-list{padding-left:20px;margin:0 0 12px;display:flex;flex-direction:column;gap:8px}.policy-list li{font-size:.95rem;color:var(--text-primary);line-height:1.6}.policy-info-box{background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:16px 20px;display:flex;flex-direction:column;gap:4px;margin-top:12px}.policy-info-box p{margin:0!important;font-size:.95rem}.policy-link{text-decoration:underline;text-underline-offset:2px}.policy-link,.policy-link:hover{color:var(--text-brand)}.policy-table-wrap{overflow-x:auto;margin-top:16px;border-radius:var(--radius-md);border:1px solid var(--border-default)}.policy-table{width:100%;border-collapse:collapse;font-size:.9rem}.policy-table th{background:var(--bg-canvas);text-align:left;font-weight:600}.policy-table td,.policy-table th{padding:10px 14px;color:var(--text-primary);border-bottom:1px solid var(--border-default)}.policy-table td{vertical-align:top;line-height:1.5}.policy-table tr:last-child td{border-bottom:none}.policy-table tr:nth-child(2n) td{background:var(--bg-canvas)}.policy-note{margin-top:12px;font-size:.88rem;color:var(--text-tertiary);font-style:italic}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-canvas);padding:24px}.auth-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--elev-3);padding:40px;width:100%;max-width:440px}.auth-brand{display:block;text-align:center;font-size:1.25rem;font-weight:700;color:var(--text-brand);margin-bottom:28px}.auth-brand:hover{text-decoration:none}.auth-title{font-size:1.5rem;font-weight:700;letter-spacing:-.5px;text-align:center;margin-bottom:8px}.auth-sub{color:var(--text-tertiary);margin-bottom:28px;font-size:.95rem;text-align:center}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-footer{margin-top:24px;text-align:center}.auth-footer,.link-btn{font-size:.875rem;color:var(--text-tertiary)}.link-btn{background:none;border:none;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.link-btn:hover{color:var(--text-primary)}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:.875rem;font-weight:600}.form-error{border-left:3px solid var(--status-danger-fg);background:var(--status-danger-bg);color:var(--status-danger-fg);border-radius:0 6px 6px 0;padding:10px 14px;font-size:.875rem;font-weight:500;line-height:1.5}.app-layout{min-height:100vh;background:var(--bg-canvas)}.app-nav{position:-webkit-sticky;position:sticky;top:0;z-index:100;background:var(--bg-surface);border-bottom:1px solid var(--border-default);height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad-x)}.nav-notif-btn,.nav-notif-wrap{position:relative}.nav-notif-btn{width:36px;height:36px;border-radius:50%;background:transparent;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-primary);transition:background .15s}.nav-notif-btn:hover{background:var(--bg-canvas)}.nav-theme-btn{width:36px;height:36px;border-radius:50%;background:transparent;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-primary);transition:background .15s}.nav-theme-btn:hover{background:var(--bg-canvas)}.nav-notif-badge{position:absolute;top:2px;right:2px;min-width:16px;height:16px;border-radius:8px;color:var(--text-on-photo);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1}.nav-notif-panel{position:absolute;top:calc(100% + 10px);right:0;width:320px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--elev-3);z-index:200;overflow:hidden}@media (max-width:640px){.nav-notif-panel{position:fixed;top:var(--nav-h);left:8px;right:8px;width:auto;max-height:75vh;border-radius:var(--radius-md)}.nav-notif-body{max-height:calc(75vh - 56px)}}.nav-notif-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 14px;border-bottom:1px solid var(--border-default)}.nav-notif-title{font-size:15px;font-weight:700;color:var(--text-primary)}.nav-notif-close{background:none;border:none;cursor:pointer;font-size:14px;color:var(--text-tertiary);padding:4px;line-height:1;border-radius:4px;transition:background .12s}.nav-notif-close:hover{background:var(--bg-canvas)}.nav-notif-body{max-height:360px;overflow-y:auto}.nav-notif-empty{padding:32px 20px;text-align:center;color:var(--text-tertiary);font-size:14px;margin:0}.nav-notif-item{display:flex;align-items:flex-start;gap:12px;padding:12px 20px;border-bottom:1px solid var(--border-default)}.nav-notif-item:last-child{border-bottom:none}.nav-notif-dot{width:8px;height:8px;border-radius:50%;background:var(--brand-fill);flex-shrink:0;margin-top:4px}.nav-notif-item-body{flex:1 1;display:flex;flex-direction:column;gap:2px}.nav-notif-item--read{opacity:.6}.nav-notif-item-title{font-weight:700}.nav-notif-item-text,.nav-notif-item-title{font-size:13px;color:var(--text-primary);line-height:1.4;margin:0}.nav-notif-item-text{font-weight:500}.nav-notif-item-link{color:var(--text-brand);font-weight:600;text-decoration:underline}.nav-notif-item-time{font-size:11px;color:var(--text-tertiary)}.profile-menu{position:relative}.nav-avatar-btn{width:36px;height:36px;border-radius:50%;background:var(--brand-subtle);border:2px solid transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s,background .15s}.nav-avatar-btn.open,.nav-avatar-btn:hover{border-color:var(--border-brand)}.nav-avatar-initials{font-size:.8rem;color:var(--text-brand);letter-spacing:.5px;line-height:1;pointer-events:none}.profile-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:260px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--elev-3);z-index:200;overflow:hidden;animation:popup-in .12s ease}.profile-dropdown-head{padding:24px 20px 20px;text-align:center;border-bottom:1px solid var(--border-default)}.dropdown-avatar{width:52px;height:52px;border-radius:50%;background:var(--brand-subtle);display:flex;align-items:center;justify-content:center;margin:0 auto 12px}.dropdown-avatar-initials{font-size:1.1rem;font-weight:700;color:var(--text-brand);letter-spacing:.5px;line-height:1}.dropdown-user-info{text-align:center}.dropdown-user-info strong{display:block;font-size:.95rem;font-weight:700;color:var(--text-primary);margin-bottom:2px}.dropdown-user-info span{font-size:.8rem;color:var(--text-tertiary)}.profile-dropdown-body{padding:6px}.dropdown-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;font-size:.875rem;font-weight:500;color:var(--text-primary);border-radius:var(--radius-md);background:none;border:none;cursor:pointer;text-align:left;font-family:inherit;transition:background .1s;text-decoration:none}.dropdown-item:hover{background:var(--bg-canvas);text-decoration:none}.dropdown-item-danger{color:var(--status-danger-fg)}.dropdown-item-danger:hover{background:var(--status-danger-bg)}.dropdown-guest-head{padding:24px 20px 20px;text-align:center;border-bottom:1px solid var(--border-default)}.dropdown-guest-icon{width:52px;height:52px;border-radius:50%;background:var(--brand-subtle);display:flex;align-items:center;justify-content:center;margin:0 auto 12px}.dropdown-guest-title{font-size:.95rem;font-weight:700;color:var(--text-primary);margin-bottom:4px}.dropdown-guest-sub{font-size:.8rem;color:var(--text-tertiary);line-height:1.5}.dropdown-guest-actions{padding:14px 16px;display:flex;flex-direction:column;gap:8px}.dropdown-btn-primary{display:flex;align-items:center;justify-content:center;padding:10px 16px;background:var(--brand-fill);color:var(--text-on-brand);border-radius:var(--radius-md);font-size:.875rem;font-weight:600;text-decoration:none;transition:background .15s}.dropdown-btn-primary:hover{background:var(--brand-hover);text-decoration:none;color:var(--text-on-brand)}.dropdown-btn-secondary{display:flex;align-items:center;justify-content:center;padding:10px 16px;background:transparent;color:var(--text-brand);border:1.5px solid var(--border-brand);border-radius:var(--radius-md);font-size:.875rem;font-weight:600;text-decoration:none;transition:background .15s}.dropdown-btn-secondary:hover{background:var(--brand-subtle);text-decoration:none}.dropdown-btn-danger{display:flex;align-items:center;justify-content:center;padding:10px 16px;background:transparent;color:var(--status-danger-fg);border:1.5px solid var(--status-danger-fg);border-radius:var(--radius-md);font-size:.875rem;font-weight:600;text-decoration:none;cursor:pointer;font-family:inherit;width:100%;transition:background .15s}.dropdown-btn-danger:hover{background:var(--status-danger-bg);text-decoration:none}.app-main{max-width:960px;margin:0 auto;padding:40px var(--pad-x) 80px;display:flex;flex-direction:column;gap:28px}.page-header h1{font-size:1.75rem;font-weight:700;letter-spacing:-.5px;margin-bottom:4px}.text-muted{color:var(--text-tertiary);font-size:.95rem}.cta-banner{background:linear-gradient(135deg,var(--band-start) 0,var(--band-end) 100%);padding:28px 32px;color:var(--text-on-photo);display:flex;align-items:center;gap:24px;position:relative;overflow:hidden}.cta-banner:before{content:"";position:absolute;top:-40px;right:-40px;width:160px;height:160px;border-radius:50%;background:var(--glass-fill);pointer-events:none}.cta-banner-text{flex:1 1}.cta-banner-text h2{font-size:1.1rem;font-weight:700;margin-bottom:4px}.cta-banner-text p{font-size:.875rem;opacity:.8}.cta-banner .btn-primary{background:var(--text-on-photo);color:var(--band-end);flex-shrink:0}.cta-banner .btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--text-on-photo) 88%,var(--band-end));box-shadow:none}.cta-banner .btn-primary:disabled{background:var(--glass-border);color:color-mix(in srgb,var(--band-end) 50%,transparent)}.dashboard-section{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:24px}.dashboard-section-urgent{border-color:var(--status-warning-border);background:var(--status-warning-bg)}.section-header-row{display:flex;align-items:center;gap:10px;margin-bottom:20px}.section-header-row .section-title{margin-bottom:0}.section-badge-urgent{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--status-warning-solid);color:var(--text-on-photo);font-size:.75rem;font-weight:700}.section-title{font-size:1rem;font-weight:700;color:var(--text-primary);margin-bottom:16px}.section-hint{font-size:.8125rem;color:var(--text-tertiary);margin-top:-12px;margin-bottom:16px}.section-title-row{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:20px}.section-title-row .section-title{margin-bottom:0}.section-link{font-size:.8rem;color:var(--text-brand);font-weight:500;text-decoration:none}.section-link:hover{text-decoration:underline}.provider-card.client-card{cursor:default}.provider-card.client-card:hover{transform:none;box-shadow:var(--elev-2)}.client-card-lnk{display:block;color:inherit;cursor:pointer}.client-card-lnk,.client-card-lnk:hover,a.provider-card:hover{text-decoration:none}.client-card-badge{position:absolute;bottom:8px;left:8px;z-index:2}.client-card-content{padding:12px 16px;border-top:1px solid var(--border-default);display:flex;flex-direction:column;gap:5px}.client-card-svc{font-size:.875rem;font-weight:600;color:var(--text-primary)}.client-card-meta-row,.client-card-practitioner{font-size:.8rem;color:var(--text-tertiary)}.client-card-meta-row{display:flex;flex-wrap:wrap;gap:6px 14px}.client-card-review-stars{display:flex;gap:2px;font-size:1.1rem;margin-bottom:4px}.client-card-review-comment{font-size:.875rem;color:var(--text-primary);font-style:italic;line-height:1.4;margin:0 0 4px}.client-card-review-date{font-size:.78rem;color:var(--text-tertiary)}.client-card-actions{padding:10px 16px;border-top:1px solid var(--border-default);display:flex;justify-content:flex-end;gap:8px}.appt-queue-badge{display:flex;flex-direction:column;gap:4px;padding:10px 16px;background:var(--brand-subtle);border-top:1px solid var(--border-subtle);font-size:.8125rem}.appt-queue-status{display:flex;align-items:center;gap:6px;font-weight:700;color:var(--text-brand)}.appt-queue-dot{width:8px;height:8px;border-radius:50%;background:var(--text-tertiary);flex-shrink:0}.appt-queue-dot.dot-purple{background:var(--brand-fill);box-shadow:0 0 0 3px var(--focus-ring)}.appt-queue-dot.dot-green{background:var(--status-success-solid);box-shadow:var(--elev-1)}.appt-queue-pos{color:var(--text-primary);font-size:.8rem;padding-left:14px}.appt-queue-wait{color:var(--text-tertiary)}.btn-danger-ghost{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 18px;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;border:1.5px solid var(--status-danger-border);background:transparent;color:var(--status-danger-fg);cursor:pointer;transition:background .15s,border-color .15s}.btn-danger-ghost:hover:not(:disabled){background:var(--status-danger-bg);border-color:var(--status-danger-fg);text-decoration:none}.btn-danger-ghost:disabled{opacity:.55;cursor:not-allowed}.notfound-page{min-height:calc(100vh - var(--nav-h));display:flex;align-items:center;justify-content:center;padding:32px var(--pad-x)}.notfound-card{text-align:center;max-width:420px}.notfound-code{font-size:3.5rem;font-weight:700;color:var(--text-brand);margin:0;line-height:1}.notfound-title{font-size:1.5rem;font-weight:700;margin:12px 0 8px}.notfound-text{color:var(--text-tertiary);margin:0 0 24px}.notfound-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.empty-state{text-align:center;padding:32px 16px;color:var(--text-tertiary)}.empty-icon{font-size:2.5rem;margin-bottom:12px}.check-circle-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--status-success-solid);color:var(--text-on-photo);font-size:26px;font-weight:700;line-height:1;flex-shrink:0;margin-bottom:12px}.check-circle-icon--sm{width:44px;height:44px;font-size:20px;margin-bottom:0}.empty-cover-thumb{position:relative;width:72px;height:72px;border-radius:50%;overflow:hidden;margin:0 auto 14px}.empty-state h3{font-size:.95rem;margin-bottom:6px}.empty-state p{font-size:.875rem;line-height:1.6;max-width:320px;margin:0 auto}.admin-empty-state{flex-direction:column;text-align:center;padding:48px 16px}.admin-empty-state,.admin-empty-state-icon{display:flex;align-items:center;color:var(--text-tertiary)}.admin-empty-state-icon{justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--bg-canvas);margin-bottom:14px}.admin-empty-state-title{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 4px}.admin-empty-state-body{font-size:.85rem;margin:0}.profile-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:20px 24px;gap:16px}.profile-avatar,.profile-card{display:flex;align-items:center}.profile-avatar{width:48px;height:48px;border-radius:50%;background:var(--brand-subtle);justify-content:center;font-size:1.4rem;flex-shrink:0}.profile-avatar-initials{font-size:1rem;font-weight:700;color:var(--text-brand);letter-spacing:.5px;line-height:1}.profile-info{flex:1 1}.profile-info strong{display:block;font-weight:700}.profile-info span{font-size:.875rem;color:var(--text-tertiary)}.theme-toggle{display:flex;gap:10px}.theme-toggle-option{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px;background:var(--bg-canvas);border:1.5px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;font-weight:600;cursor:pointer;transition:border-color .15s ease}.theme-toggle-option.active,.theme-toggle-option:hover{border-color:var(--border-brand)}.theme-toggle-option.active{background:var(--brand-subtle);color:var(--text-brand)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}.stat-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:20px;text-align:center}.stat-value{font-size:2rem;font-weight:700;color:var(--text-brand);line-height:1;margin-bottom:6px}.stat-label{font-size:.8rem;color:var(--text-tertiary);font-weight:500}.stat-sublabel{font-size:.72rem;color:var(--text-tertiary);margin-top:4px}.stat-card--clickable{display:flex;flex-direction:column;align-items:center;width:100%;cursor:pointer;transition:border-color .15s ease,transform .15s ease}.stat-card--clickable:focus-visible,.stat-card--clickable:hover{border-color:var(--border-brand);transform:translateY(-2px)}.stat-card-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--brand-subtle);color:var(--text-brand);margin-bottom:10px}.stat-card-icon--success{background:var(--status-success-bg);color:var(--status-success-fg)}.stat-card-icon--warning{background:var(--status-warning-bg);color:var(--status-warning-fg)}.stat-card-icon--error{background:var(--status-danger-bg);color:var(--status-danger-fg)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chart-block{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:20px;margin-bottom:16px}.chart-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px}.chart-svg-wrap{position:relative}.chart-svg{width:100%;height:160px;display:block;overflow:visible}.chart-bar{fill:var(--text-brand);opacity:.85;transition:opacity .1s ease;outline:none}.chart-bar--hover,.chart-bar:focus-visible{opacity:1}.chart-x-axis{display:flex;justify-content:space-between;margin-top:6px;font-size:.7rem;color:var(--text-tertiary)}.chart-x-axis span{flex:1 1;text-align:center;text-transform:capitalize}.chart-tooltip{position:absolute;top:0;right:0;background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:8px 10px;font-size:.78rem;pointer-events:none;box-shadow:var(--elev-2);z-index:2}.chart-tooltip,.chart-totals{display:flex;flex-direction:column;gap:2px}.chart-totals{margin-top:12px;font-size:.85rem}.rank-bar-meta--error{color:var(--status-danger-fg)}.rank-bar-meta--success{color:var(--status-success-fg)}.infinite-list-sentinel{display:flex;justify-content:center;padding:24px 0}.stats-export-row{display:flex;justify-content:flex-end;margin-bottom:8px}.rank-bars{display:flex;flex-direction:column;gap:10px}.rank-bar-row{display:grid;grid-template-columns:minmax(90px,140px) 1fr auto;align-items:center;grid-gap:10px;gap:10px}.rank-bar-label{font-size:.82rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-bar-track{height:8px;border-radius:4px;background:var(--bg-canvas);overflow:hidden}.rank-bar-fill{height:100%;border-radius:4px;background:var(--brand-fill)}.rank-bar-meta{font-size:.78rem;color:var(--text-tertiary);white-space:nowrap}.session-bars{display:flex;flex-direction:column;gap:8px}.session-bar-row{display:grid;grid-template-columns:60px 1fr 32px;align-items:center;grid-gap:10px;gap:10px}.session-bar-label{font-size:.78rem;color:var(--text-tertiary)}.session-bar-track{height:8px;border-radius:4px;background:var(--bg-canvas);overflow:hidden}.session-bar-fill{height:100%;border-radius:4px;background:var(--brand-fill)}.session-bar-count{font-size:.8rem;font-weight:700;text-align:right}.hero-tagline{font-size:1rem;color:var(--text-tertiary);font-weight:500;margin-top:-12px;margin-bottom:36px;letter-spacing:1px}.search-bar{display:flex;align-items:center;background:var(--bg-surface);border:1.5px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--elev-2);max-width:1100px;margin-bottom:12px}.search-bar .search-btn{border-radius:0 var(--radius-xl) var(--radius-xl) 0}.search-cat-area{flex:2 1;min-width:0}.search-city-area{flex:3 1;min-width:0}.search-cat-area .area-select__control,.search-city-area .area-select__control{border:none;background:transparent;box-shadow:none;min-height:48px}.search-cat-area .area-select--open .area-select__control,.search-city-area .area-select--open .area-select__control{box-shadow:none;border-color:transparent}.search-cat-area .area-select__control{border-radius:var(--radius-xl) 0 0 var(--radius-xl)}.search-city-area .area-select__control{border-radius:0}.search-cat-area .area-select__dropdown,.search-city-area .area-select__dropdown{border-radius:var(--radius-md)}.search-divider{width:1px;height:36px;background:var(--border-default);flex-shrink:0}.search-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;background:var(--brand-fill);font-weight:700;font-size:.95rem;white-space:nowrap;text-decoration:none;transition:background .15s;flex-shrink:0}.search-btn:hover{background:var(--brand-hover);text-decoration:none}.categories{padding:48px var(--pad-x);border-top:1px solid var(--border-default)}.categories-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:16px;gap:16px}.category-card{position:relative;display:block;overflow:hidden;border-radius:var(--radius-lg);aspect-ratio:4/3;text-decoration:none;cursor:pointer;transition:box-shadow .2s,transform .15s}.category-card:hover{transform:translateY(-3px)}.category-card-img{object-fit:cover;transition:transform .35s ease}.category-card:hover .category-card-img{transform:scale(1.06)}.category-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,var(--photo-scrim-bottom) 0,transparent 70%);display:flex;align-items:flex-end;padding:14px}.category-card-label{font-weight:700;font-size:.9375rem;line-height:1.3;text-shadow:0 1px 4px rgba(0,0,0,.5)}.how-phones{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;max-width:1080px;margin:0 auto}.how-phone-step{display:flex;flex-direction:column;align-items:center;gap:20px}.how-phone-img{width:100%;height:auto;display:block}.how-step-label{text-align:center;padding-top:4px;width:100%}.how-step-num{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--brand-fill);color:var(--text-on-brand);font-size:.75rem;font-weight:700;margin:0 auto 8px}.how-step-label h3{font-size:.95rem;font-weight:700;margin-bottom:4px}.how-step-label p{font-size:.85rem;color:var(--text-tertiary);line-height:1.5;margin:0}.how-cta{display:flex;justify-content:center;margin-top:48px}.provider-band{padding:80px var(--pad-x)}.provider-band-inner{max-width:var(--max-w);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;grid-column-gap:64px;column-gap:64px;grid-row-gap:32px;row-gap:32px;align-items:start}.provider-band-slider{grid-column:2;grid-row:1/3;align-self:center;justify-self:center;width:400px;overflow:hidden}.provider-pro-phones{display:flex;gap:0;overflow:hidden}.provider-pro-phone-img{flex-shrink:0;width:400px;height:auto;object-fit:contain}.provider-band-inner>.provider-band-cta-row{grid-column:1;grid-row:2}.provider-band-text h2{font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:var(--text-on-brand);letter-spacing:-.5px;margin:16px 0;line-height:1.15}.provider-band-text p{color:var(--text-on-photo-muted);line-height:1.7;font-size:1rem;margin-bottom:28px}.provider-band-cta-row{display:flex;align-items:center;gap:16px}.field-hint{font-size:.75rem;color:var(--text-tertiary)}.password-wrapper{position:relative;display:flex;align-items:center}.password-wrapper input{padding-right:44px}.password-toggle{position:absolute;right:12px;display:flex;align-items:center;justify-content:center;width:24px;height:24px;color:var(--text-tertiary);border-radius:var(--radius-sm);transition:color .15s;flex-shrink:0}.password-toggle:hover{color:var(--text-primary)}.password-toggle svg{width:18px;height:18px}.field-required{color:var(--status-danger-fg);font-weight:700}.field-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.page-header-meta{gap:10px;margin-top:6px}.status-chip{display:inline-block;font-size:.75rem;font-weight:600;padding:3px 10px;border-radius:100px}.status-ok{background:var(--status-success-bg);color:var(--status-success-fg)}.status-draft{background:var(--bg-sunken);color:var(--text-tertiary)}.status-pending{background:var(--status-warning-bg);color:var(--status-warning-fg)}.status-error{background:var(--status-danger-bg);color:var(--status-danger-fg)}.pw-suggest-popup{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:400;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--elev-3);padding:16px;display:flex;flex-direction:column;gap:12px;animation:popup-in .15s ease}@keyframes popup-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.pw-suggest-header{display:flex;align-items:center;gap:10px}.pw-suggest-icon{font-size:1.5rem;flex-shrink:0}.pw-suggest-title{font-size:.9rem;font-weight:700;color:var(--text-primary);margin:0}.pw-suggest-desc{font-size:.75rem;color:var(--text-tertiary);margin:2px 0 0}.pw-suggest-value{display:block;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:1.05rem;font-weight:700;letter-spacing:2px;color:var(--text-brand);background:var(--brand-subtle);border-radius:var(--radius-md);padding:10px 14px;text-align:center;word-break:break-all}.pw-suggest-actions{display:flex;flex-direction:column;gap:8px}.pw-suggest-own{font-size:.8rem;color:var(--text-tertiary);font-family:inherit;text-align:center;padding:4px;transition:color .15s}.pw-suggest-own:hover{color:var(--text-primary);text-decoration:underline}.phone-wrapper{position:relative;display:flex;align-items:stretch;border:1.5px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);transition:border-color .15s,box-shadow .15s}.phone-wrapper:focus-within{border-color:var(--border-brand);box-shadow:0 0 0 3px var(--focus-ring)}.dial-selector{display:flex;align-items:center;gap:6px;padding:10px 12px;border-right:1.5px solid var(--border-default);background:var(--bg-canvas);border-radius:calc(var(--radius-md) - 2px) 0 0 calc(var(--radius-md) - 2px);color:var(--text-primary);flex-shrink:0;transition:background .15s;white-space:nowrap}.dial-selector:hover{background:var(--bg-sunken)}.dial-selector.open{background:var(--brand-subtle);border-right-color:var(--border-brand)}.dial-flag{font-size:1.25rem;line-height:1}.dial-code{font-weight:700;font-size:.875rem;color:var(--text-primary)}.dial-chevron{width:10px;height:10px;color:var(--text-tertiary);transition:transform .15s}.dial-selector.open .dial-chevron{transform:rotate(180deg)}.phone-number-input{border:none!important;outline:none!important;box-shadow:none!important;border-radius:0 calc(var(--radius-md) - 2px) calc(var(--radius-md) - 2px) 0!important;flex:1 1;min-width:0}.phone-number-input:focus{border-color:transparent!important;box-shadow:none!important}.dial-dropdown{position:absolute;top:calc(100% + 6px);left:0;z-index:300;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--elev-3);min-width:280px;max-width:320px;display:flex;flex-direction:column;overflow:hidden}.dial-search-wrapper{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border-default);background:var(--bg-canvas)}.dial-search-icon{width:16px;height:16px;color:var(--text-tertiary);flex-shrink:0}.dial-search{border:none!important;box-shadow:none!important;padding:0!important;background:transparent;font-size:.875rem;width:100%;color:var(--text-primary)}.dial-search:focus{border-color:transparent!important;box-shadow:none!important}.dial-search::placeholder{color:var(--text-tertiary)}.dial-list{list-style:none;max-height:260px;overflow-y:auto;padding:6px}.dial-option{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius-md);cursor:pointer;transition:background .1s;font-size:.9rem}.dial-option:hover{background:var(--bg-canvas)}.dial-option.selected{background:var(--brand-subtle)}.dial-option-flag{font-size:1.25rem;flex-shrink:0}.dial-option-name{flex:1 1;color:var(--text-primary);font-size:.875rem}.dial-option-code{color:var(--text-tertiary);font-size:.8rem;font-weight:600;white-space:nowrap}.dial-empty{padding:16px;text-align:center;color:var(--text-tertiary);font-size:.875rem}textarea{font-family:inherit;font-size:1rem;border:1.5px solid var(--border-default);border-radius:var(--radius-md);padding:10px 14px;width:100%;background:var(--bg-surface);color:var(--text-primary);resize:vertical;outline:none;transition:border-color .15s}textarea:focus{border-color:var(--border-brand);box-shadow:0 0 0 3px var(--focus-ring)}.info-banner{display:flex;align-items:flex-start;gap:14px;background:var(--status-info-bg);border:1px solid var(--status-info-border);padding:16px 20px}.info-banner-icon{font-size:1.4rem;flex-shrink:0}.info-banner strong{display:block;font-size:.9rem;margin-bottom:2px}.info-banner p{font-size:.8rem;color:var(--text-tertiary);margin:0}.page-loading{min-height:60vh}.boot-loading,.page-loading{display:flex;align-items:center;justify-content:center}.boot-loading{min-height:100vh;flex-direction:column;gap:18px;background:var(--bg-surface)}.boot-loading-enter{animation:boot-fade-in .5s ease-out both}.boot-loading-pulse{animation:boot-pulse 2.4s ease-in-out .5s infinite}@keyframes boot-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes boot-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}@media (prefers-reduced-motion:reduce){.boot-loading-enter,.boot-loading-pulse{animation:none}}.spinner{width:36px;height:36px;border:3px solid var(--border-default);border-top-color:var(--border-brand);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:860px){.nav-menu-btn{display:flex}.nav-categories{display:none}.hero{padding:60px var(--pad-x) 80px;min-height:70vh}.steps-grid{grid-template-columns:1fr;gap:24px}.provider-band-inner{display:flex;flex-direction:column;gap:32px}.provider-band-text{order:1}.provider-band-slider{order:2;width:min(380px,calc(100vw - 2 * var(--pad-x)));overflow:hidden;margin:0 auto}.provider-pro-phones{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:0}.provider-pro-phones::-webkit-scrollbar{display:none}.provider-pro-phone-img{flex-shrink:0;width:100%;height:auto;scroll-snap-align:start}.provider-band-inner>.provider-band-cta-row{order:3}.provider-band-inner>.provider-band-cta-row>:last-child{margin-left:auto}.provider-band-cta-row{flex-wrap:wrap}.provider-band-cta-row .btn-lg{font-size:.9rem;padding:11px 20px}.provider-band{overflow-x:hidden}.footer-cols{grid-template-columns:1fr 1fr;gap:32px 24px}.footer-brand-desc{max-width:100%}.section-split{flex-direction:column;gap:40px}.stats-grid{grid-template-columns:1fr 1fr}.cta-banner{gap:16px}.cta-banner,.footer-inner{flex-direction:column;align-items:flex-start}.footer-inner{gap:20px}.footer-nav,.search-bar{flex-wrap:wrap}.search-bar{border-radius:var(--radius-lg)}.search-divider{display:none}.search-cat-area .area-select__control{border-radius:var(--radius-lg) 0 0 0}.search-city-area .area-select__control{border-radius:0 var(--radius-lg) 0 0}.search-btn{width:100%;border-radius:0;padding:14px}.search-bar .search-btn{border-radius:0 0 var(--radius-lg) var(--radius-lg)}}@media (max-width:640px){:root{--pad-x:16px}.provider-band-cta-row{flex-direction:column;align-items:stretch;width:100%}.provider-band-inner>.provider-band-cta-row>:last-child{margin-left:0}.provider-band-cta-row .btn-ghost-inv,.provider-band-cta-row .btn-primary{width:100%;justify-content:center;font-size:1rem;padding:14px 20px}.hero{padding:48px var(--pad-x) 64px;min-height:60vh}.app-main{padding-top:24px;padding-bottom:56px;gap:20px}.search-cat-area,.search-city-area{flex:none;width:100%}.search-cat-area{border-bottom:1px solid var(--border-default)}.search-cat-area .area-select__control{border-radius:var(--radius-lg) var(--radius-lg) 0 0}.search-city-area .area-select__control{border-radius:0}.pro-subnav{overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.pro-subnav::-webkit-scrollbar{display:none}.field-row,.stats-grid{grid-template-columns:1fr}.page-header h1{font-size:1.375rem}.section-center-title,.section-inner>h2{margin-bottom:28px}.for-providers,.for-users,.how-it-works{padding-top:48px;padding-bottom:48px}.cta-banner{padding:20px}.detail-section{padding:16px}.section-toolbar,.service-manage-row{flex-wrap:wrap}.service-manage-actions{width:100%;justify-content:flex-end}.confirm-modal{padding:24px 16px 20px}.service-row{flex-wrap:wrap;gap:8px}.service-row-price{flex-direction:row;align-items:center;gap:12px}}@media (max-width:480px){.auth-card{padding:28px 20px}}.profile-selection-list{display:flex;flex-direction:column;gap:10px;margin:20px 0}.profile-selection-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--bg-surface);border:1.5px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s;width:100%}.profile-selection-card:hover:not(:disabled){border-color:var(--border-brand);box-shadow:0 0 0 3px var(--focus-ring)}.profile-selection-card:disabled{opacity:.6;cursor:not-allowed}.profile-selection-icon{font-size:24px;flex-shrink:0}.profile-selection-info{flex:1 1;display:flex;flex-direction:column;gap:2px}.profile-selection-info strong{font-size:15px;color:var(--text-primary)}.profile-selection-info span{font-size:13px;color:var(--text-tertiary)}.profile-selection-arrow{color:var(--text-brand);font-size:18px}.dropdown-role-badge{font-size:12px;color:var(--text-brand);font-weight:600}.dropdown-profiles-section{border-top:1px solid var(--border-default);padding:8px 0;margin:4px 0}.dropdown-section-label{font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;padding:4px 16px}.dropdown-profile-switch{display:flex;align-items:center;gap:10px;width:100%;padding:8px 16px;background:none;border:none;cursor:pointer;text-align:left;transition:background .12s;border-radius:0}.dropdown-profile-switch:hover{background:var(--bg-canvas)}.dropdown-profile-switch-info{flex:1 1;display:flex;flex-direction:column;gap:1px}.dropdown-profile-switch-info strong{font-size:13px;color:var(--text-primary)}.dropdown-profile-switch-info span{font-size:12px;color:var(--text-tertiary)}.dropdown-profile-switch-arrow{color:var(--text-tertiary);font-size:14px}.dropdown-verify-section{border-top:1px solid var(--border-default);padding:8px 0;margin:4px 0}.dropdown-verify-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 16px;background:none;border:none;cursor:pointer;text-align:left;transition:background .12s;border-radius:0;font-size:13px;font-weight:600;color:var(--status-warning-fg)}.dropdown-verify-item:hover{background:var(--status-warning-bg)}.dropdown-verify-icon{flex-shrink:0;color:var(--status-warning-fg)}.admin-main{max-width:1280px;margin:0 auto;padding:40px var(--pad-x) 80px;display:flex;flex-direction:column;gap:32px}.admin-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.admin-title{font-size:1.75rem;font-weight:700;letter-spacing:-.5px;margin:0 0 4px;color:var(--text-primary)}.admin-subtitle{color:var(--text-tertiary);font-size:.9rem;margin:0;line-height:1.5;max-width:60ch}@media (max-width:640px){.admin-main{padding:20px var(--pad-x) 56px;gap:24px}.admin-header{flex-direction:column;gap:10px}.admin-title{font-size:1.35rem}}.admin-shell{min-height:100vh;background:var(--bg-canvas)}.admin-shell-body{display:flex;align-items:flex-start}.admin-shell-main{flex:1 1;min-width:0}.admin-shell-main .admin-main{max-width:1280px}.admin-sidebar-menu-btn{display:none;flex-direction:column;justify-content:center;gap:4px;width:36px;height:36px;margin:10px 0 0 var(--pad-x);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer}.admin-sidebar-menu-btn span{display:block;height:2px;margin:0 7px;background:var(--text-primary);border-radius:2px}.admin-sidebar{width:240px;flex-shrink:0;min-height:calc(100vh - var(--nav-h));background:var(--bg-surface);border-right:1px solid var(--border-default);display:flex;flex-direction:column;padding:20px 0;position:-webkit-sticky;position:sticky;top:var(--nav-h)}.admin-sidebar--mobile{position:fixed;top:0;left:0;bottom:0;min-height:100vh;z-index:110;box-shadow:var(--elev-3)}.admin-sidebar-brand{padding:0 20px 16px;margin-bottom:8px;border-bottom:1px solid var(--border-default)}.admin-sidebar-nav{display:flex;flex-direction:column;gap:2px;padding:0 12px;flex:1 1}.admin-sidebar-link{display:flex;align-items:center;gap:10px;padding:10px 12px;border:none;background:none;border-radius:var(--radius-sm);color:var(--text-tertiary);font-size:.9rem;font-weight:500;text-align:left;cursor:pointer;transition:background .12s,color .12s}.admin-sidebar-link:hover{background:var(--bg-canvas);color:var(--text-primary)}.admin-sidebar-link.active{background:var(--brand-subtle);color:var(--text-brand);font-weight:600}.admin-sidebar-footer{padding:12px 12px 0;margin-top:12px;border-top:1px solid var(--border-default)}.admin-sidebar-user{display:flex;align-items:center;gap:10px;padding:8px 12px 14px}.admin-sidebar-user-initials{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:50%;background:var(--brand-subtle);color:var(--text-brand);font-size:.75rem;font-weight:700}.admin-sidebar-user-name{font-size:.85rem;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-sidebar-logout,.admin-sidebar-logout:hover{color:var(--status-danger-fg)}.admin-sidebar-logout:hover{background:var(--status-danger-bg)}.admin-sidebar-backdrop{position:fixed;inset:0;background:var(--bg-scrim);z-index:105}@media (max-width:900px){.admin-sidebar-menu-btn{display:flex}.admin-sidebar--desktop{display:none}}@media (min-width:901px){.admin-sidebar--mobile,.admin-sidebar-backdrop{display:none}}.section-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px}.filter-select{width:auto;flex-shrink:0;padding:8px 12px;border:1px solid var(--border-default);border-radius:var(--radius-sm);font-size:14px;color:var(--text-primary);background:var(--bg-surface);cursor:pointer}.admin-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px}.admin-filter-search{flex:1 1 220px;min-width:160px;padding:8px 12px;border:1px solid var(--border-default);border-radius:var(--radius-sm);font-size:14px;color:var(--text-primary);background:var(--bg-surface)}.admin-filter-search::placeholder{color:var(--text-tertiary)}@media (max-width:640px){.admin-filter-bar{flex-direction:column;align-items:stretch}.admin-filter-bar .admin-filter-search,.admin-filter-bar .filter-select{flex:0 0 auto;width:100%}}.admin-table-wrap{overflow-x:auto;border:1px solid var(--border-default);border-radius:var(--radius-md)}.admin-table{width:100%;border-collapse:collapse;font-size:14px}.admin-table th{padding:10px 14px;text-align:left;font-weight:600;color:var(--text-tertiary);background:var(--bg-canvas)}.admin-table td,.admin-table th{border-bottom:1px solid var(--border-default)}.admin-table td{padding:12px 14px;vertical-align:middle}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:var(--bg-canvas)}.text-sm{font-size:13px}.mono{font-family:ui-monospace,SF Mono,Cascadia Code,monospace}.role-badge{display:inline-block;padding:2px 8px;border-radius:99px;background:var(--brand-subtle);color:var(--text-brand);font-size:12px;font-weight:600}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:16px}.pagination-info{font-size:14px;color:var(--text-tertiary)}.btn-sm{font-size:13px;padding:6px 12px}.listing-page{min-height:calc(100vh - var(--nav-h));background:var(--bg-canvas)}.listing-header{background:transparent;padding:0}.listing-hero{position:relative;width:100%;height:338px;overflow:hidden;border-radius:0}.listing-hero-img{object-fit:cover}.listing-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,var(--photo-scrim-bottom) 0,var(--photo-scrim-top) 45%,rgba(0,0,0,.08) 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:24px 0 28px}.listing-hero-inner{max-width:var(--max-w);margin:0 auto;width:100%;padding:0 var(--pad-x)}.listing-hero-overlay .listing-header-inner{margin:0;width:100%}.listing-hero-overlay .listing-breadcrumb{color:var(--text-on-photo-muted)}.listing-hero-overlay .listing-breadcrumb:hover{color:var(--text-on-photo)}.listing-hero-overlay .listing-breadcrumb-sep{color:var(--text-on-photo-muted)}.listing-hero-overlay .listing-breadcrumb-current{color:var(--text-on-photo)}.listing-hero-overlay .listing-title{margin:8px 0 0;color:var(--text-on-photo)}.listing-header-sub{background:var(--bg-surface);border-bottom:1px solid var(--border-default);padding:20px var(--pad-x) 24px}.listing-header-inner,.listing-header-sub .listing-count,.listing-header-sub .listing-location-line,.listing-header-sub .listing-subtitle{max-width:var(--max-w);margin-left:auto;margin-right:auto}.listing-header-inner{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-bottom:12px}.listing-breadcrumb{font-size:.8125rem;color:var(--text-tertiary);text-decoration:none;white-space:nowrap;transition:color .15s}.listing-breadcrumb:hover{color:var(--text-brand)}.listing-breadcrumb-sep{display:flex;align-items:center;color:var(--text-tertiary);flex-shrink:0}.listing-breadcrumb-current{font-size:.8125rem;color:var(--text-primary);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px}@media (max-width:480px){.listing-breadcrumb-current{max-width:140px}}.listing-title{font-size:1.75rem;font-weight:700;color:var(--text-primary);max-width:var(--max-w);margin:0 auto 8px}.listing-subtitle{font-size:.9375rem;color:var(--text-tertiary);max-width:var(--max-w);margin:0 auto 6px}.listing-count{font-size:.875rem;margin:0 auto}.listing-count,.listing-location-line{color:var(--text-brand);font-weight:600;max-width:var(--max-w)}.listing-location-line{display:flex;align-items:center;gap:5px;font-size:.9375rem;margin:0 auto 6px}@media (max-width:640px){.listing-hero{height:260px}}.category-city-filter{max-width:var(--max-w);margin:16px auto 0}.category-city-filter-inner{display:flex;align-items:center;background:var(--bg-surface);border:1.5px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--elev-2);max-width:660px}.category-city-filter-search{flex:1.3 1;min-width:0}.category-city-filter-loc{flex:1 1;min-width:0}.category-city-filter-divider{width:1px;align-self:stretch;background:var(--border-default);flex-shrink:0}.category-city-filter-inner .area-select{flex:1 1;min-width:0}.category-city-filter-inner .area-select__control{border:none;border-radius:0;background:transparent;box-shadow:none}.category-city-filter-search .area-select__control{border-radius:var(--radius-xl) 0 0 var(--radius-xl)}.category-city-filter-inner .area-select--open .area-select__control{box-shadow:none;border-color:transparent}.category-city-filter-inner .area-select__dropdown{border-radius:var(--radius-md)}.category-city-filter-inner .search-btn{border-radius:0 var(--radius-xl) var(--radius-xl) 0}@media (max-width:860px){.category-city-filter-inner{flex-wrap:wrap;padding:6px;background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.category-city-filter-loc,.category-city-filter-search{flex:1 1 100%}.category-city-filter-loc{border-top:1px solid var(--border-subtle)}.category-city-filter-divider{display:none}.category-city-filter-loc .area-select__control,.category-city-filter-search .area-select__control{border-radius:var(--radius-md)}.category-city-filter-inner .search-btn{width:100%;min-height:48px;margin-top:6px;border-radius:var(--radius-md)}}.listing-body{max-width:var(--max-w);margin:0 auto;padding:32px var(--pad-x)}.providers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:16px;gap:16px}.listing-pro-cta{border-top:1px solid var(--border-default);background:var(--bg-canvas);padding:24px var(--pad-x);text-align:center;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}.listing-pro-cta p{margin:0;font-size:.9375rem;color:var(--text-tertiary)}.provider-card{display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);text-decoration:none;color:inherit;overflow:hidden;transition:box-shadow .2s,border-color .2s,transform .15s}.provider-card:hover{box-shadow:var(--elev-3);border-color:var(--brand-subtle);transform:translateY(-3px)}.provider-card-gallery{position:relative;aspect-ratio:4/3;background:var(--brand-subtle);overflow:hidden;flex-shrink:0}.provider-card-gallery-img{object-fit:cover;opacity:0;transition:transform .3s ease,opacity .25s ease}.provider-card-gallery-img.is-loaded{opacity:1}.provider-card:hover .provider-card-gallery-img{transform:scale(1.04)}.provider-card-gallery-abbr{inset:0;font-size:3rem;font-weight:700;color:var(--text-brand);background:linear-gradient(135deg,var(--brand-subtle) 0,var(--brand-subtle) 100%);-webkit-user-select:none;-moz-user-select:none;user-select:none}.provider-card-gallery-abbr,.provider-card-gallery-nav{position:absolute;display:flex;align-items:center;justify-content:center}.provider-card-gallery-nav{top:50%;transform:translateY(-50%);background:color-mix(in srgb,var(--bg-surface) 90%,transparent);border:none;border-radius:50%;width:34px;height:34px;cursor:pointer;color:var(--text-primary);opacity:0;transition:opacity .15s,background .15s,transform .15s;z-index:2;box-shadow:var(--elev-2)}.provider-card:hover .provider-card-gallery-nav{opacity:1}.provider-card-gallery-nav:hover{background:var(--bg-surface);transform:translateY(-50%) scale(1.1)}.provider-card-gallery-nav.prev{left:8px}.provider-card-gallery-nav.next{right:8px}.provider-card-gallery-dots{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:5px;z-index:2}.provider-card-gallery-dot{width:6px;height:6px;border-radius:50%;background:var(--glass-border);transition:background .2s,transform .2s}.provider-card-gallery-dot.active{background:var(--text-on-photo);transform:scale(1.3)}.provider-card-gallery-count{position:absolute;top:10px;right:10px;background:var(--photo-scrim-top);color:var(--text-on-photo);font-size:.6875rem;font-weight:600;border-radius:20px;padding:2px 8px;z-index:2;letter-spacing:.02em}.provider-card-fav-btn{position:absolute;top:8px;left:8px;width:32px;height:32px;border-radius:50%;border:none;background:color-mix(in srgb,var(--bg-surface) 88%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;color:var(--text-secondary);box-shadow:var(--elev-1);z-index:5;padding:0;line-height:1;transition:background .15s,color .15s,transform .15s}.provider-card-fav-btn:hover:not(:disabled){transform:scale(1.1)}.provider-card-fav-btn.is-fav,.provider-card-fav-btn:hover:not(:disabled){background:var(--bg-surface);color:var(--status-danger-fg)}.provider-card-fav-btn:disabled{opacity:.55;cursor:default}.detail-fav-btn{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--border-default);background:var(--bg-surface);cursor:pointer;font-size:1.15rem;color:var(--text-tertiary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:0;line-height:1;transition:border-color .15s,color .15s}.detail-fav-btn.is-fav,.detail-fav-btn:hover:not(:disabled){border-color:var(--status-danger-fg);color:var(--status-danger-fg)}.detail-fav-btn:disabled{opacity:.55;cursor:default}.provider-card-body{min-width:0;display:flex;flex-direction:column;gap:5px;padding:14px 16px 16px;flex:1 1}.provider-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.provider-card-name{font-size:.9375rem;font-weight:700;color:var(--text-primary);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.3}@media (max-width:480px){.provider-card-name{font-size:.875rem}}.provider-card-rating{display:inline-flex;align-items:center;gap:3px;font-size:.8125rem;font-weight:600;color:var(--text-primary);white-space:nowrap;flex-shrink:0}.provider-card-rating svg{color:var(--accent-star)}.provider-card-cat{display:inline-block;font-size:.75rem;font-weight:600;background:var(--brand-subtle);color:var(--text-brand);border-radius:var(--radius-sm);padding:2px 8px;width:-moz-fit-content;width:fit-content}.city-tag{font-size:.8rem}.city-tag,.provider-card-location{display:inline-flex;align-items:center;gap:3px;color:var(--text-tertiary)}.provider-card-location{font-size:.8125rem;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.provider-card-desc{font-size:.8125rem;color:var(--text-tertiary);margin:2px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.provider-card-cta{display:inline-flex;align-items:center;gap:4px;font-size:.8125rem;font-weight:600;color:var(--text-brand)}.listing-count-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.sort-filter-wrap{position:relative;flex-shrink:0}.sort-filter-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1.5px solid var(--border-default);border-radius:20px;background:var(--bg-surface);color:var(--text-primary);font-size:.8125rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:border-color .15s,background .15s,color .15s}.sort-filter-btn--active,.sort-filter-btn:hover{border-color:var(--border-brand);background:var(--brand-subtle);color:var(--text-brand)}.sort-filter-btn--active{font-weight:600}.sort-filter-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:9px;background:var(--brand-fill);color:var(--text-on-brand);font-size:.6875rem;font-weight:700;padding:0 4px;line-height:1}@media (min-width:560px){.sort-modal-backdrop{background:transparent}.sort-modal{position:absolute;bottom:auto;top:calc(100% + 8px);left:auto;right:0;width:400px;max-width:400px;margin:0;border-radius:var(--radius-lg);box-shadow:var(--elev-3);animation:fadeIn .12s ease;max-height:82vh}}.sort-price-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:5px;background:linear-gradient(to right,var(--brand-fill) var(--track-fill,100%),var(--border-default) var(--track-fill,100%));border-radius:3px;outline:none;cursor:pointer;display:block}.sort-price-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--text-on-photo);border:2.5px solid var(--border-brand);cursor:pointer;box-shadow:var(--elev-2);-webkit-transition:transform .1s;transition:transform .1s}.sort-price-range::-webkit-slider-thumb:active{transform:scale(1.15)}.sort-price-range::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--text-on-photo);border:2.5px solid var(--border-brand);cursor:pointer;box-shadow:var(--elev-2)}.sort-price-ticks{display:flex;justify-content:space-between;margin-top:6px;font-size:.75rem;color:var(--text-tertiary)}.detail-page{min-height:calc(100vh - var(--nav-h))}.detail-hero{position:relative;width:100%;height:340px;overflow:hidden}.detail-hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.05) 0,var(--photo-scrim-top) 55%,var(--photo-scrim-bottom) 100%);display:flex;flex-direction:column;justify-content:flex-end}.detail-hero-name{font-size:1.75rem;font-weight:700;color:var(--text-on-photo);text-shadow:0 1px 6px rgba(0,0,0,.4);margin:0}.detail-hero-cat{background:var(--glass-fill);border:1px solid var(--glass-border);color:var(--text-on-photo);border-radius:100px;padding:3px 10px;font-size:.75rem;font-weight:600}.detail-hero .detail-fav-btn{background:var(--photo-scrim-top);border-color:var(--glass-border);color:var(--text-on-photo)}.detail-hero .detail-fav-btn.is-fav,.detail-hero .detail-fav-btn:hover:not(:disabled){background:var(--photo-scrim-top);border-color:var(--status-danger-fg);color:var(--status-danger-fg)}.detail-share-btn{position:absolute;top:14px;right:14px;z-index:5;width:38px;height:38px;border-radius:50%;background:var(--photo-scrim-top);border:1.5px solid var(--glass-border);color:var(--text-on-photo);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,border-color .15s}.detail-share-btn:hover{background:var(--photo-scrim-top);border-color:var(--glass-border)}.detail-share-btn:active{transform:scale(.93)}.detail-description{font-size:.9375rem;color:var(--text-tertiary);line-height:1.6;max-width:var(--max-w);margin:20px auto 0;padding:0 var(--pad-x)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.detail-body{max-width:var(--max-w);margin:0 auto;padding:32px var(--pad-x);display:grid;grid-template-columns:1fr 320px;grid-gap:32px;gap:32px;align-items:start}.detail-main{display:flex;flex-direction:column;gap:32px;min-width:0}.detail-section{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:24px}.detail-section-title{font-size:1.125rem;font-weight:700;margin:0 0 16px;color:var(--text-primary)}.services-list{display:flex;flex-direction:column;gap:1px}.service-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--border-default)}.service-row:last-child{border-bottom:none}.service-row-info{flex:1 1;display:flex;flex-direction:column;gap:4px}.service-name{font-weight:600;font-size:.9375rem;color:var(--text-primary)}.service-desc{font-size:.8125rem;color:var(--text-tertiary)}.service-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin-top:2px}.service-duration{font-size:.8125rem;color:var(--text-tertiary)}.service-badge{font-size:.75rem;background:var(--status-success-bg);color:var(--status-success-fg);border-radius:var(--radius-sm);padding:2px 6px}.service-row-price{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}.service-price{font-weight:700;font-size:.9375rem;color:var(--text-primary);white-space:nowrap}.service-book-btn{font-size:.8125rem;padding:6px 12px}.detail-aside{display:flex;flex-direction:column;gap:16px;position:-webkit-sticky;position:sticky;top:calc(var(--nav-h) + 16px);min-width:0}.detail-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:20px}.hours-list{display:flex;flex-direction:column;gap:8px}.hours-row{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.hours-day{color:var(--text-tertiary);width:90px;flex-shrink:0}.hours-value{font-weight:500;color:var(--text-primary)}.hours-closed{color:var(--text-tertiary);font-weight:400}.slots-widget{display:flex;flex-direction:column;gap:16px}.slots-days{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.slots-days::-webkit-scrollbar{display:none}.slots-day-btn{flex-shrink:0;padding:6px 12px;border:1.5px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:.8125rem;cursor:pointer;white-space:nowrap;color:var(--text-tertiary);transition:border-color .12s,color .12s,background .12s}.slots-day-btn.active,.slots-day-btn:hover{border-color:var(--border-brand);color:var(--text-brand)}.slots-day-btn.active{background:var(--brand-subtle);font-weight:600}.slots-grid{display:flex;flex-wrap:wrap;gap:8px;min-height:56px}.slots-loading{display:flex;align-items:center;padding:8px 0}.slots-empty{font-size:.875rem;color:var(--text-tertiary);margin:0;padding:8px 0}.slot-btn{padding:8px 14px;border:1.5px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:.875rem;font-weight:500;cursor:pointer;transition:border-color .12s,background .12s,color .12s}.slot-btn:hover:not(:disabled){border-color:var(--border-brand);color:var(--text-brand)}.slot-btn.selected{border-color:var(--border-brand);background:var(--brand-fill);color:var(--text-on-brand)}.slot-btn.unavailable{background:var(--bg-canvas);color:var(--border-default);cursor:not-allowed;text-decoration:line-through}.slots-confirm{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--brand-subtle);border-radius:var(--radius-md);flex-wrap:wrap}.slots-confirm-recap{margin:0;font-size:.9rem;color:var(--text-brand);flex:1 1}@media (max-width:860px){.categories-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:640px){.categories-grid{display:flex;flex-direction:row;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:12px;padding-bottom:8px}.categories-grid::-webkit-scrollbar{display:none}.category-card{flex-shrink:0;width:calc(100vw - 2 * var(--pad-x));aspect-ratio:4/3;scroll-snap-align:start;border-radius:var(--radius-lg)}.category-card-label{font-size:.875rem}.footer-cols{grid-template-columns:1fr;gap:36px;padding-bottom:32px}.footer-store-btns{flex-direction:row;flex-wrap:wrap}.footer-bottom{flex-direction:column;align-items:flex-start;gap:12px}.how-phones{display:flex;flex-direction:row;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:0;width:min(380px,calc(100vw - 2 * var(--pad-x)));margin:0 auto;padding-bottom:8px}.how-phones::-webkit-scrollbar{display:none}.how-phone-step{flex-shrink:0;width:min(380px,calc(100vw - 2 * var(--pad-x)));scroll-snap-align:start}.how-phone-img{height:auto}}.pro-subnav{display:flex;justify-content:space-evenly;gap:4px;border-bottom:2px solid var(--border-default);margin-bottom:4px}.pro-subnav-link{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;font-size:clamp(.9rem,.6vw + .75rem,1.15rem);color:var(--text-tertiary);border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .12s,border-color .12s;white-space:nowrap}.pro-subnav-link,.pro-subnav-link:hover{text-decoration:none}.pro-subnav-link.active{color:var(--text-brand);border-bottom-color:var(--border-brand)}@media (max-width:640px){.pro-subnav-link{flex:1 0 auto;justify-content:center;text-align:center;padding:10px 6px;font-size:.75rem}.pro-subnav-link--desktop{display:none}}.services-manage-list{display:flex;flex-direction:column;gap:8px}.service-manage-row{display:flex;align-items:center;gap:16px;padding:14px 16px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);transition:box-shadow .15s}.service-manage-row:hover{box-shadow:var(--elev-2)}.service-manage-inactive{opacity:.65;background:var(--bg-canvas)}.service-manage-info{flex:1 1;min-width:0}.service-manage-actions{flex-shrink:0;display:flex;align-items:center;gap:8px}.service-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.service-inactive-badge{font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary);background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:100px;padding:2px 8px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.875rem;font-weight:600;color:var(--text-primary)}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:9px 20px;border-radius:var(--radius-md);font-size:.9375rem;font-weight:600;background:var(--status-danger-solid);color:var(--status-danger-on-solid);border:none;cursor:pointer;transition:opacity .15s}.btn-danger:hover:not(:disabled){opacity:.88}.btn-danger:disabled{opacity:.5;cursor:default}.confirm-modal-overlay{position:fixed;inset:0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:500;display:flex;align-items:center;justify-content:center;padding:var(--pad-x);animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.confirm-modal{background:var(--bg-surface);border-radius:var(--radius-xl);padding:32px 28px 24px;max-width:400px;width:100%;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;box-shadow:var(--elev-3);animation:scaleIn .18s cubic-bezier(.34,1.56,.64,1)}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.confirm-modal-icon{font-size:2.25rem;line-height:1}.confirm-modal-title{font-size:1.125rem;font-weight:700;color:var(--text-primary);margin:0}.confirm-modal-body{font-size:.9375rem;color:var(--text-tertiary);line-height:1.55;margin:0}.confirm-modal-actions{display:flex;gap:10px;width:100%;margin-top:8px}.confirm-modal-actions>*{flex:1 1;justify-content:center}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.alert-modal{background:var(--bg-surface);border-radius:var(--radius-xl);max-width:380px;width:100%;overflow:hidden;box-shadow:var(--elev-3);animation:scaleIn .18s cubic-bezier(.34,1.56,.64,1)}.alert-modal-header{display:flex;flex-direction:column;align-items:center;gap:10px;padding:36px 24px 28px}.alert-modal-header-permission{background:linear-gradient(135deg,var(--status-warning-solid),var(--status-warning-solid))}.alert-modal-header-error{background:linear-gradient(135deg,var(--status-danger-solid),var(--status-danger-solid))}.alert-modal-header-warning{background:linear-gradient(135deg,var(--status-warning-solid),var(--status-warning-solid))}.alert-modal-header-info{background:var(--status-info-solid)}.alert-modal-close{top:10px;background:var(--glass-fill);border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--text-on-photo);font-size:.75rem;cursor:pointer;transition:background .15s;line-height:1}.alert-modal-close:hover{background:var(--glass-border)}.alert-modal-icon{font-size:2.5rem;line-height:1}.alert-modal-title{font-size:1.0625rem;font-weight:700;color:var(--text-on-photo)}.alert-modal-body{padding:24px 28px 8px}.alert-modal-body p{font-size:.9375rem;color:var(--text-tertiary);line-height:1.6;margin:0}.alert-modal-footer{padding:16px 28px 28px;display:flex;justify-content:center}.alert-modal-footer .btn-primary{min-width:140px;justify-content:center}.verif-stepper{gap:0;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:20px 24px}.verif-step,.verif-stepper{display:flex;align-items:center}.verif-step{flex-direction:column;gap:6px;position:relative;flex:1 1}.verif-step-dot{width:32px;height:32px;border-radius:50%;border:2px solid var(--border-default);background:var(--bg-surface);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:var(--text-tertiary);z-index:1;transition:all .2s}.verif-step-done .verif-step-dot{background:var(--status-success-solid);border-color:var(--status-success-fg);color:var(--text-on-photo)}.verif-step-current .verif-step-dot{border-color:var(--border-brand);background:var(--brand-subtle);color:var(--text-brand);box-shadow:0 0 0 4px var(--focus-ring)}.verif-step-rejected .verif-step-dot{background:var(--status-danger-solid);border-color:var(--status-danger-fg);color:var(--text-on-photo)}.verif-step-label{font-size:.75rem;font-weight:500;color:var(--text-tertiary);text-align:center;white-space:nowrap}.verif-step-current .verif-step-label,.verif-step-done .verif-step-label{color:var(--text-primary);font-weight:600}.verif-step-line{position:absolute;top:15px;left:calc(50% + 16px);right:calc(-50% + 16px);height:2px;background:var(--border-default);z-index:0}.verif-step-line-done{background:var(--status-success-solid)}.info-banner-error{background:var(--status-danger-bg);border-color:var(--status-danger-border)}.info-banner-error p,.info-banner-error strong{color:var(--status-danger-fg)}.info-banner-success{background:var(--status-success-bg);border-color:var(--status-success-border)}.info-banner-success p,.info-banner-success strong{color:var(--status-success-fg)}.info-banner-warning{background:var(--status-warning-bg);border-color:var(--status-warning-border)}.info-banner-warning p,.info-banner-warning strong{color:var(--status-warning-fg)}.provider-verif-steps{display:flex;align-items:center;gap:6px;flex-shrink:0}.admin-verif-dot{width:12px;height:12px;border-radius:50%;background:var(--border-default);border:2px solid var(--border-default);transition:all .15s;position:relative}.admin-verif-dot+.admin-verif-dot:before{content:"";position:absolute;left:-8px;top:3px;width:6px;height:2px;background:var(--border-default)}.admin-verif-dot.done{border-color:var(--status-success-fg)}.admin-verif-dot.done,.admin-verif-dot.done+.admin-verif-dot:before{background:var(--status-success-solid)}.admin-verif-dot.current{background:var(--brand-fill);border-color:var(--border-brand);box-shadow:0 0 0 3px var(--focus-ring)}.admin-verif-dot.rejected{background:var(--status-danger-solid);border-color:var(--status-danger-fg)}.admin-detail-breadcrumb{display:flex;align-items:center;gap:8px;font-size:.875rem;color:var(--text-tertiary);margin-bottom:20px}.admin-detail-back{display:inline-flex;align-items:center;gap:4px;color:var(--text-brand);font-weight:500;text-decoration:none}.admin-detail-back:hover{text-decoration:underline}.admin-detail-sep{color:var(--border-default)}.admin-detail-identity-card{display:flex;align-items:flex-start;gap:20px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:24px 28px;margin-bottom:20px}.admin-detail-avatar{width:64px;height:64px;border-radius:50%;background:var(--brand-subtle);color:var(--text-brand);font-size:1.25rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:-.5px}.admin-detail-identity-body{flex:1 1;min-width:0}.admin-detail-name-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:8px}.admin-provider-hero{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border-default);background:var(--bg-surface)}.admin-provider-hero-cover{position:relative;height:240px}.admin-provider-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,var(--photo-scrim-bottom) 0,rgba(0,0,0,.18) 55%,transparent 100%);display:flex;flex-direction:row;align-items:flex-end;gap:16px;padding:20px 24px}.admin-provider-hero-avatar{width:64px;height:64px;border-radius:50%;overflow:hidden;position:relative;border:3px solid var(--glass-border);flex-shrink:0}.admin-provider-hero-fallback{display:flex;align-items:flex-start;gap:20px;padding:24px 28px}.admin-provider-hero-initials{width:64px;height:64px;border-radius:50%;background:var(--brand-subtle);color:var(--text-brand);font-size:1.25rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:-.5px}.admin-provider-hero-info{flex:1 1;min-width:0}.admin-provider-hero-name-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}.admin-provider-hero-name{font-size:1.375rem;font-weight:700;color:var(--text-on-photo);margin:0;text-shadow:0 1px 4px rgba(0,0,0,.5)}.admin-provider-hero-name-dark{color:var(--text-primary);text-shadow:none}.admin-provider-hero-meta{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.8125rem;color:var(--text-on-photo-muted)}.admin-provider-hero-meta-dark{color:var(--text-tertiary)}.admin-provider-gallery-strip{display:flex;gap:3px;height:80px;border-top:1px solid var(--border-default);overflow:hidden}.admin-provider-gallery-thumb{flex:1 1;position:relative;min-width:0;background:var(--bg-canvas)}.admin-provider-gallery-more{flex-shrink:0;width:80px;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700;color:var(--text-brand);background:var(--bg-canvas);cursor:pointer;border:none;border-left:1px solid var(--border-default);transition:background .15s,color .15s}.admin-provider-gallery-more:hover{background:var(--brand-subtle)}.admin-provider-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:3px;gap:3px;border-top:1px solid var(--border-default);padding-bottom:8px}.admin-provider-gallery-grid-thumb{position:relative;aspect-ratio:1;background:var(--bg-canvas)}.admin-provider-gallery-collapse{grid-column:1/-1;padding:8px;font-size:.8rem;color:var(--text-tertiary);background:none;border:none;cursor:pointer;text-align:center}.admin-provider-gallery-collapse:hover{color:var(--text-brand)}.admin-provider-cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin-top:8px}@media (max-width:900px){.admin-provider-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.admin-provider-cards{grid-template-columns:1fr}}.admin-provider-card{display:block;text-decoration:none;color:inherit;border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-surface);transition:box-shadow .15s,transform .12s}.admin-provider-card:hover{box-shadow:var(--elev-2);transform:translateY(-2px)}.admin-provider-card-cover{position:relative;height:140px;background:var(--bg-canvas)}.admin-provider-card-initials{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:var(--text-brand);background:var(--brand-subtle)}.admin-provider-card-status-group{position:absolute;top:10px;left:10px;right:10px;display:flex;flex-direction:row;flex-wrap:wrap;gap:6px;justify-content:flex-end}.admin-provider-card-body{padding:14px 16px;display:flex;flex-direction:column;gap:4px}.admin-provider-card-title{font-weight:600;font-size:.95rem;color:var(--text-primary)}.admin-provider-card-meta{font-size:.8rem;color:var(--text-tertiary);margin-bottom:6px}.admin-provider-card-cta{display:flex;align-items:center;gap:4px;font-size:.8rem;color:var(--text-brand);font-weight:600;margin-top:6px}.admin-detail-name{font-size:1.375rem;font-weight:700;letter-spacing:-.3px;margin:0}.admin-detail-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:.875rem;color:var(--text-primary)}.admin-detail-section{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:24px;margin-bottom:16px}.admin-detail-section-title{font-size:.9375rem;font-weight:700;margin-bottom:16px;display:flex;align-items:center;gap:10px}.admin-detail-count{font-size:.8125rem;font-weight:500;color:var(--text-tertiary)}.admin-detail-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-detail-description{font-size:.9rem;line-height:1.65;color:var(--text-primary);margin-bottom:16px}.admin-detail-fields{display:flex;flex-direction:column;gap:10px}.admin-detail-field{display:flex;gap:12px;font-size:.875rem}.admin-detail-field-label{min-width:120px;font-weight:600;color:var(--text-tertiary);flex-shrink:0}.admin-detail-body{display:grid;grid-template-columns:1fr 280px;grid-gap:16px;gap:16px;align-items:start}.admin-detail-main{min-width:0}.admin-detail-aside{position:-webkit-sticky;position:sticky;top:calc(var(--nav-h) + 16px)}.admin-services-list{display:flex;flex-direction:column;gap:0}.admin-service-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--border-default)}.admin-service-row:last-child{border-bottom:none}.admin-service-inactive{opacity:.5}.admin-service-info{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1 1;min-width:0}.admin-service-pricing{display:flex;align-items:center;gap:12px;flex-shrink:0;font-size:.875rem}.setup-welcome-banner{display:flex;align-items:flex-start;gap:14px;padding:20px 24px;background:linear-gradient(135deg,var(--brand-subtle) 0,var(--brand-subtle) 100%);border:1px solid var(--brand-subtle-hover);border-radius:var(--radius-lg)}.setup-welcome-icon{font-size:1.75rem;flex-shrink:0;line-height:1}.setup-welcome-body strong{display:block;font-size:1rem;font-weight:700;color:var(--text-brand);margin-bottom:4px}.setup-welcome-body p{font-size:.875rem;color:var(--text-brand);line-height:1.5}.page-header-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:4px}@media (max-width:860px){.admin-detail-body{grid-template-columns:1fr}.admin-detail-aside{position:static}.admin-detail-identity-card{flex-direction:column;align-items:flex-start}.detail-body{grid-template-columns:minmax(0,1fr)}.detail-aside{position:static}.providers-grid{grid-template-columns:1fr}.listing-title{font-size:1.375rem}.listing-pro-cta{flex-direction:column;text-align:center}.form-row-2,.pro-quicklinks{grid-template-columns:1fr}.hours-edit-row{flex-wrap:wrap;gap:10px}.hours-edit-day{width:90px}.hours-edit-times{width:100%}.hours-time-input{width:100px}}@media (max-width:640px){.listing-title{font-size:1.1rem}.detail-hero{height:260px}.detail-hero-name{font-size:1.25rem}.detail-body{padding:20px var(--pad-x) 40px;gap:16px}.detail-main{gap:16px}.detail-aside{gap:12px}.detail-card,.detail-section{padding:16px;border-radius:var(--radius-md)}.detail-card-title,.detail-section-title{margin-bottom:12px}.service-row{flex-direction:column;gap:10px}.service-row-price{flex-direction:row;align-items:center;justify-content:space-between;width:100%}.service-book-btn{flex-shrink:0}}.app-banner{position:fixed;bottom:0;left:0;right:0;z-index:9000;transform:translateY(110%);transition:transform .38s cubic-bezier(.32,.72,0,1);background:var(--bg-canvas);border-radius:20px 20px 0 0;box-shadow:var(--elev-3);display:none}@media (max-width:640px){.app-banner{display:block}}.app-banner--visible{transform:translateY(0)}.app-banner-inner{padding:10px 20px 32px;display:flex;flex-direction:column;gap:16px}.app-banner-grip{width:36px;height:4px;border-radius:2px;background:var(--border-default);margin:0 auto}.app-banner-head{display:flex;align-items:flex-start;gap:12px}.app-banner-icon{width:50px;height:50px;border-radius:14px;background:var(--brand-fill);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.5rem;font-weight:700;color:var(--text-on-brand);letter-spacing:-1px}.app-banner-text{flex:1 1;min-width:0}.app-banner-title{font-size:.9375rem;font-weight:700;color:var(--text-primary);margin:0 0 4px;line-height:1.3}.app-banner-sub{font-size:.8125rem;color:var(--text-tertiary);margin:0;line-height:1.4}.app-banner-close{width:28px;height:28px;border-radius:50%;border:none;background:var(--border-default);color:var(--text-tertiary);font-size:.875rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0;transition:background .15s}.app-banner-close:hover{background:var(--bg-sunken)}.app-banner-actions{display:flex;gap:10px;align-items:stretch}.app-banner-web-btn{flex:1 1;padding:12px 10px;border-radius:12px;border:1.5px solid var(--border-default);background:transparent;color:var(--text-tertiary);font-size:.8125rem;font-weight:500;cursor:pointer;text-align:center;transition:border-color .15s}.app-banner-web-btn:hover{border-color:var(--border-strong)}.app-banner-app-btn{flex:1.5 1;padding:12px 10px;border-radius:12px;border:none;background:var(--brand-fill);color:var(--text-on-brand);font-size:.9rem;font-weight:700;cursor:pointer;text-align:center;box-shadow:var(--elev-2);transition:background .15s,box-shadow .15s}.app-banner-app-btn:hover{background:var(--brand-hover);box-shadow:var(--elev-2)}.address-suggestions{position:absolute;top:100%;left:0;right:0;background:var(--bg-surface);border:1.5px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--elev-2);z-index:100;list-style:none;margin:4px 0 0;padding:4px 0;max-height:240px;overflow-y:auto}.address-suggestion-item{display:flex;flex-direction:column;gap:2px;padding:8px 14px;cursor:pointer;transition:background .12s}.address-suggestion-item:hover{background:var(--bg-canvas)}.address-suggestion-main{font-size:14px;color:var(--text-primary);font-weight:500}.address-suggestion-sub,.btn-ghost-sm{font-size:12px;color:var(--text-tertiary)}.btn-ghost-sm{background:none;border:1.5px solid var(--border-default);border-radius:var(--radius-sm);padding:3px 10px;cursor:pointer;font-weight:500;white-space:nowrap;transition:border-color .15s,color .15s}.btn-ghost-sm:hover{border-color:var(--border-brand);color:var(--text-brand);text-decoration:none}.btn-ghost-sm:disabled{opacity:.55;cursor:default}.area-select{position:relative;width:100%}.area-select__control{display:flex;align-items:center;border:1.5px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);transition:border-color .15s,box-shadow .15s;cursor:text}.area-select--open .area-select__control{border-color:var(--border-brand);box-shadow:0 0 0 3px var(--focus-ring)}.area-select--disabled .area-select__control{background:var(--bg-canvas);cursor:not-allowed;opacity:.6}.area-select__input{flex:1 1;min-height:44px;border:none;background:transparent;padding:0 10px 0 14px;font-size:.9375rem;color:var(--text-primary);outline:none;cursor:inherit;min-width:0}.area-select__input:focus{box-shadow:none;border-color:transparent}.area-select__input:disabled{cursor:not-allowed}.area-select__clear{width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:var(--text-tertiary);background:none;border:none;border-radius:50%;cursor:pointer;flex-shrink:0;padding:0;line-height:1;transition:color .12s,background .12s}.area-select__clear:hover{color:var(--text-primary);background:var(--bg-canvas)}.area-select__chevron{padding:0 12px 0 4px;font-size:.8rem;color:var(--text-tertiary);flex-shrink:0;pointer-events:none;transition:transform .15s}.area-select__dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-surface);border:1.5px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--elev-3);z-index:200;list-style:none;margin:0;padding:4px 0;max-height:260px;overflow-y:auto}.area-select__option{display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:9px 14px;font-size:.9375rem;color:var(--text-primary);cursor:pointer;transition:background .1s;text-align:left}.area-select__option:hover{background:var(--bg-canvas)}.area-select__option--selected{background:var(--brand-subtle);color:var(--text-brand);font-weight:600}.area-select__option--selected:hover{background:var(--brand-subtle)}.area-select__tick{font-size:.8rem;color:var(--text-brand);font-weight:700;margin-left:auto;flex-shrink:0}.area-select__empty{padding:12px 14px;font-size:.875rem;color:var(--text-tertiary);text-align:center}.area-select__selected-icon{width:26px;height:26px;border-radius:5px;object-fit:cover;flex-shrink:0;margin-left:10px}.area-select__input--with-icon{padding-left:6px}.area-select__option-icon{width:30px;height:30px;border-radius:6px;object-fit:cover;flex-shrink:0}.area-select__option-label{flex:1 1;min-width:0}@media (max-width:640px){.area-select__dropdown{max-height:min(50vh,380px)}.area-select__option{padding:12px 16px}}.btn-blue,.btn-gray,.btn-green,.btn-orange{border-radius:var(--radius-sm);font-weight:600;font-size:.8125rem;padding:6px 14px;border-width:1.5px;border-style:solid;cursor:pointer;transition:background .12s,color .12s,border-color .12s;white-space:nowrap}.btn-blue:disabled,.btn-gray:disabled,.btn-green:disabled,.btn-orange:disabled{opacity:.5;cursor:not-allowed}.btn-blue{background:var(--status-info-bg);color:var(--status-info-fg);border-color:var(--status-info-border)}.btn-orange{background:var(--status-warning-bg);color:var(--status-warning-fg);border-color:var(--status-warning-border)}.btn-green{background:var(--status-success-bg);color:var(--status-success-fg);border-color:var(--status-success-border)}.btn-blue:hover:not(:disabled),.btn-green:hover:not(:disabled),.btn-orange:hover:not(:disabled){border-color:currentColor}.btn-gray{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border-default)}.btn-gray:hover:not(:disabled){color:var(--status-danger-fg);border-color:var(--status-danger-border);background:var(--status-danger-bg)}.bk-page{max-width:640px;margin:0 auto;padding-bottom:120px}.bk-breadcrumb{display:flex;align-items:center;gap:6px;font-size:.8125rem;color:var(--text-tertiary);margin-bottom:20px}.bk-breadcrumb-link{color:var(--text-tertiary);text-decoration:none}.bk-breadcrumb-link:hover{color:var(--text-brand);text-decoration:underline}.bk-breadcrumb-sep{opacity:.5}.bk-header{margin-bottom:28px}.bk-title{font-size:1.5rem;font-weight:700;color:var(--text-primary);line-height:1.3}.bk-title-accent{color:var(--text-brand)}.bk-stepper{gap:0;margin-bottom:32px}.bk-step,.bk-stepper{display:flex;align-items:center}.bk-step{gap:8px;flex:1 1}.bk-step:last-child{flex:0 0 auto}.bk-step-circle{width:32px;height:32px;border-radius:50%;border:2px solid var(--border-default);background:var(--bg-surface);color:var(--text-tertiary);display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:700;flex-shrink:0;transition:border-color .15s,background .15s,color .15s}.bk-step.current .bk-step-circle{border-color:var(--border-brand);background:var(--brand-fill);color:var(--text-on-brand);box-shadow:0 0 0 4px var(--focus-ring)}.bk-step.done .bk-step-circle{border-color:var(--status-success-fg);background:var(--status-success-solid);color:var(--text-on-photo)}.bk-step-label{font-size:.8125rem;font-weight:600;color:var(--text-tertiary);white-space:nowrap}.bk-step.current .bk-step-label{color:var(--text-brand)}.bk-step.done .bk-step-label{color:var(--status-success-fg)}.bk-step-line{flex:1 1;height:2px;background:var(--border-default);margin:0 8px;transition:background .15s}.bk-step-line.done{background:var(--status-success-solid)}.bk-section{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:24px;display:flex;flex-direction:column;gap:20px}.bk-section-title{font-size:1.0625rem;font-weight:700;color:var(--text-primary)}.bk-section-hint{font-size:.875rem;margin-top:-12px;line-height:1.5}.bk-back,.bk-section-hint{color:var(--text-tertiary)}.bk-back{display:inline-flex;align-items:center;gap:4px;font-size:.8125rem;background:none;border:none;padding:0;cursor:pointer;align-self:flex-start}.bk-back:hover{color:var(--text-brand)}.bk-service-recap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--brand-subtle);border:1.5px solid var(--brand-subtle-hover);border-radius:var(--radius-md);cursor:pointer;width:100%;text-align:left;transition:border-color .12s,box-shadow .12s,background .12s}.bk-service-recap:hover{border-color:var(--border-brand);box-shadow:0 0 0 3px var(--focus-ring)}.bk-service-recap-info{display:flex;flex-direction:column;gap:3px;min-width:0}.bk-service-recap-name{font-size:.875rem;font-weight:700;color:var(--text-brand);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bk-service-recap-meta{font-size:.8125rem;color:var(--text-brand);opacity:.75}.bk-service-recap-badge{font-size:.75rem;font-weight:600;color:var(--text-brand);border:1.5px solid;border-radius:var(--radius-sm);padding:3px 10px;white-space:nowrap;flex-shrink:0;line-height:1.4}.bk-back-btn{display:inline-flex;align-items:center;gap:6px;font-size:.8125rem;font-weight:500;color:var(--text-tertiary);background:none;border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:5px 12px;cursor:pointer;align-self:flex-start;transition:color .12s,border-color .12s}.bk-back-btn:hover{color:var(--text-brand);border-color:var(--border-brand)}.bk-cta{align-self:flex-start;display:inline-flex;align-items:center;min-width:200px;justify-content:center}.bk-service-list{display:flex;flex-direction:column;gap:10px}.bk-service-card{display:flex;align-items:flex-start;gap:16px;padding:16px;border:1.5px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);text-align:left;cursor:pointer;transition:border-color .12s,box-shadow .12s,background .12s;width:100%}.bk-service-card.selected,.bk-service-card:hover{border-color:var(--border-brand);box-shadow:0 0 0 3px var(--focus-ring)}.bk-service-card.selected{background:var(--brand-subtle)}.bk-service-card-body{flex:1 1;display:flex;flex-direction:column;gap:6px}.bk-service-name{font-size:.9375rem;font-weight:700;color:var(--text-primary)}.bk-service-desc{font-size:.8125rem;color:var(--text-tertiary);line-height:1.4;margin:0}.bk-service-tags{display:flex;flex-wrap:wrap;gap:6px}.bk-service-tag{font-size:.75rem;color:var(--text-tertiary);background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:100px;padding:2px 8px}.bk-service-tag-home{background:var(--status-info-bg);border-color:var(--status-info-border);color:var(--status-info-fg)}.bk-service-card-aside{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}.bk-service-price{font-size:.9375rem;font-weight:700;color:var(--text-primary);white-space:nowrap}.bk-service-check{width:24px;height:24px;border-radius:50%;background:var(--brand-fill);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.6);transition:opacity .15s,transform .15s}.bk-service-check.visible{opacity:1;transform:scale(1)}.bk-recap-chip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:var(--brand-subtle);border-radius:var(--radius-sm);border:1px solid var(--brand-subtle-hover)}.bk-recap-chip-name{font-size:.875rem;font-weight:700;color:var(--text-brand)}.bk-recap-chip-meta{font-size:.8125rem;color:var(--text-brand);opacity:.8;white-space:nowrap}.bk-sms-consent{background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:10px;padding:14px 16px;margin-bottom:4px}.bk-sms-consent-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:.9rem;font-weight:500;color:var(--text-primary);line-height:1.4}.bk-sms-consent-checkbox{margin-top:2px;accent-color:var(--brand-fill);width:16px;height:16px;flex-shrink:0}.bk-sms-consent-note{font-weight:400;color:var(--text-tertiary);font-size:.82rem}.bk-notes-field{display:flex;flex-direction:column;gap:8px}.bk-textarea{width:100%;padding:12px 14px;border:1.5px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-canvas);font-family:inherit;font-size:.9rem;color:var(--text-primary);resize:vertical;transition:border-color .12s;line-height:1.5}.bk-textarea:focus{outline:none;border-color:var(--border-brand);background:var(--bg-surface);box-shadow:0 0 0 3px var(--focus-ring)}.bk-textarea::placeholder{color:var(--text-tertiary)}.bk-char-count{font-size:.75rem;color:var(--text-tertiary);text-align:right}.form-label-optional{font-weight:400;color:var(--text-tertiary)}.bk-booking-recap{border:1px solid var(--border-default);border-radius:var(--radius-md);overflow:hidden}.bk-booking-recap-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--border-default)}.bk-booking-recap-row:last-child{border-bottom:none}.bk-booking-recap-label{font-size:.8125rem;color:var(--text-tertiary);flex-shrink:0}.bk-booking-recap-val{font-size:.875rem;font-weight:600;color:var(--text-primary);text-align:right}.bk-booking-recap-price{color:var(--text-brand)}.bk-booking-recap-note{font-style:italic;font-weight:400;color:var(--text-tertiary);max-width:260px}.bk-days{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;margin:0 -24px;padding-left:24px;padding-right:24px}.bk-days::-webkit-scrollbar{display:none}.bk-day-pill{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:1px;padding:8px 12px;border:1.5px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);cursor:pointer;min-width:52px;transition:border-color .12s,background .12s}.bk-day-pill:hover{border-color:var(--border-brand);background:var(--brand-subtle)}.bk-day-pill.active{border-color:var(--border-brand);background:var(--brand-fill)}.bk-day-abbr{font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);font-weight:600}.bk-day-num{font-size:1.125rem;font-weight:700;color:var(--text-primary);line-height:1.1}.bk-day-month{font-size:.6875rem;color:var(--text-tertiary);text-transform:capitalize}.bk-day-pill.active .bk-day-abbr,.bk-day-pill.active .bk-day-month,.bk-day-pill.active .bk-day-num{color:var(--text-on-brand)}.bk-day-pill:hover .bk-day-abbr,.bk-day-pill:hover .bk-day-month,.bk-day-pill:hover .bk-day-num{color:var(--text-brand)}.bk-day-pill.active:hover .bk-day-abbr,.bk-day-pill.active:hover .bk-day-month,.bk-day-pill.active:hover .bk-day-num{color:var(--text-on-brand)}.bk-slots-grid{display:flex;flex-wrap:wrap;gap:8px;min-height:64px}.bk-slots-spinner{display:flex;align-items:center;padding:8px 0;width:100%}.bk-slots-empty{font-size:.875rem;color:var(--text-tertiary);margin:0;padding:8px 0;width:100%}.bk-slot{padding:10px 16px;border:1.5px solid var(--border-brand);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:.875rem;font-weight:600;color:var(--text-brand);cursor:pointer;min-width:70px;text-align:center;transition:border-color .12s,background .12s,color .12s}.bk-slot:hover:not(:disabled){background:var(--brand-subtle)}.bk-slot.selected{border-color:var(--border-brand);background:var(--brand-fill);color:var(--text-on-brand);box-shadow:var(--elev-2)}.bk-slot.unavailable{color:var(--border-default);text-decoration:line-through}.bk-slot.past,.bk-slot.unavailable{border-color:var(--border-default);background:var(--bg-canvas);cursor:not-allowed}.bk-slot.past{color:var(--text-tertiary);opacity:.45}.bk-confirm-bar{position:fixed;bottom:0;left:0;right:0;background:var(--bg-surface);border-top:1px solid var(--border-default);box-shadow:var(--elev-2);padding:14px var(--pad-x);display:flex;align-items:center;justify-content:space-between;gap:16px;z-index:200}.bk-confirm-bar-info{display:flex;flex-direction:column;gap:2px;min-width:0}.bk-confirm-bar-time{font-size:.9375rem;font-weight:700;color:var(--text-primary)}.bk-confirm-bar-service,.bk-confirm-bar-time{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bk-confirm-bar-service{font-size:.8125rem;color:var(--text-tertiary)}.bk-confirm-btn{flex-shrink:0;min-width:140px}.bk-slot-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px;border-top:1px solid var(--border-default);margin-top:8px;flex-wrap:wrap}.bk-slot-selected-label{font-size:.9375rem;color:var(--text-primary);font-weight:500;margin:0}.bk-slot-selected-date{color:var(--text-tertiary);font-weight:400}.bk-slot-selected-time{color:var(--text-brand);font-weight:700}.bk-provider-gate{display:flex;flex-direction:column;gap:14px}.bk-provider-gate-banner{display:flex;gap:14px;align-items:flex-start;background:var(--status-success-bg);border:1px solid var(--status-success-border);border-radius:var(--radius-lg);padding:18px 20px}.bk-provider-gate-banner-warn{background:var(--status-warning-bg);border-color:var(--status-warning-border)}.bk-provider-gate-icon{font-size:1.5rem;flex-shrink:0;margin-top:1px}.bk-provider-gate-title{font-size:.9375rem;font-weight:700;color:var(--text-primary);margin:0 0 4px}.bk-provider-gate-desc{font-size:.875rem;color:var(--text-tertiary);margin:0;line-height:1.5}.bk-auth-prompt{display:flex;flex-direction:column;align-items:stretch;gap:12px;background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:24px;text-align:center}.bk-auth-prompt-existing,.bk-auth-prompt-new{font-size:1.0625rem;font-weight:700;color:var(--text-primary);margin:0}.bk-auth-divider{display:flex;align-items:center;gap:12px;margin:4px 0;color:var(--text-tertiary);font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.bk-auth-divider:after,.bk-auth-divider:before{content:"";flex:1 1;height:1px;background:var(--border-default)}.bk-auth-gate{display:flex;flex-direction:column;gap:14px;background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:20px}.bk-auth-gate-title{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0}.bk-auth-gate-hint{font-size:.875rem;color:var(--text-tertiary);line-height:1.5;margin:-6px 0 0}.bk-auth-tabs{display:flex;border:1px solid var(--border-default);border-radius:var(--radius-md);overflow:hidden}.bk-auth-tab{flex:1 1;padding:9px 12px;font-size:.875rem;font-weight:600;color:var(--text-tertiary);background:var(--bg-surface);border:none;cursor:pointer;transition:background .15s,color .15s;text-align:center}.bk-auth-tab:hover:not(.active){background:var(--bg-canvas);color:var(--text-primary)}.bk-auth-tab.active{background:var(--brand-fill);color:var(--text-on-brand)}.bk-auth-inputs{display:flex;flex-direction:column;gap:10px}@media (max-width:640px){.bk-page{padding-left:16px;padding-right:16px}.bk-section{padding:20px 16px}.bk-title{font-size:1.25rem}.bk-days{margin:0 -16px;padding-left:16px;padding-right:16px}.bk-confirm-bar{padding:12px 16px}.bk-step-label{display:none}}.detail-gallery-section{padding:0}.detail-default-cover,.detail-gallery-section{overflow:hidden;border-radius:var(--radius-lg)}.detail-default-cover{position:relative;width:100%;height:280px}.gallery-film-wrap{display:none}.gallery-grid{display:grid;grid-gap:4px;gap:4px;border-radius:var(--radius-lg);overflow:hidden}.gallery-grid-1{grid-template-columns:1fr;height:380px}.gallery-grid-2{grid-template-columns:1fr 1fr;height:300px}.gallery-grid-3,.gallery-grid-4{grid-template-columns:3fr 2fr;height:300px}.gallery-grid-5{grid-template-columns:1fr 1fr;height:280px}.gallery-cover{position:relative;overflow:hidden}.gallery-thumbs-col{grid-template-columns:1fr;grid-gap:4px}.gallery-thumbs,.gallery-thumbs-col{display:grid;grid-template-rows:1fr 1fr;gap:4px}.gallery-thumbs{grid-template-columns:1fr 1fr;grid-gap:4px}.gallery-thumb{position:relative;overflow:hidden;background:var(--border-default)}.gallery-more{position:relative}.gallery-more,.gallery-more-label{display:flex;align-items:center;justify-content:center}.gallery-more-label{position:absolute;inset:0;color:var(--text-on-photo);font-weight:700;font-size:1rem;pointer-events:none}@media (max-width:640px){.gallery-grid-1{height:auto;aspect-ratio:4/3}.gallery-grid-2,.gallery-grid-3,.gallery-grid-4,.gallery-grid-5{grid-template-columns:1fr;height:auto;aspect-ratio:4/3}.gallery-cover{height:100%}.detail-gallery-section .gallery-grid,.gallery-grid-2 .gallery-thumb,.gallery-thumbs,.gallery-thumbs-col{display:none}.gallery-film-wrap{display:block;overflow:hidden;width:100%}.gallery-film-track{display:flex;gap:10px;will-change:transform}.gallery-film-item{flex-shrink:0;position:relative;width:75vw;aspect-ratio:4/3;border-radius:12px;overflow:hidden;border:none;padding:0;cursor:pointer;background:var(--border-default)}}.galerie-drop-zone{background:var(--bg-surface);border:2px dashed var(--border-default);border-radius:var(--radius-lg);padding:0;margin-bottom:24px;cursor:pointer;transition:border-color .15s,background .15s;overflow:hidden}.galerie-drop-zone.drag-over,.galerie-drop-zone:hover{border-color:var(--border-brand);background:var(--brand-subtle)}.galerie-drop-zone.drag-over{border-style:solid}.galerie-drop-zone-inner{flex-direction:column;gap:6px;padding:32px 20px 20px;text-align:center}.galerie-drop-icon,.galerie-drop-zone-inner{display:flex;align-items:center;justify-content:center}.galerie-drop-icon{width:56px;height:56px;border-radius:50%;background:var(--brand-subtle);color:var(--text-brand);margin-bottom:4px;flex-shrink:0}.galerie-drop-icon.uploading{background:var(--bg-canvas);color:var(--text-tertiary)}.galerie-drop-title{font-size:.9375rem;font-weight:700;color:var(--text-primary);margin:0}.galerie-drop-hint{font-size:.8125rem;color:var(--text-tertiary);margin:0}.galerie-drop-tag-row{border-top:1px solid var(--border-default);padding:12px 20px;display:flex;align-items:center;gap:10px;overflow:visible}.galerie-drop-tag-label{font-weight:600;flex-shrink:0}.galerie-drop-tag-label,.galerie-order-hint{font-size:.8125rem;color:var(--text-tertiary)}.galerie-order-hint{margin:0 0 16px}.galerie-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}@media (max-width:900px){.galerie-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.galerie-grid{grid-template-columns:1fr}}.galerie-item{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s,opacity .15s;cursor:-webkit-grab;cursor:grab}.galerie-item:hover{box-shadow:var(--elev-2)}.galerie-item-primary{border-color:var(--border-brand);box-shadow:0 0 0 2px var(--focus-ring)}.galerie-item-dragging{opacity:.4;cursor:-webkit-grabbing;cursor:grabbing}.galerie-item-dragover{border-color:var(--border-brand);box-shadow:0 0 0 2px var(--focus-ring),inset 0 0 0 2px var(--focus-ring)}.galerie-item-img{position:relative;aspect-ratio:4/3;background:var(--bg-canvas)}.galerie-item-tag{bottom:8px;left:8px;background:var(--bg-scrim);font-weight:600}.galerie-item-pos,.galerie-item-tag{position:absolute;color:var(--text-on-photo);font-size:.6875rem;padding:3px 9px;border-radius:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.galerie-item-pos{top:8px;right:8px;background:var(--photo-scrim-top);font-weight:700}.galerie-item-primary .galerie-item-pos{background:var(--brand-fill)}.galerie-item-actions{display:flex;align-items:center;gap:6px;padding:9px 12px;border-top:1px solid var(--border-default);background:var(--bg-canvas)}.galerie-item-order{display:flex;gap:3px;flex-shrink:0}.galerie-order-btn{width:30px;height:30px;border-radius:var(--radius-sm);border:1.5px solid var(--border-default);background:var(--bg-surface);color:var(--text-tertiary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .12s,color .12s,background .12s;flex-shrink:0}.galerie-order-btn:hover:not(:disabled){border-color:var(--border-brand);color:var(--text-brand);background:var(--brand-subtle)}.galerie-order-btn:disabled{opacity:.32;cursor:default}.galerie-item-actions-sep{width:1px;height:20px;background:var(--border-default);flex-shrink:0;margin:0 2px}button.gallery-cover,button.gallery-thumb{border:0;padding:0;background:transparent;cursor:pointer;display:block;width:100%;height:100%}button.gallery-cover:focus-visible,button.gallery-thumb:focus-visible{outline:3px solid var(--border-brand);outline-offset:-3px}button.gallery-cover:hover,button.gallery-thumb:hover{opacity:.9}.gallery-lb-backdrop{position:fixed;inset:0;background:var(--bg-scrim);z-index:9000;display:flex;align-items:center;justify-content:center}.gallery-lb-inner{position:relative;width:calc(100vw - 112px);height:calc(100vh - 80px);max-width:1200px}.gallery-lb-img-wrap{position:relative;width:100%;height:100%}.gallery-lb-close{position:fixed;top:16px;right:16px;width:40px;height:40px;border-radius:50%;border:none;color:var(--text-on-photo);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:9001;transition:background .15s}.gallery-lb-close,.gallery-lb-close:hover{background:var(--glass-fill)}.gallery-lb-counter{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);color:var(--text-on-photo-muted);font-size:.875rem;font-weight:500;z-index:9001;background:var(--photo-scrim-top);padding:4px 14px;border-radius:20px;white-space:nowrap}.gallery-lb-arrow{position:fixed;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:none;color:var(--text-on-photo);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:9001;transition:background .15s}.gallery-lb-arrow,.gallery-lb-arrow:hover{background:var(--glass-fill)}.gallery-lb-prev{left:16px}.gallery-lb-next{right:16px}@media (max-width:640px){.gallery-lb-inner{width:calc(100vw - 8px);height:calc(100vh - 140px)}.gallery-lb-arrow{top:auto;bottom:60px;transform:none;width:48px;height:48px}.gallery-lb-prev{left:calc(50% - 56px)}.gallery-lb-next{left:calc(50% + 12px);right:auto}}.nav-avatar-btn-photo{padding:0;overflow:hidden}.nav-avatar-cover{width:100%;height:100%}.dropdown-avatar-cover,.nav-avatar-cover{object-fit:cover;border-radius:50%;display:block}.dropdown-avatar-cover{width:44px;height:44px;flex-shrink:0}@media (max-width:640px){.entry-card{flex-direction:column;align-items:stretch;gap:10px}.entry-right{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.entry-actions{justify-content:flex-start;flex-wrap:nowrap}.pro-file-header{align-items:center}}.plan-gate{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;background:linear-gradient(135deg,var(--brand-subtle) 0,var(--brand-subtle) 100%);border:1.5px solid var(--brand-subtle-hover);border-radius:var(--radius-lg);margin-top:4px}.plan-gate-icon{flex-shrink:0;margin-top:2px;color:var(--text-brand)}.plan-gate-body{flex:1 1;display:flex;flex-direction:column;gap:6px}.plan-gate-title{font-size:.875rem;font-weight:700;color:var(--text-brand)}.plan-gate-desc{font-size:.825rem;color:var(--text-tertiary);line-height:1.5;margin:0}.reviews-list{gap:12px;margin-top:4px}.review-item,.reviews-list{display:flex;flex-direction:column}.review-item{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:14px 16px;gap:8px}.review-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.review-rating{font-size:1rem;letter-spacing:1px;flex-shrink:0}.review-service-chip{display:inline-flex;align-items:center;background:var(--brand-subtle);color:var(--text-brand);font-size:.75rem;font-weight:600;border-radius:6px;padding:2px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.review-date{font-size:.78rem;color:var(--text-tertiary);margin-left:auto;white-space:nowrap}.review-comment{font-size:.875rem;color:var(--text-secondary,var(--text-tertiary));line-height:1.5;margin:0}.billing-plans-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin-top:4px}.billing-plan-card{position:relative;display:flex;flex-direction:column;background:var(--bg-surface);border:1.5px solid var(--border-default);border-radius:var(--radius-xl);padding:24px 20px 20px;transition:box-shadow .15s,border-color .15s,transform .15s;cursor:default}.billing-plan-card:hover:not(.billing-plan-card--current){box-shadow:var(--elev-2);border-color:var(--brand-subtle-hover);transform:translateY(-2px)}.billing-plan-card--current{background:var(--brand-subtle);box-shadow:var(--elev-1)}.billing-plan-card--current,.billing-plan-card--popular{border-color:var(--border-brand)}.billing-plan-ribbon{position:absolute;top:-1px;right:20px;background:var(--brand-fill);color:var(--text-on-brand);font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:4px 10px;border-radius:0 0 var(--radius-sm) var(--radius-sm)}.qty-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--border-default);background:var(--bg-canvas);color:var(--text-primary);font-size:1rem;font-weight:700;cursor:pointer;transition:border-color .15s,background .15s}.qty-btn:hover:not(:disabled){border-color:var(--border-brand);color:var(--text-brand)}.qty-btn:disabled{opacity:.35;cursor:not-allowed}.billing-plan-card-name{font-size:1rem;font-weight:700;color:var(--text-primary);margin-bottom:12px}.billing-plan-price-block{margin-bottom:16px;min-height:58px}.billing-plan-price-amount{font-size:2rem;font-weight:700;color:var(--text-primary);line-height:1}.billing-plan-price-currency{font-size:1rem;font-weight:600;color:var(--text-tertiary);margin-left:2px}.billing-plan-price-period{font-size:.8rem;color:var(--text-tertiary);margin-top:2px}.billing-plan-divider{height:1px;background:var(--border-default);margin:14px 0}.billing-plan-qty-list{display:flex;flex-direction:column;gap:7px;margin:14px 0 0}.billing-plan-qty-item{display:flex;align-items:baseline;gap:6px;line-height:1.2}.billing-plan-qty-value{font-size:1.15rem;font-weight:700;color:var(--text-brand);min-width:28px;flex-shrink:0}.billing-plan-qty-label{font-size:.78rem;color:var(--text-tertiary);line-height:1.3}.billing-plan-qty-sub{font-size:.7rem;color:var(--accent-star);font-weight:600;margin-top:1px;min-height:1em}.billing-plan-caps{display:flex;flex-direction:column;gap:8px;flex:1 1;margin-bottom:20px}.billing-plan-cap{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:500;color:var(--text-primary);line-height:1.3}.billing-plan-cap--no{color:var(--text-tertiary);font-weight:400}.billing-cap-label{gap:5px;line-height:1.3}.billing-cap-info,.billing-cap-label{display:inline-flex;align-items:center}.billing-cap-info{position:relative;justify-content:center;width:14px;height:14px;border-radius:50%;background:var(--brand-subtle);color:var(--text-brand);font-size:.6rem;font-weight:700;font-style:italic;cursor:default;flex-shrink:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.billing-cap-info:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);right:-4px;left:auto;transform:none;background:var(--bg-inverse);color:var(--text-inverse);font-size:.72rem;font-weight:400;line-height:1.45;white-space:normal;width:200px;padding:8px 10px;border-radius:var(--radius-sm);box-shadow:var(--elev-2);visibility:hidden;opacity:0;transition:opacity .15s;pointer-events:none;z-index:20;text-align:left}.billing-cap-info:hover:after{visibility:visible;opacity:1}.billing-feat-icon{flex-shrink:0;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;font-size:.65rem;font-weight:700;margin-top:1px}.billing-feat-icon--yes{background:var(--status-success-bg);color:var(--status-success-fg)}.billing-feat-icon--no{background:var(--bg-canvas);color:var(--text-tertiary)}.billing-return-banner{display:flex;align-items:flex-start;gap:14px;border-radius:var(--radius-lg);padding:16px 20px;font-size:.875rem;position:relative}.billing-return-banner--success{background:var(--status-success-bg);border:1.5px solid var(--status-success-border);color:var(--status-success-fg)}.billing-return-banner--cancel{background:var(--status-warning-bg);border:1.5px solid var(--status-warning-border);color:var(--status-warning-fg)}.billing-return-icon-wrap{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.billing-return-icon-wrap--success{background:var(--status-success-bg);color:var(--status-success-fg)}.billing-return-icon-wrap--cancel{background:var(--status-warning-bg);color:var(--status-warning-fg)}.billing-return-title{font-weight:700;margin-bottom:3px}.billing-return-body{font-size:.825rem;opacity:.9;line-height:1.5}.billing-return-close{position:absolute;top:12px;right:14px;background:none;border:none;cursor:pointer;font-size:.85rem;opacity:.5;padding:2px 4px;line-height:1;color:inherit}.billing-return-close:hover{opacity:1}.billing-history-list{display:flex;flex-direction:column;gap:1px;border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden}.billing-history-row{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;grid-gap:16px;gap:16px;padding:14px 20px;background:var(--bg-surface);border-bottom:1px solid var(--border-default);font-size:.875rem}.billing-history-row:last-child{border-bottom:none}.billing-history-row:nth-child(2n){background:var(--bg-canvas)}.billing-history-desc{font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.billing-history-date{font-size:.78rem;color:var(--text-tertiary);white-space:nowrap}.billing-history-amount{font-weight:700;color:var(--text-primary);white-space:nowrap}.billing-history-method{font-size:.78rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.payment-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:700;white-space:nowrap;letter-spacing:.03em}.payment-pill--completed{background:var(--status-success-bg);color:var(--status-success-fg)}.payment-pill--initiated,.payment-pill--pending{background:var(--status-warning-bg);color:var(--status-warning-fg)}.payment-pill--cancelled,.payment-pill--failed{background:var(--status-danger-bg);color:var(--status-danger-fg)}.payment-pill--refunded{background:var(--brand-subtle);color:var(--text-brand)}@media (min-width:961px){.billing-plan-qty-list{min-height:5.5rem}}@media (max-width:960px){.billing-plans-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.billing-plans-grid{grid-template-columns:1fr}.billing-history-row{grid-template-columns:1fr auto;row-gap:4px}.billing-history-date,.billing-history-method{display:none}}.ob-wrap{background:var(--bg-surface)}.ob-pane-left,.ob-wrap{display:flex;min-height:100vh}.ob-pane-left{flex:1 1;flex-direction:column;max-width:640px}.ob-pane-right{flex:1 1;background-size:cover;background-position:50%;min-height:100vh}@media (max-width:767px){.ob-pane-right{display:none}.ob-pane-left{max-width:100%}}.ob-header{position:-webkit-sticky;position:sticky;top:0;z-index:10;background:var(--bg-surface)}.ob-progress{display:flex;gap:4px;padding:16px 24px 0}.ob-progress-seg{flex:1 1;height:3px;border-radius:2px;background:var(--border-default);transition:background .2s}.ob-progress-seg--done{background:var(--brand-fill)}.ob-topbar{justify-content:space-between;padding:16px 24px}.ob-logo-link,.ob-topbar,.ob-topbar-left,.ob-topbar-right{display:flex;align-items:center}.ob-logo-link{text-decoration:none}.ob-back-btn{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--border-default);background:var(--bg-canvas);color:var(--text-primary);font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.ob-back-btn:hover{background:var(--border-default)}.ob-continue-btn{background:var(--brand-fill);color:var(--text-on-brand);border:none;border-radius:100px;padding:10px 22px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s,opacity .15s;white-space:nowrap}.ob-continue-btn:hover:not(:disabled){background:var(--brand-hover)}.ob-continue-btn:disabled{opacity:.45;cursor:not-allowed}.ob-content{flex:1 1;display:flex;flex-direction:column;justify-content:flex-start;padding:24px 48px 48px;gap:0}@media (max-width:767px){.ob-content{padding:16px 24px 40px}}.ob-eyebrow{font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-brand);margin-bottom:10px}.ob-title{font-size:2rem;font-weight:700;letter-spacing:-.5px;line-height:1.15;color:var(--text-primary);margin-bottom:12px}@media (max-width:767px){.ob-title{font-size:1.6rem}}.ob-sub{font-size:.95rem;line-height:1.55;margin-bottom:28px}.ob-login-hint,.ob-sub{color:var(--text-tertiary)}.ob-login-hint{margin-top:12px;font-size:.875rem}.ob-otp-input{text-align:center;font-size:2rem!important;letter-spacing:10px;font-weight:700}.ob-choice-list{display:flex;flex-direction:column;gap:10px}.ob-choice-item{padding:16px 20px;border:1.5px solid var(--border-default);border-radius:var(--radius-lg);text-align:left;font-size:.95rem;font-weight:500;color:var(--text-primary);background:var(--bg-surface);cursor:pointer;transition:border-color .15s,background .15s}.ob-choice-item--active,.ob-choice-item:hover{border-color:var(--border-brand);background:var(--brand-subtle)}.ob-choice-item--active{color:var(--text-brand);font-weight:700}.ob-cat-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}@media (max-width:480px){.ob-cat-grid{grid-template-columns:repeat(2,1fr)}}.ob-cat-card{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;border:2px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);cursor:pointer;overflow:hidden;transition:border-color .15s,box-shadow .15s;text-align:center}.ob-cat-card--active,.ob-cat-card:hover{border-color:var(--border-brand);box-shadow:0 0 0 2px var(--focus-ring)}.ob-cat-photo{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.ob-cat-card--active .ob-cat-photo{opacity:.85}.ob-cat-label{font-size:.78rem;font-weight:600;color:var(--text-primary);line-height:1.3;padding:8px 6px}.ob-role-page{display:flex;min-height:100vh}.ob-role-left{flex:0 0 580px;display:flex;flex-direction:column;padding:32px 48px;background:var(--bg-surface)}@media (max-width:767px){.ob-role-left{flex:1 1;padding:24px}}.ob-role-right{flex:1 1;background-size:cover;background-position:50%;min-height:100vh}@media (max-width:767px){.ob-role-right{display:none}}.ob-role-content{flex:1 1;justify-content:center;padding-top:32px}.ob-role-cards,.ob-role-content{display:flex;flex-direction:column}.ob-role-cards{gap:12px;margin-bottom:24px}.ob-role-card{display:flex;align-items:center;gap:16px;padding:20px;border:1.5px solid var(--border-default);text-align:left;cursor:pointer;transition:border-color .15s,background .15s;width:100%}.ob-role-card:hover{border-color:var(--border-brand);background:var(--brand-subtle)}.ob-role-card-icon{font-size:1.8rem;flex-shrink:0}.ob-role-card div{flex:1 1;display:flex;flex-direction:column;gap:4px}.ob-role-card strong{font-size:1rem;font-weight:700;color:var(--text-primary)}.ob-role-card span:not(.ob-role-card-icon):not(.ob-role-card-arrow){font-size:.85rem;color:var(--text-tertiary);line-height:1.4}.ob-role-card-arrow{font-size:1.1rem;color:var(--text-tertiary);flex-shrink:0}.ob-role-footer{font-size:.875rem;color:var(--text-tertiary)}.ob-wa-wrap{display:flex;flex-direction:column;gap:0}.ob-wa-icon{margin-bottom:20px}.ob-wa-icon,.ob-wa-icon svg{width:64px;height:64px}.ob-wa-benefits{display:flex;flex-direction:column;gap:10px;margin-bottom:28px;padding:16px;background:var(--bg-canvas);border-radius:var(--radius-lg);border:1px solid var(--border-default)}.ob-wa-benefit{display:flex;align-items:flex-start;gap:10px;font-size:.9rem;color:var(--text-primary)}.ob-wa-benefit span:first-child{font-size:1rem;flex-shrink:0;margin-top:1px}.ob-wa-check{color:#25d366;font-weight:700;line-height:1}.ob-wa-submit{margin-top:20px}.ob-wa-skip{margin-top:12px;text-align:center;display:block;font-size:.875rem}.ob-success-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:0}.ob-success-icon{width:64px;height:64px;border-radius:50%;background:var(--brand-fill);color:var(--text-on-brand);font-size:1.8rem;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:24px}.ob-success-btn{margin-top:24px;padding:14px 32px}.btn-ghost-inv{display:inline-flex;align-items:center;justify-content:center;padding:11px 22px;border-radius:var(--radius-sm);font-size:.95rem;font-weight:600;white-space:nowrap;background:transparent;border:2px solid var(--glass-border);color:var(--text-on-photo);cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s}.btn-ghost-inv:hover{background:var(--glass-fill);border-color:var(--glass-border);text-decoration:none}.app-showcase{padding:80px var(--pad-x);background:var(--bg-canvas)}.app-showcase-inner{display:grid;grid-template-columns:1fr auto;grid-gap:64px;gap:64px;align-items:center}.app-showcase-text{display:flex;flex-direction:column;gap:20px}.app-showcase-text h2{font-size:clamp(1.5rem,2.8vw,2.1rem);font-weight:700;line-height:1.2;color:var(--text-primary);margin:0}.app-showcase-sub{font-size:1rem;color:var(--text-tertiary);line-height:1.65;margin:0}.app-carousel-phone{position:relative;width:300px;height:612px;flex-shrink:0}.app-carousel-slide{position:absolute;inset:0;opacity:0;transform:scale(.97) translateY(6px);transition:opacity .4s ease,transform .4s ease;pointer-events:none}.app-carousel-slide--active{opacity:1;transform:scale(1) translateY(0);pointer-events:auto}.app-carousel-img{width:300px;height:612px;object-fit:contain;filter:drop-shadow(0 16px 40px rgba(0,0,0,.1))}:root[data-theme=dark] .app-carousel-img{filter:none}.app-carousel-info{display:flex;flex-direction:column;gap:6px}.app-carousel-title{font-size:1.05rem;font-weight:700;color:var(--text-primary);margin:0}.app-carousel-caption{font-size:.9rem;color:var(--text-tertiary);margin:0;line-height:1.55;max-width:360px}.app-carousel-dots{display:flex;gap:6px;margin-top:8px}.app-carousel-dot{width:7px;height:7px;border-radius:50%;border:none;background:var(--border-default);cursor:pointer;padding:0;transition:background .2s,transform .2s}.app-carousel-dot--active{background:var(--brand-fill);transform:scale(1.35)}.app-store-buttons{display:flex;flex-direction:column;gap:12px}.app-store-btn{display:flex;align-items:center;gap:10px;padding:10px 18px;border-radius:var(--radius-md);border:1.5px solid var(--text-tertiary);background:var(--bg-canvas);color:var(--text-primary);cursor:default}.app-store-btn--disabled{opacity:.65}.app-store-btn--link{cursor:pointer;text-decoration:none;transition:border-color .15s ease}.app-store-btn--link:hover{border-color:var(--border-brand)}.app-store-btn div{display:flex;flex-direction:column;gap:1px}.app-store-soon{font-size:.65rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.app-store-name{font-size:.875rem;font-weight:700}@media (max-width:860px){.app-showcase-inner{grid-template-columns:1fr;justify-items:center;text-align:center;gap:40px}.app-carousel-info{align-items:center}.app-store-buttons{flex-direction:row;justify-content:center}.app-carousel-caption{max-width:100%}}.rdv-tracking-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:80px 16px 40px;background:var(--bg-surface)}.rdv-card{width:100%;max-width:480px;background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden}.rdv-card-header{background:var(--brand-fill);color:var(--text-on-brand);padding:24px}.rdv-card-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;opacity:.8;margin-bottom:4px}.rdv-card-title{font-size:1.375rem;font-weight:700}.rdv-card-city{font-size:.875rem;opacity:.8;margin-top:2px}.rdv-card-body{padding:20px 24px;display:flex;flex-direction:column;gap:14px}.rdv-status-badge{display:inline-block;padding:4px 12px;border-radius:99px;font-size:.8125rem;font-weight:600;align-self:flex-start}.rdv-status-confirmed{background:var(--status-success-bg);color:var(--status-success-fg)}.rdv-status-pending{background:var(--status-warning-bg);color:var(--status-warning-fg)}.rdv-status-cancelled{background:var(--status-danger-bg);color:var(--status-danger-fg)}.rdv-status-completed{background:var(--brand-subtle);color:var(--text-brand)}.rdv-detail-row{display:flex;flex-direction:column;gap:2px}.rdv-detail-label{font-size:.75rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em}.rdv-detail-value{font-size:.9375rem;color:var(--text-primary);font-weight:500}.rdv-card-footer{border-top:1px solid var(--border-default);padding:16px 24px;display:flex;flex-direction:column;gap:10px}.rdv-wa-btn{display:block;padding:10px 20px;background:#25d366;color:var(--text-on-photo);border-radius:var(--radius-md);text-align:center;font-weight:600;font-size:.9375rem;text-decoration:none}.rdv-wa-btn:hover{background:#1ebe57}.rdv-app-link{display:block;text-align:center;font-size:.875rem;color:var(--text-brand);text-decoration:none}.rdv-app-link:hover{text-decoration:underline}.ai-chat-fab{position:fixed;bottom:24px;right:24px;z-index:1000;width:52px;height:52px;border-radius:50%;background:var(--brand-fill);color:var(--text-on-brand);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--elev-2);transition:background .15s,transform .12s}.ai-chat-fab:hover{background:var(--brand-hover);transform:scale(1.05)}.ai-chat-panel{position:fixed;top:0;right:0;width:400px;max-width:100vw;height:100vh;z-index:1001;background:var(--bg-surface);border-left:1px solid var(--border-default);display:flex;flex-direction:column;box-shadow:var(--elev-3)}.ai-chat-panel-header{height:160px;background:var(--bg-canvas);background-size:cover;background-position:50%;flex-shrink:0;position:relative}.ai-chat-panel-header-overlay{position:absolute;inset:0;background:linear-gradient(to top,var(--photo-scrim-bottom) 0,rgba(0,0,0,.2) 100%);display:flex;align-items:flex-end;justify-content:space-between;padding:12px 14px}.ai-chat-panel-header-content{display:flex;flex-direction:column;gap:2px}.ai-chat-panel-title{color:var(--text-on-photo);font-size:1rem;font-weight:700;line-height:1.2}.ai-chat-panel-badge{font-size:.7rem;font-weight:600;color:var(--text-on-photo-muted);background:var(--glass-fill);border-radius:20px;padding:2px 8px;align-self:flex-start}.ai-chat-panel-actions{display:flex;align-items:flex-start;gap:6px;flex-shrink:0}.ai-chat-panel-close,.ai-chat-panel-icon-btn{background:var(--glass-fill);border:none;color:var(--text-on-photo);width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ai-chat-panel-close:hover,.ai-chat-panel-icon-btn:hover{background:var(--glass-fill)}.ai-sessions-overlay{position:absolute;inset:0;z-index:10;background:var(--bg-surface);display:flex;flex-direction:column}.ai-sessions-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-default);flex-shrink:0}.ai-sessions-title{font-size:.9rem;font-weight:700;color:var(--text-primary)}.ai-sessions-close{background:none;border:none;color:var(--text-tertiary);font-size:1.3rem;cursor:pointer;line-height:1;padding:0 2px}.ai-sessions-close:hover{color:var(--text-primary)}.ai-sessions-new{display:flex;align-items:center;gap:8px;width:100%;padding:12px 16px;background:none;border:none;border-bottom:1px solid var(--border-default);color:var(--text-brand);font-size:.875rem;font-weight:600;cursor:pointer;text-align:left;flex-shrink:0}.ai-sessions-new:hover{background:var(--bg-canvas)}.ai-sessions-list{flex:1 1;overflow-y:auto;padding:8px 0}.ai-sessions-empty{color:var(--text-tertiary);font-size:.875rem;text-align:center;padding:24px 16px}.ai-session-item{display:flex;flex-direction:column;gap:3px;width:100%;padding:10px 16px;background:none;border:none;border-bottom:1px solid var(--border-default);cursor:pointer;text-align:left}.ai-session-item:hover{background:var(--bg-canvas)}.ai-session-item--active{background:var(--brand-subtle,var(--brand-subtle))}.ai-session-item-title{font-size:.875rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.ai-session-item-meta{font-size:.75rem;color:var(--text-tertiary)}.ai-chat-messages{flex:1 1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}.ai-chat-empty{color:var(--text-tertiary);font-size:.875rem;text-align:center;margin:auto;padding:24px 0}.ai-msg-row{display:flex;flex-direction:column}.ai-msg-row-user{align-items:flex-end}.ai-msg-row-ai{align-items:flex-start}.ai-msg-user{background:var(--brand-fill);color:var(--text-on-brand);border-radius:16px 16px 4px 16px;padding:10px 14px;max-width:80%;line-height:1.5}.ai-msg-ai{background:transparent;color:var(--text-primary);border:none;padding:2px 0;max-width:90%;font-family:var(--font-sans);font-weight:400;font-size:.9375rem;line-height:1.6}.ai-msg-loading{background:var(--bg-canvas);border:1px solid var(--border-default);border-radius:16px 16px 16px 4px;padding:12px 16px;align-self:flex-start}.ai-typing-dots{display:flex;align-items:center;gap:5px;height:10px}.ai-typing-dot{width:7px;height:7px;border-radius:50%;background:var(--text-tertiary);animation:ai-dot-bounce 1.2s ease-in-out infinite}.ai-typing-dot:nth-child(2){animation-delay:.2s}.ai-typing-dot:nth-child(3){animation-delay:.4s}@keyframes ai-dot-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.ai-msg-ai p{margin:0 0 6px;line-height:1.55}.ai-msg-ai p:last-child{margin-bottom:0}.ai-msg-ai h1,.ai-msg-ai h2,.ai-msg-ai h3{font-weight:700;margin:8px 0 4px;line-height:1.3}.ai-msg-ai h1{font-size:1rem}.ai-msg-ai h2{font-size:.9rem}.ai-msg-ai h3{font-size:.85rem}.ai-msg-ai ol,.ai-msg-ai ul{margin:4px 0;padding-left:18px;line-height:1.55}.ai-msg-ai li{margin-bottom:2px}.ai-msg-ai code{font-family:monospace;font-size:.8em;background:var(--bg-sunken);border-radius:3px;padding:1px 4px}.ai-msg-ai pre{overflow-x:auto;margin:6px 0;border-radius:6px;background:var(--bg-sunken);padding:8px 12px}.ai-msg-ai pre code{background:none;padding:0;font-size:.78rem}.ai-msg-ai table{border-collapse:collapse;font-size:.8rem;min-width:100%;overflow-x:auto;display:block;margin:6px 0;border-radius:6px;border:1px solid var(--border-default)}.ai-msg-ai td,.ai-msg-ai th{padding:5px 10px;text-align:left;white-space:nowrap;border-bottom:1px solid var(--border-subtle)}.ai-msg-ai th{font-weight:700;background:var(--bg-sunken)}.ai-msg-ai tr:last-child td{border-bottom:none}.ai-msg-ai strong{font-weight:600}.ai-msg-ai em{font-style:italic}.ai-msg-ai blockquote{border-left:3px solid var(--border-strong);margin:4px 0;padding-left:10px;color:var(--text-tertiary)}@media (max-width:480px){.ai-chat-panel-header{height:120px}.ai-chat-panel{width:100vw;height:100vh;height:100dvh;overflow-x:hidden}.ai-chat-fab{bottom:80px}}.ai-provider-cards{display:flex;flex-direction:column;gap:10px;padding:8px 12px 4px}.ai-provider-cards .provider-card{width:100%;border-radius:var(--radius-md);box-shadow:var(--elev-1)}.ai-provider-cards .provider-card-gallery{height:140px}.hero{min-height:0;align-items:flex-end;justify-content:flex-start;padding:120px var(--pad-x) 48px;background:var(--band-end)}.hero-overlay{background:linear-gradient(180deg,var(--photo-scrim-top) 0,transparent 28%,var(--photo-scrim-mid) 66%,var(--photo-scrim-bottom) 100%)}.hero-content{max-width:var(--max-w);margin:0 auto;text-align:left}.hero-tagline{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px;color:var(--text-on-photo-accent);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}@media (max-width:400px){.hero-tagline{font-size:.6875rem;letter-spacing:.08em}}.hero-content h1{max-width:14ch;margin-bottom:28px;color:var(--text-on-photo);font-family:var(--font-display);font-weight:600;font-size:clamp(2.125rem,6vw,4.25rem);line-height:1.04;letter-spacing:-.02em;text-shadow:none}.hero .search-bar{max-width:760px}.search-btn{color:var(--text-on-brand);font-weight:600}@media (min-width:861px){.hero{min-height:min(78vh,720px);padding-bottom:88px}.hero .search-bar .search-btn{border-radius:0 var(--radius-lg) var(--radius-lg) 0}}@media (max-width:640px){.hero{padding-top:150px}.hero-overlay{background:linear-gradient(180deg,var(--photo-scrim-top) 0,transparent 14%,var(--photo-scrim-mid) 34%,var(--photo-scrim-bottom) 62%)}.hero .search-bar{padding:6px}.hero .search-bar .search-btn{margin-top:6px;border-radius:var(--radius-md);min-height:48px}}.section-head{display:grid;grid-gap:6px;gap:6px;margin-bottom:24px;text-align:left}.section-eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-accent)}.section-head .section-center-title{margin:0;text-align:left;font-size:clamp(1.625rem,3.2vw,2.25rem);line-height:1.12}.categories{padding:56px var(--pad-x) 48px;border-top:0}.category-card{aspect-ratio:4/5;border-radius:20px}.category-card:hover{box-shadow:var(--elev-3)}.category-card-overlay{flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:6px;padding:18px;background:linear-gradient(to top,var(--photo-scrim-bottom) 0,transparent 58%)}.category-card-label{color:var(--text-on-photo);font-family:var(--font-display);font-weight:600;font-size:1.375rem;line-height:1.1;letter-spacing:-.01em;text-shadow:none}.category-card-link{display:inline-flex;align-items:center;gap:4px;font-size:.8125rem;font-weight:600;color:var(--text-on-photo-muted)}@media (max-width:640px){.category-card{aspect-ratio:5/4}.category-card-label{font-size:1.625rem}}.how-it-works{background:var(--bg-surface);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.how-step-num{width:34px;height:34px;background:var(--brand-subtle);color:var(--text-brand);font-family:var(--font-display);font-size:1rem;font-weight:600}.how-step-label h3{font-size:1.0625rem;font-weight:600}.how-step-label p{color:var(--text-secondary);font-size:.9375rem}@media (max-width:640px){.how-cta .btn-lg{width:100%}}.provider-band{padding:72px var(--pad-x);background:var(--bg-canvas);padding-bottom:calc(var(--decor-ground-height) + 24px);border-top:1px solid var(--border-subtle)}.section-label.section-label-gold{display:inline-flex;align-items:center;gap:6px;color:var(--text-accent);background:var(--accent-subtle);border:1px solid var(--border-accent);font-size:.75rem;font-weight:600;letter-spacing:.14em}.provider-band-text h2{color:var(--text-primary);font-weight:600;letter-spacing:-.015em}.provider-band-text p{color:var(--text-secondary)}.file-page{max-width:480px;margin:0 auto;padding:24px var(--pad-x) 56px;display:flex;flex-direction:column;gap:16px}.file-kicker{text-align:center;font-size:.9375rem;font-weight:600;color:var(--text-secondary)}.file-header{text-align:center;display:grid;grid-gap:4px;gap:4px}.file-provider{font-size:clamp(1.625rem,6vw,2rem);line-height:1.15}.file-provider a{color:inherit}.file-subtitle{color:var(--text-tertiary);font-size:.9375rem}.file-card{--tone-fg:var(--text-brand);--tone-bg:var(--brand-subtle);position:relative;overflow:hidden;display:grid;justify-items:center;grid-gap:12px;gap:12px;padding:28px 20px 26px;border-radius:var(--radius-xl);background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--elev-2)}.file-card:before{content:"";position:absolute;inset:0 0 auto;height:150px;background:linear-gradient(180deg,var(--brand-subtle),transparent);pointer-events:none}.file-card>*{position:relative}.file-card[data-status=checked_in]{--tone-fg:var(--status-info-fg);--tone-bg:var(--status-info-bg)}.file-card[data-status=in_service]{--tone-fg:var(--status-warning-fg);--tone-bg:var(--status-warning-bg)}.file-card[data-status=completed]{--tone-fg:var(--status-success-fg);--tone-bg:var(--status-success-bg)}.file-card[data-status=skipped]{--tone-fg:var(--status-neutral-fg);--tone-bg:var(--status-neutral-bg)}.file-card[data-status=no_show]{--tone-fg:var(--status-danger-fg);--tone-bg:var(--status-danger-bg)}.file-position-wrap{display:grid;justify-items:center;grid-gap:6px;gap:6px}.file-position-label{font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-accent)}.file-position-number{font-family:var(--font-display);font-weight:600;font-size:6.5rem;line-height:.95;letter-spacing:-.04em;font-feature-settings:tabular-nums lining-nums;font-variant-numeric:tabular-nums lining-nums;color:var(--text-brand)}.file-position-total{color:var(--text-tertiary)}.file-track{display:flex;gap:6px;padding-block:4px}.file-track span{width:26px;height:6px;border-radius:999px;background:var(--border-default)}.file-track .file-track-done{background:var(--text-tertiary);opacity:.55}.file-track .file-track-me{width:40px;background:var(--brand-fill)}.file-status-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;font-size:.8125rem;font-weight:600;color:var(--tone-fg);background:var(--tone-bg)}.file-status-dot{width:6px;height:6px;border-radius:999px;background:currentColor}.file-wait{color:var(--text-secondary)}.file-wait strong{color:var(--text-primary)}.file-banner{display:flex;align-items:center;gap:12px;padding:14px;border-radius:var(--radius-lg);border:1px solid}.file-banner p{display:grid;grid-gap:2px;gap:2px;font-size:.9375rem}.file-banner strong{color:var(--text-primary)}.file-banner--turn{color:var(--status-warning-fg);background:var(--status-warning-bg);border-color:var(--status-warning-border)}.file-banner--done{color:var(--status-success-fg);background:var(--status-success-bg);border-color:var(--status-success-border)}.file-banner-icon{width:38px;height:38px;flex:none;display:grid;place-items:center;border-radius:999px;background:var(--bg-surface)}.file-refresh-note{text-align:center;font-size:.8125rem;color:var(--text-tertiary)}.file-empty,.file-loading{display:grid;justify-items:center;grid-gap:12px;gap:12px;padding:48px 20px;text-align:center;color:var(--text-secondary)}.file-empty{border-radius:var(--radius-lg);background:var(--bg-surface);border:1px solid var(--border-subtle)}.file-empty-title{font-size:1.375rem;color:var(--text-primary)}.file-spinner{width:32px;height:32px;border-radius:999px;border:3px solid var(--brand-subtle);border-top-color:var(--brand-fill);animation:file-spin .8s linear infinite}@keyframes file-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.file-spinner{animation:none}}.appt-actions{display:grid;grid-gap:8px;gap:8px;width:100%}.detail-hero{height:300px;background:var(--band-end)}.detail-hero-overlay{background:linear-gradient(180deg,var(--photo-scrim-top) 0,transparent 45%)}.detail-hero-actions{position:absolute;z-index:2;top:14px;right:max(14px,calc((100% - var(--max-w)) / 2 + var(--pad-x)));display:flex;gap:10px}.detail-hero-actions .detail-fav-btn,.detail-hero-actions .detail-share-btn{position:static;width:40px;height:40px;border-radius:999px;display:grid;place-items:center;color:var(--text-on-photo);background:var(--photo-scrim-top);border:1px solid var(--glass-border);font-size:1rem}.detail-hero-actions .detail-fav-btn.is-fav{color:var(--text-on-photo);border-color:var(--glass-border)}.detail-hero-actions .detail-fav-btn:hover:not(:disabled),.detail-hero-actions .detail-share-btn:hover{background:var(--photo-scrim-mid);color:var(--text-on-photo);border-color:var(--glass-border)}.detail-sheet{position:relative;z-index:1;max-width:var(--max-w);margin:-28px auto 0;padding:22px var(--pad-x) 0;border-radius:24px 24px 0 0;background:var(--bg-canvas);display:grid;grid-gap:18px;gap:18px}.detail-id{display:grid;grid-gap:8px;gap:8px}.detail-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.badge-verified{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 4px;border-radius:999px;font-size:.8125rem;font-weight:600;color:var(--text-accent);background:var(--accent-subtle);border:1px solid var(--border-accent)}.badge-verified-seal{width:18px;height:18px;border-radius:999px;display:grid;place-items:center;color:var(--text-on-accent);background:var(--accent-fill)}.detail-sheet .detail-hero-cat{color:var(--text-secondary);background:var(--bg-sunken);border:0;font-weight:500;font-size:.8125rem}.detail-sheet .detail-hero-name{color:var(--text-primary);text-shadow:none;font-size:clamp(1.75rem,5vw,2.5rem);line-height:1.08}.detail-meta-line{display:flex;flex-wrap:wrap;align-items:center;gap:5px;font-size:.9375rem;color:var(--text-tertiary)}.detail-meta-line strong{color:var(--text-primary)}.detail-star,.review-star.is-on{color:var(--accent-star)}.detail-tabs{position:-webkit-sticky;position:sticky;top:var(--nav-h);z-index:var(--z-sticky);display:flex;gap:24px;margin-bottom:20px;background:var(--bg-canvas);border-bottom:1px solid var(--border-default)}.detail-tab{min-height:46px;padding:0;margin-bottom:-1px;font-size:.9375rem;font-weight:500;color:var(--text-tertiary);background:none;border:0;border-bottom:2px solid transparent;cursor:pointer;transition:color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.detail-tab.is-active,.detail-tab:hover{color:var(--text-primary)}.detail-tab.is-active{font-weight:600;border-bottom-color:var(--brand-fill)}.detail-tab:focus-visible{outline:none;box-shadow:0 0 0 3px var(--focus-ring);border-radius:var(--radius-sm)}.detail-panel[hidden]{display:none}.detail-panel>.detail-section-head:first-child{margin-top:0}.detail-infos{display:grid;grid-gap:20px;gap:20px}.detail-infos .detail-section-title{margin:0 0 12px}.detail-info-row{display:flex;align-items:flex-start;gap:12px;padding:14px;border-radius:var(--radius-lg);background:var(--bg-surface);border:1px solid var(--border-subtle)}.detail-info-icon{flex:none;width:36px;height:36px;display:grid;place-items:center;border-radius:10px;color:var(--text-brand);background:var(--brand-subtle)}.detail-info-body{display:grid;grid-gap:2px;gap:2px}.detail-info-label{font-size:.8rem;font-weight:600;color:var(--text-tertiary)}.detail-info-value{font-size:.9375rem;line-height:1.45;color:var(--text-primary)}.detail-closed-note{font-size:.8rem;margin-top:8px}.detail-infos .detail-gallery-section{margin:0}.detail-book-card{display:grid;grid-gap:14px;gap:14px}.detail-book-from{display:grid;grid-gap:2px;gap:2px;margin:0}.detail-book-from span{font-size:.8125rem;color:var(--text-tertiary)}.detail-book-from strong{font-family:var(--font-display);font-weight:600;font-size:1.75rem;letter-spacing:-.02em;color:var(--text-primary);font-feature-settings:tabular-nums lining-nums;font-variant-numeric:tabular-nums lining-nums}.detail-book-rating{display:flex;align-items:center;gap:5px;margin:0;font-size:.9rem;color:var(--text-tertiary)}.detail-book-rating strong{color:var(--text-primary)}.detail-book-address{display:flex;gap:8px;margin:0;padding-top:14px;border-top:1px solid var(--border-subtle);font-size:.875rem;line-height:1.45;color:var(--text-secondary)}.detail-book-address svg{flex:none;margin-top:2px}@media (max-width:860px){.detail-page{padding-bottom:88px}.detail-page .detail-aside{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:var(--z-fab)}.detail-page .detail-book-card{grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px var(--pad-x) calc(12px + env(safe-area-inset-bottom, 0px));border-radius:0;border-width:1px 0 0;border-color:var(--border-subtle);background:var(--bg-raised);box-shadow:var(--elev-3)}.detail-book-from strong{font-size:1.25rem}.detail-book-address,.detail-book-rating{display:none}.detail-book-card .btn-full{width:auto}body:has(.detail-book-card) .ai-chat-fab{bottom:96px}}.detail-page .detail-section{scroll-margin-top:calc(var(--nav-h) + 16px);background:transparent;border:0;padding:0}.detail-page .detail-section-title{font-family:var(--font-display);font-weight:600;font-size:1.375rem;letter-spacing:-.01em}.detail-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.detail-section-head .detail-section-title{margin:0}.detail-page .services-list{gap:10px}.detail-page .service-row{flex-direction:column;align-items:stretch;gap:10px;padding:14px;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--elev-1)}.service-row-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.detail-page .service-name{font-weight:600;font-size:1rem}.detail-page .service-price{flex:none;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.detail-page .service-row-price{display:flex;flex-direction:row;flex-shrink:1;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid var(--border-subtle)}.detail-page .service-duration{display:inline-flex;align-items:center;gap:5px;font-size:.875rem;color:var(--text-tertiary)}.rating-summary{display:flex;align-items:center;gap:14px;padding:16px;margin-bottom:12px;border-radius:var(--radius-lg);background:var(--bg-surface);border:1px solid var(--border-subtle)}.rating-summary-value{font-family:var(--font-display);font-weight:600;font-size:2.75rem;line-height:1;letter-spacing:-.03em;font-feature-settings:tabular-nums lining-nums;font-variant-numeric:tabular-nums lining-nums}.rating-summary-side{display:grid;grid-gap:4px;gap:4px}.review-rating{display:inline-flex;gap:2px}.detail-page .review-item{padding:14px;border-radius:var(--radius-lg);background:var(--bg-surface);border:1px solid var(--border-subtle)}.detail-page .reviews-list{display:grid;grid-gap:10px;gap:10px}.review-more{font-size:.85rem;margin-top:8px}.detail-page .detail-description{max-width:none;padding:0;margin:0 0 12px;font-size:1rem;line-height:1.6;color:var(--text-secondary)}.detail-page .detail-body{padding-top:24px}.detail-page .detail-card{border-color:var(--border-subtle);box-shadow:var(--elev-1)}@media (min-width:861px){.detail-hero{height:380px}}.confirm-modal-overlay{z-index:var(--z-modal);background:var(--bg-scrim)}.alert-modal,.confirm-modal{background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--elev-3)}.alert-modal-header{--tone-fg:var(--status-info-fg);--tone-bg:var(--status-info-bg);--tone-border:var(--status-info-border);position:relative;display:grid;justify-items:center;grid-gap:12px;gap:12px;padding:30px 24px 6px;background:none;color:var(--text-primary)}.alert-modal-header-error{--tone-fg:var(--status-danger-fg);--tone-bg:var(--status-danger-bg);--tone-border:var(--status-danger-border);background:none}.alert-modal-header-warning{--tone-fg:var(--status-warning-fg);--tone-bg:var(--status-warning-bg);--tone-border:var(--status-warning-border);background:none}.alert-modal-header-permission{--tone-fg:var(--text-accent);--tone-bg:var(--accent-subtle);--tone-border:var(--border-accent);background:none}.alert-modal-header-info{background:none}.alert-modal-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:999px;color:var(--tone-fg);background:var(--tone-bg);border:1px solid var(--tone-border);font-size:0}.alert-modal-title{margin:0;color:var(--text-primary);font-size:1.375rem;line-height:1.2;text-align:center}.alert-modal-close{position:absolute;top:12px;right:12px;width:36px;height:36px;display:grid;place-items:center;border-radius:999px;color:var(--text-secondary);background:var(--bg-sunken)}.alert-modal-close:hover{color:var(--text-primary)}.alert-modal-body{color:var(--text-secondary);text-align:center}.nav-avatar-btn{width:40px;height:40px;background:var(--brand-fill);border:0}.nav-avatar-btn.open,.nav-avatar-btn:hover{background:var(--brand-hover)}.nav-avatar-initials{font-size:.875rem;font-weight:700;color:var(--text-on-brand);letter-spacing:.02em}.nav-notif-btn,.nav-theme-btn{width:40px;height:40px;background:var(--bg-surface);border:1px solid var(--border-default)}.nav-notif-btn:hover,.nav-theme-btn:hover{background:var(--bg-sunken)}.nav-notif-badge{border:2px solid var(--bg-canvas);background:var(--status-danger-solid);color:var(--status-danger-on-solid)}.pro-subnav{justify-content:flex-start;gap:6px;padding:2px 0 6px;margin-bottom:0;border-bottom:0;overflow-x:auto;scrollbar-width:none}.pro-subnav::-webkit-scrollbar{display:none}.pro-subnav-link{flex:none;min-height:38px;padding:0 16px;margin:0;font-size:.875rem;font-weight:500;color:var(--text-secondary);background:transparent;border:1px solid var(--border-default);border-radius:var(--radius-full);cursor:pointer;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.pro-subnav-link:hover{color:var(--text-primary);background:var(--bg-surface)}.pro-subnav-link.active{color:var(--bg-canvas);background:var(--text-primary);border-color:var(--text-primary);font-weight:600}.pro-subnav-link:focus-visible{outline:none;box-shadow:0 0 0 3px var(--focus-ring)}@media (max-width:640px){.pro-subnav-link{flex:none;padding:0 14px;font-size:.84rem}}@media (min-width:861px){.pro-subnav{justify-content:center}}.completion-card,.dashboard-section,.pro-quicklink-card,.profile-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--elev-1)}.dashboard-section{padding:20px}.section-title{font-family:var(--font-display);font-weight:600;font-size:1.125rem;letter-spacing:-.01em}.app-main>h1,.page-header h1,.section-toolbar .section-title{font-family:var(--font-display);font-weight:600;letter-spacing:-.015em}.dashboard-section .dashboard-section,.dashboard-section .detail-card,.dashboard-section .provider-card{box-shadow:none}.cta-banner{background:var(--brand-fill);border-radius:var(--radius-lg);padding:20px}.cta-banner:before{display:none}.cta-banner-text h2{font-family:var(--font-display);font-weight:600;font-size:1.1875rem;letter-spacing:-.01em}.cta-banner-text p{color:var(--text-on-photo-muted);opacity:1}.info-banner{align-items:center;border-radius:var(--radius-lg)}.info-banner-icon{flex:none;width:32px;height:32px;display:grid;place-items:center;border-radius:999px;font-size:0;background:var(--bg-surface);color:currentColor}.info-banner-warning .info-banner-icon{color:var(--status-warning-fg)}.info-banner-error .info-banner-icon{color:var(--status-danger-fg)}.empty-state h3{font-family:var(--font-display);font-weight:600;font-size:1.125rem;color:var(--text-primary)}.empty-icon{width:56px;height:56px;margin:0 auto 12px;display:grid;place-items:center;border-radius:999px;font-size:0;color:var(--text-brand);background:var(--brand-subtle)}.hero{overflow:visible;padding-bottom:0}.hero .hero-content h1{margin-bottom:24px}.hero .search-bar{position:relative;z-index:3;margin-bottom:-44px;padding:6px;gap:0;background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--elev-3)}.hero .search-divider{align-self:stretch;width:1px;margin:8px 0;background:var(--border-subtle)}.category-city-filter-inner .area-select__control,.hero .search-bar .area-select__control{min-height:52px;border-radius:var(--radius-md)}.category-city-filter-inner .area-select__control:hover,.hero .search-bar .area-select__control:hover{background:var(--bg-sunken)}.hero .search-bar .search-btn{min-height:52px;padding:0 28px;border-radius:var(--radius-md);font-size:1rem}.search-btn:disabled{opacity:.55;cursor:not-allowed}.categories{padding-top:92px;background:var(--bg-canvas)}.area-select__lead{display:inline-flex;flex:none;padding-left:14px;color:var(--text-brand)}.area-select__lead+.area-select__input{padding-left:10px}.area-select__input::placeholder{color:var(--text-tertiary);font-weight:500}.area-select__chevron{display:inline-flex;font-size:0}.area-select--open .area-select__chevron{transform:rotate(180deg)}.area-select__clear{font-size:0}@media (max-width:860px){.hero .search-divider{width:auto;height:1px;margin:0 12px}.hero .search-bar .search-btn{width:100%;margin-top:6px}}@media (max-width:640px){.hero{padding-top:140px}.hero .hero-content h1{margin-bottom:20px}.categories{padding-top:80px}}@media (min-width:641px){.categories-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}.nav-avatar-btn--guest{color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-default)}.nav-avatar-btn--guest.open,.nav-avatar-btn--guest:hover{background:var(--bg-sunken)}.auth-page{align-items:flex-start;padding:48px var(--pad-x) 40px}.auth-card{max-width:420px;padding:0;background:none;border:0;box-shadow:none}.auth-brand{margin-bottom:22px}.auth-title{font-family:var(--font-display);font-weight:600;font-size:clamp(1.875rem,4vw,2.25rem);line-height:1.1;letter-spacing:-.02em;color:var(--text-primary)}.auth-sub{margin-bottom:24px;line-height:1.45}.auth-form{position:relative;padding:22px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--elev-1)}.auth-footer .link-btn,.auth-footer a{font-weight:600;color:var(--text-brand);text-decoration:none}@media (min-width:861px){.auth-page{align-items:center}}.ob-role-card-icon,.profile-selection-icon{flex:none;width:46px;height:46px;display:grid;place-items:center;border-radius:999px;font-size:0;color:var(--text-brand);background:var(--brand-subtle)}.ob-role-card+.ob-role-card .ob-role-card-icon{color:var(--text-accent);background:var(--accent-subtle)}.ob-role-card-arrow,.profile-selection-arrow{flex:none;color:var(--text-tertiary)}.ob-back-btn{background:var(--bg-surface);border:1px solid var(--border-default)}.ob-back-btn:hover{background:var(--bg-sunken)}.confirm-modal-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:999px;font-size:0;color:var(--status-danger-fg);background:var(--status-danger-bg);border:1px solid var(--status-danger-border)}.confirm-modal-icon--primary{color:var(--text-brand);background:var(--brand-subtle);border-color:var(--brand-subtle-hover)}.confirm-modal-icon--green{color:var(--status-success-fg);background:var(--status-success-bg);border-color:var(--status-success-border)}.confirm-modal-title{font-family:var(--font-display);font-weight:600;font-size:1.375rem;line-height:1.2}.btn-confirm-green{background:var(--status-success-solid);border-color:var(--status-success-solid);color:var(--status-success-on-solid)}.btn-confirm-green:hover:not(:disabled){background:color-mix(in srgb,var(--status-success-solid) 85%,#000)}.bk-provider-gate-icon,.pref-section-icon,.pw-suggest-icon,.setup-welcome-icon{flex:none;width:40px;height:40px;display:grid;place-items:center;border-radius:12px;font-size:0;color:var(--text-brand);background:var(--brand-subtle)}.bk-provider-gate-banner-warn .bk-provider-gate-icon{color:var(--status-warning-fg);background:var(--bg-surface)}.appointment-card-meta span,.billing-feat-icon,.bk-service-tag,.exception-added-date,.payment-method-icon,.payment-pill,.service-badge,.service-duration{display:inline-flex;align-items:center;gap:4px}.billing-feat-icon{justify-content:center}.review-star{color:var(--border-strong)}.review-star.is-on{color:var(--accent-star)}:root{font-synthesis-weight:none}.categories-modal-title,.modal-title,.provider-card-name,.section-center-title,.service-form-modal-title,.walkin-title,h1,h2{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em}.provider-card-name{font-size:1.125rem;line-height:1.2}@media (min-width:861px){.app-main .providers-grid{grid-template-columns:minmax(0,1fr);gap:14px}.client-card-lnk{display:grid;grid-template-columns:240px minmax(0,1fr)}.client-card .provider-card-gallery{aspect-ratio:auto;height:100%;min-height:168px}.client-card .provider-card-body{padding:18px 20px;justify-content:center}.client-card-content{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:6px 18px;padding:14px 20px}}.ob-header,.ob-role-cards,.ob-role-left,.ob-role-page,.ob-topbar,.ob-wrap{background:var(--bg-canvas)}.ob-role-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--elev-1)}.ob-title{font-family:var(--font-display);font-weight:600;letter-spacing:-.02em}.ob-login-hint a,.ob-role-footer a{font-weight:600;color:var(--text-brand);text-decoration:none}@media (max-width:640px){.info-banner{gap:12px;padding:14px 16px}.info-banner>.btn-sm,.info-banner>button{flex:none}}.detail-book-from strong{white-space:nowrap}@media (max-width:860px){.detail-book-from{gap:0}.detail-book-from span{font-size:.75rem}.detail-book-card .btn-lg{min-height:48px;padding:0 20px;font-size:.9375rem}}.provider-card--v2{border-color:var(--border-subtle);border-radius:20px;box-shadow:var(--elev-1)}.provider-card--v2:hover{transform:translateY(-2px);border-color:var(--border-default);box-shadow:var(--elev-2)}.provider-card--v2 .provider-card-gallery{aspect-ratio:3/2}.provider-card--v2 .provider-card-gallery-img{transition:transform .4s var(--ease-standard),opacity .25s ease}.provider-card--v2:hover .provider-card-gallery-img{transform:scale(1.03)}.ai-chat-panel-cover,.detail-hero-default,.pcard-default-cover,.pcard-scrim{position:absolute;inset:0}.pcard-scrim{z-index:1;pointer-events:none;background:linear-gradient(to top,var(--photo-scrim-mid) 0,transparent 46%)}.pcard-badges{position:absolute;left:12px;right:12px;bottom:12px;z-index:2;display:flex;flex-wrap:wrap;align-items:center;gap:6px;pointer-events:none}.pcard-verified{display:inline-flex;align-items:center;gap:5px;padding:3px 10px 3px 4px;border-radius:999px;font-size:.75rem;font-weight:600;color:var(--text-accent);background:var(--accent-subtle);border:1px solid var(--border-accent)}.pcard-verified-seal{width:16px;height:16px;display:grid;place-items:center;border-radius:999px;color:var(--text-on-accent);background:var(--accent-fill)}.pcard-cat{padding:3px 10px;border-radius:999px;font-size:.75rem;font-weight:600;background:var(--glass-fill);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.pcard-cat,.provider-card--v2 .provider-card-fav-btn{color:var(--text-on-photo);border:1px solid var(--glass-border)}.provider-card--v2 .provider-card-fav-btn{top:12px;left:12px;width:36px;height:36px;background:var(--photo-scrim-top);box-shadow:none}.provider-card--v2 .provider-card-fav-btn.is-fav,.provider-card--v2 .provider-card-fav-btn:hover:not(:disabled){color:var(--text-on-photo);background:var(--photo-scrim-mid)}.provider-card--v2 .provider-card-gallery-count{top:12px;right:12px;padding:3px 9px;color:var(--text-on-photo)}.pcard-body{display:flex;flex-direction:column;gap:8px;padding:16px 16px 14px;flex:1 1}.provider-card--v2 .provider-card-name{margin:0;font-size:1.1875rem;line-height:1.2;color:var(--text-primary)}.pcard-meta{display:flex;align-items:center;gap:5px;min-width:0;margin:0;font-size:.875rem;color:var(--text-tertiary)}.pcard-meta strong{color:var(--text-primary);font-weight:600}.pcard-star{flex:none;color:var(--accent-star)}.pcard-pin{flex:none}.pcard-location{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.address-link{display:inline-flex;align-items:center;gap:5px;min-width:0;color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-underline-offset:3px;cursor:pointer}.address-link:focus-visible,.address-link:hover{color:var(--text-brand);-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.detail-book-address.address-link{display:flex;align-items:flex-start}.pcard-services{display:grid;grid-gap:6px;gap:6px;margin:2px 0 0;padding:10px 0 0;list-style:none;border-top:1px solid var(--border-subtle)}.pcard-service{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:.875rem}.pcard-service-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.pcard-service-price{flex:none;font-weight:600;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pcard-more{font-size:.8125rem;color:var(--text-tertiary)}.pcard-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:12px}.pcard-slot{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:600;color:var(--status-success-fg);background:var(--status-success-bg)}.pcard-slot-dot{width:6px;height:6px;border-radius:999px;background:var(--status-success-solid)}.pcard-cta{display:inline-flex;align-items:center;gap:2px;margin-left:auto;font-size:.875rem;font-weight:600;color:var(--text-brand)}.market-hero,.market-page{background:var(--bg-canvas)}.market-hero{padding:40px var(--pad-x) 8px;z-index:calc(var(--z-sticky) - 1)}.market-hero-inner{max-width:var(--max-w);margin:0 auto}.market-eyebrow{display:inline-flex;align-items:center;gap:6px;margin:0 0 10px}.market-title{margin:0 0 8px;max-width:22ch;font-size:clamp(1.875rem,4.5vw,3rem);line-height:1.08;letter-spacing:-.02em;color:var(--text-primary)}.market-sub{margin:0 0 22px;font-size:1rem;color:var(--text-secondary)}.market-search .search-bar{max-width:760px;padding:6px;background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--elev-2)}.market-search .search-bar .area-select__control,.market-search .search-bar .search-btn{min-height:52px;border-radius:var(--radius-md)}.market-search .search-bar .search-btn{padding:0 28px}.market-search .search-divider{align-self:stretch;width:1px;margin:8px 0;background:var(--border-subtle)}.market-body{max-width:var(--max-w);margin:0 auto;padding:28px 0 64px;display:grid;grid-template-columns:minmax(0,1fr);grid-gap:40px;gap:40px}.market-row{min-width:0}.market-row-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:0 var(--pad-x);margin-bottom:14px}.market-row-title{margin:0;font-size:clamp(1.375rem,2.6vw,1.75rem);line-height:1.15;color:var(--text-primary)}.market-row-actions{display:flex;align-items:center;gap:8px}.market-see-all{display:inline-flex;align-items:center;gap:2px;color:var(--text-brand)}.market-arrow{width:38px;height:38px;display:none;place-items:center;border-radius:999px;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-default);cursor:pointer}.market-arrow:hover:not(:disabled){background:var(--bg-sunken)}.market-arrow:disabled{opacity:.35;cursor:default}.market-track{--market-gap:14px;--market-per-view:1;display:flex;gap:var(--market-gap);padding:4px var(--pad-x) 12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 var(--pad-x);scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.market-track::-webkit-scrollbar{display:none}.market-item{flex:0 0 calc((100% - var(--market-gap) * (var(--market-per-view) - 1)) / var(--market-per-view));display:flex;scroll-snap-align:start}@media (min-width:641px){.market-track{--market-per-view:2}}@media (min-width:1024px){.market-track{--market-per-view:3}}.market-item>.provider-card{width:100%}.market-dots{display:flex;justify-content:center;gap:8px;margin-top:2px}.market-dot{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:var(--border-strong);cursor:pointer;transition:width var(--dur-base) var(--ease-standard),background var(--dur-base) var(--ease-standard)}.market-dot.is-on{width:22px;background:var(--brand-fill)}.market-dot:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.market-empty{padding:48px var(--pad-x)}.market-empty .btn-secondary{margin-top:16px}@media (max-width:860px){.market-search .search-divider{width:auto;height:1px;margin:0 12px}.market-search .search-bar .search-btn{width:100%;margin-top:6px}}@media (min-width:861px){.market-arrow{display:grid}.market-hero{padding-top:56px}}.nav-mobile-all-icon{display:grid;place-items:center;color:var(--text-brand);background:var(--brand-subtle)}.market-hero{padding-left:0;padding-right:0}.market-hero-inner{padding:0 var(--pad-x)}.market-item,.market-item>.provider-card,.provider-card--v2 .pcard-body{min-width:0}.pcard-cta,.pcard-slot{white-space:nowrap}.pcard-slot{min-width:0;overflow:hidden;text-overflow:ellipsis}.section-link-all{display:inline-flex;align-items:center;gap:2px;justify-self:start;margin-top:2px;font-size:.9375rem;font-weight:600;color:var(--text-brand);text-decoration:none}.section-link-all:hover{text-decoration:underline}.listing-count-row>:last-child{margin-left:auto}.ai2-head,.market-row-head{align-items:center}.ai2-head{flex:none;display:flex;gap:4px;padding:12px 10px 12px 14px;border-bottom:1px solid var(--border-subtle);background:var(--bg-surface)}.ai2-avatar{flex:none;width:38px;height:38px;margin-right:8px;border-radius:var(--radius-md);overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,var(--band-start),var(--band-end));color:var(--text-on-photo-accent)}.ai2-avatar img{width:100%;height:100%;object-fit:cover}.ai2-title{flex:1 1;min-width:0;display:grid;line-height:1.2}.ai2-title strong{font-family:var(--font-display);font-weight:600;font-size:1.0625rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai2-title span{display:flex;align-items:center;gap:6px;font-size:.75rem;color:var(--text-tertiary)}.ai2-title i{width:7px;height:7px;border-radius:50%;background:var(--status-success-fg)}.ai2-icon-btn{flex:none;width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer}.ai2-icon-btn:hover{background:var(--bg-sunken)}.ai2-act:focus-visible,.ai2-chip:focus-visible,.ai2-icon-btn:focus-visible,.ai2-send:focus-visible,.ai2-starters button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ai-chat-messages{padding:16px 14px 8px;gap:18px}.ai2-ai{display:grid;grid-template-columns:28px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;width:100%}.ai2-ai-dot{width:28px;height:28px;margin-top:2px;border-radius:9px;display:grid;place-items:center;background:linear-gradient(135deg,var(--band-start),var(--band-end));color:var(--text-on-photo-accent)}.ai2-ai-body{min-width:0;display:grid;grid-gap:6px;gap:6px}.ai-msg-row-ai .ai-msg-ai{max-width:none;padding:0}.ai-msg-user{font-family:var(--font-sans);font-weight:400;font-size:.9375rem}.ai2-actions{display:flex;align-items:center;gap:2px;margin-left:-6px}.ai2-act{height:28px;min-width:28px;padding:0 7px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);font:inherit;font-size:.75rem;font-weight:600;cursor:pointer}.ai2-act:hover{background:var(--bg-sunken);color:var(--text-primary)}.ai2-act.is-on{background:var(--brand-subtle);color:var(--text-brand)}.ai2-act.is-ok{color:var(--status-success-fg)}.ai2-time{margin-left:6px;font-size:.72rem;color:var(--text-tertiary)}.ai2-fb{display:grid;grid-gap:10px;gap:10px;padding:12px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-canvas);font-size:.8125rem}.ai2-chips{display:flex;flex-wrap:wrap;gap:6px}.ai2-chip{padding:6px 11px;border:1px solid var(--border-default);border-radius:var(--radius-full);background:var(--bg-surface);color:var(--text-secondary);font:inherit;font-size:.78rem;cursor:pointer}.ai2-chip.is-on{border-color:var(--border-brand);background:var(--brand-subtle);color:var(--text-brand);font-weight:600}.ai2-fb-text{width:100%;resize:none;padding:8px 10px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font:inherit;font-size:.8125rem}.ai2-fb-actions{display:flex;justify-content:flex-end;gap:8px}.ai2-thanks{display:flex;align-items:center;gap:6px;margin:0;font-size:.78rem;color:var(--text-tertiary)}.ai2-thanks svg{color:var(--status-success-fg)}.ai2-empty{flex:1 1;display:grid;align-content:center;justify-items:center;grid-gap:12px;gap:12px;padding:0 18px;text-align:center}.ai2-empty-mark{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,var(--band-start),var(--band-end));color:var(--text-on-photo-accent)}.ai2-empty h3{margin:0;font-family:var(--font-display);font-weight:600;font-size:1.4rem}.ai2-empty p{margin:0;max-width:30ch;color:var(--text-secondary);font-size:.9rem}.ai2-starters{display:grid;grid-gap:8px;gap:8px;width:100%;margin-top:6px}.ai2-starters button{padding:11px 14px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font:inherit;font-size:.875rem;text-align:left;cursor:pointer}.ai2-starters button:hover{border-color:var(--border-brand);background:var(--brand-subtle)}.ai2-compose{flex:none;padding:10px 12px calc(12px + env(safe-area-inset-bottom, 0px));border-top:1px solid var(--border-subtle);background:var(--bg-surface)}.ai2-field{display:flex;align-items:flex-end;gap:8px;padding:7px 7px 7px 14px;border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-canvas)}.ai2-field:focus-within{border-color:var(--border-brand)}.ai2-input{flex:1 1;min-width:0;max-height:140px;padding:6px 0;border:0;outline:0;resize:none;background:transparent;color:var(--text-primary);font-family:var(--font-sans);font-size:1rem;line-height:1.45}.ai2-input:focus,.ai2-input:focus-visible{border:0;box-shadow:none;outline:0}.ai2-send{flex:none;width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:var(--radius-md);background:var(--brand-fill);color:var(--text-on-brand);cursor:pointer}.ai2-send:disabled{background:var(--border-default);color:var(--text-tertiary);cursor:default}