:root{--text-primary:#131313;--text-secondary:#717171;--text-tertiary:#929292;--surface-primary:#f8f9f9;--surface-secondary:#f1f2f3;--surface-tertiary:#e3e5e6;--surface-blur:rgba(248,248,248,0.95);--accent:#f4296f;--accent-light:#fef0f4;--accent-disabled:#f9a3be;--surface-disabled:#dcdfe0;--text-disabled:#b8b8b8;--checkbox-active:#f4296f;--basic-white:#ffffff;--stroke-tertiary:#a1a1a1;--progress-bg:#fcd6e3;--progress-fill:#f4296f}*{margin:0;padding:0;box-sizing:border-box}html{background:#e8e8e8}body{font-family:'Onest',-apple-system,sans-serif;background:var(--surface-primary);color:var(--text-primary);max-width:480px;margin:0 auto;min-height:100dvh;-webkit-font-smoothing:antialiased;position:relative}@media (min-width:481px){body{box-shadow:0 0 40px rgba(0,0,0,0.08);border-left:1px solid var(--surface-tertiary);border-right:1px solid var(--surface-tertiary)}}.loading-screen{max-width:480px;margin:0 auto;min-height:100dvh;background:var(--surface-primary)}.skeleton{background:var(--surface-tertiary);border-radius:8px;position:relative;overflow:hidden}.skeleton::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0.4) 50%,transparent 100%);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.skeleton-circle{border-radius:50%}.skeleton-header{padding:8px 24px;height:65px;border-bottom:1px solid var(--surface-tertiary)}.skeleton-profile{display:flex;flex-direction:column;align-items:center;padding:24px 24px 0;gap:12px}.skeleton-cards{display:flex;gap:16px;padding:24px;overflow:hidden}.error-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100dvh;padding:24px;text-align:center;gap:12px}.error-screen h2{font-size:20px;font-weight:600}.error-screen p{font-size:14px;color:var(--text-secondary);line-height:20px}.page{display:none}.page.active{display:flex;flex-direction:column;min-height:100dvh}.sticky-header{position:sticky;top:0;z-index:100;background:var(--surface-blur);backdrop-filter:blur(50px);-webkit-backdrop-filter:blur(50px);padding:8px 24px 0}.header-row{display:flex;align-items:center;justify-content:space-between;height:56px}.header-border{height:1px;background:var(--surface-tertiary);margin:0 -24px}.logo-img{height:48px;width:auto}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:4px;background:var(--accent);color:var(--basic-white);border:none;border-radius:26px;padding:14px 24px;font-family:'Onest',sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:opacity 0.2s;line-height:16px;min-height:48px}.btn-primary:disabled{background:var(--surface-disabled);color:var(--text-disabled);cursor:not-allowed}.btn-primary:not(:disabled):active{opacity:0.85}.btn-arrow{width:20px;height:20px;flex-shrink:0}.btn-outline{display:flex;align-items:center;justify-content:center;gap:8px;background:transparent;color:var(--text-primary);border:1px solid var(--accent);border-radius:26px;padding:14px 24px;font-family:'Onest',sans-serif;font-size:14px;font-weight:500;cursor:pointer;line-height:16px;min-height:48px;width:100%;text-decoration:none}.btn-outline:active{background:var(--accent-light)}.btn-selected{display:flex;align-items:center;justify-content:center;gap:4px;background:var(--accent-light);color:var(--accent);border:none;border-radius:26px;padding:14px 24px;font-family:'Onest',sans-serif;font-size:14px;font-weight:500;cursor:pointer;line-height:16px;min-height:48px;width:100%}.profile-section{display:flex;flex-direction:column;align-items:center;padding:24px 24px 0;gap:16px}.profile-photo{width:120px;height:120px;border-radius:50%;object-fit:cover;background:var(--surface-tertiary)}.profile-info{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.profile-name{display:flex;align-items:center;justify-content:center;gap:4px;font-size:16px;font-weight:500;line-height:24px}.badge-check{width:16px;height:16px;flex-shrink:0}.profile-meta{display:flex;align-items:center;justify-content:center;gap:4px;font-size:12px;font-weight:500;color:var(--text-primary);line-height:16px}.profile-meta svg{width:16px;height:16px;flex-shrink:0}.profile-meta.secondary{color:var(--text-secondary)}#profile-locations{display:flex;flex-direction:column;align-items:center}.profile-location-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{padding:0 24px}.section{margin-top:24px}.section-title{font-size:16px;font-weight:500;line-height:20px;margin-bottom:8px}.section-title-semibold{font-size:16px;font-weight:600;line-height:20px;margin-bottom:8px}.section-text{font-size:14px;font-weight:400;line-height:20px;color:var(--text-primary)}.show-more{color:var(--accent);font-weight:500;cursor:pointer;background:none;border:none;font-family:inherit;font-size:inherit}.services-scroll{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:24px;-webkit-overflow-scrolling:touch;padding-bottom:8px;margin:0 -24px;padding-left:24px;padding-right:24px}.services-scroll::-webkit-scrollbar{display:none}.service-card{flex:0 0 255px;scroll-snap-align:start;border-radius:26px;overflow:hidden;display:flex;flex-direction:column}.service-card-image{width:100%;height:220px;object-fit:cover;border-radius:26px;background:var(--surface-tertiary);display:block}.service-card-body{padding:16px 0 8px;flex:1;display:flex;flex-direction:column}.service-card-name{font-size:18px;font-weight:500;line-height:24px}.service-card-desc{font-size:14px;color:var(--text-secondary);line-height:16px;margin-top:8px}.service-card-price{margin-top:auto;padding-top:9px;font-size:14px;color:var(--text-secondary);line-height:24px}.service-card-price strong{font-size:18px;font-weight:500;color:var(--text-primary);letter-spacing:-0.4px}.portfolio-scroll{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:24px;-webkit-overflow-scrolling:touch;margin:0 -24px;padding:0 24px}.portfolio-scroll::-webkit-scrollbar{display:none}.portfolio-img{flex:0 0 255px;height:182px;border-radius:26px;object-fit:cover;background:var(--surface-tertiary);scroll-snap-align:start}img.profile-photo,img.service-card-image,img.portfolio-img{opacity:0;transition:opacity 0.3s ease}img.profile-photo.loaded,img.service-card-image.loaded,img.portfolio-img.loaded{opacity:1}.contacts-list{display:flex;flex-direction:column;gap:16px}.bottom-cta{position:sticky;bottom:0;margin-top:auto;background:var(--surface-blur);backdrop-filter:blur(50px);-webkit-backdrop-filter:blur(50px);border-top:1px solid var(--surface-tertiary);padding:16px 24px;padding-bottom:max(16px,env(safe-area-inset-bottom,16px))}.bottom-cta-split{display:flex;align-items:center;gap:16px}.bottom-cta-price{flex-shrink:0;width:165px}.bottom-cta-price .price-main{font-size:18px;font-weight:500;line-height:24px}.bottom-cta-price .price-from{font-size:14px;font-weight:400;color:var(--text-secondary)}.bottom-cta-price .price-duration{font-size:12px;font-weight:400;color:var(--text-secondary);line-height:16px}.bottom-cta .btn-primary{flex:1;width:auto}.bottom-cta-full .btn-primary{width:100%}.booking-header{position:sticky;top:0;z-index:100;background:var(--surface-primary)}.booking-header-row{display:flex;align-items:center;padding:16px 24px;gap:12px}.back-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--text-primary);padding:0}.back-btn svg{width:24px;height:24px}.booking-title{font-size:16px;font-weight:500;flex:1;text-align:center;line-height:20px;margin-right:24px}.progress-bar{height:2px;background:var(--progress-bg)}.progress-fill{height:100%;background:var(--progress-fill);transition:width 0.3s;border-radius:0 4px 4px 0}.booking-services-scroll{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:24px;-webkit-overflow-scrolling:touch;padding:16px 24px 8px}.booking-services-scroll::-webkit-scrollbar{display:none}.additional-section{padding:0 24px 16px}.additional-section-title{font-size:16px;font-weight:600;line-height:20px;margin-bottom:16px}.additional-list{display:flex;flex-direction:column;gap:16px}.additional-item{display:flex;align-items:center;gap:16px;padding:16px;background:var(--surface-secondary);border-radius:26px;cursor:pointer;transition:all 0.15s}.additional-item:active{opacity:0.9}.additional-info{flex:1;display:flex;flex-direction:column;gap:8px}.additional-name{font-size:16px;font-weight:500;line-height:24px}.additional-desc{font-size:12px;color:var(--text-secondary);line-height:20px}.additional-price{font-size:16px;font-weight:500;line-height:24px}.additional-price span{font-weight:400;color:var(--text-secondary)}.checkbox-icon{width:24px;height:24px;border-radius:6px;border:1.5px solid var(--stroke-tertiary);flex-shrink:0;transition:all 0.15s;display:flex;align-items:center;justify-content:center}.additional-item.selected .checkbox-icon{background:var(--checkbox-active);border-color:var(--checkbox-active)}.additional-item.selected .checkbox-icon::after{content:'';width:6px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg);margin-top:-2px}.date-section{padding:16px 24px}.date-label{font-size:16px;font-weight:600;margin-bottom:8px;line-height:20px}.date-input-wrap{display:flex;align-items:center;padding:0 16px;height:52px;background:var(--surface-secondary);border-radius:26px;cursor:pointer;position:relative}.date-input-wrap input{font-family:'Onest',sans-serif;font-size:14px;background:transparent;border:none;outline:none;width:100%;color:var(--text-primary);cursor:pointer}.date-input-wrap input[type="date"]::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.date-nav{display:flex;flex-direction:row;align-items:center;gap:16px;height:52px;padding:0 16px;background:var(--surface-secondary);border-radius:26px;position:relative}.date-arrow{display:flex;align-items:center;justify-content:center;width:24px;min-width:24px;height:24px;border:none;background:none;color:var(--accent);cursor:pointer;flex-shrink:0;padding:0;-webkit-appearance:none}.date-arrow:disabled{opacity:0.3;pointer-events:none}.date-center{flex:1;min-width:0;display:flex;align-items:center;justify-content:center}.date-pill{position:relative;display:flex;align-items:center;justify-content:center;background:var(--surface-tertiary);border-radius:16px;padding:8px 16px;cursor:pointer}.date-pill-text{font-size:14px;font-weight:400;color:var(--text-primary);line-height:16px;white-space:nowrap;pointer-events:none}.date-pill-input{position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;cursor:pointer;border:0;margin:0;padding:0;box-sizing:border-box}.date-pill-input::-webkit-calendar-picker-indicator{position:absolute;left:0;top:0;width:100%;height:100%;margin:0;padding:0;cursor:pointer}.time-label{font-size:16px;font-weight:600;margin:16px 24px 12px;line-height:20px}.time-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 24px}.time-slot{display:flex;align-items:center;justify-content:center;height:40px;border-radius:999px;border:1px solid var(--stroke-tertiary);font-size:14px;cursor:pointer;transition:all 0.15s;background:transparent;font-family:'Onest',sans-serif;color:var(--text-primary)}.time-slot.selected{background:var(--accent);color:var(--basic-white);border-color:var(--accent)}.time-slot.disabled{opacity:0.35;cursor:not-allowed;pointer-events:none}.time-empty{text-align:center;padding:32px 24px;color:var(--text-secondary);font-size:14px}.client-form{padding:16px 24px;display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:14px;font-weight:500;line-height:16px}.form-input{font-family:'Onest',sans-serif;font-size:14px;padding:0 16px;height:52px;background:var(--surface-secondary);border:2px solid transparent;border-radius:26px;outline:none;color:var(--text-primary);transition:border-color 0.15s}.form-input:focus{border-color:var(--accent)}.form-input::placeholder{color:var(--text-tertiary)}.phone-labels{display:flex;gap:16px}.phone-label-country{width:116px;flex-shrink:0}.phone-label-number{flex:1}.phone-row{display:flex;gap:16px;align-items:stretch}.country-select{display:flex;align-items:center;gap:8px;padding:0 8px;background:var(--surface-secondary);border:2px solid transparent;border-radius:26px;cursor:pointer;flex-shrink:0;width:116px;font-family:'Onest',sans-serif;font-size:14px;color:var(--text-primary);position:relative;height:52px}.country-select:focus-within,.country-select:focus-visible{border-color:var(--accent)}.country-select:focus{outline:none}.country-flag{font-size:24px;line-height:1;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.country-code{font-size:14px;font-weight:400;white-space:nowrap}.country-chevron{width:12px;height:12px;border:none;background:none;color:var(--text-tertiary);display:flex;align-items:center;justify-content:center}.country-dropdown{position:absolute;top:100%;left:0;min-width:260px;max-height:320px;overflow-y:auto;background:var(--basic-white);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,0.12);z-index:200;display:none;margin-top:4px}.country-dropdown.open{display:block}.country-search{position:sticky;top:0;padding:8px 12px;background:var(--basic-white);border-bottom:1px solid var(--surface-tertiary)}.country-search input{width:100%;font-family:'Onest',sans-serif;font-size:13px;padding:8px 10px;border:1px solid var(--surface-tertiary);border-radius:8px;outline:none;background:var(--surface-primary);color:var(--text-primary)}.country-search input:focus{border-color:var(--accent)}.country-dropdown-item{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;font-size:14px;font-family:'Onest',sans-serif}.country-dropdown-item:hover{background:var(--surface-secondary)}.country-dropdown-item .country-flag{font-size:18px}.phone-row .form-input{flex:1;min-width:0}.social-divider{display:flex;align-items:center;gap:12px;padding:0 24px}.social-divider::before,.social-divider::after{content:'';flex:1;height:1px;background:var(--surface-tertiary)}.social-divider span{font-size:12px;color:var(--text-tertiary);font-weight:500}.social-section{padding:0 24px;text-align:center;display:flex;flex-direction:column;gap:8px}.social-section-title{font-size:16px;font-weight:600;line-height:20px}.social-section-subtitle{font-size:12px;color:var(--text-secondary);line-height:16px}.btn-google{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:52px;background:var(--accent);color:#fff;border:none;border-radius:26px;font-family:'Onest',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:opacity 0.15s}.btn-google:active{opacity:0.85}.btn-google svg{flex-shrink:0}.email-hint{font-size:12px;color:var(--text-tertiary);padding:0 24px;margin-top:-8px}.confirm-section{padding:16px 24px;display:flex;flex-direction:column;gap:24px}.confirm-block{display:flex;flex-direction:column;gap:8px}.confirm-label{font-size:16px;font-weight:600;line-height:20px}.confirm-service-row{display:flex;gap:16px;align-items:flex-start}.confirm-service-info{flex:1;display:flex;flex-direction:column;gap:4px}.confirm-service-name{font-size:16px;font-weight:400;line-height:20px}.confirm-service-meta{font-size:12px;font-weight:500;color:var(--text-secondary);line-height:16px}.confirm-service-price{font-size:14px;font-weight:600;line-height:16px}.confirm-service-thumb{width:96px;height:72px;border-radius:8px;object-fit:cover;background:var(--surface-tertiary);flex-shrink:0}.confirm-additional-row{display:flex;flex-direction:column;gap:0}.confirm-additional-name{font-size:16px;font-weight:400;line-height:20px}.confirm-additional-meta{font-size:12px;font-weight:500;color:var(--text-secondary);line-height:16px}.confirm-additional-price{font-size:14px;font-weight:600;line-height:16px}.confirm-info-label{font-size:14px;font-weight:500;line-height:16px}.confirm-info-value{font-size:16px;font-weight:400;line-height:20px}.booking-bottom{position:sticky;bottom:0;margin-top:auto;background:var(--surface-blur);backdrop-filter:blur(50px);-webkit-backdrop-filter:blur(50px);border-top:1px solid var(--surface-tertiary);padding:16px 24px;padding-bottom:max(16px,env(safe-area-inset-bottom,16px))}.booking-bottom .btn-primary{width:100%}.booking-bottom-split{display:flex;align-items:center;gap:16px}.booking-bottom-split .price-col{flex-shrink:0;width:130px}.booking-bottom-split .price-col .price-amount{font-size:18px;font-weight:500;line-height:24px}.booking-bottom-split .price-col .price-duration{font-size:12px;color:var(--text-secondary);line-height:16px}.booking-bottom-split .btn-primary{flex:1}.success-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80dvh;padding:24px;text-align:center;gap:16px}.success-icon{width:160px;height:160px;position:relative}.success-icon svg{width:100%;height:100%}.success-screen h2{font-size:24px;font-weight:500;line-height:32px}.success-screen p{font-size:12px;color:var(--text-secondary);line-height:16px}.toast{position:fixed;top:20px;left:50%;transform:translateX(-50%);background:#333;color:white;padding:12px 24px;border-radius:12px;font-size:14px;z-index:9999;opacity:0;transition:opacity 0.3s;pointer-events:none;max-width:480px}.toast.show{opacity:1}.header-actions{display:flex;align-items:center;gap:12px}.header-login-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:var(--basic-white);border:none;border-radius:26px;padding:10px 20px;font-family:'Onest',sans-serif;font-size:14px;font-weight:500;cursor:pointer;line-height:16px;min-height:40px;text-decoration:none}.header-login-btn:active{opacity:0.85}.header-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;cursor:pointer;background:var(--accent);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.header-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.header-avatar-initials{color:#fff;font-size:14px;font-weight:600;line-height:1}.lang-switcher{position:relative}.lang-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1.5px solid var(--surface-tertiary);border-radius:50%;background:var(--basic-white);color:var(--text-primary);cursor:pointer;padding:0;flex-shrink:0}.lang-btn svg{width:20px;height:20px}.lang-dropdown{display:none;position:absolute;top:calc(100% + 8px);right:0;background:var(--basic-white);border-radius:16px;box-shadow:0 4px 24px rgba(0,0,0,0.12);min-width:160px;padding:6px;z-index:1000}.lang-dropdown.open{display:block}.lang-option{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;cursor:pointer;font-family:'Onest',sans-serif;font-size:14px;font-weight:500;color:var(--text-primary);border:none;background:none;width:100%;text-align:left}.lang-option:hover{background:var(--surface-secondary)}.lang-option.active{color:var(--accent);font-weight:600}.client-profile-header{display:flex;flex-direction:column;align-items:center;padding:24px 24px 0;gap:12px}.client-profile-avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;background:var(--accent);display:flex;align-items:center;justify-content:center}.client-profile-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.client-profile-avatar-initials{color:#fff;font-size:28px;font-weight:600}.client-profile-name{font-size:18px;font-weight:500;text-align:center}.client-profile-email{font-size:14px;color:var(--text-secondary);text-align:center}.client-profile-form{padding:24px;display:flex;flex-direction:column;gap:16px}.form-input:disabled{opacity:0.6;cursor:not-allowed;background:var(--surface-tertiary)}.btn-danger{display:flex;align-items:center;justify-content:center;width:100%;background:transparent;color:#d32f2f;border:1px solid #d32f2f;border-radius:26px;padding:14px 24px;font-family:'Onest',sans-serif;font-size:14px;font-weight:500;cursor:pointer;line-height:16px;min-height:48px}.btn-danger:active{background:#ffeaea}.btn-logout{display:flex;align-items:center;justify-content:center;width:100%;background:transparent;color:var(--text-primary);border:1px solid var(--surface-tertiary);border-radius:26px;padding:14px 24px;font-family:'Onest',sans-serif;font-size:14px;font-weight:500;cursor:pointer;line-height:16px;min-height:48px}.btn-logout:active{background:var(--surface-secondary)}.appt-section{padding:24px;display:flex;flex-direction:column;gap:16px}.appt-service-row{display:flex;gap:16px;align-items:flex-start}.appt-service-info{flex:1;display:flex;flex-direction:column;gap:4px}.appt-service-name{font-size:16px;font-weight:400;line-height:20px}.appt-service-meta{font-size:12px;font-weight:500;color:var(--text-secondary);line-height:16px}.appt-service-price{font-size:14px;font-weight:600;line-height:16px}.appt-service-thumb{width:96px;height:72px;border-radius:8px;object-fit:cover;background:var(--surface-tertiary);flex-shrink:0}.appt-additional-row{display:flex;flex-direction:column;gap:0}.appt-additional-name{font-size:16px;font-weight:400;line-height:20px}.appt-additional-meta{font-size:12px;font-weight:500;color:var(--text-secondary);line-height:16px}.appt-additional-price{font-size:14px;font-weight:600;line-height:16px}.appt-info-label{font-size:14px;font-weight:500;line-height:16px;color:var(--text-secondary)}.appt-info-value{font-size:16px;font-weight:400;line-height:20px}.appt-map-wrap{display:block;width:100%;height:160px;border-radius:26px;overflow:hidden;position:relative;pointer-events:auto}.appt-map-iframe{width:100%;height:100%;border:0;pointer-events:none}.appt-location-row{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--surface-tertiary)}.appt-location-row svg{width:24px;height:24px;flex-shrink:0}.appt-location-text{font-size:14px;font-weight:400;line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appt-actions-row{display:flex;gap:16px;align-items:stretch}.appt-actions-row .btn-outline{flex:1;min-width:0}.payment-summary{border:1px solid var(--surface-tertiary);border-radius:26px;overflow:hidden}.payment-summary-row{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;font-size:14px;line-height:20px;border-bottom:1px solid var(--surface-tertiary)}.payment-summary-row:last-child{border-bottom:none}.payment-summary-row.total{font-weight:600;font-size:16px}.payment-summary-label{color:var(--text-primary)}.payment-summary-value{font-weight:500}.appt-current-time{background:var(--surface-secondary);border-radius:26px;padding:16px;margin:16px 24px 0}.appt-current-time-label{font-size:12px;font-weight:500;color:var(--text-secondary);line-height:16px;margin-bottom:4px}.appt-current-time-value{font-size:16px;font-weight:500;line-height:24px}.cancel-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:300;align-items:center;justify-content:center;padding:24px}.cancel-modal{background:var(--basic-white);border-radius:26px;padding:24px;max-width:400px;width:100%;display:flex;flex-direction:column;gap:16px;text-align:center}.cancel-modal h3{font-size:18px;font-weight:600;line-height:24px}.cancel-modal p{font-size:14px;color:var(--text-secondary);line-height:20px}.rate-stars{display:flex;justify-content:center;gap:6px}.rate-star{width:36px;height:36px;cursor:pointer;transition:transform 0.15s}.rate-star:active{transform:scale(1.2)}.rate-star:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.rate-star svg{width:100%;height:100%}.rate-service-row{display:flex;gap:12px;align-items:flex-start;background:var(--surface-secondary);border-radius:26px;padding:12px}.rate-service-thumb{width:81px;height:62px;border-radius:8px;object-fit:cover;background:var(--surface-tertiary);flex-shrink:0}.rate-service-info{flex:1;display:flex;flex-direction:column;gap:4px}.rate-service-name{font-size:14px;font-weight:500;line-height:20px}.rate-service-meta{font-size:12px;color:var(--text-secondary);line-height:16px}.rate-form-textarea{font-family:'Onest',sans-serif;font-size:14px;padding:16px;min-height:120px;background:var(--surface-secondary);border:2px solid transparent;border-radius:26px;outline:none;color:var(--text-primary);transition:border-color 0.15s;resize:vertical}.rate-form-textarea:focus{border-color:var(--accent)}.rate-form-textarea::placeholder{color:var(--text-tertiary)}.reviews-header{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:16px}.reviews-score-wrap{display:flex;flex-direction:column;align-items:center;gap:4px;margin-bottom:16px}.reviews-score-row{display:flex;align-items:center;gap:4px}.reviews-score-number{font-size:40px;font-weight:600;line-height:1}.reviews-score-count{font-size:12px;color:var(--text-secondary)}.reviews-badge{font-size:16px;font-weight:500;color:var(--text-primary)}.review-card{background:var(--surface-secondary);border-radius:26px;padding:16px;display:flex;flex-direction:column;gap:16px;margin-bottom:12px}.review-card-content{display:flex;flex-direction:column;gap:8px}.review-card-stars{display:flex;gap:6px}.review-card-star{width:36px;height:36px}.review-card-star svg{width:100%;height:100%}.review-card-author{display:flex;align-items:center;gap:8px}.review-card-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;background:var(--surface-tertiary)}.review-card-avatar-initials{width:32px;height:32px;border-radius:50%;background:var(--accent);color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center}.review-card-name{font-size:12px;font-weight:400}.review-card-title{font-size:16px;font-weight:500;line-height:20px}.review-card-date{font-size:12px;color:var(--text-tertiary)}.review-card-text{font-size:14px;line-height:20px;color:var(--text-primary)}.leaf-svg{width:52px;height:52px;flex-shrink:0}.btn-outline svg{width:20px;height:20px;flex-shrink:0}.location-chip{display:flex;align-items:center;gap:12px;width:100%;padding:16px;margin-bottom:8px;background:var(--surface-secondary);border:1px solid transparent;border-radius:26px;cursor:pointer;text-align:left;font-size:14px;font-weight:500;color:var(--text-primary);transition:background 0.15s,border-color 0.15s}.location-chip.selected{background:var(--accent-light,rgba(108,93,211,0.08));border-color:var(--accent)}.location-chip-icon{width:20px;height:20px;flex-shrink:0;stroke:var(--text-secondary)}.location-chip.selected .location-chip-icon{stroke:var(--accent)}.location-chip-text{flex:1;line-height:1.4}.location-chip-check{width:22px;height:22px;flex-shrink:0}.location-card{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.location-card:last-child{margin-bottom:0}.location-card-map{display:block;width:100%;height:160px;border-radius:16px;overflow:hidden;position:relative}.location-card-map iframe{width:100%;height:100%;border:0;pointer-events:none}.location-card-address{display:flex;align-items:center;gap:8px;padding:16px 0}.location-card-address svg{width:20px;height:20px;flex-shrink:0}.location-card-address-text{font-size:14px;font-weight:400;line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lightbox-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.92);z-index:400;display:none;align-items:center;justify-content:center;opacity:0;transition:opacity 0.2s ease}.lightbox-overlay.open{display:flex;opacity:1}.lightbox-img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:8px}.lightbox-close{position:absolute;top:16px;right:16px;width:44px;height:44px;background:none;border:none;color:#fff;font-size:32px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1}.lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;background:none;border:none;color:#fff;font-size:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-arrow.hidden{display:none}.legal-links{text-align:center;padding-bottom:16px;font-size:14px;color:var(--text-secondary);line-height:16px}.legal-links a{color:var(--accent);text-decoration:none}.legal-links a:active{opacity:0.7}.legal-dot{width:3px;height:3px;border-radius:50%;background:var(--text-tertiary);flex-shrink:0}.spinner{width:32px;height:32px;border:3px solid var(--surface-tertiary);border-top-color:var(--accent);border-radius:50%;animation:spin 0.8s linear infinite;margin:0 auto}@keyframes spin{to{transform:rotate(360deg)}}.location-placeholder{display:flex;align-items:center;justify-content:center;background:var(--surface-secondary);cursor:pointer}.location-placeholder span{font-size:14px;color:var(--text-secondary);font-weight:500}.location-placeholder.loaded{cursor:default}.location-placeholder.loaded span{display:none}