body .public-profile-spacer{height:0;padding:0;min-height:0}
body .public-profile-section{background:var(--zp-base,#f7faf8)!important;padding-top:32px!important;padding-bottom:72px!important;color:var(--zp-ink,#191c1b)}
.public-profile-section>.container{max-width:1264px}
.premium-profile-breadcrumb{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 26px;color:var(--zp-muted,#3f4946);font-size:12px;font-weight:700}
.premium-profile-breadcrumb a{color:var(--zp-muted,#3f4946);text-decoration:none}
.premium-profile-breadcrumb a:hover{color:var(--zp-brand,#006b5f)}
.premium-profile-breadcrumb span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:70vw}
.premium-profile-hero{padding:12px 0 32px;margin-bottom:30px;border-bottom:1px solid var(--zp-line,#bec9c5)}
.premium-profile-hero h1{font-size:clamp(28px,3.8vw,44px);font-weight:800;line-height:1.15;letter-spacing:-1.7px;margin:0 0 15px;color:var(--zp-ink,#191c1b);overflow-wrap:anywhere}
.premium-profile-heading-layout{display:grid;grid-template-columns:168px minmax(0,1fr);align-items:start;gap:32px}
.premium-profile-portrait,.premium-profile-identity{min-width:0}
body .premium-profile-hero .public-profile-avatar{display:block;width:168px;height:168px;object-fit:cover;border-radius:28px;border:4px solid var(--zp-surface,#fff);box-shadow:0 10px 25px #191c1b0a;margin:0}
.premium-profile-hero .public-profile-tags{margin-bottom:18px;gap:7px}
body .public-profile-tag{background:var(--zp-soft,var(--md-sys-color-primary-container,#75f8e3));color:var(--zp-muted,#3f4946);border:1px solid var(--zp-line,#bec9c5);border-radius:50px;padding:6px 11px;font-size:11px}
body .public-profile-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
body .public-profile-meta .badge{display:inline-flex;align-items:center;gap:4px;padding:8px 11px;background:var(--zp-surface,#fff)!important;border:1px solid var(--zp-line,#bec9c5);border-radius:30px;color:var(--zp-muted,#3f4946)!important;font-weight:650;font-size:11px}
body .public-profile-meta .badge.bg-success{background:var(--zp-success-container,var(--md-sys-color-success-container,#b4f1bd))!important;color:var(--zp-on-success-container,var(--md-sys-color-on-success-container,#00210b))!important;border-color:transparent}
body .public-share-actions{display:inline-flex;gap:7px;margin-top:5px}
body .public-share-actions .btn{width:40px;min-height:40px;padding:8px;border:1px solid var(--zp-line,#bec9c5);background:var(--zp-surface,#fff);color:var(--zp-muted,#3f4946);border-radius:50%}
body .public-profile-card,body .public-comments-card{border:1px solid var(--zp-line,#bec9c5);border-radius:22px;background:var(--zp-surface,#fff);box-shadow:none;padding:30px;margin-bottom:24px;color:var(--zp-ink,#191c1b)}
.public-profile-card>hr:first-child{display:none}
.public-profile-card>hr{border-color:var(--zp-line,#bec9c5);opacity:1;margin:22px 0!important}
.public-profile-card .ps-4{padding-left:12px!important;padding-right:12px!important}
.premium-profile-heading{font-size:21px;font-weight:800;letter-spacing:-.5px;margin-bottom:18px}
.public-profile-card p,.public-profile-card li{font-size:14px;line-height:1.85;color:var(--zp-muted,#3f4946);overflow-wrap:anywhere}
.public-profile-card h5,.public-comments-card h5{font-size:17px;font-weight:800;color:var(--zp-ink,#191c1b)}
body .public-comments-list{margin:0}
body .public-comment-item{padding:22px 0;border-bottom:1px solid var(--zp-line,#bec9c5);margin:0}
body .public-comment-item:last-child{border:0;padding-bottom:0}
.public-comment-item p{font-size:13px;line-height:1.8;color:var(--zp-muted,#3f4946)}
.public-comment-item .avatar{width:38px;height:38px}
body .public-gallery-thumb{width:100%;aspect-ratio:1;border:0;overflow:hidden;border-radius:13px;padding:0;background:var(--zp-soft,var(--md-sys-color-primary-container,#75f8e3))}
body .public-gallery-thumb img{height:100%;width:100%;object-fit:cover;border-radius:13px!important;transition:transform .2s}
.public-gallery-thumb:hover img{transform:scale(1.04)}
body .public-booking-column>.card{border:1px solid var(--zp-line,#bec9c5)!important;border-radius:22px!important;box-shadow:0 12px 40px #191c1b06!important;overflow:visible}
body .public-booking-column :is(#bookingpanel,#bookingchoice,#restaurantbooking,#taxibooking,#taxichoice){border:1px solid var(--zp-line,#bec9c5)!important;border-radius:22px!important;box-shadow:0 12px 40px #191c1b06!important}
.public-booking-column>.card>.card-header{padding:27px 26px 0}
.public-booking-column>.card>.card-header h4{font-size:22px;letter-spacing:-.7px;font-weight:800;color:var(--zp-ink,#191c1b)}
.public-booking-column>.card>.card-body{padding:24px 26px 26px}
.public-booking-column .form-label{font-size:12px;font-weight:750;color:var(--zp-ink,#191c1b);margin-bottom:10px}
.public-booking-column .form-control,.public-booking-column .form-select{font-size:13px}
body .booking-steps{display:flex;gap:8px;margin:0 0 26px;padding:0;list-style:none;border:0}
body .booking-steps li{flex:1;display:flex;align-items:center;gap:7px;min-width:0;background:var(--zp-base,#f7faf8);border-radius:11px;padding:10px 8px;color:var(--zp-muted,#3f4946)}
body .booking-steps li:after,body .booking-steps li:before{display:none}
body .booking-steps li>span{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:9px;background:var(--zp-surface,#fff);font-size:17px}
body .booking-steps li small{font-size:10px;line-height:1.4;font-weight:800}
body .booking-steps li.is-current{background:var(--zp-soft,var(--md-sys-color-primary-container,#75f8e3));color:var(--zp-brand,#006b5f)}
body .booking-steps li.is-done{color:var(--zp-on-success-container,var(--md-sys-color-on-success-container,#00210b));background:var(--zp-success-container,var(--md-sys-color-success-container,#b4f1bd))}
body .booking-summary{border:1px solid var(--zp-line,#bec9c5);background:var(--zp-base,#f7faf8);border-radius:13px;padding:15px;margin-bottom:20px;font-size:12px}
body .booking-service-picker{display:grid;gap:10px}
body .booking-service-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 15px;min-height:72px;background:var(--zp-surface,#fff);border:1px solid var(--zp-line,#bec9c5);border-radius:13px;color:var(--zp-ink,#191c1b);text-align:left;transition:border-color .18s,background-color .18s}
body .booking-service-card.is-selected{border-color:var(--zp-brand,#006b5f);background:var(--zp-soft,var(--md-sys-color-primary-container,#75f8e3));box-shadow:none}
.booking-service-card strong{font-size:13px;line-height:1.5}
.booking-service-card small{color:var(--zp-muted,#3f4946);font-size:11px;margin-top:6px}
.booking-service-card b{font-size:13px;white-space:nowrap;color:var(--zp-brand,#006b5f)}
.booking-service-card em{font-size:10px;font-style:normal;color:var(--zp-muted,#3f4946)}
body .booking-slot-nav{padding:10px 0 15px}
body .booking-slot-nav .btn{border:1px solid var(--zp-line,#bec9c5);background:var(--zp-surface,#fff);color:var(--zp-ink,#191c1b);font-size:11px;border-radius:12px}
body .booking-slot-matrix{row-gap:12px;margin-top:0}
body .booking-slot-day{padding:0 5px}
body .booking-slot-day-inner{border:1px solid var(--zp-line,#bec9c5);border-radius:13px;overflow:hidden;box-shadow:none;background:var(--zp-surface,#fff)}
body .booking-slot-day-header{background:var(--zp-base,#f7faf8);padding:12px 6px;font-size:11px;font-weight:800;color:var(--zp-ink,#191c1b);border-bottom:1px solid var(--zp-line,#bec9c5)}
body .booking-slot-grid{padding:10px 7px}
body .booking-slot-group-label{font-size:9px;font-weight:800;color:var(--zp-muted,#3f4946);letter-spacing:.025em;margin-bottom:8px}
body .booking-slot-group-row{gap:6px}
body .public-booking-column .booking-slot-cell{background:transparent}
body .booking-slot-block--available{min-height:42px;border:1px solid var(--zp-line,#bec9c5);border-radius:9px;background:var(--zp-soft,var(--md-sys-color-primary-container,#75f8e3));color:var(--zp-brand,#006b5f);font-size:11px;font-weight:800;box-shadow:none;transition:border-color .18s,box-shadow .18s}
body .booking-slot-block--available:hover{background:var(--zp-brand,#006b5f);border-color:var(--zp-brand,#006b5f);color:var(--zp-on-primary,var(--md-sys-color-on-primary,#fff))}
.booking-auth-notice,.auth-booking-context{display:flex;align-items:flex-start;gap:12px;padding:18px;border:1px solid var(--zp-line,#bec9c5);background:var(--zp-soft,var(--md-sys-color-primary-container,#75f8e3));border-radius:14px;margin-bottom:20px;color:var(--zp-ink,#191c1b)}
.booking-auth-icon{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;background:var(--zp-surface,#fff);color:var(--zp-brand,#006b5f);border-radius:11px;font-size:22px}
.booking-auth-notice strong,.auth-booking-context strong{display:block;font-size:12px;line-height:1.6;font-weight:800}
.booking-auth-notice p,.auth-booking-context span{display:block;font-size:11px;line-height:1.8;color:var(--zp-muted,#3f4946);margin:6px 0 0}
.auth-booking-context>i{font-size:24px;color:var(--zp-brand,#006b5f)}
.booking-confirm-fields>.form-group:last-of-type{margin-top:22px}
body .public-booking-column .alert{border-radius:13px;font-size:12px;line-height:1.8}
body .public-booking-column .alert-info{background:var(--zp-soft,var(--md-sys-color-primary-container,#75f8e3));color:var(--zp-ink,#191c1b);border-color:var(--zp-line,#bec9c5)}
.public-booking-column [data-zapazi-booking-outcome]{padding:24px!important;background:var(--zp-success-container,var(--md-sys-color-success-container,#b4f1bd));color:var(--zp-on-success-container,var(--md-sys-color-on-success-container,#00210b));border-color:transparent!important}
.public-booking-column [data-zapazi-booking-outcome]:has([data-booking-requested]){background:var(--zp-warning-container,var(--md-sys-color-warning-container,#ffddb3));color:var(--zp-on-warning-container,var(--md-sys-color-on-warning-container,#291800))}
.public-booking-column [data-booking-outcome-message]{font-size:14px;font-weight:750}
.premium-mobile-booking{display:none}
body .auth-page{background:radial-gradient(ellipse at 80% 0,color-mix(in srgb,var(--zp-brand,#006b5f) 8%,transparent),transparent 60%),var(--zp-base,#f7faf8)}
body .auth-section{padding:54px 0 80px;min-height:75vh}
body .auth-shell{max-width:1060px;gap:0;border:1px solid var(--zp-line,#bec9c5);border-radius:25px;background:var(--zp-surface,#fff);box-shadow:0 24px 80px #191c1b09;overflow:hidden;margin:auto;align-items:stretch}
body .auth-card{border:0;border-radius:0;background:var(--zp-surface,#fff);box-shadow:none;padding:40px 42px}
body .auth-card-heading{margin-bottom:26px}
body .auth-card-heading h1{font-size:30px;font-weight:800;letter-spacing:-1px;color:var(--zp-ink,#191c1b)}
body .auth-card-heading .auth-icon{background:var(--zp-soft,var(--md-sys-color-primary-container,#75f8e3));color:var(--zp-brand,#006b5f);border-radius:14px;width:46px;height:46px}
body .auth-kicker{font-size:10px;font-weight:800;letter-spacing:.11em;color:var(--zp-brand,#006b5f)}
body .auth-form{gap:16px}
body .auth-form .form-floating>.form-control,body .auth-form .form-floating>.form-select{min-height:54px;border-radius:12px;font-size:13px;background:var(--zp-surface,#fff);border-color:var(--zp-line,#bec9c5);color:var(--zp-ink,#191c1b)}
body .auth-form .form-floating>label{font-size:12px;color:var(--zp-muted,#3f4946)}
body .auth-form .auth-submit{font-size:13px;min-height:48px;border-radius:12px}
body .auth-side-panel{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;align-self:stretch;border:0;border-left:1px solid var(--zp-line,#bec9c5);border-radius:0;padding:42px 34px;background:var(--zp-soft,var(--md-sys-color-primary-container,#75f8e3));box-shadow:none;gap:16px}
body .auth-side-panel .auth-side-copy{font-size:15px;line-height:1.9;color:var(--zp-ink,#191c1b);margin:0}
body .auth-side-panel .auth-side-note{font-size:12px;line-height:1.9;color:var(--zp-muted,#3f4946)}
body .auth-side-panel .btn{font-size:12px}
body .auth-divider{color:var(--zp-muted,#3f4946);font-size:11px}
body .auth-magic-note{font-size:12px;line-height:1.8;color:var(--zp-muted,#3f4946)}
body .auth-form-row,body .auth-secondary-link{font-size:12px}
body .auth-terms-switch{border-radius:12px;background:var(--zp-base,#f7faf8);font-size:11px;line-height:1.8;border-color:var(--zp-line,#bec9c5)}
.auth-page .alert{font-size:12px;line-height:1.8;border-radius:12px}
.public-profile-section :is(#bookingtable,#bookingpanel,#bookingchoice,#taxibooking,#taxichoice,#profile-comments){scroll-margin-top:110px}
@media(min-width:992px){.public-booking-column{position:sticky;top:104px}.public-booking-column>.alert:last-child{margin-bottom:0}}
@media(max-width:991.98px){body .public-profile-section{padding-top:24px!important}.public-profile-main{order:2!important}.public-booking-column{order:1!important}.premium-profile-hero{margin-bottom:22px}.premium-profile-heading-layout{grid-template-columns:144px minmax(0,1fr);gap:24px}body .premium-profile-hero .public-profile-avatar{width:144px;height:144px}.premium-profile-hero h1{font-size:32px}body .auth-card{padding:30px}body .auth-side-panel{padding:30px}}
@media(max-width:767.98px){.public-profile-section>.container{padding-inline:20px}.premium-profile-breadcrumb{font-size:11px;margin-bottom:20px}.premium-profile-hero{padding:0 0 22px}.premium-profile-heading-layout{grid-template-columns:96px minmax(0,1fr);align-items:center;gap:20px}body .premium-profile-hero .public-profile-avatar{width:96px;height:96px;border-radius:22px}.premium-profile-hero h1{font-size:25px;letter-spacing:-.8px;margin-bottom:12px}.premium-profile-hero .public-profile-tags{display:none}body .public-profile-meta{gap:6px;margin-top:12px}body .public-profile-meta .badge{font-size:10px;padding:7px 9px}.premium-profile-hero .public-share-actions{display:none}.premium-profile-hero .btn{font-size:11px;padding:10px 12px}.public-profile-main,.public-booking-column{min-width:0}.public-profile-card,.public-comments-card{padding:22px!important;border-radius:18px!important}.public-booking-column>.card>.card-header{padding:24px 20px 0}.public-booking-column>.card>.card-body{padding:20px}.public-booking-column>.card>.card-header h4{font-size:20px}body .booking-slot-day{padding:0 4px}body .booking-slot-day-header{font-size:11px}.premium-mobile-booking{position:fixed;bottom:0;left:0;right:0;z-index:1025;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--zp-line,#bec9c5);background:var(--zp-surface,#fff);box-shadow:0 -8px 30px #191c1b06}.premium-mobile-booking>span{font-size:10px;font-weight:750;color:var(--zp-muted,#3f4946);max-width:125px}.premium-mobile-booking .btn{font-size:11px;min-height:44px;padding:11px 16px}body:has(.premium-mobile-booking){padding-bottom:90px}.auth-section{padding:28px 0 46px!important}body .auth-shell{display:flex;flex-direction:column;border-radius:20px}body .auth-card{padding:28px 22px}body .auth-side-panel{border-left:0;border-top:1px solid var(--zp-line,#bec9c5);padding:28px 22px;gap:12px}body .auth-side-panel .zi-aside{display:none}body .auth-card-heading h1{font-size:27px}.auth-booking-context{padding:14px}.booking-auth-notice{padding:15px;gap:10px}.booking-auth-icon{width:29px;height:29px;flex-basis:29px;font-size:19px}}
@media(max-width:575.98px){.premium-profile-heading-layout{grid-template-columns:minmax(0,1fr);gap:20px}}
@media(max-width:420px){body .booking-steps{gap:5px}body .booking-steps li{padding:9px 5px;gap:5px}body .booking-steps li>span{width:23px;height:23px;flex-basis:23px;font-size:14px}body .booking-steps li small{font-size:9px}.booking-service-card b{font-size:12px}body .booking-slot-day{width:100%}}
@media(prefers-reduced-motion:reduce){body .public-gallery-thumb img,body .booking-service-card,body .booking-slot-block--available{transition:none}}

body .public-profile-meta .public-rating-link,body .public-profile-section .rating-color{color:var(--zp-warning,var(--md-sys-color-warning,#825500))!important}
.public-booking-column .booking-steps li.is-current>span{background:var(--zp-brand,#006b5f);border-color:var(--zp-brand,#006b5f);color:var(--zp-on-primary,var(--md-sys-color-on-primary,#fff))}
.public-booking-column .booking-steps li.is-done>span{background:var(--zp-success,var(--md-sys-color-success,#316a41));border-color:var(--zp-success,var(--md-sys-color-success,#316a41));color:transparent}
.public-booking-column .booking-steps li.is-done>span::after{border-color:var(--zp-on-success,var(--md-sys-color-on-success,#fff))}
