:root{--epy-primary:#a90bb9;--epy-primary-dark:#5c087e;--epy-ink:#18102f;--epy-muted:#70657b;--epy-border:#eadbed;--epy-bg:#fff9fd;--epy-soft:#faeffa;--epy-gold:#ffbd2e;--epy-green:#0c9a5c;--epy-blue:#2076e6;--epy-shadow:0 20px 60px rgba(63,15,79,.12);--epy-radius:24px;--epy-font:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}.epy-home,.epy-search-page,.epy-detail-page,.epy-booking-page,.epy-success,.epy-panel{font-family:var(--epy-font);color:var(--epy-ink)}.epy-home button,.epy-home input,.epy-home select,.epy-search-page button,.epy-search-page input,.epy-search-page select,.epy-booking-page button,.epy-booking-page input,.epy-booking-page select,.epy-booking-page textarea{font:inherit}.epy-eyebrow{display:inline-flex;color:var(--epy-primary);font-weight:850;font-size:.76rem;letter-spacing:.1em;text-transform:uppercase}.epy-btn{border:0;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:46px;padding:.75rem 1.15rem;font-weight:800;text-decoration:none;cursor:pointer;transition:.2s ease}.epy-btn:hover{transform:translateY(-1px)}.epy-btn-primary{background:linear-gradient(135deg,var(--epy-primary),#77089a);color:#fff;box-shadow:0 12px 28px rgba(169,11,185,.24)}.epy-btn-primary:hover{color:#fff;box-shadow:0 16px 34px rgba(169,11,185,.34)}.epy-btn-secondary{background:#fff;color:var(--epy-ink);border:1px solid var(--epy-border)}.epy-btn-location{background:linear-gradient(135deg,#ffca41,#efa70a);color:#2b1834;box-shadow:0 12px 28px rgba(239,167,10,.2)}.epy-btn-large{width:100%;min-height:54px;font-size:1rem}.epy-link-button{border:0;background:transparent;color:var(--epy-primary);font-weight:800;cursor:pointer}.epy-icon-button{width:48px;height:48px;border-radius:50%;border:1px solid var(--epy-border);background:#fff;font-size:1.5rem;cursor:pointer}.epy-hero{max-width:1440px;margin:0 auto;min-height:570px;border-radius:0 0 42px 42px;overflow:hidden;display:grid;grid-template-columns:minmax(0,53%) minmax(0,47%);background:radial-gradient(circle at 25% 55%,rgba(243,205,241,.8),transparent 34%),linear-gradient(120deg,#fff 0,#fff8fc 48%,#f3e6f6 100%);position:relative}.epy-hero-copy{padding:76px clamp(28px,6vw,92px);position:relative;z-index:2}.epy-hero h1{font-size:clamp(3rem,5vw,5.5rem);line-height:.98;letter-spacing:-.065em;margin:18px 0 24px;max-width:760px}.epy-hero h1 strong{color:var(--epy-primary);font-weight:900}.epy-hero p{font-size:1.15rem;line-height:1.7;color:var(--epy-muted);max-width:640px}.epy-hero-actions{display:flex;gap:14px;margin:32px 0}.epy-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px;max-width:690px}.epy-trust-grid>div{display:flex;align-items:center;gap:10px;padding:14px 16px;border:1px solid rgba(169,11,185,.13);border-radius:16px;background:rgba(255,255,255,.72);backdrop-filter:blur(12px);font-weight:750}.epy-trust-grid b{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;color:var(--epy-primary);background:var(--epy-soft)}.epy-hero-visual{position:relative;background:linear-gradient(160deg,#f5e4f8,#fbe9e0);overflow:hidden}.epy-hero-visual:before{content:"";position:absolute;inset:0;background:url('/Plugins/Misc.Epiyum/Content/images/body-female-front.svg') center 10%/auto 110% no-repeat;filter:saturate(.88);opacity:.38}.epy-hero-orb{position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,#fff4c5 0,#f6c746 30%,rgba(169,11,185,.4) 65%,transparent 68%);right:-110px;top:-100px;opacity:.42}.epy-hero-card{position:absolute;left:8%;bottom:10%;width:210px;padding:24px;border-radius:26px;background:rgba(94,10,129,.92);color:#fff;border:3px solid #ffcc38;box-shadow:var(--epy-shadow);text-align:center}.epy-hero-card span,.epy-hero-card small{display:block}.epy-hero-card strong{display:block;font-size:3.1rem;color:#ffd34e}.epy-filter-card{max-width:1360px;margin:-42px auto 30px;padding:24px 26px;border:1px solid var(--epy-border);border-radius:26px;background:rgba(255,255,255,.94);box-shadow:var(--epy-shadow);position:relative;z-index:4}.epy-filter-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.epy-filter-heading>div{display:flex;align-items:center;gap:12px}.epy-filter-heading b{display:block;font-size:1.25rem}.epy-filter-heading small{display:block;color:var(--epy-muted);margin-top:2px}.epy-filter-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--epy-soft);color:var(--epy-primary);font-weight:900}.epy-filter-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.epy-filter-card label>span,.epy-filter-sidebar label{font-size:.78rem;font-weight:800;color:#4f4459}.epy-filter-card input,.epy-filter-card select,.epy-filter-sidebar input,.epy-filter-sidebar select,.epy-date-strip input,.epy-panel-heading input{width:100%;height:48px;border:1px solid var(--epy-border);border-radius:12px;background:#fff;padding:0 14px;color:var(--epy-ink);outline:0}.epy-filter-card input:focus,.epy-filter-card select:focus,.epy-global-search input:focus{border-color:var(--epy-primary);box-shadow:0 0 0 4px rgba(169,11,185,.1)}.epy-filter-toggles{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid #f0e7f1}.epy-filter-toggles label{position:relative}.epy-filter-toggles input{position:absolute;opacity:0}.epy-filter-toggles span{display:inline-flex;align-items:center;min-height:38px;padding:0 13px;border:1px solid var(--epy-border);border-radius:999px;background:#fff;cursor:pointer;font-size:.82rem;font-weight:750}.epy-filter-toggles input:checked+span{border-color:var(--epy-primary);background:var(--epy-soft);color:var(--epy-primary)}.epy-location-status{max-width:1360px;margin:0 auto 16px;border-radius:12px;padding:12px 16px;background:#fff6da;border:1px solid #f0cd6b;color:#704d00}.epy-discovery{max-width:1360px;margin:0 auto 44px;display:grid;grid-template-columns:minmax(430px,520px) minmax(0,1fr);gap:18px;align-items:stretch}.epy-results-panel,.epy-map-panel,.epy-filter-sidebar,.epy-content-card,.epy-booking-sticky,.epy-form-card,.epy-selection-summary,.epy-confirm-card,.epy-confirm-action{background:#fff;border:1px solid var(--epy-border);border-radius:var(--epy-radius);box-shadow:0 14px 38px rgba(70,20,80,.08)}.epy-results-panel{padding:22px;min-width:0}.epy-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}.epy-section-title h2{font-size:1.75rem;margin:4px 0 0;letter-spacing:-.04em}.epy-result-tools{display:flex;align-items:center;gap:8px}.epy-result-tools>span{font-weight:800;background:var(--epy-soft);border-radius:999px;padding:9px 12px;font-size:.8rem}.epy-result-tools select{border:1px solid var(--epy-border);border-radius:10px;height:38px;padding:0 10px;background:#fff}.epy-salon-list{display:grid;gap:12px}.epy-salon-card{display:grid;grid-template-columns:128px minmax(0,1fr);border:1px solid var(--epy-border);border-radius:18px;overflow:hidden;background:#fff;transition:.2s ease;cursor:pointer}.epy-salon-card:hover,.epy-salon-card.active{border-color:var(--epy-primary);box-shadow:0 10px 24px rgba(169,11,185,.1);transform:translateY(-1px)}.epy-salon-card>img{width:100%;height:100%;min-height:182px;object-fit:cover}.epy-salon-card-body{padding:15px;min-width:0}.epy-card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.epy-card-top h3{margin:0;font-size:1.04rem;line-height:1.3}.epy-verified{color:var(--epy-green);font-size:.72rem;font-weight:850;background:#e9fff4;border-radius:999px;padding:5px 8px;white-space:nowrap}.epy-rating{display:flex;gap:7px;align-items:center;color:var(--epy-muted);font-size:.78rem;margin:7px 0}.epy-rating b{color:#f4a700}.epy-salon-card p{margin:6px 0;color:var(--epy-muted);font-size:.84rem}.epy-chips{display:flex;flex-wrap:wrap;gap:6px}.epy-chips span{font-size:.7rem;font-weight:750;border-radius:999px;padding:5px 8px;background:var(--epy-soft);color:var(--epy-primary)}.epy-card-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:12px}.epy-card-footer small,.epy-card-footer strong{display:block}.epy-card-footer strong{font-size:1.15rem}.epy-card-footer .epy-btn{min-height:40px;padding:.6rem .85rem;font-size:.78rem}.epy-map-panel{position:relative;overflow:hidden;min-height:760px}.epy-map{height:100%;min-height:760px;background:#e9eef2}.epy-map-toolbar{position:absolute;z-index:500;top:18px;left:18px;right:18px;display:flex;gap:10px;pointer-events:none}.epy-map-search{pointer-events:auto;display:flex;align-items:center;gap:8px;background:#fff;border-radius:999px;padding:0 16px;width:min(440px,calc(100% - 58px));height:48px;box-shadow:0 10px 26px rgba(21,12,31,.16)}.epy-map-search input{border:0;outline:0;width:100%}.epy-map-location{pointer-events:auto;width:48px;height:48px;border:0;border-radius:50%;background:#fff;box-shadow:0 10px 26px rgba(21,12,31,.16);font-size:1.25rem;cursor:pointer}.epy-map-legend{position:absolute;z-index:500;right:18px;bottom:18px;display:flex;gap:10px;flex-wrap:wrap;background:#fff;padding:11px 13px;border-radius:14px;box-shadow:0 10px 26px rgba(21,12,31,.14);font-size:.75rem}.epy-map-legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:3px}.epy-map-legend .purple{background:var(--epy-primary)}.epy-map-legend .gold{background:var(--epy-gold)}.epy-map-legend .blue{background:var(--epy-blue)}.epy-map-marker{width:36px;height:46px;background:linear-gradient(150deg,var(--epy-primary),var(--epy-primary-dark));clip-path:polygon(50% 100%,4% 44%,4% 25%,15% 8%,32% 0,68% 0,85% 8%,96% 25%,96% 44%);display:grid;place-items:center;color:#fff;font-weight:900;filter:drop-shadow(0 7px 7px rgba(55,6,77,.25))}.epy-map-marker.selected{background:linear-gradient(150deg,#ffc83d,#df8f00)}.epy-map-marker.user{width:22px;height:22px;border-radius:50%;clip-path:none;background:var(--epy-blue);border:4px solid #fff}.epy-popup{width:250px}.epy-popup img{width:100%;height:105px;object-fit:cover;border-radius:10px}.epy-popup h3{margin:10px 0 5px}.epy-popup .epy-btn{width:100%;margin-top:8px}.epy-loading{display:flex;align-items:center;gap:10px;padding:30px;color:var(--epy-muted)}.epy-loading span{width:18px;height:18px;border:3px solid var(--epy-border);border-top-color:var(--epy-primary);border-radius:50%;animation:epyspin .7s linear infinite}.epy-empty{text-align:center;padding:50px 20px;color:var(--epy-muted)}.epy-load-more{width:100%;margin-top:14px}@keyframes epyspin{to{transform:rotate(360deg)}}
.epy-search-page{max-width:1480px;margin:0 auto;padding:24px}.epy-search-hero{display:flex;justify-content:space-between;align-items:center;padding:34px;border-radius:24px;background:linear-gradient(120deg,#fff,#fff4fb);border:1px solid var(--epy-border);margin-bottom:18px}.epy-search-hero h1{font-size:2.4rem;margin:4px 0}.epy-search-filter{margin:0 0 18px;max-width:none}.epy-search-layout{display:grid;grid-template-columns:250px minmax(440px,1fr) minmax(360px, .9fr);gap:16px;align-items:start}.epy-filter-sidebar{padding:20px;position:sticky;top:100px;display:grid;gap:15px}.epy-filter-sidebar h3{margin:0}.epy-filter-sidebar label{display:grid;gap:7px}.epy-map-sticky{position:sticky;top:100px;min-height:calc(100vh - 120px)}.epy-map-sticky .epy-map{min-height:calc(100vh - 120px)}
.epy-detail-page{max-width:1440px;margin:0 auto;padding:28px}.epy-detail-gallery{display:grid;grid-template-columns:2fr 1fr;gap:10px;height:430px}.epy-detail-main,.epy-detail-mosaic>div{overflow:hidden;border-radius:18px;background:var(--epy-soft)}.epy-detail-main img{width:100%;height:100%;object-fit:cover}.epy-detail-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:10px}.epy-gallery-placeholder{display:grid;place-items:center;color:var(--epy-muted);font-weight:800;background:linear-gradient(145deg,#f7edf7,#fff)}.epy-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;margin-top:24px;align-items:start}.epy-detail-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.epy-detail-heading h1{font-size:2.7rem;letter-spacing:-.05em;margin:10px 0}.epy-detail-tabs{display:flex;gap:8px;overflow:auto;padding:8px;border:1px solid var(--epy-border);border-radius:16px;background:#fff;position:sticky;top:80px;z-index:20}.epy-detail-tabs a{padding:11px 15px;border-radius:11px;color:var(--epy-muted);font-weight:800;text-decoration:none;white-space:nowrap}.epy-detail-tabs a:hover{background:var(--epy-soft);color:var(--epy-primary)}.epy-content-card{padding:26px;margin-top:18px}.epy-content-card h2{margin-top:0}.epy-feature-row{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--epy-border);border-radius:16px;overflow:hidden;margin-top:22px}.epy-feature-row span{padding:15px;text-align:center;font-weight:750;border-right:1px solid var(--epy-border)}.epy-device-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.epy-device-card{border:1px solid var(--epy-border);border-radius:18px;padding:18px;background:#fff}.epy-device-visual{height:130px;border-radius:14px;background:linear-gradient(145deg,#fff3fb,#f7f0f8);display:grid;place-items:center;font-size:2.3rem;overflow:hidden}.epy-device-visual img{width:100%;height:100%;object-fit:contain}.epy-device-card h3{margin:12px 0 6px}.epy-device-card p{color:var(--epy-muted);line-height:1.55}.epy-device-actions{display:flex;gap:8px}.epy-device-actions .epy-btn{flex:1;font-size:.78rem;padding:.65rem}.epy-detail-map{height:330px;border-radius:16px;overflow:hidden}.epy-booking-sticky{position:sticky;top:100px;padding:25px}.epy-booking-sticky h2{font-size:1.8rem;letter-spacing:-.04em}.epy-booking-sticky p,.epy-booking-sticky small{color:var(--epy-muted);line-height:1.55}.epy-booking-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.epy-booking-stats div{padding:15px;border:1px solid var(--epy-border);border-radius:14px}.epy-booking-stats b,.epy-booking-stats span{display:block}.epy-booking-stats b{font-size:1.4rem;color:var(--epy-primary)}
.epy-modal[hidden]{display:none}.epy-modal{position:fixed;z-index:10050;inset:0;display:grid;place-items:center;padding:20px}.epy-modal-backdrop{position:absolute;inset:0;background:rgba(20,8,28,.6);backdrop-filter:blur(6px)}.epy-modal-dialog{position:relative;z-index:1;background:#fff;border-radius:24px;max-width:720px;width:100%;max-height:90vh;overflow:auto;padding:30px;box-shadow:var(--epy-shadow)}.epy-modal-close{position:absolute;right:16px;top:14px;width:40px;height:40px;border-radius:50%;border:0;background:var(--epy-soft);font-size:1.4rem;cursor:pointer}.epy-modal-device{display:grid;grid-template-columns:220px 1fr;gap:24px}.epy-modal-device img{width:100%;height:260px;object-fit:contain;background:var(--epy-soft);border-radius:16px}.epy-modal-device dl{display:grid;grid-template-columns:1fr 1fr;gap:10px}.epy-modal-device dt{font-size:.75rem;color:var(--epy-muted)}.epy-modal-device dd{margin:2px 0 0;font-weight:800}
.epy-booking-page{max-width:1440px;margin:0 auto;padding:30px}.epy-booking-stepper{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:24px}.epy-booking-stepper span{display:flex;align-items:center;gap:8px;padding:12px 14px;border:1px solid var(--epy-border);border-radius:14px;font-weight:800;color:var(--epy-muted);background:#fff}.epy-booking-stepper b{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#f2e9f2}.epy-booking-stepper .active{background:var(--epy-ink);color:#fff;border-color:var(--epy-ink)}.epy-booking-stepper .active b{background:var(--epy-primary)}.epy-booking-stepper .done{color:var(--epy-green)}.epy-booking-heading{display:flex;justify-content:space-between;align-items:center;margin:25px 0}.epy-booking-heading h1{font-size:2.6rem;letter-spacing:-.05em;margin:5px 0}.epy-booking-heading p{color:var(--epy-muted)}.epy-region-layout{display:grid;grid-template-columns:290px minmax(420px,1fr) 330px;gap:18px;align-items:start}.epy-region-sidebar,.epy-body-map,.epy-selection-summary{background:#fff;border:1px solid var(--epy-border);border-radius:24px;box-shadow:0 14px 38px rgba(70,20,80,.07)}.epy-region-sidebar{padding:16px}.epy-gender-tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:14px}.epy-gender-tabs button{height:48px;border:1px solid var(--epy-border);background:#fff;font-weight:850;cursor:pointer}.epy-gender-tabs button:first-child{border-radius:14px 0 0 14px}.epy-gender-tabs button:last-child{border-radius:0 14px 14px 0}.epy-gender-tabs button.active{background:var(--epy-ink);color:#fff}.epy-region-list{display:grid;gap:9px}.epy-region-item{border:1px solid var(--epy-border);border-radius:15px;background:#fff;padding:13px;text-align:left;cursor:pointer}.epy-region-item:hover,.epy-region-item.selected{border-color:var(--epy-primary);background:var(--epy-soft)}.epy-region-item b,.epy-region-item small,.epy-region-item strong{display:block}.epy-region-item small{color:var(--epy-muted);margin:4px 0}.epy-region-item strong{color:var(--epy-primary)}.epy-body-map{padding:20px;min-height:760px;display:grid;place-items:center;overflow:hidden}.epy-body-stage{height:720px;max-width:540px;width:100%;position:relative;display:grid;place-items:center;background:radial-gradient(circle,#fff 0,#fff 55%,#fcf4fb 100%);border-radius:20px}.epy-body-stage img{max-height:690px;max-width:100%;object-fit:contain;user-select:none}.epy-hotspot{position:absolute;transform:translate(-50%,-50%);width:42px;height:42px;border:4px solid #fff;border-radius:50%;background:linear-gradient(135deg,var(--epy-primary),#76058c);color:#fff;font-weight:900;box-shadow:0 8px 22px rgba(169,11,185,.36);cursor:pointer;z-index:2}.epy-hotspot:hover{transform:translate(-50%,-50%) scale(1.08)}.epy-hotspot.selected{background:linear-gradient(135deg,var(--epy-gold),#f09100);color:#3b2200}.epy-selection-summary{padding:22px;position:sticky;top:95px}.epy-selection-summary h2{margin:6px 0 18px}.epy-selected-regions{display:flex;flex-wrap:wrap;gap:7px;min-height:74px}.epy-selected-chip{border:0;border-radius:999px;background:var(--epy-soft);color:var(--epy-primary);font-weight:800;padding:8px 10px;cursor:pointer}.epy-summary-line{display:flex;justify-content:space-between;gap:12px;border-top:1px dashed var(--epy-border);padding:15px 0}.epy-summary-line.total b{font-size:1.5rem;color:var(--epy-primary)}.epy-policy-check{display:flex;align-items:flex-start;gap:8px;font-size:.78rem;color:var(--epy-muted);margin:12px 0 18px}.epy-policy-check input{margin-top:3px}.epy-date-strip{display:flex;gap:10px;align-items:end;margin-bottom:16px}.epy-date-strip label{display:grid;gap:5px}.epy-device-time-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}.epy-device-selection{min-width:0}.epy-selectable-device{display:grid;grid-template-columns:150px 1fr;gap:15px}.epy-slot-grid{display:flex;flex-wrap:wrap;gap:8px}.epy-slot{border:1px solid var(--epy-border);border-radius:10px;background:#fff;padding:9px 12px;font-weight:800;cursor:pointer}.epy-slot:hover,.epy-slot.selected{background:var(--epy-primary);border-color:var(--epy-primary);color:#fff}.epy-no-slot{color:var(--epy-muted)}.epy-form-card{padding:28px;max-width:980px}.epy-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.epy-form-grid label{display:grid;gap:6px;font-weight:750}.epy-form-grid input,.epy-form-grid select,.epy-form-grid textarea{border:1px solid var(--epy-border);border-radius:12px;padding:13px;outline:0}.epy-form-grid .full{grid-column:1/-1}.epy-form-actions{display:flex;justify-content:space-between;margin-top:22px}.epy-contract-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:20px;align-items:start}.epy-contract-list{display:grid;gap:12px}.epy-contract-card{display:grid;grid-template-columns:50px 1fr auto;gap:15px;align-items:center;background:#fff;border:1px solid var(--epy-border);border-radius:18px;padding:20px}.epy-contract-card b,.epy-contract-card small,.epy-contract-card a{display:block}.epy-contract-card small{color:var(--epy-muted);margin:5px 0}.epy-contract-card a{color:var(--epy-primary);font-weight:800}.epy-contract-card input{width:22px;height:22px}.epy-contract-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:var(--epy-soft);color:var(--epy-primary);font-size:1.3rem}.epy-payment-card{background:#fff;border:1px solid var(--epy-border);border-radius:24px;padding:24px;position:sticky;top:95px}.epy-payment-option{border:2px solid var(--epy-primary);border-radius:14px;padding:15px;background:var(--epy-soft)}.epy-payment-option b,.epy-payment-option span{display:block}.epy-payment-card p{color:var(--epy-muted);line-height:1.55}.epy-confirm-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:18px}.epy-confirm-card{padding:26px;display:grid;gap:0}.epy-confirm-card>div{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--epy-border)}.epy-confirm-card span{color:var(--epy-muted)}.epy-confirm-card .total b{font-size:1.7rem;color:var(--epy-primary)}.epy-confirm-action{padding:25px}.epy-secure-box{background:#edfff5;border:1px solid #b5efd1;border-radius:15px;padding:15px;color:#17633f;line-height:1.8;margin-bottom:16px}.epy-success{max-width:740px;margin:70px auto;padding:50px;background:#fff;border:1px solid var(--epy-border);border-radius:30px;box-shadow:var(--epy-shadow);text-align:center}.epy-success-icon{display:grid;place-items:center;width:86px;height:86px;border-radius:50%;background:#e8fff3;color:var(--epy-green);font-size:2.5rem;margin:0 auto 18px}.epy-success h1{font-size:2.7rem}.epy-success-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}.epy-success-meta div{padding:17px;border:1px solid var(--epy-border);border-radius:14px}.epy-success-meta span,.epy-success-meta b{display:block}
.epy-panel{max-width:1540px;margin:0 auto;padding:22px;display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px}.epy-panel-nav{background:#160e2c;color:#fff;border-radius:24px;padding:20px;min-height:calc(100vh - 120px);position:sticky;top:90px}.epy-panel-nav h2{font-size:1.1rem;padding:12px}.epy-panel-nav a{display:block;color:#dcd5e5;text-decoration:none;padding:12px 14px;border-radius:11px;font-weight:700;margin:3px 0}.epy-panel-nav a:hover,.epy-panel-nav a.active{background:linear-gradient(135deg,var(--epy-primary),#6d0a8c);color:#fff}.epy-panel-main{min-width:0}.epy-panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.epy-panel-heading h1{font-size:2.2rem;margin:4px 0}.epy-panel-heading form{display:flex;gap:8px}.epy-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.epy-stat-grid>div{background:#fff;border:1px solid var(--epy-border);border-radius:18px;padding:20px}.epy-stat-grid span,.epy-stat-grid b{display:block}.epy-stat-grid span{color:var(--epy-muted)}.epy-stat-grid b{font-size:1.5rem;margin-top:8px}.epy-table-wrap{overflow:auto}.epy-table{width:100%;border-collapse:collapse}.epy-table th,.epy-table td{text-align:left;padding:13px;border-bottom:1px solid var(--epy-border)}.epy-status{font-size:.75rem;border-radius:999px;padding:6px 9px;background:#effff6;color:var(--epy-green);font-weight:800}.epy-device-chips{display:flex;gap:8px;overflow:auto;margin-bottom:10px}.epy-device-chips button{border:1px solid var(--epy-border);border-radius:999px;background:#fff;padding:9px 13px;white-space:nowrap}.epy-calendar-wrap{overflow:auto;background:#fff;border:1px solid var(--epy-border);border-radius:20px}.epy-calendar-grid{display:grid;grid-template-columns:80px repeat(var(--device-count),minmax(160px,1fr));min-width:max-content}.epy-calendar-corner,.epy-calendar-device,.epy-calendar-time,.epy-calendar-cell{border-right:1px solid var(--epy-border);border-bottom:1px solid var(--epy-border);min-height:58px;padding:9px}.epy-calendar-corner,.epy-calendar-device{position:sticky;top:0;background:#fff;z-index:2;font-weight:850}.epy-calendar-corner,.epy-calendar-time{position:sticky;left:0;background:#fff;z-index:3}.epy-calendar-device small{display:block;color:var(--epy-muted)}.epy-calendar-cell.available{background:#f7fffb;color:#529674}.epy-calendar-cell.booked{background:#fff3fb}.epy-calendar-cell button{width:100%;border:0;background:transparent;text-align:left}.epy-calendar-cell b,.epy-calendar-cell small{display:block}.epy-floating-action{position:fixed;right:28px;bottom:25px;border:0;border-radius:999px;background:var(--epy-primary);color:#fff;padding:15px 21px;font-weight:850;box-shadow:var(--epy-shadow)}.epy-price-groups{display:grid;gap:16px}.epy-price-list{display:grid;gap:8px}.epy-price-row{display:grid;grid-template-columns:minmax(220px,1fr) 130px 110px 100px 95px;gap:10px;align-items:center;border:1px solid var(--epy-border);border-radius:14px;padding:13px}.epy-price-row b,.epy-price-row small{display:block}.epy-price-row small{color:var(--epy-muted)}.epy-price-row label{display:grid;gap:4px;font-size:.72rem;color:var(--epy-muted)}.epy-price-row input[type=number]{width:100%;height:42px;border:1px solid var(--epy-border);border-radius:10px;padding:0 9px}.epy-switch{display:flex!important;align-items:center;gap:7px}.epy-sensitive{display:inline-block!important;color:#c00068;background:#fff0f7;padding:3px 6px;border-radius:6px;margin-top:3px}
@media(max-width:1199px){.epy-filter-grid{grid-template-columns:repeat(3,1fr)}.epy-discovery{grid-template-columns:440px 1fr}.epy-search-layout{grid-template-columns:220px 1fr}.epy-search-layout .epy-map-panel{grid-column:1/-1;position:relative;min-height:520px}.epy-map-sticky .epy-map{min-height:520px}.epy-region-layout{grid-template-columns:250px minmax(360px,1fr)}.epy-selection-summary{grid-column:1/-1;position:static}.epy-detail-layout{grid-template-columns:1fr 320px}.epy-device-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:899px){.epy-hero{grid-template-columns:1fr;min-height:auto}.epy-hero-copy{padding:48px 22px}.epy-hero h1{font-size:3rem}.epy-hero-visual{min-height:300px}.epy-filter-card{margin:-25px 15px 22px}.epy-filter-grid{grid-template-columns:1fr 1fr}.epy-trust-grid{grid-template-columns:1fr}.epy-discovery{display:flex;flex-direction:column;padding:0 15px}.epy-map-panel{min-height:480px}.epy-map{min-height:480px}.epy-search-page{padding:15px}.epy-search-layout{display:flex;flex-direction:column}.epy-filter-sidebar{position:static;width:100%}.epy-search-layout>*{width:100%}.epy-detail-page{padding:16px}.epy-detail-gallery{height:auto;grid-template-columns:1fr}.epy-detail-main{height:320px}.epy-detail-mosaic{display:none}.epy-detail-layout{grid-template-columns:1fr}.epy-booking-sticky{position:static}.epy-feature-row{grid-template-columns:1fr 1fr}.epy-device-grid{grid-template-columns:1fr}.epy-booking-page{padding:16px}.epy-booking-stepper{display:flex;overflow:auto}.epy-booking-stepper span{min-width:max-content}.epy-booking-stepper span:not(.active){font-size:0}.epy-booking-stepper span:not(.active) b{font-size:.85rem}.epy-region-layout{grid-template-columns:1fr}.epy-region-sidebar{order:1}.epy-body-map{order:2;min-height:650px}.epy-selection-summary{order:3}.epy-region-list{grid-template-columns:1fr 1fr}.epy-device-time-layout,.epy-contract-layout,.epy-confirm-layout{grid-template-columns:1fr}.epy-selection-summary,.epy-payment-card{position:static}.epy-panel{grid-template-columns:1fr;padding:12px}.epy-panel-nav{position:static;min-height:0;display:flex;overflow:auto;gap:5px}.epy-panel-nav h2{display:none}.epy-panel-nav a{white-space:nowrap}.epy-stat-grid{grid-template-columns:1fr 1fr}.epy-price-row{grid-template-columns:1fr 1fr}.epy-price-row>div{grid-column:1/-1}}
@media(max-width:599px){.epy-hero-copy{padding:38px 18px}.epy-hero h1{font-size:2.45rem}.epy-hero-actions{flex-direction:column}.epy-filter-grid{grid-template-columns:1fr}.epy-filter-heading{align-items:flex-start}.epy-filter-heading small{display:none}.epy-filter-toggles{overflow:auto;flex-wrap:nowrap}.epy-filter-toggles span{white-space:nowrap}.epy-results-panel{padding:14px}.epy-section-title{align-items:flex-start;flex-direction:column}.epy-result-tools{width:100%;justify-content:space-between}.epy-salon-card{grid-template-columns:96px 1fr}.epy-salon-card>img{min-height:170px}.epy-card-footer{align-items:stretch;flex-direction:column}.epy-card-footer .epy-btn{width:100%}.epy-search-hero{align-items:flex-start;flex-direction:column;gap:16px;padding:23px}.epy-detail-heading{align-items:flex-start}.epy-detail-heading h1{font-size:2rem}.epy-feature-row{grid-template-columns:1fr}.epy-device-actions{flex-direction:column}.epy-modal-device{grid-template-columns:1fr}.epy-modal-device img{height:190px}.epy-booking-heading{align-items:flex-start;flex-direction:column}.epy-booking-heading h1{font-size:2rem}.epy-region-list{grid-template-columns:1fr 1fr}.epy-body-map{padding:8px;min-height:570px}.epy-body-stage{height:540px}.epy-body-stage img{max-height:520px}.epy-hotspot{width:36px;height:36px}.epy-form-grid{grid-template-columns:1fr}.epy-form-grid .full{grid-column:auto}.epy-contract-card{grid-template-columns:42px 1fr}.epy-contract-card input{grid-column:2}.epy-success{margin:30px 14px;padding:30px 18px}.epy-success-meta{grid-template-columns:1fr}.epy-panel-heading{align-items:flex-start;flex-direction:column;gap:10px}.epy-stat-grid{grid-template-columns:1fr 1fr}.epy-price-row{grid-template-columns:1fr}.epy-price-row>div{grid-column:auto}}
.epy-price-row-wide{grid-template-columns:minmax(210px,1fr) 125px 100px minmax(190px,1fr) 90px 90px}.epy-device-checks{display:flex;flex-wrap:wrap;gap:6px}.epy-device-checks>small{width:100%;color:var(--epy-muted)}.epy-device-checks label{display:inline-flex!important;align-items:center;gap:5px;padding:6px 8px;border:1px solid var(--epy-border);border-radius:999px;font-size:.7rem!important;color:var(--epy-ink)!important}.epy-device-checks input{margin:0}@media(max-width:899px){.epy-price-row-wide{grid-template-columns:1fr 1fr}.epy-price-row-wide>div:first-of-type,.epy-device-checks{grid-column:1/-1}}@media(max-width:599px){.epy-price-row-wide{grid-template-columns:1fr}.epy-price-row-wide>div:first-of-type,.epy-device-checks{grid-column:auto}}

.epy-btn-danger{background:#fff0f2;color:#a51d32;border:1px solid #ffc9d1}.epy-link-danger{border:0;background:transparent;color:#b11635;font-weight:800;cursor:pointer}.epy-validation-summary{margin-bottom:18px;padding:14px 16px;border:1px solid #ffbec9;border-radius:14px;background:#fff2f4;color:#8a1e32}.epy-validation-summary:empty{display:none}.epy-empty-state{padding:48px 24px;text-align:center;border:1px dashed var(--epy-border);border-radius:24px;background:#fff}.epy-empty-state strong{display:block;font-size:1.35rem}.epy-empty-state p{color:var(--epy-muted);max-width:620px;margin:10px auto 20px}.epy-info-box,.epy-success-box{padding:14px 16px;border-radius:14px;line-height:1.6}.epy-info-box{background:#f3f7ff;border:1px solid #c8dafa;color:#264d85}.epy-success-box{background:#eafff3;border:1px solid #b7ebce;color:#17603d}.epy-inline-status{margin-left:10px;color:var(--epy-muted);font-size:.85rem}.epy-account-layout{max-width:1380px;margin:34px auto;padding:0 20px;display:grid;grid-template-columns:250px minmax(0,1fr);gap:20px;font-family:var(--epy-font);color:var(--epy-ink)}.epy-account-nav{position:sticky;top:90px;align-self:start;background:#fff;border:1px solid var(--epy-border);border-radius:22px;padding:18px;box-shadow:0 12px 32px rgba(70,20,80,.07)}.epy-account-nav h2{margin:6px 10px 14px}.epy-account-nav a{display:block;padding:12px 13px;border-radius:11px;color:var(--epy-ink);text-decoration:none;font-weight:700}.epy-account-nav a:hover,.epy-account-nav a.active{background:var(--epy-soft);color:var(--epy-primary)}.epy-account-main{min-width:0}.epy-booking-list{display:grid;gap:14px}.epy-booking-list-card{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px;background:#fff;border:1px solid var(--epy-border);border-radius:22px;box-shadow:0 10px 30px rgba(70,20,80,.06)}.epy-booking-date{text-align:center;padding:14px;border-radius:16px;background:var(--epy-soft)}.epy-booking-date b,.epy-booking-date span,.epy-booking-date small{display:block}.epy-booking-date b{font-size:2rem;color:var(--epy-primary)}.epy-booking-list-body h2{margin:5px 0;font-size:1.25rem}.epy-booking-list-body p{color:var(--epy-muted);margin:8px 0}.epy-reservation-number{font-size:.72rem;font-weight:850;letter-spacing:.08em;color:var(--epy-primary)}.epy-booking-meta{display:flex;gap:18px;flex-wrap:wrap;font-size:.84rem}.epy-booking-actions{display:grid;gap:8px}.epy-detail-summary-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:18px;margin-bottom:18px}.epy-definition-list{margin:0}.epy-definition-list>div{display:grid;grid-template-columns:160px 1fr;gap:16px;padding:13px 0;border-bottom:1px solid var(--epy-border)}.epy-definition-list dt{color:var(--epy-muted)}.epy-definition-list dd{margin:0}.epy-cancel-form{display:grid;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid var(--epy-border)}.epy-cancel-form label,.epy-checkin-card label,.epy-content-card>label{display:grid;gap:6px;font-weight:750}.epy-cancel-form textarea,.epy-checkin-card input,.epy-content-card>label input,.epy-content-card>label textarea{width:100%;border:1px solid var(--epy-border);border-radius:12px;padding:12px;outline:0}.epy-timeline{list-style:none;padding:0;margin:0;display:grid;gap:0}.epy-timeline li{display:grid;grid-template-columns:24px 1fr;gap:10px;position:relative;padding-bottom:18px}.epy-timeline li:before{content:"";position:absolute;left:7px;top:15px;bottom:-2px;width:2px;background:var(--epy-border)}.epy-timeline li:last-child:before{display:none}.epy-timeline li>span{width:16px;height:16px;border-radius:50%;background:var(--epy-primary);margin-top:3px;z-index:1}.epy-timeline b,.epy-timeline small{display:block}.epy-timeline small{color:var(--epy-muted);margin-top:3px}.epy-date-selector,.epy-toolbar-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-bottom:18px}.epy-date-selector{padding:18px;background:#fff;border:1px solid var(--epy-border);border-radius:18px}.epy-date-selector label,.epy-toolbar-form label{display:grid;gap:5px;min-width:210px;font-weight:750}.epy-date-selector input,.epy-toolbar-form input,.epy-toolbar-form select{height:46px;border:1px solid var(--epy-border);border-radius:11px;padding:0 12px}.epy-reschedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.epy-slot-grid{display:grid;grid-template-columns:repeat(4,minmax(70px,1fr));gap:8px}.epy-slot-button{width:100%;height:42px;border:1px solid var(--epy-primary);border-radius:10px;background:#fff;color:var(--epy-primary);font-weight:850;cursor:pointer}.epy-slot-button:hover{background:var(--epy-primary);color:#fff}.epy-application-page{max-width:1260px;margin:34px auto;padding:0 20px;font-family:var(--epy-font);color:var(--epy-ink)}.epy-application-hero{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:28px 30px;margin-bottom:18px;border-radius:26px;background:linear-gradient(135deg,#fff2fb,#f7eafe);border:1px solid var(--epy-border)}.epy-application-hero h1{font-size:2.45rem;margin:6px 0}.epy-application-hero p{max-width:750px;color:var(--epy-muted);margin:0}.epy-wizard-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px}.epy-wizard-progress button{border:1px solid var(--epy-border);background:#fff;border-radius:16px;padding:12px;display:flex;align-items:center;gap:9px;text-align:left;color:var(--epy-muted);cursor:pointer}.epy-wizard-progress button b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f2e8f5;color:var(--epy-primary)}.epy-wizard-progress button.active{border-color:var(--epy-primary);color:var(--epy-ink)}.epy-wizard-progress button.active b{background:var(--epy-primary);color:#fff}.epy-wizard-step{display:none}.epy-wizard-step.active{display:block}.epy-wizard-actions{display:flex;justify-content:space-between;margin-top:16px}.epy-selection-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.epy-selection-card{position:relative;display:block;border:1px solid var(--epy-border);border-radius:17px;padding:17px;cursor:pointer}.epy-selection-card>input{position:absolute;opacity:0}.epy-selection-check{position:absolute;right:12px;top:12px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#f4edf5;color:#a99aae}.epy-selection-card:has(input:checked){border-color:var(--epy-primary);background:var(--epy-soft)}.epy-selection-card:has(input:checked) .epy-selection-check{background:var(--epy-primary);color:#fff}.epy-selection-card b,.epy-selection-card small{display:block}.epy-selection-card p{color:var(--epy-muted);font-size:.83rem}.epy-application-region-list{display:grid;gap:16px}.epy-application-region-group{border:1px solid var(--epy-border);border-radius:18px;overflow:hidden}.epy-application-region-group h3{margin:0;padding:15px 18px;background:var(--epy-soft)}.epy-application-region{display:grid;grid-template-columns:minmax(220px,1fr) 120px 100px 110px minmax(220px,1fr);gap:10px;align-items:center;padding:13px 16px;border-top:1px solid var(--epy-border)}.epy-application-region label{display:grid;gap:4px;font-size:.75rem;color:var(--epy-muted)}.epy-application-region input[type=number]{height:40px;border:1px solid var(--epy-border);border-radius:9px;padding:0 8px}.epy-region-enable{display:flex!important;align-items:center;gap:10px;color:var(--epy-ink)!important}.epy-region-enable span b,.epy-region-enable span small{display:block}.epy-application-device-links{display:flex;flex-wrap:wrap;gap:5px}.epy-application-device-links label{display:inline-flex!important;align-items:center;gap:4px;padding:5px 7px;border:1px solid var(--epy-border);border-radius:999px;color:var(--epy-ink)!important}.epy-toggle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:16px 0}.epy-toggle-grid label{display:flex;align-items:center;gap:8px;border:1px solid var(--epy-border);border-radius:13px;padding:12px;font-weight:750}.epy-application-status-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.epy-status-pending,.epy-status-paymentpending{background:#fff7df;color:#805500}.epy-status-approved,.epy-status-confirmed,.epy-status-checkedin,.epy-status-completed{background:#eafff3;color:#17603d}.epy-status-rejected,.epy-status-cancelled,.epy-status-refunded{background:#fff0f2;color:#9d1f34}.epy-status-rescheduled{background:#eef4ff;color:#2f5a9e}.epy-toolbar-form{padding:14px 16px;background:#fff;border:1px solid var(--epy-border);border-radius:16px}.epy-region-checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.epy-region-checkbox-grid>div{border:1px solid var(--epy-border);border-radius:16px;padding:14px}.epy-region-checkbox-grid label{display:flex;gap:9px;align-items:flex-start;padding:10px;border-bottom:1px solid var(--epy-border)}.epy-region-checkbox-grid label:last-child{border-bottom:0}.epy-region-checkbox-grid b,.epy-region-checkbox-grid small{display:block}.epy-form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.epy-working-hours-list{display:grid;gap:10px}.epy-working-hour-card{display:grid;grid-template-columns:minmax(150px,1fr) repeat(4,minmax(120px,.8fr)) auto;gap:10px;align-items:end;background:#fff;border:1px solid var(--epy-border);border-radius:17px;padding:14px}.epy-working-hour-card label{display:grid;gap:4px;font-size:.75rem;color:var(--epy-muted)}.epy-working-hour-card select{height:42px;border:1px solid var(--epy-border);border-radius:10px;padding:0 8px}.epy-working-day{align-self:center}.epy-working-day b{display:block;text-transform:capitalize}.epy-checkin-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px}.epy-checkin-card{display:grid;gap:14px}.epy-clean-list{padding-left:20px;line-height:2;color:var(--epy-muted)}.epy-stat-grid-three{grid-template-columns:repeat(3,1fr)}.epy-panel-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.epy-panel-gallery article{border:1px solid var(--epy-border);border-radius:14px;overflow:hidden}.epy-panel-gallery img{width:100%;height:160px;object-fit:cover}.epy-panel-gallery article>div{display:flex;justify-content:space-between;align-items:center;padding:9px}.epy-device-chips button.active{background:var(--epy-primary);color:#fff;border-color:var(--epy-primary)}.epy-device-hidden{opacity:.12;pointer-events:none}.epy-account-navigation{display:block!important}.epy-account-navigation .customer-bookings.active>a{color:var(--epy-primary);font-weight:800}
@media(max-width:1199px){.epy-application-region{grid-template-columns:1fr 110px 90px}.epy-application-device-links{grid-column:1/-1}.epy-working-hour-card{grid-template-columns:1fr 1fr 1fr}.epy-working-day{grid-column:1/-1}.epy-panel-gallery{grid-template-columns:repeat(3,1fr)}}
@media(max-width:899px){.epy-account-layout{grid-template-columns:1fr}.epy-account-nav{position:static;display:flex;overflow:auto;gap:5px}.epy-account-nav h2{display:none}.epy-account-nav a{white-space:nowrap}.epy-booking-list-card{grid-template-columns:80px 1fr}.epy-booking-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}.epy-detail-summary-grid,.epy-checkin-layout{grid-template-columns:1fr}.epy-reschedule-grid,.epy-application-status-list{grid-template-columns:1fr}.epy-selection-card-grid{grid-template-columns:repeat(2,1fr)}.epy-wizard-progress button span{display:none}.epy-working-hour-card{grid-template-columns:1fr 1fr}.epy-panel-gallery{grid-template-columns:repeat(2,1fr)}.epy-toggle-grid{grid-template-columns:1fr 1fr}}
@media(max-width:599px){.epy-application-hero{align-items:flex-start;flex-direction:column;padding:22px}.epy-application-hero h1{font-size:2rem}.epy-wizard-progress{grid-template-columns:repeat(4,minmax(48px,1fr))}.epy-wizard-progress button{justify-content:center}.epy-selection-card-grid,.epy-toggle-grid,.epy-region-checkbox-grid{grid-template-columns:1fr}.epy-application-region{grid-template-columns:1fr 1fr}.epy-region-enable,.epy-application-device-links{grid-column:1/-1}.epy-working-hour-card{grid-template-columns:1fr}.epy-working-day{grid-column:auto}.epy-panel-gallery{grid-template-columns:1fr}.epy-booking-list-card{grid-template-columns:1fr}.epy-booking-date{text-align:left;display:flex;align-items:center;gap:8px}.epy-booking-date b,.epy-booking-date span,.epy-booking-date small{display:inline}.epy-booking-actions{grid-column:auto;grid-template-columns:1fr}.epy-definition-list>div{grid-template-columns:1fr;gap:4px}.epy-slot-grid{grid-template-columns:repeat(3,1fr)}}
.epy-male-service-toggle{display:flex;align-items:flex-start;gap:12px;margin:0 0 16px;padding:14px 16px;border:1px solid var(--epy-border);border-radius:16px;background:linear-gradient(135deg,#fff,#fbf2fc);cursor:pointer}.epy-male-service-toggle input{margin-top:4px}.epy-male-service-toggle span,.epy-male-service-toggle b,.epy-male-service-toggle small{display:block}.epy-male-service-toggle small{margin-top:3px;color:var(--epy-muted)}

.epy-btn-ghost{background:transparent;color:var(--epy-primary);border:1px solid rgba(169,11,185,.28)}
.epy-btn-danger{background:#fff0f2;color:#a91e38;border:1px solid #f3c4cd}
.epy-btn-small{min-height:38px;padding:.5rem .8rem;font-size:.8rem;border-radius:10px}
.epy-muted{color:var(--epy-muted)}
.epy-count-badge,.epy-capacity-badge,.epy-source-badge{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 11px;border-radius:999px;background:var(--epy-soft);color:var(--epy-primary);font-size:.78rem;font-weight:850;white-space:nowrap}
.epy-panel-brand{display:flex;align-items:center;gap:11px;padding:4px 5px 18px;margin-bottom:10px;border-bottom:1px solid rgba(255,255,255,.12)}
.epy-panel-brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--epy-primary),#71098e);color:#fff;font-weight:900;box-shadow:0 10px 24px rgba(169,11,185,.28)}
.epy-panel-brand small,.epy-panel-brand strong{display:block}.epy-panel-brand small{color:#bdb3cc;font-size:.72rem}.epy-panel-brand strong{max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.epy-panel-nav nav{display:grid;gap:3px}.epy-panel-nav nav a{display:flex;align-items:center;gap:10px}.epy-panel-nav nav a>span{display:grid;place-items:center;width:24px;min-width:24px;color:#dbc6e4}
.epy-panel-two-column{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:18px;align-items:start}
.epy-panel-form-layout{display:grid;gap:18px}.epy-form-submit-bar{position:sticky;bottom:12px;z-index:20;display:flex;justify-content:flex-end;gap:10px;padding:13px 15px;border:1px solid var(--epy-border);border-radius:17px;background:rgba(255,255,255,.94);box-shadow:0 16px 36px rgba(34,10,44,.14);backdrop-filter:blur(14px)}
.epy-toolbar-card{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:16px;padding:14px 16px;border:1px solid var(--epy-border);border-radius:17px;background:#fff}
.epy-filter-inline{display:flex;align-items:flex-end;gap:9px;flex-wrap:wrap}.epy-filter-inline label{display:grid;gap:5px;min-width:190px;font-size:.78rem;font-weight:800;color:var(--epy-muted)}.epy-filter-inline select{height:42px;border:1px solid var(--epy-border);border-radius:10px;padding:0 10px;background:#fff}
.epy-table-responsive td[data-label]:before{display:none}
.epy-detail-status-row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}
.epy-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin:16px 0}.epy-summary-grid>div{padding:13px 0;border-bottom:1px solid var(--epy-border)}.epy-summary-grid dt{font-size:.75rem;color:var(--epy-muted);font-weight:750}.epy-summary-grid dd{margin:5px 0 0;font-weight:800}.epy-summary-grid-large{grid-template-columns:repeat(2,minmax(0,1fr))}
.epy-summary-list{display:grid;gap:8px;margin:16px 0}.epy-summary-list>div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--epy-border)}.epy-summary-list span{color:var(--epy-muted)}
.epy-note-box{padding:14px 16px;border-radius:14px;background:#fff9e7;border:1px solid #efd58b}.epy-note-box p{margin:6px 0 0;color:#66542a}
.epy-card-actions,.epy-device-card-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:16px}
.epy-history-card{position:sticky;top:90px}.epy-history-card .epy-timeline li>i{width:14px;height:14px;border-radius:50%;background:var(--epy-primary);margin:4px 0 0 1px;z-index:1}.epy-history-card .epy-timeline time{display:block;color:var(--epy-muted);font-size:.77rem;margin-top:4px}
.epy-device-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.epy-device-card-head h3{margin:0}.epy-device-card-head p{margin:4px 0;color:var(--epy-muted)}
.epy-dialog{width:min(680px,calc(100% - 28px));border:0;border-radius:24px;padding:0;box-shadow:0 30px 90px rgba(25,7,35,.35)}.epy-dialog::backdrop{background:rgba(25,7,35,.62);backdrop-filter:blur(4px)}.epy-dialog>div{position:relative;padding:30px}.epy-dialog-close{position:absolute;right:14px;top:14px;width:40px;height:40px;border:1px solid var(--epy-border);border-radius:50%;background:#fff;font-size:1.35rem;cursor:pointer}
.epy-manual-total{text-align:right}.epy-manual-total span,.epy-manual-total b,.epy-manual-total small{display:block}.epy-manual-total b{font-size:1.28rem}.epy-manual-total small{color:var(--epy-muted)}
.epy-manual-region-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.epy-manual-region-group{border:1px solid var(--epy-border);border-radius:17px;overflow:hidden}.epy-manual-region-group h3{margin:0;padding:14px 16px;background:var(--epy-soft)}.epy-manual-region-card{display:block;position:relative;border-top:1px solid var(--epy-border);cursor:pointer}.epy-manual-region-card>input{position:absolute;opacity:0}.epy-manual-region-card>span{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px 16px}.epy-manual-region-card small{color:var(--epy-muted)}.epy-manual-region-card:has(input:checked)>span{background:#fdf1ff;box-shadow:inset 4px 0 0 var(--epy-primary)}
.epy-working-hour-row{display:grid;grid-template-columns:minmax(170px,1.2fr) repeat(4,minmax(120px,1fr)) auto;gap:12px;align-items:end}.epy-working-hour-row>label{display:grid;gap:5px;font-size:.75rem;font-weight:750;color:var(--epy-muted)}.epy-working-hour-row input[type=time]{height:42px;border:1px solid var(--epy-border);border-radius:10px;padding:0 9px;background:#fff}.epy-working-hour-row.is-closed{opacity:.72}.epy-working-hour-row.is-closed input[type=time]{background:#f5f2f6}
.epy-switch-control{display:inline-flex;align-items:center;gap:7px;margin-top:7px;font-size:.76rem;color:#ddd}.epy-switch-control input{position:absolute;opacity:0}.epy-switch-control>span{position:relative;width:38px;height:22px;border-radius:999px;background:#c9c0cc;transition:.2s}.epy-switch-control>span:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;left:3px;top:3px;transition:.2s}.epy-switch-control input:checked+span{background:var(--epy-primary)}.epy-switch-control input:checked+span:after{transform:translateX(16px)}
.epy-block-list,.epy-request-list{display:grid;gap:10px}.epy-block-list article,.epy-request-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 16px;border:1px solid var(--epy-border);border-radius:15px;background:#fff}.epy-block-list h3,.epy-request-list h3{margin:6px 0 3px}.epy-block-list p,.epy-request-list p{margin:0;color:var(--epy-muted)}
.epy-checkin-icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 4px;border-radius:24px;background:linear-gradient(135deg,#eafff3,#c7f5dc);color:var(--epy-green);font-size:2.1rem;font-weight:900}.epy-checkin-message{padding:12px 14px;border-radius:12px;background:var(--epy-soft);color:var(--epy-primary);font-weight:800;text-align:center}.epy-security-note ul{padding-left:20px;line-height:1.9;color:var(--epy-muted)}
.epy-current-iban{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;border:1px solid var(--epy-border);border-radius:14px;background:var(--epy-soft)}
.epy-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.epy-choice-grid>label{display:flex!important;align-items:center;gap:8px;padding:12px;border:1px solid var(--epy-border);border-radius:13px;background:#fff;cursor:pointer}.epy-choice-grid>label:has(input:checked){border-color:var(--epy-primary);background:var(--epy-soft);color:var(--epy-primary)}
.epy-profile-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.epy-profile-gallery article{overflow:hidden;border:1px solid var(--epy-border);border-radius:15px;background:#fff}.epy-profile-gallery img{width:100%;height:170px;object-fit:cover}.epy-profile-gallery article>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px}.epy-profile-gallery article>div span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.epy-gallery-add-form{align-items:end}.epy-inline-action{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.epy-field,.epy-field-block{display:grid;gap:5px}.epy-empty-state-compact{padding:26px 20px}.epy-empty-state-compact h3{margin:5px 0}.epy-application-form{display:block}
.epy-application-region{transition:.2s ease}.epy-application-region.active{background:#fffbff}.epy-application-region.is-disabled{opacity:.48;background:#f6f4f6}.epy-application-region.is-disabled .epy-region-enable{cursor:not-allowed}.epy-application-region em{display:inline-flex;margin-top:4px;padding:3px 7px;border-radius:999px;background:#fff0f2;color:#9d1f34;font-size:.67rem;font-style:normal;font-weight:800}.epy-app-price,.epy-app-duration{width:100%}.epy-app-enabled,.epy-app-private,.epy-app-device{accent-color:var(--epy-primary)}
.epy-wizard-progress button.complete{border-color:#b8e7cf;background:#f0fff7;color:#17603d}.epy-wizard-progress button.complete b{background:var(--epy-green);color:#fff}
.epy-validation-summary{margin-bottom:15px;padding:14px 16px;border:1px solid #f0b8c4;border-radius:13px;background:#fff0f2;color:#8e2035}.epy-validation-summary ul{margin:0;padding-left:18px}
.epy-application-status-list .epy-content-card{display:grid;gap:10px}.epy-request-list small{color:var(--epy-muted)}
.epy-account-navigation .list li.customer-bookings a:before{content:"▦";display:inline-block;margin-right:8px;color:var(--epy-primary)}
@media(max-width:1199px){.epy-panel-two-column{grid-template-columns:1fr}.epy-history-card{position:static}.epy-working-hour-row{grid-template-columns:repeat(3,minmax(0,1fr))}.epy-working-day{grid-column:1/-1}.epy-choice-grid,.epy-profile-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:899px){.epy-toolbar-card{align-items:stretch;flex-direction:column}.epy-filter-inline{align-items:stretch}.epy-filter-inline label{min-width:0;flex:1}.epy-manual-region-grid{grid-template-columns:1fr}.epy-working-hour-row{grid-template-columns:repeat(2,minmax(0,1fr))}.epy-table-responsive thead{display:none}.epy-table-responsive,.epy-table-responsive tbody,.epy-table-responsive tr,.epy-table-responsive td{display:block;width:100%}.epy-table-responsive tr{padding:10px 0;border-bottom:1px solid var(--epy-border)}.epy-table-responsive td{display:grid;grid-template-columns:130px minmax(0,1fr);gap:10px;border:0;padding:7px 10px}.epy-table-responsive td[data-label]:before{display:block;content:attr(data-label);font-weight:800;color:var(--epy-muted)}.epy-profile-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:599px){.epy-panel-heading{align-items:flex-start;flex-direction:column}.epy-panel-heading>.epy-btn{width:100%}.epy-summary-grid,.epy-summary-grid-large,.epy-working-hour-row,.epy-choice-grid,.epy-profile-gallery{grid-template-columns:1fr}.epy-working-day{grid-column:auto}.epy-form-submit-bar{position:static;display:grid;grid-template-columns:1fr}.epy-form-submit-bar .epy-btn{width:100%}.epy-manual-region-card>span{grid-template-columns:1fr auto}.epy-manual-region-card strong{grid-column:2;grid-row:1/3}.epy-block-list article,.epy-request-list article{align-items:flex-start;flex-direction:column}.epy-application-region{grid-template-columns:1fr}.epy-application-region>*{grid-column:1}.epy-application-device-links{grid-column:1}.epy-dialog>div{padding:24px 18px}.epy-table-responsive td{grid-template-columns:105px minmax(0,1fr)}}
.epy-male-service-toggle{display:flex;align-items:flex-start;gap:10px;margin:0 0 16px;padding:14px 16px;border:1px solid #eed4b1;border-radius:14px;background:#fff9ec;cursor:pointer}.epy-male-service-toggle input{margin-top:3px;accent-color:var(--epy-primary)}.epy-male-service-toggle b,.epy-male-service-toggle small{display:block}.epy-male-service-toggle small{margin-top:3px;color:var(--epy-muted)}

.epy-region-quick-actions{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:14px}.epy-btn-ghost{background:#fff;border:1px solid var(--epy-border);color:var(--epy-ink)}.epy-btn-ghost:hover{border-color:var(--epy-primary);color:var(--epy-primary)}.epy-body-view-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:min(420px,100%);margin:0 auto 14px}.epy-body-view-tabs button{height:44px;border:1px solid var(--epy-border);border-radius:12px;background:#fff;color:var(--epy-ink);font-weight:850;cursor:pointer}.epy-body-view-tabs button.active{border-color:var(--epy-primary);background:var(--epy-soft);color:var(--epy-primary);box-shadow:inset 0 0 0 1px var(--epy-primary)}.epy-body-map{display:block}.epy-body-stage{margin:0 auto}.epy-body-help{text-align:center;margin:13px 0 0;color:var(--epy-muted);font-size:.9rem}.epy-body-empty{position:absolute;left:50%;bottom:24px;transform:translateX(-50%);width:min(360px,calc(100% - 28px));padding:11px 14px;border:1px dashed var(--epy-border);border-radius:12px;background:rgba(255,255,255,.94);color:var(--epy-muted);font-size:.82rem;text-align:center;z-index:1}.epy-hotspot{display:grid;place-items:center}.epy-hotspot em{position:absolute;left:50%;top:calc(100% + 7px);transform:translateX(-50%) translateY(-2px);display:block;min-width:max-content;max-width:170px;padding:5px 8px;border-radius:8px;background:rgba(44,17,48,.93);color:#fff;font-style:normal;font-size:.7rem;font-weight:750;line-height:1.2;opacity:0;pointer-events:none;transition:.16s ease}.epy-hotspot:hover em,.epy-hotspot:focus-visible em,.epy-hotspot.selected em{opacity:1;transform:translateX(-50%) translateY(0)}.epy-region-item{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:10px;align-items:center}.epy-region-item-check{display:grid;place-items:center;width:21px;height:21px;border:1px solid var(--epy-border);border-radius:7px;background:#fff;color:#fff;font-size:.75rem}.epy-region-item.selected .epy-region-item-check{border-color:var(--epy-primary);background:var(--epy-primary)}.epy-region-item-copy{min-width:0}.epy-region-item-copy b,.epy-region-item-copy small{overflow:hidden;text-overflow:ellipsis}.epy-region-item-price{text-align:right}.epy-region-item-price strong{white-space:nowrap}.epy-region-empty{padding:18px;border:1px dashed var(--epy-border);border-radius:14px;color:var(--epy-muted);text-align:center}.epy-btn-map{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--epy-primary);color:var(--epy-primary)}.epy-btn-map:hover{background:var(--epy-soft)}body.epy-map-open,body.epy-modal-open{overflow:hidden}.epy-full-map-modal{position:fixed;inset:0;z-index:99999;display:none;background:#f5f3f6}.epy-full-map-modal.open{display:flex;flex-direction:column}.epy-full-map-header{position:relative;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:72px;padding:12px 18px;background:#fff;border-bottom:1px solid var(--epy-border);box-shadow:0 8px 22px rgba(42,19,46,.08)}.epy-full-map-title b,.epy-full-map-title span{display:block}.epy-full-map-title b{font-size:1.04rem}.epy-full-map-title span{margin-top:2px;color:var(--epy-muted);font-size:.8rem}.epy-full-map-actions{display:flex;align-items:center;gap:9px}.epy-full-map-location,.epy-full-map-close{display:inline-flex;align-items:center;justify-content:center;height:42px;border-radius:12px;background:#fff;font-weight:800;cursor:pointer}.epy-full-map-location{padding:0 14px;border:1px solid var(--epy-primary);color:var(--epy-primary)}.epy-full-map-close{width:42px;border:1px solid var(--epy-border);font-size:1.3rem;z-index:5}.epy-full-map-close:hover{background:#f6eef6;border-color:var(--epy-primary)}.epy-full-map-shell{display:grid;grid-template-columns:minmax(300px,390px) minmax(0,1fr);min-height:0;flex:1}.epy-full-map-sidebar{position:relative;z-index:3;display:flex;flex-direction:column;min-height:0;background:#fff;border-right:1px solid var(--epy-border);box-shadow:10px 0 28px rgba(42,19,46,.08)}.epy-full-map-filter-summary{padding:14px 16px;border-bottom:1px solid var(--epy-border);color:var(--epy-muted);font-size:.82rem}.epy-full-map-list{display:grid;gap:10px;padding:12px;overflow:auto}.epy-full-map-canvas{position:relative;min-width:0;min-height:380px}.epy-full-map-canvas .epy-map,.epy-full-map-canvas #epiyum-full-map{position:absolute;inset:0;width:100%;height:100%;min-height:0;border-radius:0}.epy-full-map-modal .epy-salon-card{grid-template-columns:98px minmax(0,1fr);gap:10px;padding:8px;border-radius:16px;box-shadow:none}.epy-full-map-modal .epy-salon-card>img{height:118px;min-height:118px;border-radius:12px}.epy-full-map-modal .epy-salon-card h3{font-size:.94rem}.epy-full-map-modal .epy-salon-card .epy-chips{display:none}.epy-full-map-modal .epy-card-footer{margin-top:8px}.epy-full-map-modal .epy-card-footer .epy-btn{padding:8px 10px;font-size:.75rem}.epy-marker-cluster{display:grid;place-items:center;align-content:center;width:54px;height:54px;border:4px solid rgba(255,255,255,.92);border-radius:50%;background:linear-gradient(135deg,var(--epy-primary),#750789);color:#fff;font-size:.8rem;font-weight:900;box-shadow:0 8px 20px rgba(105,5,121,.34)}.marker-cluster{background:transparent!important}.marker-cluster div{background:transparent!important}.epy-detail-gallery{position:relative}.epy-detail-gallery button{font:inherit}.epy-detail-main,.epy-gallery-thumb{position:relative;z-index:1;display:block;width:100%;padding:0;border:0;background:#eee;overflow:hidden;cursor:zoom-in}.epy-detail-main img,.epy-gallery-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .32s ease}.epy-detail-main:hover img,.epy-gallery-thumb:hover img{transform:scale(1.035)}.epy-gallery-more{position:absolute;inset:0;display:grid;place-items:center;background:rgba(38,14,42,.58);color:#fff;font-weight:900}.epy-gallery-all-button{position:absolute;right:18px;bottom:18px;z-index:5;display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid rgba(255,255,255,.8);border-radius:12px;background:rgba(255,255,255,.94);color:var(--epy-ink);font-weight:850;box-shadow:0 8px 20px rgba(34,11,38,.18);cursor:pointer}.epy-gallery-all-button span{display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:var(--epy-soft);color:var(--epy-primary);font-size:.73rem}.epy-gallery-single-copy{display:grid;place-items:center;align-content:center;gap:5px;min-height:100%;padding:24px;background:linear-gradient(145deg,#fbf4fb,#f2e8f2);color:var(--epy-muted);text-align:center}.epy-gallery-single-copy b{color:var(--epy-ink)}.epy-favorite-form{margin:0}.epy-icon-button.active{background:#fff0f4;border-color:#e54073;color:#d9225d}.epy-service-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.epy-service-columns>div{border:1px solid var(--epy-border);border-radius:18px;padding:16px}.epy-service-columns h3{margin:0 0 10px}.epy-service-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px dashed var(--epy-border)}.epy-service-row:last-child{border-bottom:0}.epy-service-row span,.epy-service-row small{display:block}.epy-service-row small{margin-top:3px;color:var(--epy-muted)}.epy-service-row b{white-space:nowrap;color:var(--epy-primary)}.epy-review-list{display:grid;gap:12px}.epy-review-card{border:1px solid var(--epy-border);border-radius:16px;padding:16px}.epy-review-card header{display:flex;align-items:center;justify-content:space-between;gap:12px}.epy-review-card p{margin-bottom:0}.epy-lightbox{position:fixed;inset:0;z-index:100000;display:none}.epy-lightbox.open{display:block}.epy-lightbox-backdrop{position:absolute;inset:0;background:rgba(15,5,17,.91);backdrop-filter:blur(8px)}.epy-lightbox-dialog{position:relative;z-index:2;display:grid;grid-template-columns:64px minmax(0,1fr) 64px;align-items:center;width:100%;height:100%;padding:32px 20px}.epy-lightbox-figure{display:grid;grid-template-rows:minmax(0,1fr) auto;align-items:center;justify-items:center;min-width:0;min-height:0;height:100%;margin:0}.epy-lightbox-image{max-width:100%;max-height:calc(100vh - 115px);object-fit:contain;border-radius:14px;box-shadow:0 20px 70px rgba(0,0,0,.45)}.epy-lightbox-caption{padding:13px;color:#fff;text-align:center}.epy-lightbox-close,.epy-lightbox-nav{display:grid;place-items:center;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.1);color:#fff;cursor:pointer;backdrop-filter:blur(8px)}.epy-lightbox-close{position:absolute;right:22px;top:20px;z-index:4;width:46px;height:46px;border-radius:50%;font-size:1.35rem}.epy-lightbox-nav{width:52px;height:52px;border-radius:50%;font-size:1.7rem}.epy-lightbox-nav:hover,.epy-lightbox-close:hover{background:rgba(255,255,255,.22)}
@media(max-width:991px){.epy-full-map-shell{grid-template-columns:320px minmax(0,1fr)}.epy-service-columns{grid-template-columns:1fr}.epy-region-quick-actions{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.epy-full-map-header{min-height:64px;padding:9px 11px}.epy-full-map-title span{display:none}.epy-full-map-location{width:42px;padding:0;font-size:0}.epy-full-map-location:before{content:'⌖';font-size:1rem}.epy-full-map-shell{display:flex;flex-direction:column-reverse}.epy-full-map-sidebar{flex:0 0 42vh;border-top:1px solid var(--epy-border);border-right:0}.epy-full-map-canvas{flex:1;min-height:42vh}.epy-full-map-list{grid-auto-flow:column;grid-auto-columns:82%;grid-template-columns:none;overflow-x:auto;overflow-y:hidden}.epy-full-map-modal .epy-salon-card{height:100%}.epy-gallery-all-button{right:10px;bottom:10px}.epy-lightbox-dialog{grid-template-columns:42px minmax(0,1fr) 42px;padding:18px 8px}.epy-lightbox-nav{width:38px;height:38px}.epy-lightbox-close{right:10px;top:10px}.epy-service-columns{grid-template-columns:1fr}}
@media(max-width:599px){.epy-region-quick-actions{grid-template-columns:1fr}.epy-body-view-tabs{padding:0 6px}.epy-body-view-tabs button{height:40px;font-size:.78rem}.epy-hotspot em{display:none}.epy-region-item{grid-template-columns:20px minmax(0,1fr) auto;padding:10px}.epy-full-map-list{grid-auto-columns:92%}.epy-full-map-modal .epy-salon-card{grid-template-columns:86px minmax(0,1fr)}.epy-lightbox-dialog{grid-template-columns:36px minmax(0,1fr) 36px}.epy-lightbox-image{max-height:calc(100vh - 90px)}}

.epy-marker-cluster small{display:block;font-size:.55rem;font-weight:700;line-height:1}.epy-full-map-sidebar>.epy-map-search{margin:12px 12px 0}

/* Checkpoint 18F reference storefront and runtime states */
.ep-ref-filter-proxy{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.ep-ref-reset{margin-left:auto;border:0;background:transparent;color:#a20c9f;font-size:12px;font-weight:900;cursor:pointer}
.ep-ref-advanced-toggle{display:flex;align-items:center;justify-content:center;gap:8px;margin:15px auto 0;padding:8px 14px;border:0;background:transparent;color:#8e119f;font-size:12px;font-weight:950;cursor:pointer}
.ep-ref-advanced-toggle[aria-expanded="true"] span{transform:rotate(180deg)}
.ep-ref-advanced{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px;margin-top:12px;padding-top:14px;border-top:1px solid #f0e2ef}
.ep-ref-advanced[hidden]{display:none}
.ep-ref-advanced label{display:flex;align-items:center;gap:7px;min-height:38px;padding:0 12px;border:1px solid #eaddea;border-radius:999px;background:#fff;color:#493a58;font-size:12px;font-weight:850;cursor:pointer}
.ep-ref-advanced label:first-child{min-width:180px;padding:0;border:0;border-radius:0;background:transparent}
.ep-ref-advanced label:first-child span{display:none}
.ep-ref-advanced label:first-child input{height:40px;border:1px solid #eaddea;border-radius:12px;padding:0 12px}
.ep-ref-advanced input[type="checkbox"]{accent-color:#a20c9f}
.ep-ref-loading,.ep-ref-empty{display:flex;align-items:center;justify-content:center;gap:10px;min-height:82px;margin:10px 0;border:1px dashed #eaddea;border-radius:16px;background:#fffafd;color:#6d607b;font-size:13px;font-weight:800;text-align:center}
.ep-ref-loading[hidden],.ep-ref-empty[hidden]{display:none}
.ep-ref-loading span{width:18px;height:18px;border:3px solid #eaddea;border-top-color:#a20c9f;border-radius:50%;animation:ep-ref-spin .75s linear infinite}
.ep-ref-empty{flex-direction:column}.ep-ref-empty b{color:#24143b;font-size:15px}.ep-ref-empty span{font-weight:700}
@keyframes ep-ref-spin{to{transform:rotate(360deg)}}
.es16-map-card #ep-ref-inline-map{position:absolute;inset:0;width:100%;height:100%;z-index:1;background:#dceefa}
.es16-map-card.list-only{display:none}.es16-home-grid.list-only{grid-template-columns:1fr}.es16-home-grid.list-only .es16-salon-panel{max-width:none}
.es16-map-card .leaflet-control-attribution{font-size:9px;background:rgba(255,255,255,.82)}
.es17-leaflet-pin{position:relative;width:36px;height:44px;border:3px solid #fff;border-radius:18px 18px 18px 5px;background:linear-gradient(155deg,#ca15ba,#7414a0);transform:rotate(45deg);box-shadow:0 8px 20px rgba(103,20,130,.3)}
.es17-leaflet-pin:after{content:"●";position:absolute;inset:6px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#a20c9f;font-size:13px;font-weight:950;transform:rotate(-45deg)}
.es17-leaflet-pin.verified{background:linear-gradient(155deg,#a613b0,#5e168c)}
.es17-leaflet-pin.selected{background:linear-gradient(155deg,#ffd04d,#d88e00);transform:rotate(45deg) scale(1.08)}
.es17-user-pin{width:24px;height:24px;border:5px solid #fff;border-radius:50%;background:#2d75e8;box-shadow:0 0 0 3px rgba(45,117,232,.24),0 6px 16px rgba(16,64,140,.3)}
.marker-cluster,.marker-cluster div{background:transparent!important}
.marker-cluster div{display:grid!important;place-items:center!important;width:48px!important;height:48px!important;margin:0!important;border:4px solid #fff;border-radius:50%;background:linear-gradient(135deg,#bd10b4,#73149d)!important;color:#fff;font-size:13px;font-weight:950;box-shadow:0 9px 22px rgba(87,12,111,.28)}
.ep-ref-map-popup{display:grid;grid-template-columns:84px minmax(0,1fr);gap:12px;width:286px;font-family:Inter,Arial,sans-serif}
.ep-ref-map-popup>img{width:84px;height:84px;border-radius:13px;object-fit:cover}
.ep-ref-map-popup h4{margin:0 0 4px;color:#24153b;font-size:15px;font-weight:950;line-height:1.25}
.ep-ref-map-popup p,.ep-ref-map-popup small{display:block;margin:0 0 4px;color:#6c6079;font-size:11px;font-weight:800}
.ep-ref-map-popup p span{color:#efaa00}.ep-ref-map-popup>div>div{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.ep-ref-map-popup b{color:#a20c9f;font-size:14px}.ep-ref-map-popup a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 10px;border-radius:9px;background:linear-gradient(135deg,#bd10b4,#81129f);color:#fff!important;font-size:11px;font-weight:950;text-decoration:none}
.ep-ref-full-map{position:fixed;inset:0;z-index:100000;display:none;flex-direction:column;background:#f8f5f9;font-family:Inter,Arial,sans-serif}
.ep-ref-full-map.open{display:flex}.ep-ref-full-map[hidden]{display:none}
.ep-ref-full-map>header{position:relative;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:76px;padding:12px 22px;border-bottom:1px solid #eaddea;background:#fff;box-shadow:0 8px 28px rgba(56,20,68,.08)}
.ep-ref-full-map>header b,.ep-ref-full-map>header span{display:block}.ep-ref-full-map>header b{color:#24153b;font-size:17px}.ep-ref-full-map>header span{margin-top:3px;color:#796d83;font-size:12px;font-weight:700}.ep-ref-full-map>header>div:last-child{display:flex;gap:9px}.ep-ref-full-map>header button{height:44px;border:1px solid #eaddea;border-radius:13px;background:#fff;color:#2f2044;padding:0 15px;font-weight:900;cursor:pointer}.ep-ref-full-map>header button:last-child{width:44px;padding:0;font-size:24px}.ep-ref-full-map>header button:first-child{border-color:#b20aaa;color:#9a0ca5}
.ep-ref-full-map-grid{display:grid;grid-template-columns:minmax(360px,430px) minmax(0,1fr);flex:1;min-height:0}.ep-ref-full-map-grid>aside{display:flex;flex-direction:column;min-height:0;padding:14px;border-right:1px solid #eaddea;background:#fff;box-shadow:10px 0 28px rgba(47,18,57,.08);z-index:2}.ep-ref-full-map-grid>aside>label{display:flex;align-items:center;gap:9px;min-height:48px;padding:0 14px;border:1px solid #eaddea;border-radius:14px;background:#fff}.ep-ref-full-map-grid>aside>label:focus-within{border-color:#b20aaa;box-shadow:0 0 0 4px rgba(178,10,170,.1)}.ep-ref-full-map-grid>aside input{width:100%;border:0;outline:0;font:inherit}.ep-ref-full-map-grid [data-epy-full-list]{display:grid;gap:10px;margin-top:12px;padding-right:3px;overflow:auto}.ep-ref-full-map-grid .salon-result-card{grid-template-columns:104px minmax(0,1fr);gap:11px;padding:10px;border-radius:17px}.ep-ref-full-map-grid .salon-photo-wrap img{width:104px;height:116px}.ep-ref-full-map-grid .salon-side,.ep-ref-full-map-grid .feature-list,.ep-ref-full-map-grid .times-row{display:none}.ep-ref-full-map-grid .salon-main h3{font-size:16px}.ep-ref-full-map-grid>main{position:relative;min-width:0}.ep-ref-full-map-grid #ep-ref-full-map-canvas{position:absolute;inset:0}.ep-ref-full-map .leaflet-container{width:100%;height:100%}
.ep-ref-salons-page{--es-primary:#b20aaa;--es-ink:#1d1332;--es-muted:#72667d;min-height:100vh;background:#fffafd;font-family:Inter,Arial,sans-serif;color:#1d1332}.ep-ref-salons-page .rich-search{padding-top:30px}.ep-ref-salons-page .search-board{grid-template-columns:minmax(250px,.9fr) minmax(480px,1.55fr) auto}.ep-ref-search-heading p{max-width:460px;margin:8px 0 0;color:#695d75;font-size:13px;font-weight:700;line-height:1.55}.ep-ref-kicker{display:block;color:#b20aaa;font-size:10px;font-weight:950;letter-spacing:.11em;text-transform:uppercase}.ep-ref-salons-page .search-board h1{margin:4px 0 0}.ep-ref-salons-page .search-fields{grid-template-columns:1.25fr 1fr 1fr 1.15fr}.ep-ref-salons-page .field-box select,.ep-ref-salons-page .field-box input{min-width:0}.ep-ref-salons-page .popular-chip.active{border-color:#b20aaa;background:#fff2fd;color:#9a0ca5}.ep-ref-location-banner{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;margin:0 0 16px;padding:13px 16px;border:1px solid #f0dff0;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(78,30,92,.06)}.ep-ref-location-banner>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#fff3d7;color:#a46a00;font-size:20px}.ep-ref-location-banner b,.ep-ref-location-banner small{display:block}.ep-ref-location-banner small{margin-top:3px;color:#776a82;font-size:12px}.ep-ref-location-banner button{height:42px;border:0;border-radius:12px;background:linear-gradient(135deg,#ffd247,#f2ac0b);color:#2a1737;padding:0 16px;font-weight:950;box-shadow:0 8px 20px rgba(230,161,9,.18)}.ep-ref-location-banner.error{border-color:#f2bfc8;background:#fff7f8}.ep-ref-location-banner.error>span{background:#ffe7eb;color:#c1324b}.ep-ref-filter-button{width:100%;border:0;background:transparent;cursor:pointer}.ep-ref-filter-button.active span{color:#a20c9f}.ep-ref-filter-button.active span:first-child:before{content:"✓ ";font-weight:950}.ep-ref-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ep-ref-price-grid input{width:100%;height:42px;border:1px solid #eaddea;border-radius:11px;padding:0 10px;outline:0}.ep-ref-price-grid input:focus{border-color:#b20aaa;box-shadow:0 0 0 3px rgba(178,10,170,.09)}.ep-ref-side-map-search{display:flex;align-items:center;gap:7px;min-width:0;height:40px;padding:0 11px;border:1px solid #eaddea;border-radius:12px;background:#fff;flex:1}.ep-ref-side-map-search input{min-width:0;width:100%;border:0;outline:0;font-size:12px;font-weight:800}.side-map #ep-ref-results-map{position:absolute;inset:0;width:100%;height:100%}.ep-ref-map-location{position:absolute;right:14px;top:14px;z-index:500;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#3a2750;font-size:18px;font-weight:950;box-shadow:0 10px 24px rgba(35,19,49,.16)}.salon-result-card.active{border-color:#b20aaa;box-shadow:0 18px 45px rgba(178,10,170,.14)}.salon-result-card .salon-main h3 a{color:inherit;text-decoration:none}.salon-result-card .fav-corner{display:grid;place-items:center;width:34px;height:34px;border:1px solid #eaddea;border-radius:50%;text-decoration:none;font-size:22px;font-weight:700}.ep-ref-salons-page .sticky-map .leaflet-control-attribution{font-size:8px}.ep-ref-salons-page .filter-panel .form-select{height:42px;border-color:#eaddea;border-radius:11px;font-size:12px;font-weight:750}.ep-ref-salons-page .filter-panel .form-select:focus{border-color:#b20aaa;box-shadow:0 0 0 3px rgba(178,10,170,.09)}
@media(max-width:1399px){.ep-ref-salons-page .booking-layout{grid-template-columns:220px minmax(0,1fr) 280px;gap:16px}.ep-ref-salons-page .salon-result-card{grid-template-columns:165px minmax(0,1fr) 145px}.ep-ref-salons-page .salon-photo-wrap img{width:165px}.ep-ref-salons-page .search-board{grid-template-columns:1fr}.ep-ref-salons-page .search-submit{justify-self:start}}
@media(max-width:1199px){.ep-ref-salons-page .booking-layout{grid-template-columns:220px minmax(0,1fr)}.ep-ref-salons-page .sticky-map{position:relative;grid-column:1/-1;top:auto}.ep-ref-salons-page .side-map{height:500px}.ep-ref-full-map-grid{grid-template-columns:340px minmax(0,1fr)}}
@media(max-width:991px){.ep-ref-salons-page .booking-layout{grid-template-columns:1fr}.ep-ref-salons-page .filter-panel{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.ep-ref-salons-page .filter-panel-head{grid-column:1/-1}.ep-ref-salons-page .search-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-ref-location-banner{grid-template-columns:42px minmax(0,1fr)}.ep-ref-location-banner button{grid-column:1/-1}.ep-ref-full-map-grid{grid-template-columns:300px minmax(0,1fr)}}
@media(max-width:767px){.ep-ref-advanced{display:grid;grid-template-columns:1fr 1fr}.ep-ref-advanced label:first-child{grid-column:1/-1}.ep-ref-salons-page .search-fields{grid-template-columns:1fr}.ep-ref-salons-page .filter-panel{display:block}.ep-ref-salons-page .result-head{align-items:flex-start;flex-direction:column}.ep-ref-salons-page .sort-box{width:100%;flex-wrap:wrap}.ep-ref-salons-page .sort-box .form-select{flex:1}.ep-ref-salons-page .salon-result-card{grid-template-columns:112px minmax(0,1fr);padding:10px}.ep-ref-salons-page .salon-photo-wrap img{width:112px;height:128px}.ep-ref-salons-page .salon-side{grid-column:1/-1;border-left:0;border-top:1px solid #f1e5f1;padding:10px 0 0;grid-template-columns:1fr auto auto;align-items:center}.ep-ref-salons-page .feature-list,.ep-ref-salons-page .times-row{display:none}.ep-ref-full-map>header span{display:none}.ep-ref-full-map-grid{display:flex;flex-direction:column-reverse}.ep-ref-full-map-grid>aside{flex:0 0 42vh;border-right:0;border-top:1px solid #eaddea}.ep-ref-full-map-grid>main{flex:1;min-height:42vh}.ep-ref-full-map-grid [data-epy-full-list]{grid-auto-flow:column;grid-auto-columns:88%;grid-template-columns:none;overflow-x:auto;overflow-y:hidden}.ep-ref-full-map-grid .salon-result-card{height:100%}}
@media(max-width:520px){.ep-ref-location-banner{grid-template-columns:1fr;text-align:center}.ep-ref-location-banner>span{margin:auto}.ep-ref-salons-page .salon-result-card{grid-template-columns:94px minmax(0,1fr)}.ep-ref-salons-page .salon-photo-wrap img{width:94px;height:108px}.ep-ref-salons-page .salon-side{grid-template-columns:1fr}.ep-ref-salons-page .meta-row{font-size:11px}.ep-ref-full-map-grid [data-epy-full-list]{grid-auto-columns:96%}}
.ep-ref-map-error{display:grid!important;place-items:center!important;min-height:360px!important;background:linear-gradient(145deg,#f5eef7,#eef4f8)!important;color:#4c4057;text-align:center;padding:24px}.ep-ref-map-error>div{display:grid;gap:6px;max-width:360px;padding:24px;border:1px solid #e5d8e7;border-radius:18px;background:rgba(255,255,255,.92);box-shadow:0 16px 42px rgba(54,23,64,.1)}.ep-ref-map-error b{font-size:18px}.ep-ref-map-error span{color:#74687e;font-size:13px;line-height:1.6}

/* Checkpoint 18I: professional geolocation states */
.ep-ref-location-banner{min-height:72px;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.ep-ref-location-banner.is-error{border-color:#f1cbd2;background:linear-gradient(135deg,#fff,#fff4f6);box-shadow:0 10px 26px rgba(182,48,75,.08)}.ep-ref-location-banner.is-error>span{background:#ffe9ed;color:#c52f4e}.ep-ref-location-banner.is-error button{background:#fff;border:1px solid #e7aab7;color:#a72c45;box-shadow:none}.ep-ref-location-banner.is-loading{border-color:#e8d7eb;background:linear-gradient(135deg,#fff,#fcf7ff)}.ep-ref-location-banner.is-loading>span{background:#f7e8fa;color:#a20c9f;animation:epyLocationPulse 1s ease-in-out infinite}.ep-ref-location-banner.is-success{border-color:#bfe6cf;background:linear-gradient(135deg,#fff,#f2fff7)}.ep-ref-location-banner.is-success>span{background:#ddf8e8;color:#16864b}.ep-ref-location-banner.is-success button{background:#fff;border:1px solid #b6dbc5;color:#176d43;box-shadow:none}@keyframes epyLocationPulse{50%{transform:scale(.88);opacity:.62}}

/* Checkpoint 18I: compact homepage location state */
.ep-ref-location-banner--compact{grid-template-columns:36px minmax(0,1fr);min-height:58px;margin:14px 0 0;padding:10px 12px;box-shadow:none;background:#fffafd}.ep-ref-location-banner--compact>span{width:36px;height:36px;border-radius:11px;font-size:17px}.ep-ref-location-banner--compact b{font-size:12px}.ep-ref-location-banner--compact small{font-size:11px;line-height:1.35}

.epy-location-picker{margin-top:8px;padding:20px;border:1px solid var(--epy-border);border-radius:20px;background:linear-gradient(145deg,#fff,#fff8fd);box-shadow:0 14px 34px rgba(67,21,77,.06)}
.epy-location-picker-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px}.epy-location-picker-head h3{margin:4px 0 5px;font-size:1.22rem}.epy-location-picker-head p{margin:0;max-width:720px;color:var(--epy-muted);line-height:1.6}.epy-btn-location{flex:0 0 auto;background:#fff7d6;border:1px solid #f3cc53;color:#6d4b00}.epy-btn-location:hover{background:#ffefad}
.epy-location-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-bottom:10px}.epy-location-search-field{height:50px;display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid var(--epy-border);border-radius:14px;background:#fff;transition:.18s ease}.epy-location-search-field:focus-within{border-color:var(--epy-primary);box-shadow:0 0 0 4px rgba(173,11,181,.09)}.epy-location-search-field span{font-size:1.15rem;color:var(--epy-primary)}.epy-location-search-field input{width:100%;height:100%;border:0!important;box-shadow:none!important;outline:0;background:transparent;font:700 14px/1.3 var(--epy-font);color:var(--epy-ink)}
.epy-location-suggestions{position:relative;z-index:500;margin:-2px 0 10px;padding:7px;border:1px solid var(--epy-border);border-radius:14px;background:#fff;box-shadow:0 18px 40px rgba(57,18,68,.12)}.epy-location-suggestion{width:100%;display:flex;gap:10px;align-items:flex-start;padding:11px 12px;border:0;border-radius:10px;background:transparent;color:var(--epy-ink);text-align:left;cursor:pointer}.epy-location-suggestion:hover,.epy-location-suggestion:focus{background:var(--epy-soft);outline:0}.epy-location-suggestion>span{color:var(--epy-primary);font-size:1.05rem}.epy-location-suggestion b,.epy-location-suggestion small{display:block}.epy-location-suggestion small{margin-top:3px;color:var(--epy-muted)}
.epy-location-map-shell{position:relative;overflow:hidden;border:1px solid var(--epy-border);border-radius:18px;background:#eaf1f5}.epy-location-map{height:420px;min-height:320px;width:100%;z-index:1}.epy-location-map-badge{position:absolute;z-index:450;left:14px;bottom:14px;display:flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid rgba(255,255,255,.8);border-radius:999px;background:rgba(255,255,255,.94);box-shadow:0 8px 24px rgba(27,19,33,.14);font-size:.78rem;font-weight:800;color:var(--epy-ink);backdrop-filter:blur(8px)}.epy-location-map-badge span{color:var(--epy-primary)}.epy-location-map .leaflet-control-container{font-family:var(--epy-font)}
.epy-location-confirmation{display:flex;align-items:center;gap:12px;margin-top:12px;padding:13px 14px;border:1px solid var(--epy-border);border-radius:14px;background:#fff}.epy-location-confirmation.is-confirmed{border-color:#ace0c1;background:#f0fff6}.epy-location-confirmation-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--epy-soft);color:var(--epy-primary);font-size:1.15rem;font-weight:900}.epy-location-confirmation.is-confirmed .epy-location-confirmation-icon{background:#d8f7e5;color:#17603d}.epy-location-confirmation b,.epy-location-confirmation small{display:block}.epy-location-confirmation small{margin-top:3px;color:var(--epy-muted);line-height:1.45}.epy-inline-status{display:block;margin:10px 0 0;padding:0;font-size:.82rem;font-weight:750}.epy-inline-status.is-success{color:#17603d}.epy-inline-status.is-error{color:#a51d32}.epy-inline-status.is-loading{color:#6b4f00}.epy-map-unavailable{height:100%;display:grid;place-items:center;padding:30px;text-align:center;color:var(--epy-muted)}
@media(max-width:780px){.epy-location-picker{padding:15px}.epy-location-picker-head{display:grid}.epy-location-picker-head .epy-btn{width:100%}.epy-location-search-row{grid-template-columns:1fr}.epy-location-search-row .epy-btn{width:100%}.epy-location-map{height:350px}.epy-location-map-badge{right:10px;left:10px;justify-content:center;text-align:center}}

.epy-location-suggestion-empty{padding:13px 14px;border-radius:10px;background:#fff7f8;color:#9b2941;font-size:.82rem;font-weight:750;line-height:1.5}

/* Checkpoint 18K salon profile, map and native media */
.epy-alert{display:flex;align-items:flex-start;gap:12px;margin:0 0 16px;padding:15px 17px;border-radius:16px;font-size:.9rem}.epy-alert b,.epy-alert span{display:block}.epy-alert-success{border:1px solid #afe3c7;background:#edfff5;color:#175d3a}.epy-alert-error{border:1px solid #ffc4ce;background:#fff2f4;color:#8d1f34}.epy-profile-form{display:grid;gap:18px}.epy-profile-form .epy-content-card{margin:0}.epy-help-badge,.epy-location-chip{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border-radius:999px;border:1px solid var(--epy-border);background:#fff;color:var(--epy-muted);font-size:.74rem;font-weight:850}.epy-location-chip.is-selected{border-color:#a9e2c3;background:#ebfff4;color:#17603d}.epy-profile-media-card{overflow:hidden}.epy-cover-uploader{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.45fr);gap:18px;align-items:stretch}.epy-cover-preview{min-height:300px;border:1px solid var(--epy-border);border-radius:20px;overflow:hidden;background:#faf6fb}.epy-cover-preview>img{display:block;width:100%;height:100%;min-height:300px;object-fit:cover}.epy-media-placeholder{height:100%;min-height:300px;display:grid;place-content:center;justify-items:center;gap:7px;color:var(--epy-muted);text-align:center}.epy-media-placeholder span{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:var(--epy-soft);color:var(--epy-primary);font-size:1.6rem}.epy-media-placeholder b{color:var(--epy-ink)}.epy-upload-box{position:relative;min-height:180px;border:1.5px dashed #d6bddb;border-radius:20px;background:linear-gradient(145deg,#fffafd,#fff);display:grid;place-content:center;justify-items:center;gap:8px;padding:26px;text-align:center;cursor:pointer;transition:.2s ease}.epy-upload-box:hover{border-color:var(--epy-primary);background:var(--epy-soft);transform:translateY(-1px)}.epy-upload-box input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.epy-upload-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:var(--epy-primary);color:#fff;font-size:1.35rem}.epy-upload-box small{color:var(--epy-muted);line-height:1.55}.epy-upload-box-compact{min-height:120px}.epy-location-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:end}.epy-location-search-row .epy-field{min-width:0}.epy-profile-map{height:430px;border:1px solid var(--epy-border);border-radius:20px;overflow:hidden;background:#e8eef2}.epy-location-confirmation{display:flex;align-items:center;gap:12px;border:1px solid var(--epy-border);border-radius:16px;background:#fff;padding:13px 15px}.epy-location-confirmation>span{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:#f4edf5;color:var(--epy-primary);font-size:1.2rem}.epy-location-confirmation b,.epy-location-confirmation small{display:block}.epy-location-confirmation small{margin-top:3px;color:var(--epy-muted)}.epy-location-confirmation.is-selected{border-color:#a9e2c3;background:#f3fff8}.epy-location-confirmation.is-selected>span{background:#daf7e7;color:#17603d}.epy-location-result{min-height:20px;margin:0;color:var(--epy-muted);font-size:.84rem}.epy-location-result.is-loading{color:#735182}.epy-location-result.is-success{color:#17603d}.epy-location-result.is-error{color:#a51d32}.epy-location-suggestions{border:1px solid var(--epy-border);border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 16px 36px rgba(53,15,65,.1)}.epy-location-suggestion{width:100%;display:flex;align-items:flex-start;gap:11px;border:0;border-bottom:1px solid #f1e8f2;background:#fff;padding:13px 15px;text-align:left;cursor:pointer}.epy-location-suggestion:last-child{border-bottom:0}.epy-location-suggestion:hover{background:#fff7fd}.epy-location-suggestion>span{color:var(--epy-primary);font-size:1.15rem}.epy-location-suggestion b,.epy-location-suggestion small{display:block}.epy-location-suggestion small{margin-top:3px;color:var(--epy-muted)}.epy-location-suggestion-empty{padding:15px;color:var(--epy-muted)}.epy-choice-grid-profile label>span{display:grid;gap:3px}.epy-choice-grid-profile label small{color:var(--epy-muted);font-size:.73rem;font-weight:600}.epy-gallery-upload-form{display:grid;grid-template-columns:minmax(250px,.7fr) minmax(280px,1fr) auto;gap:14px;align-items:end;margin-bottom:18px}.epy-profile-gallery article img{background:#f6f0f7}.leaflet-container{font-family:var(--epy-font)}
@media(max-width:980px){.epy-cover-uploader{grid-template-columns:1fr}.epy-location-search-row{grid-template-columns:1fr 1fr}.epy-location-search-row .epy-field{grid-column:1/-1}.epy-gallery-upload-form{grid-template-columns:1fr 1fr}.epy-gallery-upload-form .epy-upload-box{grid-column:1/-1}}
@media(max-width:640px){.epy-profile-map{height:360px}.epy-location-search-row,.epy-gallery-upload-form{grid-template-columns:1fr}.epy-cover-preview,.epy-cover-preview>img,.epy-media-placeholder{min-height:220px}.epy-section-title{align-items:flex-start;flex-direction:column}.epy-help-badge,.epy-location-chip{align-self:flex-start}}

/* Form validation and save-state feedback */
.epy-required-marker{color:#c516b8;font-weight:800;display:inline;margin-left:2px;line-height:inherit;white-space:nowrap}
.epy-client-validation-summary,.validation-summary-errors,.epy-validation-summary{margin:0 0 18px;padding:14px 16px;border:1px solid #f3b7d9;border-radius:14px;background:#fff3fa;color:#7b174f;box-shadow:0 10px 28px rgba(123,23,79,.08)}
.epy-client-validation-summary strong,.validation-summary-errors strong,.epy-validation-summary strong{display:block;margin-bottom:6px;font-weight:800}
.epy-client-validation-summary ul,.validation-summary-errors ul,.epy-validation-summary ul{margin:0;padding-left:20px}
.field-validation-error{display:block;margin-top:6px;color:#b42318;font-size:13px;font-weight:650}
.input-validation-error,.input-validation-error:focus{border-color:#d92d20!important;box-shadow:0 0 0 3px rgba(217,45,32,.11)!important;background:#fffafa!important}
button[aria-busy="true"],input[aria-busy="true"]{cursor:wait!important;opacity:.78}
.epy-form-help-error{display:block;margin-top:6px;color:#b42318;font-size:13px;font-weight:650}
.epy-save-feedback{display:flex;gap:10px;align-items:flex-start;margin-bottom:18px;padding:14px 16px;border-radius:14px;border:1px solid #f3b7d9;background:#fff3fa;color:#7b174f}
.ep-ref-filter-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid #f1e2f1}
.ep-ref-filter-actions .ep-ref-apply-filter{min-width:210px;box-shadow:0 14px 32px rgba(178,10,170,.22)}
.ep-ref-filter-actions small,.ep-ref-filter-hint{display:block;color:#766a82;font-size:12px;font-weight:750;line-height:1.45;margin-top:9px}
.ep-ref-filter-actions small.is-dirty,.ep-ref-filter-hint.is-dirty{color:#9a0ca5}
.ep-ref-apply-filter.is-dirty{animation:epRefPulse 1.3s ease-in-out infinite}
@keyframes epRefPulse{0%,100%{box-shadow:0 14px 32px rgba(178,10,170,.22)}50%{box-shadow:0 18px 42px rgba(178,10,170,.36)}}
@media(max-width:767px){.ep-ref-filter-actions{position:sticky;bottom:12px;z-index:40;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);padding:12px;border:1px solid #f0dff0;border-radius:18px;box-shadow:0 16px 38px rgba(40,20,55,.14)}.ep-ref-filter-actions .es16-btn{width:100%}.ep-ref-filter-actions small{width:100%;text-align:center}}


/* Checkpoint 18S region selection interaction hardening */
.epy-region-item{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:12px;user-select:none}
.epy-region-item .epy-region-checkbox{width:22px;height:22px;margin:0;accent-color:var(--epy-primary);cursor:pointer}
.epy-region-item-copy,.epy-region-item-price{pointer-events:none}
.epy-region-item.selected{border-color:var(--epy-primary);background:linear-gradient(135deg,#fff,#fff4ff)}
.epy-hotspot{pointer-events:auto;touch-action:manipulation}
.epy-hotspot span{pointer-events:none}
.epy-btn.is-disabled{opacity:.86;filter:saturate(.85)}
.epy-region-status{grid-column:1/-1;margin:0 0 14px;padding:12px 14px;border-radius:14px;background:#fff8df;border:1px solid #f0cf71;color:#6d4c00}
.epy-region-status.is-error{background:#fff0f2;border-color:#eaa1ac;color:#991c2f}
.epy-region-status.is-success{background:#eefdf5;border-color:#a7e1bd;color:#14613a}
.epy-region-status.is-loading{background:#fff8df;border-color:#f0cf71;color:#6d4c00}

/* Checkpoint 18W: salon detail gallery anchors and modal reliability */
.epy-detail-gallery{position:relative}.epy-detail-main,.epy-gallery-thumb{text-decoration:none;color:inherit}.epy-lightbox[hidden]{display:none!important}.epy-lightbox.open:not([hidden]){display:block!important}
.epy-detail-gallery a{font:inherit}.epy-gallery-thumb{border-radius:18px}
/* Checkpoint 18X: booking region fallback + validation layout */
.epy-region-form-errors{grid-column:1/-1;margin-bottom:0}
.epy-region-form-errors.validation-summary-valid{display:none}
.epy-gender-tabs a{display:flex;align-items:center;justify-content:center;height:48px;border:1px solid var(--epy-border);background:#fff;color:var(--epy-ink);font-weight:850;text-decoration:none;cursor:pointer}
.epy-gender-tabs a:first-child{border-radius:14px 0 0 14px}
.epy-gender-tabs a:last-child{border-radius:0 14px 14px 0}
.epy-gender-tabs a.active{background:var(--epy-ink);color:#fff;border-color:var(--epy-ink)}
.epy-gender-tabs a:hover{border-color:var(--epy-primary);color:var(--epy-primary)}
.epy-gender-tabs a.active:hover{color:#fff}

/* Checkpoint 18Y: booking flow interaction, validation and modal polish */
.epy-booking-page{max-width:1440px;margin:0 auto;padding:32px clamp(18px,3vw,42px)}
.epy-booking-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:26px}
.epy-booking-heading h1{margin:6px 0 6px;font-size:clamp(2.15rem,3.6vw,3.7rem);line-height:1.04;letter-spacing:-.055em}
.epy-booking-heading p{margin:0;color:var(--epy-muted);font-size:1.02rem;line-height:1.55}
.epy-inline-status[hidden],.epy-validation-summary.validation-summary-valid{display:none!important}
.epy-region-layout,.epy-device-time-layout,.epy-contract-layout{position:relative;min-width:0}
.epy-region-form-errors,.epy-device-errors,.epy-contract-errors,.epy-region-status{grid-column:1/-1;width:100%}
.epy-region-layout{display:grid;grid-template-columns:minmax(260px,300px) minmax(430px,1fr) minmax(300px,350px);gap:18px;align-items:start}
.epy-region-sidebar,.epy-body-map,.epy-selection-summary{min-width:0}
.epy-region-sidebar{padding:16px;max-height:calc(100vh - 125px);overflow:auto;position:sticky;top:95px}
.epy-gender-tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:14px;border:1px solid var(--epy-border);border-radius:15px;overflow:hidden;background:#fff}
.epy-gender-tabs a,.epy-gender-tabs button{display:flex;align-items:center;justify-content:center;height:48px;border:0!important;background:#fff;color:var(--epy-ink);font-weight:850;text-decoration:none;cursor:pointer;box-shadow:none}
.epy-gender-tabs a+a,.epy-gender-tabs button+button{border-left:1px solid var(--epy-border)!important}
.epy-gender-tabs a.active,.epy-gender-tabs button.active{background:var(--epy-ink)!important;color:#fff!important}
.epy-region-quick-actions{display:grid;grid-template-columns:1fr auto;gap:9px;margin-bottom:14px}
.epy-btn-ghost{background:#fff;color:var(--epy-ink);border:1px solid var(--epy-border)}
.epy-region-list{display:grid;gap:9px}
.epy-region-item{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:76px;padding:13px 14px;border:1px solid var(--epy-border);border-radius:16px;background:#fff;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease;user-select:none}
.epy-region-item:hover{border-color:#d8b6dc;box-shadow:0 8px 22px rgba(75,18,90,.07)}
.epy-region-item.selected,.epy-region-item:has(.epy-region-checkbox:checked){border-color:var(--epy-primary);background:linear-gradient(135deg,#fff,#fff2ff);box-shadow:0 10px 25px rgba(169,11,185,.11)}
.epy-region-item .epy-region-checkbox{width:20px;height:20px;margin:0;accent-color:var(--epy-primary);cursor:pointer}
.epy-region-item-copy,.epy-region-item-price{pointer-events:none}
.epy-region-item-copy b,.epy-region-item-copy small,.epy-region-item-price strong,.epy-region-item-price small{display:block}
.epy-region-item-copy small{margin-top:3px;color:var(--epy-muted);font-size:.78rem;line-height:1.25}
.epy-region-item-price{text-align:right;white-space:nowrap}
.epy-region-item-price strong{color:var(--epy-primary);font-size:1rem}
.epy-region-item-price small{margin-top:3px;color:var(--epy-muted)}
.epy-region-empty,.epy-empty-card{display:grid;gap:6px;padding:18px;border:1px dashed #d8c2dc;border-radius:16px;background:#fff8ff;color:var(--epy-muted)}
.epy-region-empty b,.epy-empty-card b{color:var(--epy-ink)}
.epy-body-map{padding:20px;display:grid;justify-items:center;align-content:start;gap:12px;overflow:hidden}
.epy-body-view-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:min(430px,100%);margin-bottom:0}
.epy-body-view-tabs button{height:46px;border:1px solid var(--epy-border);border-radius:13px;background:#fff;color:var(--epy-ink);font-weight:850;cursor:pointer}
.epy-body-view-tabs button.active{border-color:var(--epy-primary);background:#fff3ff;color:var(--epy-primary);box-shadow:inset 0 0 0 1px var(--epy-primary)}
.epy-body-stage{width:min(540px,100%);height:min(65vw,680px);min-height:520px;position:relative;display:grid;place-items:center;background:radial-gradient(circle,#fff 0,#fff 56%,#fcf4fb 100%);border-radius:22px;overflow:hidden}
.epy-body-stage img{max-width:100%;max-height:94%;object-fit:contain;user-select:none;pointer-events:none}
.epy-hotspot{position:absolute;z-index:3;display:grid;place-items:center;width:42px;height:42px;border:4px solid #fff;border-radius:50%;background:linear-gradient(135deg,var(--epy-primary),#76058c);color:#fff;font-weight:900;box-shadow:0 8px 22px rgba(169,11,185,.36);cursor:pointer;pointer-events:auto;touch-action:manipulation}
.epy-hotspot span{pointer-events:none}
.epy-hotspot:hover{transform:translate(-50%,-50%) scale(1.08)}
.epy-hotspot.selected{background:linear-gradient(135deg,var(--epy-gold),#f09100);color:#3b2200}
.epy-hotspot em{position:absolute;left:50%;top:calc(100% + 7px);transform:translateX(-50%) translateY(-2px);display:block;min-width:max-content;max-width:170px;padding:5px 8px;border-radius:8px;background:rgba(44,17,48,.93);color:#fff;font-style:normal;font-size:.7rem;font-weight:750;line-height:1.2;opacity:0;pointer-events:none;transition:.16s ease}
.epy-hotspot:hover em,.epy-hotspot:focus-visible em,.epy-hotspot.selected em{opacity:1;transform:translateX(-50%) translateY(0)}
.epy-body-empty{position:absolute;left:18px;right:18px;bottom:18px;padding:12px;border:1px dashed #dec8e3;border-radius:14px;background:rgba(255,255,255,.92);text-align:center;color:var(--epy-muted);font-weight:750}
.epy-body-help{margin:0;color:var(--epy-muted);font-size:.9rem;text-align:center}
.epy-selection-summary{padding:22px;position:sticky;top:95px;min-width:0}
.epy-selected-regions{display:flex;flex-wrap:wrap;gap:8px;min-height:36px;margin-bottom:18px}
.epy-selected-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid #debce2;border-radius:999px;background:#fff7ff;color:var(--epy-primary);padding:7px 10px;font-weight:850;cursor:pointer}
.epy-selected-chip span{font-size:1rem;line-height:1}
.epy-summary-line{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-top:1px dashed var(--epy-border)}
.epy-summary-line.total b{font-size:1.35rem;color:var(--epy-primary)}
.epy-policy-check{display:grid;grid-template-columns:20px minmax(0,1fr);gap:9px 10px;align-items:start;margin:16px 0 14px;padding:12px;border:1px solid transparent;border-radius:14px;color:var(--epy-muted);font-size:.82rem;line-height:1.4}
.epy-policy-check input[type=checkbox]{width:18px;height:18px;margin-top:2px;accent-color:var(--epy-primary)}
.epy-policy-check a{grid-column:2;color:var(--epy-primary);font-weight:850;text-decoration:none;width:max-content}
.epy-policy-check.is-invalid{border-color:#eba0b0;background:#fff4f6;color:#92223a}
.epy-btn.is-disabled,.epy-btn[aria-disabled=true]{opacity:.7}
.epy-date-strip{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.epy-date-strip label{display:grid;gap:6px;font-weight:750}
.epy-date-strip input{min-width:185px;height:48px;border:1px solid var(--epy-border);border-radius:12px;background:#fff;padding:0 14px;color:var(--epy-ink);outline:0}
.epy-device-time-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:18px;align-items:start}
.epy-device-selection{min-width:0}
.epy-device-grid{display:grid!important;grid-template-columns:1fr!important;gap:14px;max-width:850px}
.epy-device-card{display:grid;grid-template-columns:180px minmax(0,1fr);gap:16px;align-items:stretch;min-width:0;padding:16px;border:1px solid var(--epy-border);border-radius:20px;background:#fff;box-shadow:0 10px 26px rgba(70,20,80,.06);overflow:hidden}
.epy-device-card.active{border-color:var(--epy-primary);box-shadow:0 16px 38px rgba(169,11,185,.12)}
.epy-device-visual{height:132px;border-radius:16px;background:linear-gradient(145deg,#fff3fb,#f7f0f8);display:grid;place-items:center;font-size:2.3rem;overflow:hidden;align-self:start}
.epy-device-visual img{width:100%;height:100%;object-fit:cover}
.epy-device-card-body{min-width:0;display:grid;gap:12px;align-content:start}
.epy-device-card .epy-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;min-width:0}
.epy-device-card h3{margin:0 0 5px;font-size:1.12rem;line-height:1.25}
.epy-device-card p{margin:0;color:var(--epy-muted);line-height:1.45;word-break:break-word}
.epy-slot-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(74px,1fr));gap:8px;min-width:0}
.epy-slot{height:42px;border:1px solid var(--epy-border);border-radius:11px;background:#fff;padding:0 10px;font-weight:850;cursor:pointer;white-space:nowrap}
.epy-slot:hover,.epy-slot.selected{background:var(--epy-primary);border-color:var(--epy-primary);color:#fff}
.epy-no-slot{display:block;grid-column:1/-1;padding:10px 12px;border:1px dashed var(--epy-border);border-radius:12px;color:var(--epy-muted);background:#fffafd}
.epy-device-summary{position:sticky;top:95px}
.epy-contract-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,370px);gap:20px;align-items:start}
.epy-contract-list{display:grid;gap:12px;min-width:0}
.epy-contract-card{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:15px;align-items:center;background:#fff;border:1px solid var(--epy-border);border-radius:18px;padding:20px;min-width:0;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}
.epy-contract-card:has(input[type=checkbox]:checked){border-color:#d9b7df;background:linear-gradient(135deg,#fff,#fff7ff)}
.epy-contract-card.is-invalid{border-color:#f0adb9;background:#fff7f8}
.epy-contract-card b,.epy-contract-card small,.epy-contract-card a{display:block}
.epy-contract-card small{color:var(--epy-muted);margin:5px 0;line-height:1.45}
.epy-contract-card a{color:var(--epy-primary);font-weight:850;text-decoration:none;width:max-content}
.epy-contract-card input[type=checkbox]{width:22px;height:22px;accent-color:var(--epy-primary)}
.epy-contract-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:#fff0fb;color:var(--epy-primary);font-weight:900}
.epy-payment-card{background:#fff;border:1px solid var(--epy-border);border-radius:24px;padding:24px;position:sticky;top:95px;box-shadow:0 14px 38px rgba(70,20,80,.08)}
.epy-payment-card h2{margin:6px 0 18px;font-size:2rem;letter-spacing:-.04em}
.epy-payment-option{display:grid;gap:3px;padding:15px 16px;border:1px solid var(--epy-border);border-radius:14px;background:#fff}
.epy-payment-option.active{border-color:var(--epy-primary);background:#fff4ff;box-shadow:inset 0 0 0 1px var(--epy-primary)}
.epy-modal[hidden]{display:none!important}
.epy-modal{position:fixed;z-index:10050;inset:0;display:grid;place-items:center;padding:20px}
.epy-modal-backdrop{position:absolute;inset:0;background:rgba(20,8,28,.62);backdrop-filter:blur(7px)}
.epy-modal-dialog{position:relative;z-index:1;background:#fff;border-radius:24px;max-width:760px;width:min(760px,calc(100vw - 32px));max-height:90vh;overflow:auto;padding:30px;box-shadow:var(--epy-shadow)}
.epy-topic-modal-dialog{max-width:820px}
.epy-topic-modal-dialog h2{margin:8px 44px 14px 0;font-size:1.8rem;letter-spacing:-.035em}
.epy-topic-modal-content{color:#3d3348;line-height:1.7}
.epy-topic-modal-content h1,.epy-topic-modal-content h2,.epy-topic-modal-content h3{color:var(--epy-ink)}
.epy-modal-close{position:absolute;right:16px;top:14px;width:40px;height:40px;border-radius:50%;border:0;background:var(--epy-soft);font-size:1.4rem;cursor:pointer}
.epy-modal-device{display:grid;grid-template-columns:220px 1fr;gap:24px}
.epy-modal-device img{width:100%;height:260px;object-fit:cover;background:var(--epy-soft);border-radius:16px}
.epy-modal-device dl{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.epy-modal-device dt{font-size:.75rem;color:var(--epy-muted)}
.epy-modal-device dd{margin:2px 0 0;font-weight:800}
body.body-modal-open{overflow:hidden}
@media(max-width:1199px){.epy-region-layout{grid-template-columns:minmax(240px,285px) minmax(360px,1fr)}.epy-region-layout>.epy-selection-summary{grid-column:1/-1;position:static}.epy-device-time-layout,.epy-contract-layout{grid-template-columns:1fr}.epy-device-summary,.epy-payment-card{position:static}.epy-device-grid{max-width:none}}
@media(max-width:899px){.epy-booking-heading{display:block}.epy-region-layout{grid-template-columns:1fr}.epy-region-sidebar{position:static;max-height:none}.epy-body-stage{height:570px;min-height:500px}.epy-device-card{grid-template-columns:150px minmax(0,1fr)}.epy-booking-stepper{display:flex;overflow:auto}.epy-booking-stepper span{min-width:max-content}}
@media(max-width:599px){.epy-booking-page{padding:16px}.epy-region-quick-actions{grid-template-columns:1fr}.epy-region-item{grid-template-columns:22px minmax(0,1fr);align-items:start}.epy-region-item-price{grid-column:2;text-align:left}.epy-body-stage{height:520px;min-height:460px}.epy-hotspot{width:36px;height:36px}.epy-hotspot em{display:none}.epy-device-card,.epy-contract-card,.epy-modal-device{grid-template-columns:1fr}.epy-device-visual{height:180px}.epy-contract-card input[type=checkbox]{justify-self:start}.epy-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.epy-modal-dialog{padding:24px 18px}}

/* Checkpoint 18Y minor polish: center dynamic hotspots and delay contract invalid state until interaction */
.epy-hotspot{transform:translate(-50%,-50%)}

/* Checkpoint 18AA: region interaction root fix and error-layout isolation */
.epy-region-form{display:block;min-width:0}
.epy-region-form>.epy-region-form-errors,.epy-region-form>.epy-region-status{width:100%;max-width:none}
.epy-region-form>.epy-region-form-errors{margin:0 0 18px}
.epy-region-form>.epy-region-status{margin:0 0 18px}
.epy-region-form>.epy-region-layout{width:100%}
.epy-policy-error{grid-column:1/-1;display:block;color:#a31e39;font-size:.78rem;font-weight:800;line-height:1.35}
.epy-policy-error[hidden]{display:none!important}
.epy-region-page-js-error{margin:0 0 18px;padding:13px 15px;border:1px solid #efadba;border-radius:14px;background:#fff3f5;color:#8f2036}

/* Checkpoint 18AB: inline region runtime and deterministic static asset deployment */
.epy-hotspot-hidden{display:none!important}
.epy-region-page[data-epy-region-ready] .epy-region-status:empty{display:none!important}
.epy-region-form>.epy-client-validation-summary{display:block;width:100%;margin:0 0 18px;box-sizing:border-box}
.epy-region-form>.epy-client-validation-summary[hidden]{display:none!important}
.epy-region-layout>.epy-selection-summary{width:100%;box-sizing:border-box}
@media(max-width:1199px){.epy-region-layout>.epy-selection-summary{grid-column:1/-1;max-width:none}}


/* Checkpoint 18AC: region consent clarity and modal confirmation */
.epy-policy-check{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 12px;margin:14px 0 18px;padding:14px;border:1px solid var(--epy-border);border-radius:16px;background:#fff;color:var(--epy-ink);font-size:.78rem;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}
.epy-policy-check-main{display:flex;align-items:flex-start;gap:10px;min-width:0;cursor:pointer}
.epy-policy-check-main input[type=checkbox]{flex:0 0 auto;width:19px;height:19px;margin:2px 0 0;accent-color:var(--epy-primary);cursor:pointer}
.epy-policy-check-copy{display:grid;gap:3px;min-width:0;line-height:1.4}
.epy-policy-check-copy b{color:var(--epy-ink);font-size:.82rem}
.epy-policy-check-copy small{color:var(--epy-muted);font-size:.72rem;line-height:1.45}
.epy-policy-detail-link{align-self:center;color:var(--epy-primary);font-weight:850;text-decoration:none;white-space:nowrap}
.epy-policy-detail-link:hover{text-decoration:underline}
.epy-policy-error{grid-column:1/-1;margin:0;padding:8px 10px;border-radius:10px;background:#fff0f2;color:#9b1f34;font-size:.73rem;font-weight:800}
.epy-policy-check.is-invalid{border-color:#dc5870;background:#fff8fa;box-shadow:0 0 0 4px rgba(220,88,112,.1);animation:epyConsentPulse .38s ease}
@keyframes epyConsentPulse{0%,100%{transform:translateX(0)}30%{transform:translateX(-4px)}70%{transform:translateX(4px)}}
.epy-consent-modal{z-index:10060}
.epy-topic-modal{z-index:10070}
.epy-consent-modal-dialog{max-width:650px;padding:34px;text-align:left;overflow:auto}
.epy-consent-modal-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:18px;border-radius:16px;background:linear-gradient(135deg,var(--epy-primary),#7b078f);color:#fff;font-size:1.45rem;font-weight:950;box-shadow:0 12px 26px rgba(167,10,184,.25)}
.epy-consent-modal-dialog h2{margin:7px 44px 10px 0;font-size:clamp(1.65rem,3vw,2.2rem);line-height:1.08;letter-spacing:-.04em}
.epy-consent-modal-dialog>p{margin:0;color:var(--epy-muted);font-size:.96rem;line-height:1.65}
.epy-consent-modal-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:22px 0}
.epy-consent-modal-summary>div{display:grid;gap:6px;padding:14px;border:1px solid var(--epy-border);border-radius:14px;background:#fcf8fc}
.epy-consent-modal-summary span{color:var(--epy-muted);font-size:.74rem;font-weight:750}
.epy-consent-modal-summary strong{color:var(--epy-ink);font-size:1.05rem}
.epy-consent-modal-summary>div:last-child strong{color:var(--epy-primary);font-size:1.25rem}
.epy-consent-modal-note{display:grid;grid-template-columns:32px minmax(0,1fr);gap:11px;align-items:start;padding:13px 14px;border:1px solid #c8d9fb;border-radius:14px;background:#f3f7ff;color:#315789}
.epy-consent-modal-note>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#dfeaff;font-weight:950}
.epy-consent-modal-note p{margin:2px 0 0;font-size:.8rem;line-height:1.5}
.epy-consent-modal-detail{display:inline-flex;margin-top:16px;color:var(--epy-primary);font-size:.82rem;font-weight:850;text-decoration:none}
.epy-consent-modal-detail:hover{text-decoration:underline}
.epy-consent-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}
.epy-consent-modal-actions .epy-btn{min-height:48px}
@media(max-width:599px){.epy-policy-check{grid-template-columns:1fr}.epy-policy-detail-link{justify-self:start;margin-left:29px}.epy-consent-modal-dialog{padding:28px 20px}.epy-consent-modal-summary{grid-template-columns:1fr}.epy-consent-modal-summary>div{grid-template-columns:1fr auto;align-items:center}.epy-consent-modal-actions{display:grid;grid-template-columns:1fr}.epy-consent-modal-actions .epy-btn{width:100%}.epy-consent-modal-actions .epy-btn-primary{order:-1}}

/* Checkpoint 18AD: deterministic asset loading, device/time UX and booking validation */
.epy-device-time-page{max-width:1320px}
.epy-device-time-heading{align-items:center}
.epy-step-help-badge{display:flex;align-items:center;gap:11px;min-width:235px;padding:12px 15px;border:1px solid var(--epy-border);border-radius:16px;background:#fff;box-shadow:0 10px 26px rgba(70,20,80,.06)}
.epy-step-help-badge>span{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:12px;background:var(--epy-soft);color:var(--epy-primary);font-weight:950}
.epy-step-help-badge b,.epy-step-help-badge small{display:block}.epy-step-help-badge b{font-size:.86rem}.epy-step-help-badge small{margin-top:2px;color:var(--epy-muted);font-size:.72rem}
.epy-availability-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 205px auto;gap:14px;align-items:end;margin:0 0 22px;padding:17px 18px;border:1px solid var(--epy-border);border-radius:20px;background:linear-gradient(135deg,#fff,#fff8ff);box-shadow:0 12px 32px rgba(70,20,80,.06)}
.epy-availability-toolbar-copy{display:flex;align-items:center;gap:12px;align-self:center;min-width:0}.epy-availability-toolbar-copy b,.epy-availability-toolbar-copy small{display:block}.epy-availability-toolbar-copy b{font-size:1rem}.epy-availability-toolbar-copy small{margin-top:3px;color:var(--epy-muted);font-size:.8rem;line-height:1.4}
.epy-availability-icon{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--epy-primary),#7d0a98);color:#fff;font-size:1.25rem;box-shadow:0 9px 22px rgba(169,11,185,.2)}
.epy-date-field{display:grid;gap:6px;font-size:.76rem;font-weight:850;color:#4f4459}.epy-date-field input{width:100%;height:48px;border:1px solid var(--epy-border);border-radius:12px;background:#fff;padding:0 13px;color:var(--epy-ink);outline:0}.epy-date-field input:focus{border-color:var(--epy-primary);box-shadow:0 0 0 4px rgba(169,11,185,.1)}
.epy-refresh-availability{white-space:nowrap}
.epy-device-time-layout{grid-template-columns:minmax(0,1fr) 330px;gap:22px}
.epy-device-list-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 12px;padding:0 2px}.epy-device-list-heading h2{margin:0;font-size:1.3rem;letter-spacing:-.025em}.epy-device-list-heading p{margin:4px 0 0;color:var(--epy-muted);font-size:.82rem}.epy-device-list-heading>span{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border-radius:999px;background:var(--epy-soft);color:var(--epy-primary);font-size:.75rem;font-weight:900;white-space:nowrap}
.epy-device-grid{display:grid!important;grid-template-columns:1fr!important;gap:16px;max-width:none!important}
.epy-device-card{display:grid!important;grid-template-columns:210px minmax(0,1fr)!important;gap:20px!important;padding:18px!important;border-radius:22px!important;overflow:visible!important;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.epy-device-card:hover{border-color:#d9badf;box-shadow:0 14px 34px rgba(70,20,80,.09);transform:translateY(-1px)}
.epy-device-card.active{border-color:var(--epy-primary)!important;background:linear-gradient(135deg,#fff,#fff9ff);box-shadow:0 18px 42px rgba(169,11,185,.14)!important}
.epy-device-visual{height:168px!important;border-radius:18px!important;align-self:start}.epy-device-visual img{object-fit:cover!important}
.epy-device-card-body{display:grid!important;gap:16px!important;align-content:start}
.epy-device-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;min-width:0}.epy-device-card-header>div{min-width:0}.epy-device-card-header h3{margin:7px 0 5px!important;font-size:1.22rem!important}.epy-device-card-header p{font-size:.88rem}
.epy-device-availability{display:inline-flex;align-items:center;gap:7px;color:#17834e;font-size:.72rem;font-weight:900}.epy-device-availability i{width:8px;height:8px;border-radius:50%;background:#18a85e;box-shadow:0 0 0 4px rgba(24,168,94,.12)}
.epy-device-detail-button{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;min-height:38px;padding:0 11px;border:1px solid var(--epy-border);border-radius:11px;background:#fff;color:var(--epy-primary);font-size:.76rem;font-weight:900;cursor:pointer}.epy-device-detail-button:hover{border-color:var(--epy-primary);background:var(--epy-soft)}
.epy-device-slot-section{padding-top:14px;border-top:1px dashed var(--epy-border)}
.epy-device-slot-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.epy-device-slot-title b{font-size:.85rem}.epy-device-slot-title small{color:var(--epy-muted);font-size:.72rem}
.epy-slot-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(78px,1fr))!important;gap:9px!important}
.epy-slot{position:relative;height:44px!important;border-radius:12px!important;background:#fff!important;color:var(--epy-ink)!important;box-shadow:0 4px 12px rgba(70,20,80,.035);transition:.16s ease;touch-action:manipulation}
.epy-slot:hover{border-color:var(--epy-primary)!important;background:#fff7ff!important;color:var(--epy-primary)!important;transform:translateY(-1px)}
.epy-slot.selected{padding-right:25px;background:linear-gradient(135deg,var(--epy-primary),#7c0798)!important;border-color:var(--epy-primary)!important;color:#fff!important;box-shadow:0 9px 20px rgba(169,11,185,.24)}
.epy-slot.selected:after{content:"✓";position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:.7rem;font-weight:950}
.epy-device-summary{padding:24px!important;border-radius:22px!important}.epy-device-summary h2{margin:5px 0 16px;font-size:1.65rem;letter-spacing:-.035em}.epy-device-summary .epy-summary-line b{max-width:170px;text-align:right;line-height:1.35}
.epy-device-summary-placeholder{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:12px;border:1px dashed #d9c1dd;border-radius:14px;background:#fff9ff;color:var(--epy-muted)}.epy-device-summary-placeholder[hidden]{display:none!important}.epy-device-summary-placeholder>span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:11px;background:var(--epy-soft);color:var(--epy-primary);font-size:1rem}.epy-device-summary-placeholder p{margin:0;font-size:.78rem;line-height:1.45}
.epy-device-summary-note{margin:13px 0 15px;color:var(--epy-muted);font-size:.72rem;line-height:1.45}
.epy-device-submit[aria-disabled=true],#epy-device-submit[aria-disabled=true]{opacity:.78;box-shadow:none}
.epy-device-inline-status{grid-column:1/-1;margin:0 0 4px}
.epy-device-empty-card{display:flex;align-items:center;gap:14px;min-height:120px}.epy-device-empty-card>span{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;background:var(--epy-soft);color:var(--epy-primary);font-size:1.35rem}.epy-device-empty-card p{margin:4px 0 0}
.epy-step-alert-dialog{max-width:520px;padding:34px;text-align:left}.epy-step-alert-dialog h2{margin:7px 40px 10px 0;font-size:1.75rem;letter-spacing:-.04em}.epy-step-alert-dialog>p{margin:0 0 22px;color:var(--epy-muted);line-height:1.6}.epy-step-alert-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:17px;border-radius:16px;background:linear-gradient(135deg,var(--epy-primary),#7a078e);color:#fff;font-size:1.35rem;font-weight:950;box-shadow:0 12px 26px rgba(169,11,185,.23)}
.epy-modal-device-placeholder{display:grid;place-items:center;min-height:250px;border-radius:16px;background:var(--epy-soft);color:var(--epy-primary);font-size:3rem}
.epy-btn.is-loading{pointer-events:none;opacity:.78}
.epy-booking-info-form .epy-form-grid label.is-invalid>span:first-child{color:#a31e39}.epy-booking-info-form input.is-invalid,.epy-booking-info-form select.is-invalid,.epy-booking-info-form textarea.is-invalid{border-color:#dc5870!important;box-shadow:0 0 0 4px rgba(220,88,112,.1)}
.epy-info-errors.validation-summary-valid{display:none!important}.epy-info-errors{margin-bottom:18px}

/* Critical salon application shell is repeated at the end so cached legacy cascade cannot expose every wizard step. */
.epy-application-page{max-width:1260px!important;margin:34px auto!important;padding:0 20px!important;font-family:var(--epy-font);color:var(--epy-ink)}
.epy-application-hero{display:flex!important;justify-content:space-between!important;gap:20px!important;align-items:center!important;padding:28px 30px!important;margin-bottom:18px!important;border-radius:26px!important;background:linear-gradient(135deg,#fff2fb,#f7eafe)!important;border:1px solid var(--epy-border)!important}
.epy-application-hero h1{font-size:clamp(2rem,3.2vw,2.65rem)!important;margin:6px 0!important;letter-spacing:-.04em}.epy-application-hero p{max-width:750px!important;color:var(--epy-muted)!important;margin:0!important;line-height:1.6}
.epy-wizard-progress{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important;margin-bottom:18px!important}.epy-wizard-progress button{min-height:58px!important;border:1px solid var(--epy-border)!important;background:#fff!important;border-radius:16px!important;padding:11px 13px!important;display:flex!important;align-items:center!important;gap:9px!important;text-align:left!important;color:var(--epy-muted)!important;cursor:pointer!important}.epy-wizard-progress button b{display:grid!important;place-items:center!important;flex:0 0 30px!important;width:30px!important;height:30px!important;border-radius:50%!important;background:#f2e8f5!important;color:var(--epy-primary)!important}.epy-wizard-progress button.active{border-color:var(--epy-primary)!important;color:var(--epy-ink)!important;box-shadow:0 8px 22px rgba(169,11,185,.09)!important}.epy-wizard-progress button.active b{background:var(--epy-primary)!important;color:#fff!important}.epy-wizard-progress button.complete{border-color:#b8e7cf!important;background:#f0fff7!important;color:#17603d!important}.epy-wizard-progress button.complete b{background:var(--epy-green)!important;color:#fff!important}
.epy-wizard-step{display:none!important}.epy-wizard-step.active{display:block!important}.epy-application-form{display:block!important}.epy-application-page .epy-content-card{padding:26px!important;margin-top:0!important}.epy-wizard-actions{display:flex!important;justify-content:space-between!important;gap:12px!important;margin-top:16px!important}

@media(max-width:899px){.epy-step-help-badge{display:none}.epy-availability-toolbar{grid-template-columns:1fr 1fr}.epy-availability-toolbar-copy{grid-column:1/-1}.epy-device-time-layout{grid-template-columns:1fr}.epy-device-summary{position:static}.epy-device-card{grid-template-columns:170px minmax(0,1fr)!important}}
@media(max-width:640px){.epy-availability-toolbar{grid-template-columns:1fr}.epy-availability-toolbar-copy{grid-column:auto}.epy-refresh-availability{width:100%}.epy-device-list-heading{align-items:flex-start}.epy-device-card{grid-template-columns:1fr!important}.epy-device-visual{height:200px!important}.epy-device-card-header{display:grid}.epy-device-detail-button{justify-self:start}.epy-device-slot-title{display:grid;gap:3px}.epy-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.epy-step-alert-dialog{padding:28px 20px}.epy-application-hero{align-items:flex-start!important;flex-direction:column!important;padding:22px!important}.epy-wizard-progress button{justify-content:center!important}.epy-wizard-progress button span{display:none!important}}

/* Checkpoint 18AD clickable incomplete action */
#epy-device-submit.is-incomplete{opacity:.9;box-shadow:0 10px 24px rgba(169,11,185,.18)}
#epy-device-submit.is-incomplete:after{content:"";width:7px;height:7px;border-radius:50%;background:#ffd55b;box-shadow:0 0 0 4px rgba(255,213,91,.2)}
#epy-device-submit.is-incomplete:hover{opacity:1}

/* Checkpoint 18AE: optional booking note and stable validation state */
.epy-booking-info-form .epy-form-grid label>span small{color:var(--epy-muted);font-size:.76rem;font-weight:650}
.epy-booking-info-form textarea[aria-required="false"]{background:linear-gradient(180deg,#fff,#fffbff)}

/* Checkpoint 18AG: salon application revision, location and status experience */
.epy-revision-request{display:flex;align-items:flex-start;gap:14px;margin:0 0 18px;padding:17px 18px;border:1px solid #e7c6ee;border-radius:18px;background:linear-gradient(135deg,#fff7ff,#f8eeff);color:#5c2671}.epy-revision-request-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:13px;background:linear-gradient(135deg,var(--epy-primary),#7b0a97);color:#fff;font-size:1.15rem;font-weight:950;box-shadow:0 10px 24px rgba(169,11,185,.18)}.epy-revision-request b{display:block;color:var(--epy-ink);font-size:.92rem}.epy-revision-request p{margin:4px 0 0;line-height:1.55}
.epy-existing-documents{display:grid;gap:9px;margin:12px 0 0}.epy-existing-documents>p{margin:0;color:var(--epy-muted);font-size:.8rem}.epy-existing-document-list{display:flex;flex-wrap:wrap;gap:8px}.epy-existing-document-list a{display:inline-flex;align-items:center;gap:7px;max-width:260px;min-height:38px;padding:0 11px;border:1px solid var(--epy-border);border-radius:11px;background:#fff;color:var(--epy-primary);font-size:.75rem;font-weight:850;text-decoration:none}.epy-existing-document-list a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.epy-location-picker{padding:19px;border:1px solid var(--epy-border);border-radius:20px;background:linear-gradient(180deg,#fff,#fffbff)}.epy-location-picker-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.epy-location-picker-head h3{margin:5px 0 4px;font-size:1.18rem;letter-spacing:-.02em}.epy-location-picker-head p{margin:0;color:var(--epy-muted);font-size:.8rem;line-height:1.55}.epy-btn-location{flex:0 0 auto;background:linear-gradient(135deg,#ffca3a,#e99a00)!important;color:#25163c!important;border:0!important;box-shadow:0 10px 22px rgba(218,142,0,.18)}.epy-location-search-field{display:flex;align-items:center;gap:9px;min-height:46px;padding:0 13px;border:1px solid var(--epy-border);border-radius:12px;background:#fff}.epy-location-search-field:focus-within{border-color:var(--epy-primary);box-shadow:0 0 0 4px rgba(169,11,185,.09)}.epy-location-search-field>span{color:var(--epy-primary);font-size:1.15rem}.epy-location-search-field input{width:100%;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;padding:0!important}.epy-location-map-shell{position:relative;margin-top:12px}.epy-location-map{height:410px;border:1px solid var(--epy-border);border-radius:18px;overflow:hidden;background:#e9eff1}.epy-location-map-badge{position:absolute;left:14px;bottom:14px;z-index:500;display:inline-flex;align-items:center;gap:7px;max-width:calc(100% - 28px);min-height:36px;padding:0 11px;border-radius:11px;background:rgba(255,255,255,.94);box-shadow:0 8px 22px rgba(38,20,52,.15);color:#41334d;font-size:.7rem;font-weight:800}.epy-location-map-badge span{color:var(--epy-primary)}.epy-inline-status.is-info{color:#315c91}.epy-location-suggestions{max-height:330px;overflow:auto}.epy-location-suggestion[data-primary=true]{background:#fffaff}.epy-location-suggestion b{font-size:.78rem;line-height:1.4}.epy-location-suggestion small{font-size:.7rem}
.epy-application-status-page .epy-application-hero{margin-bottom:20px}.epy-application-empty>span{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 13px;border-radius:20px;background:var(--epy-soft);color:var(--epy-primary);font-size:1.8rem}.epy-application-status-list{grid-template-columns:1fr;gap:15px}.epy-application-status-card{position:relative;overflow:hidden}.epy-application-status-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#d9c9dc}.epy-application-status-card.is-pending:before{background:#e2a416}.epy-application-status-card.is-revisionrequested:before{background:var(--epy-primary)}.epy-application-status-card.is-approved:before{background:#1d9c61}.epy-application-status-card.is-rejected:before{background:#c8455c}.epy-application-status-card .epy-card-top{align-items:flex-start}.epy-application-status-card .epy-card-top h2{margin:5px 0 3px}.epy-application-status-card .epy-card-top p{margin:0;color:var(--epy-muted)}.epy-status-revisionrequested{background:#f6e7ff;color:#7a1d98}.epy-application-status-description{margin:2px 0 4px;color:#51465d;line-height:1.55}.epy-application-review-note{padding:14px 15px;border:1px solid #dce5f4;border-radius:14px;background:#f5f8ff;color:#31527c}.epy-application-review-note.is-rejected{border-color:#f3c7d0;background:#fff4f6;color:#8c2c41}.epy-application-review-note b{display:block}.epy-application-review-note p{margin:4px 0 0;line-height:1.55}.epy-application-status-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}.epy-application-status-meta>div{grid-template-columns:135px minmax(0,1fr)}.epy-application-status-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-top:5px}.epy-review-wait{display:inline-flex;align-items:center;gap:8px;color:var(--epy-muted);font-size:.8rem;font-weight:750}.epy-review-wait i{width:9px;height:9px;border-radius:50%;background:#e2a416;box-shadow:0 0 0 5px rgba(226,164,22,.12)}
@media(max-width:720px){.epy-location-picker-head{display:grid}.epy-btn-location{width:100%}.epy-location-search-row{grid-template-columns:1fr}.epy-location-map{height:340px}.epy-location-map-badge{font-size:.65rem}.epy-application-status-meta{grid-template-columns:1fr}.epy-application-status-actions{align-items:stretch;flex-direction:column}.epy-application-status-actions .epy-btn{width:100%}.epy-review-wait{justify-content:center}.epy-revision-request{padding:14px}}

/* Checkpoint 18AH: premium filters, urgent booking and input polish */
.es16-chips,.popular-row{gap:10px!important}.es16-chips button,.es16-chips a,.popular-chip{line-height:1.2!important;white-space:normal!important;text-align:center!important;font-size:.82rem!important;padding:10px 14px!important;border-radius:999px!important}.es16-chips button:not(.active),.es16-chips a{background:#fff!important;border-color:#ead7ee!important}.es16-chips .ep-ref-chip-urgent,.popular-chip.ep-ref-urgent-filter,.ep-ref-urgent-grid button{background:#fff4f4!important;color:#b4132b!important;border-color:#ffd1d8!important}.es16-chips .ep-ref-chip-urgent.active,.popular-chip.ep-ref-urgent-filter.active,.ep-ref-urgent-grid button.active{background:linear-gradient(135deg,#ff355d,#c40c36)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 10px 26px rgba(220,25,65,.24)!important}
.ep-ref-urgent-grid{display:grid;grid-template-columns:1fr;gap:8px}.ep-ref-urgent-grid button{min-height:40px;padding:0 10px;border:1px solid #ffd1d8;border-radius:12px;font-size:.78rem;font-weight:900;cursor:pointer}.filter-group--urgent{background:linear-gradient(135deg,#fff7f8,#fff)!important;border-color:#ffd9df!important}.ep-ref-urgent-badge,.live-badge.urgent{display:inline-flex!important;align-items:center!important;gap:5px!important;min-height:24px!important;padding:0 9px!important;border-radius:999px!important;background:linear-gradient(135deg,#ff315a,#bd092f)!important;color:#fff!important;font-size:.68rem!important;font-weight:950!important;box-shadow:0 8px 19px rgba(222,30,65,.22)!important}.ep-ref-urgent-badge:before,.live-badge.urgent:before{content:"⚡";font-size:.7rem}.ep-ref-price-range-note{margin:0 0 10px;padding:9px 10px;border:1px dashed #e9c4ef;border-radius:12px;background:#fffaff;color:#6d5f78;font-size:.76rem}.ep-ref-price-range-note b{color:var(--epy-primary,#b10eb9)}.ep-ref-price-grid{gap:8px!important}.ep-ref-price-grid input{height:44px!important;border-radius:12px!important;text-align:center!important;font-weight:850!important;background:linear-gradient(180deg,#fff,#fffaff)!important}.ep-ref-map-popup--premium{min-width:300px}.ep-ref-map-popup--premium h4 a,.es16-salon-card h3 a,.salon-result-card h3 a{color:inherit;text-decoration:none}.ep-ref-map-popup--premium h4 a:hover,.es16-salon-card h3 a:hover,.salon-result-card h3 a:hover{color:var(--epy-primary,#b10eb9)}.ep-ref-popup-image,.es16-card-photo-link,.salon-photo-link{display:block;color:inherit;text-decoration:none}.ep-ref-popup-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}.ep-ref-popup-actions a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:34px!important;padding:0 10px!important;border-radius:10px!important;font-weight:900!important;font-size:.75rem!important;text-decoration:none!important}.ep-ref-popup-actions a.detail{background:#fff!important;border:1px solid #e6c9eb!important;color:var(--epy-primary,#b10eb9)!important}.ep-ref-popup-actions a.book{background:linear-gradient(135deg,var(--epy-primary,#b10eb9),#7d0899)!important;color:#fff!important}.es16-card-actions{align-items:center!important}.es16-card-actions a{min-width:58px!important;padding:0 10px!important;font-size:.72rem!important;font-weight:900!important}.es16-salon-card{gap:13px!important;padding:14px!important}.es16-salon-card .es16-card-photo-link{width:112px;flex:0 0 112px}.es16-tags--compact{gap:6px!important}.es16-tags--compact span{font-size:.67rem!important;padding:5px 8px!important;border-radius:999px!important}.salon-result-card .salon-side{gap:8px!important}.salon-result-card .salon-side .btn-es{min-height:40px!important}.ep-ref-salons-page .field-box,.ep-ref-salons-page .form-select,.ep-ref-salons-page input,.ep-ref-salons-page select,.es16-filter-card input,.es16-filter-card select{border-color:#ead6ee!important;border-radius:14px!important;box-shadow:none!important;background:linear-gradient(180deg,#fff,#fffaff)!important}.ep-ref-salons-page input:focus,.ep-ref-salons-page select:focus,.es16-filter-card input:focus,.es16-filter-card select:focus{border-color:var(--epy-primary,#b10eb9)!important;box-shadow:0 0 0 4px rgba(177,14,185,.1)!important;outline:0!important}.search-fields input[type=date],.es16-availability input[type=date]{font-weight:850;color:#241735;min-height:44px}.search-fields input[type=date]::-webkit-calendar-picker-indicator,.es16-availability input[type=date]::-webkit-calendar-picker-indicator{padding:7px;border-radius:10px;background-color:#fff1ff;cursor:pointer}.ep-ref-filter-proxy{display:none!important}
@media(max-width:760px){.es16-chips,.popular-row{gap:7px!important}.es16-chips button,.es16-chips a,.popular-chip{font-size:.72rem!important;padding:8px 10px!important}.es16-salon-card{grid-template-columns:88px minmax(0,1fr)!important}.es16-salon-card .es16-card-photo-link{width:88px;flex-basis:88px}.es16-card-actions{grid-column:1/-1;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}.ep-ref-urgent-grid{grid-template-columns:1fr 1fr}.ep-ref-urgent-grid button:last-child{grid-column:1/-1}}
/* Checkpoint 18AH: salon panel device approval requests */
.epy-info-note{margin:0 0 16px;padding:13px 15px;border:1px solid #d9e7ff;border-radius:14px;background:#f5f9ff;color:#31527c;font-weight:750;line-height:1.5}.epy-admin-request-list{display:grid;gap:12px}.epy-admin-request-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;padding:14px 15px;border:1px solid var(--epy-border);border-radius:16px;background:linear-gradient(180deg,#fff,#fffaff)}.epy-admin-request-card p{margin:4px 0;color:var(--epy-muted)}.epy-admin-request-card small{display:block;color:var(--epy-muted);line-height:1.45}.epy-status.is-warning{background:#fff3d2;color:#8a5b00}.epy-status.is-danger{background:#ffe4eb;color:#9c1832}.epy-status.is-success{background:#dcf7e9;color:#0f7146}@media(max-width:680px){.epy-admin-request-card{grid-template-columns:1fr}}

/* Checkpoint 18AJ: verified two-step session completion and review UX */
.epy-booking-ops-layout{grid-template-columns:minmax(0,1.6fr) minmax(320px,.7fr)}
.epy-session-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}
.epy-session-step{border:1px solid #eadbed;border-radius:22px;background:linear-gradient(180deg,#fff,#fff9fe);padding:18px;box-shadow:0 14px 34px rgba(78,22,95,.07)}
.epy-session-step.is-done{border-color:#bcebd5;background:linear-gradient(180deg,#fbfffd,#f1fff7)}
.epy-session-step.is-waiting{border-color:#f0d1f2;background:linear-gradient(180deg,#fff,#fff4fd)}
.epy-session-step-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}
.epy-session-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:14px;background:linear-gradient(135deg,var(--epy-primary),var(--epy-primary-dark));color:#fff;font-weight:950;box-shadow:0 10px 22px rgba(169,11,185,.2)}
.epy-session-step.is-done .epy-session-icon{background:#0c9a5c;box-shadow:0 10px 22px rgba(12,154,92,.18)}
.epy-session-step-head b{display:block;color:#18102f;font-weight:950;font-size:1rem}.epy-session-step-head small{display:block;color:#70657b;line-height:1.45;margin-top:4px}.epy-session-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.epy-session-form label{display:grid;gap:7px;margin:0}.epy-session-form label span{font-size:.78rem;font-weight:900;color:#4f4459}.epy-session-form input{height:48px;border:1px solid #eadbed;border-radius:14px;background:#fff;padding:0 14px;outline:0;font-weight:850}.epy-session-form input:focus{border-color:var(--epy-primary);box-shadow:0 0 0 4px rgba(169,11,185,.11)}.epy-session-inline-action{display:grid;gap:8px;margin-bottom:12px}.epy-session-inline-action small{color:#70657b;font-weight:750}.epy-session-success{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #bcebd5;border-radius:16px;background:#effff6;color:#126e45;padding:13px 14px;font-weight:900}.epy-session-success span{color:#397a5d;font-size:.88rem}.epy-session-muted{border:1px dashed #dfd0e4;border-radius:16px;background:#faf5fb;color:#77677e;padding:13px 14px;font-weight:850}.epy-verified-rule-note{display:flex;align-items:center;gap:9px;margin-top:14px;border:1px solid #c8eadb;background:#f1fff7;color:#176143;border-radius:14px;padding:12px 14px;font-weight:850}.epy-verified-rule-note:before{content:"ⓘ";font-weight:950;color:#0c9a5c}.epy-status-completed{background:#e8fff4!important;color:#0d7d4f!important}.epy-status-checkedin{background:#fff6df!important;color:#8b5a00!important}.epy-review-page{min-height:calc(100vh - 80px);background:linear-gradient(180deg,#fff7fc 0,#fff 420px);padding:54px 24px 80px}.epy-review-shell{max-width:1180px;margin:0 auto}.epy-review-hero{max-width:840px;margin-bottom:28px}.epy-review-hero h1{font-size:clamp(2.4rem,5vw,4.8rem);line-height:1;letter-spacing:-.06em;margin:10px 0 14px;color:#18102f}.epy-review-hero p{font-size:1.05rem;color:#70657b;line-height:1.65}.epy-review-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.75fr);gap:22px}.epy-review-form-card,.epy-review-rules-card{padding:28px}.epy-verified-review-form{display:grid;gap:18px}.epy-verified-review-form label{display:grid;gap:8px}.epy-verified-review-form label span{font-size:.82rem;font-weight:900;color:#35243f}.epy-verified-review-form input,.epy-verified-review-form select,.epy-verified-review-form textarea{width:100%;border:1px solid #eadbed;border-radius:16px;background:#fff;padding:0 15px;color:#18102f;font-weight:850;outline:0}.epy-verified-review-form input,.epy-verified-review-form select{height:52px}.epy-verified-review-form textarea{min-height:150px;padding-top:14px;resize:vertical}.epy-verified-review-form input:focus,.epy-verified-review-form select:focus,.epy-verified-review-form textarea:focus{border-color:var(--epy-primary);box-shadow:0 0 0 4px rgba(169,11,185,.11)}.epy-review-info,.epy-review-success,.epy-review-warning{border-radius:16px;padding:14px 16px;margin-bottom:18px;font-weight:850;line-height:1.5}.epy-review-info{border:1px solid #dfd0e4;background:#fff8fd;color:#4c3558}.epy-review-success{border:1px solid #bcebd5;background:#effff6;color:#126e45}.epy-review-warning{border:1px solid #ffc7e2;background:#fff1f8;color:#8c1453}.epy-review-rules-card h2{font-size:1.45rem;margin:0 0 14px}.epy-review-rules-card ul{display:grid;gap:10px;margin:0 0 18px;padding-left:19px;color:#4f4459;line-height:1.45;font-weight:780}.epy-review-trust-box{border:1px solid #eadbed;border-radius:18px;background:#fff7fc;padding:16px;color:#3c2f49;line-height:1.55;font-weight:850}.epy-review-rules-card dl{display:grid;gap:10px;margin:18px 0 0}.epy-review-rules-card dl div{display:flex;justify-content:space-between;gap:12px;border-top:1px dashed #eadbed;padding-top:10px}.epy-review-rules-card dt{color:#70657b;font-weight:800}.epy-review-rules-card dd{margin:0;font-weight:950;color:#18102f}.epy-review-card header{gap:8px;flex-wrap:wrap}.epy-verified-badge{display:inline-flex;align-items:center;gap:5px;margin-left:auto;border:1px solid #bcebd5;border-radius:999px;background:#effff6;color:#0c794d;padding:4px 8px;font-size:.72rem;font-weight:950}.epy-verified-badge:before{content:"✓"}
@media(max-width:1040px){.epy-booking-ops-layout,.epy-review-grid{grid-template-columns:1fr}.epy-session-steps{grid-template-columns:1fr}}
@media(max-width:640px){.epy-session-form{grid-template-columns:1fr}.epy-review-page{padding:32px 14px 56px}.epy-review-form-card,.epy-review-rules-card{padding:20px}.epy-session-steps{gap:12px}.epy-session-step{padding:15px}}

/* Checkpoint 18AL: premium salon panel session, payout and dashboard UI */
body:has(.epy-salon-panel-modern) .es16-header,
body:has(.epy-salon-panel-modern) .es16-mobile-menu,
body:has(.epy-salon-panel-modern) .es16-mobile-backdrop,
body:has(.epy-salon-panel-modern) .es16-footer,
body:has(.epy-salon-panel-modern) .footer,
body:has(.epy-salon-panel-modern) .header {display:none!important}
body:has(.epy-salon-panel-modern){background:#f8f5fb!important}
.epy-salon-panel-modern{min-height:100vh!important;margin:0!important;padding:0!important;background:#f8f5fb!important;color:#160c28!important;font-family:var(--epy-font,Inter,Arial,sans-serif)}
.epy-salon-panel-modern .epy-panel-nav{position:fixed!important;inset:0 auto 0 0!important;width:260px!important;z-index:20!important;border-radius:0!important;background:linear-gradient(180deg,#110823,#070314)!important;color:#fff!important;box-shadow:18px 0 48px rgba(16,5,30,.14)!important;overflow:auto!important}
.epy-salon-panel-modern .epy-panel-main{margin-left:260px!important;padding:32px 38px 56px!important;max-width:none!important;width:auto!important}
.epy-dashboard-topline,.epy-session-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.epy-dashboard-topline h1,.epy-session-topbar h1{margin:0 0 6px;font-size:clamp(1.8rem,3vw,2.7rem);letter-spacing:-.055em;color:#17102b}.epy-dashboard-topline p,.epy-session-topbar p{margin:0;color:#74687f;line-height:1.55}.epy-session-top-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}.epy-btn-small{min-height:36px!important;padding:0 12px!important;font-size:.78rem!important}
.epy-live-earnings-card{display:grid;grid-template-columns:68px auto minmax(240px,1fr) auto;align-items:center;gap:20px;margin-bottom:22px;padding:22px 26px;border:1px solid #c8eed8;border-radius:24px;background:linear-gradient(135deg,#f2fff7,#fff);box-shadow:0 18px 46px rgba(20,120,80,.08)}.epy-live-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#e0faeb;color:#19a860;font-size:2rem}.epy-live-earnings-card span{display:block;color:#148f50;font-weight:950;font-size:.78rem;letter-spacing:.04em}.epy-live-earnings-card strong{display:block;margin-top:2px;color:#11a35b;font-size:2.25rem;line-height:1;font-weight:950}.epy-live-earnings-card p{margin:0;color:#655a71;line-height:1.45}.epy-live-pill{justify-self:end;border-radius:999px;background:#fff;box-shadow:0 8px 20px rgba(20,120,80,.11);padding:12px 16px;color:#0f914f;font-weight:950}
.epy-dashboard-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-bottom:22px}.epy-dashboard-kpi-grid article{padding:21px;border:1px solid #eaddec;border-radius:22px;background:#fff;box-shadow:0 14px 35px rgba(50,20,70,.05)}.epy-dashboard-kpi-grid span{display:block;color:#7a6f85;font-size:.78rem;font-weight:850}.epy-dashboard-kpi-grid b{display:block;margin:8px 0 4px;font-size:1.85rem;color:#170e2b;letter-spacing:-.04em}.epy-dashboard-kpi-grid small{color:#1a9659;font-weight:850}.epy-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:20px;margin-bottom:22px}.epy-dashboard-chart-card,.epy-dashboard-side-card{padding:24px}.epy-bar-chart{display:flex;align-items:flex-end;gap:18px;height:250px;padding:18px 10px 0;border-top:1px solid #f0e6f2}.epy-bar-item{display:grid;grid-template-rows:auto 1fr auto;align-items:end;justify-items:center;gap:8px;flex:1;height:100%;min-width:34px}.epy-bar-item span{font-size:.72rem;color:#685d75;font-weight:850}.epy-bar-item i{display:block;width:60%;min-height:8px;border-radius:12px 12px 4px 4px;background:linear-gradient(180deg,#b30fc3,#6f0794);box-shadow:0 10px 26px rgba(169,11,185,.18)}.epy-bar-item b{font-size:.78rem;color:#685d75}.epy-link-arrow{display:inline-flex;margin-top:10px;color:var(--epy-primary);font-weight:950;text-decoration:none}
.epy-session-progress{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0 0 22px;padding:16px;border:1px solid #eaddec;border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(50,20,70,.05)}.epy-session-progress div{display:grid;justify-items:center;gap:8px;position:relative;color:#81758b;font-size:.75rem;font-weight:900;text-align:center}.epy-session-progress i{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#f4edf6;color:#7f728a;font-style:normal;font-weight:950}.epy-session-progress .done i{background:#e8fbf2;color:#0e9b58}.epy-session-progress .done i:before{content:'✓';font-size:1rem}.epy-session-progress .done i{font-size:0}.epy-session-progress .active i{background:linear-gradient(135deg,var(--epy-primary),#7b0797);color:#fff}.epy-payout-toast{display:flex;align-items:center;gap:14px;margin-bottom:20px;border-color:#beeccd!important;background:#f2fff7!important}.epy-payout-toast>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#12a860;color:#fff;font-weight:950}.epy-payout-toast p{margin:3px 0 0;color:#496254}.epy-session-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:22px}.epy-session-main-card,.epy-session-code-card,.epy-history-card{padding:24px}.epy-session-customer-strip{display:flex;align-items:center;gap:16px;margin-bottom:20px}.epy-session-avatar{display:grid;place-items:center;width:72px;height:72px;border-radius:24px;background:linear-gradient(135deg,#f9e8fa,#efe7ff);color:var(--epy-primary);font-size:2rem;font-weight:950}.epy-session-customer-strip h2{margin:0;font-size:1.75rem;letter-spacing:-.04em}.epy-session-customer-strip p{margin:4px 0 0;color:#7d7188}.epy-session-reservation-no{margin-left:auto;text-align:right}.epy-session-reservation-no span{display:block;color:#7d7188;font-size:.76rem;font-weight:850}.epy-session-reservation-no b{display:block;margin-top:4px;color:var(--epy-primary);font-size:1.05rem}.epy-session-meta-grid{margin-bottom:20px}.epy-operation-list-card{margin-top:18px;border:1px solid #eaddec;border-radius:22px;background:#fff;padding:20px}.epy-operation-region-list{display:grid;gap:11px;margin:16px 0}.epy-operation-region{display:grid;grid-template-columns:54px minmax(0,1fr) auto 30px;align-items:center;gap:12px;min-height:66px;padding:12px 14px;border:1px solid #eaddec;border-radius:17px;background:#fff;cursor:pointer;transition:.16s ease}.epy-operation-region:hover{border-color:#d8bae0;background:#fff9ff}.epy-operation-region.is-done,.epy-operation-region:has(input:checked){border-color:#bcebd5;background:#f2fff8}.epy-region-operation-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#fbecff;color:var(--epy-primary);font-weight:950}.epy-region-operation-name{font-weight:950;color:#17102b}.epy-operation-region small{color:#6d6179}.epy-operation-region input{position:absolute;opacity:0;pointer-events:none}.epy-region-operation-check{display:grid;place-items:center;width:25px;height:25px;border:2px solid #cbc0d3;border-radius:9px;background:#fff}.epy-operation-region input:checked+.epy-region-operation-check{border-color:#0e9b58;background:#0e9b58}.epy-operation-region input:checked+.epy-region-operation-check:before{content:'✓';color:#fff;font-size:.82rem;font-weight:950}.epy-operation-form .epy-btn-large{width:100%;margin-top:4px}.epy-session-side{display:grid;gap:18px;align-content:start}.epy-session-code-card h2{font-size:1.35rem;margin:5px 0 14px}.epy-session-success{border:1px solid #bcebd5;background:#effff6;color:#126e45;border-radius:16px;padding:14px 15px}.epy-session-success b,.epy-session-success span{display:block}.epy-session-success span{margin-top:3px;font-size:.8rem;color:#4f785f}.epy-session-form{display:grid;gap:12px}.epy-session-form label{display:grid;gap:7px}.epy-session-form input{min-height:50px;border:1px solid #eaddec;border-radius:14px;padding:0 14px;font-weight:850}.epy-session-form input:focus{outline:0;border-color:var(--epy-primary);box-shadow:0 0 0 4px rgba(169,11,185,.1)}
.epy-customer-progress-card{margin-bottom:20px}.epy-progress-row{display:grid;gap:8px;margin:13px 0}.epy-progress-row>div{display:flex;justify-content:space-between;gap:10px}.epy-progress-row b{color:#17102b}.epy-progress-row span{color:#6d6179;font-weight:850}.epy-progress-row i{display:block;height:9px;border-radius:999px;background:#f0e7f2;overflow:hidden}.epy-progress-row em{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--epy-primary),#7b0797)}
.ep-ref-map-popup--classic,.ep-ref-map-popup{display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;gap:14px!important;min-width:300px!important;padding:10px!important;border-radius:22px!important;background:#fff!important;box-shadow:0 18px 45px rgba(40,14,58,.18)!important}.ep-ref-popup-image img{width:112px!important;height:112px!important;border-radius:18px!important;object-fit:cover!important}.ep-ref-map-popup h4{margin:0 0 5px!important;font-size:1rem!important;line-height:1.25!important}.ep-ref-map-popup h4 a{color:#1a1030!important;text-decoration:none!important}.ep-ref-map-popup p{margin:0 0 4px!important;color:#5f536b!important;font-size:.82rem!important}.ep-ref-map-popup small{display:block;color:#7c7088!important;font-size:.77rem!important}.ep-ref-popup-actions{display:flex!important;align-items:center!important;gap:8px!important;margin-top:10px!important;flex-wrap:wrap!important}.ep-ref-popup-actions b{margin-right:auto;color:var(--epy-primary);font-size:1.02rem}.ep-ref-popup-actions a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:36px!important;padding:0 12px!important;border-radius:12px!important;font-weight:950!important;font-size:.78rem!important;text-decoration:none!important}.ep-ref-popup-actions a.detail{border:1px solid #eaddec!important;color:var(--epy-primary)!important;background:#fff!important}.ep-ref-popup-actions a.book{background:linear-gradient(135deg,var(--epy-primary),#7b0797)!important;color:#fff!important;box-shadow:0 10px 22px rgba(169,11,185,.18)!important}.es16-card-actions--map-only{align-self:center!important}.es16-card-actions--map-only button{width:44px!important;height:44px!important;border-radius:50%!important}
@media(max-width:1180px){.epy-dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.epy-dashboard-grid,.epy-session-layout{grid-template-columns:1fr}.epy-salon-panel-modern .epy-panel-main{padding:24px}}
@media(max-width:860px){.epy-salon-panel-modern .epy-panel-nav{position:static!important;width:auto!important;border-radius:0 0 24px 24px!important}.epy-salon-panel-modern .epy-panel-main{margin-left:0!important}.epy-live-earnings-card{grid-template-columns:1fr}.epy-live-pill{justify-self:start}.epy-dashboard-kpi-grid,.epy-session-progress{grid-template-columns:1fr 1fr}.epy-session-customer-strip{align-items:flex-start;flex-direction:column}.epy-session-reservation-no{text-align:left;margin-left:0}.epy-operation-region{grid-template-columns:44px minmax(0,1fr) auto 28px}}
@media(max-width:560px){.epy-dashboard-kpi-grid,.epy-session-progress{grid-template-columns:1fr}.epy-salon-panel-modern .epy-panel-main{padding:18px 14px 40px}.epy-operation-region{grid-template-columns:38px minmax(0,1fr) 28px}.epy-operation-region small{display:none}.ep-ref-map-popup{grid-template-columns:92px minmax(0,1fr)!important;min-width:260px!important}.ep-ref-popup-image img{width:92px!important;height:92px!important}}

.epy-salon-live-toast{position:fixed;right:24px;bottom:24px;z-index:99999;max-width:360px;border-radius:20px;background:#241031;color:#fff;box-shadow:0 24px 70px rgba(36,16,49,.28);padding:16px 18px;transform:translateY(20px);opacity:0;pointer-events:none;transition:.25s ease}.epy-salon-live-toast.show{opacity:1;transform:none}.epy-salon-live-toast b{display:block;margin-bottom:4px;font-weight:900}.epy-salon-live-toast span{display:block;color:#faeaff;line-height:1.45}.epy-live-hidden-link{font-size:13px;margin-top:8px;display:inline-flex}.epy-dashboard-kpi-grid em{font-style:normal}

.epy-panel-live-badge{margin-left:auto;min-width:22px;height:22px;border-radius:999px;display:inline-grid;place-items:center;background:#ff2e55;color:#fff;font-size:.72rem;font-weight:900;padding:0 7px;box-shadow:0 6px 16px rgba(255,46,85,.28)}

.epy-holiday-card{display:grid;gap:10px;margin-top:18px;padding-top:16px;border-top:1px dashed var(--epy-border)}.epy-holiday-card label{display:grid;gap:5px;color:var(--epy-ink);font-weight:750}.epy-holiday-card input[type=text],.epy-holiday-card input[type=datetime-local]{height:42px;border:1px solid var(--epy-border);border-radius:12px;padding:0 10px;background:#fff}.epy-holiday-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.epy-switch-line{display:flex!important;align-items:center;gap:9px;border:1px solid var(--epy-border);border-radius:13px;padding:10px;background:var(--epy-soft)}.epy-switch-line input{width:18px;height:18px}.es16-home .es16-view-controls,.es16-home .es16-map-card{display:none!important}.es16-home .es16-home-grid{grid-template-columns:1fr!important}.es16-home .es16-salon-panel{max-width:none!important}.es16-home .es16-salon-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.es16-home .es16-salon-card{min-height:100%;box-shadow:0 16px 38px rgba(61,20,82,.08)}@media(max-width:1100px){.es16-home .es16-salon-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.es16-home .es16-salon-list,.epy-holiday-grid{grid-template-columns:1fr}}


/* 18AN capacity specialist polish */
.epy-admin-kpi.is-teal{border-color:#b7f2e5;background:linear-gradient(135deg,#f0fffb,#eafffb)}
.epy-admin-kpi.is-teal i{background:#13b99a;color:#fff}
.epy-specialist-capacity-grid label span small{display:flex;gap:.5rem;align-items:center;margin-top:.35rem;color:#7c6f8e}
.epy-specialist-capacity-grid input[type="number"], .epy-choice-grid-profile input[type="number"]{width:84px;border:1px solid #ead9ef;border-radius:12px;padding:.45rem .6rem;font-weight:800;color:#201033;background:#fff}
.epy-device-card .epy-chips span:last-child,.epy-device-count-pill{font-weight:800}
.epy-anatomy-region-layout{grid-template-columns:minmax(250px,300px) minmax(560px,1fr) minmax(280px,330px);align-items:start;gap:1.35rem}
.epy-anatomy-region-list{display:grid;gap:.65rem;max-height:760px;overflow:auto;padding-right:.25rem}
.epy-anatomy-region-list .epy-region-item{border-radius:16px;padding:.72rem .82rem;background:#fff;box-shadow:0 10px 28px rgba(75,30,90,.05)}
.epy-anatomy-region-list .epy-region-item.selected{background:linear-gradient(135deg,#fff4fd,#f3e8ff);border-color:#b400b9;box-shadow:0 12px 30px rgba(180,0,185,.14)}
.epy-anatomy-map{min-height:760px;background:linear-gradient(180deg,#fff,#fff7fe);border:1px solid #efd9f1;border-radius:28px;padding:1rem 1.2rem 1.35rem;box-shadow:0 22px 60px rgba(70,25,90,.08)}
.epy-anatomy-map .epy-body-stage{min-height:660px;background:#fff;border-radius:24px}
.epy-anatomy-map .epy-body-stage img{max-height:640px}
.epy-anatomy-map .epy-hotspot em{display:block;position:absolute;left:50%;top:110%;transform:translateX(-50%);background:#32103f;color:#fff;padding:.22rem .45rem;border-radius:8px;font-size:.68rem;white-space:nowrap;box-shadow:0 8px 16px rgba(25,5,35,.2)}
.epy-anatomy-summary{position:sticky;top:88px;border-radius:26px;box-shadow:0 24px 70px rgba(76,19,96,.12)}
.epy-anatomy-summary h2{font-size:1.65rem}
.epy-anatomy-summary .epy-selected-chip{border-radius:12px;background:#fff0fe;border:1px solid #f0c8ef;color:#a000b0}
@media(max-width:1180px){.epy-anatomy-region-layout{grid-template-columns:1fr}.epy-anatomy-summary{position:static}.epy-anatomy-map{min-height:auto}.epy-anatomy-map .epy-body-stage{min-height:520px}}

/* Checkpoint 18AO — premium anatomy region selector */
.epy-anatomy-page{max-width:1660px;padding:22px 26px 34px;background:linear-gradient(180deg,#fff 0,#fff 62%,#fff8ff 100%)}
.epy-anatomy-hero{display:grid;grid-template-columns:280px minmax(0,1fr) 380px;gap:20px;align-items:center;margin:8px 0 14px}.epy-anatomy-brand{display:grid;grid-template-columns:42px 1fr;column-gap:10px;align-items:center;color:#16092b}.epy-anatomy-logo{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--epy-soft);font-size:1.65rem}.epy-anatomy-brand strong{font-size:1.55rem;font-weight:950;letter-spacing:-.04em}.epy-anatomy-brand small{font-size:.78rem;color:var(--epy-muted)}.epy-anatomy-title{text-align:center}.epy-anatomy-title h1{margin:0;font-size:4.4rem;line-height:.88;letter-spacing:.015em;color:var(--epy-ink);font-weight:950}.epy-anatomy-title p{font-size:1.35rem;margin:8px 0 0;color:var(--epy-ink)}.epy-anatomy-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;text-align:center}.epy-anatomy-trust span{display:grid;gap:2px;justify-items:center;color:var(--epy-ink);font-size:.84rem}.epy-anatomy-trust span:first-child{font-size:1.8rem}.epy-anatomy-trust b{font-size:.95rem}.epy-anatomy-trust small{font-size:.72rem;color:var(--epy-muted);line-height:1.2}.epy-anatomy-shell{display:grid;grid-template-columns:265px minmax(780px,1fr) 300px;gap:20px;align-items:start}.epy-anatomy-left{display:grid;gap:12px}.epy-anatomy-category{background:#fff;border:1px solid var(--epy-border);border-radius:12px;overflow:hidden;box-shadow:0 12px 28px rgba(61,11,89,.06)}.epy-anatomy-category h3{margin:0;padding:8px 14px;background:linear-gradient(135deg,var(--epy-primary),var(--epy-ink));color:#fff;text-align:center;font-size:.88rem;letter-spacing:.035em;font-weight:950}.epy-anatomy-category-list{display:grid}.epy-anatomy-region-row{display:grid!important;grid-template-columns:32px 1fr 24px;gap:7px;align-items:center;margin:0!important;border:0!important;border-bottom:1px solid #f0e4f4!important;border-radius:0!important;padding:8px 12px!important;box-shadow:none!important;background:#fff!important;min-height:42px}.epy-anatomy-region-row:last-child{border-bottom:0!important}.epy-anatomy-region-row input{position:absolute;opacity:0;pointer-events:none}.epy-anatomy-region-row:hover,.epy-anatomy-region-row.selected{background:linear-gradient(90deg,#fff,var(--epy-soft))!important}.epy-anatomy-row-icon{display:grid;place-items:center;width:25px;height:25px;border:1px solid #e7d5ef;border-radius:9px;color:var(--epy-primary);font-size:.98rem;font-weight:900}.epy-anatomy-row-text b{font-size:.95rem;color:var(--epy-ink);font-weight:900}.epy-anatomy-row-text small{display:block;margin-top:1px;font-size:.7rem;color:var(--epy-muted)}.epy-anatomy-row-plus{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1px solid var(--epy-primary);color:var(--epy-primary);font-weight:900;font-size:.88rem}.epy-anatomy-region-row.selected .epy-anatomy-row-plus{background:var(--epy-primary);color:#fff}.epy-anatomy-center{min-width:0}.epy-anatomy-modebar{display:flex;align-items:center;justify-content:center;gap:14px;margin:0 0 10px}.epy-anatomy-modechip,.epy-anatomy-gender{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:11px;padding:0 20px;text-decoration:none;border:1px solid var(--epy-border);font-weight:950;color:var(--epy-ink);background:#fff;box-shadow:0 7px 18px rgba(31,7,51,.08)}.epy-anatomy-modechip{background:linear-gradient(135deg,var(--epy-primary),var(--epy-ink));color:#fff;border:0;font-size:.9rem}.epy-anatomy-gender.active{background:linear-gradient(135deg,var(--epy-primary),var(--epy-ink));color:#fff;border-color:transparent}.epy-anatomy-board{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:end;min-height:720px;border:0;background:transparent;overflow:visible}.epy-anatomy-figure{position:relative;margin:0;min-height:700px;display:flex;align-items:flex-end;justify-content:center;overflow:visible}.epy-anatomy-figure>img{max-height:700px;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 16px 22px rgba(25,8,50,.08));user-select:none}.epy-anatomy-feet{position:absolute;left:42%;bottom:22px;margin:0;width:155px;height:130px;display:flex;align-items:center;justify-content:center;border:2px solid color-mix(in srgb,var(--epy-primary),white 35%);border-radius:50%;background:rgba(255,255,255,.72);box-shadow:0 8px 20px rgba(34,9,61,.09)}.epy-anatomy-feet>img{max-width:120px;max-height:115px;object-fit:contain}.epy-anatomy-pin{position:absolute!important;z-index:5!important;width:auto!important;height:auto!important;min-width:80px;max-width:160px;transform:translateY(-50%)!important;border:0!important;border-radius:10px!important;background:#fff!important;color:var(--epy-ink)!important;padding:7px 10px!important;font-size:.82rem!important;font-weight:950!important;box-shadow:0 5px 16px rgba(21,7,44,.14)!important;text-align:center!important;display:grid!important;gap:1px!important;line-height:1.08!important}.epy-anatomy-pin.pin-left{transform:translate(calc(-100% - 34px),-50%)!important}.epy-anatomy-pin.pin-right{transform:translate(34px,-50%)!important}.epy-anatomy-pin span{position:absolute;top:50%;display:grid;place-items:center;width:8px;height:8px;border-radius:50%;background:var(--epy-primary);color:transparent;font-size:0;transform:translateY(-50%);box-shadow:0 0 0 3px rgba(147,18,174,.12)}.epy-anatomy-pin.pin-left span{right:-38px}.epy-anatomy-pin.pin-right span{left:-38px}.epy-anatomy-pin:before{content:"";position:absolute;top:50%;width:34px;border-top:1px dotted var(--epy-primary);opacity:.75}.epy-anatomy-pin.pin-left:before{right:-34px}.epy-anatomy-pin.pin-right:before{left:-34px}.epy-anatomy-pin strong{font-weight:950;color:var(--epy-ink);font-size:.82rem}.epy-anatomy-pin small{color:var(--epy-primary);font-size:.72rem;font-weight:900}.epy-anatomy-pin.selected{background:linear-gradient(135deg,var(--epy-soft),#fff)!important;outline:2px solid var(--epy-primary);box-shadow:0 8px 24px rgba(180,23,197,.2)!important}.epy-anatomy-pin.selected span{width:22px;height:22px;color:#fff;font-size:.9rem;background:var(--epy-gold);box-shadow:0 0 0 5px #fff,0 8px 20px rgba(255,172,21,.36)}.epy-anatomy-pin.epy-hotspot-hidden{display:grid!important}.epy-anatomy-summary{position:sticky;top:94px;padding:0!important;border-radius:14px!important;overflow:hidden;background:#fff!important;border:1px solid #eaddee!important;box-shadow:0 14px 32px rgba(61,11,89,.08)!important}.epy-anatomy-summary-head{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,var(--epy-primary),var(--epy-ink));color:#fff;padding:14px 17px}.epy-anatomy-summary-head h2{margin:0!important;color:#fff!important;font-size:1rem;letter-spacing:.03em}.epy-anatomy-summary-head b{display:grid;place-items:center;min-width:32px;height:32px;border-radius:50%;background:#fff;color:var(--epy-primary);font-size:1.2rem}.epy-anatomy-selected-regions{min-height:250px!important;padding:16px!important;display:grid!important;gap:0!important}.epy-anatomy-empty{display:grid;place-items:center;text-align:center;color:var(--epy-ink);gap:8px;align-self:center}.epy-anatomy-empty span{font-size:4.2rem;color:var(--epy-primary);line-height:1}.epy-anatomy-empty b{font-size:1.15rem}.epy-anatomy-empty small{color:var(--epy-muted);font-size:.9rem;line-height:1.35}.epy-anatomy-selected-regions .epy-selected-chip{display:flex!important;align-items:center;justify-content:space-between;width:100%;border-radius:0!important;background:#fff!important;color:var(--epy-ink)!important;border-bottom:1px solid #eee!important;padding:13px 2px!important;font-weight:900;text-align:left}.epy-anatomy-selected-regions .epy-selected-chip span{color:var(--epy-primary);font-size:1.2rem}.epy-anatomy-metrics{padding:0 16px 12px}.epy-anatomy-metrics .epy-summary-line{padding:13px 0;border-top:1px solid #eee}.epy-anatomy-metrics .epy-summary-line span{font-weight:750;color:var(--epy-ink)}.epy-anatomy-metrics .epy-summary-line b{font-size:1rem}.epy-anatomy-metrics .epy-summary-line.total b{font-size:2rem;color:var(--epy-primary)}.epy-anatomy-summary .epy-policy-check{margin:0 16px 14px}.epy-anatomy-summary .epy-btn-large{margin:0 16px 14px;width:calc(100% - 32px);justify-content:center;border-radius:9px;font-weight:950}.epy-anatomy-summary-note{margin:0 16px 18px;color:var(--epy-ink);font-size:.82rem;line-height:1.42}.epy-anatomy-bottom-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0 0}.epy-anatomy-bottom-trust div{display:grid;grid-template-columns:48px 1fr;column-gap:12px;align-items:center;background:#fff;border:1px solid #eee;border-radius:12px;padding:15px 18px;box-shadow:0 8px 22px rgba(20,8,44,.05);color:var(--epy-ink);font-size:2rem}.epy-anatomy-bottom-trust b{font-size:1rem;color:var(--epy-ink)}.epy-anatomy-bottom-trust span{grid-column:2;color:var(--epy-muted);font-size:.82rem;line-height:1.3}@media(max-width:1300px){.epy-anatomy-shell{grid-template-columns:245px minmax(620px,1fr) 285px}.epy-anatomy-title h1{font-size:3.5rem}.epy-anatomy-board{gap:12px}.epy-anatomy-pin{font-size:.75rem!important;min-width:70px}}@media(max-width:1050px){.epy-anatomy-hero{grid-template-columns:1fr;text-align:center}.epy-anatomy-brand{justify-content:center}.epy-anatomy-trust{max-width:520px;margin:0 auto}.epy-anatomy-shell{grid-template-columns:1fr}.epy-anatomy-left{grid-template-columns:repeat(2,1fr)}.epy-anatomy-summary{position:static}.epy-anatomy-bottom-trust{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.epy-anatomy-page{padding:14px}.epy-anatomy-title h1{font-size:2.5rem}.epy-anatomy-left,.epy-anatomy-board,.epy-anatomy-bottom-trust{grid-template-columns:1fr}.epy-anatomy-figure{min-height:580px}.epy-anatomy-figure>img{max-height:560px}.epy-anatomy-feet{display:none}.epy-anatomy-pin{min-width:70px;font-size:.72rem!important}.epy-anatomy-modebar{flex-wrap:wrap}.epy-anatomy-trust{grid-template-columns:1fr 1fr 1fr}}

/* Checkpoint 18AQ: premium home reference and cleaned anatomy selector */
.epy-app-home{--app-primary:var(--epy-primary,#b50fba);--app-primary-dark:var(--epy-ink,#160f2d);--app-soft:#fff4fd;--app-line:#efe0f1;--app-muted:#6f647d;max-width:1120px;margin:0 auto;padding:34px 24px 42px;font-family:var(--epy-font,Inter,system-ui,sans-serif);color:var(--app-primary-dark)}
.epy-app-hero{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(280px,.86fr);align-items:center;gap:28px;min-height:310px;position:relative}.epy-app-logo-mark{display:inline-grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:0 8px;align-items:center;font-weight:950;color:var(--app-primary);margin-bottom:20px}.epy-app-logo-mark b{font-size:1.15rem}.epy-app-logo-mark small{grid-column:2;font-size:.78rem;color:var(--app-muted);font-weight:800}.epy-app-hero h1{font-size:clamp(2.4rem,5vw,4.45rem);line-height:.98;letter-spacing:-.065em;margin:0 0 16px;font-weight:1000;max-width:560px}.epy-app-hero h1 strong{color:var(--app-primary)}.epy-app-hero p{font-size:1.1rem;line-height:1.55;color:#443852;max-width:520px;font-weight:750}.epy-app-hero-media{position:relative;min-height:290px;overflow:hidden;border-radius:34px;background:radial-gradient(circle at 50% 60%,#ffeaff 0,#fff 52%,transparent 72%)}.epy-app-hero-media img{position:absolute;right:0;bottom:0;width:min(440px,110%);height:100%;object-fit:cover;object-position:center;mask-image:linear-gradient(90deg,transparent 0,#000 18%,#000 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 18%,#000 100%);filter:saturate(1.04)}.epy-app-hero-glow{position:absolute;inset:auto 16% 10% auto;width:210px;height:210px;border-radius:50%;background:rgba(186,32,190,.12);filter:blur(8px)}
.epy-app-filter{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--app-line);border-radius:26px;background:#fff;box-shadow:0 22px 56px rgba(49,17,63,.1);overflow:hidden;padding:16px;margin-top:10px}.epy-app-filter-tile,.epy-app-price-tile{position:relative;display:grid;grid-template-columns:54px 1fr 24px;gap:14px;align-items:center;min-height:105px;padding:17px 16px;border-right:1px solid #f1e5f3;border-bottom:1px solid #f1e5f3;background:#fff;cursor:pointer}.epy-app-filter-tile:nth-child(3),.epy-app-price-tile:nth-child(6){border-right:0}.epy-app-price-tile:nth-child(n+4),.epy-app-filter-tile:nth-child(n+4){border-bottom:0}.epy-app-filter-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:#f4e8ff;color:var(--app-primary);font-size:1.75rem}.epy-app-filter-icon.pink{background:#ffe8f6;color:#ed2a9e}.epy-app-filter-icon.people{background:#f0e8ff}.epy-app-filter-icon.book{background:#f3e9ff}.epy-app-filter-icon.money{background:#eafbf0;color:#1da760}.epy-app-filter-icon.diamond{background:#f4e8ff}.epy-app-filter-tile b,.epy-app-price-tile b{display:block;font-size:1.08rem;line-height:1.18;font-weight:1000}.epy-app-filter-tile small,.epy-app-price-tile small{display:block;margin-top:4px;color:var(--app-muted);font-weight:750}.epy-app-filter-tile i{font-style:normal;color:#302340;font-size:1.2rem}.epy-app-filter-tile select,.epy-app-filter-tile input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;border:0}.epy-app-filter-tile.filled{background:linear-gradient(135deg,#fff,var(--app-soft))}.epy-app-price-tile input{position:absolute;opacity:0}.epy-app-price-tile>i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:2px solid #ded2e6}.epy-app-price-tile.active{background:#effaf2}.epy-app-price-tile.active>i{border:6px solid #20ac55;background:#fff}.epy-app-submit{grid-column:1/-1;margin:16px 0 0;height:66px;border:0;border-radius:17px;background:linear-gradient(135deg,var(--app-primary),#4b0ccd);color:#fff;font-size:1.55rem;font-weight:1000;box-shadow:0 14px 32px rgba(145,17,181,.22);cursor:pointer}.epy-app-submit span{float:right;display:inline-grid;place-items:center;width:42px;height:42px;margin-left:18px;border-radius:50%;background:#fff;color:var(--app-primary)}
.epy-app-trust-row,.epy-app-sortbar,.epy-app-gift,.epy-app-bottom-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--app-line);border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(49,17,63,.06);margin-top:18px;overflow:hidden}.epy-app-trust-row div{display:flex;align-items:center;justify-content:center;gap:12px;min-height:82px;border-right:1px solid #f0e4f2;font-weight:950;color:#322646}.epy-app-trust-row div:last-child{border-right:0}.epy-app-trust-row span{line-height:1.12}.epy-app-sortbar{grid-template-columns:110px 1fr 1fr 1fr;align-items:center;min-height:66px;padding:0 20px}.epy-app-sortbar a,.epy-app-sortbar b{display:flex;align-items:center;justify-content:center;height:100%;font-weight:950;text-decoration:none;color:#2b2040}.epy-app-sortbar a{border-left:1px solid #f0e4f2}.epy-app-sortbar a.active{color:var(--app-primary);background:var(--app-soft);border-radius:999px;height:42px;margin:0 16px;border-left:0}
.epy-app-salon-list{display:grid;gap:14px;margin-top:18px}.epy-app-salon-card{display:grid;grid-template-columns:210px minmax(0,1fr) 210px;gap:18px;align-items:center;padding:14px;border:1px solid #f0e3f2;border-radius:22px;background:#fff;box-shadow:0 12px 28px rgba(49,17,63,.07)}.epy-app-salon-photo{position:relative;display:block;height:142px;border-radius:17px;overflow:hidden}.epy-app-salon-photo img{width:100%;height:100%;object-fit:cover}.epy-app-salon-photo span{position:absolute;left:8px;top:8px;border-radius:999px;background:linear-gradient(135deg,var(--app-primary),#4b0ccd);color:#fff;font-weight:950;font-size:.82rem;padding:8px 10px}.epy-app-salon-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.epy-app-salon-head h2{margin:0;font-size:1.36rem;line-height:1.16;letter-spacing:-.025em}.epy-app-salon-head h2 a{text-decoration:none;color:var(--app-primary-dark)}.epy-app-salon-head button{border:0;background:#fff;font-size:1.8rem;color:#4d4260}.epy-app-rating{display:flex;align-items:center;gap:8px;margin:9px 0;color:#312642;font-weight:900}.epy-app-rating span{color:#ffb000}.epy-app-rating small{color:#312642}.epy-app-rating strong{color:#2510c8}.epy-app-tags{display:flex;flex-wrap:wrap;gap:7px}.epy-app-tags span{display:inline-flex;border-radius:999px;background:#f2e6ff;color:var(--app-primary);padding:6px 9px;font-size:.78rem;font-weight:950}.epy-app-tags span.ok{background:#eafaf0;color:#168a47}.epy-app-meta{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px;color:#5f526d;font-weight:850}.epy-app-price{display:grid;justify-items:end;gap:8px}.epy-app-price small{color:#5f526d;font-weight:850}.epy-app-price strong{font-size:2.05rem;color:#4b0ccd;font-weight:1000}.epy-app-price a{min-width:146px;height:43px;border-radius:12px;display:flex;align-items:center;justify-content:center;text-decoration:none;font-weight:950}.epy-app-price .outline{border:1px solid var(--app-primary);color:var(--app-primary);background:#fff}.epy-app-price .primary{background:linear-gradient(135deg,var(--app-primary),#4b0ccd);color:#fff}.epy-app-empty{padding:34px;border-radius:18px;background:#fff;border:1px solid var(--app-line);text-align:center}.epy-app-gift{grid-template-columns:1fr auto;align-items:center;padding:16px 18px;background:linear-gradient(135deg,#fff,var(--app-soft))}.epy-app-gift div{display:flex;align-items:center;gap:12px}.epy-app-gift b{font-size:1.1rem}.epy-app-gift span{color:var(--app-muted);font-weight:750}.epy-app-gift a{height:46px;display:flex;align-items:center;padding:0 22px;border:1px solid var(--app-line);border-radius:13px;text-decoration:none;font-weight:950;color:var(--app-primary)}.epy-app-bottom-nav{grid-template-columns:repeat(5,1fr);position:relative;margin-bottom:10px}.epy-app-bottom-nav a{display:grid;place-items:center;gap:5px;padding:16px 6px;text-decoration:none;color:#5d526c;font-size:1.65rem}.epy-app-bottom-nav a span{font-size:.86rem;font-weight:950}.epy-app-bottom-nav a.active{color:var(--app-primary)}
@media(max-width:920px){.epy-app-home{padding:22px 16px}.epy-app-hero{grid-template-columns:1fr}.epy-app-hero-media{position:absolute;right:0;top:20px;width:42%;opacity:.95}.epy-app-hero-copy{position:relative;z-index:2}.epy-app-filter{grid-template-columns:1fr 1fr}.epy-app-filter-tile:nth-child(3),.epy-app-price-tile:nth-child(6){border-right:1px solid #f1e5f3}.epy-app-filter-tile:nth-child(even),.epy-app-price-tile:nth-child(even){border-right:0}.epy-app-salon-card{grid-template-columns:145px 1fr}.epy-app-price{grid-column:2;justify-items:start;grid-template-columns:auto auto;align-items:center}.epy-app-price small,.epy-app-price strong{grid-column:1/-1}.epy-app-price strong{font-size:1.55rem}.epy-app-trust-row{grid-template-columns:repeat(4,1fr)}.epy-app-sortbar{grid-template-columns:1fr;gap:8px;padding:12px}.epy-app-sortbar a{border:0}.epy-app-gift{grid-template-columns:1fr}}@media(max-width:640px){.epy-app-hero h1{font-size:2.25rem}.epy-app-hero-media{width:45%;height:220px}.epy-app-filter{grid-template-columns:1fr}.epy-app-filter-tile,.epy-app-price-tile{border-right:0!important;border-bottom:1px solid #f1e5f3!important}.epy-app-trust-row{grid-template-columns:repeat(4,1fr)}.epy-app-trust-row div{font-size:.76rem;gap:4px;flex-direction:column;text-align:center}.epy-app-salon-card{grid-template-columns:118px 1fr;padding:10px}.epy-app-salon-photo{height:118px}.epy-app-salon-head h2{font-size:1rem}.epy-app-price a{min-width:120px}.epy-app-meta{font-size:.78rem}.epy-app-bottom-nav{position:sticky;bottom:8px;z-index:50}}

.epy-anatomy-page{max-width:1720px!important;padding:22px 34px!important;background:#fff!important}.epy-anatomy-page .epy-booking-stepper{margin-bottom:14px}.epy-anatomy-hero{grid-template-columns:260px 1fr 330px!important;align-items:start!important;margin-bottom:14px!important}.epy-anatomy-title h1{font-size:clamp(3.8rem,5.2vw,5.8rem)!important;letter-spacing:-.065em!important}.epy-anatomy-title p{font-size:1.35rem!important}.epy-anatomy-trust{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:14px!important}.epy-anatomy-shell{grid-template-columns:285px minmax(930px,1fr) 305px!important;gap:22px!important;align-items:start!important}.epy-anatomy-left{display:grid!important;gap:12px!important;max-height:none!important}.epy-anatomy-category{border-radius:10px!important;box-shadow:0 5px 14px rgba(31,7,51,.05)!important}.epy-anatomy-category h3{padding:8px 12px!important;font-size:.86rem!important}.epy-anatomy-region-row{min-height:45px!important;padding:8px 12px!important}.epy-anatomy-row-text b{font-size:.92rem!important}.epy-anatomy-row-text small{font-size:.68rem!important}.epy-anatomy-center{overflow:visible!important}.epy-anatomy-modebar{margin-bottom:4px!important}.epy-anatomy-modechip,.epy-anatomy-gender{min-height:43px!important;border-radius:12px!important}.epy-anatomy-board{grid-template-columns:minmax(390px,1fr) minmax(350px,1fr)!important;gap:64px!important;min-height:710px!important;overflow:visible!important;align-items:end!important}.epy-anatomy-figure{min-height:690px!important;overflow:visible!important}.epy-anatomy-figure>img{max-height:675px!important;max-width:100%!important;object-fit:contain!important;filter:drop-shadow(0 14px 24px rgba(45,17,68,.09))!important}.epy-anatomy-feet{bottom:8px!important;left:45%!important;width:148px!important;height:122px!important;background:rgba(255,255,255,.9)!important}.epy-anatomy-pin{min-width:82px!important;max-width:124px!important;padding:6px 8px!important;font-size:.76rem!important;border-radius:9px!important;line-height:1.05!important}.epy-anatomy-pin strong{font-size:.77rem!important}.epy-anatomy-pin small{font-size:.67rem!important}.epy-anatomy-pin.pin-left{transform:translate(calc(-100% - 24px),-50%)!important}.epy-anatomy-pin.pin-right{transform:translate(24px,-50%)!important}.epy-anatomy-pin.pin-left span{right:-29px!important}.epy-anatomy-pin.pin-right span{left:-29px!important}.epy-anatomy-pin:before{width:25px!important}.epy-anatomy-pin.pin-left:before{right:-25px!important}.epy-anatomy-pin.pin-right:before{left:-25px!important}.epy-anatomy-summary{top:88px!important;border-radius:14px!important}.epy-anatomy-selected-regions{min-height:260px!important}.epy-anatomy-bottom-trust{grid-template-columns:repeat(4,1fr)!important;margin-top:24px!important}.epy-anatomy-bottom-trust div{min-height:100px!important;border-radius:14px!important}.epy-anatomy-summary-note{font-weight:750!important;color:#453650!important}.epy-policy-check{border:1px solid #f0e3f3;border-radius:12px;padding:12px;background:#fff!important}.epy-policy-check-copy b{font-size:.82rem!important}.epy-policy-check-copy small{font-size:.72rem!important}@media(max-width:1450px){.epy-anatomy-shell{grid-template-columns:255px minmax(760px,1fr) 285px!important;gap:16px!important}.epy-anatomy-board{gap:28px!important}.epy-anatomy-pin{font-size:.68rem!important;min-width:70px!important;max-width:110px!important}.epy-anatomy-pin strong{font-size:.69rem!important}.epy-anatomy-pin small{font-size:.6rem!important}}@media(max-width:1120px){.epy-anatomy-shell{grid-template-columns:1fr!important}.epy-anatomy-left{grid-template-columns:repeat(2,minmax(0,1fr))!important}.epy-anatomy-board{grid-template-columns:1fr 1fr!important}.epy-anatomy-summary{position:static!important}.epy-anatomy-hero{grid-template-columns:1fr!important}.epy-anatomy-bottom-trust{grid-template-columns:repeat(2,1fr)!important}}@media(max-width:720px){.epy-anatomy-page{padding:16px!important}.epy-anatomy-left,.epy-anatomy-board{grid-template-columns:1fr!important}.epy-anatomy-figure{min-height:580px!important}.epy-anatomy-figure>img{max-height:560px!important}.epy-anatomy-pin{position:absolute!important;max-width:108px!important}.epy-anatomy-bottom-trust{grid-template-columns:1fr!important}}


/* Checkpoint 18AR: cleaner premium region selector and app-like salon listing */
.epy-anatomy-page{max-width:1680px!important;padding:18px 28px 30px!important}
.epy-anatomy-page .epy-booking-stepper{margin-bottom:18px}
.epy-anatomy-hero-clean{display:block!important;margin:0 auto 18px!important;text-align:center!important}
.epy-anatomy-brand,.epy-anatomy-trust{display:none!important}
.epy-anatomy-eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:6px;color:var(--epy-primary);font-weight:950;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}
.epy-anatomy-title h1{font-size:clamp(2.45rem,4vw,4.15rem)!important;line-height:.95!important;letter-spacing:-.055em!important;text-transform:none!important}
.epy-anatomy-title p{font-size:clamp(1rem,1.35vw,1.25rem)!important;margin-top:8px!important;color:#4b3b5d!important}
.epy-anatomy-shell{grid-template-columns:280px minmax(760px,1fr) 315px!important;gap:22px!important;align-items:start!important}
.epy-anatomy-center{padding-top:0!important}
.epy-anatomy-modebar{margin:0 0 16px!important}
.epy-anatomy-genderbar{gap:10px!important}
.epy-anatomy-genderbar .epy-anatomy-gender{min-width:126px;min-height:44px;border-radius:13px!important;text-transform:none!important;font-size:1rem!important}
.epy-anatomy-modechip{display:none!important}
.epy-anatomy-board{grid-template-columns:minmax(280px,1fr) minmax(280px,1fr)!important;gap:24px!important;min-height:650px!important;max-width:900px;margin:0 auto;isolation:isolate}
.epy-anatomy-figure{min-height:650px!important;background:#fff;border-radius:26px;box-shadow:0 20px 58px rgba(61,11,89,.06);border:1px solid #f0e3f4;overflow:hidden!important}
.epy-anatomy-figure>img{max-height:635px!important;max-width:92%!important;object-fit:contain!important;object-position:center bottom!important}
.epy-anatomy-feet{display:none!important}
.epy-anatomy-pin{width:20px!important;height:20px!important;min-width:0!important;max-width:none!important;padding:0!important;border-radius:50%!important;border:3px solid #fff!important;background:linear-gradient(135deg,var(--epy-primary),#7b158f)!important;box-shadow:0 8px 18px rgba(176,20,190,.32)!important;color:transparent!important;transform:translate(-50%,-50%)!important;display:block!important}
.epy-anatomy-pin.pin-left,.epy-anatomy-pin.pin-right{transform:translate(-50%,-50%)!important}
.epy-anatomy-pin:before{display:none!important}
.epy-anatomy-pin span{position:absolute!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important;width:8px!important;height:8px!important;border-radius:50%!important;background:#fff!important;color:transparent!important;box-shadow:none!important;font-size:0!important}
.epy-anatomy-pin strong,.epy-anatomy-pin small{display:none!important}
.epy-anatomy-pin:hover,.epy-anatomy-pin:focus-visible{z-index:20!important;outline:0!important}
.epy-anatomy-pin:hover strong,.epy-anatomy-pin:focus-visible strong,.epy-anatomy-pin:hover small,.epy-anatomy-pin:focus-visible small{display:block!important;position:absolute;left:26px;top:50%;transform:translateY(-50%);min-width:118px;white-space:normal;text-align:left;background:#fff;color:var(--epy-ink);border:1px solid #ead7ef;border-radius:12px;padding:8px 10px;box-shadow:0 14px 30px rgba(31,8,50,.18);font-size:.82rem;line-height:1.15}
.epy-anatomy-pin:hover small,.epy-anatomy-pin:focus-visible small{top:calc(50% + 25px);color:var(--epy-primary);font-size:.74rem;font-weight:950;border-top:0;border-radius:0 0 12px 12px;padding-top:0}
.epy-anatomy-pin.selected{background:linear-gradient(135deg,#ffb21c,#ff8f00)!important;box-shadow:0 0 0 5px rgba(255,178,28,.18),0 12px 24px rgba(255,143,0,.24)!important}
.epy-anatomy-pin.selected span{color:#2b1500!important;font-size:.78rem!important;background:transparent!important;width:auto!important;height:auto!important}
.epy-anatomy-left{max-height:760px;overflow:auto;padding-right:3px}
.epy-anatomy-category{border-radius:14px!important}
.epy-anatomy-category h3{font-size:.82rem!important;padding:9px 12px!important}
.epy-anatomy-region-row{min-height:46px!important;padding:8px 10px!important;grid-template-columns:30px minmax(0,1fr) 24px!important}
.epy-anatomy-row-text b{font-size:.88rem!important}.epy-anatomy-row-text small{font-size:.68rem!important}
.epy-anatomy-summary{top:84px!important}
.epy-anatomy-selected-regions{min-height:210px!important}
.epy-anatomy-bottom-trust{margin-top:20px!important}
.header .header-logo img,.header-logo img,.logo img{max-height:58px!important;width:auto!important}
.epy-app-home{max-width:980px!important;padding:24px 18px 34px!important}
.epy-app-hero{grid-template-columns:minmax(0,1fr) 320px!important;gap:18px!important;min-height:260px!important}
.epy-app-hero h1{font-size:clamp(2.15rem,4.4vw,3.55rem)!important;line-height:1.02!important}
.epy-app-hero p{font-size:1.02rem!important}
.epy-app-hero-media{min-height:245px!important;border-radius:28px!important;background:radial-gradient(circle at 50% 55%,#ffeafd 0,#fff 62%,transparent 80%)!important}
.epy-app-hero-media img{width:min(360px,105%)!important}
.epy-app-filter{grid-template-columns:repeat(3,1fr)!important;border-radius:24px!important;padding:14px!important}
.epy-app-filter-tile,.epy-app-price-tile{min-height:92px!important;padding:14px 13px!important;grid-template-columns:48px 1fr 20px!important}
.epy-app-filter-icon{width:44px!important;height:44px!important;font-size:1.45rem!important}
.epy-app-filter-tile b,.epy-app-price-tile b{font-size:1rem!important}.epy-app-filter-tile small,.epy-app-price-tile small{font-size:.8rem!important}
.epy-app-submit{height:58px!important;font-size:1.25rem!important;border-radius:16px!important}
.epy-app-salon-list{gap:13px!important}
.epy-app-salon-card{grid-template-columns:180px minmax(0,1fr) 180px!important;border-radius:22px!important}
.epy-app-salon-photo{height:132px!important}
.epy-app-price strong{font-size:1.75rem!important}
.epy-app-bottom-nav{border-radius:22px!important}
@media(max-width:1180px){.epy-anatomy-shell{grid-template-columns:1fr!important}.epy-anatomy-left{max-height:none}.epy-anatomy-summary{position:relative!important;top:0!important}.epy-anatomy-board{max-width:900px}}
@media(max-width:840px){.epy-anatomy-page{padding:14px!important}.epy-anatomy-board{grid-template-columns:1fr!important;min-height:0!important}.epy-anatomy-figure{min-height:560px!important}.epy-anatomy-figure>img{max-height:545px!important}.epy-app-hero{grid-template-columns:1fr!important}.epy-app-hero-media{display:none}.epy-app-filter{grid-template-columns:1fr!important}.epy-app-salon-card{grid-template-columns:126px 1fr!important}.epy-app-price{grid-column:2!important;justify-items:start!important}.epy-app-bottom-nav{position:sticky;bottom:8px;z-index:20}}

/* Checkpoint 18AS: simplified home intent search, location modal, salon panel layout hardening */
.epy-quick-home{--qh-primary:var(--epy-primary,#b50fba);--qh-ink:var(--epy-ink,#160f2d);--qh-line:#efe1f1;--qh-muted:#6f647b;max-width:1180px;margin:0 auto;padding:24px 20px 44px;color:var(--qh-ink);font-family:var(--epy-font,Inter,system-ui,sans-serif)}
.epy-quick-search-card{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.4fr);gap:22px;align-items:center;border:1px solid var(--qh-line);border-radius:30px;background:linear-gradient(135deg,#fff,#fff6fd);padding:24px;box-shadow:0 20px 54px rgba(58,15,72,.08)}
.epy-quick-intro h1{margin:5px 0 10px;font-size:clamp(2rem,3.7vw,3.45rem);line-height:1;letter-spacing:-.06em;font-weight:1000}.epy-quick-intro p{margin:0;color:var(--qh-muted);line-height:1.55;font-weight:760;font-size:1rem}
.epy-quick-filter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.epy-quick-tile,.epy-quick-price{position:relative;display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center;min-height:76px;border:1px solid var(--qh-line);border-radius:18px;background:#fff;padding:12px 13px;text-align:left;cursor:pointer;box-shadow:0 8px 22px rgba(70,20,80,.035)}.epy-quick-tile:hover,.epy-quick-price:hover,.epy-quick-tile.filled{border-color:color-mix(in srgb,var(--qh-primary),white 55%);background:#fff9ff}.epy-quick-tile>span,.epy-quick-price>span{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#f7e9ff;color:var(--qh-primary);font-size:1.35rem}.epy-quick-tile b,.epy-quick-price b{display:block;font-size:.95rem;font-weight:1000}.epy-quick-tile small{display:block;margin-top:3px;color:var(--qh-muted);font-weight:720;font-size:.75rem;line-height:1.22}.epy-quick-tile select,.epy-quick-tile input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;border:0}.epy-quick-price input{position:absolute;opacity:0}.epy-quick-price.active{border-color:color-mix(in srgb,var(--qh-primary),white 20%);background:linear-gradient(135deg,#fff,#fff1ff)}.epy-quick-submit{grid-column:1/-1;height:56px;border:0;border-radius:17px;background:linear-gradient(135deg,var(--qh-primary),#6f0794);color:#fff;font-weight:1000;font-size:1.12rem;box-shadow:0 12px 30px rgba(169,11,185,.22);cursor:pointer}.epy-quick-submit:hover{transform:translateY(-1px)}
.epy-quick-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}.epy-quick-trust div{display:flex;align-items:center;justify-content:center;gap:8px;min-height:58px;border:1px solid var(--qh-line);border-radius:17px;background:#fff;font-size:.9rem;color:#312642;box-shadow:0 8px 20px rgba(58,15,72,.035)}
.epy-quick-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:20px 0 12px}.epy-quick-section-head h2{margin:4px 0 0;font-size:1.75rem;letter-spacing:-.045em}.epy-quick-section-head a{color:var(--qh-primary);font-weight:950;text-decoration:none}.epy-quick-salon-list{display:grid;gap:12px}.epy-quick-salon-card{display:grid;grid-template-columns:142px minmax(0,1fr) 160px;gap:15px;align-items:center;border:1px solid var(--qh-line);border-radius:22px;background:#fff;padding:12px;box-shadow:0 13px 32px rgba(58,15,72,.06)}.epy-quick-salon-img{height:112px;border-radius:16px;overflow:hidden}.epy-quick-salon-img img{width:100%;height:100%;object-fit:cover}.epy-quick-salon-info h3{margin:0 0 6px;font-size:1.12rem;letter-spacing:-.025em}.epy-quick-salon-info h3 a{color:var(--qh-ink);text-decoration:none}.epy-quick-salon-info p{display:flex;gap:7px;align-items:center;margin:0 0 7px;color:#352842;font-weight:900}.epy-quick-salon-info p span:first-child{color:#f3a500}.epy-quick-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:7px}.epy-quick-tags span{border-radius:999px;background:#f3e8ff;color:var(--qh-primary);padding:5px 8px;font-size:.72rem;font-weight:950}.epy-quick-tags .ok{background:#eafaf0;color:#168a47}.epy-quick-salon-info small{color:var(--qh-muted);font-weight:820}.epy-quick-salon-action{display:grid;justify-items:end;gap:7px}.epy-quick-salon-action small{color:var(--qh-muted);font-weight:800}.epy-quick-salon-action b{font-size:1.55rem;color:#6f0794}.epy-quick-salon-action a{min-width:126px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:950;text-decoration:none}.epy-quick-salon-action .outline{border:1px solid var(--qh-primary);color:var(--qh-primary);background:#fff}.epy-quick-salon-action .primary{background:linear-gradient(135deg,var(--qh-primary),#6f0794);color:#fff}
.epy-location-modal[hidden]{display:none!important}.epy-location-modal{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:20px}.epy-location-backdrop{position:absolute;inset:0;background:rgba(20,8,32,.42);backdrop-filter:blur(5px)}.epy-location-dialog{position:relative;width:min(560px,100%);border-radius:26px;background:#fff;padding:26px;border:1px solid var(--qh-line);box-shadow:0 28px 90px rgba(20,8,32,.28)}.epy-location-close{position:absolute;right:16px;top:14px;width:38px;height:38px;border-radius:50%;border:1px solid var(--qh-line);background:#fff;font-size:1.4rem;cursor:pointer}.epy-location-dialog h2{margin:5px 0 9px;font-size:1.9rem;letter-spacing:-.05em}.epy-location-dialog p{margin:0 0 16px;color:var(--qh-muted);line-height:1.5}.epy-location-current{width:100%;height:54px;border:0;border-radius:16px;background:linear-gradient(135deg,var(--qh-primary),#6f0794);color:#fff;font-weight:1000;cursor:pointer}.epy-location-or{display:flex;align-items:center;gap:10px;margin:18px 0 13px;color:var(--qh-muted);font-weight:850}.epy-location-or:before,.epy-location-or:after{content:"";height:1px;background:var(--qh-line);flex:1}.epy-location-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.epy-location-grid label{display:grid;gap:6px;font-weight:850}.epy-location-grid select{height:46px;border:1px solid var(--qh-line);border-radius:13px;padding:0 12px;background:#fff}.epy-location-status{min-height:22px;margin-top:12px;color:var(--qh-muted);font-weight:800}.epy-location-status.is-success{color:#148a4e}.epy-location-status.is-warning{color:#a15d00}.epy-location-status.is-info{color:var(--qh-primary)}.epy-location-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
.epy-salon-panel-modern.epy-panel{display:block!important;max-width:none!important;width:100%!important;margin:0!important;padding:0!important;grid-template-columns:none!important;background:#f8f5fb!important;min-height:100vh!important}.epy-salon-panel-modern .epy-panel-main{box-sizing:border-box!important;margin-left:260px!important;max-width:none!important;width:calc(100% - 260px)!important;padding:32px 38px 58px!important}.epy-salon-panel-modern .epy-panel-nav{box-sizing:border-box!important}.epy-salon-panel-modern .epy-content-card,.epy-salon-panel-modern .epy-dashboard-chart-card,.epy-salon-panel-modern .epy-dashboard-side-card{background:#fff!important;border:1px solid #eaddec!important;border-radius:24px!important;box-shadow:0 14px 38px rgba(50,20,70,.06)!important}.epy-salon-panel-modern .epy-dashboard-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important}.epy-salon-panel-modern .epy-live-earnings-card{grid-template-columns:64px minmax(170px,220px) minmax(240px,1fr) auto!important}.epy-salon-panel-modern .epy-dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)!important}.epy-salon-panel-modern .epy-bar-chart{min-height:250px!important}.epy-salon-panel-modern .epy-table-wrap{overflow:auto!important}.epy-slot{background:#eaf8ef!important;border-color:#bfe7ca!important;color:#12683f!important}.epy-slot:hover,.epy-slot.selected{background:#0ead5a!important;border-color:#0ead5a!important;color:#fff!important}.epy-slot[disabled],.epy-slot.disabled,.epy-slot.is-busy{background:#f8d3d6!important;border-color:#efb5bb!important;color:#8b2030!important;opacity:.92!important;cursor:not-allowed!important}
@media(max-width:980px){.epy-quick-search-card{grid-template-columns:1fr}.epy-quick-filter{grid-template-columns:1fr 1fr}.epy-quick-salon-card{grid-template-columns:120px minmax(0,1fr)}.epy-quick-salon-action{grid-column:2;justify-items:start;grid-template-columns:auto auto;align-items:center}.epy-quick-salon-action small,.epy-quick-salon-action b{grid-column:1/-1}.epy-quick-trust{grid-template-columns:1fr 1fr}.epy-salon-panel-modern .epy-panel-main{margin-left:0!important;width:100%!important;padding:24px 18px 48px!important}.epy-salon-panel-modern .epy-panel-nav{position:static!important;width:100%!important;border-radius:0 0 24px 24px!important}.epy-salon-panel-modern .epy-live-earnings-card,.epy-salon-panel-modern .epy-dashboard-grid{grid-template-columns:1fr!important}}
@media(max-width:620px){.epy-quick-home{padding:14px 12px 34px}.epy-quick-search-card{padding:17px;border-radius:22px}.epy-quick-filter,.epy-quick-trust,.epy-location-grid{grid-template-columns:1fr}.epy-quick-salon-card{grid-template-columns:96px minmax(0,1fr);gap:10px}.epy-quick-salon-img{height:96px}.epy-quick-salon-action a{min-width:112px}.epy-quick-intro h1{font-size:2.1rem}.epy-location-dialog{padding:22px 18px}}


/* Checkpoint 18AT: restore visible anatomy labels and prevent label collisions */
.epy-anatomy-page{max-width:1680px!important;padding:18px 28px 30px!important;background:#fff!important}
.epy-anatomy-hero-clean{margin:0 auto 14px!important;text-align:center!important}
.epy-anatomy-brand,.epy-anatomy-trust{display:none!important}
.epy-anatomy-title h1{font-size:clamp(2.4rem,3.75vw,4.1rem)!important;line-height:.98!important;letter-spacing:-.045em!important;text-transform:none!important}
.epy-anatomy-title p{font-size:clamp(1rem,1.25vw,1.22rem)!important;color:#453650!important;margin-top:6px!important}
.epy-anatomy-shell{grid-template-columns:280px minmax(840px,1fr) 315px!important;gap:22px!important;align-items:start!important}
.epy-anatomy-center{overflow:visible!important;padding-top:0!important}
.epy-anatomy-modebar{margin:0 0 14px!important}.epy-anatomy-modechip{display:none!important}
.epy-anatomy-gender{min-width:126px;min-height:42px;border-radius:13px!important;font-size:.96rem!important;text-transform:none!important}
.epy-anatomy-board{grid-template-columns:minmax(370px,1fr) minmax(330px,.95fr)!important;gap:54px!important;min-height:690px!important;max-width:980px!important;margin:0 auto!important;overflow:visible!important;align-items:end!important;isolation:isolate}
.epy-anatomy-figure{position:relative!important;min-height:680px!important;overflow:visible!important;border-radius:26px!important;background:#fff!important;border:1px solid #f0e3f4!important;box-shadow:0 18px 48px rgba(61,11,89,.055)!important}
.epy-anatomy-figure>img{max-height:660px!important;max-width:94%!important;object-fit:contain!important;object-position:center bottom!important;filter:drop-shadow(0 14px 24px rgba(45,17,68,.08))!important}
.epy-anatomy-feet{display:none!important}
.epy-anatomy-pin{position:absolute!important;z-index:7!important;width:auto!important;height:auto!important;min-width:70px!important;max-width:118px!important;padding:5px 7px!important;border:0!important;border-radius:9px!important;background:#fff!important;color:var(--epy-ink)!important;box-shadow:0 8px 20px rgba(25,8,50,.15)!important;display:grid!important;gap:1px!important;text-align:center!important;line-height:1.04!important;font-weight:950!important;font-size:.68rem!important;opacity:1!important;visibility:visible!important;cursor:pointer!important}
.epy-anatomy-pin.pin-left{transform:translate(calc(-100% - 24px),-50%)!important}.epy-anatomy-pin.pin-right{transform:translate(24px,-50%)!important}
.epy-anatomy-pin span{position:absolute!important;top:50%!important;display:grid!important;place-items:center!important;width:8px!important;height:8px!important;border-radius:50%!important;background:var(--epy-primary)!important;color:transparent!important;font-size:0!important;transform:translateY(-50%)!important;box-shadow:0 0 0 3px rgba(181,15,186,.12)!important}
.epy-anatomy-pin.pin-left span{right:-28px!important;left:auto!important}.epy-anatomy-pin.pin-right span{left:-28px!important;right:auto!important}
.epy-anatomy-pin:before{content:""!important;display:block!important;position:absolute!important;top:50%!important;width:24px!important;border-top:1px dotted var(--epy-primary)!important;opacity:.72!important}.epy-anatomy-pin.pin-left:before{right:-24px!important;left:auto!important}.epy-anatomy-pin.pin-right:before{left:-24px!important;right:auto!important}
.epy-anatomy-pin strong{display:block!important;color:var(--epy-ink)!important;font-size:.68rem!important;font-weight:950!important;white-space:normal!important;overflow-wrap:anywhere!important}.epy-anatomy-pin small{display:block!important;color:var(--epy-primary)!important;font-size:.61rem!important;font-weight:950!important;white-space:nowrap!important}
.epy-anatomy-pin:hover,.epy-anatomy-pin:focus-visible{z-index:40!important;transform:translate(24px,-50%) scale(1.04)!important;outline:2px solid rgba(181,15,186,.25)!important}.epy-anatomy-pin.pin-left:hover,.epy-anatomy-pin.pin-left:focus-visible{transform:translate(calc(-100% - 24px),-50%) scale(1.04)!important}
.epy-anatomy-pin.selected{background:linear-gradient(135deg,#fff7e6,#fff)!important;outline:2px solid var(--epy-gold)!important;box-shadow:0 10px 26px rgba(255,172,21,.24)!important}.epy-anatomy-pin.selected span{width:19px!important;height:19px!important;color:#fff!important;font-size:.75rem!important;background:var(--epy-gold)!important;box-shadow:0 0 0 4px #fff,0 8px 18px rgba(255,172,21,.35)!important}
.epy-anatomy-pin.epy-hotspot-hidden{display:grid!important}.epy-anatomy-pin[data-label-stacked="true"]{transition:top .16s ease,left .16s ease}
.epy-anatomy-left{max-height:780px;overflow:auto;padding-right:3px}.epy-anatomy-category{border-radius:14px!important}.epy-anatomy-category h3{font-size:.82rem!important;padding:9px 12px!important}.epy-anatomy-region-row{min-height:46px!important;padding:8px 10px!important;grid-template-columns:30px minmax(0,1fr) 24px!important}.epy-anatomy-row-text b{font-size:.88rem!important}.epy-anatomy-row-text small{font-size:.68rem!important}
.epy-anatomy-summary{top:84px!important}.epy-anatomy-bottom-trust{margin-top:20px!important}
@media(max-width:1350px){.epy-anatomy-shell{grid-template-columns:255px minmax(720px,1fr) 290px!important;gap:16px!important}.epy-anatomy-board{gap:34px!important}.epy-anatomy-pin{font-size:.62rem!important;min-width:62px!important;max-width:100px!important;padding:4px 6px!important}.epy-anatomy-pin strong{font-size:.62rem!important}.epy-anatomy-pin small{font-size:.56rem!important}}
@media(max-width:1120px){.epy-anatomy-shell{grid-template-columns:1fr!important}.epy-anatomy-left{max-height:none;grid-template-columns:repeat(2,minmax(0,1fr))!important}.epy-anatomy-summary{position:static!important}.epy-anatomy-board{max-width:900px!important}.epy-anatomy-bottom-trust{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:720px){.epy-anatomy-page{padding:14px!important}.epy-anatomy-title h1{font-size:2.35rem!important}.epy-anatomy-left,.epy-anatomy-board,.epy-anatomy-bottom-trust{grid-template-columns:1fr!important}.epy-anatomy-figure{min-height:560px!important}.epy-anatomy-figure>img{max-height:540px!important}.epy-anatomy-pin{max-width:98px!important}}

/* Checkpoint 18AV: home location, salon application media/device polish */
.epy-quick-home{max-width:1180px!important;padding-top:26px!important}
.epy-quick-search-card{display:grid!important;grid-template-columns:minmax(280px,.72fr) minmax(560px,1fr)!important;gap:28px!important;align-items:center!important;border-radius:34px!important;padding:32px!important;background:linear-gradient(135deg,#fff,#fff7fd)!important;box-shadow:0 20px 58px rgba(65,18,83,.08)!important}
.epy-quick-intro h1{font-size:clamp(2.6rem,4.3vw,4.45rem)!important;line-height:1!important;letter-spacing:-.065em!important;margin-bottom:14px!important}
.epy-quick-intro p{max-width:420px!important;font-weight:750!important;color:#6a5875!important}
.epy-quick-filter{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.epy-quick-tile,.epy-quick-price{min-height:110px!important;border-radius:20px!important;padding:18px!important;display:grid!important;grid-template-columns:52px minmax(0,1fr)!important;gap:14px!important;align-items:center!important;background:#fff!important;border:1px solid #ead8ef!important;box-shadow:0 10px 26px rgba(54,14,74,.055)!important;text-align:left!important}
.epy-quick-tile>span,.epy-quick-price>span{width:52px!important;height:52px!important;display:grid!important;place-items:center!important;border-radius:16px!important;background:#f5e7ff!important;font-size:1.45rem!important;color:var(--epy-primary)!important}
.epy-quick-tile b,.epy-quick-price b{font-size:1.08rem!important;line-height:1.15!important;margin:0!important;white-space:normal!important}
.epy-quick-tile small{font-size:.84rem!important;line-height:1.25!important;color:#705f7d!important;max-width:160px!important;display:block!important}
.epy-quick-submit{grid-column:1/-1!important;height:62px!important;border-radius:18px!important;font-size:1.28rem!important;background:linear-gradient(135deg,var(--epy-primary),#5c0ecf)!important}
.epy-location-dialog{width:min(92vw,560px)!important;border-radius:28px!important;padding:30px!important;box-shadow:0 28px 90px rgba(35,10,52,.25)!important}
.epy-location-dialog h2{font-size:2rem!important;letter-spacing:-.04em!important;margin:8px 0!important}.epy-location-dialog p{color:#695977!important;line-height:1.55!important;font-weight:650!important}.epy-location-current{display:grid!important;grid-template-columns:54px 1fr!important;gap:14px!important;align-items:center!important;width:100%!important;min-height:82px!important;border:1px solid #e8d4ef!important;border-radius:20px!important;background:linear-gradient(135deg,#fff,#fdf3ff)!important;text-align:left!important;padding:16px!important;cursor:pointer!important}.epy-location-current span{grid-row:1/3;width:54px;height:54px;display:grid;place-items:center;border-radius:17px;background:#f2e3ff;font-size:1.55rem}.epy-location-current b{font-size:1.06rem!important}.epy-location-current small{display:block;color:#7a6d86;font-weight:650}.epy-location-current.is-loading{opacity:.75}.epy-location-or{margin:18px 0 12px!important;text-align:center!important;color:#9a83a4!important;font-weight:850!important}.epy-location-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important}.epy-location-grid label{display:grid!important;gap:7px!important;font-weight:800!important}.epy-location-grid select{height:48px!important;border:1px solid #e3d1ea!important;border-radius:14px!important;padding:0 12px!important;background:#fff!important}.epy-location-status{margin-top:12px!important;border-radius:14px!important;padding:10px 12px!important;background:#f7f0fa!important;color:#5c4968!important;font-weight:750!important}.epy-location-status.is-success{background:#eafaf0!important;color:#16743f!important}.epy-location-status.is-warning{background:#fff8e7!important;color:#7b5b00!important}.epy-location-status.is-info{background:#eff5ff!important;color:#245681!important}.epy-location-actions{display:flex!important;justify-content:flex-end!important;gap:10px!important;margin-top:18px!important}
.epy-device-quantity-card>div{display:grid!important;gap:7px!important}.epy-device-quantity-control{display:inline-grid!important;grid-template-columns:auto 34px 58px 34px!important;gap:7px!important;align-items:center!important;margin-top:8px!important}.epy-device-quantity-control span{font-weight:850!important;color:#5a4266!important}.epy-device-quantity-control button{width:34px!important;height:34px!important;border:1px solid #d9bde3!important;border-radius:10px!important;background:#fff!important;color:var(--epy-primary)!important;font-weight:950!important;cursor:pointer!important}.epy-device-quantity-control input{height:34px!important;border:1px solid #d9bde3!important;border-radius:10px!important;text-align:center!important;font-weight:900!important}.epy-device-quantity-hint{color:#806e8b!important;font-size:.75rem!important}
.epy-application-media-guide{display:grid!important;gap:16px!important;border:1px solid #e8d6ef!important;border-radius:24px!important;padding:20px!important;background:linear-gradient(135deg,#fff,#fbf6ff)!important}.epy-application-media-guide>header{display:flex!important;justify-content:space-between!important;gap:16px!important;align-items:flex-start!important}.epy-application-media-guide h3{margin:.2rem 0!important;font-size:1.45rem!important}.epy-application-media-guide h4{font-size:1.08rem!important;margin:0 0 10px!important}.epy-media-slot-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}.epy-media-slot-grid label{position:relative!important;min-height:132px!important;border:1px solid #e4d4ec!important;border-radius:18px!important;background:#fff!important;padding:14px!important;display:grid!important;align-content:start!important;gap:5px!important;cursor:pointer!important}.epy-media-slot-grid label:hover{border-color:var(--epy-primary)!important;box-shadow:0 12px 28px rgba(181,15,186,.12)!important}.epy-media-slot-grid b{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--epy-primary);color:#fff;font-size:.78rem}.epy-media-slot-grid span{font-weight:950!important}.epy-media-slot-grid small{color:#7b6c86!important}.epy-media-slot-grid input{position:absolute;inset:0;opacity:0;cursor:pointer}
@media(max-width:980px){.epy-quick-search-card{grid-template-columns:1fr!important}.epy-quick-filter{grid-template-columns:1fr 1fr!important}.epy-media-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){.epy-quick-filter,.epy-location-grid,.epy-media-slot-grid{grid-template-columns:1fr!important}.epy-quick-search-card{padding:22px!important}.epy-quick-intro h1{font-size:2.4rem!important}}


/* Checkpoint 18AW: readable anatomy labels, clean assets, desktop/mobile balancing */
.epy-anatomy-board{grid-template-columns:minmax(420px,1fr) minmax(380px,.92fr)!important;gap:76px!important;max-width:1080px!important;overflow:visible!important}
.epy-anatomy-figure{background:linear-gradient(180deg,#fff,#fffafd)!important;overflow:visible!important}
.epy-anatomy-figure-front{padding-left:70px!important;padding-right:70px!important}
.epy-anatomy-figure-back{padding-left:52px!important;padding-right:52px!important}
.epy-anatomy-figure>img{max-height:660px!important;max-width:78%!important;object-fit:contain!important;object-position:center bottom!important}
.epy-anatomy-pin{min-width:74px!important;max-width:116px!important;padding:5px 7px!important;font-size:.66rem!important;line-height:1.05!important;border-radius:10px!important}
.epy-anatomy-pin strong{font-size:.66rem!important;line-height:1.05!important}
.epy-anatomy-pin small{font-size:.58rem!important;line-height:1!important}
.epy-anatomy-pin.pin-left{transform:translate(calc(-100% - 18px),-50%)!important}
.epy-anatomy-pin.pin-right{transform:translate(18px,-50%)!important}
.epy-anatomy-pin.pin-left:before{right:-18px!important;width:18px!important}
.epy-anatomy-pin.pin-right:before{left:-18px!important;width:18px!important}
.epy-anatomy-pin.pin-left span{right:-23px!important}
.epy-anatomy-pin.pin-right span{left:-23px!important}
.epy-anatomy-pin.selected{outline:2px solid #f4a51c!important}
.epy-anatomy-pin.selected span{width:20px!important;height:20px!important}
.epy-anatomy-pin.pin-left:hover,.epy-anatomy-pin.pin-left:focus-visible{transform:translate(calc(-100% - 18px),-50%) scale(1.035)!important}
.epy-anatomy-pin.pin-right:hover,.epy-anatomy-pin.pin-right:focus-visible{transform:translate(18px,-50%) scale(1.035)!important}
.epy-anatomy-pin[data-label-stacked="true"]{transition:top .12s ease,left .12s ease}
@media(max-width:1420px){
  .epy-anatomy-shell{grid-template-columns:260px minmax(760px,1fr) 300px!important}
  .epy-anatomy-board{gap:48px!important;max-width:980px!important}
  .epy-anatomy-pin{min-width:66px!important;max-width:100px!important;font-size:.6rem!important;padding:4px 6px!important}
  .epy-anatomy-pin strong{font-size:.6rem!important}.epy-anatomy-pin small{font-size:.54rem!important}
}
@media(max-width:1180px){
  .epy-anatomy-shell{grid-template-columns:1fr!important}
  .epy-anatomy-left{max-height:none!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .epy-anatomy-summary{position:static!important}
}
@media(max-width:760px){
  .epy-anatomy-title h1{font-size:2.2rem!important}
  .epy-anatomy-title p{font-size:.98rem!important}
  .epy-anatomy-center{display:none!important}
  .epy-anatomy-left{grid-template-columns:1fr!important}
  .epy-anatomy-summary{margin-top:14px!important}
  .epy-anatomy-bottom-trust{grid-template-columns:1fr!important}
}


/* Checkpoint 18AX: account booking highlight, session flow, application media polish */
.epy-account-nav .epy-account-nav-primary,
.epy-account-navigation .epy-account-nav-primary a{
  border:1px solid rgba(183,18,190,.25)!important;
  background:linear-gradient(135deg,#fff6ff,#f6e8ff)!important;
  color:#9d0fb5!important;
  font-weight:950!important;
  border-radius:16px!important;
  box-shadow:0 12px 28px rgba(166,30,190,.10);
}
.epy-account-nav .epy-account-nav-primary span,
.epy-account-navigation .epy-account-nav-primary span{margin-right:8px}
.epy-booking-actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}
.epy-booking-list-card .epy-booking-list-body h2 a{color:inherit;text-decoration:none}
.epy-booking-list-card .epy-booking-list-body h2 a:hover{color:var(--epy-primary)}
.epy-operation-region-list-readonly .epy-operation-region{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center}
.epy-operation-region-list-readonly .epy-operation-region input,
.epy-operation-region-list-readonly .epy-region-operation-check{display:none!important}
.epy-operation-region.is-visible{background:#fff;border:1px solid #eadcef;border-radius:16px;padding:12px 14px}
.epy-active-session-card{margin:18px 0}
.epy-panel-alert{margin:0 0 16px;display:flex;gap:10px;align-items:center;justify-content:space-between}
.epy-device-detail-workbench{margin-top:20px;padding:20px;border:1px solid #ead7f1;border-radius:22px;background:linear-gradient(180deg,#fff,#fff7ff)}
.epy-device-detail-workbench h3{margin:0;font-size:1.35rem;font-weight:950}
.epy-device-feature-grid{margin-top:18px}
.epy-device-feature-grid h4{font-size:1rem;font-weight:950;margin:0 0 10px}
.epy-device-feature-grid h4 small{font-weight:800;color:#8c7896}
.epy-device-feature-grid>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.epy-device-feature-grid label{display:grid;grid-template-columns:32px 1fr;gap:8px;align-items:center;border:1px solid #ead7f1;border-radius:12px;padding:8px;background:#fff}
.epy-device-feature-grid label span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#f6e8ff;color:#a40fb7;font-weight:950}
.epy-device-feature-grid input{border:0!important;box-shadow:none!important;padding:6px!important;min-height:32px!important}
.epy-application-media-guide-premium{border:1px solid #e5d4f2;border-radius:24px;background:#fff;box-shadow:0 16px 42px rgba(45,12,70,.07);padding:18px}
.epy-application-media-guide-premium>header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;border-bottom:1px solid #f0e6f5;padding-bottom:14px;margin-bottom:16px}
.epy-application-media-guide-premium>header h3{font-size:1.45rem;margin:3px 0;font-weight:950}
.epy-application-media-guide-premium>header b{border:1px solid #e2c9f5;border-radius:999px;padding:8px 13px;color:#8f10a5;background:#fbf2ff}
.epy-media-section{margin-top:16px;padding:16px;border:1px solid #eee3f5;border-radius:20px;background:linear-gradient(180deg,#fff,#fffafe)}
.epy-media-section-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}
.epy-media-section-head h4{font-size:1.18rem;margin:0;font-weight:950}.epy-media-section-head span{font-weight:800;color:#7d698d}
.epy-media-slot-grid-premium{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.epy-media-slot-grid-premium label{position:relative;min-height:190px;border:1px solid #e7d8ef;border-radius:16px;padding:13px;background:#fff;display:flex;flex-direction:column;gap:7px;box-shadow:0 8px 22px rgba(35,9,55,.05);cursor:pointer;overflow:hidden}
.epy-media-slot-grid-premium label b{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--epy-primary),#6d0c92);color:#fff;font-size:.78rem}
.epy-media-slot-grid-premium label strong{font-size:.9rem;color:var(--epy-ink);line-height:1.2}.epy-media-slot-grid-premium label small{font-size:.76rem;color:#7d6c88}
.epy-media-slot-grid-premium label i{margin-top:auto;display:inline-flex;justify-content:center;align-items:center;border:1px solid #d9b8e8;border-radius:12px;padding:9px 10px;color:#8f10a5;font-style:normal;font-weight:950;background:#fbf2ff}
.epy-media-slot-grid-premium input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}
.epy-media-trust-strip{margin-top:16px;border-radius:18px;background:linear-gradient(135deg,#f7e7ff,#fff7fa);border:1px solid #e5c8f2;padding:16px;display:grid;gap:4px}
.epy-media-trust-strip b{font-weight:950;color:#5c0871}
.epy-media-trust-strip span{color:#6f6078}
.epy-admin-lifecycle-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.08)}
@media(max-width:1100px){.epy-media-slot-grid-premium{grid-template-columns:repeat(3,minmax(0,1fr))}.epy-device-feature-grid>div{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  .epy-quick-trust{display:none!important}
  .epy-quick-home{padding-top:10px!important}
  .epy-quick-section-head{margin-top:10px}
  .epy-media-slot-grid-premium{grid-template-columns:1fr}
  .epy-device-feature-grid>div{grid-template-columns:1fr}
  .epy-application-media-guide-premium>header{display:grid}
  .epy-booking-actions{display:grid}
}


/* Checkpoint 18AY: exact salon application visual/document upload screen */
.epy-application-media-guide-premium{--epy-media-purple:var(--epy-primary);--epy-media-purple-dark:var(--epy-primary-dark);border:1px solid #e9dff2!important;border-radius:26px!important;background:#fff!important;box-shadow:0 18px 52px rgba(44,13,64,.08)!important;padding:18px!important;gap:0!important}
.epy-media-page-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;border-bottom:1px solid #f0e8f4!important;padding-bottom:16px!important;margin-bottom:16px!important}
.epy-media-page-title{display:flex!important;align-items:flex-start!important;gap:12px!important;min-width:0!important}.epy-media-back{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border-radius:50%!important;color:#3b2b52!important;background:#fff!important;border:1px solid #ebe1f3!important;font-size:1.45rem!important;font-weight:950!important;line-height:1!important}.epy-media-page-title h3{font-size:1.72rem!important;margin:2px 0 4px!important;letter-spacing:-.035em!important;font-weight:950!important;color:var(--epy-ink)!important}.epy-media-page-title p{margin:0!important;color:#74667e!important;line-height:1.55!important;font-weight:650!important}.epy-media-quality-note{display:flex!important;align-items:center!important;gap:10px!important;max-width:310px!important;border:1px solid #eadcf7!important;border-radius:16px!important;background:#fbf5ff!important;color:#6f19a8!important;padding:12px 14px!important;font-size:.82rem!important;font-weight:900!important}.epy-media-quality-note span{display:grid!important;place-items:center!important;width:26px!important;height:26px!important;border-radius:50%!important;border:2px solid #6f19d4!important;color:#6f19d4!important;font-weight:950!important;background:#fff!important;flex:0 0 auto!important}.epy-media-section{margin-top:16px!important;padding:16px!important;border:1px solid #eee6f4!important;border-radius:22px!important;background:linear-gradient(180deg,#fff,#fffdfd)!important;box-shadow:0 8px 24px rgba(43,12,65,.04)!important}.epy-media-section-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:14px!important;margin-bottom:14px!important}.epy-media-section-title-row{display:flex!important;align-items:flex-start!important;gap:12px!important;min-width:0!important}.epy-media-section-icon{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;border-radius:14px!important;background:#f5e9ff!important;color:#5d11c7!important;font-size:1.35rem!important;font-weight:950!important;border:1px solid #e1d2f5!important;flex:0 0 auto!important}.epy-media-section-title-row h4{font-size:1.24rem!important;line-height:1.15!important;margin:0 0 4px!important;font-weight:950!important;color:#1d1432!important}.epy-media-section-title-row p{margin:0!important;color:#74667d!important;font-size:.86rem!important;font-weight:650!important;line-height:1.45!important}.epy-media-counter{display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;border:1px solid #dac6ef!important;border-radius:13px!important;background:#fff!important;color:#5210c9!important;padding:10px 14px!important;font-size:.83rem!important;font-weight:950!important;box-shadow:0 6px 16px rgba(45,12,70,.04)!important}.epy-media-private-note{display:flex!important;align-items:center!important;gap:8px!important;border:1px solid #e5d7f4!important;border-radius:15px!important;background:#fbf6ff!important;color:#6c5890!important;padding:9px 12px!important;font-size:.74rem!important;font-weight:900!important;max-width:300px!important}.epy-media-private-note span{display:grid!important;place-items:center!important;width:24px!important;height:24px!important;border-radius:50%!important;background:#fff!important;color:#5b17d2!important;border:1px solid #dcc9f2!important}.epy-device-media-empty{border:1px dashed #d7c3e9!important;border-radius:16px!important;background:#fbf7ff!important;color:#735f86!important;padding:16px!important;font-weight:800!important}.epy-device-media-groups{display:grid!important;gap:16px!important}.epy-media-device-group{display:grid!important;gap:12px!important}.epy-media-device-group[hidden]{display:none!important}.epy-media-device-group-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;border:1px solid #eee4f6!important;border-radius:16px!important;background:#fbf8ff!important;padding:10px 12px!important}.epy-media-device-group-head b{display:block!important;font-size:1rem!important;color:#231633!important;font-weight:950!important}.epy-media-device-group-head small{display:block!important;color:#7a6a87!important;font-weight:700!important}.epy-media-device-group-head span{display:inline-flex!important;border-radius:999px!important;background:#fff!important;border:1px solid #dfcef1!important;padding:7px 10px!important;color:#6311c9!important;font-weight:950!important}.epy-media-slot-grid-premium{display:grid!important;gap:12px!important}.epy-media-slot-grid-six{grid-template-columns:repeat(6,minmax(0,1fr))!important}.epy-media-slot-grid-five{grid-template-columns:repeat(5,minmax(0,1fr))!important}.epy-media-slot-grid-premium .epy-media-slot{position:relative!important;min-height:0!important;border:1px solid #e9dfef!important;border-radius:17px!important;background:#fff!important;padding:12px!important;display:flex!important;flex-direction:column!important;gap:7px!important;box-shadow:0 10px 28px rgba(37,12,58,.05)!important;cursor:pointer!important;overflow:hidden!important;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease!important}.epy-media-slot-grid-premium .epy-media-slot:hover{border-color:#caaee3!important;box-shadow:0 16px 34px rgba(93,17,169,.1)!important;transform:translateY(-1px)!important}.epy-media-slot-grid-premium .epy-media-slot.is-uploaded{border-color:#9cd9bd!important;background:linear-gradient(180deg,#fff,#f7fffb)!important}.epy-media-slot-grid-premium .epy-media-slot> b{width:25px!important;height:25px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:linear-gradient(135deg,#3911c8,#7a10d9)!important;color:#fff!important;font-size:.72rem!important;font-weight:950!important;box-shadow:0 7px 16px rgba(73,17,177,.2)!important;z-index:1!important}.epy-media-slot-grid-premium .epy-media-slot strong{min-height:34px!important;font-size:.82rem!important;line-height:1.22!important;color:#211532!important;font-weight:950!important;z-index:1!important}.epy-media-slot-grid-premium .epy-media-slot small{min-height:34px!important;font-size:.72rem!important;line-height:1.35!important;color:#75677f!important;font-weight:650!important;z-index:1!important}.epy-doc-status{align-self:flex-start!important;border-radius:999px!important;padding:4px 8px!important;font-size:.66rem!important;font-weight:950!important;line-height:1!important}.epy-doc-status.is-required{background:#eafaf0!important;color:#128143!important}.epy-doc-status.is-optional{background:#f5effa!important;color:#7e6a91!important}.epy-media-preview{position:relative!important;display:grid!important;place-items:center!important;height:122px!important;border-radius:13px!important;border:1px solid #eee5f3!important;background:linear-gradient(135deg,#f8f2fb,#fff)!important;overflow:hidden!important;background-position:center!important;background-size:cover!important;color:#9a85aa!important;font-weight:950!important;font-size:.82rem!important;text-align:center!important}.epy-media-preview:before{content:""!important;position:absolute!important;inset:18px 22px!important;border-radius:12px!important;border:2px solid rgba(104,50,151,.18)!important;background:rgba(255,255,255,.42)!important}.epy-media-preview-device:after{content:""!important;position:absolute!important;left:50%!important;top:50%!important;width:46px!important;height:64px!important;border-radius:10px!important;transform:translate(-50%,-50%)!important;background:linear-gradient(180deg,#19162c,#443a5a)!important;box-shadow:inset 0 0 0 7px #2a2341!important}.epy-media-preview-salon:after{content:""!important;position:absolute!important;left:50%!important;top:50%!important;width:74px!important;height:54px!important;border-radius:10px 10px 5px 5px!important;transform:translate(-50%,-50%)!important;background:linear-gradient(180deg,#c89252,#f4d7a7)!important;box-shadow:inset 0 -16px 0 rgba(105,60,25,.18)!important}.epy-media-preview-document:after{content:""!important;position:absolute!important;left:50%!important;top:50%!important;width:64px!important;height:76px!important;border-radius:6px!important;transform:translate(-50%,-50%)!important;background:#fff!important;border:1px solid #ded4e8!important;box-shadow:inset 0 12px 0 #f2edf6,inset 0 26px 0 #fff,inset 0 30px 0 #ddd4e8!important}.epy-media-preview em{position:relative!important;z-index:1!important;font-style:normal!important;text-shadow:0 1px 0 rgba(255,255,255,.8)!important}.epy-media-preview.has-preview:before,.epy-media-preview.has-preview:after,.epy-media-preview.has-preview em{display:none!important}.epy-media-slot-grid-premium .epy-media-slot i{margin-top:auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;border:1px solid #d8c6eb!important;border-radius:12px!important;background:#fff!important;color:#5d16c9!important;min-height:38px!important;padding:8px 10px!important;font-size:.78rem!important;font-style:normal!important;font-weight:950!important;z-index:1!important}.epy-media-slot-grid-premium .epy-media-slot.is-uploaded i{border-color:#a8dfc4!important;background:#ecfff5!important;color:#0b8c4e!important}.epy-media-slot-grid-premium .epy-media-slot>[data-epy-media-file-name]{display:block!important;min-height:16px!important;color:#877494!important;font-size:.68rem!important;font-style:normal!important;font-weight:750!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;z-index:1!important}.epy-media-slot-grid-premium input[type=file],.epy-media-extra-upload input[type=file]{position:absolute!important;inset:0!important;opacity:0!important;cursor:pointer!important;width:100%!important;height:100%!important}.epy-media-assist-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(280px,.92fr)!important;gap:14px!important;margin-top:14px!important}.epy-media-extra-upload{position:relative!important;display:flex!important;align-items:center!important;gap:13px!important;min-height:74px!important;border:1px solid #e9ddf0!important;border-radius:16px!important;background:#fff!important;padding:14px 16px!important;cursor:pointer!important;overflow:hidden!important;box-shadow:0 8px 22px rgba(37,12,58,.04)!important}.epy-media-extra-upload>span{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border-radius:50%!important;border:2px solid #6b17da!important;color:#6b17da!important;font-size:1.15rem!important;font-weight:950!important;flex:0 0 auto!important}.epy-media-extra-upload b{display:block!important;color:#5a18a7!important;font-weight:950!important}.epy-media-extra-upload small{display:block!important;color:#74647e!important;font-size:.78rem!important;line-height:1.45!important;font-weight:650!important}.epy-media-extra-upload.is-uploaded{border-color:#a4dfc2!important;background:#f5fffa!important}.epy-media-tip{display:flex!important;align-items:center!important;gap:12px!important;border:1px solid #eee5f3!important;border-radius:16px!important;background:#fbf6ff!important;padding:14px 16px!important;color:#655374!important}.epy-media-tip>span{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;border-radius:14px!important;background:#fff!important;color:#6d17d4!important;font-size:1.4rem!important;border:1px solid #e5d5f3!important;flex:0 0 auto!important}.epy-media-tip b{display:block!important;color:#5b17b4!important;font-weight:950!important}.epy-media-tip small{display:block!important;font-weight:650!important;line-height:1.45!important}.epy-media-more-documents{margin-top:14px!important}.epy-media-more-documents>strong{margin-left:auto!important;display:grid!important;place-items:center!important;width:74px!important;height:54px!important;border-radius:14px!important;background:#d8b8ff!important;color:#5c16c9!important;font-size:1.4rem!important}.epy-media-trust-strip-premium{margin-top:16px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(280px,.82fr)!important;gap:16px!important;align-items:center!important;border:1px solid #e2d2f1!important;border-radius:18px!important;background:linear-gradient(135deg,#f8edff,#fff7ff)!important;padding:18px!important}.epy-media-trust-strip-premium>div{display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;gap:4px 14px!important;align-items:center!important}.epy-media-trust-strip-premium>div span{grid-row:1/3!important;display:grid!important;place-items:center!important;width:58px!important;height:58px!important;border-radius:18px!important;background:linear-gradient(135deg,#3c15cf,#7621e5)!important;color:#ffd34a!important;font-size:1.8rem!important}.epy-media-trust-strip-premium b{color:#5510a2!important;font-size:1.06rem!important;font-weight:950!important}.epy-media-trust-strip-premium small{color:#695974!important;line-height:1.5!important;font-weight:650!important}.epy-media-trust-strip-premium ul{margin:0!important;padding-left:20px!important;display:grid!important;gap:6px!important;color:#6d5790!important;font-weight:850!important}.epy-media-secure-footer{margin-top:14px!important;display:grid!important;grid-template-columns:34px minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;border-top:1px solid #efe6f4!important;padding-top:14px!important;color:#766684!important}.epy-media-secure-footer>span{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border-radius:10px!important;background:#f4e9ff!important;color:#6313cb!important}.epy-media-secure-footer small{font-weight:650!important;line-height:1.45!important}.epy-media-secure-footer b{display:inline-flex!important;border:1px solid #dfcdf2!important;border-radius:999px!important;background:#fff!important;color:#5d14c6!important;padding:8px 12px!important;font-size:.78rem!important;font-weight:950!important;white-space:nowrap!important}
@media(max-width:1320px){.epy-media-slot-grid-six{grid-template-columns:repeat(3,minmax(0,1fr))!important}.epy-media-slot-grid-five{grid-template-columns:repeat(3,minmax(0,1fr))!important}.epy-media-assist-grid,.epy-media-trust-strip-premium{grid-template-columns:1fr!important}.epy-media-quality-note,.epy-media-private-note{max-width:none!important}}
@media(max-width:820px){.epy-media-page-head,.epy-media-section-head{display:grid!important}.epy-media-slot-grid-six,.epy-media-slot-grid-five{grid-template-columns:repeat(2,minmax(0,1fr))!important}.epy-media-secure-footer{grid-template-columns:34px minmax(0,1fr)!important}.epy-media-secure-footer b{grid-column:1/-1!important;justify-content:center!important}.epy-media-more-documents>strong{display:none!important}}
@media(max-width:560px){.epy-application-media-guide-premium{padding:12px!important;border-radius:20px!important}.epy-media-section{padding:12px!important}.epy-media-slot-grid-six,.epy-media-slot-grid-five{grid-template-columns:1fr!important}.epy-media-page-title h3{font-size:1.35rem!important}.epy-media-preview{height:150px!important}.epy-media-trust-strip-premium>div{grid-template-columns:1fr!important}.epy-media-trust-strip-premium>div span{grid-row:auto!important}}

/* Checkpoint 18AZ - salon başvurusu cihaz detayları referans ekranı */
.epy-device-details-screen{padding:0!important;overflow:hidden!important;background:#fff!important;border-color:#efe3f3!important;box-shadow:0 18px 44px rgba(59,20,75,.075)!important}
.epy-device-details-header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:22px!important;padding:30px 34px 22px!important;border-bottom:1px solid #f1e7f5!important;background:linear-gradient(180deg,#fff,#fffbfe)!important}
.epy-device-details-header h2{margin:6px 0 6px!important;font-size:2rem!important;letter-spacing:-.045em!important;color:var(--epy-ink)!important;font-weight:950!important}
.epy-device-details-header p{margin:0!important;color:#71637b!important;font-weight:650!important;line-height:1.55!important}
.epy-device-details-note{display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;gap:2px 12px!important;align-items:center!important;min-width:min(440px,100%)!important;padding:16px 18px!important;border:1px solid #ddc8f1!important;border-radius:14px!important;background:linear-gradient(135deg,#fbf5ff,#fffaff)!important;color:#5b18b0!important;box-shadow:0 8px 24px rgba(93,18,169,.06)!important}
.epy-device-details-note span{grid-row:1/3!important;width:30px!important;height:30px!important;border-radius:50%!important;display:grid!important;place-items:center!important;border:2px solid #6915d7!important;color:#6915d7!important;font-weight:950!important;background:#fff!important}
.epy-device-details-note b{display:block!important;font-size:.9rem!important;font-weight:950!important;color:#5d17bd!important;line-height:1.35!important}
.epy-device-details-note small{display:block!important;color:#6e5b85!important;font-weight:750!important;line-height:1.4!important}
.epy-device-details-section{padding:26px 34px!important;border-bottom:1px solid #f3eaf5!important}
.epy-device-details-section:last-child{border-bottom:0!important}
.epy-device-section-heading{display:flex!important;justify-content:space-between!important;gap:16px!important;align-items:flex-start!important;margin-bottom:18px!important}
.epy-device-section-heading b{display:block!important;color:#1f1532!important;font-size:1.05rem!important;font-weight:950!important}
.epy-device-section-heading b small{font-weight:750!important;color:#7f728b!important}
.epy-device-section-heading small{display:block!important;margin-top:5px!important;color:#70627b!important;font-size:.86rem!important;font-weight:650!important;line-height:1.45!important}
.epy-device-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.epy-device-details-screen .epy-selection-card{border-radius:14px!important;border-color:#e7d9ee!important;background:#fff!important;box-shadow:0 8px 22px rgba(44,14,64,.04)!important}
.epy-device-details-screen .epy-selection-card:hover{border-color:#cfa7e2!important;box-shadow:0 12px 28px rgba(169,11,185,.09)!important}
.epy-device-info-section{padding-top:28px!important}
.epy-device-detail-form-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px 26px!important}
.epy-device-field{display:grid!important;gap:9px!important;font-weight:850!important;color:#342441!important;min-width:0!important}
.epy-device-field>span{font-size:.84rem!important;color:#564762!important;font-weight:950!important}
.epy-device-field input,.epy-device-field select,.epy-device-description-box textarea{width:100%!important;min-height:50px!important;border:1px solid #e3d7e9!important;border-radius:10px!important;background:#fff!important;padding:0 16px!important;color:#2a2038!important;outline:0!important;font:inherit!important;font-weight:750!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important;transition:border-color .16s ease,box-shadow .16s ease!important}
.epy-device-field input::placeholder,.epy-device-description-box textarea::placeholder{color:#91859b!important;font-weight:650!important}
.epy-device-field select{appearance:auto!important;cursor:pointer!important}
.epy-device-field input:focus,.epy-device-field select:focus,.epy-device-description-box textarea:focus{border-color:#8f12c7!important;box-shadow:0 0 0 4px rgba(169,11,185,.1)!important}
.epy-device-custom-field:not([hidden]){display:grid!important;animation:epyDeviceCustomIn .16s ease-out!important}
@keyframes epyDeviceCustomIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.epy-device-feature-grid-premium{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px 24px!important}
.epy-device-feature-slot{display:grid!important;grid-template-columns:32px minmax(0,1fr)!important;align-items:center!important;gap:12px!important;min-height:54px!important;border:1px solid #e4d8eb!important;border-radius:10px!important;background:#fff!important;padding:10px 12px!important;box-shadow:0 8px 18px rgba(37,12,58,.035)!important;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease!important}
.epy-device-feature-slot:focus-within{border-color:#9f18c8!important;box-shadow:0 0 0 4px rgba(169,11,185,.09)!important;background:#fffbff!important}
.epy-device-feature-slot span{display:grid!important;place-items:center!important;width:24px!important;height:24px!important;border-radius:6px!important;background:linear-gradient(135deg,#5f0fcf,#b20fc1)!important;color:#fff!important;font-size:.75rem!important;font-weight:950!important}
.epy-device-feature-slot input{width:100%!important;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;color:#40344c!important;font-weight:850!important;min-height:32px!important;padding:0!important}
.epy-device-feature-slot input::placeholder{color:#897b92!important;font-weight:750!important}
.epy-device-feature-help{display:block!important;margin-top:16px!important;color:#74667f!important;font-weight:750!important}
.epy-device-description-section{padding-bottom:34px!important}
.epy-device-description-box{position:relative!important;display:block!important}
.epy-device-description-box textarea{min-height:112px!important;resize:vertical!important;padding:18px 18px 28px!important;line-height:1.55!important}
.epy-device-description-box small{position:absolute!important;right:16px!important;bottom:10px!important;color:#9b8da4!important;font-weight:850!important;font-size:.78rem!important}
@media(max-width:1180px){.epy-device-details-header{align-items:flex-start!important;flex-direction:column!important}.epy-device-details-note{min-width:0!important;width:100%!important}.epy-device-detail-form-grid,.epy-device-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.epy-device-feature-grid-premium{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){.epy-device-details-header,.epy-device-details-section{padding-left:18px!important;padding-right:18px!important}.epy-device-detail-form-grid,.epy-device-choice-grid,.epy-device-feature-grid-premium{grid-template-columns:1fr!important}.epy-device-details-header h2{font-size:1.65rem!important}}

/* Checkpoint 18BA: production reservation region selection layout matching the approved reference */
.epy-anatomy-page{
  width:min(100%,1760px)!important;
  max-width:1760px!important;
  margin:0 auto!important;
  padding:18px 22px 30px!important;
  background:linear-gradient(180deg,#fff 0%,#fff 70%,#fff8ff 100%)!important;
  overflow-x:clip!important;
  color:var(--epy-ink)!important;
}
.epy-anatomy-page .epy-booking-stepper{display:none!important}
.epy-anatomy-hero-clean{
  display:grid!important;
  grid-template-columns:minmax(220px,280px) minmax(0,1fr) minmax(270px,390px)!important;
  align-items:center!important;
  gap:18px!important;
  margin:0 0 14px!important;
  text-align:initial!important;
}
.epy-anatomy-brand{
  display:grid!important;
  grid-template-columns:50px minmax(0,1fr)!important;
  column-gap:12px!important;
  align-items:center!important;
  color:#160047!important;
}
.epy-anatomy-logo{
  grid-row:1/3!important;
  display:grid!important;
  place-items:center!important;
  width:48px!important;
  height:48px!important;
  border:3px solid #2d0080!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#2d0080!important;
  font-size:1.25rem!important;
  font-weight:950!important;
  box-shadow:0 10px 22px rgba(45,0,128,.08)!important;
}
.epy-anatomy-brand strong{font-size:1.76rem!important;line-height:1!important;font-weight:950!important;letter-spacing:-.055em!important;color:#160047!important}
.epy-anatomy-brand small{font-size:.88rem!important;font-weight:800!important;color:#26164f!important;margin-top:3px!important}
.epy-anatomy-title{text-align:center!important;min-width:0!important}
.epy-anatomy-title .epy-anatomy-eyebrow{display:none!important}
.epy-anatomy-title h1{
  margin:0!important;
  color:#120039!important;
  text-transform:uppercase!important;
  font-size:clamp(3.45rem,5.35vw,5.65rem)!important;
  line-height:.86!important;
  font-weight:950!important;
  letter-spacing:-.055em!important;
}
.epy-anatomy-title p{margin:10px 0 0!important;color:#2b1d48!important;font-size:clamp(1.08rem,1.45vw,1.45rem)!important;font-weight:650!important}
.epy-anatomy-trust{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:start!important;
  text-align:center!important;
}
.epy-anatomy-trust span{display:grid!important;grid-template-columns:auto 1fr!important;grid-template-rows:auto auto!important;column-gap:8px!important;align-items:center!important;justify-items:start!important;color:#160047!important;font-size:.8rem!important;text-align:left!important}
.epy-anatomy-trust i{grid-row:1/3!important;font-style:normal!important;font-size:2.05rem!important;line-height:1!important;color:#2d0080!important;filter:saturate(1.1)!important}
.epy-anatomy-trust b{font-size:.98rem!important;line-height:1.05!important;font-weight:950!important;color:#160047!important}
.epy-anatomy-trust small{display:block!important;margin-top:2px!important;font-size:.74rem!important;line-height:1.2!important;color:#26164f!important;font-weight:700!important}
.epy-anatomy-shell{
  display:grid!important;
  grid-template-columns:clamp(235px,16vw,285px) minmax(0,1fr) clamp(285px,19vw,340px)!important;
  gap:18px!important;
  align-items:start!important;
  max-width:100%!important;
}
.epy-anatomy-left{display:grid!important;gap:12px!important;max-height:none!important;overflow:visible!important;padding-right:0!important}
.epy-anatomy-category{border-radius:12px!important;overflow:hidden!important;background:#fff!important;border:1px solid #e8d9ef!important;box-shadow:0 12px 30px rgba(39,4,70,.07)!important}
.epy-anatomy-category h3{padding:8px 12px!important;background:linear-gradient(135deg,#2d0080,#52006d)!important;color:#fff!important;font-size:.84rem!important;line-height:1!important;letter-spacing:.03em!important;text-align:center!important;font-weight:950!important}
.epy-anatomy-region-row{grid-template-columns:32px minmax(0,1fr) 24px!important;gap:8px!important;min-height:43px!important;padding:7px 10px!important;background:#fff!important;border-bottom:1px solid #efe3f4!important;cursor:pointer!important}
.epy-anatomy-row-icon{width:26px!important;height:26px!important;border-radius:9px!important;border:1px solid #ead8f0!important;color:#2d0080!important;background:#fff!important;font-size:1rem!important}
.epy-anatomy-row-text b{font-size:.9rem!important;line-height:1.1!important;color:#130038!important;font-weight:950!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important}
.epy-anatomy-row-text small{font-size:.68rem!important;color:#786985!important;font-weight:700!important}
.epy-anatomy-row-plus{width:22px!important;height:22px!important;border-radius:50%!important;border:1.5px solid #b000d4!important;color:#b000d4!important;background:#fff!important;font-size:.9rem!important;font-weight:950!important;line-height:1!important}
.epy-anatomy-region-row:hover,.epy-anatomy-region-row.selected{background:linear-gradient(90deg,#fff,#f8efff)!important}
.epy-anatomy-region-row.selected .epy-anatomy-row-plus{background:#b000d4!important;color:#fff!important}
.epy-anatomy-center{min-width:0!important;overflow:visible!important;padding:0!important}
.epy-anatomy-modebar{
  display:grid!important;
  grid-template-columns:1fr auto 1fr!important;
  align-items:center!important;
  gap:18px!important;
  max-width:980px!important;
  margin:0 auto 12px!important;
}
.epy-anatomy-view-chip{
  justify-self:center!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:132px!important;
  min-height:36px!important;
  padding:0 18px!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#2d0080,#5a00ad)!important;
  color:#fff!important;
  font-size:.8rem!important;
  font-weight:950!important;
  letter-spacing:.035em!important;
  box-shadow:0 10px 26px rgba(45,0,128,.18)!important;
}
.epy-anatomy-gender-switch{display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important}
.epy-anatomy-gender{
  min-width:128px!important;
  min-height:48px!important;
  border-radius:14px!important;
  border:1px solid #e8d9ef!important;
  background:#fff!important;
  color:#120039!important;
  box-shadow:0 9px 22px rgba(28,4,56,.10)!important;
  text-decoration:none!important;
  font-size:1.04rem!important;
  font-weight:950!important;
  text-transform:none!important;
}
.epy-anatomy-gender.active{background:linear-gradient(135deg,#2d0080,#6f00bf)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 12px 28px rgba(45,0,128,.22)!important}
.epy-anatomy-board{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:22px!important;
  width:100%!important;
  max-width:1040px!important;
  min-height:690px!important;
  margin:0 auto!important;
  overflow:visible!important;
  align-items:end!important;
  isolation:isolate!important;
}
.epy-anatomy-figure{
  position:relative!important;
  margin:0!important;
  min-height:680px!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  border:1px solid #eedff4!important;
  border-radius:28px!important;
  background:linear-gradient(180deg,#fff 0%,#fffafd 100%)!important;
  box-shadow:0 20px 52px rgba(44,4,74,.07)!important;
  overflow:hidden!important;
  padding:18px 32px 10px!important;
}
.epy-anatomy-figure>img{position:relative!important;z-index:1!important;max-height:646px!important;max-width:55%!important;width:auto!important;object-fit:contain!important;object-position:center bottom!important;filter:drop-shadow(0 13px 24px rgba(31,5,62,.08))!important;pointer-events:none!important;user-select:none!important}
.epy-anatomy-figure-back>img{max-width:58%!important}
.epy-anatomy-lines{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:2!important;pointer-events:none!important;overflow:visible!important}
.epy-anatomy-line{stroke:#2d0080!important;stroke-width:.16!important;stroke-dasharray:1.1 1.05!important;stroke-linecap:round!important;opacity:.6!important;vector-effect:non-scaling-stroke!important}
.epy-anatomy-line.selected{stroke:#b000d4!important;opacity:.9!important;stroke-width:.22!important}
.epy-anatomy-dot{position:absolute!important;z-index:4!important;width:8px!important;height:8px!important;margin:-4px 0 0 -4px!important;border-radius:50%!important;background:#2d0080!important;box-shadow:0 0 0 4px rgba(176,0,212,.13)!important;pointer-events:none!important}
.epy-anatomy-dot.selected{background:#f3a617!important;box-shadow:0 0 0 5px #fff,0 8px 17px rgba(243,166,23,.35)!important}
.epy-anatomy-pin{
  position:absolute!important;
  z-index:6!important;
  left:auto!important;
  top:auto!important;
  width:auto!important;
  height:auto!important;
  min-width:74px!important;
  max-width:132px!important;
  padding:7px 10px!important;
  border:1px solid #eee4f4!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#110039!important;
  box-shadow:0 8px 20px rgba(30,6,55,.13)!important;
  text-align:center!important;
  line-height:1.08!important;
  display:grid!important;
  gap:2px!important;
  transform:translateY(-50%)!important;
  opacity:1!important;
  visibility:visible!important;
  cursor:pointer!important;
  white-space:normal!important;
}
.epy-anatomy-pin.pin-left,.epy-anatomy-pin.pin-right{transform:translateY(-50%)!important}
.epy-anatomy-pin.pin-left:hover,.epy-anatomy-pin.pin-left:focus-visible,.epy-anatomy-pin.pin-right:hover,.epy-anatomy-pin.pin-right:focus-visible{transform:translateY(-50%) scale(1.035)!important;z-index:35!important;outline:2px solid rgba(176,0,212,.22)!important}
.epy-anatomy-pin:before{display:none!important;content:none!important}
.epy-anatomy-pin .epy-pin-state{display:none!important}
.epy-anatomy-pin strong{display:block!important;color:#110039!important;font-size:.74rem!important;font-weight:950!important;line-height:1.06!important;letter-spacing:-.01em!important;overflow-wrap:normal!important}
.epy-anatomy-pin small{display:block!important;color:#b000d4!important;font-size:.64rem!important;font-weight:950!important;line-height:1!important;white-space:nowrap!important}
.epy-anatomy-pin.selected{background:linear-gradient(135deg,#fff7e8,#fff)!important;border-color:#f3a617!important;outline:2px solid rgba(243,166,23,.42)!important;box-shadow:0 12px 26px rgba(243,166,23,.22)!important}
.epy-anatomy-pin.epy-hotspot-hidden{display:grid!important}
.epy-anatomy-feet{
  position:absolute!important;
  left:50%!important;
  bottom:14px!important;
  z-index:8!important;
  transform:translateX(-48%)!important;
  width:146px!important;
  height:126px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:2px solid #2d0080!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.88)!important;
  box-shadow:0 13px 28px rgba(45,0,128,.12)!important;
  overflow:visible!important;
  margin:0!important;
}
.epy-anatomy-feet>img{max-width:112px!important;max-height:104px!important;object-fit:contain!important;pointer-events:none!important}
.epy-anatomy-feet .epy-anatomy-pin{min-width:122px!important;max-width:160px!important;left:118%!important;top:50%!important;font-size:.72rem!important}
.epy-anatomy-feet .epy-anatomy-pin:after{content:""!important;position:absolute!important;left:-22px!important;top:50%!important;width:22px!important;border-top:1px dotted #2d0080!important;opacity:.65!important}
.epy-anatomy-summary{
  position:sticky!important;
  top:86px!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid #eaddee!important;
  box-shadow:0 18px 44px rgba(41,4,72,.10)!important;
}
.epy-anatomy-summary-head{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:14px 18px!important;background:linear-gradient(135deg,#2d0080,#52006d)!important;color:#fff!important}
.epy-anatomy-summary-head h2{margin:0!important;color:#fff!important;font-size:1rem!important;letter-spacing:.035em!important;font-weight:950!important}
.epy-anatomy-summary-head b{display:grid!important;place-items:center!important;min-width:32px!important;height:32px!important;border-radius:50%!important;background:#fff!important;color:#b000d4!important;font-size:1.15rem!important;font-weight:950!important}
.epy-anatomy-selected-regions{min-height:248px!important;padding:16px!important;display:grid!important;align-content:start!important;gap:0!important}
.epy-anatomy-empty{display:grid!important;place-items:center!important;align-self:center!important;text-align:center!important;gap:8px!important;color:#130038!important}
.epy-anatomy-empty span{font-size:3.75rem!important;color:#2d0080!important;line-height:1!important}
.epy-anatomy-empty b{font-size:1.08rem!important;font-weight:950!important}.epy-anatomy-empty small{max-width:210px!important;color:#6f627d!important;font-size:.88rem!important;line-height:1.35!important}
.epy-anatomy-selected-regions .epy-selected-chip{display:grid!important;grid-template-columns:minmax(0,1fr) auto 22px!important;gap:8px!important;align-items:center!important;width:100%!important;border:0!important;border-bottom:1px solid #eee5f3!important;border-radius:0!important;background:#fff!important;color:#130038!important;padding:12px 0!important;text-align:left!important;box-shadow:none!important;cursor:pointer!important}
.epy-anatomy-selected-regions .epy-selected-chip strong{font-size:.83rem!important;line-height:1.18!important;font-weight:950!important;color:#130038!important}
.epy-anatomy-selected-regions .epy-selected-chip b{font-size:.84rem!important;white-space:nowrap!important;color:#2d0080!important;font-weight:950!important}.epy-anatomy-selected-regions .epy-selected-chip span{font-size:1.1rem!important;color:#2d0080!important;text-align:right!important}
.epy-anatomy-metrics{padding:0 16px 12px!important}.epy-anatomy-metrics .epy-summary-line{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:13px 0!important;border-top:1px solid #eee5f3!important}.epy-anatomy-metrics .epy-summary-line span{font-weight:850!important;color:#130038!important}.epy-anatomy-metrics .epy-summary-line b{font-size:1.05rem!important;color:#130038!important}.epy-anatomy-metrics .epy-summary-line.total{display:block!important}.epy-anatomy-metrics .epy-summary-line.total span{display:block!important;margin-bottom:5px!important}.epy-anatomy-metrics .epy-summary-line.total b{font-size:2.12rem!important;color:#b000d4!important;line-height:1!important}
.epy-anatomy-summary .epy-policy-check{margin:0 16px 14px!important;border-color:#ead9f1!important;border-radius:14px!important}.epy-anatomy-summary .epy-btn-large{width:calc(100% - 32px)!important;margin:0 16px 14px!important;min-height:56px!important;border-radius:12px!important;background:linear-gradient(135deg,#2d0080,#7a00c8)!important;font-size:1.02rem!important;font-weight:950!important}.epy-anatomy-summary-note{margin:0 16px 18px!important;color:#26164f!important;font-size:.82rem!important;font-weight:750!important;line-height:1.45!important}
.epy-anatomy-bottom-trust{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;margin-top:18px!important}.epy-anatomy-bottom-trust>div{display:grid!important;grid-template-columns:56px minmax(0,1fr)!important;grid-template-rows:auto auto!important;align-items:center!important;column-gap:12px!important;min-height:76px!important;padding:14px 18px!important;border:1px solid #eaddee!important;border-radius:14px!important;background:#fff!important;box-shadow:0 12px 28px rgba(41,4,72,.06)!important;color:#130038!important}.epy-anatomy-bottom-trust>div:first-letter{font-size:2rem!important}.epy-anatomy-bottom-trust b{font-size:.95rem!important;font-weight:950!important;color:#2d0080!important}.epy-anatomy-bottom-trust span{font-size:.82rem!important;line-height:1.3!important;color:#26164f!important;font-weight:700!important}
@media(max-width:1540px){
  .epy-anatomy-page{padding-left:16px!important;padding-right:16px!important}
  .epy-anatomy-shell{grid-template-columns:250px minmax(0,1fr) 305px!important;gap:14px!important}
  .epy-anatomy-board{max-width:940px!important;gap:16px!important}
  .epy-anatomy-figure{min-height:640px!important;padding-left:22px!important;padding-right:22px!important}
  .epy-anatomy-figure>img{max-height:610px!important;max-width:52%!important}
  .epy-anatomy-pin{min-width:68px!important;max-width:116px!important;padding:6px 8px!important}.epy-anatomy-pin strong{font-size:.66rem!important}.epy-anatomy-pin small{font-size:.58rem!important}
}
@media(max-width:1280px){
  .epy-anatomy-hero-clean{grid-template-columns:1fr!important;text-align:center!important}.epy-anatomy-brand{justify-self:center!important}.epy-anatomy-trust{max-width:460px!important;justify-self:center!important;width:100%!important}.epy-anatomy-shell{grid-template-columns:1fr!important}.epy-anatomy-left{grid-template-columns:repeat(2,minmax(0,1fr))!important}.epy-anatomy-summary{position:static!important;top:0!important}.epy-anatomy-board{max-width:980px!important}.epy-anatomy-bottom-trust{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:780px){
  .epy-anatomy-page{padding:14px!important}.epy-anatomy-title h1{font-size:2.55rem!important}.epy-anatomy-title p{font-size:.98rem!important}.epy-anatomy-trust{grid-template-columns:1fr 1fr 1fr!important}.epy-anatomy-trust span{grid-template-columns:1fr!important;justify-items:center!important;text-align:center!important}.epy-anatomy-trust i{grid-row:auto!important}.epy-anatomy-left{grid-template-columns:1fr!important}.epy-anatomy-modebar{grid-template-columns:1fr!important}.epy-anatomy-board{grid-template-columns:1fr!important;min-height:0!important}.epy-anatomy-figure{min-height:560px!important}.epy-anatomy-figure>img{max-height:530px!important}.epy-anatomy-pin{max-width:104px!important}.epy-anatomy-feet{display:none!important}.epy-anatomy-bottom-trust{grid-template-columns:1fr!important}
}
.epy-anatomy-pin[style]{left:var(--label-x)!important;top:var(--label-y)!important}
.epy-anatomy-trust span:first-child{font-size:.8rem!important}

/* Checkpoint 18BB: mobile popup / modal hardening for the home location prompt and related Epiyum dialogs */
html.epy-location-modal-open,
html.epy-location-modal-open body,
body.epy-location-modal-open,
body.body-modal-open,
body.epy-modal-open{overflow:hidden!important;overscroll-behavior:contain!important}

.epy-location-modal[hidden]{display:none!important}
.epy-location-modal{position:fixed!important;inset:0!important;z-index:2147483000!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:24px!important;font-family:var(--epy-font,Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif)!important;color:var(--epy-ink,#18102f)!important}
.epy-location-backdrop{position:fixed!important;inset:0!important;background:rgba(17,8,28,.58)!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important}
.epy-location-dialog{position:relative!important;z-index:1!important;width:min(560px,calc(100vw - 32px))!important;max-height:min(88vh,calc(100dvh - 36px))!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important;border:1px solid #ead8ef!important;border-radius:30px!important;background:linear-gradient(150deg,#fff 0%,#fff 62%,#fff6fd 100%)!important;padding:28px!important;box-shadow:0 34px 100px rgba(22,6,34,.34)!important;color:var(--epy-ink,#18102f)!important;outline:0!important}
.epy-location-dialog:focus{outline:0!important}
.epy-location-handle{display:none!important}
.epy-location-close{position:absolute!important;right:16px!important;top:16px!important;z-index:2!important;width:40px!important;height:40px!important;display:grid!important;place-items:center!important;border:1px solid #ead8ef!important;border-radius:50%!important;background:#fff!important;color:#3b254a!important;font-size:1.35rem!important;line-height:1!important;box-shadow:0 10px 24px rgba(45,16,59,.08)!important;cursor:pointer!important}
.epy-location-close:hover{border-color:var(--epy-primary,#a90bb9)!important;color:var(--epy-primary,#a90bb9)!important;background:#fff8ff!important}
.epy-location-close:focus-visible,.epy-location-current:focus-visible,.epy-location-actions .epy-btn:focus-visible,.epy-location-grid select:focus-visible{outline:3px solid rgba(169,11,185,.22)!important;outline-offset:2px!important}
.epy-location-head{display:grid!important;gap:8px!important;padding-right:46px!important;margin:0 0 18px!important}
.epy-location-kicker{display:inline-flex!important;width:max-content!important;align-items:center!important;gap:7px!important;border-radius:999px!important;background:#f6e8ff!important;color:var(--epy-primary,#a90bb9)!important;padding:7px 10px!important;font-size:.74rem!important;line-height:1!important;font-weight:950!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.epy-location-kicker:before{content:"⌖";font-size:.9rem;line-height:1}
.epy-location-dialog h2{margin:0!important;color:var(--epy-ink,#18102f)!important;font-size:clamp(1.65rem,4.8vw,2.2rem)!important;line-height:1.05!important;letter-spacing:-.045em!important;font-weight:1000!important}
.epy-location-dialog p{margin:0!important;color:#66586f!important;font-size:1rem!important;line-height:1.5!important;font-weight:720!important}
.epy-location-current{appearance:none!important;-webkit-appearance:none!important;position:relative!important;width:100%!important;min-height:76px!important;height:auto!important;display:grid!important;grid-template-columns:54px minmax(0,1fr)!important;align-items:center!important;gap:14px!important;margin:0!important;padding:14px 16px!important;border:0!important;border-radius:22px!important;background:linear-gradient(135deg,var(--epy-primary,#a90bb9),#5c087e)!important;color:#fff!important;text-align:left!important;box-shadow:0 16px 38px rgba(169,11,185,.24)!important;cursor:pointer!important;overflow:hidden!important}
.epy-location-current:before{content:"";position:absolute;inset:auto -35px -48px auto;width:140px;height:140px;border-radius:50%;background:rgba(255,255,255,.13);pointer-events:none}
.epy-location-current:hover{transform:translateY(-1px)!important;box-shadow:0 20px 44px rgba(169,11,185,.3)!important}
.epy-location-current .epy-location-current-icon{grid-row:auto!important;width:54px!important;height:54px!important;display:grid!important;place-items:center!important;border-radius:18px!important;background:rgba(255,255,255,.18)!important;color:#fff!important;font-size:1.55rem!important;line-height:1!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)!important}
.epy-location-current .epy-location-current-copy{grid-row:auto!important;width:auto!important;height:auto!important;display:grid!important;place-items:initial!important;align-content:center!important;gap:4px!important;min-width:0!important;border-radius:0!important;background:transparent!important;color:inherit!important;font-size:inherit!important;line-height:1.2!important}
.epy-location-current .epy-location-current-copy b{display:block!important;margin:0!important;color:inherit!important;font-size:1.06rem!important;line-height:1.16!important;font-weight:1000!important;white-space:normal!important}
.epy-location-current .epy-location-current-copy small{display:block!important;margin:0!important;color:rgba(255,255,255,.82)!important;font-size:.84rem!important;line-height:1.25!important;font-weight:720!important;white-space:normal!important}
.epy-location-current.is-loading{opacity:.86!important;pointer-events:none!important}
.epy-location-or{display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;align-items:center!important;gap:12px!important;margin:18px 0 14px!important;color:#8c7a97!important;font-size:.9rem!important;line-height:1.2!important;font-weight:900!important;text-align:center!important}
.epy-location-or:before,.epy-location-or:after{content:""!important;display:block!important;height:1px!important;background:#ead8ef!important;min-width:0!important}
.epy-location-or span{display:inline-block!important;width:auto!important;height:auto!important;background:#fff!important;color:inherit!important;border-radius:999px!important;padding:0 4px!important;font-size:inherit!important;line-height:inherit!important}
.epy-location-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;margin:0!important}
.epy-location-grid label{display:grid!important;gap:7px!important;margin:0!important;color:var(--epy-ink,#18102f)!important;font-weight:900!important;font-size:.92rem!important;line-height:1.2!important}
.epy-location-grid label>span{display:block!important;color:var(--epy-ink,#18102f)!important;font-size:.92rem!important;font-weight:950!important;line-height:1.2!important}
.epy-location-grid select{width:100%!important;height:50px!important;border:1px solid #e5d3eb!important;border-radius:16px!important;background:#fff!important;color:var(--epy-ink,#18102f)!important;padding:0 42px 0 14px!important;font:inherit!important;font-size:.95rem!important;font-weight:850!important;box-shadow:0 8px 20px rgba(48,18,60,.035)!important;outline:0!important}
.epy-location-grid select:disabled{background:#faf7fb!important;color:#8b8291!important;opacity:1!important}
.epy-location-dialog .epy-location-status{display:block!important;min-height:0!important;margin:14px 0 0!important;border:1px solid #ead8ef!important;border-radius:16px!important;padding:12px 14px!important;background:#f8f2fb!important;color:#5b4a66!important;font-size:.9rem!important;font-weight:820!important;line-height:1.35!important}
.epy-location-dialog .epy-location-status:empty{display:none!important}
.epy-location-dialog .epy-location-status.is-success{border-color:#bce7cb!important;background:#eafaf0!important;color:#16743f!important}
.epy-location-dialog .epy-location-status.is-warning{border-color:#f1d087!important;background:#fff8e7!important;color:#7b5b00!important}
.epy-location-dialog .epy-location-status.is-info{border-color:#d7e5ff!important;background:#eff5ff!important;color:#245681!important}
.epy-location-actions{display:grid!important;grid-template-columns:auto auto!important;justify-content:end!important;gap:10px!important;margin:18px 0 0!important}
.epy-location-actions .epy-btn{min-height:48px!important;border-radius:15px!important;padding:.8rem 1.2rem!important;font-size:.96rem!important;font-weight:950!important;white-space:nowrap!important}

.epy-modal[hidden]{display:none!important}
.epy-modal{z-index:2147482000!important;padding:20px!important}
.epy-modal-backdrop{position:fixed!important;inset:0!important;background:rgba(17,8,28,.62)!important;backdrop-filter:blur(7px)!important;-webkit-backdrop-filter:blur(7px)!important}
.epy-modal-dialog{width:min(720px,calc(100vw - 32px))!important;max-height:calc(100dvh - 36px)!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important;border:1px solid var(--epy-border,#eadbed)!important;border-radius:26px!important;padding:28px!important;color:var(--epy-ink,#18102f)!important}
.epy-modal-close{z-index:2!important;display:grid!important;place-items:center!important;color:var(--epy-ink,#18102f)!important}

@media(max-width:700px){
  .epy-quick-home{padding:16px 14px 30px!important;max-width:100%!important;overflow-x:hidden!important}
  .epy-quick-search-card{grid-template-columns:1fr!important;border-radius:26px!important;padding:20px!important;gap:18px!important}
  .epy-quick-intro h1{font-size:clamp(2.05rem,10vw,2.75rem)!important;line-height:1.02!important}
  .epy-quick-intro p{font-size:.96rem!important;line-height:1.45!important}
  .epy-quick-filter{grid-template-columns:1fr!important;gap:10px!important}
  .epy-quick-tile,.epy-quick-price{min-height:82px!important;border-radius:18px!important;padding:14px!important;grid-template-columns:48px minmax(0,1fr)!important}
  .epy-quick-tile>span,.epy-quick-price>span{width:48px!important;height:48px!important}
  .epy-quick-tile b,.epy-quick-price b{font-size:1rem!important}
  .epy-quick-tile small{font-size:.78rem!important;max-width:none!important}
  .epy-quick-trust{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .epy-quick-trust div{min-height:52px!important;padding:10px!important;font-size:.78rem!important;text-align:center!important}
  .epy-quick-section-head{align-items:flex-start!important;flex-direction:column!important;gap:8px!important}
  .epy-quick-salon-card{grid-template-columns:96px minmax(0,1fr)!important;gap:10px!important;border-radius:18px!important}
  .epy-quick-salon-img{height:104px!important}
  .epy-quick-salon-action{grid-column:1/-1!important;grid-template-columns:1fr 1fr!important;justify-items:stretch!important;align-items:center!important}
  .epy-quick-salon-action small,.epy-quick-salon-action b{grid-column:1/-1!important;text-align:left!important}
  .epy-quick-salon-action a{min-width:0!important;width:100%!important}
}

@media(max-width:640px){
  .epy-location-modal{align-items:flex-end!important;justify-content:center!important;padding:0!important}
  .epy-location-dialog{width:100%!important;max-width:100%!important;max-height:calc(100dvh - max(12px,env(safe-area-inset-top)))!important;border-right:0!important;border-bottom:0!important;border-left:0!important;border-radius:28px 28px 0 0!important;padding:18px 18px calc(18px + env(safe-area-inset-bottom))!important;box-shadow:0 -20px 70px rgba(22,6,34,.28)!important}
  .epy-location-handle{display:block!important;width:44px!important;height:5px!important;border-radius:999px!important;background:#e1d1e8!important;margin:0 auto 14px!important}
  .epy-location-close{right:14px!important;top:14px!important;width:38px!important;height:38px!important;font-size:1.25rem!important}
  .epy-location-head{padding-right:44px!important;gap:7px!important;margin-bottom:15px!important}
  .epy-location-kicker{font-size:.68rem!important;padding:6px 9px!important}
  .epy-location-dialog h2{font-size:clamp(1.55rem,7.4vw,2rem)!important;line-height:1.08!important;letter-spacing:-.04em!important}
  .epy-location-dialog p{font-size:.94rem!important;line-height:1.42!important;font-weight:690!important}
  .epy-location-current{grid-template-columns:48px minmax(0,1fr)!important;min-height:72px!important;border-radius:20px!important;padding:12px 14px!important;gap:12px!important}
  .epy-location-current .epy-location-current-icon{width:48px!important;height:48px!important;border-radius:16px!important;font-size:1.35rem!important}
  .epy-location-current .epy-location-current-copy b{font-size:.98rem!important;line-height:1.18!important}
  .epy-location-current .epy-location-current-copy small{font-size:.76rem!important;line-height:1.2!important}
  .epy-location-or{margin:14px 0 12px!important;font-size:.82rem!important;gap:9px!important}
  .epy-location-grid{grid-template-columns:1fr!important;gap:11px!important}
  .epy-location-grid label,.epy-location-grid label>span{font-size:.9rem!important}
  .epy-location-grid select{height:50px!important;border-radius:16px!important;font-size:.94rem!important}
  .epy-location-dialog .epy-location-status{margin-top:12px!important;padding:10px 12px!important;border-radius:15px!important;font-size:.82rem!important;line-height:1.32!important}
  .epy-location-actions{grid-template-columns:1fr 1fr!important;gap:10px!important;position:sticky!important;bottom:0!important;background:linear-gradient(180deg,rgba(255,255,255,0),#fff 24%)!important;padding-top:14px!important;margin-top:12px!important}
  .epy-location-actions .epy-btn{width:100%!important;min-height:50px!important;padding:.75rem .85rem!important;font-size:.9rem!important;border-radius:16px!important}
  .epy-modal{padding:12px!important;align-items:end!important;place-items:end center!important}
  .epy-modal-dialog{width:100%!important;max-height:calc(100dvh - 24px)!important;border-radius:24px 24px 0 0!important;padding:22px 18px calc(18px + env(safe-area-inset-bottom))!important}
  .epy-modal-close{right:12px!important;top:12px!important;width:38px!important;height:38px!important}
  .epy-modal-device{grid-template-columns:1fr!important;gap:16px!important}
  .epy-modal-device img{height:190px!important}
  .epy-consent-modal-actions,.epy-step-alert-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .epy-consent-modal-actions .epy-btn,.epy-step-alert-actions .epy-btn{width:100%!important}
}


/* Checkpoint 18BC: first-load location prompt removal polish + clean production region map */
.epy-location-modal--premium .epy-location-head p strong{font-weight:950!important;color:var(--epy-ink,#18102f)!important}
.epy-location-modal--premium .epy-location-current{background:linear-gradient(135deg,#fff,#fbf2ff)!important;color:var(--epy-ink,#18102f)!important;border:1px solid #e6d4ee!important;box-shadow:0 14px 34px rgba(55,18,77,.10)!important}
.epy-location-modal--premium .epy-location-current:before{background:rgba(176,0,212,.08)!important}
.epy-location-modal--premium .epy-location-current .epy-location-current-icon{background:linear-gradient(135deg,var(--epy-primary,#a90bb9),#5c087e)!important;color:#fff!important;box-shadow:0 10px 22px rgba(169,11,185,.20)!important}
.epy-location-modal--premium .epy-location-current .epy-location-current-copy b{color:var(--epy-ink,#18102f)!important}
.epy-location-modal--premium .epy-location-current .epy-location-current-copy small{color:#73637d!important}
.epy-location-modal--premium .epy-location-current:hover{box-shadow:0 18px 40px rgba(55,18,77,.14)!important}
.epy-location-modal--premium .epy-location-status:empty{display:none!important}

@media(min-width:1024px){
  .epy-anatomy-page{padding-top:104px!important}
}
.epy-anatomy-page[data-epy-region-version="18.82.0"]{overflow-x:hidden!important;background:#fff!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-hero-clean{margin-bottom:18px!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-shell{
  grid-template-columns:minmax(248px,286px) minmax(760px,1fr) minmax(328px,360px)!important;
  gap:26px!important;
  align-items:start!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-modebar{max-width:930px!important;margin-bottom:16px!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-board{
  display:grid!important;
  grid-template-columns:minmax(330px,390px) minmax(310px,370px)!important;
  justify-content:center!important;
  align-items:end!important;
  gap:94px!important;
  max-width:920px!important;
  min-height:auto!important;
  overflow:visible!important;
  padding:0 8px!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-figure{
  position:relative!important;
  display:block!important;
  width:min(100%,382px)!important;
  aspect-ratio:480/900!important;
  min-height:0!important;
  height:auto!important;
  margin:0 auto!important;
  padding:0!important;
  overflow:visible!important;
  border-radius:28px!important;
  background:linear-gradient(180deg,#fff,#fffaff)!important;
  border:1px solid #efe1f3!important;
  box-shadow:0 18px 48px rgba(45,9,70,.075)!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-figure>img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  filter:drop-shadow(0 18px 22px rgba(35,10,60,.10))!important;
  pointer-events:none!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-lines{z-index:3!important;overflow:visible!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-line{
  stroke:#2d0080!important;
  stroke-width:1.05px!important;
  stroke-dasharray:3 3!important;
  stroke-linecap:round!important;
  opacity:.56!important;
  vector-effect:non-scaling-stroke!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-line.selected{stroke:#b000d4!important;opacity:.92!important;stroke-width:1.35px!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-dot{
  z-index:5!important;
  width:8px!important;
  height:8px!important;
  margin:-4px 0 0 -4px!important;
  background:#2d0080!important;
  box-shadow:0 0 0 4px rgba(176,0,212,.14)!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-dot.selected{background:#f2a617!important;box-shadow:0 0 0 5px #fff,0 9px 18px rgba(242,166,23,.32)!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin{
  z-index:8!important;
  min-width:86px!important;
  max-width:132px!important;
  padding:7px 10px!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#140039!important;
  border:1px solid rgba(232,217,239,.8)!important;
  box-shadow:0 10px 24px rgba(24,6,47,.14)!important;
  font-size:.75rem!important;
  line-height:1.08!important;
  text-align:center!important;
  transform:translateY(-50%)!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.pin-left,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.pin-right{transform:translateY(-50%)!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin:before{display:none!important;content:none!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin strong{display:block!important;font-size:.75rem!important;line-height:1.08!important;font-weight:950!important;color:#120039!important;white-space:normal!important;overflow-wrap:normal!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin small{display:block!important;margin-top:2px!important;font-size:.64rem!important;line-height:1!important;font-weight:950!important;color:#b000d4!important;white-space:nowrap!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin .epy-pin-state{
  display:none!important;
  position:absolute!important;
  right:-9px!important;
  top:50%!important;
  width:20px!important;
  height:20px!important;
  transform:translateY(-50%)!important;
  border-radius:999px!important;
  place-items:center!important;
  background:#f2a617!important;
  color:#fff!important;
  font-size:.78rem!important;
  font-weight:1000!important;
  box-shadow:0 0 0 4px #fff,0 8px 18px rgba(242,166,23,.32)!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.selected{outline:2px solid #f2a617!important;background:linear-gradient(135deg,#fffaf0,#fff)!important;box-shadow:0 12px 28px rgba(242,166,23,.22)!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.selected .epy-pin-state{display:grid!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin:hover,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin:focus-visible{z-index:35!important;outline:2px solid rgba(176,0,212,.22)!important;transform:translateY(-50%) scale(1.035)!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-feet{display:none!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-summary{min-width:0!important;border-radius:18px!important;box-shadow:0 16px 40px rgba(45,9,70,.09)!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-selected-regions{min-height:210px!important;max-height:260px!important;overflow:auto!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-metrics .epy-summary-line{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-metrics .epy-summary-line b{white-space:nowrap!important;text-align:right!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-metrics .epy-summary-line.total b{font-size:1.82rem!important}

@media(max-width:1480px){
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-shell{grid-template-columns:minmax(232px,260px) minmax(690px,1fr) minmax(300px,326px)!important;gap:18px!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-board{grid-template-columns:minmax(302px,350px) minmax(292px,332px)!important;gap:74px!important;max-width:810px!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin{min-width:76px!important;max-width:116px!important;font-size:.68rem!important;padding:6px 8px!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin strong{font-size:.68rem!important}.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin small{font-size:.58rem!important}
}
@media(max-width:1180px){
  .epy-anatomy-page{padding-top:18px!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-shell{grid-template-columns:1fr!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-left{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-board{max-width:820px!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-summary{position:static!important}
}
@media(max-width:760px){
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-hero-clean{display:block!important;text-align:center!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-brand,.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-trust{display:none!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-title h1{font-size:2.35rem!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-center{display:none!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-left{grid-template-columns:1fr!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-selected-regions{max-height:none!important}
}


/* Checkpoint 18BE: polished realistic extracted mannequins and label-only anatomy pins */
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-board{
  max-width:1088px!important;
  gap:70px!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-figure{
  background:linear-gradient(180deg,#fff 0%,#fffaff 100%)!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-figure>img{
  object-fit:contain!important;
  object-position:center bottom!important;
  filter:drop-shadow(0 16px 22px rgba(33,9,58,.10))!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin{
  min-width:72px!important;
  max-width:124px!important;
  padding:7px 10px!important;
  border-radius:11px!important;
  line-height:1.08!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin strong{
  font-size:.74rem!important;
  line-height:1.08!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin small{
  display:none!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-line{
  stroke-width:.88px!important;
  stroke-dasharray:2.4 2.8!important;
  opacity:.46!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-line.selected{
  stroke-width:1.1px!important;
  opacity:.82!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-dot{
  width:7px!important;
  height:7px!important;
  margin:-3.5px 0 0 -3.5px!important;
}
@media(max-width:1480px){
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-board{gap:58px!important;max-width:875px!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin{min-width:66px!important;max-width:108px!important;padding:6px 8px!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin strong{font-size:.66rem!important}
}


/* Checkpoint 18BE — polished anatomy mannequin assets */
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-figure>img{
  image-rendering:auto!important;
  filter:drop-shadow(0 18px 22px rgba(35,10,60,.09)) saturate(.98) contrast(.99)!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin small,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin .epy-region-price,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin [data-price]{
  display:none!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-line{
  stroke-width:.9px!important;
  opacity:.42!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-line.selected{
  stroke-width:1.2px!important;
  opacity:.82!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-dot{
  width:7px!important;
  height:7px!important;
  margin:-3.5px 0 0 -3.5px!important;
}


/* Checkpoint 18BG: anatomy pins no price, no popup hover; only background-state feedback */
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin small,.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin .epy-region-price,.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin [data-price]{display:none!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin .epy-pin-state{display:none!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin,.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.pin-left,.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.pin-right{transform:translateY(-50%)!important;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease!important;min-width:74px!important;max-width:126px!important;padding:7px 10px!important;border-radius:12px!important;background:#fff!important;border:1px solid rgba(219,201,230,.95)!important;box-shadow:0 10px 24px rgba(28,10,52,.12)!important;color:#1b0a38!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin strong{display:block!important;font-size:.74rem!important;line-height:1.08!important;font-weight:950!important;color:inherit!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin:hover,.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin:focus-visible{z-index:35!important;transform:translateY(-50%)!important;outline:none!important;background:linear-gradient(180deg,#fbf5ff 0%,#f3e8fb 100%)!important;border-color:rgba(142,53,206,.55)!important;box-shadow:0 12px 28px rgba(112,35,163,.18)!important;color:#4f0f7c!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.selected{transform:translateY(-50%)!important;outline:none!important;background:linear-gradient(135deg,#7b22c9 0%,#a90bb9 100%)!important;border-color:#7d1fc7!important;box-shadow:0 14px 30px rgba(112,35,163,.28)!important;color:#fff!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.selected:hover,.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.selected:focus-visible{transform:translateY(-50%)!important;outline:none!important;background:linear-gradient(135deg,#6d1fb0 0%,#980aa7 100%)!important;border-color:#6d1fb0!important;box-shadow:0 16px 32px rgba(112,35,163,.32)!important;color:#fff!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-dot{transition:background-color .18s ease, box-shadow .18s ease!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-dot.selected{background:#a90bb9!important;box-shadow:0 0 0 3px rgba(169,11,185,.16)!important}


/* Checkpoint 18BH: restore original Epiyum region colors, use high-resolution uploaded models, and reduce label collision */
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-category h3,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-view-chip,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-gender.active,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-summary-head{
  background:linear-gradient(135deg,var(--epy-primary),var(--epy-ink))!important;
  color:#fff!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-board{max-width:1088px!important;gap:86px!important;align-items:end!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-figure{background:linear-gradient(180deg,#fff 0%,#fffaff 100%)!important;overflow:visible!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-figure>img{
  max-height:705px!important;
  max-width:74%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  image-rendering:auto!important;
  filter:drop-shadow(0 18px 22px rgba(35,10,60,.09))!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin{
  min-width:74px!important;
  max-width:128px!important;
  padding:7px 10px!important;
  border-radius:12px!important;
  background:#fff!important;
  border:1px solid rgba(219,201,230,.95)!important;
  color:var(--epy-ink)!important;
  box-shadow:0 10px 24px rgba(28,10,52,.12)!important;
  transform:translateY(-50%)!important;
  transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.pin-left,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.pin-right{transform:translateY(-50%)!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin:hover,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin:focus-visible{
  transform:translateY(-50%)!important;
  outline:none!important;
  background:var(--epy-soft)!important;
  border-color:rgba(169,11,185,.45)!important;
  color:var(--epy-primary)!important;
  box-shadow:0 12px 28px rgba(169,11,185,.15)!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.selected,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.selected:hover,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.selected:focus-visible{
  transform:translateY(-50%)!important;
  outline:none!important;
  background:linear-gradient(135deg,var(--epy-primary),var(--epy-primary-dark))!important;
  border-color:var(--epy-primary)!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(169,11,185,.25)!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin .epy-pin-state,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin small,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin .epy-region-price,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin [data-price]{display:none!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin strong{font-size:.74rem!important;line-height:1.08!important;font-weight:950!important;color:inherit!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-line{stroke:var(--epy-primary)!important;stroke-width:.9px!important;stroke-dasharray:2.4 2.8!important;opacity:.42!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-line.selected{stroke-width:1.2px!important;opacity:.82!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-dot{background:var(--epy-primary)!important;width:7px!important;height:7px!important;margin:-3.5px 0 0 -3.5px!important;box-shadow:0 0 0 3px rgba(169,11,185,.16)!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-dot.selected{background:var(--epy-primary)!important;box-shadow:0 0 0 4px rgba(169,11,185,.22)!important}
@media(max-width:1480px){
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-board{gap:64px!important;max-width:900px!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-figure>img{max-height:660px!important;max-width:76%!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin{min-width:66px!important;max-width:112px!important;padding:6px 8px!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin strong{font-size:.66rem!important}
}


/* Checkpoint 18BI: automatic professional anatomy label layout and selected-hover text fix */
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-category h3,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-view-chip,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-gender.active,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-summary-head{
  background:linear-gradient(135deg,var(--epy-primary),var(--epy-ink))!important;
  color:#fff!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.pin-left,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.pin-right{
  transform:translateY(-50%)!important;
  min-width:74px!important;
  max-width:132px!important;
  min-height:30px!important;
  padding:7px 10px!important;
  display:inline-grid!important;
  place-items:center!important;
  border-radius:12px!important;
  background:#fff!important;
  border:1px solid rgba(219,201,230,.95)!important;
  color:var(--epy-ink)!important;
  box-shadow:0 10px 24px rgba(28,10,52,.12)!important;
  transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease!important;
  overflow:visible!important;
  white-space:normal!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin strong{
  display:block!important;
  color:inherit!important;
  opacity:1!important;
  visibility:visible!important;
  font-size:.72rem!important;
  line-height:1.08!important;
  font-weight:950!important;
  text-align:center!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin:hover,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin:focus-visible{
  transform:translateY(-50%)!important;
  outline:none!important;
  background:var(--epy-soft)!important;
  border-color:rgba(169,11,185,.45)!important;
  color:var(--epy-primary)!important;
  box-shadow:0 12px 28px rgba(169,11,185,.15)!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.selected,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.selected:hover,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.selected:focus-visible{
  transform:translateY(-50%)!important;
  outline:none!important;
  background:linear-gradient(135deg,var(--epy-primary),var(--epy-primary-dark))!important;
  border-color:var(--epy-primary)!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(169,11,185,.25)!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.selected strong,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.selected:hover strong,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin.selected:focus-visible strong{
  color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin .epy-pin-state,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin small,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin .epy-region-price,
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin [data-price]{display:none!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-line{
  stroke:var(--epy-primary)!important;
  stroke-width:.9px!important;
  stroke-dasharray:2.4 2.8!important;
  opacity:.42!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-line.selected{stroke-width:1.2px!important;opacity:.82!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-dot{background:var(--epy-primary)!important;width:7px!important;height:7px!important;margin:-3.5px 0 0 -3.5px!important;box-shadow:0 0 0 3px rgba(169,11,185,.16)!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-dot.selected{background:var(--epy-primary)!important;box-shadow:0 0 0 4px rgba(169,11,185,.22)!important}
@media(max-width:1480px){
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin{min-width:66px!important;max-width:116px!important;padding:6px 8px!important}
  .epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin strong{font-size:.66rem!important}
}


/* Checkpoint 18BJ: exact admin coordinate sync. Dots use saved hotspot X/Y; auto layout may move labels only. */
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-dot{position:absolute!important;z-index:8!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-pin{z-index:12!important}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-line{pointer-events:none!important}


/* Checkpoint 18BK: coordinates are synchronized to the rendered mannequin image box */
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-figure{
  position:relative!important;
  overflow:visible!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-figure>img{
  display:block!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-dot{
  z-index:8!important;
}
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-line{
  vector-effect:non-scaling-stroke;
}


/* Checkpoint 18BL: public dots are recalculated after model image load to match admin image-space coordinates */
.epy-anatomy-page[data-epy-region-version="18.82.0"] .epy-anatomy-dot{will-change:left,top}


/* Checkpoint 18BM: premium salons list page without right-side map */
.ep-ref-salons-page[data-epy-salons-version="18.82.0"]{
  --es-primary:#b20aaa;
  --es-primary-dark:#381047;
  --es-gold:#f7b22c;
  background:linear-gradient(180deg,#fff 0%,#fff7fe 42%,#fff 100%)!important;
}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .rich-search{padding:30px 0 16px!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .search-board{
  grid-template-columns:minmax(260px,.85fr) minmax(0,1.75fr) auto!important;
  gap:24px!important;
  padding:24px 28px!important;
  border:1px solid #eed9f0!important;
  border-radius:26px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 20px 60px rgba(70,20,80,.08)!important;
  backdrop-filter:blur(8px);
}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .ep-ref-search-heading h1,
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .search-board h1{
  font-size:clamp(1.8rem,2.2vw,2.6rem)!important;
  line-height:.98!important;
  letter-spacing:-.055em!important;
  color:#1b1034!important;
}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .ep-ref-search-heading p{font-size:.92rem!important;line-height:1.55!important;color:#6f637b!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .search-fields{grid-template-columns:1.25fr .85fr .9fr 1fr!important;gap:12px!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .search-field label{font-size:.77rem!important;font-weight:900!important;color:#403050!important;margin-bottom:7px!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .field-box{min-height:50px!important;border-radius:16px!important;background:#fff!important;border:1px solid #ecd8ef!important;box-shadow:0 8px 20px rgba(61,11,89,.04)!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .field-box input,
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .field-box select{font-size:.9rem!important;font-weight:800!important;color:#201531!important;background:transparent!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .search-submit{min-height:54px!important;border-radius:18px!important;padding:0 24px!important;font-weight:950!important;box-shadow:0 18px 38px rgba(178,10,170,.22)!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .booking-layout{grid-template-columns:280px minmax(0,1fr)!important;gap:24px!important;align-items:start!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .sticky-map,
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .es17-booking-map-button,
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] [data-epy-focus-salon]{display:none!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .filter-panel{
  position:sticky!important;
  top:96px!important;
  max-height:calc(100vh - 118px)!important;
  overflow:auto!important;
  padding:0!important;
  border:1px solid #eddcf0!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 18px 48px rgba(65,21,82,.08)!important;
  scrollbar-width:thin;
}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .filter-panel-head{position:sticky;top:0;z-index:4;background:#fff;padding:18px 20px 14px!important;border-bottom:1px solid #f1e5f3!important;border-radius:22px 22px 0 0!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .filter-panel-head h3{font-size:1.35rem!important;letter-spacing:-.04em!important;color:#1b1034!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .filter-group{padding:17px 20px!important;margin:0!important;border-bottom:1px solid #f2e7f3!important;background:#fff!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .filter-group-title{font-size:.9rem!important;font-weight:950!important;color:#332244!important;margin-bottom:12px!important;display:flex;align-items:center;justify-content:space-between}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .check-row{min-height:34px!important;border-radius:10px!important;padding:0 7px!important;color:#5c5068!important;font-weight:800!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .check-row:hover,
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .check-row.active{background:#fff2fe!important;color:#a20c9f!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .toggle-row{min-height:34px!important;font-size:.88rem!important;font-weight:850!important;color:#52465e!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .toggle-row input{width:17px!important;height:17px!important;accent-color:#b20aaa!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .filter-group--urgent{background:linear-gradient(180deg,#fff9fa,#fff)!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .ep-ref-urgent-grid button{min-height:46px!important;border-radius:15px!important;font-size:.88rem!important;background:#fff3f5!important;color:#ba1231!important;border:1px solid #ffcdd6!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .ep-ref-urgent-grid button.active{background:linear-gradient(135deg,#ff315a,#bd092f)!important;color:#fff!important}
.ep-ref-filter-note{display:block;margin-top:8px;font-size:.72rem;color:#7a6c86;line-height:1.35}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .ep-ref-filter-actionbar{position:sticky;bottom:0;z-index:5;padding:16px 20px 18px!important;background:linear-gradient(180deg,rgba(255,255,255,.82),#fff 28%)!important;border-top:1px solid #efe0f2!important;border-radius:0 0 22px 22px!important;box-shadow:0 -12px 28px rgba(57,18,74,.06)!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .ep-ref-apply-filter{border:0!important;border-radius:16px!important;background:linear-gradient(135deg,#b20aaa,#381047)!important;color:#fff!important;font-weight:950!important;box-shadow:0 14px 32px rgba(178,10,170,.24)!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .ep-ref-filter-hint{display:block;margin-top:9px;text-align:center;color:#74667f;font-size:.72rem;line-height:1.32}
.ep-ref-active-filters{display:flex;align-items:center;gap:12px;margin:0 0 16px;padding:13px 16px;border:1px solid #efdcf2;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(72,21,91,.06)}
.ep-ref-active-filters[hidden]{display:none!important}
.ep-ref-active-filters>span{font-size:.78rem;font-weight:950;color:#4b3a5f;white-space:nowrap}
.ep-ref-active-filter-list{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;flex:1}
.ep-ref-active-chip{display:inline-flex;align-items:center;gap:7px;min-height:34px;border:1px solid #e6c9eb;border-radius:999px;background:linear-gradient(180deg,#fff,#fff6ff);color:#241534;padding:0 10px;font-weight:900;cursor:pointer;box-shadow:0 6px 16px rgba(60,18,78,.06)}
.ep-ref-active-chip small{font-size:.63rem;color:#8a5c94;text-transform:uppercase;letter-spacing:.04em}.ep-ref-active-chip b{font-size:.78rem}.ep-ref-active-chip span{font-size:1rem;color:#b20aaa;line-height:1}
.ep-ref-active-chip:hover{border-color:#b20aaa;background:#fff1ff;color:#8c0aa0}.ep-ref-active-filters>[data-epy-clear-filters]{min-height:34px;border:0;border-radius:999px;background:#f5eaf7;color:#842692;font-weight:950;padding:0 12px;white-space:nowrap}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .result-head{padding:4px 0 14px!important;border-bottom:1px solid #f0e4f2;margin-bottom:16px!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .result-head h2{font-size:1.65rem!important;letter-spacing:-.045em!important;color:#1b1034!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .sort-box{gap:10px!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .sort-box .form-select{min-width:210px!important;height:45px!important;border-radius:14px!important;font-weight:850!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-result-card{grid-template-columns:190px minmax(0,1fr) 170px!important;gap:18px!important;padding:18px!important;border-radius:24px!important;border:1px solid #efe1f2!important;background:#fff!important;box-shadow:0 14px 40px rgba(53,16,72,.06)!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-result-card:hover{border-color:#dfa5e5!important;box-shadow:0 22px 56px rgba(93,22,119,.11)!important;transform:translateY(-1px)}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-photo-wrap img{width:190px!important;height:150px!important;border-radius:18px!important;object-fit:cover!important;background:#f6f0f8!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-main h3{font-size:1.22rem!important;letter-spacing:-.03em!important;margin:8px 0 5px!important;color:#201531!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .meta-row{font-size:.86rem!important;color:#67596f!important;gap:7px!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .meta-row .star{color:#ffad16!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .feature-list{gap:4px!important;margin-top:10px!important;font-size:.82rem!important;color:#64566c!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .time-chip,.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .es-pill{border-radius:999px!important;font-size:.72rem!important;font-weight:900!important;padding:6px 9px!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-side{border-left:1px solid #f0e4f2!important;padding-left:17px!important;display:grid!important;align-content:center!important;gap:9px!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .price-md{font-size:2rem!important;letter-spacing:-.05em!important;color:#b20aaa!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-side .btn-es{min-height:42px!important;border-radius:14px!important;font-size:.88rem!important;font-weight:950!important}
@media(max-width:1399px){.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .booking-layout{grid-template-columns:255px minmax(0,1fr)!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-result-card{grid-template-columns:165px minmax(0,1fr) 150px!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-photo-wrap img{width:165px!important}}
@media(max-width:1100px){.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .search-board{grid-template-columns:1fr!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .search-submit{justify-self:start!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .booking-layout{grid-template-columns:1fr!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .filter-panel{position:relative!important;top:auto!important;max-height:none!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .filter-panel{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .filter-panel-head,.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .ep-ref-filter-actionbar{grid-column:1/-1!important}}
@media(max-width:760px){.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .search-fields{grid-template-columns:1fr!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .search-board{padding:20px!important}.ep-ref-active-filters{align-items:flex-start;flex-direction:column}.ep-ref-active-filter-list{width:100%}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .filter-panel{display:block!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .ep-ref-filter-actionbar{position:sticky!important;bottom:8px!important;border-radius:18px!important;margin:12px!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-result-card{grid-template-columns:105px minmax(0,1fr)!important;gap:12px!important;padding:13px!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-photo-wrap img{width:105px!important;height:116px!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-side{grid-column:1/-1!important;border-left:0!important;border-top:1px solid #f0e4f2!important;padding:12px 0 0!important;display:grid!important;grid-template-columns:1fr 1fr!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-side small,.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .price-md,.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-side .es-pill{grid-column:1/-1}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .feature-list,.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .times-row{display:none!important}}

/* Checkpoint 18BO: salon panel realtime toast and automatic panel refresh feedback */
.epy-salon-live-toast{display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;gap:12px!important;align-items:start!important;max-width:390px!important;padding:15px 16px!important;background:linear-gradient(135deg,#2b1038 0%,#a40aa9 100%)!important;border:1px solid rgba(255,255,255,.24)!important;border-radius:20px!important;color:#fff!important;box-shadow:0 24px 80px rgba(47,14,68,.32)!important;transition:opacity .2s ease,transform .2s ease!important}.epy-salon-live-toast-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:15px;background:rgba(255,255,255,.15);color:#fff;font-size:1.3rem;font-weight:950}.epy-salon-live-toast b{display:block;margin:1px 0 3px;font-size:.96rem;font-weight:950;letter-spacing:-.01em}.epy-salon-live-toast span{display:block;color:#fae7ff;font-size:.84rem;line-height:1.45}.epy-salon-live-toast a{display:inline-flex;align-items:center;margin-top:9px;padding:6px 10px;border-radius:999px;background:#fff;color:#8a1196;font-size:.78rem;font-weight:900;text-decoration:none}.epy-live-refreshed .epy-panel-main{animation:epyPanelLivePulse .8s ease}@keyframes epyPanelLivePulse{0%{box-shadow:0 0 0 0 rgba(164,10,169,.16)}100%{box-shadow:0 0 0 18px rgba(164,10,169,0)}}@media(max-width:767px){.epy-salon-live-toast{left:14px!important;right:14px!important;bottom:16px!important;max-width:none!important}}


/* Checkpoint 18BP: premium salon list cards, mobile quick filter grid, no private-room UI */
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-result-card{
  grid-template-columns:210px minmax(0,1fr) 184px!important;
  gap:22px!important;
  padding:20px!important;
  border-radius:28px!important;
  border:1px solid #efd9f3!important;
  background:linear-gradient(180deg,#fff,#fffafe)!important;
  box-shadow:0 18px 50px rgba(65,18,83,.075)!important;
}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-result-card:hover{border-color:#d784df!important;box-shadow:0 26px 64px rgba(105,24,130,.14)!important;transform:translateY(-2px)}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-photo-wrap img{width:210px!important;height:164px!important;border-radius:22px!important;object-fit:cover!important;background:#f4eef7!important}
.ep-ref-card-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .es-pill,.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .time-chip{display:inline-flex!important;align-items:center!important;max-width:100%;min-height:29px;border:1px solid #ead8ef!important;border-radius:999px!important;background:#f8f0fb!important;color:#5b4568!important;padding:6px 10px!important;font-size:.74rem!important;font-weight:950!important;line-height:1.05!important;white-space:normal!important;overflow-wrap:anywhere!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .es-pill.green{background:#d9f8e8!important;border-color:#bff1d7!important;color:#087141!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .es-pill.muted,.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .time-chip.more{background:#f4eef7!important;color:#806b8c!important}
.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-main h3{font-size:1.38rem!important;margin:6px 0 5px!important;letter-spacing:-.045em!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .meta-row{font-size:.92rem!important;font-weight:850!important;color:#63556e!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .feature-list.premium{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:11px 0 10px!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .feature-list.premium span{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 9px;border-radius:999px;background:#fff7fb;color:#6a5876;font-size:.76rem;font-weight:900}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .feature-list.premium span:before{content:"✓";color:#b20aaa;font-weight:1000}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .times-row.premium{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important;margin-top:8px}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .times-row .tiny{font-size:.78rem!important;color:#7c6a86!important;font-weight:950!important;text-transform:none!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-side{border-left:1px solid #eedff1!important;padding-left:20px!important;display:grid!important;align-content:center!important;gap:10px!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-side .price-md{font-size:2.15rem!important;color:#b20aaa!important;line-height:1!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-side .btn-es{min-height:43px!important;border-radius:15px!important;font-weight:950!important}.ep-ref-review-count{display:none!important}
.epy-price-row-clean{grid-template-columns:minmax(230px,1fr) 150px 140px 110px 110px!important;align-items:center}.epy-price-list-clean{display:grid;gap:10px}.epy-switch-active{align-self:end}.epy-price-group-card .epy-section-title p{color:#75667f}.epy-admin-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0}.epy-admin-action-grid a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:16px;border-radius:18px;background:#fff;border:1px solid #eaddea;box-shadow:0 12px 28px rgba(47,18,57,.06);text-decoration:none;color:#24153b}.epy-admin-action-grid b{font-weight:950}.epy-admin-action-grid span{grid-row:1/3;grid-column:2;display:grid;place-items:center;min-width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#b20aaa,#6f0794);color:#fff;font-size:1.25rem;font-weight:1000}.epy-admin-action-grid small{color:#7a6b85;font-weight:750}.epy-admin-live-toast.is-reminder,.epy-salon-live-toast.is-reminder{box-shadow:0 20px 54px rgba(178,10,170,.28),0 0 0 5px rgba(255,193,7,.18)!important}
.epy-quick-toggle input[type="checkbox"]{position:absolute;inset:0;opacity:0;cursor:pointer}.epy-quick-filter .epy-quick-tile.filled,.epy-quick-filter .epy-quick-toggle.filled{border-color:#b20aaa!important;background:linear-gradient(135deg,#fff,#fff1ff)!important}.epy-quick-filter .epy-quick-tile.filled:after,.epy-quick-filter .epy-quick-toggle.filled:after{content:"✓";position:absolute;right:14px;top:13px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#9a0ca5;color:#fff;font-weight:1000}.epy-quick-price small{display:block;margin-top:3px;color:#705f7d;font-size:.78rem;font-weight:760;line-height:1.25}
@media(max-width:1399px){.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-result-card{grid-template-columns:180px minmax(0,1fr) 165px!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-photo-wrap img{width:180px!important;height:150px!important}}
@media(max-width:760px){.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-result-card{grid-template-columns:110px minmax(0,1fr)!important;gap:13px!important;padding:14px!important;border-radius:22px!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-photo-wrap img{width:110px!important;height:118px!important}.ep-ref-salons-page[data-epy-salons-version="18.82.0"] .salon-side{grid-column:1/-1!important;border-left:0!important;border-top:1px solid #f0e4f2!important;padding:12px 0 0!important;grid-template-columns:1fr 1fr!important}.epy-quick-filter{grid-template-columns:1fr 1fr!important;gap:10px!important}.epy-quick-tile,.epy-quick-price{min-height:118px!important;padding:14px 12px!important;grid-template-columns:46px minmax(0,1fr)!important}.epy-quick-tile>span,.epy-quick-price>span{width:46px!important;height:46px!important}.epy-quick-submit{position:sticky;bottom:10px;z-index:8}.epy-quick-intro h1{font-size:2.15rem!important}.epy-quick-tile b,.epy-quick-price b{font-size:.98rem!important}.epy-quick-tile small,.epy-quick-price small{font-size:.74rem!important;line-height:1.2}}
@media(max-width:430px){.epy-quick-filter{grid-template-columns:1fr 1fr!important}.epy-quick-tile,.epy-quick-price{min-height:108px!important;grid-template-columns:1fr!important;gap:8px!important}.epy-quick-tile>span,.epy-quick-price>span{width:42px!important;height:42px!important}.epy-quick-tile b,.epy-quick-price b{font-size:.9rem!important}}

/* Checkpoint 18BQ: salon filters as premium top hub, no left filter column */
.ep-ref-salons-page--no-sidebar .rich-search--compact{padding-bottom:18px}
.ep-ref-salons-page--no-sidebar .search-board--premium-filter{grid-template-columns:minmax(280px,1fr);gap:18px;padding:28px 30px;border-radius:28px;background:linear-gradient(135deg,#fff,#fff5fe);border:1px solid #ecd7f0;box-shadow:0 22px 70px rgba(83,22,100,.08)}
.ep-ref-search-quickline{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(180px,.55fr) minmax(180px,.55fr);gap:12px;align-items:center}
.ep-ref-search-quickline select,.ep-ref-search-quickline input{height:52px;border:1px solid #e8d4ee;border-radius:16px;background:#fff;padding:0 16px;font-weight:850;color:var(--epy-ink);outline:0;box-shadow:0 10px 24px rgba(79,19,105,.05)}
.ep-ref-mini-search{display:flex;align-items:center;gap:10px;height:52px;border:1px solid #e8d4ee;border-radius:16px;background:#fff;padding:0 14px;box-shadow:0 10px 24px rgba(79,19,105,.05)}
.ep-ref-mini-search span{color:var(--epy-primary);font-size:1.2rem}.ep-ref-mini-search input{height:auto!important;border:0!important;box-shadow:none!important;padding:0!important;width:100%;font-weight:850}
.ep-ref-salon-filter-hub{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0 18px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.ep-ref-salon-filter-hub .epy-quick-tile,.ep-ref-salon-filter-hub .epy-quick-price{min-height:148px;border-radius:22px;border:1px solid #ead8ef;background:#fff;box-shadow:0 14px 36px rgba(61,11,89,.065);padding:18px;text-align:left;transition:.18s ease;position:relative;overflow:hidden}
.ep-ref-salon-filter-hub .epy-quick-tile:hover,.ep-ref-salon-filter-hub .epy-quick-price:hover,.ep-ref-salon-filter-hub .epy-quick-tile.filled,.ep-ref-salon-filter-hub .epy-quick-price.active{border-color:#b70fc5;background:linear-gradient(135deg,#fff,#fff3fd);box-shadow:0 18px 44px rgba(169,11,185,.13);transform:translateY(-1px)}
.ep-ref-salon-filter-hub .epy-quick-tile>span,.ep-ref-salon-filter-hub .epy-quick-price>span{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:#faeefe;color:var(--epy-primary);font-size:1.55rem;margin-bottom:12px}
.ep-ref-salon-filter-hub b{font-size:1.05rem;font-weight:950;color:var(--epy-ink)}.ep-ref-salon-filter-hub small{display:block;margin-top:5px;color:var(--epy-muted);font-size:.86rem;line-height:1.3}
.ep-ref-salon-filter-hub select{margin-top:12px;width:100%;height:42px;border:1px solid #ead8ef;border-radius:13px;background:#fff;color:var(--epy-ink);font-weight:850;padding:0 12px;outline:0}
.ep-ref-salon-filter-hub .epy-quick-toggle input{position:absolute;right:18px;top:18px;width:22px;height:22px;accent-color:var(--epy-primary)}
.ep-ref-salon-filter-hub .epy-quick-submit{grid-column:1/-1;height:58px;border-radius:20px;border:0;background:linear-gradient(135deg,var(--epy-primary),var(--epy-primary-dark));color:#fff;font-weight:950;font-size:1.08rem;box-shadow:0 20px 40px rgba(169,11,185,.2)}
.ep-ref-results-only{display:block!important}.ep-ref-results-only>section{min-width:0}.ep-ref-results-only .booking-results{display:grid;gap:18px}.ep-ref-salons-page--no-sidebar .salon-result-card{grid-template-columns:minmax(190px,240px) minmax(0,1fr) minmax(180px,220px);border-radius:26px;border:1px solid #efd7f3;background:#fff;box-shadow:0 18px 46px rgba(71,16,92,.075)}
.ep-ref-salons-page--no-sidebar .salon-result-card:hover{border-color:#d24ede;box-shadow:0 24px 60px rgba(169,11,185,.13);transform:translateY(-1px)}
.ep-ref-salons-page--no-sidebar .ep-ref-card-badges{display:flex;flex-wrap:wrap;gap:7px;max-width:100%}.ep-ref-salons-page--no-sidebar .es-pill,.ep-ref-salons-page--no-sidebar .time-chip{display:inline-flex;align-items:center;min-height:28px;max-width:190px;padding:6px 10px;border-radius:999px;background:#f8eef9;color:#7a2a85;font-size:.78rem;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ep-ref-salons-page--no-sidebar .es-pill.green{background:#d9fae8;color:#087342}.ep-ref-salons-page--no-sidebar .time-chip.more,.ep-ref-salons-page--no-sidebar .es-pill.muted{background:#f1e8f3;color:#65526f}
.ep-ref-salons-page--no-sidebar .feature-list.premium{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.ep-ref-salons-page--no-sidebar .feature-list.premium span{background:#fff7ff;border:1px solid #f0d8f2;border-radius:999px;padding:5px 9px;color:#57435f;font-size:.78rem;font-weight:850}
.ep-ref-salons-page--no-sidebar .salon-side{border-left:1px solid #f0d7f2;padding-left:22px}.ep-ref-salons-page--no-sidebar .price-md{font-size:2rem;letter-spacing:-.04em;color:var(--epy-primary);font-weight:1000}
@media(max-width:1080px){.ep-ref-search-quickline,.ep-ref-salon-filter-hub{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-ref-salons-page--no-sidebar .salon-result-card{grid-template-columns:160px 1fr}.ep-ref-salons-page--no-sidebar .salon-side{grid-column:1/-1;border-left:0;border-top:1px solid #f0d7f2;padding:16px 0 0;display:flex;align-items:center;gap:12px;justify-content:space-between}}
@media(max-width:680px){.ep-ref-salons-page--no-sidebar .search-board--premium-filter{padding:20px;border-radius:22px}.ep-ref-search-quickline{grid-template-columns:1fr}.ep-ref-salon-filter-hub{grid-template-columns:1fr 1fr;gap:10px}.ep-ref-salon-filter-hub .epy-quick-tile,.ep-ref-salon-filter-hub .epy-quick-price{min-height:130px;padding:14px}.ep-ref-salon-filter-hub .epy-quick-tile>span,.ep-ref-salon-filter-hub .epy-quick-price>span{width:46px;height:46px;font-size:1.25rem}.ep-ref-salon-filter-hub b{font-size:.95rem}.ep-ref-salon-filter-hub small{font-size:.78rem}.ep-ref-salon-filter-hub .epy-quick-submit{height:54px}.ep-ref-salons-page--no-sidebar .salon-result-card{grid-template-columns:1fr}.ep-ref-salons-page--no-sidebar .salon-photo-wrap{min-height:190px}.ep-ref-salons-page--no-sidebar .salon-side{align-items:stretch;flex-direction:column}}

/* Checkpoint 18BQ: physical device instance entry flow */
.epy-device-instance-workbench{display:grid;gap:14px}.epy-device-instance-picker{padding:16px;border:1px dashed #dfbee7;border-radius:18px;background:#fffaff}.epy-device-instance-list{display:grid;gap:10px}.epy-device-instance-empty{padding:16px;border:1px solid #ecd7f0;border-radius:16px;color:var(--epy-muted);background:#fff}.epy-device-instance-card{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:15px 16px;border:1px solid #ead8ef;border-radius:18px;background:#fff;box-shadow:0 12px 28px rgba(61,11,89,.06)}.epy-device-instance-card b{display:block;color:var(--epy-ink);font-size:1rem}.epy-device-instance-card small,.epy-device-instance-card em{display:block;color:var(--epy-muted);font-style:normal;margin-top:3px}.epy-device-instance-card div:last-child{display:flex;gap:8px}.epy-device-instance-card button{border:1px solid #e2c5e8;border-radius:999px;background:#fff;color:var(--epy-primary);font-weight:900;padding:8px 12px}.epy-device-instance-card button[data-epy-device-remove-instance]{color:#b02142;border-color:#f1c4cf;background:#fff6f8}.epy-device-instance-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.epy-device-hidden-catalog-inputs{display:none!important}

/* Checkpoint 18BR: premium compact filters, searchable device modal and polished salon cards */
.epy-quick-home{background:linear-gradient(180deg,#fff 0%,#fff7fd 100%);padding:34px 18px 48px}.epy-quick-search-card{max-width:1460px;margin:0 auto 26px;padding:52px 58px 42px!important;border:1px solid #ead8ee!important;border-radius:34px!important;background:radial-gradient(circle at 18% 0%,#fff 0%,#fff 50%,#fff7ff 100%)!important;box-shadow:0 30px 90px rgba(80,14,102,.08)!important}.epy-quick-intro{text-align:center;max-width:920px;margin:0 auto 32px!important}.epy-quick-intro .epy-eyebrow{display:inline-flex;margin-bottom:8px;color:#b000d4;font-weight:950;letter-spacing:.11em}.epy-quick-intro h1{margin:0 auto 14px;font-size:clamp(2.6rem,5.2vw,5.6rem)!important;line-height:.91!important;letter-spacing:-.07em;color:#170a31!important;max-width:980px}.epy-quick-intro p{max-width:820px;margin:0 auto!important;font-size:clamp(1rem,1.25vw,1.32rem)!important;color:#69566f!important;font-weight:760;line-height:1.45}.epy-quick-filter{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;align-items:stretch!important}.epy-quick-tile,.epy-quick-price{position:relative!important;min-height:122px!important;padding:22px 22px!important;border:1px solid #ead8ee!important;border-radius:24px!important;background:#fff!important;color:#170a31!important;box-shadow:0 18px 46px rgba(42,10,70,.055)!important;display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;grid-template-rows:auto auto!important;grid-template-areas:"icon title" "icon desc"!important;column-gap:18px!important;row-gap:6px!important;text-align:left!important;cursor:pointer!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.epy-quick-tile:hover,.epy-quick-price:hover,.epy-quick-tile.filled,.epy-quick-price.active{border-color:#b000d4!important;box-shadow:0 22px 56px rgba(176,0,212,.14)!important;background:linear-gradient(180deg,#fff 0%,#fff7ff 100%)!important}.epy-quick-tile.filled::after,.epy-quick-price.active::after{content:"✓";position:absolute;right:16px;top:14px;display:grid;place-items:center;width:26px;height:26px;border-radius:999px;background:linear-gradient(135deg,#b000d4,#5b0a83);color:#fff;font-weight:1000;font-size:.86rem;box-shadow:0 8px 20px rgba(176,0,212,.24)}.epy-quick-tile>span,.epy-quick-price>span{grid-area:icon;display:grid!important;place-items:center!important;width:58px!important;height:58px!important;border-radius:18px!important;background:#f7e7fb!important;color:#b000d4!important;font-size:1.65rem!important;font-weight:950!important}.epy-quick-tile>b,.epy-quick-price>b{grid-area:title!important;align-self:end!important;font-size:1.16rem!important;line-height:1.05!important;font-weight:1000!important;letter-spacing:-.025em!important;color:#170a31!important}.epy-quick-tile>small,.epy-quick-price>small{grid-area:desc!important;align-self:start!important;color:#715f79!important;font-size:.9rem!important;line-height:1.25!important;font-weight:760!important;max-width:230px}.epy-quick-price input{position:absolute;opacity:0;pointer-events:none}.epy-quick-submit{grid-column:1/-1!important;min-height:66px!important;border:0!important;border-radius:22px!important;background:linear-gradient(135deg,#c300c9 0%,#5d15d5 100%)!important;color:#fff!important;font-size:1.25rem!important;font-weight:1000!important;box-shadow:0 24px 60px rgba(120,19,200,.22)!important}.epy-device-picker-tile [data-epy-device-label]{display:block}.epy-device-picker-tile.filled [data-epy-device-label]{color:#4a0c6d!important;font-weight:950!important}.epy-device-modal[hidden]{display:none!important}.epy-device-modal{position:fixed;inset:0;z-index:10080;display:grid;place-items:center;padding:24px}.epy-device-backdrop{position:absolute;inset:0;background:rgba(16,7,27,.52);backdrop-filter:blur(8px)}.epy-device-dialog{position:relative;width:min(620px,calc(100vw - 28px));max-height:min(760px,calc(100dvh - 36px));overflow:hidden;border-radius:30px;background:#fff;border:1px solid #ead8ee;box-shadow:0 38px 120px rgba(22,5,42,.28);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto}.epy-device-handle{display:none}.epy-device-close{position:absolute;right:18px;top:16px;width:42px;height:42px;border-radius:999px;border:1px solid #ead8ee;background:#fff;color:#170a31;font-weight:1000;font-size:1.4rem}.epy-device-head{padding:30px 30px 16px}.epy-device-head h2{margin:6px 0 8px;font-size:2rem;letter-spacing:-.045em;color:#170a31}.epy-device-head p{margin:0;color:#705e77;font-weight:720;line-height:1.45}.epy-device-search{display:flex;align-items:center;gap:12px;margin:0 30px 16px;padding:0 14px;border:1px solid #ead8ee;border-radius:16px;background:#fff7ff}.epy-device-search span{color:#b000d4;font-weight:1000}.epy-device-search input{height:52px;border:0;outline:0;background:transparent;width:100%;font-weight:850;color:#170a31}.epy-device-list{overflow:auto;padding:0 30px 26px;display:grid;gap:9px}.epy-device-option{width:100%;text-align:left;border:1px solid #ead8ee;border-radius:16px;background:#fff;padding:14px 16px;display:grid;gap:4px;color:#170a31;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s}.epy-device-option b{font-size:1rem;font-weight:950}.epy-device-option small{color:#806d86;font-weight:720}.epy-device-option:hover,.epy-device-option.active{border-color:#b000d4;background:#fff5ff;box-shadow:0 12px 28px rgba(176,0,212,.12)}.epy-device-option.active::after{content:"Seçili";justify-self:end;margin-top:-28px;border-radius:999px;background:#e7fff1;color:#067746;padding:4px 10px;font-size:.78rem;font-weight:950}.epy-device-empty{padding:0 30px 28px;color:#806d86;font-weight:850}.body-device-modal-open{overflow:hidden!important}.ep-ref-salon-filter-hub .epy-quick-submit{margin-top:4px}.ep-ref-salon-filter-hub .epy-device-picker-tile{border-style:solid}.salon-result-card--premium,.salon-result-card{border-radius:24px!important;border:1px solid #ead8ee!important;box-shadow:0 20px 52px rgba(69,13,91,.07)!important}.salon-result-card .ep-ref-card-badges,.salon-result-card .times-row{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important}.salon-result-card .es-pill,.salon-result-card .time-chip{max-width:150px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;border-radius:999px!important;padding:7px 10px!important;font-size:.78rem!important;font-weight:900!important}.salon-result-card .salon-main h3{font-size:1.5rem!important;line-height:1.1!important;letter-spacing:-.035em!important}.salon-result-card .feature-list.premium span{display:inline-flex;align-items:center;gap:5px}.salon-result-card .feature-list.premium span::before{content:"●";color:#b000d4;font-size:.65rem}.salon-result-card .salon-side{border-left:1px solid #ead8ee!important}.salon-result-card .price-md{font-size:2rem!important;letter-spacing:-.04em}.epy-admin-document-grid--photos article{border:1px solid #ead8ee;border-radius:16px;overflow:hidden;background:#fff}.epy-admin-document-grid--photos .epy-admin-document-preview img{width:100%;height:170px;object-fit:cover}
@media(max-width:1120px){.epy-quick-search-card{padding:36px 22px!important}.epy-quick-filter{grid-template-columns:repeat(2,minmax(0,1fr))!important}.epy-quick-intro{text-align:left}.epy-quick-intro h1{font-size:clamp(2.35rem,11vw,4.3rem)!important}.epy-quick-tile,.epy-quick-price{min-height:112px!important;padding:18px!important}.epy-quick-tile>span,.epy-quick-price>span{width:52px!important;height:52px!important}.epy-device-dialog{align-self:end;border-radius:28px 28px 0 0;width:100%;max-height:88dvh}.epy-device-modal{padding:0;place-items:end center}.epy-device-handle{display:block;width:54px;height:5px;border-radius:999px;background:#e5d6e8;margin:12px auto 0}.salon-result-card .salon-side{border-left:0!important;border-top:1px solid #ead8ee!important}.salon-result-card .es-pill,.salon-result-card .time-chip{max-width:132px!important}}
@media(max-width:620px){.epy-quick-home{padding:16px 12px 34px}.epy-quick-search-card{padding:28px 14px 22px!important;border-radius:26px!important}.epy-quick-filter{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.epy-quick-tile,.epy-quick-price{min-height:96px!important;padding:14px!important;grid-template-columns:42px 1fr!important;column-gap:12px!important;border-radius:20px!important}.epy-quick-tile>span,.epy-quick-price>span{width:42px!important;height:42px!important;border-radius:14px!important;font-size:1.25rem!important}.epy-quick-tile>b,.epy-quick-price>b{font-size:.98rem!important}.epy-quick-tile>small,.epy-quick-price>small{font-size:.76rem!important;line-height:1.15!important}.epy-quick-submit{min-height:58px!important;font-size:1.05rem!important}.epy-device-head{padding:24px 20px 14px}.epy-device-search{margin:0 20px 14px}.epy-device-list{padding:0 20px 22px}.epy-device-close{right:14px;top:14px}}

/* Checkpoint 18BT: premium quick filter layout and modal choice filters */
.epy-choice-control{display:none!important}
.epy-quick-home .epy-quick-search-card{display:block!important;grid-template-columns:none!important;max-width:1440px!important;margin:0 auto 28px!important;padding:44px 48px 38px!important;overflow:hidden!important}
.epy-quick-home .epy-quick-intro{text-align:center!important;max-width:980px!important;margin:0 auto 30px!important}
.epy-quick-home .epy-quick-intro h1{max-width:980px!important;margin-left:auto!important;margin-right:auto!important;font-size:clamp(2.8rem,5vw,5.2rem)!important;line-height:.94!important;letter-spacing:-.075em!important}
.epy-quick-home .epy-quick-intro p{max-width:760px!important;margin-left:auto!important;margin-right:auto!important;font-size:clamp(1rem,1.08vw,1.18rem)!important}
.epy-quick-home .epy-quick-filter{width:100%!important;max-width:1120px!important;margin:0 auto!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
.epy-quick-home .epy-quick-tile,.epy-quick-home .epy-quick-price,.ep-ref-salon-filter-hub .epy-quick-tile,.ep-ref-salon-filter-hub .epy-quick-price{min-height:94px!important;padding:15px 16px!important;grid-template-columns:48px minmax(0,1fr)!important;column-gap:13px!important;border-radius:20px!important;align-items:center!important;overflow:hidden!important}
.epy-quick-home .epy-quick-tile>span,.epy-quick-home .epy-quick-price>span,.ep-ref-salon-filter-hub .epy-quick-tile>span,.ep-ref-salon-filter-hub .epy-quick-price>span{width:48px!important;height:48px!important;border-radius:15px!important;font-size:1.34rem!important}
.epy-quick-home .epy-quick-tile>b,.epy-quick-home .epy-quick-price>b,.ep-ref-salon-filter-hub .epy-quick-tile>b,.ep-ref-salon-filter-hub .epy-quick-price>b{font-size:1rem!important;line-height:1.08!important;word-break:normal!important;overflow-wrap:normal!important}
.epy-quick-home .epy-quick-tile>small,.epy-quick-home .epy-quick-price>small,.ep-ref-salon-filter-hub .epy-quick-tile>small,.ep-ref-salon-filter-hub .epy-quick-price>small{max-width:none!important;font-size:.78rem!important;line-height:1.15!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important}
.epy-quick-home .epy-quick-submit{max-width:100%!important;margin-top:2px!important}
.epy-quick-tile.filled,.epy-choice-tile.filled{border-color:#b000d4!important;background:linear-gradient(180deg,#fff 0%,#fff5ff 100%)!important;box-shadow:0 18px 46px rgba(176,0,212,.15)!important}
.epy-quick-tile.filled::after,.epy-choice-tile.filled::after{content:"✓";position:absolute;right:13px;top:11px;display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:linear-gradient(135deg,#b000d4,#5b0a83);color:#fff;font-weight:1000;font-size:.78rem;box-shadow:0 8px 18px rgba(176,0,212,.25)}
.epy-choice-modal[hidden]{display:none!important}.epy-choice-modal{position:fixed;inset:0;z-index:10090;display:grid;place-items:center;padding:24px}.epy-choice-backdrop{position:absolute;inset:0;background:rgba(17,7,31,.54);backdrop-filter:blur(8px)}.epy-choice-dialog{position:relative;width:min(520px,calc(100vw - 28px));max-height:min(680px,calc(100dvh - 36px));overflow:hidden;border-radius:28px;background:#fff;border:1px solid #ead8ee;box-shadow:0 38px 120px rgba(22,5,42,.3);display:grid;grid-template-rows:auto minmax(0,1fr)}.epy-choice-handle{display:none}.epy-choice-close{position:absolute;right:16px;top:14px;width:40px;height:40px;border-radius:999px;border:1px solid #ead8ee;background:#fff;color:#170a31;font-weight:1000;font-size:1.35rem}.epy-choice-head{padding:28px 28px 14px}.epy-choice-head span{color:#b000d4;font-weight:1000;font-size:.78rem;letter-spacing:.11em}.epy-choice-head h2{margin:6px 0 8px;font-size:1.85rem;letter-spacing:-.045em;color:#170a31}.epy-choice-head p{margin:0;color:#705e77;font-weight:720;line-height:1.4}.epy-choice-list{overflow:auto;padding:0 28px 26px;display:grid;gap:9px}.epy-choice-option{width:100%;text-align:left;border:1px solid #ead8ee;border-radius:16px;background:#fff;padding:14px 16px;display:grid;gap:4px;color:#170a31;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s}.epy-choice-option b{font-size:1rem;font-weight:950}.epy-choice-option small{color:#806d86;font-weight:720}.epy-choice-option:hover,.epy-choice-option.active{border-color:#b000d4;background:#fff5ff;box-shadow:0 12px 28px rgba(176,0,212,.12)}.epy-choice-option.active::after{content:"Seçili";justify-self:end;margin-top:-28px;border-radius:999px;background:#e7fff1;color:#067746;padding:4px 10px;font-size:.78rem;font-weight:950}.body-choice-modal-open{overflow:hidden!important}
@media(max-width:1180px){.epy-quick-home .epy-quick-search-card{padding:34px 24px!important}.epy-quick-home .epy-quick-filter{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:760px!important}.epy-quick-home .epy-quick-intro{text-align:left!important}.epy-quick-home .epy-quick-intro h1{font-size:clamp(2.4rem,9vw,4rem)!important}.epy-choice-dialog{align-self:end;border-radius:28px 28px 0 0;width:100%;max-height:86dvh}.epy-choice-modal{padding:0;place-items:end center}.epy-choice-handle{display:block;width:54px;height:5px;border-radius:999px;background:#e5d6e8;margin:12px auto 0}}
@media(max-width:620px){.epy-quick-home .epy-quick-search-card{padding:24px 14px 20px!important;border-radius:24px!important}.epy-quick-home .epy-quick-filter{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.epy-quick-home .epy-quick-tile,.epy-quick-home .epy-quick-price,.ep-ref-salon-filter-hub .epy-quick-tile,.ep-ref-salon-filter-hub .epy-quick-price{min-height:92px!important;padding:13px!important;grid-template-columns:40px minmax(0,1fr)!important;column-gap:10px!important}.epy-quick-home .epy-quick-tile>span,.epy-quick-home .epy-quick-price>span,.ep-ref-salon-filter-hub .epy-quick-tile>span,.ep-ref-salon-filter-hub .epy-quick-price>span{width:40px!important;height:40px!important;font-size:1.15rem!important}.epy-quick-home .epy-quick-tile>b,.epy-quick-home .epy-quick-price>b,.ep-ref-salon-filter-hub .epy-quick-tile>b,.ep-ref-salon-filter-hub .epy-quick-price>b{font-size:.92rem!important}.epy-quick-home .epy-quick-tile>small,.epy-quick-home .epy-quick-price>small,.ep-ref-salon-filter-hub .epy-quick-tile>small,.ep-ref-salon-filter-hub .epy-quick-price>small{font-size:.72rem!important}.epy-choice-head{padding:24px 20px 14px}.epy-choice-list{padding:0 20px 22px}}


/* Checkpoint 18BT: salon cards, detail reviews/media, mobile modal polish */
.salon-result-card--premium .times-row.premium{display:none!important}
.salon-result-card--premium .ep-ref-card-badges{display:flex;flex-wrap:wrap;gap:8px;max-width:100%}
.salon-result-card--premium .ep-ref-card-badges .es-pill{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.epy-review-score{display:grid;gap:2px;text-align:right}.epy-review-score b{font-size:1.4rem;color:var(--epy-primary)}.epy-review-score span{font-weight:800;color:var(--epy-muted)}
.epy-review-list-pro{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.epy-review-card-pro{border:1px solid var(--epy-border);border-radius:18px;background:linear-gradient(180deg,#fff,#fff9ff);padding:18px;box-shadow:0 16px 38px rgba(58,12,78,.07)}.epy-review-card-pro header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}.epy-review-card-pro header b{font-size:1rem}.epy-review-card-pro small{display:block;color:var(--epy-muted);font-weight:700}.epy-review-stars{color:#ffad21;font-weight:1000;letter-spacing:.06em}.epy-verified-badge{font-style:normal;background:#d9fbe8;color:#0a7f4c;border-radius:999px;padding:5px 9px;font-weight:900;font-size:.72rem}.epy-salon-media-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.epy-salon-media-tile{position:relative;border-radius:18px;overflow:hidden;min-height:150px;background:#f8edf9;border:1px solid var(--epy-border);text-decoration:none;color:#fff}.epy-salon-media-tile img{width:100%;height:100%;object-fit:cover;display:block}.epy-salon-media-tile span{position:absolute;left:10px;right:10px;bottom:10px;border-radius:999px;background:rgba(27,5,45,.72);padding:7px 10px;font-weight:900;text-align:center}.epy-document-trust{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.epy-document-trust span{border-radius:999px;background:#effff6;color:#087044;padding:9px 12px;font-weight:850}
.epy-payout-toast.is-dismissing{opacity:0;transform:translateY(-8px);transition:opacity .35s ease,transform .35s ease}
@media(max-width:760px){.epy-location-modal--premium .epy-location-dialog{width:calc(100vw - 24px)!important;max-height:calc(100dvh - 28px)!important;padding:24px 18px!important;border-radius:28px!important;overflow:auto!important}.epy-location-modal--premium .epy-location-head h2{font-size:2.1rem!important;line-height:1.05!important}.epy-location-modal--premium .epy-location-head p{font-size:1.05rem!important;line-height:1.45!important}.epy-location-current{display:grid!important;grid-template-columns:58px 1fr!important;gap:14px!important;align-items:center!important;padding:16px!important;min-height:86px!important}.epy-location-current b{display:block!important;font-size:1.05rem!important;color:var(--epy-ink)!important;line-height:1.15!important}.epy-location-current small{display:block!important;color:var(--epy-muted)!important;font-size:.92rem!important;line-height:1.25!important}.epy-location-or{margin:16px 0!important}.epy-location-or span{font-size:1rem!important;white-space:nowrap!important}.epy-location-grid{gap:14px!important}.epy-location-actions{position:sticky!important;bottom:0!important;background:linear-gradient(180deg,rgba(255,255,255,.78),#fff 45%)!important;padding-top:12px!important}.epy-location-actions .epy-btn{min-height:54px!important;font-size:1rem!important}}
@media(min-width:900px){.epy-quick-search-card{display:block!important}.epy-quick-intro{text-align:center!important;max-width:920px!important;margin:0 auto 28px!important}.epy-quick-intro h1{font-size:clamp(3.2rem,6vw,5.8rem)!important;line-height:.92!important}.epy-quick-filter{max-width:980px!important;margin:0 auto!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}.epy-quick-submit{grid-column:1/-1!important}}

/* Checkpoint 18BU: scalable review pagination and public document trust */
.epy-review-summary-grid{display:grid;grid-template-columns:180px minmax(0,1fr) 220px;gap:16px;align-items:stretch;margin:16px 0 18px}.epy-review-average-card{border:1px solid var(--epy-border);border-radius:18px;background:linear-gradient(135deg,#fff,#fff7ff);padding:18px;display:grid;align-content:center;gap:5px}.epy-review-average-card strong{font-size:2.2rem;color:var(--epy-primary);line-height:1}.epy-review-average-card span{color:var(--epy-muted);font-weight:800}.epy-review-distribution{display:grid;gap:8px}.epy-review-filter{display:grid;grid-template-columns:52px minmax(0,1fr) 38px;gap:10px;align-items:center;border:0;background:transparent;padding:3px 0;text-align:left;cursor:pointer}.epy-review-filter b,.epy-review-filter em{font-style:normal;color:var(--epy-ink);font-weight:900}.epy-review-filter span{display:block;height:9px;border-radius:999px;background:#f1e4f4;overflow:hidden}.epy-review-filter span i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--epy-gold),var(--epy-primary))}.epy-review-filter.active b,.epy-review-filter:hover b{color:var(--epy-primary)}.epy-review-sort{display:grid;gap:7px;align-content:start}.epy-review-sort label{font-size:.82rem;color:var(--epy-muted);font-weight:900}.epy-review-sort select{height:44px;border:1px solid var(--epy-border);border-radius:13px;background:#fff;padding:0 12px;font-weight:800;color:var(--epy-ink)}.epy-review-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px;border-top:1px solid #f1e6f3;padding-top:16px}.epy-review-actions small{color:var(--epy-muted);font-weight:750}.epy-public-documents{display:grid;gap:15px;margin-top:16px}.epy-document-trust-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px!important}.epy-document-trust-grid span{border:1px solid #dcf5e9;border-radius:14px;background:#f1fff8;padding:12px 14px;color:#0f6b42;font-weight:900}.epy-document-trust-grid .is-verified-only{border-color:#eee2f1;background:#fffaff;color:#6f5d78}.epy-public-document-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.epy-public-document-card{display:grid;gap:6px;text-decoration:none;border:1px solid var(--epy-border);border-radius:18px;background:#fff;padding:15px;box-shadow:0 14px 34px rgba(70,20,80,.06);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.epy-public-document-card:hover{transform:translateY(-2px);border-color:var(--epy-primary);box-shadow:0 18px 42px rgba(169,11,185,.14)}.epy-public-document-card span{justify-self:start;border-radius:999px;background:var(--epy-soft);color:var(--epy-primary);font-size:.72rem;font-weight:950;padding:5px 9px}.epy-public-document-card b{color:var(--epy-ink);font-size:1rem}.epy-public-document-card small{color:var(--epy-muted);font-weight:800}@media(max-width:760px){.epy-review-summary-grid{grid-template-columns:1fr}.epy-review-actions{align-items:stretch;flex-direction:column}.epy-review-actions .epy-btn{width:100%}}


/* Checkpoint 18BV: readable mobile location sheet and safer geolocation CTA */
.epy-location-modal--premium .epy-location-current{
  min-height:76px!important;
  height:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:14px!important;
  padding:14px 16px!important;
  text-align:left!important;
}
.epy-location-modal--premium .epy-location-current .epy-location-current-icon{
  flex:0 0 56px!important;
  width:56px!important;
  height:56px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:18px!important;
}
.epy-location-modal--premium .epy-location-current .epy-location-current-copy{
  display:grid!important;
  gap:4px!important;
  min-width:0!important;
}
.epy-location-modal--premium .epy-location-current .epy-location-current-copy b{
  display:block!important;
  color:var(--epy-ink,#18102f)!important;
  font-size:1rem!important;
  line-height:1.12!important;
  white-space:normal!important;
}
.epy-location-modal--premium .epy-location-current .epy-location-current-copy small{
  display:block!important;
  color:#73637d!important;
  font-size:.82rem!important;
  line-height:1.25!important;
  white-space:normal!important;
}
@media(max-width:600px){
  .epy-location-modal--premium{
    align-items:end!important;
    padding:12px!important;
  }
  .epy-location-modal--premium .epy-location-dialog{
    width:100%!important;
    max-height:calc(100dvh - 24px)!important;
    overflow:auto!important;
    padding:22px 18px 18px!important;
    border-radius:28px!important;
  }
  .epy-location-modal--premium .epy-location-head h2,
  .epy-location-modal--premium .epy-location-dialog h2{
    font-size:clamp(2rem,9vw,3.1rem)!important;
    line-height:1!important;
  }
  .epy-location-modal--premium .epy-location-head p,
  .epy-location-modal--premium .epy-location-dialog p{
    font-size:1rem!important;
    line-height:1.45!important;
  }
}


/* Checkpoint 18BW: salon detail and adjacent customer pages full mobile responsive hardening */
@media(max-width:900px){
  html,body{max-width:100%!important;overflow-x:hidden!important}
  .master-wrapper-page,.master-wrapper-content,.content,.center-1,.page,.page-body{max-width:100%!important;overflow-x:hidden!important}
  .epy-detail-page,
  .epy-search-page,
  .epy-booking-page,
  .epy-account-layout,
  .epy-panel,
  .epy-home{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  .epy-detail-page{padding:12px!important;background:#fff!important}
  .epy-detail-page *{min-width:0}
  .epy-detail-gallery{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    height:auto!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  .epy-detail-main{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/10!important;
    border-radius:20px!important;
  }
  .epy-detail-main img{width:100%!important;height:100%!important;object-fit:cover!important}
  .epy-detail-mosaic{
    display:flex!important;
    gap:8px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:2px 2px 8px!important;
    scroll-snap-type:x proximity!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .epy-detail-mosaic::-webkit-scrollbar{height:0}
  .epy-detail-mosaic .epy-gallery-thumb,
  .epy-detail-mosaic>a,
  .epy-detail-mosaic>div{
    flex:0 0 112px!important;
    width:112px!important;
    height:82px!important;
    min-height:82px!important;
    border-radius:14px!important;
    scroll-snap-align:start!important;
  }
  .epy-gallery-single-copy{font-size:.78rem!important}
  .epy-gallery-all-button{
    position:static!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:44px!important;
    border-radius:14px!important;
    margin-top:4px!important;
    background:linear-gradient(135deg,var(--epy-primary),#6f0794)!important;
    color:#fff!important;
    text-decoration:none!important;
    font-weight:900!important;
  }

  .epy-detail-layout{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    margin-top:14px!important;
    width:100%!important;
    max-width:100%!important;
  }
  .epy-detail-layout>main{width:100%!important;max-width:100%!important;overflow:hidden!important}
  .epy-detail-heading{
    display:grid!important;
    grid-template-columns:1fr auto!important;
    gap:10px!important;
    align-items:start!important;
    margin-bottom:12px!important;
  }
  .epy-detail-heading h1{
    font-size:clamp(1.85rem,8vw,2.65rem)!important;
    line-height:1!important;
    letter-spacing:-.055em!important;
    word-break:break-word!important;
    overflow-wrap:anywhere!important;
  }
  .epy-detail-heading .epy-rating{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:7px!important;
    line-height:1.25!important;
  }
  .epy-detail-heading .epy-chips,
  .epy-chips{display:flex!important;flex-wrap:wrap!important;gap:6px!important}
  .epy-chips span{max-width:100%!important;white-space:normal!important}

  .epy-detail-tabs{
    position:sticky!important;
    top:0!important;
    z-index:30!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:7px!important;
    margin:0 -2px 8px!important;
    border-radius:14px!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .epy-detail-tabs::-webkit-scrollbar{height:0}
  .epy-detail-tabs a{flex:0 0 auto!important;padding:10px 12px!important;font-size:.86rem!important}

  .epy-content-card{
    width:100%!important;
    max-width:100%!important;
    padding:18px!important;
    margin-top:12px!important;
    border-radius:20px!important;
    overflow:hidden!important;
  }
  .epy-content-card h2{font-size:clamp(1.35rem,6vw,1.9rem)!important;line-height:1.1!important}
  .epy-content-card p{max-width:100%!important;overflow-wrap:anywhere!important}
  .epy-section-title{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;align-items:start!important}
  .epy-feature-row{
    grid-template-columns:1fr 1fr!important;
    border-radius:16px!important;
  }
  .epy-feature-row span{
    border-right:0!important;
    border-bottom:1px solid var(--epy-border)!important;
    padding:12px 10px!important;
    font-size:.83rem!important;
  }
  .epy-service-columns{grid-template-columns:1fr!important;gap:12px!important}
  .epy-service-columns>div{padding:14px!important;border-radius:16px!important}
  .epy-service-row{gap:10px!important;padding:10px 0!important}
  .epy-service-row span{min-width:0!important}
  .epy-service-row b{font-size:.96rem!important;white-space:nowrap!important}

  .epy-device-grid{grid-template-columns:1fr!important;gap:12px!important}
  .epy-device-card{
    display:grid!important;
    grid-template-columns:92px minmax(0,1fr)!important;
    gap:12px!important;
    padding:14px!important;
    border-radius:18px!important;
  }
  .epy-device-visual{height:92px!important;border-radius:14px!important}
  .epy-device-card h3{margin:2px 0 4px!important;font-size:1.06rem!important;line-height:1.15!important}
  .epy-device-card p{font-size:.86rem!important;line-height:1.35!important;margin:0 0 8px!important}
  .epy-device-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .epy-device-actions .epy-btn{width:100%!important}

  .epy-salon-media-grid,
  .epy-public-document-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .epy-salon-media-tile{min-height:118px!important;border-radius:16px!important}
  .epy-salon-media-tile span{font-size:.72rem!important;padding:6px 8px!important}
  .epy-document-trust,.epy-document-trust-grid{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .epy-document-trust span{border-radius:14px!important;padding:11px 12px!important}

  .epy-detail-map{height:240px!important;border-radius:16px!important}
  .epy-reviews-pro{overflow:hidden!important}
  .epy-review-summary-grid{grid-template-columns:1fr!important;gap:12px!important}
  .epy-review-average-card{padding:16px!important}
  .epy-review-filter{grid-template-columns:48px minmax(0,1fr) 34px!important}
  .epy-review-sort select{width:100%!important;min-height:42px!important}
  .epy-review-card,.epy-review-card-pro{padding:14px!important;border-radius:16px!important}
  .epy-review-card header,.epy-review-card-pro header{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    align-items:start!important;
  }
  .epy-review-stars{font-size:1rem!important}

  .epy-booking-sticky{
    position:static!important;
    width:100%!important;
    max-width:100%!important;
    padding:18px!important;
    border-radius:20px!important;
    order:-1!important;
  }
  .epy-booking-sticky h2{font-size:1.45rem!important;line-height:1.12!important}
  .epy-booking-stats{grid-template-columns:1fr 1fr!important;gap:8px!important;margin:14px 0!important}
  .epy-booking-stats div{padding:12px!important}
  .epy-booking-sticky .epy-btn{width:100%!important;white-space:normal!important;text-align:center!important}

  .epy-modal-dialog,
  .epy-lightbox-dialog{max-width:100vw!important}
  .epy-lightbox-dialog{
    grid-template-columns:44px minmax(0,1fr) 44px!important;
    padding:16px 6px!important;
  }
  .epy-lightbox-figure{min-width:0!important}
  .epy-lightbox-image{max-width:100%!important;height:auto!important;object-fit:contain!important}
}

@media(max-width:600px){
  .epy-detail-page{padding:10px!important}
  .epy-detail-main{aspect-ratio:4/3!important}
  .epy-detail-heading{grid-template-columns:1fr!important}
  .epy-favorite-form{justify-self:start!important}
  .epy-feature-row{grid-template-columns:1fr!important}
  .epy-device-card{grid-template-columns:1fr!important}
  .epy-device-visual{height:150px!important}
  .epy-salon-media-grid,
  .epy-public-document-grid{grid-template-columns:1fr!important}
  .epy-booking-stats{grid-template-columns:1fr!important}
}

/* Checkpoint 18BW: mobile hardening for customer/salon-panel detail pages with similar overflow risk */
@media(max-width:900px){
  .epy-account-layout,
  .epy-session-layout,
  .epy-reschedule-grid,
  .epy-contract-layout,
  .epy-confirm-layout,
  .epy-device-time-layout{
    grid-template-columns:1fr!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  .epy-account-main,
  .epy-session-detail-page,
  .epy-session-main-card,
  .epy-session-side,
  .epy-detail-summary-grid,
  .epy-summary-grid,
  .epy-session-meta-grid,
  .epy-booking-list-card{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  .epy-detail-summary-grid,
  .epy-summary-grid-large,
  .epy-session-meta-grid{grid-template-columns:1fr!important}
  .epy-definition-list,
  .epy-timeline,
  .epy-operation-region-list{max-width:100%!important;overflow-x:hidden!important}
  .epy-booking-actions,
  .epy-form-actions,
  .epy-session-top-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .epy-booking-actions .epy-btn,
  .epy-form-actions .epy-btn,
  .epy-session-top-actions .epy-btn{width:100%!important}
}

/* Checkpoint 18BY: final mobile overflow lock for salon detail and adjacent public pages */
@media (max-width: 920px) {
  html, body { width:100%!important; max-width:100%!important; overflow-x:hidden!important; }
  .master-wrapper-page,
  .master-wrapper-content,
  .content,
  .center-1,
  .page,
  .page-body,
  .epy-detail-page,
  .epy-search-page,
  .epy-booking-page,
  .epy-account-layout,
  .epy-panel,
  .epy-home { width:100%!important; max-width:100%!important; min-width:0!important; overflow-x:hidden!important; }

  .epy-detail-page { padding:10px!important; box-sizing:border-box!important; }
  .epy-detail-page *,
  .epy-detail-page *:before,
  .epy-detail-page *:after { box-sizing:border-box!important; min-width:0!important; }
  .epy-detail-gallery,
  .epy-detail-layout,
  .epy-detail-layout > main,
  .epy-content-card,
  .epy-booking-sticky { width:100%!important; max-width:100%!important; min-width:0!important; }
  .epy-detail-layout { display:flex!important; flex-direction:column!important; gap:14px!important; }
  .epy-detail-layout > main { order:2!important; overflow:hidden!important; }
  .epy-booking-sticky { order:1!important; position:static!important; margin:0!important; }

  .epy-detail-gallery { display:flex!important; flex-direction:column!important; height:auto!important; gap:10px!important; overflow:hidden!important; }
  .epy-detail-main { display:block!important; width:100%!important; height:auto!important; aspect-ratio:4/3!important; border-radius:20px!important; overflow:hidden!important; }
  .epy-detail-main img { width:100%!important; height:100%!important; object-fit:cover!important; display:block!important; }
  .epy-detail-mosaic { display:flex!important; flex-wrap:nowrap!important; overflow-x:auto!important; gap:8px!important; padding:2px 2px 8px!important; -webkit-overflow-scrolling:touch!important; }
  .epy-detail-mosaic::-webkit-scrollbar { height:0!important; }
  .epy-detail-mosaic > * { flex:0 0 112px!important; width:112px!important; height:82px!important; max-width:112px!important; min-height:82px!important; border-radius:14px!important; overflow:hidden!important; }
  .epy-gallery-all-button { position:static!important; width:100%!important; min-height:44px!important; margin:0!important; display:flex!important; align-items:center!important; justify-content:center!important; color:#fff!important; background:linear-gradient(135deg,var(--epy-primary,#a90bb9),#6f0794)!important; border-radius:14px!important; text-decoration:none!important; }

  .epy-detail-heading { display:grid!important; grid-template-columns:1fr!important; gap:10px!important; margin-bottom:12px!important; }
  .epy-detail-heading h1 { font-size:clamp(1.85rem,8vw,2.55rem)!important; line-height:1!important; letter-spacing:-.055em!important; overflow-wrap:anywhere!important; }
  .epy-detail-heading .epy-rating { display:flex!important; flex-wrap:wrap!important; gap:7px!important; }
  .epy-detail-tabs { position:sticky!important; top:0!important; z-index:30!important; display:flex!important; flex-wrap:nowrap!important; overflow-x:auto!important; overflow-y:hidden!important; max-width:100%!important; width:100%!important; padding:7px!important; margin:0 0 10px!important; -webkit-overflow-scrolling:touch!important; }
  .epy-detail-tabs a { flex:0 0 auto!important; white-space:nowrap!important; padding:10px 12px!important; }

  .epy-content-card { padding:18px!important; border-radius:20px!important; overflow:hidden!important; }
  .epy-content-card p { overflow-wrap:anywhere!important; }
  .epy-feature-row { display:flex!important; flex-direction:column!important; width:100%!important; max-width:100%!important; overflow:hidden!important; border-radius:16px!important; }
  .epy-feature-row span { display:flex!important; align-items:center!important; justify-content:flex-start!important; width:100%!important; max-width:100%!important; min-height:46px!important; padding:12px 14px!important; border-right:0!important; border-bottom:1px solid var(--epy-border,#eadbed)!important; text-align:left!important; white-space:normal!important; overflow:visible!important; overflow-wrap:anywhere!important; line-height:1.25!important; }
  .epy-feature-row span:last-child { border-bottom:0!important; }

  .epy-service-columns,
  .epy-device-grid,
  .epy-review-summary-grid,
  .epy-account-layout,
  .epy-session-layout,
  .epy-reschedule-grid,
  .epy-contract-layout,
  .epy-confirm-layout,
  .epy-device-time-layout { display:grid!important; grid-template-columns:1fr!important; width:100%!important; max-width:100%!important; gap:12px!important; overflow:hidden!important; }
  .epy-device-card { display:grid!important; grid-template-columns:1fr!important; width:100%!important; max-width:100%!important; padding:14px!important; }
  .epy-device-visual { height:150px!important; }
  .epy-device-actions,
  .epy-review-actions,
  .epy-booking-actions,
  .epy-form-actions,
  .epy-session-top-actions { display:grid!important; grid-template-columns:1fr!important; gap:10px!important; }
  .epy-device-actions .epy-btn,
  .epy-review-actions .epy-btn,
  .epy-booking-actions .epy-btn,
  .epy-form-actions .epy-btn,
  .epy-session-top-actions .epy-btn { width:100%!important; }

  .epy-salon-media-grid,
  .epy-public-document-grid { display:grid!important; grid-template-columns:1fr!important; width:100%!important; max-width:100%!important; gap:10px!important; }
  .epy-salon-media-tile { min-height:150px!important; }
  .epy-document-trust,
  .epy-document-trust-grid { display:grid!important; grid-template-columns:1fr!important; gap:8px!important; }
  .epy-detail-map { height:240px!important; max-width:100%!important; }
  .epy-lightbox-dialog { max-width:100vw!important; grid-template-columns:42px minmax(0,1fr) 42px!important; padding:14px 4px!important; }
  .epy-lightbox-image { max-width:100%!important; height:auto!important; }
}


/* Checkpoint 18CA: salon card CTA wording, verified badge placement and booking CTA polish */
.ep-ref-salons-page .salon-side .es-pill.green{display:none!important}
.ep-ref-side-trust{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:30px!important;
  width:max-content!important;
  max-width:100%!important;
  border-radius:999px!important;
  background:#fff8ff!important;
  border:1px solid #efd6f3!important;
  color:#6d217b!important;
  font-size:.78rem!important;
  font-weight:950!important;
  padding:7px 10px!important;
  white-space:nowrap!important;
}
.salon-side-actions{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:9px!important;
  width:100%!important;
  margin-top:4px!important;
}
.salon-side-actions .btn-es{
  width:100%!important;
  min-height:44px!important;
  text-align:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
}
.ep-ref-salons-page--no-sidebar .salon-side{
  display:grid!important;
  align-content:center!important;
  gap:10px!important;
}
.ep-ref-salons-page--no-sidebar .salon-side .price-md{
  line-height:.98!important;
}
.ep-ref-salons-page--no-sidebar .ep-ref-card-badges .es-pill.green{
  order:-1!important;
}
.ep-ref-salons-page--no-sidebar .ep-ref-card-badges .es-pill.green::before{
  content:"✓ ";
}
.ep-ref-salons-page .btn-es-primary,
.ep-ref-salons-page .btn-es-outline{
  border-radius:14px!important;
  font-weight:950!important;
}
.ep-ref-salons-page .btn-es-outline{
  background:#fff!important;
  border:1px solid #dfc9e8!important;
  color:#3f284d!important;
}
.ep-ref-salons-page .btn-es-outline:hover{
  border-color:var(--epy-primary)!important;
  color:var(--epy-primary)!important;
}
.epy-booking-sticky--premium{
  padding:30px!important;
  border-radius:26px!important;
  background:linear-gradient(180deg,#fff 0,#fff8fe 100%)!important;
}
.epy-booking-sticky--premium .epy-eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  min-height:30px!important;
  border-radius:999px!important;
  background:#fff2fd!important;
  color:var(--epy-primary)!important;
  padding:7px 11px!important;
  font-size:.8rem!important;
  letter-spacing:.12em!important;
  margin-bottom:12px!important;
}
.epy-booking-sticky--premium h2{
  font-size:clamp(2rem,2.3vw,2.7rem)!important;
  line-height:1.02!important;
  letter-spacing:-.055em!important;
  margin:0 0 12px!important;
}
.epy-booking-sticky--premium p{
  font-size:1rem!important;
  line-height:1.55!important;
}
.epy-booking-sticky--premium .epy-btn-large{
  min-height:58px!important;
  font-size:1.05rem!important;
  border-radius:18px!important;
}
@media(max-width:1080px){
  .ep-ref-salons-page--no-sidebar .salon-side{
    grid-column:1/-1!important;
    border-left:0!important;
    border-top:1px solid #f0d7f2!important;
    padding:16px 0 0!important;
    display:grid!important;
    grid-template-columns:1fr auto!important;
    align-items:center!important;
    gap:12px!important;
  }
  .ep-ref-salons-page--no-sidebar .salon-side-actions{
    grid-template-columns:auto auto!important;
    justify-content:end!important;
    margin-top:0!important;
  }
  .ep-ref-salons-page--no-sidebar .ep-ref-side-trust{justify-self:start!important}
}
@media(max-width:680px){
  .ep-ref-salons-page--no-sidebar .salon-side{
    grid-template-columns:1fr!important;
    align-items:stretch!important;
  }
  .ep-ref-salons-page--no-sidebar .salon-side-actions{
    grid-template-columns:1fr!important;
    justify-content:stretch!important;
  }
  .ep-ref-salons-page--no-sidebar .ep-ref-side-trust{
    width:100%!important;
  }
  .ep-ref-salons-page--no-sidebar .salon-result-card{
    overflow:hidden!important;
  }
  .ep-ref-salons-page--no-sidebar .salon-main,
  .ep-ref-salons-page--no-sidebar .salon-side{
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .epy-booking-sticky--premium{
    padding:20px!important;
  }
  .epy-booking-sticky--premium h2{
    font-size:2rem!important;
  }
}

/* Checkpoint 18CB: registered-user booking contact summary */
.epy-contact-summary-card{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:22px!important;
  border:1px solid #eadbed!important;
  border-radius:22px!important;
  background:linear-gradient(135deg,#fff,#fff7fd)!important;
  box-shadow:0 18px 46px rgba(69,13,91,.07)!important;
}
.epy-contact-summary-main{display:flex!important;align-items:flex-start!important;gap:16px!important;min-width:0!important}
.epy-contact-summary-icon{display:grid!important;place-items:center!important;flex:0 0 48px!important;width:48px!important;height:48px!important;border-radius:50%!important;background:linear-gradient(135deg,var(--epy-primary),var(--epy-primary-dark));color:#fff!important;font-weight:1000!important;box-shadow:0 14px 30px rgba(169,11,185,.22)!important}
.epy-contact-summary-card h2{margin:5px 0 12px!important;font-size:clamp(1.35rem,2.2vw,2rem)!important;line-height:1.08!important;letter-spacing:-.045em!important;color:var(--epy-ink)!important}
.epy-contact-summary-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.epy-contact-summary-grid span{display:grid!important;gap:4px!important;min-width:0!important;border:1px solid #f0dff1!important;border-radius:16px!important;background:#fff!important;padding:12px 14px!important}
.epy-contact-summary-grid b{color:#74657d!important;font-size:.75rem!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.05em!important}
.epy-contact-summary-grid em{font-style:normal!important;color:var(--epy-ink)!important;font-weight:900!important;overflow-wrap:anywhere!important}
.epy-contact-fields[hidden]{display:none!important}
@media(max-width:760px){.epy-contact-summary-card{align-items:stretch!important;flex-direction:column!important;padding:18px!important}.epy-contact-summary-main{display:grid!important;grid-template-columns:1fr!important}.epy-contact-summary-icon{width:44px!important;height:44px!important;flex-basis:44px!important}.epy-contact-summary-grid{grid-template-columns:1fr!important}.epy-contact-summary-card .epy-btn{width:100%!important}}

/* Checkpoint 18CD: unified salon cards on home and salons pages */
.epy-quick-salons .salon-result-card{
  display:grid!important;
  grid-template-columns:minmax(132px,160px) minmax(0,1fr) minmax(160px,190px)!important;
  gap:16px!important;
  align-items:center!important;
  width:100%!important;
  border-radius:24px!important;
  border:1px solid #ead8ee!important;
  background:#fff!important;
  padding:12px!important;
  box-shadow:0 18px 46px rgba(71,16,92,.075)!important;
  overflow:hidden!important;
}
.epy-quick-salons .salon-photo-wrap{
  display:block!important;
  height:132px!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#f6eef8!important;
}
.epy-quick-salons .salon-photo-wrap img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.epy-quick-salons .salon-main{min-width:0!important;display:grid!important;gap:7px!important}
.epy-quick-salons .ep-ref-card-badges{display:flex!important;flex-wrap:wrap!important;gap:7px!important;align-items:center!important}
.epy-quick-salons .es-pill{display:inline-flex!important;align-items:center!important;min-height:28px!important;max-width:190px!important;padding:6px 10px!important;border-radius:999px!important;background:#f8eef9!important;color:#7a2a85!important;font-size:.78rem!important;font-weight:900!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.epy-quick-salons .es-pill.green{background:#d9fae8!important;color:#087342!important;order:-1!important}.epy-quick-salons .es-pill.green::before{content:"✓ "}
.epy-quick-salons .es-pill.muted{background:#f1e8f3!important;color:#65526f!important}
.epy-quick-salons .salon-main h3{margin:4px 0 2px!important;font-size:1.32rem!important;line-height:1.1!important;letter-spacing:-.04em!important}
.epy-quick-salons .salon-main h3 a{color:#1d1332!important;text-decoration:none!important}
.epy-quick-salons .meta-row{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important;color:#63556e!important;font-weight:850!important;font-size:.92rem!important}
.epy-quick-salons .meta-row .star{color:#f3a500!important}.epy-quick-salons .meta-dot{width:5px!important;height:5px!important;border-radius:999px!important;background:#b20aaa!important;display:inline-block!important}
.epy-quick-salons .feature-list.premium{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:7px 0 0!important}
.epy-quick-salons .feature-list.premium span{display:inline-flex!important;align-items:center!important;gap:6px!important;min-height:28px!important;padding:0 9px!important;border-radius:999px!important;background:#fff7ff!important;border:1px solid #f0d8f2!important;color:#57435f!important;font-size:.78rem!important;font-weight:850!important}
.epy-quick-salons .feature-list.premium span::before{content:"●";color:#b000d4;font-size:.65rem}
.epy-quick-salons .salon-side{display:grid!important;align-content:center!important;gap:10px!important;border-left:1px solid #f0d7f2!important;padding-left:18px!important;min-width:0!important}
.epy-quick-salons .salon-side small{color:#74657d!important;font-weight:850!important}.epy-quick-salons .price-md{font-size:1.9rem!important;line-height:1!important;letter-spacing:-.04em!important;color:var(--epy-primary)!important;font-weight:1000!important}
.salon-side-actions{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;width:100%!important;margin-top:2px!important}
.salon-side-actions .btn-es,.epy-quick-salons .salon-side-actions a{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:42px!important;border-radius:13px!important;font-weight:950!important;text-decoration:none!important;white-space:nowrap!important}
.ep-ref-salons-page .salon-side-actions{grid-template-columns:1fr!important;justify-content:stretch!important}
.ep-ref-salons-page--no-sidebar .salon-side .es-pill.green{display:none!important}
.ep-ref-side-trust{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:30px!important;border-radius:999px!important;background:#fff8ff!important;border:1px solid #efd6f3!important;color:#6d217b!important;font-size:.78rem!important;font-weight:950!important;padding:7px 10px!important;white-space:nowrap!important}
@media(max-width:1080px){
  .epy-quick-salons .salon-result-card{grid-template-columns:124px minmax(0,1fr)!important}
  .epy-quick-salons .salon-side{grid-column:1/-1!important;border-left:0!important;border-top:1px solid #f0d7f2!important;padding:14px 0 0!important}
  .ep-ref-salons-page--no-sidebar .salon-side-actions{grid-template-columns:1fr!important;justify-content:stretch!important}
}
@media(max-width:680px){
  .epy-quick-salons .salon-result-card{grid-template-columns:96px minmax(0,1fr)!important;gap:10px!important;border-radius:20px!important;padding:10px!important}
  .epy-quick-salons .salon-photo-wrap{height:96px!important;border-radius:15px!important}
  .epy-quick-salons .salon-main h3{font-size:1.04rem!important}.epy-quick-salons .feature-list.premium{display:none!important}
  .epy-quick-salons .salon-side{padding-top:12px!important}.epy-quick-salons .salon-side-actions{grid-template-columns:1fr!important}
}


/* Checkpoint 18CE: booking contact and account polish */
.epy-contact-summary-card{border:1px solid #eadbed;border-radius:22px;background:linear-gradient(135deg,#fff,#fff7fe);padding:20px;display:flex;align-items:center;justify-content:space-between;gap:18px;box-shadow:0 18px 45px rgba(69,13,91,.07);margin-bottom:18px}.epy-contact-summary-main{display:flex;align-items:flex-start;gap:14px;min-width:0}.epy-contact-summary-icon{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:16px;background:#e9fff3;color:#0c8a51;font-weight:1000}.epy-contact-summary-card h2{margin:4px 0 12px;font-size:1.55rem;letter-spacing:-.04em}.epy-contact-summary-grid{display:flex;flex-wrap:wrap;gap:10px}.epy-contact-summary-grid span{display:grid;gap:2px;border:1px solid #efddf2;border-radius:14px;background:#fff;padding:10px 12px}.epy-contact-summary-grid b{font-size:.72rem;color:#7f6b89;text-transform:uppercase;letter-spacing:.05em}.epy-contact-summary-grid em{font-style:normal;font-weight:900;color:#18102f}@media(max-width:760px){.epy-contact-summary-card{display:grid}.epy-contact-summary-main{display:grid}.epy-contact-summary-grid{display:grid}.epy-contact-summary-card .epy-btn{width:100%}}


/* Checkpoint 18CF: contextual notification icons */
.epy-salon-live-toast-icon{font-size:1.15rem!important;background:rgba(255,255,255,.18)!important}
.epy-modal-device-placeholder,.epy-device-modal-placeholder{font-size:2rem!important}

/* 18CG: keep both CTA buttons visible on homepage and salons list */
.salon-side-actions .btn-es-outline{display:flex!important;visibility:visible!important;opacity:1!important}
.epy-home-salon-card .salon-side-actions,.ep-ref-salons-page .salon-side-actions{grid-template-columns:1fr!important}


/* Checkpoint 18CL: manual booking, custom device and responsive typography polish */
.epy-manual-region-grid,.epy-panel-form-layout,.epy-device-instance-workbench{min-width:0!important;max-width:100%!important}
.epy-device-instance-picker{background:linear-gradient(180deg,#fff,#fff9ff)!important;border-style:solid!important}
.epy-device-instance-error{border-color:#efb5c0!important;background:#fff7f8!important;color:#7b1428!important}
.epy-validation-summary{word-break:normal!important;overflow-wrap:anywhere!important}
.epy-form-grid>label>span:first-child{display:inline-flex!important;align-items:center!important;gap:4px!important;min-height:22px!important}
@media(max-width:760px){.epy-panel-heading h1,.epy-booking-heading h1{font-size:clamp(2rem,9vw,3rem)!important}.epy-form-grid{grid-template-columns:1fr!important}.epy-panel-main{padding-left:14px!important;padding-right:14px!important}.epy-form-submit-bar{position:sticky!important;bottom:0!important;z-index:60!important;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(10px)!important;padding:12px!important;border-top:1px solid #eadbed!important;box-shadow:0 -10px 28px rgba(45,10,62,.08)!important}.epy-form-submit-bar .epy-btn{width:100%!important}}

/* Checkpoint 18CM: named extra documents + no-reset application UX */
.epy-extra-document-builder{border:1px solid #e9d6ee;border-radius:20px;background:linear-gradient(180deg,#fff 0,#fffaff 100%);padding:16px;margin-top:14px;display:grid;gap:14px}.epy-extra-document-builder-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center}.epy-extra-document-builder-head>span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:2px solid #d6b2e3;color:var(--epy-primary);font-size:1.35rem;font-weight:950}.epy-extra-document-builder-head b{display:block;color:var(--epy-ink);font-size:1.05rem}.epy-extra-document-builder-head small{display:block;color:var(--epy-muted);font-weight:750;line-height:1.45}.epy-extra-document-list{display:grid;gap:10px}.epy-extra-document-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) 42px;gap:10px;align-items:end;padding:12px;border:1px solid #eadbed;border-radius:16px;background:#fff}.epy-extra-document-row label{display:grid;gap:6px;font-weight:850;color:var(--epy-ink);min-width:0}.epy-extra-document-row label>span{display:inline-flex;align-items:center;min-height:20px;font-size:.86rem}.epy-extra-document-row input[type=text]{height:48px;border:1px solid #ddcbe6;border-radius:13px;background:#fff;padding:0 13px;font-weight:850;outline:0}.epy-extra-document-row input[type=text]:focus{border-color:var(--epy-primary);box-shadow:0 0 0 4px rgba(169,11,185,.09)}.epy-extra-document-row input[type=file]{width:100%;min-height:48px;border:1px dashed #d7b9df;border-radius:13px;padding:10px;background:#fffaff}.epy-extra-document-row em[data-epy-media-file-name]{display:block;margin-top:4px;color:var(--epy-muted);font-style:normal;font-size:.78rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.epy-extra-document-remove{width:42px;height:42px;border:1px solid #e5cfe9;border-radius:13px;background:#fff;color:#b018bd;font-size:1.2rem;font-weight:950;cursor:pointer}.epy-extra-document-remove:hover{background:#fff2fd;border-color:var(--epy-primary)}.epy-extra-document-note{margin:0;color:#72617d;font-size:.84rem;line-height:1.45}.epy-extra-document-note b{color:var(--epy-primary)}.epy-application-form[data-epy-ajax-submitting="1"]{cursor:progress}.epy-application-form[data-epy-ajax-submitting="1"] button[type=submit]{opacity:.75;pointer-events:none}
@media(max-width:760px){.epy-extra-document-builder-head{grid-template-columns:auto minmax(0,1fr)}.epy-extra-document-builder-head .epy-extra-document-add{grid-column:1/-1;width:100%}.epy-extra-document-row{grid-template-columns:1fr}.epy-extra-document-remove{width:100%}}


/* Checkpoint 18CQ: global form polish, media preview visibility, salon detail mobile/media polish */
.epy-form-grid .required,
.epy-form-grid span.required,
.epy-form-grid .field-validation-valid:empty,
.epy-panel-main form > span:empty,
.epy-content-card form > span:empty{
  display:none!important;
}
.epy-form-grid > span,
.epy-form-grid .epy-field > span,
.epy-panel-main form > span,
.epy-content-card form > span{
  line-height:1.2!important;
}
.epy-form-grid > span:not([class]),
.epy-panel-main form > span:not([class]),
.epy-content-card form > span:not([class]){
  font-size:0!important;
}
.epy-form-grid > span:not([class])::first-letter,
.epy-panel-main form > span:not([class])::first-letter,
.epy-content-card form > span:not([class])::first-letter{
  font-size:0!important;
}
.epy-form-grid label>span:first-child,
.epy-field>label,
.epy-panel-main label{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  line-height:1.25!important;
}
.epy-form-grid label>span:first-child small,
.epy-panel-main label small{align-self:center!important}

.epy-media-preview.has-preview{
  background-color:#fff!important;
  background-position:center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  border-color:#99dcb9!important;
  box-shadow:inset 0 0 0 1px rgba(12,154,92,.22),0 12px 26px rgba(14,116,66,.08)!important;
}
.epy-media-slot.is-uploaded .epy-media-preview.has-preview:before,
.epy-media-slot.is-uploaded .epy-media-preview.has-preview:after,
.epy-media-preview.has-preview:before,
.epy-media-preview.has-preview:after,
.epy-media-preview.has-preview em{
  display:none!important;
}
.epy-media-preview.has-preview + i,
.epy-media-slot.is-uploaded i{
  border-color:#8fdbb5!important;
  background:#ecfff5!important;
  color:#087a42!important;
}

.epy-salon-media-section .epy-salon-media-grid{
  gap:14px!important;
}
.epy-salon-media-section .epy-salon-media-tile{
  border:1px solid #eadbed!important;
  background:#fff!important;
  box-shadow:0 16px 36px rgba(51,13,63,.06)!important;
}
.epy-salon-media-section .epy-salon-media-tile span{
  background:rgba(24,16,47,.76)!important;
  color:#fff!important;
  backdrop-filter:blur(10px)!important;
}
.epy-document-trust-grid{
  align-items:stretch!important;
}
.epy-document-trust-grid span{
  display:flex!important;
  align-items:center!important;
  min-height:76px!important;
  border:1px solid #d4f0e1!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,#effff6,#f9fffc)!important;
  color:#075f38!important;
  font-weight:900!important;
  line-height:1.35!important;
}
.epy-document-trust-grid span.is-verified-only{
  border-color:#eadbed!important;
  background:linear-gradient(145deg,#fffaff,#fff)!important;
  color:#6b5a73!important;
}
.epy-public-document-card{
  border-radius:18px!important;
  box-shadow:0 16px 38px rgba(51,13,63,.06)!important;
}

.epy-gallery-single-copy{
  border:1px solid #eadbed!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 16px 34px rgba(51,13,63,.08)!important;
}
.epy-gallery-single-copy span{
  color:var(--epy-primary)!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  font-size:.72rem!important;
}
.epy-gallery-single-copy b{
  display:block!important;
  max-width:240px!important;
  font-size:1rem!important;
  line-height:1.25!important;
}

.epy-panel .epy-form-grid,
.epy-panel-main .epy-form-grid,
.epy-content-card .epy-form-grid{
  align-items:start!important;
}
.epy-panel input,
.epy-panel select,
.epy-panel textarea{
  min-width:0!important;
}

@media(max-width:900px){
  .epy-detail-gallery{
    height:auto!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .epy-detail-main{
    min-height:0!important;
    aspect-ratio:4/3!important;
    border-radius:22px!important;
  }
  .epy-detail-main img{height:100%!important;object-fit:cover!important}
  .epy-detail-mosaic{
    display:none!important;
  }
  .epy-gallery-all-button{
    position:static!important;
    width:100%!important;
    min-height:56px!important;
    border-radius:18px!important;
    justify-content:center!important;
    margin-top:0!important;
    background:linear-gradient(135deg,var(--epy-primary),var(--epy-primary-dark))!important;
    color:#fff!important;
    font-size:1.08rem!important;
  }
  .epy-gallery-all-button span{
    background:#fff!important;
    color:var(--epy-primary)!important;
  }
  .epy-salon-media-grid,
  .epy-public-document-grid,
  .epy-document-trust-grid{
    grid-template-columns:1fr!important;
  }
}

/* Checkpoint 18CR: salon application/panel hardening */
.epy-media-preview.has-preview{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;overflow:hidden!important}
.epy-media-preview.has-preview>em{display:none!important}
.epy-media-preview [data-epy-file-preview-image]{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;border-radius:inherit!important}
.epy-media-slot-card.is-uploaded .epy-media-preview{border-color:#9ee5c2!important;box-shadow:inset 0 0 0 1px rgba(20,150,88,.16)!important}
.epy-step-validation,.epy-validation-summary{scroll-margin-top:120px!important}
.epy-step-validation{position:relative!important;margin:0 0 18px!important}
.epy-form-grid>.required,.epy-panel-form-layout>.required,.epy-field>.required,.epy-field-block>.required,.epy-form-grid>span.required{display:none!important}
.epy-field>span,.epy-field-block>span,.epy-device-field>span{display:inline-flex!important;align-items:center!important;gap:4px!important;white-space:normal!important;line-height:1.25!important}
.epy-field input,.epy-field select,.epy-field textarea,.epy-field-block input,.epy-field-block select,.epy-field-block textarea{width:100%!important;min-width:0!important}
.epy-profile-form .epy-location-status,.epy-profile-form .epy-location-result{word-break:break-word!important}
.epy-document-trust span,.epy-public-document-grid a,.epy-public-document-card{background:#f1fff7!important;border-color:#c8f0dc!important;color:#0a6f46!important}
.epy-document-trust span:not(:has(a)){background:#fff9fd!important;border-color:#eadbed!important;color:#66556f!important}
.epy-request-list article{grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important;overflow:hidden!important}
.epy-request-list article>*{min-width:0!important}.epy-request-list article strong,.epy-request-list article p{overflow-wrap:anywhere!important}.epy-request-list article small{display:block!important;overflow-wrap:anywhere!important}
.epy-calendar-wrap{max-width:100%!important;overflow:auto!important}.epy-calendar-grid{min-width:max(980px,calc(150px + var(--device-count,1)*190px))!important}.epy-calendar-device small{display:block!important;color:#776682!important;margin-top:4px!important}
.epy-capacity-badge{white-space:nowrap!important}
@media(max-width:900px){.epy-form-submit-bar{position:sticky!important;bottom:0!important;z-index:60!important}.epy-calendar-grid{min-width:max(760px,calc(110px + var(--device-count,1)*160px))!important}.epy-benefit-inner div span,.es16-benefit-inner div span{white-space:normal!important;word-break:normal!important}.epy-gallery-mobile-note,.epy-gallery-single-copy{display:none!important}}


/* Checkpoint 18CS: salon detail/gallery, media separation, form markers and panel layout hardening */
.epy-media-preview.has-preview::before,
.epy-media-preview.has-preview::after{display:none!important}
.epy-media-preview.has-preview [data-epy-file-preview-image]{position:absolute!important;inset:0!important;z-index:3!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:inherit!important}
.epy-media-preview.has-preview{background-color:#fff!important;background-image:none!important}
.epy-media-preview.has-preview>em{display:none!important}

.epy-detail-gallery{align-items:stretch!important}
.epy-detail-main{max-height:560px!important;aspect-ratio:16/9!important;overflow:hidden!important}
.epy-detail-main img{width:100%!important;height:100%!important;object-fit:cover!important}
.epy-detail-mosaic{align-content:stretch!important}
.epy-gallery-all-button{position:absolute!important;right:24px!important;bottom:24px!important;z-index:12!important;display:inline-flex!important;align-items:center!important;gap:10px!important;min-height:48px!important;border-radius:16px!important;background:rgba(255,255,255,.94)!important;color:#251640!important;box-shadow:0 16px 42px rgba(35,20,55,.18)!important;text-decoration:none!important;font-weight:950!important;padding:0 18px!important;backdrop-filter:blur(8px)!important}
.epy-gallery-all-button span{display:inline-grid!important;place-items:center!important;min-width:28px!important;height:28px!important;border-radius:999px!important;background:#f6e9f8!important;color:#a70dab!important}
.epy-gallery-single-copy{display:none!important}
.epy-salon-media-section-v2 .epy-media-subtitle{margin-top:28px!important;padding-top:20px!important;border-top:1px solid #f0e4f1!important}
.epy-salon-media-grid{align-items:stretch!important}
.epy-salon-media-tile{height:260px!important;background:#fff!important;box-shadow:0 14px 34px rgba(47,18,63,.08)!important}
.epy-salon-media-tile img{width:100%!important;height:100%!important;object-fit:cover!important}
.epy-device-media-tile img{object-fit:contain!important;background:#fbf7fc!important}
.epy-salon-media-tile span{background:linear-gradient(135deg,rgba(38,21,55,.88),rgba(122,22,154,.88))!important;color:#fff!important}
.epy-document-trust-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;gap:12px!important}
.epy-document-trust-grid span{min-height:76px!important;display:flex!important;align-items:center!important;font-weight:900!important;border-radius:16px!important}
.epy-public-document-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;gap:12px!important;margin-top:14px!important}
.epy-public-document-card{min-height:120px!important;display:grid!important;gap:8px!important;border-radius:16px!important;background:#fff!important;border:1px solid #eadbed!important;text-decoration:none!important;color:#251640!important;padding:16px!important;box-shadow:0 12px 30px rgba(39,18,51,.06)!important}

.epy-form-grid .required,
.epy-form-grid > .required,
.epy-field .required,
.epy-field-block .required,
.epy-price-row .required,
.epy-panel-form-layout .required,
.epy-form-grid > span:not([class]):only-child{display:none!important}
.epy-form-grid label>span,
.epy-field>span,
.epy-field-block>span,
.epy-price-row label>span{display:inline-flex!important;align-items:center!important;gap:4px!important;white-space:normal!important;line-height:1.25!important}
.epy-request-list article{grid-template-columns:minmax(0,1fr) auto!important;max-width:100%!important}
.epy-request-list article>*{min-width:0!important;overflow-wrap:anywhere!important}
.epy-status{text-transform:none!important}

body:has(.epy-panel) .es16-benefit-band,
body:has(.epy-panel) .es16-footer{display:none!important}
@media(max-width:900px){
  .epy-detail-gallery{position:relative!important;grid-template-columns:1fr!important;padding:0!important}
  .epy-detail-main{aspect-ratio:16/10!important;max-height:none!important;border-radius:24px!important}
  .epy-gallery-all-button{position:static!important;width:100%!important;justify-content:center!important;margin-top:12px!important;background:linear-gradient(135deg,var(--epy-primary,#bd10b4),#8310a4)!important;color:#fff!important}
  .epy-gallery-all-button span{background:#fff!important;color:#a80dae!important}
  .epy-detail-mosaic{display:flex!important;gap:10px!important;overflow-x:auto!important;padding-bottom:8px!important}
  .epy-gallery-thumb{flex:0 0 124px!important;height:92px!important}
  .epy-salon-media-tile{height:220px!important}
}
@media(max-width:600px){
  .epy-salon-media-grid{grid-template-columns:1fr!important}
  .epy-salon-media-tile{height:240px!important}
}


/* Checkpoint 18CV: salon detail media cleanup, modal gallery and mobile filter polish */
.epy-salon-media-section-v2 .epy-salon-media-tile{
  border:1px solid #eadbed!important;border-radius:22px!important;background:#fff!important;box-shadow:0 12px 34px rgba(64,15,75,.06)!important;overflow:hidden!important;cursor:pointer!important;text-align:left!important;padding:0!important;color:#18102f!important
}
.epy-salon-media-section-v2 button.epy-salon-media-tile{appearance:none;-webkit-appearance:none;border:1px solid #eadbed!important}
.epy-salon-media-section-v2 .epy-salon-media-tile img{width:100%!important;height:210px!important;object-fit:cover!important;display:block!important;background:#fff!important}
.epy-salon-media-section-v2 .epy-salon-media-tile span{display:block!important;margin:-50px 14px 14px!important;position:relative!important;padding:10px 14px!important;border-radius:999px!important;background:rgba(24,16,47,.86)!important;color:#fff!important;font-weight:900!important;text-align:center!important;box-shadow:0 12px 30px rgba(24,16,47,.18)!important}
.epy-image-modal[hidden]{display:none!important}
.epy-image-modal{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:28px}
.epy-image-modal-backdrop{position:absolute;inset:0;background:rgba(15,10,25,.72);backdrop-filter:blur(10px)}
.epy-image-modal-dialog{position:relative;z-index:1;width:min(940px,96vw);max-height:92vh;border-radius:26px;background:#fff;padding:18px;box-shadow:0 34px 90px rgba(0,0,0,.32);display:grid;gap:12px}
.epy-image-modal-dialog img{width:100%;max-height:76vh;object-fit:contain;border-radius:18px;background:#f8f5fa}
.epy-image-modal-dialog b{font-size:1.05rem;color:#18102f;text-align:center}
.epy-image-modal-close{position:absolute;right:12px;top:12px;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#18102f;font-size:30px;line-height:1;box-shadow:0 10px 26px rgba(0,0,0,.16);cursor:pointer}
.epy-image-modal-open{overflow:hidden!important}
.ep-ref-search-quickline{align-items:stretch!important}
.ep-ref-search-quickline select,
.ep-ref-search-quickline input[type="date"]{min-height:58px!important;background:#fff!important;color:#18102f!important;border:1px solid #eadbed!important;border-radius:18px!important;font-weight:850!important;padding:0 18px!important}
.ep-ref-search-quickline input[type="date"]:invalid,
.ep-ref-search-quickline input[type="date"]:placeholder-shown{color:#70657b!important;background:#fff!important}
@media(max-width:768px){
  .ep-ref-search-quickline{grid-template-columns:1fr!important;gap:12px!important}
  .ep-ref-search-quickline select,
  .ep-ref-search-quickline input[type="date"],
  .ep-ref-mini-search{width:100%!important}
  .epy-salon-media-section-v2 .epy-salon-media-tile img{height:180px!important}
}

/* Checkpoint 18CW: minimal salon detail, mobile search, and date-field readability polish */
.epy-salon-detail-clean{
  max-width:1320px!important;
  margin:0 auto!important;
  padding:24px 18px 96px!important;
  background:linear-gradient(180deg,#fff 0,#fffafd 42%,#fff 100%)!important;
}
.epy-clean-shell{display:grid;gap:18px;min-width:0}
.epy-clean-gallery{position:relative;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.72fr);gap:12px;min-height:430px}
.epy-clean-gallery-main,.epy-clean-gallery-thumb{position:relative;display:block;overflow:hidden;border-radius:28px;background:#f8edf8;border:1px solid #efdff2;text-decoration:none;box-shadow:0 22px 54px rgba(53,13,74,.08)}
.epy-clean-gallery-main img,.epy-clean-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .28s ease}
.epy-clean-gallery-main:hover img,.epy-clean-gallery-thumb:hover img{transform:scale(1.025)}
.epy-clean-gallery-strip{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-height:0}
.epy-clean-gallery-thumb{border-radius:22px;min-height:0}
.epy-clean-gallery-thumb span{position:absolute;inset:0;display:grid;place-items:center;background:rgba(20,8,28,.54);color:#fff;font-weight:1000;font-size:1.3rem}
.epy-clean-gallery-empty{border:1px solid #eadbed;border-radius:22px;background:#fff7fd;color:#8d129d;font-weight:950;cursor:pointer}
.epy-clean-gallery-count{position:absolute;right:18px;bottom:18px;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 15px;border-radius:999px;background:rgba(255,255,255,.94);color:#211136;text-decoration:none;font-weight:950;box-shadow:0 16px 32px rgba(25,8,36,.18);backdrop-filter:blur(10px)}
.epy-clean-hero-card{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:18px;align-items:stretch;border:1px solid #f0dff2;border-radius:30px;background:rgba(255,255,255,.96);box-shadow:0 24px 60px rgba(61,12,85,.08);padding:24px}
.epy-clean-hero-main{min-width:0}
.epy-clean-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.epy-clean-badges span{display:inline-flex;align-items:center;gap:5px;border-radius:999px;background:#fff0fb;color:#9b0dab;border:1px solid #f1d4f6;padding:7px 11px;font-weight:950;font-size:.78rem;line-height:1}
.epy-clean-badges.compact{margin:0 0 9px}
.epy-clean-badges.compact span{font-size:.73rem;padding:6px 9px}
.epy-clean-hero-card h1{margin:6px 0 8px;font-size:clamp(2.1rem,4vw,3.55rem);line-height:.98;letter-spacing:-.06em;color:#170a31}
.epy-clean-hero-card p{max-width:880px;margin:14px 0 0;color:#66586f;font-weight:650;line-height:1.65}
.epy-clean-meta{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;color:#6d6077;font-weight:850}
.epy-clean-meta b{color:#f4a700;font-weight:1000}
.epy-clean-address{display:flex;align-items:flex-start;gap:10px;margin-top:14px;color:#201532;font-weight:850;line-height:1.45}
.epy-clean-address span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:12px;background:#faf0fb;color:#a90bb9}
.epy-clean-hero-actions{display:grid;grid-template-rows:auto 1fr auto;gap:10px;align-content:start}
.epy-clean-icon-button{width:48px;height:48px;border-radius:16px;border:1px solid #eadbed;background:#fff;color:#a90bb9;font-size:1.35rem;font-weight:1000;cursor:pointer;box-shadow:0 14px 30px rgba(69,13,91,.06)}
.epy-clean-icon-button.active{background:#fff0fb;border-color:#d82ee7}
.epy-clean-booking,.epy-clean-route{width:100%;min-height:52px;border-radius:16px!important}
.epy-clean-tabs{position:sticky;top:76px;z-index:25;display:flex;gap:8px;overflow-x:auto;padding:8px;border:1px solid #f0dff2;border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 18px 38px rgba(56,14,77,.08);backdrop-filter:blur(12px);scrollbar-width:none}
.epy-clean-tabs::-webkit-scrollbar{height:0}
.epy-clean-tabs a{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 15px;border-radius:13px;text-decoration:none;color:#675972;font-weight:950;white-space:nowrap}
.epy-clean-tabs a:hover{background:#fff0fb;color:#a90bb9}
.epy-clean-card{border:1px solid #f0dff2;border-radius:30px;background:#fff;box-shadow:0 22px 56px rgba(69,13,91,.07);padding:24px;overflow:hidden}
.epy-clean-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:18px}
.epy-clean-section-head h2{margin:4px 0 0;font-size:clamp(1.65rem,2.4vw,2.35rem);line-height:1.04;letter-spacing:-.05em;color:#170a31}
.epy-clean-section-head p{max-width:440px;margin:0;color:#74657d;line-height:1.55;font-weight:720}
.epy-clean-device-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.epy-clean-device-card{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px;align-items:stretch;border:1px solid #f0dff2;border-radius:24px;background:linear-gradient(135deg,#fff,#fffafd);padding:16px;min-width:0}
.epy-clean-device-visual{display:grid;place-items:center;width:100%;min-height:220px;border:0;border-radius:20px;background:linear-gradient(145deg,#fff5fc,#f7f0f8);overflow:hidden;cursor:pointer}
.epy-clean-device-visual img{width:100%;height:100%;max-height:260px;object-fit:contain;display:block}
.epy-clean-device-visual span{font-size:2.5rem;color:#a90bb9}
.epy-clean-device-body{display:grid;align-content:start;min-width:0}
.epy-clean-device-body h3{margin:0 0 6px;font-size:1.35rem;line-height:1.12;letter-spacing:-.035em;color:#170a31}
.epy-clean-device-body p{margin:0 0 12px;color:#6d6077;line-height:1.52;font-weight:650;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.epy-clean-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 14px}
.epy-clean-specs div{padding:10px 11px;border:1px solid #f0e3f2;border-radius:14px;background:#fff}
.epy-clean-specs dt{font-size:.72rem;color:#7d7087;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.epy-clean-specs dd{margin:3px 0 0;color:#1b1130;font-weight:950;line-height:1.22;overflow-wrap:anywhere}
.epy-clean-device-actions{display:flex;gap:9px;margin-top:auto}
.epy-clean-device-actions .epy-btn{flex:1;min-height:44px;border-radius:14px!important;font-size:.88rem;padding:.65rem .8rem}
.epy-clean-doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.epy-clean-doc-group{border:1px solid #f0dff2;border-radius:24px;background:linear-gradient(135deg,#fff,#fffafd);padding:18px;min-width:0}
.epy-clean-doc-group header{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}
.epy-clean-doc-group header>span{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:16px;background:#fff0fb;color:#a90bb9;font-weight:1000}
.epy-clean-doc-group header b{display:block;color:#170a31;font-size:1.08rem}
.epy-clean-doc-group header small{display:block;margin-top:3px;color:#766780;font-weight:750;line-height:1.25}
.epy-clean-doc-list{display:grid;gap:9px}
.epy-clean-doc-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;min-height:54px;padding:11px 12px;border:1px solid #f0dff2;border-radius:16px;background:#fff;color:#170a31;text-decoration:none;box-shadow:0 12px 28px rgba(68,13,91,.045)}
.epy-clean-doc-card>span:first-child{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:28px;border-radius:999px;background:#f9e9fb;color:#a90bb9;font-size:.72rem;font-weight:1000;text-transform:uppercase}
.epy-clean-doc-card b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem}
.epy-clean-doc-card small{color:#a90bb9;font-weight:950;white-space:nowrap}
.epy-clean-doc-card.is-verified-only{color:#6f6178;background:#fff;box-shadow:none}
.epy-clean-doc-card.is-verified-only small{color:#0c8b55}
.epy-clean-service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.epy-clean-service-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #f0dff2;border-radius:16px;background:#fff;padding:13px 14px;font-weight:900}
.epy-clean-service-row small{display:inline-block;margin-left:6px;color:#7d7087;font-size:.82rem;font-weight:800}
.epy-clean-service-row b{color:#a90bb9;white-space:nowrap}
.epy-clean-score{display:grid;justify-items:end;gap:3px}
.epy-clean-score b{font-size:1.35rem;color:#f2a500;font-weight:1000}
.epy-clean-score span{color:#756780;font-weight:850}
.epy-clean-review-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.epy-clean-review-card{box-shadow:none!important;background:#fff!important}
.epy-clean-review-actions{margin-top:14px!important}
.epy-clean-mobile-cta{display:none;position:fixed;left:14px;right:14px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:80;min-height:56px;border-radius:18px;background:linear-gradient(135deg,#a90bb9,#6b0792);color:#fff;text-decoration:none;font-weight:1000;align-items:center;justify-content:center;gap:8px;box-shadow:0 20px 48px rgba(169,11,185,.34)}
.epy-muted{color:#776982;font-weight:750;line-height:1.55}

.epy-home-query-field{grid-column:1/-1;position:relative;display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;align-items:center;min-height:72px;border:1px solid #ead8ef;border-radius:22px;background:#fff;padding:12px 16px;box-shadow:0 14px 36px rgba(61,11,89,.06)}
.epy-home-query-field>span{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:#f7e9ff;color:#a90bb9;font-size:1.35rem}
.epy-home-query-field input{width:100%;height:30px;border:0!important;outline:0!important;background:transparent!important;color:#18102f!important;-webkit-text-fill-color:#18102f!important;font-size:1.08rem;font-weight:950;padding:0!important;min-width:0}
.epy-home-query-field input::placeholder{color:#887892;-webkit-text-fill-color:#887892}
.epy-home-query-field small{grid-column:2;color:#7e7188;font-weight:760;margin-top:-8px}
.epy-quick-date-tile input[type=date]{position:static!important;opacity:1!important;grid-column:2!important;width:100%!important;height:34px!important;margin-top:4px!important;border:1px solid #ead8ef!important;border-radius:11px!important;background:#fff!important;color:#18102f!important;-webkit-text-fill-color:#18102f!important;padding:0 10px!important;font-weight:900!important;cursor:pointer;color-scheme:light}
.epy-quick-date-tile input[type=date]::-webkit-date-and-time-value{color:#18102f!important;text-align:left!important}
.ep-ref-search-quickline-clean{display:grid!important;grid-template-columns:minmax(250px,1.3fr) minmax(150px,.65fr) minmax(150px,.65fr) minmax(190px,.72fr) 108px!important;gap:12px!important;align-items:stretch!important}
.ep-ref-mini-search--dominant{min-height:58px!important;border-radius:18px!important;background:#fff!important;box-shadow:0 12px 28px rgba(61,11,89,.06)!important}
.ep-ref-mini-search--dominant input{font-size:1rem!important;font-weight:950!important;color:#18102f!important;-webkit-text-fill-color:#18102f!important}
.ep-ref-search-quickline-clean select{min-height:58px!important;border-radius:18px!important;color:#18102f!important;-webkit-text-fill-color:#18102f!important;background:#fff!important;font-weight:900!important;box-shadow:0 12px 28px rgba(61,11,89,.04)!important}
.ep-ref-date-field{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;min-height:58px;border:1px solid #ead8ef;border-radius:18px;background:#fff;padding:8px 11px;box-shadow:0 12px 28px rgba(61,11,89,.04)}
.ep-ref-date-field>span{display:grid;place-items:center;width:40px;height:40px;border-radius:14px;background:#f7e9ff;color:#a90bb9}
.ep-ref-date-field b{display:block;color:#18102f;font-size:.86rem;font-weight:1000;line-height:1}
.ep-ref-date-field small{display:block;color:#7e7188;font-size:.72rem;font-weight:760;line-height:1.1;margin-top:3px}
.ep-ref-date-field input[type=date]{grid-column:1/-1;width:100%;height:32px;border:1px solid #efe0f2;border-radius:10px;background:#fff;color:#18102f!important;-webkit-text-fill-color:#18102f!important;padding:0 9px;font-weight:900;color-scheme:light}
.ep-ref-date-field input[type=date]::-webkit-date-and-time-value{color:#18102f!important;text-align:left!important}
.ep-ref-search-submit{min-height:58px;border:0;border-radius:18px;background:linear-gradient(135deg,#a90bb9,#6f0794);color:#fff;font-weight:1000;box-shadow:0 15px 34px rgba(169,11,185,.22);cursor:pointer}
.ep-ref-search-clean .search-board--premium-filter{overflow:visible!important}
.ep-ref-search-clean input[type=date],.epy-quick-home input[type=date]{color:#18102f!important;-webkit-text-fill-color:#18102f!important;background:#fff!important;color-scheme:light!important}
.ep-ref-search-clean input[type=date]::-webkit-calendar-picker-indicator,.epy-quick-home input[type=date]::-webkit-calendar-picker-indicator{opacity:.85;filter:none!important}

@media(max-width:1060px){
  .epy-clean-gallery{grid-template-columns:1fr;min-height:0}
  .epy-clean-gallery-main{aspect-ratio:16/10}
  .epy-clean-gallery-strip{display:flex;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x proximity;scrollbar-width:none}
  .epy-clean-gallery-strip::-webkit-scrollbar{height:0}
  .epy-clean-gallery-thumb,.epy-clean-gallery-empty{flex:0 0 128px;height:92px;scroll-snap-align:start}
  .epy-clean-hero-card{grid-template-columns:1fr}
  .epy-clean-hero-actions{grid-template-columns:auto 1fr 1fr;grid-template-rows:auto;align-items:center}
  .epy-clean-device-list,.epy-clean-doc-grid{grid-template-columns:1fr}
  .ep-ref-search-quickline-clean{grid-template-columns:1fr 1fr!important}
  .ep-ref-mini-search--dominant{grid-column:1/-1!important}
  .ep-ref-search-submit{grid-column:1/-1!important}
}
@media(max-width:720px){
  .epy-salon-detail-clean{padding:12px 12px 92px!important}
  .epy-clean-gallery{gap:9px}
  .epy-clean-gallery-main{border-radius:22px;aspect-ratio:16/11}
  .epy-clean-gallery-count{right:12px;bottom:12px;min-height:38px;font-size:.86rem}
  .epy-clean-hero-card,.epy-clean-card{border-radius:22px;padding:17px}
  .epy-clean-hero-card h1{font-size:clamp(2rem,10vw,2.75rem)}
  .epy-clean-hero-card p{font-size:.94rem;line-height:1.55}
  .epy-clean-hero-actions{gap:8px;grid-template-columns:48px 1fr 1fr}
  .epy-clean-booking,.epy-clean-route{min-height:48px;font-size:.88rem;padding:.6rem .75rem!important}
  .epy-clean-tabs{top:0;margin:0 -2px;border-radius:15px;padding:6px}
  .epy-clean-section-head{display:grid;gap:8px;margin-bottom:14px}
  .epy-clean-section-head p{max-width:none;font-size:.9rem}
  .epy-clean-device-card{grid-template-columns:1fr;padding:13px;border-radius:20px}
  .epy-clean-device-visual{min-height:190px}
  .epy-clean-specs{grid-template-columns:1fr 1fr;gap:7px}
  .epy-clean-device-actions{flex-direction:column}
  .epy-clean-doc-card{grid-template-columns:auto minmax(0,1fr);gap:8px}
  .epy-clean-doc-card small{grid-column:2;white-space:normal}
  .epy-clean-service-list,.epy-clean-review-list{grid-template-columns:1fr!important}
  .epy-clean-mobile-cta{display:flex}
  .ep-ref-search-quickline-clean{grid-template-columns:1fr!important;gap:10px!important}
  .ep-ref-date-field{min-height:68px}
  .epy-home-query-field{min-height:68px;padding:10px 12px;grid-template-columns:44px minmax(0,1fr)}
  .epy-home-query-field>span{width:42px;height:42px}
  .epy-home-query-field input{font-size:.98rem}
  .epy-home-query-field small{font-size:.72rem}
}
@media(max-width:460px){
  .epy-clean-specs{grid-template-columns:1fr}
  .epy-clean-hero-actions{grid-template-columns:44px 1fr;grid-template-areas:"fav route" "booking booking"}
  .epy-clean-hero-actions .epy-favorite-form{grid-area:fav}
  .epy-clean-route{grid-area:route}
  .epy-clean-booking{grid-area:booking}
}

/* Checkpoint 18CX: polished salon detail, single gallery, simple device cards */
.epy-salon-detail-classic{background:linear-gradient(180deg,#fff 0%,#fff8fe 100%)!important;padding:30px 18px 72px!important;color:#170a31!important}.epy-classic-shell{width:min(1180px,100%);margin:0 auto;display:grid;gap:18px}.epy-single-gallery{position:relative;display:grid;gap:12px}.epy-single-gallery-main{position:relative;display:block;overflow:hidden;border-radius:28px;border:1px solid #ead8ee;background:#f8edf8;min-height:420px;box-shadow:0 26px 72px rgba(53,13,74,.09);text-decoration:none}.epy-single-gallery-main img{display:block;width:100%;height:100%;max-height:620px;min-height:420px;object-fit:cover;transition:transform .25s ease}.epy-single-gallery-main:hover img{transform:scale(1.015)}.epy-single-gallery-thumbs{display:flex;gap:10px;overflow-x:auto;padding:1px 2px 5px;scrollbar-width:thin}.epy-single-gallery-thumb{flex:0 0 112px;height:76px;border-radius:16px;overflow:hidden;border:2px solid transparent;background:#f7edf9;box-shadow:0 10px 24px rgba(55,13,78,.06);opacity:.82;text-decoration:none}.epy-single-gallery-thumb.active,.epy-single-gallery-thumb:hover{border-color:#b000d4;opacity:1}.epy-single-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}.epy-single-gallery-count{position:absolute;right:18px;bottom:102px;z-index:3;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:999px;background:rgba(255,255,255,.95);color:#170a31;text-decoration:none;font-weight:950;box-shadow:0 16px 38px rgba(26,8,36,.18);backdrop-filter:blur(10px)}.epy-single-gallery-count b{display:grid;place-items:center;min-width:26px;height:26px;border-radius:999px;background:#f7e3fb;color:#a90bb9;font-size:.8rem}.epy-classic-hero-card{margin-top:0!important}.epy-clean-location-icon,.epy-clean-route svg{display:inline-grid;place-items:center;flex:0 0 auto}.epy-clean-location-icon svg,.epy-clean-route svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.epy-clean-address{gap:10px!important}.epy-clean-route{display:inline-flex!important;align-items:center!important;gap:8px!important}.epy-classic-tabs{position:sticky;top:0;z-index:8;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(10px)}.epy-classic-about-section{display:grid;gap:16px}.epy-classic-about-head h2{margin:.12rem 0 0;font-size:clamp(1.6rem,3.2vw,2.25rem);letter-spacing:-.045em;color:#170a31}.epy-classic-feature-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #ead8ee;border-radius:18px;background:#fff;overflow:hidden}.epy-classic-feature-strip span{display:flex;align-items:center;justify-content:center;gap:8px;min-height:54px;padding:12px 14px;font-weight:900;font-size:.9rem;color:#28163f;border-right:1px solid #ead8ee}.epy-classic-feature-strip span:last-child{border-right:0}.epy-classic-feature-strip b{display:grid;place-items:center;width:20px;height:20px;border-radius:999px;background:#eefbf4;color:#0c8b55;font-size:.75rem}.epy-device-simple-list{display:grid;gap:14px}.epy-device-simple-card{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;align-items:stretch;border:1px solid #efd9f3;border-radius:26px;background:linear-gradient(135deg,#fff,#fffaff);padding:18px;box-shadow:0 18px 44px rgba(61,13,83,.055)}.epy-device-simple-image{display:grid;place-items:center;min-height:180px;border:0;border-radius:22px;background:linear-gradient(145deg,#fff3fc,#f5ecf8);overflow:hidden;cursor:pointer}.epy-device-simple-image img{display:block;width:100%;height:100%;max-height:230px;object-fit:cover}.epy-device-simple-image span{font-size:2.4rem;color:#a90bb9}.epy-device-simple-body{display:grid;align-content:center;gap:10px;min-width:0}.epy-device-simple-kickers{display:flex;flex-wrap:wrap;gap:7px}.epy-device-simple-kickers span{border-radius:999px;background:#f8e4fb;color:#a90bb9;padding:6px 9px;font-size:.74rem;font-weight:1000}.epy-device-simple-body h3{margin:0;color:#170a31;font-size:1.55rem;line-height:1.08;letter-spacing:-.04em;font-weight:1000}.epy-device-simple-body p{margin:0;color:#67596f;font-weight:700;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.epy-device-simple-meta{display:flex;flex-wrap:wrap;gap:9px;margin:2px 0 0}.epy-device-simple-meta div{display:grid;gap:2px;min-width:130px;border:1px solid #f0dff2;border-radius:14px;padding:9px 11px;background:#fff}.epy-device-simple-meta dt{font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:#8a7591;font-weight:950}.epy-device-simple-meta dd{margin:0;color:#1d1035;font-weight:950}.epy-device-simple-actions{display:flex;gap:10px;align-items:center;margin-top:4px}.epy-device-simple-actions .epy-btn{min-height:44px;border-radius:15px!important;padding:.68rem 1rem!important}.epy-documents-polished-grid{gap:16px!important}.epy-documents-polished-group{border:1px solid #efd9f3;border-radius:26px;background:linear-gradient(135deg,#fff,#fffaff);padding:20px;min-width:0;box-shadow:0 18px 44px rgba(61,13,83,.045)}.epy-documents-polished-group header{display:flex;align-items:flex-start;gap:13px;margin-bottom:16px}.epy-doc-group-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:17px;background:#fff0fb;color:#a90bb9}.epy-doc-group-icon svg,.epy-documents-polished-card .doc-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.epy-documents-polished-group header b{display:block;color:#170a31;font-size:1.12rem;font-weight:1000}.epy-documents-polished-group header small{display:block;margin-top:3px;color:#766780;font-weight:740;line-height:1.25}.epy-documents-polished-list{display:grid;gap:9px}.epy-documents-polished-card{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:10px 12px;border:1px solid #f0dff2;border-radius:17px;background:#fff;text-decoration:none;color:#170a31;box-shadow:0 12px 28px rgba(68,13,91,.04)}.epy-documents-polished-card:hover{border-color:#d99fe4;box-shadow:0 16px 34px rgba(169,11,185,.09);transform:translateY(-1px)}.epy-documents-polished-card .doc-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:#f9e9fb;color:#a90bb9}.epy-documents-polished-card b{font-size:.96rem;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.epy-documents-polished-card small{color:#a90bb9;font-weight:1000;white-space:nowrap}.epy-documents-polished-card.is-verified-only{color:#5f5268;background:#fff}.epy-documents-polished-card.is-verified-only .doc-icon{background:#e9fff3;color:#0c8b55}.epy-documents-polished-card.is-verified-only small{color:#0c8b55}.epy-device-detail-modal .epy-modal-dialog{max-width:1080px!important;width:min(1080px,calc(100vw - 32px))!important;padding:24px!important}.epy-device-modal-pro{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:24px}.epy-device-modal-gallery{display:grid;gap:12px;min-width:0}.epy-device-modal-main{position:relative;display:grid;place-items:center;width:100%;min-height:420px;border:1px solid #ead8ee;border-radius:24px;background:linear-gradient(145deg,#fff5fc,#f5edf8);overflow:hidden;cursor:pointer}.epy-device-modal-main img{display:block;width:100%;height:100%;max-height:520px;object-fit:contain}.epy-device-modal-main span{position:absolute;left:14px;bottom:14px;max-width:calc(100% - 28px);border-radius:999px;background:rgba(32,13,45,.74);color:#fff;padding:7px 12px;font-size:.82rem;font-weight:1000;backdrop-filter:blur(8px)}.epy-device-modal-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.epy-device-modal-thumbs button{display:grid;gap:6px;text-align:left;border:1px solid #ead8ee;border-radius:16px;background:#fff;padding:7px;cursor:pointer;color:#170a31}.epy-device-modal-thumbs button.active,.epy-device-modal-thumbs button:hover{border-color:#a90bb9;background:#fff7ff}.epy-device-modal-thumbs img{width:100%;height:86px;object-fit:cover;border-radius:11px;background:#f8edf8}.epy-device-modal-thumbs span{font-size:.75rem;font-weight:900;line-height:1.15;color:#4d3a5c}.epy-device-modal-info{display:grid;align-content:start;gap:13px}.epy-device-modal-info h2{margin:0;color:#170a31;font-size:clamp(2rem,4vw,3rem);line-height:.98;letter-spacing:-.06em;font-weight:1000}.epy-device-modal-info p{margin:0;color:#67596f;font-weight:720;line-height:1.54}.epy-device-modal-specs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:4px 0}.epy-device-modal-specs div{border:1px solid #f0dff2;border-radius:16px;background:#fff;padding:12px}.epy-device-modal-specs dt{font-size:.72rem;color:#8a7591;text-transform:uppercase;letter-spacing:.06em;font-weight:950}.epy-device-modal-specs dd{margin:2px 0 0;color:#170a31;font-weight:1000}.epy-device-modal-placeholder{display:grid;place-items:center;min-height:300px;border:1px solid #ead8ee;border-radius:24px;background:#f8edf8;color:#a90bb9;font-size:3rem}
@media(max-width:900px){.epy-single-gallery-main{min-height:0;aspect-ratio:16/10}.epy-single-gallery-main img{min-height:0;max-height:none}.epy-single-gallery-count{bottom:18px}.epy-classic-feature-strip{grid-template-columns:1fr 1fr}.epy-classic-feature-strip span:nth-child(2){border-right:0}.epy-classic-feature-strip span:nth-child(-n+2){border-bottom:1px solid #ead8ee}.epy-device-simple-card{grid-template-columns:1fr}.epy-device-simple-image{min-height:210px}.epy-device-modal-pro{grid-template-columns:1fr}.epy-device-modal-main{min-height:320px}.epy-clean-doc-grid.epy-documents-polished-grid{grid-template-columns:1fr!important}}
@media(max-width:640px){.epy-salon-detail-classic{padding:12px 12px 92px!important}.epy-classic-shell{gap:12px}.epy-single-gallery-main{border-radius:22px;aspect-ratio:16/11}.epy-single-gallery-thumbs{gap:8px}.epy-single-gallery-thumb{flex-basis:86px;height:62px;border-radius:13px}.epy-single-gallery-count{right:12px;bottom:12px;min-height:38px;font-size:.82rem;padding:0 12px}.epy-classic-tabs{overflow-x:auto;white-space:nowrap}.epy-classic-feature-strip{grid-template-columns:1fr}.epy-classic-feature-strip span{justify-content:flex-start;border-right:0!important;border-bottom:1px solid #ead8ee!important}.epy-classic-feature-strip span:last-child{border-bottom:0!important}.epy-device-simple-card{padding:13px;border-radius:22px}.epy-device-simple-meta{display:grid;grid-template-columns:1fr}.epy-device-simple-actions{display:grid}.epy-documents-polished-card{grid-template-columns:36px minmax(0,1fr);align-items:start}.epy-documents-polished-card small{grid-column:2}.epy-device-detail-modal .epy-modal-dialog{width:calc(100vw - 16px)!important;padding:18px!important;border-radius:22px!important}.epy-device-modal-main{min-height:240px}.epy-device-modal-thumbs{grid-template-columns:repeat(2,minmax(0,1fr))}.epy-device-modal-specs{grid-template-columns:1fr}.epy-device-modal-info h2{font-size:2rem}}

/* Checkpoint 18CX: salon kayıt medya önizleme güvence katmanı */
.epy-media-preview.has-preview{
  background-image:none !important;
  background:#fff !important;
}
.epy-media-preview.has-preview [data-epy-file-preview-image]{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:inherit !important;
  opacity:1 !important;
  visibility:visible !important;
}
.epy-media-preview.has-preview .epy-media-empty-state,
.epy-media-preview.has-preview [data-epy-file-placeholder]{
  display:none !important;
}

/* Checkpoint 18CX.1: açık zorunlu alan ve otomatik karma kapasite görünümü */
.epy-required-pill{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;margin-left:6px;padding:3px 7px;border-radius:999px;background:#fff0fb;color:#a90bb9;border:1px solid #edc6f3;font-size:.64rem;line-height:1;font-weight:1000;letter-spacing:.04em;text-transform:uppercase;font-style:normal;white-space:nowrap}
.epy-specialist-auto-summary{display:flex;align-items:center;gap:12px;min-height:86px;border:1px solid #ead4f0;border-radius:18px;background:linear-gradient(135deg,#fff,#fff7ff);padding:16px 18px;box-shadow:0 12px 30px rgba(80,12,112,.04)}
.epy-specialist-auto-summary:before{content:"✓";display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#f7e7fb;color:#a90bb9;font-weight:1000;flex:0 0 auto}.epy-specialist-auto-summary span{display:grid;gap:4px}.epy-specialist-auto-summary b{font-size:1rem;color:#170a31;font-weight:1000}.epy-specialist-auto-summary small{color:#766780;font-weight:850;line-height:1.25}.epy-specialist-auto-summary-profile{min-height:74px}.epy-choice-grid-profile .epy-specialist-auto-summary{height:100%}
.epy-media-slot strong{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.epy-media-slot .epy-required-pill{margin-left:0}
@media(max-width:720px){.epy-specialist-auto-summary{min-height:72px;padding:13px}.epy-required-pill{font-size:.58rem;padding:3px 6px}}


/* CHECKPOINT 18CY: reservation lookup layout polish */
.epy-lookup-page{max-width:1240px!important;margin:0 auto!important;padding:34px 24px 64px!important;color:var(--epy-ink)!important}
.epy-lookup-hero{max-width:880px!important;margin:0 0 24px!important}
.epy-lookup-hero h1{margin:10px 0 14px!important;font-size:clamp(2.5rem,5vw,4.4rem)!important;line-height:1.03!important;letter-spacing:-.055em!important;color:#18102f!important}
.epy-lookup-hero p{margin:0!important;font-size:1.05rem!important;line-height:1.7!important;color:#6f647b!important}
.epy-lookup-grid{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr)!important;gap:22px!important;align-items:start!important}
.epy-lookup-form,.epy-lookup-result{padding:28px!important;min-width:0!important}
.epy-lookup-form{display:grid!important;gap:16px!important}
.epy-lookup-form label{display:grid!important;gap:8px!important;margin:0!important}
.epy-lookup-form label span{font-size:.84rem!important;font-weight:900!important;color:#3b2a46!important}
.epy-lookup-form input{width:100%!important;height:52px!important;border:1px solid #eadbed!important;border-radius:16px!important;background:#fff!important;padding:0 16px!important;color:#18102f!important;font-weight:850!important;outline:0!important}
.epy-lookup-form input:focus{border-color:var(--epy-primary)!important;box-shadow:0 0 0 4px rgba(169,11,185,.11)!important}
.epy-lookup-form small{display:block!important;margin-top:-4px!important;color:#70657b!important;line-height:1.55!important}
.epy-lookup-result{min-height:100%!important;display:grid!important;align-content:start!important;gap:16px!important}
.epy-lookup-result h2{margin:0!important;font-size:clamp(1.5rem,3vw,2rem)!important;line-height:1.15!important;color:#18102f!important}
.epy-status{justify-self:start!important}
.epy-lookup-result .epy-definition-list{display:grid!important;gap:0!important;margin:0!important}
.epy-lookup-result .epy-definition-list>div{display:grid!important;grid-template-columns:140px minmax(0,1fr)!important;gap:12px!important;padding:12px 0!important;border-top:1px dashed #eadbed!important}
.epy-lookup-result .epy-definition-list>div:first-child{border-top:0!important;padding-top:0!important}
.epy-lookup-result dt{color:#70657b!important;font-weight:800!important}
.epy-lookup-result dd{margin:0!important;font-weight:900!important;color:#18102f!important}
.epy-lookup-result .epy-empty-state{min-height:280px!important;display:grid!important;place-items:center!important;text-align:center!important;border:1px dashed #eadbed!important;border-radius:18px!important;background:#fcf8fd!important}
.epy-lookup-result .epy-empty-state span{display:grid!important;place-items:center!important;width:58px!important;height:58px!important;margin:0 auto 10px!important;border-radius:18px!important;background:var(--epy-soft)!important;color:var(--epy-primary)!important;font-size:1.6rem!important;font-weight:900!important}
@media(max-width:900px){.epy-lookup-page{padding:26px 14px 42px!important}.epy-lookup-grid{grid-template-columns:1fr!important}.epy-lookup-form,.epy-lookup-result{padding:20px!important}.epy-lookup-result .epy-definition-list>div{grid-template-columns:1fr!important;gap:4px!important}}

/* CHECKPOINT 18CZ: salon search/date/location/favorite polish */
.epy-clean-icon-button[data-favorite],.epy-favorite-form{display:none!important}
.epy-clean-hero-actions{align-content:center!important}
.epy-salon-autocomplete-field{position:relative!important;overflow:visible!important}
.epy-salon-autocomplete-panel{position:absolute!important;left:0!important;right:0!important;top:calc(100% + 8px)!important;z-index:80!important;display:grid!important;gap:6px!important;padding:8px!important;border:1px solid #ead8ee!important;border-radius:18px!important;background:#fff!important;box-shadow:0 24px 60px rgba(42,10,70,.16)!important}
.epy-salon-autocomplete-panel[hidden]{display:none!important}
.epy-salon-autocomplete-panel button{display:grid!important;gap:3px!important;width:100%!important;text-align:left!important;border:0!important;border-radius:13px!important;background:#fff!important;padding:11px 12px!important;color:#170a31!important;cursor:pointer!important}
.epy-salon-autocomplete-panel button:hover,.epy-salon-autocomplete-panel button:focus{background:#fff2ff!important;outline:0!important}
.epy-salon-autocomplete-panel b{font-weight:1000!important;font-size:.96rem!important}
.epy-salon-autocomplete-panel small{color:#74627d!important;font-weight:780!important}
.ep-ref-search-quickline-clean{grid-template-columns:minmax(260px,1.45fr) minmax(205px,.75fr) minmax(185px,.65fr) 108px!important}
.ep-ref-location-compact{display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;min-height:58px!important;border:1px solid #ead8ef!important;border-radius:18px!important;background:#fff!important;padding:8px 12px!important;box-shadow:0 12px 28px rgba(61,11,89,.04)!important;color:#18102f!important;text-align:left!important;cursor:pointer!important}
.ep-ref-location-compact>span{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;border-radius:14px!important;background:#f7e9ff!important;color:#a90bb9!important;font-size:1.18rem!important}
.ep-ref-location-compact b{display:block!important;font-size:.9rem!important;line-height:1!important;font-weight:1000!important}
.ep-ref-location-compact small{display:block!important;margin-top:3px!important;color:#7e7188!important;font-size:.72rem!important;font-weight:760!important;line-height:1.1!important}
.ep-ref-date-field input[type=date],.epy-quick-date-tile input[type=date]{appearance:auto!important;color-scheme:light!important;background:#fff!important;color:#18102f!important;-webkit-text-fill-color:#18102f!important;max-width:100%!important}
.ep-ref-date-field input[type=date][value=""],.epy-quick-date-tile input[type=date][value=""]{color:#7b6d84!important;-webkit-text-fill-color:#7b6d84!important}
.epy-quick-date-tile input[type=date]::-webkit-date-and-time-value,.ep-ref-date-field input[type=date]::-webkit-date-and-time-value{text-align:left!important}
.ep-ref-location-modal .epy-location-dialog{max-width:680px!important}
.ep-ref-salon-filter-hub .epy-quick-price{padding-right:48px!important}
.epy-quick-price.active::after{right:12px!important;top:12px!important;width:22px!important;height:22px!important;font-size:.74rem!important}
@media(max-width:680px){
  .ep-ref-search-quickline-clean{grid-template-columns:1fr!important;gap:10px!important}
  .ep-ref-location-compact,.ep-ref-date-field{min-height:66px!important}
  .ep-ref-date-field input[type=date]{height:38px!important;margin-top:3px!important;grid-column:1/-1!important;min-width:0!important}
  .epy-quick-home .epy-quick-date-tile input[type=date]{grid-column:1/-1!important;height:34px!important;margin-top:0!important;min-width:0!important;width:100%!important}
  .epy-quick-home .epy-quick-date-tile{align-content:center!important}
  .epy-quick-filter .epy-quick-price{padding-right:42px!important}
}
@media(max-width:620px){
  .epy-quick-home .epy-quick-filter,.ep-ref-salon-filter-hub{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .epy-quick-home .epy-home-query-field{grid-column:1/-1!important}
  /* Cards must auto-place: a forced second column creates an implicit track
     when the responsive filter grid collapses to a single column. */
  .epy-quick-price>span{width:38px!important;height:38px!important;font-size:1.05rem!important}
  .epy-quick-price b{font-size:.88rem!important;line-height:1.05!important;padding-right:10px!important}
  .epy-quick-price small{font-size:.68rem!important;line-height:1.1!important;padding-right:6px!important}
  .epy-quick-price.active::after{right:8px!important;top:8px!important;width:20px!important;height:20px!important;font-size:.68rem!important}
}

/* CHECKPOINT 18CZ.1: explicit mobile filter order */
@media(max-width:620px){.epy-price-low{grid-column:1!important}.epy-price-high{grid-column:2!important}.epy-rating-tile{grid-column:1!important}}
/* CHECKPOINT 18CZ.2: salon detail actions without favorite button */
.epy-clean-hero-actions{grid-template-rows:auto auto!important}
@media(max-width:640px){.epy-clean-hero-actions{grid-template-columns:1fr!important;grid-template-areas:"booking" "route"!important}.epy-clean-booking{grid-area:booking!important}.epy-clean-route{grid-area:route!important}}


/* CHECKPOINT 18DB: global storefront, customer, booking and salon-panel audit hardening */
body:has(.epy-quick-home),body:has(.ep-ref-salons-page),body:has(.epy-detail-page),body:has(.epy-booking-page),body:has(.epy-account-layout),body:has(.epy-salon-panel-modern),body:has(.epy-lookup-page){overflow-x:hidden!important;background:#fff!important}
.epy-quick-home *,.ep-ref-salons-page *,.epy-detail-page *,.epy-booking-page *,.epy-account-layout *,.epy-salon-panel-modern *,.epy-lookup-page *{box-sizing:border-box;min-width:0}.epy-content-card,.epy-clean-card,.epy-clean-hero-card,.epy-quick-search-card,.search-board,.epy-booking-sticky,.epy-selection-summary,.epy-form-card{max-width:100%;overflow-wrap:anywhere}.epy-btn,.btn-es,.ep-ref-search-submit{white-space:normal!important;text-align:center}.epy-table-wrap,.table-wrapper,.ep-ref-results-wrap{overflow:auto!important;-webkit-overflow-scrolling:touch!important;max-width:100%}
.epy-filter-icon-search,.epy-filter-icon-calendar,.epy-filter-icon-location,.epy-filter-icon-people,.epy-filter-icon-device,.epy-filter-icon-specialist,.epy-filter-icon-shield,.epy-filter-icon-lock,.epy-filter-icon-comment,.epy-filter-icon-support{display:inline-grid;place-items:center;flex:0 0 auto;width:28px;height:28px;border-radius:10px;background:#f7e6fb;color:#a90bb9;font-style:normal;font-weight:950;line-height:1}.epy-filter-icon-search:before{content:"⌕"}.epy-filter-icon-calendar:before{content:"▦"}.epy-filter-icon-location:before{content:"⌖"}.epy-filter-icon-people:before{content:"◎"}.epy-filter-icon-device:before{content:"▣"}.epy-filter-icon-specialist:before{content:"◇"}.epy-filter-icon-shield:before{content:"✓"}.epy-filter-icon-lock:before{content:"●"}.epy-filter-icon-comment:before{content:"…”"}.epy-filter-icon-support:before{content:"?"}.epy-filter-icon-location:before{font-size:1.05rem}.meta-row .epy-filter-icon-location,.es16-loc .epy-filter-icon-location{width:18px;height:18px;border-radius:6px;background:transparent;color:inherit;vertical-align:middle}.ep-ref-featured-dot{display:inline-flex!important;align-items:center!important;min-height:22px!important;padding:2px 7px!important;border-radius:999px!important;background:#fff3cf!important;color:#7a4e00!important;font-size:.72rem!important;font-weight:900!important;vertical-align:middle!important}
.epy-quick-trust div{display:flex!important;align-items:center!important;gap:8px!important}.epy-quick-trust i{width:30px;height:30px}.epy-quick-filter{align-items:stretch!important}.epy-home-query-field,.epy-quick-tile,.epy-quick-price{min-height:92px}.epy-home-query-field input,.epy-quick-date-tile input,.ep-ref-date-field input,.ep-ref-mini-search input{font-size:16px!important}.epy-quick-price{position:relative!important}.epy-quick-price input{position:absolute!important;opacity:0!important;inset:auto!important;width:1px!important;height:1px!important}
.ep-ref-search-quickline-clean{align-items:stretch!important}.ep-ref-mini-search--dominant,.ep-ref-location-compact,.ep-ref-date-field,.ep-ref-search-submit{min-height:66px!important}.ep-ref-date-field{display:grid!important;grid-template-columns:auto minmax(0,1fr) minmax(150px,200px)!important;gap:12px!important;align-items:center!important}.ep-ref-date-field input{width:100%!important;min-width:0!important}.ep-ref-location-banner{max-width:100%!important}.ep-ref-card-actions,.salon-side-actions{display:grid!important;gap:8px!important}.salon-result-card{max-width:100%!important}.salon-result-card img,.epy-single-gallery-main img,.epy-device-simple-image img{max-width:100%!important}
.epy-account-layout{width:min(1380px,100%)!important}.epy-booking-list-card{grid-template-columns:100px minmax(0,1fr) minmax(170px,auto)!important}.epy-booking-list-body,.epy-booking-actions{min-width:0!important}.epy-booking-meta{display:flex!important;flex-wrap:wrap!important;gap:8px 14px!important}.epy-detail-summary-grid,.epy-session-layout{align-items:start!important}.epy-definition-list dd{word-break:break-word!important}
.epy-salon-panel-modern.epy-panel{overflow-x:hidden!important}.epy-salon-panel-modern .epy-panel-nav nav{display:grid!important;gap:4px!important}.epy-salon-panel-modern .epy-panel-nav a{display:flex!important;align-items:center!important;gap:10px!important}.epy-salon-panel-modern .epy-panel-nav a>span{display:grid!important;place-items:center!important;width:32px!important;height:32px!important;border-radius:11px!important;background:rgba(255,255,255,.08)!important;color:#fff!important;flex:0 0 auto!important}.epy-salon-panel-modern .epy-panel-main{min-width:0!important}.epy-salon-panel-modern .epy-panel-heading{gap:14px!important}.epy-salon-panel-modern .epy-table{min-width:760px!important}.epy-device-edit-panel{margin-top:14px;border:1px solid #eaddec;border-radius:16px;background:#fffafd;overflow:hidden}.epy-device-edit-panel summary{cursor:pointer;padding:12px 14px;font-weight:950;color:#a90bb9;list-style:none}.epy-device-edit-panel summary::-webkit-details-marker{display:none}.epy-device-edit-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:10px;padding:0 14px 14px;align-items:end}.epy-device-edit-form label{display:grid;gap:5px;margin:0}.epy-device-edit-form span{font-size:.74rem;font-weight:900;color:#665874}.epy-device-edit-form input,.epy-device-edit-form select{width:100%;height:42px;border:1px solid #eaddec;border-radius:12px;background:#fff;padding:0 10px;font-weight:800;color:#201532}.epy-device-edit-form button{height:42px}.epy-dialog{max-width:min(720px,calc(100vw - 24px))!important}.epy-dialog>div{max-height:calc(100vh - 70px)!important;overflow:auto!important}
.epy-lookup-page{width:min(1240px,100%)!important}.epy-lookup-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr)!important}.epy-lookup-form{box-shadow:0 18px 48px rgba(68,18,86,.08)!important}.epy-lookup-result{box-shadow:0 18px 48px rgba(68,18,86,.08)!important}
@media(max-width:980px){.epy-quick-filter{grid-template-columns:1fr 1fr!important}.epy-home-query-field{grid-column:1/-1!important}.epy-quick-submit{grid-column:1/-1!important}.ep-ref-search-quickline-clean{grid-template-columns:1fr 1fr!important}.ep-ref-mini-search--dominant{grid-column:1/-1!important}.ep-ref-search-submit{grid-column:1/-1!important}.epy-booking-list-card{grid-template-columns:84px minmax(0,1fr)!important}.epy-booking-actions{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}.epy-device-edit-form{grid-template-columns:1fr 1fr!important}.epy-device-edit-form button{grid-column:1/-1!important}.epy-salon-panel-modern .epy-panel-nav nav{display:flex!important;overflow:auto!important;gap:6px!important;padding-bottom:8px!important}.epy-salon-panel-modern .epy-panel-nav a{white-space:nowrap!important;min-width:max-content!important}.epy-salon-panel-modern .epy-panel-nav a>span{width:28px!important;height:28px!important}.epy-lookup-grid{grid-template-columns:1fr!important}}
@media(max-width:640px){.epy-quick-filter{grid-template-columns:1fr!important}.epy-home-query-field,.epy-quick-tile,.epy-quick-price{min-height:76px!important}.epy-quick-date-tile{grid-template-columns:auto minmax(0,1fr)!important}.epy-quick-date-tile input{grid-column:1/-1!important;margin-top:8px!important;width:100%!important}.ep-ref-search-quickline-clean{grid-template-columns:1fr!important}.ep-ref-date-field{grid-template-columns:auto minmax(0,1fr)!important}.ep-ref-date-field input{grid-column:1/-1!important}.epy-booking-list-card{grid-template-columns:1fr!important}.epy-booking-date{justify-self:start;display:grid;grid-template-columns:auto auto auto;gap:8px;align-items:center;text-align:left}.epy-booking-actions{grid-template-columns:1fr!important}.epy-account-layout{grid-template-columns:1fr!important;margin:20px auto!important;padding:0 12px!important}.epy-account-nav{position:static!important;display:flex!important;gap:6px;overflow:auto}.epy-account-nav a{white-space:nowrap!important}.epy-salon-panel-modern .epy-panel-main{padding:16px 12px 40px!important}.epy-salon-panel-modern .epy-panel-heading .epy-btn,.epy-salon-panel-modern .epy-panel-heading a{width:100%!important}.epy-device-edit-form{grid-template-columns:1fr!important}.epy-lookup-hero h1{font-size:2.25rem!important}.epy-lookup-form,.epy-lookup-result{padding:18px!important}}

/* Checkpoint 18DD: /salonlar filter shell aligned with homepage filter layout. */
.ep-ref-salons-filter-shell{display:grid;gap:16px;padding:22px 18px 18px;border:1px solid #f1dff3;border-radius:28px;background:linear-gradient(180deg,#fff,#fffafd);box-shadow:0 14px 38px rgba(85,30,103,.05)}
.ep-ref-salons-filter-shell .ep-ref-mini-search--dominant{margin:0!important}
.ep-ref-page-query-field{position:relative;z-index:4}
.ep-ref-salons-filter-shell .ep-ref-location-banner{margin:0}
.ep-ref-salons-filter-shell .ep-ref-salon-filter-hub{margin-top:2px}
@media(max-width:640px){.ep-ref-salons-filter-shell{padding:16px 12px 14px;border-radius:22px}}

/* Checkpoint 18DE: premium, stable filter cards and icon system for Salonlar/Home mobile+desktop. */
.ep-ref-salons-page{background:linear-gradient(180deg,#fff 0%,#fff7fd 100%)!important}
.ep-ref-salons-filter-shell{max-width:1460px!important;margin:24px auto 26px!important;padding:28px!important;border-radius:30px!important;background:#fff!important;box-shadow:0 24px 70px rgba(42,10,70,.075)!important}
.ep-ref-salons-filter-shell .ep-ref-page-query-field{min-height:72px!important;border:1px solid #ead8ee!important;border-radius:22px!important;display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;align-items:center!important;padding:0 20px!important;background:#fff!important}
.ep-ref-salons-filter-shell .ep-ref-page-query-field input{height:68px!important;border:0!important;background:transparent!important;box-shadow:none!important;font-size:1.08rem!important;font-weight:900!important;color:#170a31!important}
.ep-ref-salons-filter-shell .ep-ref-location-banner{border-radius:20px!important;min-height:72px!important;background:#fff!important;box-shadow:0 16px 40px rgba(42,10,70,.05)!important}
.ep-ref-salons-filter-shell .ep-ref-salon-filter-hub{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;align-items:stretch!important;width:100%!important;max-width:none!important;margin:0!important}
.ep-ref-salon-filter-hub .epy-quick-tile,.ep-ref-salon-filter-hub .epy-quick-price,.epy-quick-home .epy-quick-tile,.epy-quick-home .epy-quick-price{min-width:0!important;overflow:hidden!important;grid-template-columns:62px minmax(0,1fr)!important;grid-template-areas:"icon title" "icon desc"!important;column-gap:18px!important;min-height:126px!important;padding:22px!important;border-radius:24px!important;background:#fff!important;box-shadow:0 16px 42px rgba(42,10,70,.055)!important}
.ep-ref-salon-filter-hub .epy-quick-tile>b,.ep-ref-salon-filter-hub .epy-quick-price>b,.epy-quick-home .epy-quick-tile>b,.epy-quick-home .epy-quick-price>b{grid-area:title!important;align-self:end!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;line-height:1.08!important}
.ep-ref-salon-filter-hub .epy-quick-tile>small,.ep-ref-salon-filter-hub .epy-quick-price>small,.epy-quick-home .epy-quick-tile>small,.epy-quick-home .epy-quick-price>small{grid-area:desc!important;align-self:start!important;white-space:normal!important;line-height:1.25!important;max-width:100%!important}
.ep-ref-salon-filter-hub .epy-quick-tile>span,.ep-ref-salon-filter-hub .epy-quick-price>span,.epy-quick-home .epy-quick-tile>span,.epy-quick-home .epy-quick-price>span{grid-area:icon!important;width:62px!important;height:62px!important;border-radius:18px!important;background:#f8e8fb!important;color:#b000d4!important;font-size:1.7rem!important;display:grid!important;place-items:center!important}
.ep-ref-salon-filter-hub .epy-quick-date-tile input,.epy-quick-home .epy-quick-date-tile input{grid-column:2!important;grid-row:3!important;position:relative!important;inset:auto!important;opacity:1!important;width:100%!important;height:42px!important;margin-top:8px!important;border:1px solid #ead8ee!important;border-radius:12px!important;background:#fff!important;padding:0 12px!important;color:#170a31!important;font-size:16px!important;font-weight:850!important;min-width:0!important}
.ep-ref-salon-filter-hub .epy-quick-toggle input{position:absolute!important;right:18px!important;top:50%!important;transform:translateY(-50%)!important;width:42px!important;height:24px!important;opacity:1!important;accent-color:#b000d4!important;cursor:pointer!important}
.ep-ref-salon-filter-hub .epy-quick-submit{min-height:70px!important;border-radius:22px!important;font-size:1.28rem!important}
.ep-ref-salon-filter-hub .epy-price-low{grid-column:auto!important}.ep-ref-salon-filter-hub .epy-price-high{grid-column:auto!important}.ep-ref-salon-filter-hub .epy-rating-tile{grid-column:auto!important}
.epy-filter-icon-calendar,.epy-filter-icon-location,.epy-filter-icon-device,.epy-filter-icon-search,.epy-filter-icon-specialist,.epy-filter-icon-shield,.epy-filter-icon-lock,.epy-filter-icon-comment,.epy-filter-icon-support{position:relative!important;font-size:0!important;color:#b000d4!important}
.epy-filter-icon-calendar:before,.epy-filter-icon-location:before,.epy-filter-icon-device:before,.epy-filter-icon-search:before,.epy-filter-icon-specialist:before{content:"";display:block;width:28px;height:28px;background:currentColor;mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}
.epy-filter-icon-calendar:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2h2v3h6V2h2v3h3a2 2 0 0 1 2 2v13a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h3V2Zm13 9H4v9h16v-9ZM4 9h16V7H4v2Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2h2v3h6V2h2v3h3a2 2 0 0 1 2 2v13a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h3V2Zm13 9H4v9h16v-9ZM4 9h16V7H4v2Z'/%3E%3C/svg%3E")}
.epy-filter-icon-location:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 1 7 7c0 5.25-7 13-7 13S5 14.25 5 9a7 7 0 0 1 7-7Zm0 9.5A2.5 2.5 0 1 0 12 6a2.5 2.5 0 0 0 0 5.5Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 1 7 7c0 5.25-7 13-7 13S5 14.25 5 9a7 7 0 0 1 7-7Zm0 9.5A2.5 2.5 0 1 0 12 6a2.5 2.5 0 0 0 0 5.5Z'/%3E%3C/svg%3E")}
.epy-filter-icon-device:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6 2h12a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2Zm1 3v7h10V5H7Zm2 10v2h6v-2H9Zm0 4h6v-1H9v1Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6 2h12a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2Zm1 3v7h10V5H7Zm2 10v2h6v-2H9Zm0 4h6v-1H9v1Z'/%3E%3C/svg%3E")}
.epy-filter-icon-search:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10 3a7 7 0 0 1 5.6 11.2l4.1 4.1-1.4 1.4-4.1-4.1A7 7 0 1 1 10 3Zm0 2a5 5 0 1 0 0 10 5 5 0 0 0 0-10Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10 3a7 7 0 0 1 5.6 11.2l4.1 4.1-1.4 1.4-4.1-4.1A7 7 0 1 1 10 3Zm0 2a5 5 0 1 0 0 10 5 5 0 0 0 0-10Z'/%3E%3C/svg%3E")}
.epy-filter-icon-specialist:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 12a5 5 0 1 0 0-10 5 5 0 0 0 0 10Zm-8 9a8 8 0 0 1 16 0v1H4v-1Zm12.5-5.8 1.5 1.5 2.8-2.8 1.4 1.4-4.2 4.2-2.9-2.9 1.4-1.4Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 12a5 5 0 1 0 0-10 5 5 0 0 0 0 10Zm-8 9a8 8 0 0 1 16 0v1H4v-1Zm12.5-5.8 1.5 1.5 2.8-2.8 1.4 1.4-4.2 4.2-2.9-2.9 1.4-1.4Z'/%3E%3C/svg%3E")}
@media(max-width:980px){.ep-ref-salons-filter-shell .ep-ref-salon-filter-hub{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ep-ref-salons-filter-shell .ep-ref-page-query-field{grid-template-columns:52px minmax(0,1fr)!important}.ep-ref-salon-filter-hub .epy-quick-submit{grid-column:1/-1!important}}
@media(max-width:640px){.ep-ref-salons-page .es-container{padding-left:12px!important;padding-right:12px!important}.ep-ref-salons-filter-shell{padding:16px 12px!important;border-radius:24px!important;margin-top:12px!important}.ep-ref-salons-filter-shell .ep-ref-salon-filter-hub{grid-template-columns:1fr!important;gap:12px!important}.ep-ref-salon-filter-hub .epy-quick-tile,.ep-ref-salon-filter-hub .epy-quick-price{min-height:96px!important;grid-template-columns:54px minmax(0,1fr)!important;padding:16px!important}.ep-ref-salon-filter-hub .epy-quick-tile>span,.ep-ref-salon-filter-hub .epy-quick-price>span{width:54px!important;height:54px!important}.ep-ref-salon-filter-hub .epy-quick-date-tile input{grid-column:2!important;width:100%!important}.ep-ref-salons-filter-shell .ep-ref-page-query-field{min-height:72px!important;border-radius:20px!important;padding:0 14px!important}.ep-ref-salons-filter-shell .ep-ref-location-banner{grid-template-columns:44px minmax(0,1fr)!important;text-align:left!important}.ep-ref-salons-filter-shell .ep-ref-location-banner button{grid-column:1/-1!important;width:100%!important}.ep-ref-salon-filter-hub .epy-quick-toggle input{right:14px!important}.ep-ref-salon-filter-hub .epy-quick-submit{min-height:60px!important;font-size:1.08rem!important}}

/* Checkpoint 18DF: final premium /salonlar responsive layout, cache-safe placeholder and real icon set */
.ep-ref-salons-page .es-container{max-width:1440px!important;margin-inline:auto!important;padding-inline:20px!important}
.ep-ref-salons-page .rich-search{display:none!important}
.ep-ref-salons-filter-shell{display:grid!important;gap:20px!important;margin:24px auto 24px!important;padding:28px!important;border:1px solid #ead8ee!important;border-radius:28px!important;background:linear-gradient(180deg,#fff,#fffafe)!important;box-shadow:0 18px 48px rgba(74,24,88,.07)!important;overflow:visible!important}
.ep-ref-salons-filter-shell .ep-ref-mini-search--dominant{min-height:76px!important;border:1px solid #ead8ee!important;border-radius:22px!important;padding:0 20px!important;background:#fff!important;box-shadow:0 12px 28px rgba(61,11,89,.05)!important}
.ep-ref-salons-filter-shell .ep-ref-mini-search--dominant input{height:100%!important;font-size:1.05rem!important;font-weight:900!important;color:#1c1030!important}
.ep-ref-salons-filter-shell .ep-ref-location-banner{margin:0!important;min-height:72px!important;border-radius:20px!important}
.ep-ref-salon-filter-hub{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important;width:100%!important;max-width:none!important;margin:0!important}
.ep-ref-salon-filter-hub>.epy-choice-control{display:none!important}
.ep-ref-salon-filter-hub>.epy-quick-tile,
.ep-ref-salon-filter-hub>.epy-quick-price{grid-column:auto!important;width:100%!important;min-width:0!important;min-height:144px!important;padding:22px 22px!important;border:1px solid #ead8ee!important;border-radius:24px!important;background:#fff!important;box-shadow:0 12px 30px rgba(61,11,89,.055)!important;display:grid!important;grid-template-columns:76px minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;column-gap:18px!important;row-gap:8px!important;align-items:center!important;overflow:hidden!important;color:#170a31!important;text-align:left!important}
.ep-ref-salon-filter-hub>.epy-quick-tile:hover,
.ep-ref-salon-filter-hub>.epy-quick-price:hover,
.ep-ref-salon-filter-hub>.epy-quick-price.active,
.ep-ref-salon-filter-hub>.epy-quick-tile.filled{border-color:#cd20cf!important;background:linear-gradient(135deg,#fff,#fff5ff)!important}
.ep-ref-salon-filter-hub>.epy-quick-tile>span,
.ep-ref-salon-filter-hub>.epy-quick-price>span{grid-row:1 / span 3!important;grid-column:1!important;display:grid!important;place-items:center!important;width:76px!important;height:76px!important;border-radius:22px!important;background:#f9eafa!important;color:#a40ab1!important;font-size:0!important;line-height:1!important;overflow:hidden!important}
.ep-ref-salon-filter-hub>.epy-quick-tile>b,
.ep-ref-salon-filter-hub>.epy-quick-price>b{grid-column:2!important;grid-row:1!important;display:block!important;align-self:end!important;margin:0!important;font-size:1.18rem!important;line-height:1.15!important;font-weight:1000!important;letter-spacing:-.02em!important;color:#170a31!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important}
.ep-ref-salon-filter-hub>.epy-quick-tile>small,
.ep-ref-salon-filter-hub>.epy-quick-price>small{grid-column:2!important;grid-row:2!important;display:block!important;align-self:start!important;margin:0!important;font-size:.9rem!important;line-height:1.25!important;font-weight:760!important;color:#75657f!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important}
.ep-ref-salon-filter-hub>.epy-quick-tile input[type=date]{grid-column:2!important;grid-row:3!important;position:static!important;opacity:1!important;width:100%!important;height:46px!important;margin-top:6px!important;border:1px solid #ead8ee!important;border-radius:14px!important;background:#fff!important;padding:0 14px!important;color:#1c1030!important;font-size:16px!important;font-weight:850!important;cursor:pointer!important}
.ep-ref-salon-filter-hub>.epy-quick-price input[type=radio],
.ep-ref-salon-filter-hub>.epy-quick-toggle input[type=checkbox]{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none!important}
.ep-ref-salon-filter-hub>.epy-quick-price.active:after,
.ep-ref-salon-filter-hub>.epy-quick-toggle:has(input:checked):after{content:"✓";position:absolute;right:18px;top:18px;display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:linear-gradient(135deg,#c600ce,#7400a7);color:#fff;font-size:1rem;font-weight:1000;box-shadow:0 8px 18px rgba(142,0,170,.22)}
.ep-ref-salon-filter-hub>.epy-quick-submit{grid-column:1/-1!important;min-height:70px!important;border-radius:22px!important;background:linear-gradient(100deg,#f332ad,#9811d1,#5e15d8)!important;box-shadow:0 18px 44px rgba(150,22,190,.22)!important;color:#fff!important;font-size:1.35rem!important;font-weight:1000!important}
.ep-ref-salon-filter-hub .epy-filter-icon-search:before,
.ep-ref-salon-filter-hub .epy-filter-icon-calendar:before,
.ep-ref-salon-filter-hub .epy-filter-icon-location:before,
.ep-ref-salon-filter-hub .epy-filter-icon-people:before,
.ep-ref-salon-filter-hub .epy-filter-icon-device:before,
.ep-ref-salon-filter-hub .epy-filter-icon-rating:before,
.ep-ref-salon-filter-hub .epy-filter-icon-specialist:before,
.ep-ref-salon-filter-hub .epy-filter-icon-male:before,
.ep-ref-salon-filter-hub .epy-price-low>span:before,
.ep-ref-salon-filter-hub .epy-price-high>span:before{content:""!important;display:block!important;width:42px!important;height:42px!important;background:currentColor!important;-webkit-mask-position:center!important;mask-position:center!important;-webkit-mask-repeat:no-repeat!important;mask-repeat:no-repeat!important;-webkit-mask-size:contain!important;mask-size:contain!important}
.epy-filter-icon-search:before{content:""!important;display:block!important;width:18px!important;height:18px!important;background:currentColor!important;-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22%20stroke-linecap=%22round%22%20d=%22m20%2020-4.2-4.2%22/%3E%3Ccircle%20cx=%2210.5%22%20cy=%2210.5%22%20r=%226.5%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22%20stroke-linecap=%22round%22%20d=%22m20%2020-4.2-4.2%22/%3E%3Ccircle%20cx=%2210.5%22%20cy=%2210.5%22%20r=%226.5%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3C/svg%3E") center/contain no-repeat!important}
.epy-filter-icon-calendar:before{content:""!important;display:block!important;width:28px!important;height:28px!important;background:currentColor!important;-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Crect%20x=%223.5%22%20y=%225%22%20width=%2217%22%20height=%2215.5%22%20rx=%222.5%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.1%22/%3E%3Cpath%20d=%22M7%203v4M17%203v4M4%209h16%22%20stroke=%22black%22%20stroke-width=%222.1%22%20stroke-linecap=%22round%22/%3E%3Cpath%20d=%22M7.2%2012.5h2.2v2.2H7.2zm4.1%200h2.2v2.2h-2.2zm4.1%200h2.2v2.2h-2.2zM7.2%2016.2h2.2v2.2H7.2zm4.1%200h2.2v2.2h-2.2z%22%20fill=%22black%22/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Crect%20x=%223.5%22%20y=%225%22%20width=%2217%22%20height=%2215.5%22%20rx=%222.5%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.1%22/%3E%3Cpath%20d=%22M7%203v4M17%203v4M4%209h16%22%20stroke=%22black%22%20stroke-width=%222.1%22%20stroke-linecap=%22round%22/%3E%3Cpath%20d=%22M7.2%2012.5h2.2v2.2H7.2zm4.1%200h2.2v2.2h-2.2zm4.1%200h2.2v2.2h-2.2zM7.2%2016.2h2.2v2.2H7.2zm4.1%200h2.2v2.2h-2.2z%22%20fill=%22black%22/%3E%3C/svg%3E") center/contain no-repeat!important}
.epy-filter-icon-location:before{content:""!important;display:block!important;width:28px!important;height:28px!important;background:currentColor!important;-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20d=%22M12%2021s7-6.2%207-12a7%207%200%201%200-14%200c0%205.8%207%2012%207%2012Z%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22%20stroke-linejoin=%22round%22/%3E%3Ccircle%20cx=%2212%22%20cy=%229%22%20r=%222.4%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20d=%22M12%2021s7-6.2%207-12a7%207%200%201%200-14%200c0%205.8%207%2012%207%2012Z%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22%20stroke-linejoin=%22round%22/%3E%3Ccircle%20cx=%2212%22%20cy=%229%22%20r=%222.4%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3C/svg%3E") center/contain no-repeat!important}
.epy-filter-icon-people:before{-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Ccircle%20cx=%228%22%20cy=%228%22%20r=%223.4%22%20fill=%22black%22/%3E%3Cpath%20d=%22M2.8%2020c.5-4%202.7-6%205.2-6s4.7%202%205.2%206Z%22%20fill=%22black%22/%3E%3Ccircle%20cx=%2216.5%22%20cy=%228.5%22%20r=%223%22%20fill=%22black%22%20opacity=%22.72%22/%3E%3Cpath%20d=%22M12.8%2020c.4-3.3%202-5.2%203.8-5.2s3.6%201.9%204.1%205.2Z%22%20fill=%22black%22%20opacity=%22.72%22/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Ccircle%20cx=%228%22%20cy=%228%22%20r=%223.4%22%20fill=%22black%22/%3E%3Cpath%20d=%22M2.8%2020c.5-4%202.7-6%205.2-6s4.7%202%205.2%206Z%22%20fill=%22black%22/%3E%3Ccircle%20cx=%2216.5%22%20cy=%228.5%22%20r=%223%22%20fill=%22black%22%20opacity=%22.72%22/%3E%3Cpath%20d=%22M12.8%2020c.4-3.3%202-5.2%203.8-5.2s3.6%201.9%204.1%205.2Z%22%20fill=%22black%22%20opacity=%22.72%22/%3E%3C/svg%3E") center/contain no-repeat!important}
.epy-filter-icon-device:before{content:""!important;display:block!important;width:28px!important;height:28px!important;background:currentColor!important;-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Crect%20x=%226%22%20y=%223.5%22%20width=%2212%22%20height=%2215%22%20rx=%222.2%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.1%22/%3E%3Cpath%20d=%22M9%207h6M9%2010h6M10%2018.5h4M7.5%2021h9%22%20stroke=%22black%22%20stroke-width=%222.1%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Crect%20x=%226%22%20y=%223.5%22%20width=%2212%22%20height=%2215%22%20rx=%222.2%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.1%22/%3E%3Cpath%20d=%22M9%207h6M9%2010h6M10%2018.5h4M7.5%2021h9%22%20stroke=%22black%22%20stroke-width=%222.1%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important}
.epy-filter-icon-rating:before{-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20d=%22m12%202.8%202.8%205.7%206.3.9-4.55%204.45%201.08%206.25L12%2017.1l-5.63%203%201.08-6.25L2.9%209.4l6.3-.9Z%22%20fill=%22black%22/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20d=%22m12%202.8%202.8%205.7%206.3.9-4.55%204.45%201.08%206.25L12%2017.1l-5.63%203%201.08-6.25L2.9%209.4l6.3-.9Z%22%20fill=%22black%22/%3E%3C/svg%3E") center/contain no-repeat!important}
.epy-filter-icon-specialist:before{content:""!important;display:block!important;width:28px!important;height:28px!important;background:currentColor!important;-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Ccircle%20cx=%2212%22%20cy=%227%22%20r=%224%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3Cpath%20d=%22M4.5%2021c.65-5.2%203.3-8%207.5-8s6.85%202.8%207.5%208Z%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3Cpath%20d=%22M12%2015v4M10%2017h4%22%20stroke=%22black%22%20stroke-width=%222.2%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Ccircle%20cx=%2212%22%20cy=%227%22%20r=%224%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3Cpath%20d=%22M4.5%2021c.65-5.2%203.3-8%207.5-8s6.85%202.8%207.5%208Z%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3Cpath%20d=%22M12%2015v4M10%2017h4%22%20stroke=%22black%22%20stroke-width=%222.2%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important}
.epy-filter-icon-male:before{-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Ccircle%20cx=%2210%22%20cy=%2214%22%20r=%225.2%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.3%22/%3E%3Cpath%20d=%22M14%2010%2020%204M16%204h4v4%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.3%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Ccircle%20cx=%2210%22%20cy=%2214%22%20r=%225.2%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.3%22/%3E%3Cpath%20d=%22M14%2010%2020%204M16%204h4v4%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.3%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important}
.ep-ref-salon-filter-hub .epy-price-low>span:before{-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20d=%22M12%204v15M6%2013l6%206%206-6%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.8%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20d=%22M12%204v15M6%2013l6%206%206-6%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.8%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important}
.ep-ref-salon-filter-hub .epy-price-high>span:before{-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20d=%22M12%2020V5M6%2011l6-6%206%206%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.8%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20d=%22M12%2020V5M6%2011l6-6%206%206%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.8%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important}
.epy-quick-trust .epy-filter-icon-shield:before{-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20d=%22M12%203%2020%206v6c0%205-3.2%207.8-8%209-4.8-1.2-8-4-8-9V6Z%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3Cpath%20d=%22m8.5%2012%202.2%202.2%204.8-5%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20d=%22M12%203%2020%206v6c0%205-3.2%207.8-8%209-4.8-1.2-8-4-8-9V6Z%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3Cpath%20d=%22m8.5%2012%202.2%202.2%204.8-5%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important}
.epy-quick-trust .epy-filter-icon-lock:before{-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Crect%20x=%225%22%20y=%2210%22%20width=%2214%22%20height=%2210%22%20rx=%222.3%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3Cpath%20d=%22M8%2010V7a4%204%200%200%201%208%200v3%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3Ccircle%20cx=%2212%22%20cy=%2215%22%20r=%221.4%22%20fill=%22black%22/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Crect%20x=%225%22%20y=%2210%22%20width=%2214%22%20height=%2210%22%20rx=%222.3%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3Cpath%20d=%22M8%2010V7a4%204%200%200%201%208%200v3%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3Ccircle%20cx=%2212%22%20cy=%2215%22%20r=%221.4%22%20fill=%22black%22/%3E%3C/svg%3E") center/contain no-repeat!important}
.epy-quick-trust .epy-filter-icon-comment:before{-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20d=%22M5%205h14v10H9l-4%204Z%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M8%209h8M8%2012h5%22%20stroke=%22black%22%20stroke-width=%222.2%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Cpath%20d=%22M5%205h14v10H9l-4%204Z%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22%20stroke-linejoin=%22round%22/%3E%3Cpath%20d=%22M8%209h8M8%2012h5%22%20stroke=%22black%22%20stroke-width=%222.2%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important}
.epy-quick-trust .epy-filter-icon-support:before{-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Ccircle%20cx=%2212%22%20cy=%2212%22%20r=%228.2%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3Cpath%20d=%22M8%2015.5c2.4%201.7%205.6%201.7%208%200M8.5%2010h.1M15.5%2010h.1%22%20stroke=%22black%22%20stroke-width=%222.6%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%3E%3Ccircle%20cx=%2212%22%20cy=%2212%22%20r=%228.2%22%20fill=%22none%22%20stroke=%22black%22%20stroke-width=%222.2%22/%3E%3Cpath%20d=%22M8%2015.5c2.4%201.7%205.6%201.7%208%200M8.5%2010h.1M15.5%2010h.1%22%20stroke=%22black%22%20stroke-width=%222.6%22%20stroke-linecap=%22round%22/%3E%3C/svg%3E") center/contain no-repeat!important}
.salon-photo-wrap img[src*="salon-placeholder-logo.svg"],
.salon-photo-wrap img[src*="salon-placeholder.svg"],
.epy-home-salon-card img[src*="salon-placeholder-logo.svg"],
.epy-home-salon-card img[src*="salon-placeholder.svg"]{object-fit:contain!important;padding:28px!important;background:linear-gradient(135deg,#fff,#f8f3fa)!important}
@media(max-width:1080px){
  .ep-ref-salon-filter-hub{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){
  .ep-ref-salons-page .es-container{padding-inline:12px!important}
  .ep-ref-salons-filter-shell{padding:16px 14px!important;border-radius:24px!important;margin-top:14px!important}
  .ep-ref-salon-filter-hub{grid-template-columns:1fr!important;gap:12px!important}
  .ep-ref-salon-filter-hub>.epy-quick-tile,
  .ep-ref-salon-filter-hub>.epy-quick-price{min-height:112px!important;padding:16px!important;grid-template-columns:58px minmax(0,1fr)!important;border-radius:20px!important}
  .ep-ref-salon-filter-hub>.epy-quick-tile>span,
  .ep-ref-salon-filter-hub>.epy-quick-price>span{width:58px!important;height:58px!important;border-radius:18px!important}
  .ep-ref-salon-filter-hub>.epy-quick-tile>b,
  .ep-ref-salon-filter-hub>.epy-quick-price>b{font-size:1.05rem!important}
  .ep-ref-salon-filter-hub>.epy-quick-tile>small,
  .ep-ref-salon-filter-hub>.epy-quick-price>small{font-size:.84rem!important}
  .ep-ref-salon-filter-hub>.epy-quick-submit{min-height:62px!important;font-size:1.1rem!important}
}

/* CHECKPOINT 18DG: stable premium /salonlar filter layout and icon system */
.epx-salons-page{background:linear-gradient(180deg,#fff8fd 0,#fff 380px)!important;min-height:100vh!important;overflow-x:hidden!important}.epx-salons-page .es-container{width:min(1440px,calc(100% - 48px))!important;max-width:1440px!important;margin-inline:auto!important}.epx-salon-filter-shell{width:min(1440px,calc(100% - 48px))!important;margin:28px auto 22px!important;border:1px solid #ead8ef!important;border-radius:28px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 22px 70px rgba(78,20,96,.07)!important;padding:26px!important;font-family:Inter,Arial,sans-serif!important;color:#1b1031!important}.epx-quick-head{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important;margin-bottom:18px!important}.epx-quick-head b{display:block!important;font-size:1.24rem!important;font-weight:950!important;letter-spacing:-.02em!important}.epx-quick-head small{display:block!important;margin-top:3px!important;color:#6f627b!important;font-weight:750!important}.epx-logo-mark{width:38px!important;height:38px!important;border-radius:14px!important;background:linear-gradient(135deg,#fff1ff,#fff)!important;position:relative!important;box-shadow:inset 0 0 0 1px #f0d8f4!important}.epx-logo-mark:before{content:"✦"!important;position:absolute!important;inset:0!important;display:grid!important;place-items:center!important;color:#e02bad!important;font-size:20px!important}.epx-location-pill,.epx-location-banner button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;min-height:48px!important;border:1px solid #ead8ef!important;border-radius:14px!important;background:#fff!important;color:#401552!important;padding:0 18px!important;font-weight:900!important;cursor:pointer!important;box-shadow:0 12px 30px rgba(44,13,64,.06)!important}.epx-location-pill:hover,.epx-location-banner button:hover{border-color:#c20dc8!important;color:#a10eac!important;transform:translateY(-1px)!important}.epx-quick-strip{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;margin-bottom:20px!important}.epx-quick-strip button,.epx-quick-strip label{display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;min-height:68px!important;border:1px solid #eee1f1!important;border-radius:18px!important;background:#fff!important;color:#1b1031!important;font-size:1rem!important;font-weight:850!important;text-align:center!important;cursor:pointer!important;box-shadow:0 15px 30px rgba(40,18,56,.065)!important}.epx-quick-strip button:hover,.epx-quick-strip label:hover{border-color:#dfaeea!important;background:#fff8ff!important}.epx-location-banner{display:grid!important;grid-template-columns:56px minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;margin:0 0 22px!important;padding:16px 18px!important;border:1px solid #ead8ef!important;border-radius:20px!important;background:linear-gradient(135deg,#fff,#fffafd)!important;box-shadow:0 12px 34px rgba(78,20,96,.05)!important}.epx-location-banner b{display:block!important;color:#1b1031!important;font-size:1.04rem!important;font-weight:950!important}.epx-location-banner small{display:block!important;margin-top:4px!important;color:#70637b!important;font-weight:720!important;line-height:1.45!important}.epx-location-banner.is-error{border-color:#f2bdcb!important;background:linear-gradient(135deg,#fff,#fff5f7)!important}.epx-location-banner.is-error>.epx-icon{background:#d62f55!important}.epx-location-banner.is-success{border-color:#b9e8d0!important;background:linear-gradient(135deg,#fff,#f3fff8)!important}.epx-location-banner.is-success>.epx-icon{background:#168c51!important}.epx-filter-panel{border:1px solid #ead8ef!important;border-radius:24px!important;background:#fff!important;padding:24px!important;box-shadow:0 18px 48px rgba(58,18,76,.055)!important}.epx-filter-panel>header{display:flex!important;align-items:flex-start!important;gap:12px!important;margin:0 0 20px!important}.epx-filter-panel>header b{display:block!important;font-size:1.18rem!important;line-height:1.2!important;font-weight:950!important}.epx-filter-panel>header small{display:block!important;margin-top:4px!important;color:#756780!important;font-weight:720!important}.epx-filter-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important}.epx-filter-card{position:relative!important;display:grid!important;grid-template-columns:86px minmax(0,1fr)!important;gap:18px!important;align-items:center!important;min-height:156px!important;padding:20px!important;border:1px solid #eee0f1!important;border-radius:22px!important;background:#fff!important;color:#1b1031!important;text-align:left!important;cursor:pointer!important;box-shadow:0 12px 32px rgba(52,19,70,.045)!important;overflow:hidden!important;isolation:isolate!important}.epx-filter-card:hover,.epx-filter-card.filled,.epx-filter-card.active{border-color:#d68be3!important;background:linear-gradient(135deg,#fff,#fff7ff)!important;box-shadow:0 18px 42px rgba(167,20,184,.09)!important}.epx-filter-card>span{display:block!important;min-width:0!important;max-width:100%!important}.epx-filter-card b{display:block!important;color:#1b1031!important;font-size:1.12rem!important;font-weight:950!important;line-height:1.14!important;white-space:normal!important;overflow-wrap:normal!important}.epx-filter-card small{display:block!important;margin-top:7px!important;color:#6f627b!important;font-size:.9rem!important;font-weight:760!important;line-height:1.32!important;white-space:normal!important;overflow-wrap:break-word!important}.epx-filter-card em{grid-column:2!important;display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:43px!important;margin-top:8px!important;padding:0 13px!important;border:1px solid #e9ddeb!important;border-radius:12px!important;background:#fff!important;color:#6f627b!important;font-style:normal!important;font-weight:760!important;line-height:1!important}.epx-filter-card input[type="search"],.epx-filter-card input[type="date"]{grid-column:2!important;width:100%!important;height:44px!important;min-width:0!important;margin-top:8px!important;border:1px solid #e8dceb!important;border-radius:12px!important;background:#fff!important;color:#1b1031!important;-webkit-text-fill-color:#1b1031!important;padding:0 12px!important;font-size:1rem!important;font-weight:820!important;outline:0!important}.epx-filter-card input[type="search"]{height:48px!important}.epx-filter-card input:focus{border-color:#c20dc8!important;box-shadow:0 0 0 4px rgba(194,13,200,.09)!important}.epx-filter-search{grid-column:span 2!important}.epx-filter-search>span,.epx-filter-search input{grid-column:2!important}.epx-price-card input[type="radio"]{position:absolute!important;opacity:0!important;pointer-events:none!important}.epx-price-card.active:after{content:"✓"!important;position:absolute!important;right:16px!important;top:16px!important;display:grid!important;place-items:center!important;width:32px!important;height:32px!important;border-radius:50%!important;background:linear-gradient(135deg,#c40bc9,#7308b7)!important;color:#fff!important;font-size:18px!important;font-weight:950!important;box-shadow:0 10px 24px rgba(139,8,184,.23)!important}.epx-toggle-card input[type="checkbox"]{position:absolute!important;opacity:0!important;pointer-events:none!important}.epx-toggle-card>em{grid-column:auto!important;justify-self:end!important;width:56px!important;height:32px!important;min-height:32px!important;padding:0!important;border-radius:999px!important;background:#ede7f0!important;border:1px solid #ded0e2!important;box-shadow:inset 0 2px 5px rgba(26,10,40,.08)!important}.epx-toggle-card>em:before{content:""!important;display:block!important;width:28px!important;height:28px!important;margin:1px!important;border-radius:50%!important;background:#fff!important;box-shadow:0 4px 10px rgba(35,14,54,.15)!important;transition:.18s ease!important}.epx-toggle-card:has(input:checked)>em{background:linear-gradient(135deg,#d50bc9,#7f12bd)!important;border-color:transparent!important}.epx-toggle-card:has(input:checked)>em:before{transform:translateX(24px)!important}.epx-submit{display:flex!important;align-items:center!important;justify-content:center!important;gap:14px!important;width:100%!important;min-height:70px!important;margin-top:22px!important;border:0!important;border-radius:20px!important;background:linear-gradient(100deg,#ee2cae 0%,#b814cc 46%,#5a18d7 100%)!important;color:#fff!important;font-size:1.45rem!important;font-weight:950!important;letter-spacing:-.02em!important;box-shadow:0 18px 45px rgba(146,18,191,.24)!important;cursor:pointer!important}.epx-submit .epx-icon{background:#fff!important}.epx-submit:hover{transform:translateY(-1px)!important;box-shadow:0 24px 56px rgba(146,18,191,.28)!important}.epx-icon{display:grid!important;place-items:center!important;width:54px!important;height:54px!important;border-radius:18px!important;background:linear-gradient(135deg,#ee38b4,#6e1dd4)!important;color:#fff!important;flex:0 0 auto!important}.epx-icon:before{content:""!important;display:block!important;width:30px!important;height:30px!important;background:currentColor!important;-webkit-mask:var(--epx-mask) center/contain no-repeat!important;mask:var(--epx-mask) center/contain no-repeat!important}.epx-filter-card>.epx-icon,.epx-location-banner>.epx-icon,.epx-filter-panel>header>.epx-icon{background:linear-gradient(135deg,#fff0fe,#f3e8ff)!important;color:#b30fc3!important}.epx-quick-strip .epx-icon,.epx-location-pill .epx-icon{width:30px!important;height:30px!important;border-radius:10px!important;background:transparent!important;color:#cb24a7!important}.epx-location-pill .epx-icon:before,.epx-quick-strip .epx-icon:before{width:24px!important;height:24px!important}.epx-icon-location{--epx-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2.5a7.5 7.5 0 0 0-7.5 7.5c0 5.5 7.5 11.5 7.5 11.5s7.5-6 7.5-11.5A7.5 7.5 0 0 0 12 2.5Zm0 10.3a2.8 2.8 0 1 1 0-5.6 2.8 2.8 0 0 1 0 5.6Z'/%3E%3C/svg%3E")}.epx-icon-calendar{--epx-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2h2v3h6V2h2v3h3v16H4V5h3V2Zm11 8H6v9h12v-9ZM6 7v1h12V7H6Zm2 5h3v3H8v-3Zm5 0h3v3h-3v-3Z'/%3E%3C/svg%3E")}.epx-icon-search{--epx-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10.5 4a6.5 6.5 0 0 1 5.16 10.45l4.45 4.44-1.42 1.42-4.44-4.45A6.5 6.5 0 1 1 10.5 4Zm0 2a4.5 4.5 0 1 0 0 9 4.5 4.5 0 0 0 0-9Z'/%3E%3C/svg%3E")}.epx-icon-people{--epx-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M8.5 11a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Zm7 0a3 3 0 1 1 0-6 3 3 0 0 1 0 6ZM3 20c.3-4 2.4-6.5 5.5-6.5S13.7 16 14 20H3Zm9.8-6.1a5.4 5.4 0 0 1 2.7-.7c3 0 5 2.4 5.5 6.3h-5.2a8.8 8.8 0 0 0-3-5.6Z'/%3E%3C/svg%3E")}.epx-icon-device{--epx-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2h10a3 3 0 0 1 3 3v12a3 3 0 0 1-3 3h-1v2H8v-2H7a3 3 0 0 1-3-3V5a3 3 0 0 1 3-3Zm0 2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1H7Zm2 3h6v2H9V7Zm0 4h6v2H9v-2Zm2 4h2v2h-2v-2Z'/%3E%3C/svg%3E")}.epx-icon-down{--epx-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M11 4h2v12l5-5 1.4 1.4L12 19.8l-7.4-7.4L6 11l5 5V4Z'/%3E%3C/svg%3E")}.epx-icon-up{--epx-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M11 20h2V8l5 5 1.4-1.4L12 4.2l-7.4 7.4L6 13l5-5v12Z'/%3E%3C/svg%3E")}.epx-icon-star{--epx-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m12 2.5 2.9 5.9 6.5.9-4.7 4.6 1.1 6.5-5.8-3.1-5.8 3.1 1.1-6.5-4.7-4.6 6.5-.9L12 2.5Z'/%3E%3C/svg%3E")}.epx-icon-specialist{--epx-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3a4 4 0 1 1 0 8 4 4 0 0 1 0-8Zm0 10c4.4 0 7.5 2.9 8 8H4c.5-5.1 3.6-8 8-8Zm-1 2.5V19h2v-3.5h-2Zm-2.2.8-1.4 1.4 2.4 2.4 1.4-1.4-2.4-2.4Zm6.4 0-2.4 2.4 1.4 1.4 2.4-2.4-1.4-1.4Z'/%3E%3C/svg%3E")}.epx-icon-male{--epx-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M15 3h6v6h-2V6.4l-4.7 4.7A6.5 6.5 0 1 1 12.9 9.7L17.6 5H15V3ZM9.5 11a4.5 4.5 0 1 0 0 9 4.5 4.5 0 0 0 0-9Z'/%3E%3C/svg%3E")}.epx-icon-campaign{--epx-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M21 10.5 13.5 3H4v9.5L11.5 20a3 3 0 0 0 4.2 0l5.3-5.3a3 3 0 0 0 0-4.2ZM7.5 8A1.5 1.5 0 1 1 9 6.5 1.5 1.5 0 0 1 7.5 8Zm5.7 8.5-1.4-1.4 4.3-4.3 1.4 1.4-4.3 4.3Z'/%3E%3C/svg%3E")}.epx-icon-sliders{--epx-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 7h9v2H4V7Zm11-1h5v4h-5V6ZM4 15h4v2H4v-2Zm6-1h10v4H10v-4Z'/%3E%3C/svg%3E")}.epx-salons-page .salon-photo-wrap img[src*="salon-placeholder"],.epy-home-salon-card img[src*="salon-placeholder"]{object-fit:contain!important;padding:8px!important;background:linear-gradient(135deg,#fff,#f8f3fa)!important}.epx-salons-page .salon-result-card{overflow:hidden!important}.epx-salons-page .salon-photo-wrap{background:#fbf7fb!important}.epx-salons-page .epy-salon-autocomplete-field{position:relative!important}.epx-salons-page .epy-salon-autocomplete-panel{position:absolute!important;z-index:50!important;left:0!important;right:0!important;top:calc(100% + 8px)!important;border:1px solid #ead8ef!important;border-radius:16px!important;background:#fff!important;box-shadow:0 22px 48px rgba(42,14,62,.14)!important;overflow:hidden!important}.epx-salons-page .epy-salon-autocomplete-panel button{display:block!important;width:100%!important;border:0!important;background:#fff!important;text-align:left!important;padding:12px 15px!important}.epx-salons-page .epy-salon-autocomplete-panel button:hover{background:#fff7ff!important}.epx-salons-page .epy-salon-autocomplete-panel b{display:block!important;font-weight:950!important;color:#1b1031!important}.epx-salons-page .epy-salon-autocomplete-panel small{display:block!important;margin-top:2px!important;color:#71637d!important;font-weight:730!important}.html-home-page .epy-quick-home .epy-quick-tile>span,.html-home-page .epy-quick-home .epy-quick-price>span{background:linear-gradient(135deg,#fce7fa,#f1eaff)!important;color:#b30fc3!important}.html-home-page .epy-quick-home .epy-filter-icon-calendar:before,.html-home-page .epy-quick-home .epy-filter-icon-location:before,.html-home-page .epy-quick-home .epy-filter-icon-device:before,.html-home-page .epy-quick-home .epy-filter-icon-specialist:before{width:30px!important;height:30px!important}.html-home-page .epy-quick-home .epy-quick-price>span{font-size:0!important}.html-home-page .epy-quick-home .epy-price-low>span:before,.html-home-page .epy-quick-home .epy-price-high>span:before{content:""!important;display:block!important;width:30px!important;height:30px!important;background:currentColor!important;-webkit-mask:var(--epx-mask) center/contain no-repeat!important;mask:var(--epx-mask) center/contain no-repeat!important}.html-home-page .epy-quick-home .epy-price-low>span{--epx-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M11 4h2v12l5-5 1.4 1.4L12 19.8l-7.4-7.4L6 11l5 5V4Z'/%3E%3C/svg%3E")}.html-home-page .epy-quick-home .epy-price-high>span{--epx-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M11 20h2V8l5 5 1.4-1.4L12 4.2l-7.4 7.4L6 13l5-5v12Z'/%3E%3C/svg%3E")}
@media(max-width:1180px){.epx-quick-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important}.epx-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.epx-filter-search{grid-column:1/-1!important}}@media(max-width:720px){.epx-salons-page .es-container,.epx-salon-filter-shell{width:calc(100% - 24px)!important}.epx-salon-filter-shell{margin-top:14px!important;padding:16px!important;border-radius:22px!important}.epx-quick-head{grid-template-columns:auto minmax(0,1fr)!important}.epx-location-pill{grid-column:1/-1!important;width:100%!important}.epx-quick-strip{grid-template-columns:1fr!important}.epx-quick-strip button,.epx-quick-strip label{justify-content:flex-start!important;min-height:60px!important;padding:0 16px!important}.epx-location-banner{grid-template-columns:46px minmax(0,1fr)!important;padding:14px!important}.epx-location-banner button{grid-column:1/-1!important;width:100%!important}.epx-filter-panel{padding:16px!important;border-radius:20px!important}.epx-filter-grid{grid-template-columns:1fr!important;gap:12px!important}.epx-filter-card{grid-template-columns:64px minmax(0,1fr)!important;min-height:118px!important;padding:16px!important;border-radius:18px!important}.epx-filter-card>.epx-icon{width:56px!important;height:56px!important;border-radius:18px!important}.epx-filter-card b{font-size:1rem!important}.epx-filter-card small{font-size:.84rem!important}.epx-filter-card input[type="search"],.epx-filter-card input[type="date"],.epx-filter-card em{grid-column:1/-1!important}.epx-filter-search{grid-column:1!important}.epx-submit{min-height:62px!important;font-size:1.15rem!important}.epx-results-section{padding-top:0!important}.epx-salons-page .salon-result-card{grid-template-columns:104px minmax(0,1fr)!important}.epx-salons-page .salon-side{grid-column:1/-1!important;border-left:0!important;border-top:1px solid #f0e2f2!important}.epx-salons-page .salon-photo-wrap img[src*="salon-placeholder"]{padding:6px!important}}

/* CHECKPOINT 18DG: final non-breaking salon/search filter layout, icons, placeholder sizing */
.ep-ref-salons-page{background:#fffafd!important;overflow-x:hidden!important}
.ep-ref-salons-page .es-container{width:min(1440px,100%)!important;margin-inline:auto!important;padding-inline:22px!important}
.ep-ref-salons-page .rich-search{display:none!important}
.ep-ref-salons-filter-shell{width:100%!important;margin:28px auto!important;padding:28px!important;border:1px solid #efd8f1!important;border-radius:28px!important;background:linear-gradient(180deg,#fff,#fffaff)!important;box-shadow:0 18px 46px rgba(67,21,80,.06)!important;display:grid!important;gap:18px!important;overflow:visible!important}
.ep-ref-page-query-field,.ep-ref-salons-filter-shell .ep-ref-mini-search--dominant{position:relative!important;display:grid!important;grid-template-columns:48px minmax(0,1fr)!important;align-items:center!important;width:100%!important;min-height:74px!important;border:1px solid #ead8ee!important;border-radius:22px!important;background:#fff!important;padding:0 18px!important;box-shadow:0 12px 30px rgba(61,11,89,.045)!important;overflow:visible!important}
.ep-ref-page-query-field>span{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;border-radius:14px!important;background:#fbdef8!important;color:#c414b4!important}
.ep-ref-page-query-field input{display:block!important;width:100%!important;height:70px!important;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;color:#160b2c!important;-webkit-text-fill-color:#160b2c!important;font-size:1.08rem!important;font-weight:900!important;line-height:1.25!important}
.ep-ref-page-query-field input::placeholder{color:#8b7b93!important;opacity:1!important}
.ep-ref-salons-filter-shell .ep-ref-location-banner{display:grid!important;grid-template-columns:54px minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;margin:0!important;min-height:74px!important;padding:14px 16px!important;border:1px solid #ead8ee!important;border-radius:22px!important;background:#fff!important;box-shadow:0 12px 30px rgba(61,11,89,.045)!important;text-align:left!important}
.ep-ref-salons-filter-shell .ep-ref-location-banner>span{display:grid!important;place-items:center!important;width:54px!important;height:54px!important;border-radius:16px!important;background:#fff4d8!important;color:#a96900!important;font-size:0!important}
.ep-ref-salons-filter-shell .ep-ref-location-banner b{display:block!important;color:#160b2c!important;font-size:1rem!important;font-weight:1000!important;line-height:1.15!important}
.ep-ref-salons-filter-shell .ep-ref-location-banner small{display:block!important;margin-top:4px!important;color:#776681!important;font-weight:720!important;line-height:1.35!important}
.ep-ref-salons-filter-shell .ep-ref-location-banner button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:48px!important;border:0!important;border-radius:15px!important;background:linear-gradient(135deg,#ffd84e,#f0ad0b)!important;color:#251534!important;padding:0 20px!important;font-weight:1000!important;white-space:nowrap!important;box-shadow:0 10px 22px rgba(228,159,8,.18)!important}
.ep-ref-salons-filter-shell .ep-ref-location-banner.is-error{border-color:#f4c8d1!important;background:#fff7f9!important}
.ep-ref-salons-filter-shell .ep-ref-location-banner.is-error>span{background:#ffe7ee!important;color:#b32743!important}
.ep-ref-salons-filter-shell .ep-ref-location-banner.is-error button{background:#fff!important;border:1px solid #efbdc8!important;color:#a42440!important;box-shadow:none!important}
.ep-ref-salon-filter-hub,.epy-quick-home .epy-quick-filter{display:grid!important;grid-template-columns:repeat(4,minmax(230px,1fr))!important;gap:18px!important;align-items:stretch!important;width:100%!important;max-width:none!important;margin:0!important}
.ep-ref-salon-filter-hub>.epy-choice-control,.epy-quick-home .epy-choice-control{display:none!important}
.ep-ref-salon-filter-hub>.epy-quick-tile,.ep-ref-salon-filter-hub>.epy-quick-price,.epy-quick-home .epy-quick-tile,.epy-quick-home .epy-quick-price{position:relative!important;display:grid!important;grid-template-columns:84px minmax(0,1fr)!important;grid-template-rows:minmax(0,auto) minmax(0,auto) auto!important;gap:6px 18px!important;align-items:center!important;width:100%!important;min-width:0!important;min-height:162px!important;padding:22px!important;border:1px solid #ead8ee!important;border-radius:24px!important;background:#fff!important;color:#160b2c!important;text-align:left!important;overflow:visible!important;box-shadow:0 14px 34px rgba(60,21,74,.055)!important;cursor:pointer!important;transform:none!important}
.ep-ref-salon-filter-hub>.epy-quick-tile:hover,.ep-ref-salon-filter-hub>.epy-quick-price:hover,.ep-ref-salon-filter-hub>.epy-quick-price.active,.ep-ref-salon-filter-hub>.epy-quick-tile.filled,.epy-quick-home .epy-quick-tile:hover,.epy-quick-home .epy-quick-price:hover,.epy-quick-home .epy-quick-price.active,.epy-quick-home .epy-quick-tile.filled{border-color:#ce20cd!important;background:linear-gradient(135deg,#fff,#fff5ff)!important}
.ep-ref-salon-filter-hub>.epy-quick-tile>span,.ep-ref-salon-filter-hub>.epy-quick-price>span,.epy-quick-home .epy-quick-tile>span,.epy-quick-home .epy-quick-price>span{grid-column:1!important;grid-row:1 / span 3!important;display:grid!important;place-items:center!important;width:84px!important;height:84px!important;border-radius:24px!important;background:#fae8fb!important;color:#a90bb9!important;font-size:0!important;line-height:1!important;overflow:hidden!important}
.ep-ref-salon-filter-hub>.epy-quick-tile>b,.ep-ref-salon-filter-hub>.epy-quick-price>b,.epy-quick-home .epy-quick-tile>b,.epy-quick-home .epy-quick-price>b{grid-column:2!important;grid-row:1!important;align-self:end!important;display:block!important;margin:0!important;color:#160b2c!important;font-size:1.18rem!important;font-weight:1000!important;line-height:1.16!important;letter-spacing:-.02em!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;max-width:100%!important}
.ep-ref-salon-filter-hub>.epy-quick-tile>small,.ep-ref-salon-filter-hub>.epy-quick-price>small,.epy-quick-home .epy-quick-tile>small,.epy-quick-home .epy-quick-price>small{grid-column:2!important;grid-row:2!important;align-self:start!important;display:block!important;margin:0!important;color:#74657e!important;font-size:.9rem!important;font-weight:760!important;line-height:1.32!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;max-width:100%!important}
.ep-ref-salon-filter-hub>.epy-quick-date-tile input[type=date],.epy-quick-home .epy-quick-date-tile input[type=date]{grid-column:2!important;grid-row:3!important;position:static!important;display:block!important;opacity:1!important;width:100%!important;height:46px!important;margin-top:8px!important;border:1px solid #ead8ee!important;border-radius:14px!important;background:#fff!important;color:#160b2c!important;-webkit-text-fill-color:#160b2c!important;padding:0 13px!important;font-size:16px!important;font-weight:850!important;line-height:1!important;cursor:pointer!important}
.ep-ref-salon-filter-hub>.epy-quick-price input[type=radio],.epy-quick-home .epy-quick-price input[type=radio],.ep-ref-salon-filter-hub>.epy-quick-toggle input[type=checkbox],.epy-quick-home .epy-quick-toggle input[type=checkbox]{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none!important}
.ep-ref-salon-filter-hub>.epy-quick-price.active:after,.epy-quick-home .epy-quick-price.active:after,.ep-ref-salon-filter-hub>.epy-quick-toggle:has(input:checked):after,.epy-quick-home .epy-quick-toggle:has(input:checked):after{content:"✓"!important;position:absolute!important;right:18px!important;top:18px!important;display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border-radius:999px!important;background:linear-gradient(135deg,#cf00ce,#7400a9)!important;color:#fff!important;font-size:1rem!important;font-weight:1000!important;box-shadow:0 9px 20px rgba(126,0,164,.22)!important}
.ep-ref-salon-filter-hub>.epy-quick-submit,.epy-quick-home .epy-quick-submit{grid-column:1/-1!important;width:100%!important;min-height:74px!important;border:0!important;border-radius:22px!important;background:linear-gradient(100deg,#f432ad,#9811d1,#5e15d8)!important;color:#fff!important;font-size:1.34rem!important;font-weight:1000!important;box-shadow:0 18px 46px rgba(150,22,190,.22)!important;cursor:pointer!important}
.ep-ref-salon-filter-hub .epy-filter-icon-search:before,.ep-ref-salon-filter-hub .epy-filter-icon-calendar:before,.ep-ref-salon-filter-hub .epy-filter-icon-location:before,.ep-ref-salon-filter-hub .epy-filter-icon-people:before,.ep-ref-salon-filter-hub .epy-filter-icon-device:before,.ep-ref-salon-filter-hub .epy-filter-icon-rating:before,.ep-ref-salon-filter-hub .epy-filter-icon-specialist:before,.ep-ref-salon-filter-hub .epy-filter-icon-male:before,.epy-quick-home .epy-filter-icon-search:before,.epy-quick-home .epy-filter-icon-calendar:before,.epy-quick-home .epy-filter-icon-location:before,.epy-quick-home .epy-filter-icon-people:before,.epy-quick-home .epy-filter-icon-device:before,.epy-quick-home .epy-filter-icon-rating:before,.epy-quick-home .epy-filter-icon-specialist:before,.epy-quick-home .epy-filter-icon-male:before{content:""!important;display:block!important;width:42px!important;height:42px!important;background:currentColor!important;-webkit-mask-position:center!important;mask-position:center!important;-webkit-mask-size:contain!important;mask-size:contain!important;-webkit-mask-repeat:no-repeat!important;mask-repeat:no-repeat!important}
.epy-filter-icon-search:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' d='m20 20-4.4-4.4'/%3E%3Ccircle cx='10.5' cy='10.5' r='6.6' fill='none' stroke='black' stroke-width='2.4'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' d='m20 20-4.4-4.4'/%3E%3Ccircle cx='10.5' cy='10.5' r='6.6' fill='none' stroke='black' stroke-width='2.4'/%3E%3C/svg%3E")!important}
.epy-filter-icon-calendar:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2.5' fill='none' stroke='black' stroke-width='2.2'/%3E%3Cpath d='M7 3v4M17 3v4M4 9h16' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M7.1 12.4h2.4v2.4H7.1zm4.3 0h2.4v2.4h-2.4zm4.3 0h2.4v2.4h-2.4zM7.1 16.2h2.4v2.4H7.1zm4.3 0h2.4v2.4h-2.4z' fill='black'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2.5' fill='none' stroke='black' stroke-width='2.2'/%3E%3Cpath d='M7 3v4M17 3v4M4 9h16' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M7.1 12.4h2.4v2.4H7.1zm4.3 0h2.4v2.4h-2.4zm4.3 0h2.4v2.4h-2.4zM7.1 16.2h2.4v2.4H7.1zm4.3 0h2.4v2.4h-2.4z' fill='black'/%3E%3C/svg%3E")!important}
.epy-filter-icon-location:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22s7.3-6.8 7.3-13A7.3 7.3 0 1 0 4.7 9c0 6.2 7.3 13 7.3 13Z' fill='black'/%3E%3Ccircle cx='12' cy='9' r='2.7' fill='white'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22s7.3-6.8 7.3-13A7.3 7.3 0 1 0 4.7 9c0 6.2 7.3 13 7.3 13Z' fill='black'/%3E%3Ccircle cx='12' cy='9' r='2.7' fill='white'/%3E%3C/svg%3E")!important}
.epy-filter-icon-people:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='8' cy='8' r='3.4' fill='black'/%3E%3Cpath d='M2.8 20c.55-4.1 2.75-6 5.2-6s4.65 1.9 5.2 6Z' fill='black'/%3E%3Ccircle cx='16.5' cy='8.5' r='3' fill='black' opacity='.72'/%3E%3Cpath d='M12.8 20c.45-3.2 2-5.1 3.8-5.1s3.65 1.9 4.1 5.1Z' fill='black' opacity='.72'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='8' cy='8' r='3.4' fill='black'/%3E%3Cpath d='M2.8 20c.55-4.1 2.75-6 5.2-6s4.65 1.9 5.2 6Z' fill='black'/%3E%3Ccircle cx='16.5' cy='8.5' r='3' fill='black' opacity='.72'/%3E%3Cpath d='M12.8 20c.45-3.2 2-5.1 3.8-5.1s3.65 1.9 4.1 5.1Z' fill='black' opacity='.72'/%3E%3C/svg%3E")!important}
.epy-filter-icon-device:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='5' y='3' width='14' height='17' rx='2.5' fill='none' stroke='black' stroke-width='2.2'/%3E%3Cpath d='M8 7h8M8 10h8M9 17h6M7 22h10' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='5' y='3' width='14' height='17' rx='2.5' fill='none' stroke='black' stroke-width='2.2'/%3E%3Cpath d='M8 7h8M8 10h8M9 17h6M7 22h10' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E")!important}
.epy-filter-icon-rating:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2.8 2.85 5.75 6.35.92-4.6 4.48 1.08 6.32L12 17.28l-5.68 2.99 1.08-6.32-4.6-4.48 6.35-.92Z' fill='black'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2.8 2.85 5.75 6.35.92-4.6 4.48 1.08 6.32L12 17.28l-5.68 2.99 1.08-6.32-4.6-4.48 6.35-.92Z' fill='black'/%3E%3C/svg%3E")!important}
.epy-filter-icon-specialist:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='7' r='4' fill='none' stroke='black' stroke-width='2.3'/%3E%3Cpath d='M4.5 21c.65-5.3 3.3-8 7.5-8s6.85 2.7 7.5 8Z' fill='none' stroke='black' stroke-width='2.3'/%3E%3Cpath d='M12 15.2v4M10 17.2h4' stroke='black' stroke-width='2.3' stroke-linecap='round'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='7' r='4' fill='none' stroke='black' stroke-width='2.3'/%3E%3Cpath d='M4.5 21c.65-5.3 3.3-8 7.5-8s6.85 2.7 7.5 8Z' fill='none' stroke='black' stroke-width='2.3'/%3E%3Cpath d='M12 15.2v4M10 17.2h4' stroke='black' stroke-width='2.3' stroke-linecap='round'/%3E%3C/svg%3E")!important}
.epy-filter-icon-male:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10' cy='14' r='5.3' fill='none' stroke='black' stroke-width='2.4'/%3E%3Cpath d='M14 10 20 4M16 4h4v4' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10' cy='14' r='5.3' fill='none' stroke='black' stroke-width='2.4'/%3E%3Cpath d='M14 10 20 4M16 4h4v4' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important}
.epy-price-low>span:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4v15M6 13l6 6 6-6' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4v15M6 13l6 6 6-6' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important}
.epy-price-high>span:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 20V5M6 11l6-6 6 6' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 20V5M6 11l6-6 6 6' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important}
.salon-photo-wrap img[src*="salon-placeholder"],.epy-home-salon-card img[src*="salon-placeholder"],.epy-single-gallery-main img[src*="salon-placeholder"],.epy-single-gallery-thumb img[src*="salon-placeholder"]{object-fit:cover!important;padding:0!important;background:#fffafd!important}
@media(max-width:1100px){.ep-ref-salon-filter-hub,.epy-quick-home .epy-quick-filter{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){.ep-ref-salons-page .es-container{padding-inline:12px!important}.ep-ref-salons-filter-shell{margin:14px auto 22px!important;padding:16px 12px!important;border-radius:24px!important}.ep-ref-page-query-field,.ep-ref-salons-filter-shell .ep-ref-mini-search--dominant{min-height:66px!important;border-radius:20px!important;padding:0 14px!important;grid-template-columns:44px minmax(0,1fr)!important}.ep-ref-page-query-field input{height:62px!important;font-size:1rem!important}.ep-ref-salons-filter-shell .ep-ref-location-banner{grid-template-columns:48px minmax(0,1fr)!important;gap:12px!important}.ep-ref-salons-filter-shell .ep-ref-location-banner>span{width:48px!important;height:48px!important}.ep-ref-salons-filter-shell .ep-ref-location-banner button{grid-column:1/-1!important;width:100%!important}.ep-ref-salon-filter-hub,.epy-quick-home .epy-quick-filter{grid-template-columns:1fr!important;gap:12px!important}.ep-ref-salon-filter-hub>.epy-quick-tile,.ep-ref-salon-filter-hub>.epy-quick-price,.epy-quick-home .epy-quick-tile,.epy-quick-home .epy-quick-price{min-height:106px!important;padding:16px!important;grid-template-columns:64px minmax(0,1fr)!important;border-radius:21px!important}.ep-ref-salon-filter-hub>.epy-quick-tile>span,.ep-ref-salon-filter-hub>.epy-quick-price>span,.epy-quick-home .epy-quick-tile>span,.epy-quick-home .epy-quick-price>span{width:64px!important;height:64px!important;border-radius:20px!important}.ep-ref-salon-filter-hub>.epy-quick-tile>b,.ep-ref-salon-filter-hub>.epy-quick-price>b,.epy-quick-home .epy-quick-tile>b,.epy-quick-home .epy-quick-price>b{font-size:1.05rem!important}.ep-ref-salon-filter-hub>.epy-quick-tile>small,.ep-ref-salon-filter-hub>.epy-quick-price>small,.epy-quick-home .epy-quick-tile>small,.epy-quick-home .epy-quick-price>small{font-size:.84rem!important}.ep-ref-salon-filter-hub>.epy-quick-date-tile input[type=date],.epy-quick-home .epy-quick-date-tile input[type=date]{height:42px!important}.ep-ref-salon-filter-hub>.epy-quick-submit,.epy-quick-home .epy-quick-submit{min-height:62px!important;font-size:1.12rem!important;border-radius:18px!important}}

/* CHECKPOINT 18DG: final /salonlar filter layout, stable location UX, target-style icons */
.ep-ref-salons-page{background:linear-gradient(180deg,#fff 0,#fff8fd 460px,#fff 100%)!important;overflow-x:hidden!important}
.ep-ref-salons-page .es-section#sonuclar{padding-top:26px!important}
.ep-ref-salons-page .es-container{width:min(1480px,100%)!important;max-width:1480px!important;margin:0 auto!important;padding-left:22px!important;padding-right:22px!important}
.ep-ref-salons-page .ep-ref-salons-filter-shell{display:block!important;width:100%!important;max-width:1460px!important;margin:0 auto 28px!important;padding:28px!important;border:1px solid #ead8ee!important;border-radius:34px!important;background:radial-gradient(circle at 12% 0,#fff 0,#fff 48%,#fff7ff 100%)!important;box-shadow:0 26px 78px rgba(74,18,91,.08)!important;overflow:visible!important}
.ep-ref-salons-page .ep-ref-page-query-field{position:relative!important;display:grid!important;grid-template-columns:62px minmax(0,1fr)!important;align-items:center!important;gap:14px!important;min-height:78px!important;margin:0 0 16px!important;padding:10px 22px!important;border:1px solid #ead8ee!important;border-radius:24px!important;background:#fff!important;box-shadow:0 14px 34px rgba(70,18,90,.045)!important;overflow:visible!important}
.ep-ref-salons-page .ep-ref-page-query-field input{width:100%!important;height:54px!important;border:0!important;background:transparent!important;outline:0!important;color:#170a31!important;-webkit-text-fill-color:#170a31!important;font-size:1.08rem!important;font-weight:950!important;letter-spacing:-.02em!important}
.ep-ref-salons-page .ep-ref-location-banner{display:grid!important;grid-template-columns:58px minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;margin:0 0 18px!important;padding:16px 18px!important;min-height:82px!important;border:1px solid #ead8ee!important;border-radius:22px!important;background:#fff!important;box-shadow:0 14px 34px rgba(70,18,90,.045)!important;text-align:left!important}
.ep-ref-salons-page .ep-ref-location-banner>span{width:54px!important;height:54px!important;border-radius:18px!important;background:#f8e8fb!important;color:#b000d4!important;margin:0!important}
.ep-ref-salons-page .ep-ref-location-banner b{font-size:1.02rem!important;font-weight:1000!important;color:#170a31!important;line-height:1.15!important}
.ep-ref-salons-page .ep-ref-location-banner small{font-size:.85rem!important;color:#75637d!important;line-height:1.35!important;font-weight:700!important}
.ep-ref-salons-page .ep-ref-location-banner button{min-height:48px!important;border:1px solid #edb8f2!important;border-radius:16px!important;background:#fff!important;color:#a70fc0!important;padding:0 18px!important;font-weight:1000!important;box-shadow:none!important;white-space:nowrap!important}
.ep-ref-salons-page .ep-ref-location-banner.is-loading button,.ep-ref-salons-page .ep-ref-location-banner.is-success button,.ep-ref-salons-page .ep-ref-location-banner.is-error button{background:#fff!important;box-shadow:none!important}
.ep-ref-salons-page .ep-ref-salon-filter-hub{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;width:100%!important;max-width:none!important;margin:0!important;align-items:stretch!important;overflow:visible!important}
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-choice-control{display:none!important;position:absolute!important;inline-size:1px!important;block-size:1px!important;opacity:0!important;pointer-events:none!important}
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-tile,
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-price{position:relative!important;display:grid!important;grid-template-columns:66px minmax(0,1fr)!important;grid-template-rows:auto auto!important;grid-template-areas:"icon title" "icon desc"!important;align-content:center!important;align-items:center!important;gap:7px 16px!important;width:auto!important;min-width:0!important;min-height:128px!important;margin:0!important;padding:20px!important;border:1px solid #ead8ee!important;border-radius:24px!important;background:#fff!important;color:#170a31!important;text-align:left!important;overflow:visible!important;box-shadow:0 16px 42px rgba(68,16,88,.055)!important;cursor:pointer!important;white-space:normal!important}
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-tile:hover,
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-price:hover,
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-tile.filled,
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-price.active{border-color:#c300d8!important;background:linear-gradient(180deg,#fff 0,#fff6ff 100%)!important;box-shadow:0 18px 48px rgba(176,0,212,.12)!important}
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-tile>span,
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-price>span,
.epy-quick-home .epy-quick-tile>span[class*="epy-filter-icon"],
.epy-quick-home .epy-quick-price>span{grid-area:icon!important;display:grid!important;place-items:center!important;width:64px!important;height:64px!important;border-radius:22px!important;background:#f8e8fb!important;color:#b000d4!important;font-size:0!important;line-height:1!important;overflow:hidden!important;flex:0 0 auto!important}
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-tile>b,
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-price>b{grid-area:title!important;align-self:end!important;display:block!important;max-width:100%!important;color:#170a31!important;font-size:1.08rem!important;line-height:1.08!important;font-weight:1000!important;letter-spacing:-.025em!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;word-break:normal!important;overflow-wrap:normal!important}
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-tile>small,
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-price>small{grid-area:desc!important;align-self:start!important;display:block!important;color:#716079!important;font-size:.86rem!important;line-height:1.22!important;font-weight:760!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;word-break:normal!important;overflow-wrap:normal!important}
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-price input{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-tile input:not([type="hidden"]){position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;cursor:pointer!important}
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-submit{grid-column:1/-1!important;min-height:66px!important;border:0!important;border-radius:22px!important;background:linear-gradient(135deg,#e228b2 0%,#5e0fd0 100%)!important;color:#fff!important;font-size:1.18rem!important;font-weight:1000!important;box-shadow:0 22px 55px rgba(113,16,198,.20)!important;cursor:pointer!important}
.ep-ref-salons-page .booking-layout.ep-ref-results-only{display:block!important;grid-template-columns:none!important;width:100%!important;max-width:1460px!important;margin:0 auto!important}
.ep-ref-salons-page .result-head--premium{margin-bottom:14px!important}
.ep-ref-salons-page .booking-results--wide{display:grid!important;gap:18px!important;width:100%!important}
.ep-ref-salons-page .salon-result-card{display:grid!important;grid-template-columns:260px minmax(0,1fr) minmax(190px,240px)!important;gap:20px!important;align-items:stretch!important;padding:22px!important;border-radius:28px!important;background:#fff!important;overflow:hidden!important}
.ep-ref-salons-page .salon-photo-wrap{display:block!important;width:100%!important;min-height:184px!important;border-radius:22px!important;overflow:hidden!important;background:#fff8fd!important}
.ep-ref-salons-page .salon-photo-wrap img{display:block!important;width:100%!important;height:100%!important;min-height:184px!important;object-fit:cover!important;border-radius:22px!important}
.ep-ref-salons-page .salon-photo-wrap img[src*="salon-placeholder"],
.ep-ref-salons-page .salon-photo-wrap img[src*="salon-placeholder-logo"],
.epy-home-salon-card img[src*="salon-placeholder"],
.epy-home-salon-card img[src*="salon-placeholder-logo"]{object-fit:cover!important;padding:0!important;background:#fff!important}
.ep-ref-salons-page .salon-main{min-width:0!important;overflow:visible!important}
.ep-ref-salons-page .salon-main h3{font-size:1.72rem!important;line-height:1.06!important;margin:10px 0 8px!important;color:#170a31!important}
.ep-ref-salons-page .salon-side{display:grid!important;align-content:center!important;gap:10px!important;border-left:1px solid #ead8ee!important;padding-left:18px!important;min-width:0!important}
.ep-ref-salons-page .salon-side-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
.ep-ref-salons-page .salon-side-actions a{min-height:44px!important;border-radius:14px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important}
.ep-ref-salons-page .epy-salon-autocomplete-panel{position:absolute!important;left:0!important;right:0!important;top:calc(100% + 8px)!important;z-index:50!important;border:1px solid #ead8ee!important;border-radius:18px!important;background:#fff!important;box-shadow:0 18px 48px rgba(60,15,80,.16)!important;overflow:hidden!important}
.ep-ref-salons-page .epy-salon-autocomplete-panel button{display:grid!important;gap:2px!important;width:100%!important;border:0!important;background:#fff!important;text-align:left!important;padding:13px 16px!important;color:#170a31!important;font-weight:900!important}
.ep-ref-salons-page .epy-salon-autocomplete-panel button:hover{background:#fff5ff!important;color:#a90bb9!important}
.ep-ref-salons-page .epy-salon-autocomplete-panel small{color:#7b6b84!important;font-weight:700!important}

/* target-like icon system for homepage and salon filters */
.epy-quick-home .epy-quick-tile>span[class*="epy-filter-icon"],
.epy-quick-home .epy-quick-price>span,
.ep-ref-salons-page .epy-quick-tile>span[class*="epy-filter-icon"],
.ep-ref-salons-page .epy-quick-price>span{background:#f8e8fb!important;color:#b000d4!important}
.epy-quick-home .epy-quick-tile>span[class*="epy-filter-icon"]:before,
.epy-quick-home .epy-quick-price>span:before,
.ep-ref-salons-page .epy-quick-tile>span[class*="epy-filter-icon"]:before,
.ep-ref-salons-page .epy-quick-price>span:before,
.ep-ref-page-query-field>.epy-filter-icon-search:before,
.ep-ref-location-banner>.epy-filter-icon-location:before{content:""!important;display:block!important;width:34px!important;height:34px!important;background:currentColor!important;-webkit-mask:center/contain no-repeat;mask:center/contain no-repeat}
.epy-filter-icon-search:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10.5' cy='10.5' r='6.2' fill='none' stroke='black' stroke-width='2.6'/%3E%3Cpath d='M15.2 15.2 21 21' stroke='black' stroke-width='2.8' stroke-linecap='round'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10.5' cy='10.5' r='6.2' fill='none' stroke='black' stroke-width='2.6'/%3E%3Cpath d='M15.2 15.2 21 21' stroke='black' stroke-width='2.8' stroke-linecap='round'/%3E%3C/svg%3E")!important}
.epy-filter-icon-calendar:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='4' y='5.5' width='16' height='15' rx='2.7' fill='none' stroke='black' stroke-width='2.3'/%3E%3Cpath d='M8 3.5v4M16 3.5v4M4.5 10h15M8 14h2.5M13.5 14H16M8 17h2.5M13.5 17H16' stroke='black' stroke-width='2.1' stroke-linecap='round'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='4' y='5.5' width='16' height='15' rx='2.7' fill='none' stroke='black' stroke-width='2.3'/%3E%3Cpath d='M8 3.5v4M16 3.5v4M4.5 10h15M8 14h2.5M13.5 14H16M8 17h2.5M13.5 17H16' stroke='black' stroke-width='2.1' stroke-linecap='round'/%3E%3C/svg%3E")!important}
.epy-filter-icon-location:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s7-6.2 7-12.2A7 7 0 0 0 5 8.8C5 14.8 12 21 12 21Z' fill='none' stroke='black' stroke-width='2.5'/%3E%3Ccircle cx='12' cy='8.8' r='2.35' fill='black'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s7-6.2 7-12.2A7 7 0 0 0 5 8.8C5 14.8 12 21 12 21Z' fill='none' stroke='black' stroke-width='2.5'/%3E%3Ccircle cx='12' cy='8.8' r='2.35' fill='black'/%3E%3C/svg%3E")!important}
.epy-filter-icon-people:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='8.3' cy='8.2' r='3.6' fill='black'/%3E%3Cpath d='M2.3 21c.6-4.8 3-7.2 6-7.2s5.4 2.4 6 7.2Z' fill='black'/%3E%3Ccircle cx='16.6' cy='8.8' r='3.1' fill='black' opacity='.75'/%3E%3Cpath d='M13.2 21c.45-4 2.1-6.2 4.1-6.2 2.3 0 4 2.3 4.4 6.2Z' fill='black' opacity='.75'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='8.3' cy='8.2' r='3.6' fill='black'/%3E%3Cpath d='M2.3 21c.6-4.8 3-7.2 6-7.2s5.4 2.4 6 7.2Z' fill='black'/%3E%3Ccircle cx='16.6' cy='8.8' r='3.1' fill='black' opacity='.75'/%3E%3Cpath d='M13.2 21c.45-4 2.1-6.2 4.1-6.2 2.3 0 4 2.3 4.4 6.2Z' fill='black' opacity='.75'/%3E%3C/svg%3E")!important}
.epy-filter-icon-device:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='6' y='3.2' width='12' height='17.2' rx='2.6' fill='none' stroke='black' stroke-width='2.3'/%3E%3Cpath d='M9 7.5h6M9 11h6M10 15h4M9 20.5h6' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='6' y='3.2' width='12' height='17.2' rx='2.6' fill='none' stroke='black' stroke-width='2.3'/%3E%3Cpath d='M9 7.5h6M9 11h6M10 15h4M9 20.5h6' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E")!important}
.epy-filter-icon-rating:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2.4 2.95 6 6.6.96-4.78 4.66 1.13 6.58L12 17.5l-5.9 3.1 1.13-6.58-4.78-4.66 6.6-.96Z' fill='black'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2.4 2.95 6 6.6.96-4.78 4.66 1.13 6.58L12 17.5l-5.9 3.1 1.13-6.58-4.78-4.66 6.6-.96Z' fill='black'/%3E%3C/svg%3E")!important}
.epy-filter-icon-specialist:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='7' r='4' fill='none' stroke='black' stroke-width='2.3'/%3E%3Cpath d='M4.5 21c.65-5.25 3.35-8 7.5-8s6.85 2.75 7.5 8Z' fill='none' stroke='black' stroke-width='2.3'/%3E%3Cpath d='M12 15.5v4M10 17.5h4' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='7' r='4' fill='none' stroke='black' stroke-width='2.3'/%3E%3Cpath d='M4.5 21c.65-5.25 3.35-8 7.5-8s6.85 2.75 7.5 8Z' fill='none' stroke='black' stroke-width='2.3'/%3E%3Cpath d='M12 15.5v4M10 17.5h4' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E")!important}
.epy-filter-icon-male:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10' cy='14' r='5.4' fill='none' stroke='black' stroke-width='2.4'/%3E%3Cpath d='M14 10 20 4M16 4h4v4' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10' cy='14' r='5.4' fill='none' stroke='black' stroke-width='2.4'/%3E%3Cpath d='M14 10 20 4M16 4h4v4' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important}
.epy-price-low>span:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4v15M6 13l6 6 6-6' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4v15M6 13l6 6 6-6' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important}
.epy-price-high>span:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 20V5M6 11l6-6 6 6' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 20V5M6 11l6-6 6 6' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important}

@media(max-width:1180px){
  .ep-ref-salons-page .ep-ref-salon-filter-hub{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ep-ref-salons-page .salon-result-card{grid-template-columns:210px minmax(0,1fr)!important}
  .ep-ref-salons-page .salon-side{grid-column:1/-1!important;border-left:0!important;border-top:1px solid #ead8ee!important;padding:16px 0 0!important;grid-template-columns:1fr auto!important;align-items:center!important}
  .ep-ref-salons-page .salon-side-actions{grid-template-columns:auto auto!important;justify-content:end!important}
}
@media(max-width:720px){
  .ep-ref-salons-page .es-container{padding-left:12px!important;padding-right:12px!important}
  .ep-ref-salons-page .ep-ref-salons-filter-shell{padding:16px!important;border-radius:24px!important;margin-bottom:20px!important}
  .ep-ref-salons-page .ep-ref-page-query-field{grid-template-columns:52px minmax(0,1fr)!important;min-height:68px!important;padding:8px 14px!important;border-radius:20px!important}
  .ep-ref-salons-page .ep-ref-page-query-field input{font-size:1rem!important;height:48px!important}
  .ep-ref-salons-page .ep-ref-location-banner{grid-template-columns:52px minmax(0,1fr)!important;min-height:74px!important;border-radius:20px!important;padding:12px 14px!important}
  .ep-ref-salons-page .ep-ref-location-banner button{grid-column:1/-1!important;width:100%!important;margin-top:2px!important}
  .ep-ref-salons-page .ep-ref-salon-filter-hub{grid-template-columns:1fr 1fr!important;gap:10px!important}
  .ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-tile,
  .ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-price{grid-template-columns:50px minmax(0,1fr)!important;gap:5px 10px!important;min-height:98px!important;padding:13px!important;border-radius:20px!important}
  .ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-tile>span,
  .ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-price>span{width:50px!important;height:50px!important;border-radius:17px!important}
  .ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-tile>span:before,
  .ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-price>span:before{width:28px!important;height:28px!important}
  .ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-tile>b,
  .ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-price>b{font-size:.93rem!important;line-height:1.06!important}
  .ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-tile>small,
  .ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-price>small{font-size:.72rem!important;line-height:1.13!important}
  .ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-submit{min-height:58px!important;font-size:1.02rem!important}
  .ep-ref-salons-page .salon-result-card{grid-template-columns:112px minmax(0,1fr)!important;gap:12px!important;padding:14px!important;border-radius:22px!important}
  .ep-ref-salons-page .salon-photo-wrap,.ep-ref-salons-page .salon-photo-wrap img{min-height:116px!important;height:116px!important;border-radius:18px!important}
  .ep-ref-salons-page .salon-main h3{font-size:1.2rem!important;line-height:1.1!important}
  .ep-ref-salons-page .ep-ref-card-badges{gap:5px!important}
  .ep-ref-salons-page .ep-ref-card-badges .es-pill{font-size:.68rem!important;padding:5px 7px!important}
  .ep-ref-salons-page .salon-side{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .ep-ref-salons-page .salon-side-actions{grid-template-columns:1fr 1fr!important;justify-content:stretch!important}
}
@media(max-width:430px){
  .ep-ref-salons-page .ep-ref-salon-filter-hub{grid-template-columns:1fr!important}
  .ep-ref-salons-page .salon-result-card{grid-template-columns:1fr!important}
  .ep-ref-salons-page .salon-photo-wrap,.ep-ref-salons-page .salon-photo-wrap img{height:190px!important;min-height:190px!important}
}

/* CHECKPOINT 18DG.1: final epx salon filter hard override */
.epx-salons-page,.epx-salons-page *{box-sizing:border-box!important;min-width:0}
.epx-salons-page{background:linear-gradient(180deg,#fff8fd 0,#fff 420px)!important;overflow-x:hidden!important}
.epx-salons-page .es-container{width:min(1440px,calc(100% - 48px))!important;max-width:1440px!important;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important}
.epx-salon-filter-shell{display:block!important;width:min(1440px,calc(100% - 48px))!important;max-width:1440px!important;margin:28px auto 28px!important;padding:26px!important;border:1px solid #ead8ef!important;border-radius:28px!important;background:rgba(255,255,255,.98)!important;box-shadow:0 22px 70px rgba(78,20,96,.07)!important;overflow:visible!important}
.epx-quick-head{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important;margin:0 0 18px!important;width:100%!important}
.epx-quick-strip{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;width:100%!important;margin:0 0 20px!important}
.epx-location-banner{display:grid!important;grid-template-columns:56px minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important;width:100%!important;margin:0 0 22px!important}
.epx-filter-panel{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:24px!important;border:1px solid #ead8ef!important;border-radius:24px!important;background:#fff!important;box-shadow:0 18px 48px rgba(58,18,76,.055)!important;overflow:visible!important}
.epx-filter-panel>header{display:flex!important;align-items:flex-start!important;gap:12px!important;width:100%!important;margin:0 0 20px!important}
.epx-filter-grid{display:grid!important;grid-template-columns:repeat(4,minmax(240px,1fr))!important;gap:18px!important;align-items:stretch!important;width:100%!important;max-width:none!important;margin:0!important;overflow:visible!important}
.epx-filter-grid>.epy-choice-control{display:none!important}
.epx-filter-card{position:relative!important;display:grid!important;grid-template-columns:86px minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;gap:6px 18px!important;align-items:center!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:156px!important;margin:0!important;padding:20px!important;border:1px solid #eee0f1!important;border-radius:22px!important;background:#fff!important;color:#1b1031!important;text-align:left!important;box-shadow:0 12px 32px rgba(52,19,70,.045)!important;overflow:visible!important;isolation:isolate!important;transform:none!important;cursor:pointer!important}
.epx-filter-card:hover,.epx-filter-card.active,.epx-filter-card.filled{border-color:#d68be3!important;background:linear-gradient(135deg,#fff,#fff7ff)!important;box-shadow:0 18px 42px rgba(167,20,184,.09)!important}
.epx-filter-card>.epx-icon{grid-column:1!important;grid-row:1 / span 3!important;display:grid!important;place-items:center!important;width:76px!important;height:76px!important;border-radius:22px!important;background:linear-gradient(135deg,#fff0fe,#f3e8ff)!important;color:#b30fc3!important;flex:0 0 auto!important;margin:0!important}
.epx-filter-card>.epx-icon:before{width:38px!important;height:38px!important}
.epx-filter-card>span{grid-column:2!important;grid-row:1 / span 2!important;display:block!important;align-self:center!important;min-width:0!important;max-width:100%!important;margin:0!important;overflow:visible!important}
.epx-filter-card b{display:block!important;margin:0!important;color:#1b1031!important;font-size:1.12rem!important;font-weight:950!important;line-height:1.14!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;text-overflow:clip!important;overflow:visible!important;max-width:100%!important}
.epx-filter-card small{display:block!important;margin:7px 0 0!important;color:#6f627b!important;font-size:.9rem!important;font-weight:760!important;line-height:1.32!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;text-overflow:clip!important;overflow:visible!important;max-width:100%!important}
.epx-filter-card em{grid-column:2!important;grid-row:3!important;display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;min-height:43px!important;margin:8px 0 0!important;padding:0 13px!important;border:1px solid #e9ddeb!important;border-radius:12px!important;background:#fff!important;color:#6f627b!important;font-style:normal!important;font-weight:760!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.epx-filter-card input[type="search"],.epx-filter-card input[type="date"]{grid-column:2!important;grid-row:3!important;display:block!important;position:static!important;width:100%!important;min-width:0!important;height:44px!important;margin:8px 0 0!important;border:1px solid #e8dceb!important;border-radius:12px!important;background:#fff!important;color:#1b1031!important;-webkit-text-fill-color:#1b1031!important;padding:0 12px!important;font-size:1rem!important;font-weight:820!important;outline:0!important;opacity:1!important;box-shadow:none!important}
.epx-filter-card input[type="search"]{height:48px!important}
.epx-filter-search{grid-column:1 / span 2!important}
.epx-price-card input[type=radio],.epx-toggle-card input[type=checkbox]{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none!important}
.epx-price-card.active:after{content:"✓"!important;position:absolute!important;right:18px!important;top:18px!important;display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border-radius:999px!important;background:linear-gradient(135deg,#cf00ce,#7400a9)!important;color:#fff!important;font-size:1rem!important;font-weight:1000!important;box-shadow:0 9px 20px rgba(126,0,164,.22)!important}
.epx-toggle-card>em{grid-column:2!important;grid-row:3!important;justify-self:start!important;width:62px!important;height:32px!important;min-height:32px!important;margin-top:10px!important;padding:0!important;border-radius:999px!important;border:1px solid #ded2e4!important;background:#eee8f1!important;position:relative!important;overflow:visible!important;font-size:0!important}
.epx-toggle-card>em:before{content:""!important;position:absolute!important;left:4px!important;top:4px!important;width:24px!important;height:24px!important;border-radius:50%!important;background:#fff!important;box-shadow:0 4px 10px rgba(35,14,54,.15)!important;transition:.18s ease!important}
.epx-toggle-card:has(input:checked)>em{background:linear-gradient(135deg,#d50bc9,#7f12bd)!important;border-color:transparent!important}.epx-toggle-card:has(input:checked)>em:before{transform:translateX(30px)!important}
.epx-submit{display:flex!important;align-items:center!important;justify-content:center!important;gap:14px!important;width:100%!important;min-height:70px!important;margin-top:22px!important;border:0!important;border-radius:20px!important;background:linear-gradient(100deg,#ee2cae 0%,#b814cc 46%,#5a18d7 100%)!important;color:#fff!important;font-size:1.32rem!important;font-weight:950!important;letter-spacing:-.02em!important;box-shadow:0 18px 45px rgba(146,18,191,.24)!important;cursor:pointer!important;white-space:normal!important;text-align:center!important}
.epx-submit .epx-icon{background:transparent!important;color:#fff!important;width:32px!important;height:32px!important}.epx-submit .epx-icon:before{width:28px!important;height:28px!important}
.epx-salons-page .salon-photo-wrap img[src*="salon-placeholder"]{object-fit:cover!important;padding:0!important;background:#fffafd!important}
.epy-home-salon-card img[src*="salon-placeholder"]{object-fit:cover!important;padding:0!important;background:#fffafd!important}
@media(max-width:1180px){.epx-quick-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important}.epx-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.epx-filter-search{grid-column:1/-1!important}}
@media(max-width:720px){.epx-salons-page .es-container,.epx-salon-filter-shell{width:calc(100% - 24px)!important}.epx-salon-filter-shell{margin-top:14px!important;padding:16px!important;border-radius:22px!important}.epx-quick-head{grid-template-columns:auto minmax(0,1fr)!important}.epx-location-pill{grid-column:1/-1!important;width:100%!important}.epx-quick-strip{grid-template-columns:1fr!important}.epx-location-banner{grid-template-columns:46px minmax(0,1fr)!important;padding:14px!important}.epx-location-banner button{grid-column:1/-1!important;width:100%!important}.epx-filter-panel{padding:16px!important;border-radius:20px!important}.epx-filter-grid{grid-template-columns:1fr!important;gap:12px!important}.epx-filter-card{grid-template-columns:64px minmax(0,1fr)!important;min-height:118px!important;padding:16px!important;border-radius:18px!important}.epx-filter-card>.epx-icon{width:56px!important;height:56px!important;border-radius:18px!important}.epx-filter-card>.epx-icon:before{width:30px!important;height:30px!important}.epx-filter-card b{font-size:1rem!important}.epx-filter-card small{font-size:.84rem!important}.epx-filter-card input[type="search"],.epx-filter-card input[type="date"],.epx-filter-card em{grid-column:2!important}.epx-filter-search{grid-column:1!important}.epx-submit{min-height:62px!important;font-size:1.15rem!important}.epx-salons-page .salon-result-card{grid-template-columns:104px minmax(0,1fr)!important}.epx-salons-page .salon-side{grid-column:1/-1!important;border-left:0!important;border-top:1px solid #f0e2f2!important}}
@media(max-width:430px){.epx-filter-card{grid-template-columns:56px minmax(0,1fr)!important}.epx-filter-card>.epx-icon{width:50px!important;height:50px!important}.epx-filter-card input[type="search"],.epx-filter-card input[type="date"],.epx-filter-card em{grid-column:1/-1!important}.epx-filter-card>span{grid-column:2!important}.epx-submit{font-size:1.05rem!important}}

/* CHECKPOINT 18DH: reference-matched premium filter icons for homepage and /salonlar */
:root{--epx-icon-bg:#fbecfb;--epx-icon-purple:#8d19c8;--epx-icon-pink:#f12cae;--epx-icon-stroke:#7a1bc5}
.epx-icon:before,
.epy-quick-home .epy-filter-icon-search:before,
.epy-quick-home .epy-filter-icon-calendar:before,
.epy-quick-home .epy-filter-icon-location:before,
.epy-quick-home .epy-filter-icon-people:before,
.epy-quick-home .epy-filter-icon-device:before,
.epy-quick-home .epy-filter-icon-rating:before,
.epy-quick-home .epy-filter-icon-specialist:before,
.epy-quick-home .epy-filter-icon-male:before,
.epy-quick-home .epy-price-low>span:before,
.epy-quick-home .epy-price-high>span:before{content:""!important;display:block!important;width:42px!important;height:42px!important;background-color:transparent!important;background-position:center!important;background-repeat:no-repeat!important;background-size:contain!important;-webkit-mask:none!important;mask:none!important}
.epx-icon{background:var(--epx-icon-bg)!important;color:transparent!important;box-shadow:none!important}
.epx-quick-strip .epx-icon,.epx-location-pill .epx-icon{background:transparent!important;width:34px!important;height:34px!important;border-radius:0!important}.epx-quick-strip .epx-icon:before,.epx-location-pill .epx-icon:before{width:32px!important;height:32px!important}
.epx-filter-card>.epx-icon,.epx-location-banner>.epx-icon,.epx-filter-panel>header>.epx-icon{background:var(--epx-icon-bg)!important;color:transparent!important;box-shadow:none!important}
.epx-icon-location:before,.epy-quick-home .epy-filter-icon-location:before{background-image:url('/Plugins/Misc.Epiyum/Content/images/filter-icons/location.svg?v=18dh')!important}
.epx-icon-calendar:before,.epy-quick-home .epy-filter-icon-calendar:before{background-image:url('/Plugins/Misc.Epiyum/Content/images/filter-icons/calendar.svg?v=18dh')!important}
.epx-icon-campaign:before{background-image:url('/Plugins/Misc.Epiyum/Content/images/filter-icons/tag.svg?v=18dh')!important}
.epx-icon-star:before,.epy-quick-home .epy-filter-icon-rating:before{background-image:url('/Plugins/Misc.Epiyum/Content/images/filter-icons/star-filled.svg?v=18dh')!important}
.epx-quick-strip .epx-icon-star:before{background-image:url('/Plugins/Misc.Epiyum/Content/images/filter-icons/star-outline.svg?v=18dh')!important}
.epx-icon-device:before,.epy-quick-home .epy-filter-icon-device:before{background-image:url('/Plugins/Misc.Epiyum/Content/images/filter-icons/device.svg?v=18dh')!important}
.epx-icon-people:before,.epy-quick-home .epy-filter-icon-people:before{background-image:url('/Plugins/Misc.Epiyum/Content/images/filter-icons/gender.svg?v=18dh')!important}
.epx-icon-down:before,.epy-quick-home .epy-price-low>span:before{background-image:url('/Plugins/Misc.Epiyum/Content/images/filter-icons/down.svg?v=18dh')!important}
.epx-icon-up:before,.epy-quick-home .epy-price-high>span:before{background-image:url('/Plugins/Misc.Epiyum/Content/images/filter-icons/up.svg?v=18dh')!important}
.epx-icon-specialist:before,.epy-quick-home .epy-filter-icon-specialist:before{background-image:url('/Plugins/Misc.Epiyum/Content/images/filter-icons/specialist.svg?v=18dh')!important}
.epx-icon-male:before,.epy-quick-home .epy-filter-icon-male:before{background-image:url('/Plugins/Misc.Epiyum/Content/images/filter-icons/male.svg?v=18dh')!important}
.epx-icon-sliders:before{background-image:url('/Plugins/Misc.Epiyum/Content/images/filter-icons/sliders.svg?v=18dh')!important}
.epx-icon-search:before,.epy-quick-home .epy-filter-icon-search:before{background-image:url('/Plugins/Misc.Epiyum/Content/images/filter-icons/search.svg?v=18dh')!important}
.epy-quick-home .epy-quick-tile>span[class*="epy-filter-icon"],.epy-quick-home .epy-quick-price>span{background:var(--epx-icon-bg)!important;color:transparent!important;border-radius:18px!important;box-shadow:none!important}.epy-quick-home .epy-quick-price>span{font-size:0!important}.epy-quick-home .epy-quick-price>span:before{margin:auto!important}
.epx-filter-card>.epx-icon:before{width:50px!important;height:50px!important}.epx-quick-strip .epx-icon-device:before{width:36px!important;height:36px!important}.epx-filter-card>.epx-icon-device:before{width:54px!important;height:54px!important}.epx-filter-card>.epx-icon-people:before,.epy-quick-home .epy-filter-icon-people:before{width:56px!important;height:56px!important}.epx-filter-card>.epx-icon-specialist:before{width:54px!important;height:54px!important}.epx-filter-card>.epx-icon-male:before{width:52px!important;height:52px!important}
.epx-filter-card>.epx-icon-calendar:before,.epy-quick-home .epy-filter-icon-calendar:before{width:52px!important;height:52px!important}.epx-filter-card>.epx-icon-location:before,.epy-quick-home .epy-filter-icon-location:before{width:54px!important;height:54px!important}.epx-filter-card>.epx-icon-down:before,.epx-filter-card>.epx-icon-up:before,.epy-quick-home .epy-price-low>span:before,.epy-quick-home .epy-price-high>span:before{width:54px!important;height:54px!important}.epx-filter-card>.epx-icon-star:before,.epy-quick-home .epy-filter-icon-rating:before{width:50px!important;height:50px!important}
.epx-submit .epx-icon{background:transparent!important}.epx-submit .epx-icon:before{background-image:url('/Plugins/Misc.Epiyum/Content/images/filter-icons/search.svg?v=18dh')!important;filter:brightness(0) invert(1);width:34px!important;height:34px!important}
@media(max-width:720px){.epx-filter-card>.epx-icon:before{width:40px!important;height:40px!important}.epx-filter-card>.epx-icon-device:before,.epx-filter-card>.epx-icon-people:before,.epx-filter-card>.epx-icon-specialist:before,.epx-filter-card>.epx-icon-calendar:before,.epx-filter-card>.epx-icon-location:before,.epx-filter-card>.epx-icon-down:before,.epx-filter-card>.epx-icon-up:before,.epx-filter-card>.epx-icon-male:before{width:42px!important;height:42px!important}.epx-filter-card>.epx-icon-star:before{width:40px!important;height:40px!important}}


/* CHECKPOINT 18DI: restore filter layout, keep only reference-style icons */
.epy-quick-home .epy-quick-tile>span[class*="epy-filter-icon"],
.epy-quick-home .epy-quick-price>span,
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-tile>span[class*="epy-filter-icon"],
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-price>span{
  display:grid!important;place-items:center!important;flex:0 0 auto!important;width:58px!important;height:58px!important;border-radius:18px!important;background:#fbecfb!important;color:transparent!important;font-size:0!important;line-height:0!important;overflow:visible!important;box-shadow:none!important;
}
.epy-quick-home .epy-filter-icon-search:before,
.epy-quick-home .epy-filter-icon-calendar:before,
.epy-quick-home .epy-filter-icon-location:before,
.epy-quick-home .epy-filter-icon-people:before,
.epy-quick-home .epy-filter-icon-device:before,
.epy-quick-home .epy-filter-icon-rating:before,
.epy-quick-home .epy-filter-icon-specialist:before,
.epy-quick-home .epy-filter-icon-male:before,
.epy-quick-home .epy-price-low>span:before,
.epy-quick-home .epy-price-high>span:before,
.ep-ref-salons-page .epy-filter-icon-search:before,
.ep-ref-salons-page .epy-filter-icon-calendar:before,
.ep-ref-salons-page .epy-filter-icon-location:before,
.ep-ref-salons-page .epy-filter-icon-people:before,
.ep-ref-salons-page .epy-filter-icon-device:before,
.ep-ref-salons-page .epy-filter-icon-rating:before,
.ep-ref-salons-page .epy-filter-icon-specialist:before,
.ep-ref-salons-page .epy-filter-icon-male:before,
.ep-ref-salons-page .epy-price-low>span:before,
.ep-ref-salons-page .epy-price-high>span:before{
  content:""!important;display:block!important;width:46px!important;height:46px!important;background-color:transparent!important;background-position:center!important;background-repeat:no-repeat!important;background-size:contain!important;-webkit-mask:none!important;mask:none!important;margin:auto!important;filter:none!important;
}
.epy-quick-home .epy-filter-icon-search:before,.ep-ref-salons-page .epy-filter-icon-search:before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%0A%20%20%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%2218%22%20y1%3D%2214%22%20x2%3D%2280%22%20y2%3D%2284%22%3E%3Cstop%20stop-color%3D%22%23f238bd%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%236e20d8%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%0A%20%20%3Ccircle%20cx%3D%2242%22%20cy%3D%2242%22%20r%3D%2224%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%228%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M60%2060%2079%2079%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%229%22%20stroke-linecap%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E")!important}
.epy-quick-home .epy-filter-icon-calendar:before,.ep-ref-salons-page .epy-filter-icon-calendar:before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%0A%20%20%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%2218%22%20y1%3D%2214%22%20x2%3D%2278%22%20y2%3D%2282%22%3E%3Cstop%20stop-color%3D%22%23ff37af%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%237223d7%22%2F%3E%3C%2FlinearGradient%3E%3Cfilter%20id%3D%22s%22%20x%3D%22-25%25%22%20y%3D%22-25%25%22%20width%3D%22150%25%22%20height%3D%22150%25%22%3E%3CfeDropShadow%20dx%3D%220%22%20dy%3D%227%22%20stdDeviation%3D%227%22%20flood-color%3D%22%23a41ac4%22%20flood-opacity%3D%22.16%22%2F%3E%3C%2Ffilter%3E%3C%2Fdefs%3E%0A%20%20%3Crect%20x%3D%2219%22%20y%3D%2224%22%20width%3D%2258%22%20height%3D%2254%22%20rx%3D%2210%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%227%22%20filter%3D%22url%28%23s%29%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M30%2016v17M66%2016v17M22%2040h52%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%227%22%20stroke-linecap%3D%22round%22%2F%3E%0A%20%20%3Crect%20x%3D%2231%22%20y%3D%2250%22%20width%3D%229%22%20height%3D%229%22%20rx%3D%222%22%20fill%3D%22url%28%23g%29%22%2F%3E%3Crect%20x%3D%2244%22%20y%3D%2250%22%20width%3D%229%22%20height%3D%229%22%20rx%3D%222%22%20fill%3D%22url%28%23g%29%22%2F%3E%3Crect%20x%3D%2257%22%20y%3D%2250%22%20width%3D%229%22%20height%3D%229%22%20rx%3D%222%22%20fill%3D%22url%28%23g%29%22%2F%3E%0A%20%20%3Crect%20x%3D%2231%22%20y%3D%2263%22%20width%3D%229%22%20height%3D%229%22%20rx%3D%222%22%20fill%3D%22url%28%23g%29%22%2F%3E%3Crect%20x%3D%2244%22%20y%3D%2263%22%20width%3D%229%22%20height%3D%229%22%20rx%3D%222%22%20fill%3D%22url%28%23g%29%22%2F%3E%0A%3C%2Fsvg%3E")!important}
.epy-quick-home .epy-filter-icon-location:before,.ep-ref-salons-page .epy-filter-icon-location:before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%0A%20%20%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%2222%22%20y1%3D%2214%22%20x2%3D%2274%22%20y2%3D%2288%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20stop-color%3D%22%23ff39b7%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%236e20d8%22%2F%3E%3C%2FlinearGradient%3E%3Cfilter%20id%3D%22s%22%20x%3D%22-30%25%22%20y%3D%22-30%25%22%20width%3D%22160%25%22%20height%3D%22160%25%22%3E%3CfeDropShadow%20dx%3D%220%22%20dy%3D%227%22%20stdDeviation%3D%227%22%20flood-color%3D%22%238b1ec4%22%20flood-opacity%3D%22.18%22%2F%3E%3C%2Ffilter%3E%3C%2Fdefs%3E%0A%20%20%3Cpath%20filter%3D%22url%28%23s%29%22%20d%3D%22M48%2089S22%2064%2022%2039.5C22%2024.4%2033.7%2013%2048%2013s26%2011.4%2026%2026.5C74%2064%2048%2089%2048%2089Z%22%20fill%3D%22url%28%23g%29%22%2F%3E%0A%20%20%3Ccircle%20cx%3D%2248%22%20cy%3D%2239.5%22%20r%3D%2210.5%22%20fill%3D%22%23fff%22%20opacity%3D%22.96%22%2F%3E%0A%3C%2Fsvg%3E")!important}
.epy-quick-home .epy-filter-icon-people:before,.ep-ref-salons-page .epy-filter-icon-people:before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%0A%20%20%3Cdefs%3E%3ClinearGradient%20id%3D%22f%22%20x1%3D%2216%22%20y1%3D%2214%22%20x2%3D%2248%22%20y2%3D%2280%22%3E%3Cstop%20stop-color%3D%22%23ff56be%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23d91da4%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22m%22%20x1%3D%2250%22%20y1%3D%2214%22%20x2%3D%2282%22%20y2%3D%2280%22%3E%3Cstop%20stop-color%3D%22%2362b7ff%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%231787dc%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%0A%20%20%3Ccircle%20cx%3D%2232%22%20cy%3D%2224%22%20r%3D%2210%22%20fill%3D%22url%28%23f%29%22%2F%3E%3Cpath%20d%3D%22M18%2084h28l-5-31h8L39%2036H25L15%2053h8Z%22%20fill%3D%22url%28%23f%29%22%2F%3E%0A%20%20%3Crect%20x%3D%2247%22%20y%3D%2228%22%20width%3D%224%22%20height%3D%2250%22%20rx%3D%222%22%20fill%3D%22%23cfd7e8%22%2F%3E%0A%20%20%3Ccircle%20cx%3D%2266%22%20cy%3D%2224%22%20r%3D%2210%22%20fill%3D%22url%28%23m%29%22%2F%3E%3Cpath%20d%3D%22M52%2038c0-4%203-7%207-7h14c4%200%207%203%207%207v21h-9v25h-10V59h-9Z%22%20fill%3D%22url%28%23m%29%22%2F%3E%0A%3C%2Fsvg%3E")!important;width:52px!important;height:52px!important}
.epy-quick-home .epy-filter-icon-device:before,.ep-ref-salons-page .epy-filter-icon-device:before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%0A%20%20%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%2218%22%20y1%3D%2212%22%20x2%3D%2279%22%20y2%3D%2286%22%3E%3Cstop%20stop-color%3D%22%23f238b9%22%2F%3E%3Cstop%20offset%3D%22.55%22%20stop-color%3D%22%238d26d5%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%232b174b%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22screen%22%20x1%3D%2231%22%20y1%3D%2220%22%20x2%3D%2264%22%20y2%3D%2243%22%3E%3Cstop%20stop-color%3D%22%236831dc%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%2322153d%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%0A%20%20%3Crect%20x%3D%2224%22%20y%3D%2218%22%20width%3D%2248%22%20height%3D%2262%22%20rx%3D%229%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%226%22%2F%3E%0A%20%20%3Crect%20x%3D%2232%22%20y%3D%2227%22%20width%3D%2232%22%20height%3D%2221%22%20rx%3D%224%22%20fill%3D%22url%28%23screen%29%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M34%2059h28M38%2069h20M28%2082h40%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%226%22%20stroke-linecap%3D%22round%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M71%2036h8c2.8%200%205%202.2%205%205v24c0%203-2.4%205.4-5.4%205.4S73.2%2068%2073.2%2065V51%22%20fill%3D%22none%22%20stroke%3D%22%232b174b%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E")!important;width:50px!important;height:50px!important}
.epy-quick-home .epy-filter-icon-rating:before,.ep-ref-salons-page .epy-filter-icon-rating:before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%0A%20%20%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%2218%22%20y1%3D%2211%22%20x2%3D%2279%22%20y2%3D%2286%22%3E%3Cstop%20stop-color%3D%22%23e735c7%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%236e20d8%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%0A%20%20%3Cpath%20d%3D%22m48%2012%2010.8%2022%2024.3%203.5-17.6%2017.1%204.2%2024.2L48%2067.4%2026.3%2078.8l4.2-24.2-17.6-17.1L37.2%2034Z%22%20fill%3D%22url%28%23g%29%22%2F%3E%0A%3C%2Fsvg%3E")!important}
.epy-quick-home .epy-filter-icon-specialist:before,.ep-ref-salons-page .epy-filter-icon-specialist:before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%0A%20%20%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%2218%22%20y1%3D%2212%22%20x2%3D%2278%22%20y2%3D%2286%22%3E%3Cstop%20stop-color%3D%22%23d833c7%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%236e20d8%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%0A%20%20%3Ccircle%20cx%3D%2248%22%20cy%3D%2227%22%20r%3D%2215%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%227%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M19%2082c2.8-22%2013.5-34%2029-34s26.2%2012%2029%2034Z%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%227%22%20stroke-linejoin%3D%22round%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M48%2058v17M39.5%2066.5h17%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%227%22%20stroke-linecap%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E")!important;width:50px!important;height:50px!important}
.epy-quick-home .epy-filter-icon-male:before,.ep-ref-salons-page .epy-filter-icon-male:before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%0A%20%20%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%2216%22%20y1%3D%2212%22%20x2%3D%2280%22%20y2%3D%2286%22%3E%3Cstop%20stop-color%3D%22%23d833c7%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%236e20d8%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%0A%20%20%3Ccircle%20cx%3D%2239%22%20cy%3D%2257%22%20r%3D%2221%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%228%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M54%2042%2077%2019M61%2019h16v16%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%228%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E")!important}
.epy-quick-home .epy-price-low>span:before,.ep-ref-salons-page .epy-price-low>span:before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%0A%20%20%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%2222%22%20y1%3D%2212%22%20x2%3D%2273%22%20y2%3D%2286%22%3E%3Cstop%20stop-color%3D%22%23dd34c6%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%236e20d8%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%0A%20%20%3Cpath%20d%3D%22M48%2014v60%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%2210%22%20stroke-linecap%3D%22round%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M24%2051%2048%2075l24-24%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%2210%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E")!important}
.epy-quick-home .epy-price-high>span:before,.ep-ref-salons-page .epy-price-high>span:before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2096%2096%22%3E%0A%20%20%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%2222%22%20y1%3D%2212%22%20x2%3D%2273%22%20y2%3D%2286%22%3E%3Cstop%20stop-color%3D%22%23dd34c6%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%236e20d8%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%0A%20%20%3Cpath%20d%3D%22M48%2082V22%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%2210%22%20stroke-linecap%3D%22round%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M24%2045%2048%2021l24%2024%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%2210%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E")!important}
.epy-quick-home .epy-home-query-field>.epy-filter-icon-search,
.ep-ref-salons-page .ep-ref-mini-search>.epy-filter-icon-search{width:52px!important;height:52px!important;border-radius:17px!important;background:#fbecfb!important;display:grid!important;place-items:center!important}
.epy-quick-home .epy-home-query-field>.epy-filter-icon-search:before,
.ep-ref-salons-page .ep-ref-mini-search>.epy-filter-icon-search:before{width:42px!important;height:42px!important}
.epy-quick-home .epy-quick-tile,
.epy-quick-home .epy-quick-price{grid-template-columns:58px minmax(0,1fr)!important;column-gap:14px!important;overflow:visible!important}
.epy-quick-home .epy-quick-tile b,
.epy-quick-home .epy-quick-price b,
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-tile b,
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-price b{word-break:normal!important;overflow-wrap:normal!important;white-space:normal!important}
.ep-ref-salons-page .ep-ref-salons-filter-shell{max-width:1120px!important;margin:24px auto 24px!important;padding:26px!important;border-radius:28px!important;background:linear-gradient(180deg,#fff,#fffafd)!important;border:1px solid #f1dff3!important;box-shadow:0 14px 38px rgba(85,30,103,.05)!important}
.ep-ref-salons-page .ep-ref-salon-filter-hub{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;align-items:stretch!important}
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-tile,
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-price{display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;gap:8px 14px!important;min-height:116px!important;padding:16px!important;border-radius:20px!important;align-items:center!important;overflow:visible!important}
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-submit{grid-column:1/-1!important;min-height:62px!important;border-radius:18px!important}
.ep-ref-salons-page .ep-ref-location-banner{margin:0 0 16px!important}
@media(max-width:980px){
  .ep-ref-salons-page .ep-ref-salon-filter-hub{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ep-ref-salons-page .ep-ref-salons-filter-shell{padding:20px!important}
}
@media(max-width:640px){
  .epy-quick-home .epy-quick-filter,.ep-ref-salons-page .ep-ref-salon-filter-hub{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .epy-quick-home .epy-quick-tile,.epy-quick-home .epy-quick-price,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-tile,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-price{grid-template-columns:48px minmax(0,1fr)!important;min-height:92px!important;padding:12px!important;column-gap:10px!important;border-radius:18px!important}
  .epy-quick-home .epy-quick-tile>span[class*="epy-filter-icon"],.epy-quick-home .epy-quick-price>span,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-tile>span[class*="epy-filter-icon"],
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-price>span{width:46px!important;height:46px!important;border-radius:15px!important}
  .epy-quick-home .epy-filter-icon-search:before,.epy-quick-home .epy-filter-icon-calendar:before,.epy-quick-home .epy-filter-icon-location:before,.epy-quick-home .epy-filter-icon-people:before,.epy-quick-home .epy-filter-icon-device:before,.epy-quick-home .epy-filter-icon-rating:before,.epy-quick-home .epy-filter-icon-specialist:before,.epy-quick-home .epy-filter-icon-male:before,.epy-quick-home .epy-price-low>span:before,.epy-quick-home .epy-price-high>span:before,
  .ep-ref-salons-page .epy-filter-icon-search:before,.ep-ref-salons-page .epy-filter-icon-calendar:before,.ep-ref-salons-page .epy-filter-icon-location:before,.ep-ref-salons-page .epy-filter-icon-people:before,.ep-ref-salons-page .epy-filter-icon-device:before,.ep-ref-salons-page .epy-filter-icon-rating:before,.ep-ref-salons-page .epy-filter-icon-specialist:before,.ep-ref-salons-page .epy-filter-icon-male:before,.ep-ref-salons-page .epy-price-low>span:before,.ep-ref-salons-page .epy-price-high>span:before{width:36px!important;height:36px!important}
  .epy-quick-home .epy-quick-tile b,.epy-quick-home .epy-quick-price b,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-tile b,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-price b{font-size:.92rem!important;line-height:1.08!important}
  .epy-quick-home .epy-quick-tile small,.epy-quick-home .epy-quick-price small,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-tile small,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-price small{font-size:.7rem!important;line-height:1.16!important}
}
@media(max-width:420px){
  .epy-quick-home .epy-quick-filter,.ep-ref-salons-page .ep-ref-salon-filter-hub{grid-template-columns:1fr!important}
}

/* CHECKPOINT 18DJ: final hard reset for home/salons filter layout, inline SVG icons, date input and placeholder fitting. */
.epy-choice-control,
.epy-quick-filter > select.epy-choice-control,
.ep-ref-salon-filter-hub > select.epy-choice-control{display:none!important;position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.epy-quick-filter input[type="hidden"],.ep-ref-salon-filter-hub input[type="hidden"]{display:none!important}
.epy-quick-home .epy-quick-search-card{width:min(1180px,calc(100% - 32px))!important;margin:28px auto 36px!important;padding:46px 48px 36px!important;border:1px solid #efd9f1!important;border-radius:30px!important;background:linear-gradient(180deg,#fff,#fffafd)!important;box-shadow:0 18px 54px rgba(64,20,82,.055)!important;overflow:visible!important}
.epy-quick-home .epy-quick-intro{text-align:center!important;max-width:920px!important;margin:0 auto 34px!important}.epy-quick-home .epy-quick-intro h1{margin:10px 0 18px!important;font-size:clamp(3.1rem,7vw,6.2rem)!important;line-height:.92!important;letter-spacing:-.07em!important}.epy-quick-home .epy-quick-intro p{max-width:720px!important;margin:0 auto!important;line-height:1.45!important}
.epy-quick-home .epy-quick-filter{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important;width:100%!important;max-width:none!important;margin:0!important;overflow:visible!important}.epy-home-query-field{grid-column:1/-1!important;display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;gap:14px!important;align-items:center!important;min-height:82px!important;border:1px solid #ead7ee!important;border-radius:20px!important;background:#fff!important;padding:14px 18px!important;overflow:visible!important}.epy-home-query-field input{position:relative!important;opacity:1!important;inset:auto!important;grid-column:2!important;width:100%!important;height:34px!important;min-width:0!important;border:0!important;background:transparent!important;padding:0!important;color:#1b1031!important;-webkit-text-fill-color:#1b1031!important;font-size:1rem!important;font-weight:950!important}.epy-home-query-field small{grid-column:2!important;color:#756680!important;font-weight:800!important}.epy-quick-submit{grid-column:1/-1!important;min-height:64px!important;border-radius:18px!important;font-size:1.22rem!important}.epy-quick-home .epy-quick-tile,.epy-quick-home .epy-quick-price,.ep-ref-salons-page .epy-quick-tile,.ep-ref-salons-page .epy-quick-price{position:relative!important;display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;gap:8px 16px!important;align-items:center!important;min-height:128px!important;border:1px solid #ead7ee!important;border-radius:20px!important;background:#fff!important;padding:18px!important;color:#1b1031!important;overflow:visible!important;box-shadow:0 10px 30px rgba(62,20,82,.035)!important}.epy-quick-home .epy-quick-tile b,.epy-quick-home .epy-quick-price b,.ep-ref-salons-page .epy-quick-tile b,.ep-ref-salons-page .epy-quick-price b{display:block!important;color:#1b1031!important;font-size:1.08rem!important;line-height:1.12!important;font-weight:950!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important}.epy-quick-home .epy-quick-tile small,.epy-quick-home .epy-quick-price small,.ep-ref-salons-page .epy-quick-tile small,.ep-ref-salons-page .epy-quick-price small{display:block!important;margin-top:5px!important;color:#746680!important;font-size:.82rem!important;line-height:1.25!important;font-weight:780!important;white-space:normal!important;word-break:normal!important}.epy-quick-home .epy-quick-tile>span[class*="epy-filter-icon"],.epy-quick-home .epy-quick-price>span[class*="epy-filter-icon"],.epy-home-query-field>.epy-filter-icon-search,.ep-ref-salons-page .epy-quick-tile>span[class*="epy-filter-icon"],.ep-ref-salons-page .epy-quick-price>span[class*="epy-filter-icon"],.ep-ref-salons-page .ep-ref-mini-search>.epy-filter-icon-search,.ep-ref-salons-page .ep-ref-location-banner>span[class*="epy-filter-icon"]{display:grid!important;place-items:center!important;width:58px!important;height:58px!important;border-radius:18px!important;background:#fae9fb!important;color:#d93abd!important;font-size:0!important;line-height:0!important;overflow:hidden!important;grid-row:1/3!important}.epy-quick-home .epy-quick-tile>span[class*="epy-filter-icon"]:before,.epy-quick-home .epy-quick-price>span[class*="epy-filter-icon"]:before,.epy-home-query-field>.epy-filter-icon-search:before,.ep-ref-salons-page .epy-quick-tile>span[class*="epy-filter-icon"]:before,.ep-ref-salons-page .epy-quick-price>span[class*="epy-filter-icon"]:before,.ep-ref-salons-page .ep-ref-mini-search>.epy-filter-icon-search:before,.ep-ref-salons-page .ep-ref-location-banner>span[class*="epy-filter-icon"]:before{content:none!important;display:none!important}.epy-quick-home svg,.ep-ref-salons-page svg{display:block!important;width:42px!important;height:42px!important;max-width:42px!important;max-height:42px!important;overflow:visible!important}.epy-quick-home .epy-quick-price.active,.ep-ref-salons-page .epy-quick-price.active{border-color:#d50de2!important;background:linear-gradient(135deg,#fff,#fff5ff)!important}.epy-quick-home .epy-quick-price.active:after,.ep-ref-salons-page .epy-quick-price.active:after{content:"✓"!important;position:absolute!important;right:14px!important;top:14px!important;display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border-radius:50%!important;background:linear-gradient(135deg,#d40bd4,#7e12bd)!important;color:#fff!important;font-size:18px!important;font-weight:950!important;box-shadow:0 8px 20px rgba(151,16,185,.25)!important}.epy-quick-date-tile input[type="date"]{display:block!important;position:relative!important;opacity:1!important;inset:auto!important;grid-column:2!important;width:100%!important;min-width:0!important;height:40px!important;border:1px solid #ead7ee!important;border-radius:12px!important;background:#fff!important;color:#1b1031!important;-webkit-text-fill-color:#1b1031!important;padding:0 12px!important;font-size:1rem!important;font-weight:900!important;z-index:2!important;pointer-events:auto!important}.epy-quick-toggle input[type="checkbox"],.epy-quick-price input[type="radio"]{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}.ep-ref-salons-page .ep-ref-salons-filter-shell{width:min(1180px,calc(100% - 32px))!important;margin:28px auto 26px!important;padding:28px!important;border:1px solid #efd9f1!important;border-radius:28px!important;background:linear-gradient(180deg,#fff,#fffafd)!important;box-shadow:0 18px 54px rgba(64,20,82,.055)!important;overflow:visible!important}.ep-ref-salons-page .ep-ref-mini-search{grid-column:1/-1!important;display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;gap:14px!important;align-items:center!important;min-height:78px!important;border:1px solid #ead7ee!important;border-radius:20px!important;background:#fff!important;padding:13px 18px!important;overflow:visible!important}.ep-ref-salons-page .ep-ref-mini-search input{position:relative!important;opacity:1!important;inset:auto!important;grid-column:2!important;width:100%!important;border:0!important;background:transparent!important;color:#1b1031!important;-webkit-text-fill-color:#1b1031!important;font-size:1rem!important;font-weight:950!important}.ep-ref-salons-page .ep-ref-location-banner{display:grid!important;grid-template-columns:58px minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important;margin:16px 0!important;padding:14px 18px!important;border:1px solid #ead7ee!important;border-radius:18px!important;background:#fff!important;overflow:visible!important}.ep-ref-salons-page .ep-ref-location-banner button{min-height:48px!important;border:1px solid #ecb9ef!important;border-radius:14px!important;background:#fff!important;color:#a50fb8!important;padding:0 20px!important;font-size:1rem!important;font-weight:950!important}.ep-ref-salons-page .ep-ref-salon-filter-hub{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;align-items:stretch!important}.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-submit{grid-column:1/-1!important}.salon-photo-wrap img[src*="salon-placeholder"],.salon-photo-wrap img[src*="salon-placeholder-logo"],.epy-home-salon-card img[src*="salon-placeholder"],.epy-home-salon-card img[src*="salon-placeholder-logo"]{object-fit:contain!important;padding:18px!important;background:linear-gradient(135deg,#fff,#faf6fb)!important}
@media(max-width:980px){.epy-quick-home .epy-quick-filter,.ep-ref-salons-page .ep-ref-salon-filter-hub{grid-template-columns:repeat(2,minmax(0,1fr))!important}.epy-quick-home .epy-quick-search-card,.ep-ref-salons-page .ep-ref-salons-filter-shell{padding:26px!important}}
@media(max-width:560px){.epy-quick-home .epy-quick-search-card,.ep-ref-salons-page .ep-ref-salons-filter-shell{width:calc(100% - 24px)!important;padding:18px!important;border-radius:22px!important}.epy-quick-home .epy-quick-intro{text-align:left!important;margin-bottom:22px!important}.epy-quick-home .epy-quick-intro h1{font-size:2.45rem!important;line-height:.98!important}.epy-quick-home .epy-quick-filter,.ep-ref-salons-page .ep-ref-salon-filter-hub{grid-template-columns:1fr!important;gap:12px!important}.epy-home-query-field,.ep-ref-salons-page .ep-ref-mini-search{grid-template-columns:58px minmax(0,1fr)!important;min-height:76px!important}.epy-quick-home .epy-quick-tile,.epy-quick-home .epy-quick-price,.ep-ref-salons-page .epy-quick-tile,.ep-ref-salons-page .epy-quick-price{grid-template-columns:58px minmax(0,1fr)!important;min-height:96px!important;padding:14px!important}.epy-quick-date-tile input[type="date"]{grid-column:2!important;height:38px!important}.ep-ref-salons-page .ep-ref-location-banner{grid-template-columns:58px minmax(0,1fr)!important}.ep-ref-salons-page .ep-ref-location-banner button{grid-column:1/-1!important;width:100%!important}.epy-quick-submit{min-height:58px!important;font-size:1.05rem!important}.epy-quick-home svg,.ep-ref-salons-page svg{width:38px!important;height:38px!important;max-width:38px!important;max-height:38px!important}}

/* CHECKPOINT 18DK: final layout repair. This block intentionally sits last. */
.epy-quick-filter>select.epy-choice-control,
.epy-quick-filter>input[type="hidden"],
.epy-quick-filter>input[hidden],
.epy-quick-filter>input[data-epy-specialist-hidden],
.ep-ref-salon-filter-hub>select.epy-choice-control,
.ep-ref-salon-filter-hub>input[type="hidden"],
.ep-ref-salon-filter-hub>input[hidden],
.ep-ref-salon-filter-hub>input[data-epy-specialist-hidden]{display:none!important;position:fixed!important;left:-10000px!important;top:auto!important;width:0!important;min-width:0!important;max-width:0!important;height:0!important;min-height:0!important;max-height:0!important;padding:0!important;margin:0!important;border:0!important;opacity:0!important;overflow:hidden!important;grid-column:auto!important;grid-row:auto!important;pointer-events:none!important}

.epy-quick-home .epy-quick-search-card,
.ep-ref-salons-page .ep-ref-salons-filter-shell{box-sizing:border-box!important;overflow:visible!important;max-width:1180px!important;width:min(1180px,calc(100% - 32px))!important;margin-left:auto!important;margin-right:auto!important;border:1px solid #ead7ee!important;border-radius:30px!important;background:linear-gradient(180deg,#fff,#fffafd)!important;box-shadow:0 18px 54px rgba(64,20,82,.055)!important}
.epy-quick-home .epy-quick-search-card{padding:42px 46px 36px!important}.ep-ref-salons-page .ep-ref-salons-filter-shell{padding:28px!important}
.epy-quick-home .epy-quick-intro{text-align:center!important;max-width:920px!important;margin:0 auto 32px!important}.epy-quick-home .epy-quick-intro h1{font-size:clamp(3rem,6vw,5.8rem)!important;line-height:.92!important;letter-spacing:-.065em!important;margin:10px 0 18px!important}.epy-quick-home .epy-quick-intro p{max-width:720px!important;margin:0 auto!important;line-height:1.45!important;color:#6e6279!important}

.epy-quick-home .epy-quick-filter,
.ep-ref-salons-page .ep-ref-salon-filter-hub{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;align-items:stretch!important;width:100%!important;max-width:none!important;margin:0!important;overflow:visible!important;clear:both!important}
.epy-home-query-field,
.ep-ref-salons-page .ep-ref-mini-search{grid-column:1/-1!important;display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;gap:14px!important;align-items:center!important;min-height:82px!important;padding:13px 18px!important;border:1px solid #ead7ee!important;border-radius:20px!important;background:#fff!important;box-shadow:0 10px 26px rgba(62,20,82,.03)!important;overflow:visible!important;box-sizing:border-box!important}
.epy-home-query-field input,
.ep-ref-salons-page .ep-ref-mini-search input{display:block!important;position:relative!important;inset:auto!important;grid-column:2!important;width:100%!important;min-width:0!important;max-width:100%!important;height:34px!important;min-height:34px!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;color:#1b1031!important;-webkit-text-fill-color:#1b1031!important;font-size:1rem!important;font-weight:950!important;line-height:1.25!important;letter-spacing:0!important;writing-mode:horizontal-tb!important;word-break:normal!important;overflow-wrap:normal!important;opacity:1!important;pointer-events:auto!important}
.epy-home-query-field small{grid-column:2!important;color:#756680!important;font-size:.86rem!important;font-weight:800!important;line-height:1.25!important;writing-mode:horizontal-tb!important;word-break:normal!important}

.epy-quick-home .epy-quick-tile,
.epy-quick-home .epy-quick-price,
.ep-ref-salons-page .epy-quick-tile,
.ep-ref-salons-page .epy-quick-price{box-sizing:border-box!important;position:relative!important;display:grid!important;grid-template-columns:62px minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;gap:5px 16px!important;align-items:center!important;min-width:0!important;min-height:118px!important;padding:16px 18px!important;border:1px solid #ead7ee!important;border-radius:20px!important;background:#fff!important;color:#1b1031!important;text-align:left!important;box-shadow:0 10px 30px rgba(62,20,82,.035)!important;overflow:visible!important;isolation:isolate!important}
.epy-quick-home .epy-quick-tile:hover,
.epy-quick-home .epy-quick-price:hover,
.ep-ref-salons-page .epy-quick-tile:hover,
.ep-ref-salons-page .epy-quick-price:hover{border-color:#e4b8ec!important;background:linear-gradient(135deg,#fff,#fff9ff)!important}
.epy-quick-home .epy-quick-tile>b,
.epy-quick-home .epy-quick-price>b,
.ep-ref-salons-page .epy-quick-tile>b,
.ep-ref-salons-page .epy-quick-price>b{display:block!important;grid-column:2!important;grid-row:1!important;align-self:end!important;margin:0!important;color:#1b1031!important;font-size:1.03rem!important;line-height:1.1!important;font-weight:950!important;white-space:normal!important;writing-mode:horizontal-tb!important;word-break:normal!important;overflow-wrap:normal!important;z-index:2!important}
.epy-quick-home .epy-quick-tile>small,
.epy-quick-home .epy-quick-price>small,
.ep-ref-salons-page .epy-quick-tile>small,
.ep-ref-salons-page .epy-quick-price>small{display:block!important;grid-column:2!important;grid-row:2!important;align-self:start!important;margin:3px 0 0!important;color:#746680!important;font-size:.8rem!important;line-height:1.22!important;font-weight:780!important;white-space:normal!important;writing-mode:horizontal-tb!important;word-break:normal!important;overflow-wrap:normal!important;z-index:2!important}

.epy-home-query-field>[class*="epy-filter-icon"],
.ep-ref-salons-page .ep-ref-mini-search>[class*="epy-filter-icon"],
.ep-ref-salons-page .ep-ref-location-banner>[class*="epy-filter-icon"],
.epy-quick-home .epy-quick-tile>[class*="epy-filter-icon"],
.epy-quick-home .epy-quick-price>[class*="epy-filter-icon"],
.ep-ref-salons-page .epy-quick-tile>[class*="epy-filter-icon"],
.ep-ref-salons-page .epy-quick-price>[class*="epy-filter-icon"]{display:grid!important;grid-column:1!important;grid-row:1/4!important;place-items:center!important;align-self:center!important;justify-self:center!important;position:relative!important;width:56px!important;height:56px!important;min-width:56px!important;min-height:56px!important;border-radius:18px!important;background:#fae9fb!important;color:#df35b8!important;font-size:0!important;line-height:0!important;overflow:hidden!important;z-index:1!important}
.epy-home-query-field>[class*="epy-filter-icon"] svg,
.ep-ref-salons-page .ep-ref-mini-search>[class*="epy-filter-icon"] svg,
.ep-ref-salons-page .ep-ref-location-banner>[class*="epy-filter-icon"] svg,
.epy-quick-home .epy-quick-tile>[class*="epy-filter-icon"] svg,
.epy-quick-home .epy-quick-price>[class*="epy-filter-icon"] svg,
.ep-ref-salons-page .epy-quick-tile>[class*="epy-filter-icon"] svg,
.ep-ref-salons-page .epy-quick-price>[class*="epy-filter-icon"] svg{display:block!important;position:static!important;width:42px!important;height:42px!important;max-width:42px!important;max-height:42px!important;margin:0!important;transform:none!important;overflow:visible!important;z-index:2!important}
.epy-home-query-field>[class*="epy-filter-icon"]:before,
.ep-ref-salons-page .ep-ref-mini-search>[class*="epy-filter-icon"]:before,
.ep-ref-salons-page .ep-ref-location-banner>[class*="epy-filter-icon"]:before,
.epy-quick-home .epy-quick-tile>[class*="epy-filter-icon"]:before,
.epy-quick-home .epy-quick-price>[class*="epy-filter-icon"]:before,
.ep-ref-salons-page .epy-quick-tile>[class*="epy-filter-icon"]:before,
.ep-ref-salons-page .epy-quick-price>[class*="epy-filter-icon"]:before{content:none!important;display:none!important}

.epy-quick-date-tile input[type="date"]{display:block!important;position:relative!important;grid-column:2!important;grid-row:3!important;width:100%!important;min-width:0!important;max-width:150px!important;height:38px!important;min-height:38px!important;margin:7px 0 0!important;padding:0 11px!important;border:1px solid #ead7ee!important;border-radius:12px!important;background:#fff!important;color:#1b1031!important;-webkit-text-fill-color:#1b1031!important;font-size:.95rem!important;font-weight:900!important;line-height:1!important;opacity:1!important;pointer-events:auto!important;z-index:3!important}
.epy-quick-date-tile.filled small{color:#a10fb8!important;font-weight:950!important}
.epy-quick-price input[type="radio"],.epy-quick-toggle input[type="checkbox"]{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;margin:0!important;padding:0!important}
.epy-quick-home .epy-quick-price.active,
.ep-ref-salons-page .epy-quick-price.active{padding-right:56px!important;border-color:#d50de2!important;background:linear-gradient(135deg,#fff,#fff5ff)!important}.epy-quick-home .epy-quick-price.active:after,.ep-ref-salons-page .epy-quick-price.active:after{content:"✓"!important;position:absolute!important;right:13px!important;top:13px!important;display:grid!important;place-items:center!important;width:32px!important;height:32px!important;border-radius:50%!important;background:linear-gradient(135deg,#d40bd4,#7e12bd)!important;color:#fff!important;font-size:17px!important;font-weight:950!important;box-shadow:0 8px 20px rgba(151,16,185,.25)!important;z-index:5!important;pointer-events:none!important}

.ep-ref-salons-page .ep-ref-location-banner{display:grid!important;grid-template-columns:56px minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important;margin:16px 0!important;padding:14px 18px!important;border:1px solid #ead7ee!important;border-radius:18px!important;background:#fff!important;overflow:visible!important}.ep-ref-salons-page .ep-ref-location-banner b{display:block!important;font-size:1rem!important;line-height:1.2!important;font-weight:950!important;color:#1b1031!important}.ep-ref-salons-page .ep-ref-location-banner small{display:block!important;margin-top:2px!important;font-size:.8rem!important;line-height:1.25!important;color:#746680!important}.ep-ref-salons-page .ep-ref-location-banner button{min-height:46px!important;border:1px solid #ecb9ef!important;border-radius:14px!important;background:#fff!important;color:#a50fb8!important;padding:0 20px!important;font-size:1rem!important;font-weight:950!important;white-space:nowrap!important}

.salon-photo-wrap img[src*="salon-placeholder"],
.salon-photo-wrap img[src*="salon-placeholder-logo"],
.epy-home-salon-card img[src*="salon-placeholder"],
.epy-home-salon-card img[src*="salon-placeholder-logo"]{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;padding:22px!important;background:linear-gradient(135deg,#fff,#faf6fb)!important}.salon-photo-wrap:has(img[src*="salon-placeholder"]),.salon-photo-wrap:has(img[src*="salon-placeholder-logo"]){background:linear-gradient(135deg,#fff,#faf6fb)!important}

.epy-filter-is-tablet .epy-quick-filter,
.epy-filter-is-tablet .ep-ref-salon-filter-hub{grid-template-columns:repeat(2,minmax(0,1fr))!important}.epy-filter-is-phone .epy-quick-filter,
.epy-filter-is-phone .ep-ref-salon-filter-hub{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.epy-filter-is-phone .epy-home-query-field,
.epy-filter-is-phone .ep-ref-mini-search{grid-template-columns:50px minmax(0,1fr)!important;min-height:70px!important;padding:10px 12px!important}.epy-filter-is-phone .ep-ref-location-banner{grid-template-columns:50px minmax(0,1fr)!important}.epy-filter-is-phone .ep-ref-location-banner button{grid-column:1/-1!important;width:100%!important}.epy-filter-is-phone .epy-quick-tile,
.epy-filter-is-phone .epy-quick-price{grid-template-columns:50px minmax(0,1fr)!important;min-height:104px!important;padding:12px!important;border-radius:18px!important}.epy-filter-is-phone .epy-quick-tile>[class*="epy-filter-icon"],
.epy-filter-is-phone .epy-quick-price>[class*="epy-filter-icon"],
.epy-filter-is-phone .epy-home-query-field>[class*="epy-filter-icon"],
.epy-filter-is-phone .ep-ref-mini-search>[class*="epy-filter-icon"],
.epy-filter-is-phone .ep-ref-location-banner>[class*="epy-filter-icon"]{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;border-radius:16px!important}.epy-filter-is-phone .epy-quick-tile>[class*="epy-filter-icon"] svg,
.epy-filter-is-phone .epy-quick-price>[class*="epy-filter-icon"] svg,
.epy-filter-is-phone .epy-home-query-field>[class*="epy-filter-icon"] svg,
.epy-filter-is-phone .ep-ref-mini-search>[class*="epy-filter-icon"] svg,
.epy-filter-is-phone .ep-ref-location-banner>[class*="epy-filter-icon"] svg{width:34px!important;height:34px!important}.epy-filter-is-phone .epy-quick-tile>b,.epy-filter-is-phone .epy-quick-price>b{font-size:.9rem!important;line-height:1.08!important}.epy-filter-is-phone .epy-quick-tile>small,.epy-filter-is-phone .epy-quick-price>small{font-size:.68rem!important;line-height:1.16!important}.epy-filter-is-phone .epy-quick-date-tile input[type="date"]{height:34px!important;font-size:.82rem!important;max-width:120px!important;padding:0 8px!important}.epy-filter-is-phone .epy-quick-submit{grid-column:1/-1!important;min-height:56px!important;font-size:1rem!important;border-radius:16px!important}.epy-filter-is-phone .epy-quick-price.active{padding-right:44px!important}.epy-filter-is-phone .epy-quick-price.active:after{right:8px!important;top:8px!important;width:28px!important;height:28px!important;font-size:15px!important}
@media(max-width:760px){.epy-quick-home .epy-quick-search-card,.ep-ref-salons-page .ep-ref-salons-filter-shell{width:calc(100% - 20px)!important;padding:16px!important;border-radius:22px!important}.epy-quick-home .epy-quick-intro{text-align:left!important;margin-bottom:20px!important}.epy-quick-home .epy-quick-intro h1{font-size:2.2rem!important;line-height:.98!important}.epy-quick-home .epy-quick-intro p{font-size:.96rem!important}.epy-quick-home .epy-quick-filter,.ep-ref-salons-page .ep-ref-salon-filter-hub{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.epy-quick-home .epy-quick-submit,.ep-ref-salons-page .epy-quick-submit{grid-column:1/-1!important}}

/* CHECKPOINT 19A: mobile filter alignment, gallery polish, lightbox refresh, device modal cleanup */
.epy-quick-home .epy-quick-date-tile,
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-date-tile{display:grid!important;align-content:start!important}
.epy-quick-home .epy-quick-date-tile input,
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-date-tile input{margin-top:auto!important;display:block!important;width:100%!important;min-height:48px!important;padding:0 14px!important;border:1px solid #e6d5eb!important;border-radius:15px!important;background:#fff!important;color:#160b31!important;font-weight:900!important;box-shadow:none!important}
.ep-ref-salons-page .ep-ref-salon-filter-hub{grid-auto-flow:dense!important}

.epy-single-gallery-bottom{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}
.epy-single-gallery-bottom .epy-single-gallery-thumbs{margin:0!important;flex:1 1 320px}
.epy-single-gallery-count--inline{position:relative!important;right:auto!important;bottom:auto!important;display:inline-flex!important;align-self:center!important;flex:0 0 auto!important;white-space:nowrap}

.epy-lightbox-dialog{padding:84px 18px 34px!important;grid-template-columns:56px minmax(0,1fr) 56px!important}
.epy-lightbox-close{top:max(14px,env(safe-area-inset-top) + 8px)!important;right:16px!important;width:52px!important;height:52px!important;border:1px solid rgba(255,255,255,.35)!important;background:rgba(255,255,255,.16)!important;box-shadow:0 18px 38px rgba(0,0,0,.24)!important}
.epy-lightbox-nav{width:48px!important;height:48px!important;box-shadow:0 16px 32px rgba(0,0,0,.18)!important}
.epy-lightbox-caption{display:flex!important;flex-direction:column!important;gap:6px!important;padding:16px 8px 4px!important}
.epy-lightbox-caption span{font-weight:800!important}
.epy-lightbox-caption b{font-size:.95rem!important;color:#f2d9ff!important}

.epy-image-modal{position:fixed;inset:0;z-index:100120;display:grid;place-items:center;padding:20px}
.epy-image-modal[hidden]{display:none}
.epy-image-modal-backdrop{position:absolute;inset:0;background:rgba(18,8,25,.82);backdrop-filter:blur(10px)}
.epy-image-modal-dialog{position:relative;z-index:1;width:min(960px,100%);max-height:min(88vh,920px);padding:22px 22px 18px;border-radius:28px;background:rgba(255,255,255,.98);box-shadow:0 24px 64px rgba(22,10,32,.36);display:grid;gap:12px}
.epy-image-modal-dialog img{display:block;width:100%;max-height:70vh;object-fit:contain;border-radius:22px;background:#f9f2fa}
.epy-image-modal-dialog b{display:block;text-align:center;color:#211138;font-size:1rem;font-weight:950}
.epy-image-modal-close{position:absolute;right:14px;top:14px;display:grid;place-items:center;width:46px;height:46px;border:0;border-radius:50%;background:#fff;color:#27153e;font-size:1.55rem;box-shadow:0 16px 34px rgba(37,15,52,.18);cursor:pointer}

.epy-device-modal-thumbs button span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

@media(max-width:900px){
  .epy-single-gallery-bottom{align-items:stretch}
  .epy-single-gallery-count--inline{width:100%;justify-content:center}
}
@media(max-width:640px){
  .ep-ref-salons-page .master-wrapper-content,
  .ep-ref-salons-page .page-body,
  .ep-ref-salons-page .center-1{padding-left:0!important;padding-right:0!important}
  .ep-ref-salons-page .ep-ref-salons-filter-shell{margin:12px auto 18px!important;padding:14px 10px!important;border-radius:24px!important}
  .ep-ref-salons-page .ep-ref-location-banner{margin:0 2px 12px!important}
  .ep-ref-salons-page .ep-ref-salon-filter-hub{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-tile,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-price{min-height:106px!important;padding:12px!important}
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-date-tile input{min-height:42px!important;font-size:.94rem!important}
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-submit{min-height:58px!important}
  .epy-single-gallery-bottom{gap:10px!important}
  .epy-single-gallery-bottom .epy-single-gallery-thumbs{flex:1 1 100%!important;overflow-x:auto!important;padding-bottom:2px!important}
  .epy-single-gallery-thumb{flex:0 0 86px!important}
  .epy-single-gallery-count--inline{min-height:42px!important;padding:0 14px!important;font-size:.86rem!important}
  .epy-lightbox-dialog{padding:86px 12px 24px!important;grid-template-columns:44px minmax(0,1fr) 44px!important}
  .epy-lightbox-close{top:max(10px,env(safe-area-inset-top) + 4px)!important;right:12px!important;width:48px!important;height:48px!important}
  .epy-lightbox-image{max-height:calc(100vh - 170px)!important;border-radius:18px!important}
  .epy-image-modal{padding:10px!important}
  .epy-image-modal-dialog{padding:16px 16px 14px!important;border-radius:24px!important;width:min(100%,520px)!important}
  .epy-image-modal-dialog img{max-height:66vh!important;border-radius:18px!important}
}
@media(max-width:420px){
  .epy-quick-home .epy-quick-filter,
  .ep-ref-salons-page .ep-ref-salon-filter-hub{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:360px){
  .epy-quick-home .epy-quick-filter,
  .ep-ref-salons-page .ep-ref-salon-filter-hub{grid-template-columns:1fr!important}
}


/* CHECKPOINT 19B: requested final mobile spacing/date-field/lightbox close repair */
.epy-quick-home .epy-quick-date-tile input[type=date]{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:inherit!important;
  background:transparent!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  opacity:0!important;
  cursor:pointer!important;
  z-index:3!important;
}
.epy-quick-home .epy-quick-date-tile input[type=date]::-webkit-calendar-picker-indicator{
  opacity:0!important;
}
.epy-quick-home .epy-quick-date-tile small,
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-date-tile small{
  min-height:1.15em!important;
}
.epy-quick-home .epy-quick-date-tile.filled small,
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-date-tile.filled small{
  color:#1b1031!important;
  font-weight:950!important;
}

.epy-quick-price.active,
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-price.active{
  padding-right:42px!important;
}
.epy-quick-price.active:after,
.epy-quick-price.active::after,
.ep-ref-salon-filter-hub>.epy-quick-price.active:after,
.ep-ref-salon-filter-hub>.epy-quick-price.active::after{
  right:9px!important;
  top:9px!important;
  width:28px!important;
  height:28px!important;
  font-size:15px!important;
  z-index:4!important;
  pointer-events:none!important;
}

.epy-lightbox{
  z-index:2147483000!important;
}
.epy-lightbox-backdrop{
  cursor:pointer!important;
}
.epy-lightbox-close{
  z-index:2147483002!important;
}
@media(max-width:640px){
  .html-home-page .master-wrapper-content,
  .html-home-page .page-body,
  .html-home-page .center-1,
  .ep-ref-salons-page .master-wrapper-content,
  .ep-ref-salons-page .page-body,
  .ep-ref-salons-page .center-1{
    padding-left:0!important;
    padding-right:0!important;
  }

  .epy-quick-home{
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    padding-left:6px!important;
    padding-right:6px!important;
    overflow-x:hidden!important;
  }

  .epy-quick-home .epy-quick-search-card{
    width:calc(100vw - 12px)!important;
    max-width:calc(100vw - 12px)!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:8px!important;
    padding-right:8px!important;
    border-radius:22px!important;
  }

  .ep-ref-salons-page .es-container{
    width:100%!important;
    max-width:100%!important;
    padding-left:6px!important;
    padding-right:6px!important;
  }

  .ep-ref-salons-page .ep-ref-salons-filter-shell{
    width:calc(100vw - 12px)!important;
    max-width:calc(100vw - 12px)!important;
    margin-left:calc(50% - 50vw + 6px)!important;
    margin-right:0!important;
    padding-left:8px!important;
    padding-right:8px!important;
    border-radius:22px!important;
  }

  .epy-quick-home .epy-quick-filter,
  .ep-ref-salons-page .ep-ref-salon-filter-hub{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
  }

  .epy-quick-home .epy-quick-tile,
  .epy-quick-home .epy-quick-price,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-tile,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-price{
    min-width:0!important;
    min-height:116px!important;
    padding:12px 10px!important;
    grid-template-columns:48px minmax(0,1fr)!important;
    column-gap:10px!important;
  }

  .epy-quick-home .epy-quick-tile b,
  .epy-quick-home .epy-quick-price b,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-tile b,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-price b{
    font-size:.98rem!important;
    line-height:1.08!important;
  }

  .epy-quick-home .epy-quick-tile small,
  .epy-quick-home .epy-quick-price small,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-tile small,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-price small{
    font-size:.73rem!important;
    line-height:1.15!important;
  }

  .epy-quick-home .epy-quick-submit,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-submit{
    width:100%!important;
    min-height:60px!important;
    border-radius:18px!important;
  }

  .epy-lightbox{
    z-index:2147483000!important;
  }
  .epy-lightbox-dialog{
    padding-top:136px!important;
  }
  .epy-lightbox-close{
    top:calc(env(safe-area-inset-top,0px) + 84px)!important;
    right:18px!important;
    width:50px!important;
    height:50px!important;
    background:rgba(255,255,255,.22)!important;
    border:1px solid rgba(255,255,255,.42)!important;
    box-shadow:0 18px 42px rgba(0,0,0,.32)!important;
  }
}
@media(max-width:360px){
  .epy-quick-home .epy-quick-filter,
  .ep-ref-salons-page .ep-ref-salon-filter-hub{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .epy-quick-home .epy-quick-tile,
  .epy-quick-home .epy-quick-price,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-tile,
  .ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-price{
    min-height:112px!important;
    padding:10px 8px!important;
    grid-template-columns:44px minmax(0,1fr)!important;
    column-gap:8px!important;
  }
}

/* CHECKPOINT 19C: mobile premium salon cards polish */
@media (max-width: 767px) {
  .epy-quick-salons .epy-quick-salon-list,
  .ep-ref-salons-page #ep-ref-salon-list {
    gap: 14px !important;
  }

  .epy-quick-salons .salon-result-card--premium,
  .ep-ref-salons-page .salon-result-card--premium {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    padding: 14px !important;
    border: 1px solid #eedff1 !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, #ffffff 0%, #fffafd 100%) !important;
    box-shadow: 0 16px 38px rgba(61, 17, 76, 0.08) !important;
    overflow: hidden !important;
    align-items: stretch !important;
  }

  .epy-quick-salons .salon-photo-wrap,
  .ep-ref-salons-page .salon-photo-wrap {
    display: block !important;
    width: 100% !important;
    aspect-ratio: 16 / 10 !important;
    min-height: 180px !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #fff 0%, #fbf5fc 100%) !important;
    box-shadow: inset 0 0 0 1px #f2e5f3 !important;
  }

  .epy-quick-salons .salon-photo-wrap img,
  .ep-ref-salons-page .salon-photo-wrap img {
    width: 100% !important;
    height: 100% !important;
    min-height: 180px !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
  }

  .epy-quick-salons .salon-photo-wrap img[src*="salon-placeholder"],
  .epy-quick-salons .salon-photo-wrap img[src*="salon-placeholder-logo"],
  .ep-ref-salons-page .salon-photo-wrap img[src*="salon-placeholder"],
  .ep-ref-salons-page .salon-photo-wrap img[src*="salon-placeholder-logo"] {
    object-fit: contain !important;
    padding: 18px !important;
    background: linear-gradient(135deg, #fff 0%, #faf6fb 100%) !important;
  }

  .epy-quick-salons .salon-main,
  .ep-ref-salons-page .salon-main {
    min-width: 0 !important;
    padding-top: 14px !important;
  }

  .epy-quick-salons .ep-ref-card-badges,
  .ep-ref-salons-page .ep-ref-card-badges {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    margin-bottom: 10px !important;
  }

  .epy-quick-salons .salon-main h3,
  .ep-ref-salons-page .salon-main h3 {
    margin: 0 0 10px !important;
    font-size: 1.42rem !important;
    line-height: 1.08 !important;
    letter-spacing: -0.03em !important;
  }

  .epy-quick-salons .salon-main h3 a,
  .ep-ref-salons-page .salon-main h3 a {
    color: #1b1031 !important;
  }

  .epy-quick-salons .meta-row,
  .ep-ref-salons-page .meta-row {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin: 0 0 7px !important;
    font-size: 0.92rem !important;
    line-height: 1.35 !important;
    color: #6e617b !important;
  }

  .epy-quick-salons .meta-row b,
  .ep-ref-salons-page .meta-row b {
    color: #2f2142 !important;
    font-weight: 850 !important;
  }

  .epy-quick-salons .feature-list.premium,
  .ep-ref-salons-page .feature-list.premium {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 12px !important;
  }

  .epy-quick-salons .feature-list.premium span,
  .ep-ref-salons-page .feature-list.premium span {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 34px !important;
    padding: 0 12px !important;
    border: 1px solid #ead9ee !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #6f098c !important;
    font-size: 0.82rem !important;
    font-weight: 800 !important;
  }

  .epy-quick-salons .salon-side,
  .ep-ref-salons-page .salon-side {
    grid-column: auto !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    align-items: start !important;
    justify-items: start !important;
    margin-top: 16px !important;
    padding: 16px 0 0 !important;
    border-top: 1px solid #f0e1f2 !important;
    border-left: 0 !important;
    text-align: left !important;
  }

  .epy-quick-salons .salon-side small,
  .ep-ref-salons-page .salon-side small {
    margin: 0 !important;
    color: #7a6c86 !important;
    font-size: 0.84rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
  }

  .epy-quick-salons .salon-side .price-md,
  .ep-ref-salons-page .salon-side .price-md {
    font-size: 2.2rem !important;
    line-height: 1 !important;
    font-weight: 1000 !important;
    color: #7e12bd !important;
    margin: 0 !important;
  }

  .epy-quick-salons .ep-ref-side-trust,
  .ep-ref-salons-page .ep-ref-side-trust {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 38px !important;
    width: 100% !important;
    padding: 0 14px !important;
    border: 1px solid #ead7ee !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #6d5c7b !important;
    font-size: 0.88rem !important;
    font-weight: 850 !important;
  }

  .epy-quick-salons .salon-side-actions,
  .ep-ref-salons-page .salon-side-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    margin-top: 2px !important;
  }

  .epy-quick-salons .salon-side-actions .btn-es,
  .ep-ref-salons-page .salon-side-actions .btn-es {
    min-width: 0 !important;
    min-height: 46px !important;
    padding: 0 10px !important;
    border-radius: 14px !important;
    font-size: 0.94rem !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 480px) {
  .epy-quick-salons .salon-result-card--premium,
  .ep-ref-salons-page .salon-result-card--premium {
    padding: 12px !important;
    border-radius: 22px !important;
  }

  .epy-quick-salons .salon-photo-wrap,
  .ep-ref-salons-page .salon-photo-wrap,
  .epy-quick-salons .salon-photo-wrap img,
  .ep-ref-salons-page .salon-photo-wrap img {
    min-height: 168px !important;
  }

  .epy-quick-salons .salon-main h3,
  .ep-ref-salons-page .salon-main h3 {
    font-size: 1.28rem !important;
  }

  .epy-quick-salons .salon-side .price-md,
  .ep-ref-salons-page .salon-side .price-md {
    font-size: 2rem !important;
  }
}

/* CHECKPOINT 19E: verification pass for mobile salon cards only */
@media (max-width: 767px) {
  .html-home-page .epy-quick-home,
  .epy-quick-home {
    overflow-x: hidden !important;
  }

  .epy-quick-home .epy-quick-salons {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: max(18px, env(safe-area-inset-left)) !important;
    padding-right: max(18px, env(safe-area-inset-right)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  .epy-quick-home .epy-quick-section-head {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 18px 0 12px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  .epy-quick-home .epy-quick-section-head > div {
    min-width: 0 !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
  }

  .epy-quick-home .epy-quick-section-head .epy-eyebrow,
  .epy-quick-home .epy-quick-section-head h2,
  .epy-quick-home .epy-quick-section-head a {
    transform: none !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-indent: 0 !important;
    overflow: visible !important;
  }

  .epy-quick-home .epy-quick-section-head h2 {
    font-size: 1.72rem !important;
    line-height: 1.12 !important;
  }

  .epy-quick-home .epy-quick-section-head a {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    font-size: .95rem !important;
  }

  .epy-quick-salons .salon-result-card--premium,
  .ep-ref-salons-page .salon-result-card--premium {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    padding: 12px !important;
    border-radius: 24px !important;
    border: 1px solid #efddf1 !important;
    background: linear-gradient(180deg, #fff 0%, #fffafd 100%) !important;
    box-shadow: 0 18px 42px rgba(55,17,70,.085) !important;
    overflow: hidden !important;
  }

  .epy-quick-salons .salon-photo-wrap,
  .ep-ref-salons-page .salon-photo-wrap {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 10 !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    background: linear-gradient(135deg,#fff,#faf6fb) !important;
  }

  .epy-quick-salons .salon-photo-wrap img,
  .ep-ref-salons-page .salon-photo-wrap img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 10 !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 0 !important;
  }

  .epy-quick-salons .salon-main,
  .ep-ref-salons-page .salon-main,
  .epy-quick-salons .salon-side,
  .ep-ref-salons-page .salon-side {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .epy-quick-salons .meta-row .epy-filter-icon-location,
  .ep-ref-salons-page .meta-row .epy-filter-icon-location,
  .epy-quick-salons .meta-row i.epy-filter-icon-location,
  .ep-ref-salons-page .meta-row i.epy-filter-icon-location,
  .epy-quick-salons .meta-row span.epy-filter-icon-location,
  .ep-ref-salons-page .meta-row span.epy-filter-icon-location {
    display: inline-block !important;
    position: relative !important;
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    min-height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
    margin: 0 3px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #d918bb !important;
    font-size: 0 !important;
    line-height: 0 !important;
    vertical-align: -2px !important;
    transform: none !important;
    overflow: hidden !important;
  }

  .epy-quick-salons .meta-row .epy-filter-icon-location svg,
  .ep-ref-salons-page .meta-row .epy-filter-icon-location svg {
    display: none !important;
  }

  .epy-quick-salons .meta-row .epy-filter-icon-location::before,
  .ep-ref-salons-page .meta-row .epy-filter-icon-location::before {
    content: "" !important;
    display: block !important;
    width: 16px !important;
    height: 16px !important;
    background-color: #d918bb !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7Zm0 9.6A2.6 2.6 0 1 1 12 6.4a2.6 2.6 0 0 1 0 5.2Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7Zm0 9.6A2.6 2.6 0 1 1 12 6.4a2.6 2.6 0 0 1 0 5.2Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  }

  .epy-quick-salons .ep-ref-card-badges,
  .ep-ref-salons-page .ep-ref-card-badges {
    max-height: 66px !important;
    overflow: hidden !important;
  }

  .epy-quick-salons .ep-ref-card-badges .es-pill:nth-child(n+5),
  .ep-ref-salons-page .ep-ref-card-badges .es-pill:nth-child(n+5) {
    display: none !important;
  }

  .epy-quick-salons .salon-side-actions,
  .ep-ref-salons-page .salon-side-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
  }

  .epy-quick-salons .salon-side-actions a,
  .ep-ref-salons-page .salon-side-actions a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    white-space: nowrap !important;
  }
}


/* CHECKPOINT 19F: desktop and mobile salon card final repair */
.salon-result-card--premium .meta-row .epy-filter-icon-location,
.epy-home-salon-card .meta-row .epy-filter-icon-location,
.ep-ref-salons-page .salon-result-card .meta-row .epy-filter-icon-location,
.epy-quick-salons .salon-result-card .meta-row .epy-filter-icon-location {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  min-height:18px !important;
  max-width:18px !important;
  max-height:18px !important;
  margin:0 2px 0 0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#d918bb !important;
  font-size:0 !important;
  line-height:0 !important;
  vertical-align:middle !important;
  overflow:visible !important;
  transform:none !important;
  grid-row:auto !important;
}
.salon-result-card--premium .meta-row .epy-filter-icon-location svg,
.epy-home-salon-card .meta-row .epy-filter-icon-location svg,
.ep-ref-salons-page .salon-result-card .meta-row .epy-filter-icon-location svg,
.epy-quick-salons .salon-result-card .meta-row .epy-filter-icon-location svg {
  display:none !important;
}
.salon-result-card--premium .meta-row .epy-filter-icon-location:before,
.epy-home-salon-card .meta-row .epy-filter-icon-location:before,
.ep-ref-salons-page .salon-result-card .meta-row .epy-filter-icon-location:before,
.epy-quick-salons .salon-result-card .meta-row .epy-filter-icon-location:before {
  content:"" !important;
  display:block !important;
  width:16px !important;
  height:16px !important;
  background:#d918bb !important;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7Zm0 9.6A2.6 2.6 0 1 1 12 6.4a2.6 2.6 0 0 1 0 5.2Z'/%3E%3C/svg%3E") center/contain no-repeat !important;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7Zm0 9.6A2.6 2.6 0 1 1 12 6.4a2.6 2.6 0 0 1 0 5.2Z'/%3E%3C/svg%3E") center/contain no-repeat !important;
}

.salon-result-card--premium .salon-side-actions .btn-es-primary,
.ep-ref-salons-page .salon-side-actions .btn-es-primary,
.epy-quick-salons .salon-side-actions .btn-es-primary {
  font-size:0 !important;
}
.salon-result-card--premium .salon-side-actions .btn-es-primary:after,
.ep-ref-salons-page .salon-side-actions .btn-es-primary:after,
.epy-quick-salons .salon-side-actions .btn-es-primary:after {
  content:"Randevu Al" !important;
  font-size:1rem !important;
  line-height:1 !important;
  font-weight:950 !important;
}

@media (min-width:768px) {
  .epy-quick-salons .salon-result-card--premium,
  .ep-ref-salons-page .salon-result-card--premium {
    display:grid !important;
    grid-template-columns:minmax(220px,280px) minmax(0,1fr) minmax(190px,230px) !important;
    gap:22px !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:100% !important;
    padding:18px !important;
    border:1px solid #efddf1 !important;
    border-radius:28px !important;
    background:linear-gradient(135deg,#fff 0%,#fffafd 100%) !important;
    box-shadow:0 16px 42px rgba(55,17,70,.07) !important;
    overflow:hidden !important;
  }

  .epy-quick-salons .salon-photo-wrap,
  .ep-ref-salons-page .salon-photo-wrap {
    display:block !important;
    width:100% !important;
    height:220px !important;
    min-height:220px !important;
    border-radius:22px !important;
    overflow:hidden !important;
    align-self:stretch !important;
    background:linear-gradient(135deg,#fff,#faf6fb) !important;
    box-shadow:inset 0 0 0 1px #f3e6f4 !important;
  }

  .epy-quick-salons .salon-photo-wrap img,
  .ep-ref-salons-page .salon-photo-wrap img {
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:220px !important;
    object-fit:cover !important;
    object-position:center !important;
    border-radius:0 !important;
  }

  .epy-quick-salons .salon-photo-wrap img[src*="salon-placeholder"],
  .epy-quick-salons .salon-photo-wrap img[src*="salon-placeholder-logo"],
  .ep-ref-salons-page .salon-photo-wrap img[src*="salon-placeholder"],
  .ep-ref-salons-page .salon-photo-wrap img[src*="salon-placeholder-logo"] {
    object-fit:contain !important;
    padding:24px !important;
    background:linear-gradient(135deg,#fff,#faf6fb) !important;
  }

  .epy-quick-salons .salon-main,
  .ep-ref-salons-page .salon-main {
    display:block !important;
    min-width:0 !important;
    padding:4px 0 !important;
  }

  .epy-quick-salons .ep-ref-card-badges,
  .ep-ref-salons-page .ep-ref-card-badges {
    display:flex !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    max-height:72px !important;
    overflow:hidden !important;
    margin:0 0 12px !important;
  }

  .epy-quick-salons .ep-ref-card-badges .es-pill,
  .ep-ref-salons-page .ep-ref-card-badges .es-pill {
    display:inline-flex !important;
    align-items:center !important;
    min-height:32px !important;
    padding:0 12px !important;
    border-radius:999px !important;
    font-size:.82rem !important;
    line-height:1 !important;
    white-space:nowrap !important;
    font-weight:900 !important;
  }

  .epy-quick-salons .salon-main h3,
  .ep-ref-salons-page .salon-main h3 {
    margin:0 0 10px !important;
    font-size:clamp(1.7rem,2.15vw,2.35rem) !important;
    line-height:1.04 !important;
    letter-spacing:-.055em !important;
    color:#1b1031 !important;
  }

  .epy-quick-salons .meta-row,
  .ep-ref-salons-page .meta-row {
    display:flex !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    margin:0 0 9px !important;
    color:#6d6079 !important;
    font-size:1rem !important;
    line-height:1.35 !important;
    font-weight:780 !important;
  }

  .epy-quick-salons .meta-row .star,
  .ep-ref-salons-page .meta-row .star {
    color:#ffae00 !important;
    font-size:1.08rem !important;
  }

  .epy-quick-salons .feature-list.premium,
  .ep-ref-salons-page .feature-list.premium {
    display:flex !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    margin-top:14px !important;
  }

  .epy-quick-salons .feature-list.premium span,
  .ep-ref-salons-page .feature-list.premium span {
    display:inline-flex !important;
    align-items:center !important;
    min-height:34px !important;
    padding:0 13px !important;
    border:1px solid #ead8ee !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#7a1b8d !important;
    font-size:.86rem !important;
    font-weight:850 !important;
    white-space:nowrap !important;
  }

  .epy-quick-salons .salon-side,
  .ep-ref-salons-page .salon-side {
    display:grid !important;
    grid-template-columns:1fr !important;
    align-content:center !important;
    justify-items:start !important;
    gap:12px !important;
    padding:0 0 0 22px !important;
    margin:0 !important;
    border-left:1px solid #efdaf1 !important;
    border-top:0 !important;
    text-align:left !important;
  }

  .epy-quick-salons .salon-side small,
  .ep-ref-salons-page .salon-side small {
    color:#786985 !important;
    font-size:.86rem !important;
    font-weight:850 !important;
  }

  .epy-quick-salons .price-md,
  .ep-ref-salons-page .price-md {
    color:#8c12ca !important;
    font-size:2.35rem !important;
    line-height:1 !important;
    letter-spacing:-.055em !important;
    font-weight:1000 !important;
  }

  .epy-quick-salons .ep-ref-side-trust,
  .ep-ref-salons-page .ep-ref-side-trust {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:38px !important;
    padding:0 14px !important;
    border:1px solid #ead8ee !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#6b5e76 !important;
    font-size:.86rem !important;
    font-weight:850 !important;
    white-space:nowrap !important;
  }

  .epy-quick-salons .salon-side-actions,
  .ep-ref-salons-page .salon-side-actions {
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    width:100% !important;
  }

  .epy-quick-salons .salon-side-actions .btn-es,
  .ep-ref-salons-page .salon-side-actions .btn-es {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-height:50px !important;
    padding:0 16px !important;
    border-radius:15px !important;
    font-weight:950 !important;
    white-space:nowrap !important;
  }
}

@media (min-width:768px) and (max-width:1100px) {
  .epy-quick-salons .salon-result-card--premium,
  .ep-ref-salons-page .salon-result-card--premium {
    grid-template-columns:220px minmax(0,1fr) !important;
  }
  .epy-quick-salons .salon-side,
  .ep-ref-salons-page .salon-side {
    grid-column:1 / -1 !important;
    border-left:0 !important;
    border-top:1px solid #efdaf1 !important;
    padding:16px 0 0 !important;
    grid-template-columns:auto 1fr auto !important;
    align-items:center !important;
  }
  .epy-quick-salons .salon-side-actions,
  .ep-ref-salons-page .salon-side-actions {
    grid-template-columns:auto auto !important;
    justify-content:end !important;
    width:auto !important;
  }
}


/* CHECKPOINT 19G: device filter modal search/header repair */
.epy-device-modal--premium[hidden],
.epy-device-modal[hidden] {
  display: none !important;
}

.epy-device-modal--premium,
.epy-device-modal {
  z-index: 100140 !important;
}

.epy-device-dialog {
  isolation: isolate !important;
}

.epy-device-modal--premium .epy-device-head,
.epy-device-modal .epy-device-head {
  position: relative !important;
  z-index: 3 !important;
  padding: 0 52px 14px 0 !important;
  margin: 0 0 14px !important;
  border-bottom: 1px solid #f0ddf2 !important;
}

.epy-device-modal--premium .epy-location-kicker,
.epy-device-modal .epy-location-kicker {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  width: auto !important;
  min-height: 30px !important;
  margin: 0 0 8px !important;
  padding: 0 11px !important;
  border-radius: 999px !important;
  background: #fbecfb !important;
  color: #a70dbb !important;
  font-size: .72rem !important;
  line-height: 1 !important;
  letter-spacing: .08em !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
}

.epy-device-modal--premium .epy-device-head h2,
.epy-device-modal .epy-device-head h2 {
  margin: 0 0 8px !important;
  color: #170a31 !important;
  font-size: clamp(1.9rem, 5vw, 2.6rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.05em !important;
  font-weight: 1000 !important;
}

.epy-device-modal--premium .epy-device-head p,
.epy-device-modal .epy-device-head p {
  max-width: 620px !important;
  margin: 0 !important;
  color: #6f627b !important;
  font-size: .98rem !important;
  line-height: 1.52 !important;
  font-weight: 720 !important;
}

.epy-device-modal--premium .epy-device-search,
.epy-device-modal .epy-device-search {
  position: relative !important;
  z-index: 4 !important;
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  min-height: 58px !important;
  margin: 0 0 14px !important;
  padding: 7px 14px 7px 9px !important;
  border: 1px solid #ecd8ef !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 12px 28px rgba(62, 20, 82, .055) !important;
  overflow: hidden !important;
}

.epy-device-modal--premium .epy-device-search .epy-filter-icon-search,
.epy-device-modal .epy-device-search .epy-filter-icon-search {
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: grid !important;
  place-items: center !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
  max-width: 40px !important;
  max-height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 14px !important;
  background: #fbecfb !important;
  color: #d93abd !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transform: none !important;
}

.epy-device-modal--premium .epy-device-search .epy-filter-icon-search svg,
.epy-device-modal .epy-device-search .epy-filter-icon-search svg {
  display: block !important;
  width: 28px !important;
  height: 28px !important;
  max-width: 28px !important;
  max-height: 28px !important;
  margin: 0 !important;
}

.epy-device-modal--premium .epy-device-search .epy-filter-icon-search:before,
.epy-device-modal .epy-device-search .epy-filter-icon-search:before,
.epy-device-modal--premium .epy-device-search .epy-filter-icon-search:after,
.epy-device-modal .epy-device-search .epy-filter-icon-search:after {
  content: none !important;
  display: none !important;
}

.epy-device-modal--premium .epy-device-search input,
.epy-device-modal .epy-device-search input {
  grid-column: 2 !important;
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  color: #170a31 !important;
  -webkit-text-fill-color: #170a31 !important;
  font-size: 1rem !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.epy-device-modal--premium .epy-device-search input::placeholder,
.epy-device-modal .epy-device-search input::placeholder {
  color: #8b7b94 !important;
  opacity: 1 !important;
}

.epy-device-modal--premium .epy-device-list,
.epy-device-modal .epy-device-list {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  gap: 10px !important;
  max-height: min(54vh, 520px) !important;
  overflow: auto !important;
  padding: 2px 2px 8px !important;
}

.epy-device-modal--premium .epy-device-option,
.epy-device-modal .epy-device-option {
  min-height: 70px !important;
  padding: 14px 16px !important;
  border: 1px solid #efdaf1 !important;
  border-radius: 18px !important;
  background: #fff !important;
  text-align: left !important;
  box-shadow: 0 10px 24px rgba(54, 17, 70, .035) !important;
}

.epy-device-modal--premium .epy-device-option b,
.epy-device-modal .epy-device-option b {
  color: #1b1031 !important;
  font-size: 1.03rem !important;
  font-weight: 950 !important;
  line-height: 1.12 !important;
}

.epy-device-modal--premium .epy-device-option small,
.epy-device-modal .epy-device-option small {
  display: block !important;
  margin-top: 6px !important;
  color: #7a6b86 !important;
  font-size: .86rem !important;
  line-height: 1.25 !important;
  font-weight: 760 !important;
}

.epy-device-modal--premium .epy-device-option.active,
.epy-device-modal--premium .epy-device-option.selected,
.epy-device-modal .epy-device-option.active,
.epy-device-modal .epy-device-option.selected {
  border-color: #ce0bd6 !important;
  background: linear-gradient(135deg, #fff, #fff5ff) !important;
}

.epy-device-modal--premium .epy-device-close,
.epy-device-modal .epy-device-close {
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 8 !important;
  display: grid !important;
  place-items: center !important;
  width: 48px !important;
  height: 48px !important;
  border: 1px solid #efdaf1 !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: #1b1031 !important;
  font-size: 1.45rem !important;
  line-height: 1 !important;
  box-shadow: 0 16px 34px rgba(42, 16, 55, .13) !important;
}

@media (max-width: 640px) {
  .epy-device-modal--premium .epy-device-dialog,
  .epy-device-modal .epy-device-dialog {
    width: calc(100vw - 18px) !important;
    max-height: calc(100vh - 18px) !important;
    padding: 22px 20px 18px !important;
    border-radius: 26px 26px 18px 18px !important;
    overflow: auto !important;
  }

  .epy-device-modal--premium .epy-device-head,
  .epy-device-modal .epy-device-head {
    padding-right: 56px !important;
    margin-bottom: 12px !important;
  }

  .epy-device-modal--premium .epy-device-head h2,
  .epy-device-modal .epy-device-head h2 {
    font-size: 1.95rem !important;
  }

  .epy-device-modal--premium .epy-device-head p,
  .epy-device-modal .epy-device-head p {
    font-size: .94rem !important;
  }

  .epy-device-modal--premium .epy-device-search,
  .epy-device-modal .epy-device-search {
    min-height: 56px !important;
    margin-bottom: 12px !important;
  }

  .epy-device-modal--premium .epy-device-list,
  .epy-device-modal .epy-device-list {
    max-height: 52vh !important;
  }

  .epy-device-modal--premium .epy-device-option,
  .epy-device-modal .epy-device-option {
    min-height: 68px !important;
    border-radius: 17px !important;
  }
}


/* CHECKPOINT 20A: salon panel responsive tables and server-side paging UI */
.epy-salon-panel-modern .epy-panel-main {
  min-width: 0 !important;
  overflow-x: clip !important;
}

.epy-salon-panel-modern .epy-panel-heading {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 18px !important;
}

.epy-salon-panel-modern .epy-panel-heading > div {
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-panel-heading h1,
.epy-salon-panel-modern .epy-panel-heading p {
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-toolbar-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 14px !important;
}

.epy-salon-panel-modern .epy-panel-booking-filter,
.epy-salon-panel-modern .epy-filter-inline {
  display: grid !important;
  grid-template-columns: minmax(190px, 1.2fr) minmax(160px, .85fr) minmax(150px, .75fr) minmax(150px, .75fr) minmax(92px, .45fr) auto !important;
  gap: 10px !important;
  align-items: end !important;
  min-width: 0 !important;
  width: 100% !important;
}

.epy-salon-panel-modern .epy-filter-inline label {
  min-width: 0 !important;
  width: 100% !important;
}

.epy-salon-panel-modern .epy-filter-inline input,
.epy-salon-panel-modern .epy-filter-inline select {
  width: 100% !important;
  min-width: 0 !important;
  height: 44px !important;
  border: 1px solid var(--epy-border) !important;
  border-radius: 12px !important;
  background: #fff !important;
  padding: 0 12px !important;
  color: var(--epy-ink) !important;
  font-weight: 760 !important;
  outline: 0 !important;
}

.epy-salon-panel-modern .epy-filter-inline input:focus,
.epy-salon-panel-modern .epy-filter-inline select:focus {
  border-color: var(--epy-primary) !important;
  box-shadow: 0 0 0 4px rgba(169, 11, 185, .1) !important;
}

.epy-filter-inline-small {
  min-width: 90px !important;
}

.epy-filter-inline-actions {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 44px !important;
}

.epy-salon-panel-modern .epy-count-badge {
  justify-self: end !important;
  white-space: nowrap !important;
}

.epy-salon-panel-modern .epy-content-card {
  min-width: 0 !important;
  overflow: hidden !important;
}

.epy-salon-panel-modern .epy-table-wrap {
  width: 100% !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
  border-radius: 18px !important;
}

.epy-salon-panel-modern .epy-table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

.epy-salon-panel-modern .epy-table th,
.epy-salon-panel-modern .epy-table td {
  vertical-align: middle !important;
  line-height: 1.35 !important;
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-bookings-table {
  min-width: 980px !important;
  table-layout: fixed !important;
}

.epy-salon-panel-modern .epy-bookings-table th:nth-child(1),
.epy-salon-panel-modern .epy-bookings-table td:nth-child(1) { width: 145px !important; }

.epy-salon-panel-modern .epy-bookings-table th:nth-child(2),
.epy-salon-panel-modern .epy-bookings-table td:nth-child(2) { width: 145px !important; white-space: nowrap !important; }

.epy-salon-panel-modern .epy-bookings-table th:nth-child(3),
.epy-salon-panel-modern .epy-bookings-table td:nth-child(3) { width: 150px !important; }

.epy-salon-panel-modern .epy-bookings-table th:nth-child(4),
.epy-salon-panel-modern .epy-bookings-table td:nth-child(4) { width: auto !important; }

.epy-salon-panel-modern .epy-bookings-table th:nth-child(5),
.epy-salon-panel-modern .epy-bookings-table td:nth-child(5) {
  width: 120px !important;
  white-space: nowrap !important;
  text-align: right !important;
}

.epy-salon-panel-modern .epy-bookings-table th:nth-child(6),
.epy-salon-panel-modern .epy-bookings-table td:nth-child(6) {
  width: 130px !important;
  white-space: nowrap !important;
}

.epy-salon-panel-modern .epy-bookings-table th:nth-child(7),
.epy-salon-panel-modern .epy-bookings-table td:nth-child(7) {
  width: 110px !important;
  white-space: nowrap !important;
  text-align: right !important;
}

.epy-salon-panel-modern .epy-status {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 30px !important;
  max-width: 100% !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.epy-salon-panel-modern .epy-btn-small {
  min-height: 36px !important;
  padding: 0 12px !important;
  border-radius: 11px !important;
  font-size: .82rem !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.epy-panel-pager {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-top: 16px !important;
  padding: 12px 14px !important;
  border: 1px solid var(--epy-border) !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, #fff, #fffafd) !important;
}

.epy-panel-pager > span {
  color: var(--epy-muted) !important;
  font-weight: 800 !important;
}

.epy-panel-pager > div {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
}

.epy-panel-pager b {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 36px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  background: var(--epy-soft) !important;
  color: var(--epy-primary) !important;
}

.epy-panel-pager a.disabled {
  pointer-events: none !important;
  opacity: .45 !important;
}

@media (max-width: 1280px) {
  .epy-salon-panel-modern .epy-panel-booking-filter,
  .epy-salon-panel-modern .epy-filter-inline {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .epy-filter-inline-actions {
    grid-column: auto !important;
  }
}

@media (max-width: 1100px) {
  .epy-salon-panel-modern .epy-toolbar-card {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-count-badge {
    justify-self: start !important;
  }

  .epy-salon-panel-modern .epy-bookings-table,
  .epy-salon-panel-modern .epy-table-responsive {
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-table-responsive thead {
    display: none !important;
  }

  .epy-salon-panel-modern .epy-table-responsive,
  .epy-salon-panel-modern .epy-table-responsive tbody,
  .epy-salon-panel-modern .epy-table-responsive tr,
  .epy-salon-panel-modern .epy-table-responsive td {
    display: block !important;
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-table-responsive tbody {
    display: grid !important;
    gap: 12px !important;
  }

  .epy-salon-panel-modern .epy-table-responsive tr {
    padding: 14px !important;
    border: 1px solid var(--epy-border) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 12px 28px rgba(48, 17, 62, .055) !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td {
    display: grid !important;
    grid-template-columns: 118px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 10px !important;
    padding: 9px 0 !important;
    border-bottom: 1px dashed #eadbed !important;
    text-align: left !important;
    white-space: normal !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td:last-child {
    border-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td[data-label]:before {
    content: attr(data-label) !important;
    display: block !important;
    color: var(--epy-muted) !important;
    font-size: .78rem !important;
    font-weight: 900 !important;
    letter-spacing: .015em !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td[data-label="İşlem"] {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td[data-label="İşlem"]:before {
    display: none !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td[data-label="İşlem"] .epy-btn,
  .epy-salon-panel-modern .epy-table-responsive td:last-child .epy-btn {
    width: 100% !important;
    min-height: 42px !important;
  }

  .epy-salon-panel-modern .epy-status {
    justify-self: start !important;
    white-space: normal !important;
    text-align: center !important;
  }
}

@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-panel-main {
    margin-left: 0 !important;
    padding: 18px 12px 46px !important;
  }

  .epy-salon-panel-modern .epy-panel-nav {
    position: sticky !important;
    inset: auto !important;
    width: auto !important;
    max-height: none !important;
    border-radius: 0 0 22px 22px !important;
  }

  .epy-salon-panel-modern .epy-panel-heading {
    display: grid !important;
  }

  .epy-salon-panel-modern .epy-panel-heading .epy-btn {
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-panel-booking-filter,
  .epy-salon-panel-modern .epy-filter-inline {
    grid-template-columns: 1fr !important;
  }

  .epy-filter-inline-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
  }

  .epy-filter-inline-actions .epy-btn,
  .epy-filter-inline-actions .epy-link-button {
    width: 100% !important;
    justify-content: center !important;
  }

  .epy-panel-pager {
    display: grid !important;
  }

  .epy-panel-pager > div {
    justify-content: space-between !important;
  }
}

@media (max-width: 420px) {
  .epy-salon-panel-modern .epy-table-responsive td {
    grid-template-columns: 94px minmax(0, 1fr) !important;
  }
}


/* CHECKPOINT 20B: salon panel full responsive audit */
.epy-salon-panel-modern,
.epy-salon-panel-modern * {
  min-width: 0;
}

.epy-salon-panel-modern .epy-panel-main {
  overflow-x: clip !important;
}

.epy-salon-panel-modern .epy-content-card,
.epy-salon-panel-modern .epy-form-card,
.epy-salon-panel-modern .epy-selection-summary,
.epy-salon-panel-modern .epy-confirm-card,
.epy-salon-panel-modern .epy-confirm-action {
  max-width: 100% !important;
  overflow: hidden !important;
}

.epy-salon-panel-modern .epy-section-title {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 14px !important;
}

.epy-salon-panel-modern .epy-section-title > div {
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-section-title h2,
.epy-salon-panel-modern .epy-section-title p,
.epy-salon-panel-modern .epy-panel-heading h1,
.epy-salon-panel-modern .epy-panel-heading p {
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-count-badge,
.epy-salon-panel-modern .epy-capacity-badge,
.epy-salon-panel-modern .epy-help-badge,
.epy-salon-panel-modern .epy-location-chip {
  white-space: nowrap !important;
  flex: 0 0 auto !important;
}

.epy-salon-panel-modern .epy-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.epy-salon-panel-modern .epy-form-grid .full {
  grid-column: 1 / -1 !important;
}

.epy-salon-panel-modern .epy-form-grid label,
.epy-salon-panel-modern .epy-field,
.epy-salon-panel-modern .epy-field-block {
  min-width: 0 !important;
}

.epy-salon-panel-modern input,
.epy-salon-panel-modern select,
.epy-salon-panel-modern textarea {
  max-width: 100% !important;
}

.epy-salon-panel-modern .epy-device-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)) !important;
  gap: 16px !important;
}

.epy-salon-panel-modern .epy-device-card {
  min-width: 0 !important;
  overflow: hidden !important;
}

.epy-salon-panel-modern .epy-device-card-head {
  gap: 12px !important;
}

.epy-salon-panel-modern .epy-device-card-head h3,
.epy-salon-panel-modern .epy-device-card-head p {
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-device-card-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
}

.epy-salon-panel-modern .epy-device-card-actions > * {
  min-width: min(100%, 150px) !important;
}

.epy-salon-panel-modern .epy-device-card-actions .epy-btn,
.epy-salon-panel-modern .epy-device-card-actions form,
.epy-salon-panel-modern .epy-device-card-actions form button {
  width: 100% !important;
}

.epy-salon-panel-modern .epy-device-edit-form,
.epy-salon-panel-modern .epy-gallery-upload-form,
.epy-salon-panel-modern .epy-location-search-row {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)) !important;
  gap: 12px !important;
  align-items: end !important;
}

.epy-salon-panel-modern .epy-working-hours-list {
  display: grid !important;
  gap: 12px !important;
}

.epy-salon-panel-modern .epy-working-hour-row {
  display: grid !important;
  grid-template-columns: minmax(160px, 1.2fr) repeat(4, minmax(130px, .8fr)) auto !important;
  gap: 12px !important;
  align-items: end !important;
}

.epy-salon-panel-modern .epy-working-hour-row label {
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-price-groups {
  display: grid !important;
  gap: 18px !important;
}

.epy-salon-panel-modern .epy-price-list-clean {
  display: grid !important;
  gap: 10px !important;
}

.epy-salon-panel-modern .epy-price-row-clean {
  display: grid !important;
  grid-template-columns: minmax(220px, 1.6fr) minmax(130px, .7fr) minmax(120px, .6fr) minmax(100px, .5fr) auto !important;
  gap: 12px !important;
  align-items: end !important;
}

.epy-salon-panel-modern .epy-price-region {
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-price-region b,
.epy-salon-panel-modern .epy-price-region small {
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-block-list {
  display: grid !important;
  gap: 10px !important;
}

.epy-salon-panel-modern .epy-block-list article {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 14px !important;
  align-items: center !important;
  padding: 14px !important;
  border: 1px solid var(--epy-border) !important;
  border-radius: 16px !important;
  background: #fff !important;
}

.epy-salon-panel-modern .epy-block-list article h3,
.epy-salon-panel-modern .epy-block-list article p,
.epy-salon-panel-modern .epy-block-list article small {
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-request-list {
  display: grid !important;
  gap: 10px !important;
}

.epy-salon-panel-modern .epy-request-list article,
.epy-salon-panel-modern .epy-admin-request-card {
  min-width: 0 !important;
  overflow: hidden !important;
}

.epy-salon-panel-modern .epy-profile-gallery {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)) !important;
  gap: 14px !important;
}

.epy-salon-panel-modern .epy-profile-gallery article {
  min-width: 0 !important;
  overflow: hidden !important;
}

.epy-salon-panel-modern .epy-profile-gallery img {
  width: 100% !important;
  height: 150px !important;
  object-fit: cover !important;
}

.epy-salon-panel-modern .epy-panel-two-column,
.epy-salon-panel-modern .epy-panel-split,
.epy-salon-panel-modern .epy-session-layout {
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .75fr) !important;
  gap: 18px !important;
}

.epy-salon-panel-modern .epy-calendar-wrap {
  max-width: 100% !important;
  overflow: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

.epy-salon-panel-modern .epy-calendar-grid {
  min-width: max-content !important;
}

.epy-salon-panel-modern .epy-calendar-device,
.epy-salon-panel-modern .epy-calendar-cell {
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-table-wrap {
  max-width: 100% !important;
}

.epy-salon-panel-modern .epy-table td,
.epy-salon-panel-modern .epy-table th {
  word-break: normal !important;
  overflow-wrap: anywhere !important;
  hyphens: none !important;
}

.epy-salon-panel-modern .epy-table td[data-label="Tutar"],
.epy-salon-panel-modern .epy-table td[data-label="Brüt"],
.epy-salon-panel-modern .epy-table td[data-label="Komisyon"],
.epy-salon-panel-modern .epy-table td[data-label="Net"] {
  white-space: nowrap !important;
}

.epy-salon-panel-modern .epy-table td[data-label="Durum"] {
  overflow: visible !important;
}

.epy-salon-panel-modern .epy-table td[data-label="İşlem"] {
  overflow: visible !important;
}

@media (max-width: 1180px) {
  .epy-salon-panel-modern .epy-working-hour-row,
  .epy-salon-panel-modern .epy-price-row-clean {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .epy-salon-panel-modern .epy-working-day,
  .epy-salon-panel-modern .epy-price-region {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 980px) {
  .epy-salon-panel-modern .epy-panel-two-column,
  .epy-salon-panel-modern .epy-panel-split,
  .epy-salon-panel-modern .epy-session-layout {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-history-card {
    position: static !important;
  }

  .epy-salon-panel-modern .epy-section-title {
    display: grid !important;
  }

  .epy-salon-panel-modern .epy-section-title > a,
  .epy-salon-panel-modern .epy-section-title > span {
    justify-self: start !important;
  }
}

@media (max-width: 760px) {
  .epy-salon-panel-modern {
    padding-bottom: 28px !important;
  }

  .epy-salon-panel-modern .epy-content-card {
    border-radius: 20px !important;
    padding: 16px !important;
  }

  .epy-salon-panel-modern .epy-form-grid,
  .epy-salon-panel-modern .epy-device-edit-form,
  .epy-salon-panel-modern .epy-gallery-upload-form,
  .epy-salon-panel-modern .epy-location-search-row,
  .epy-salon-panel-modern .epy-working-hour-row,
  .epy-salon-panel-modern .epy-price-row-clean {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-device-card-actions,
  .epy-salon-panel-modern .epy-card-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-device-card-actions > *,
  .epy-salon-panel-modern .epy-card-actions > *,
  .epy-salon-panel-modern .epy-device-card-actions .epy-btn,
  .epy-salon-panel-modern .epy-card-actions .epy-btn {
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-block-list article {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-block-list article form,
  .epy-salon-panel-modern .epy-block-list article button {
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-stat-grid,
  .epy-salon-panel-modern .epy-stat-grid-three {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-summary-grid,
  .epy-salon-panel-modern .epy-summary-grid-large {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-session-topbar,
  .epy-salon-panel-modern .epy-dashboard-topline {
    display: grid !important;
  }

  .epy-salon-panel-modern .epy-session-top-actions,
  .epy-salon-panel-modern .epy-dashboard-topline > * {
    justify-self: stretch !important;
  }

  .epy-salon-panel-modern .epy-session-top-actions .epy-btn,
  .epy-salon-panel-modern .epy-dashboard-topline .epy-btn {
    width: 100% !important;
  }
}

@media (max-width: 520px) {
  .epy-salon-panel-modern .epy-content-card {
    padding: 14px !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td {
    grid-template-columns: 92px minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  .epy-salon-panel-modern .epy-status {
    white-space: normal !important;
    line-height: 1.25 !important;
    padding: 6px 8px !important;
  }
}

/* CHECKPOINT 20C: customer account, topic and public page responsive audit */
.epy-account-layout,.epy-topic-page,.epy-public-page,.epy-review-session-page,.epy-reservation-lookup-page{max-width:1440px;margin-inline:auto;min-width:0;overflow-x:hidden}.epy-account-layout *,.epy-topic-page *,.epy-public-page *,.epy-review-session-page *,.epy-reservation-lookup-page *{box-sizing:border-box}.epy-account-layout-pro{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:22px;padding:24px}.epy-account-layout .epy-account-main{min-width:0}.epy-account-layout .epy-panel-heading,.epy-account-heading{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:16px!important}.epy-account-layout .epy-panel-heading>div{min-width:0!important}.epy-account-layout h1,.epy-account-layout h2,.epy-account-layout h3,.epy-topic-page h1,.epy-topic-page h2{overflow-wrap:anywhere}.epy-account-filter-card{display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(150px,.8fr) minmax(145px,.75fr) minmax(145px,.75fr) minmax(86px,.45fr) auto;gap:10px;align-items:end;margin:0 0 16px;padding:14px;border:1px solid var(--epy-border);border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(55,18,70,.055)}.epy-account-filter-card label{display:grid;gap:6px;min-width:0;color:var(--epy-muted);font-size:.78rem;font-weight:850}.epy-account-filter-card input,.epy-account-filter-card select{width:100%;min-width:0;height:44px;border:1px solid var(--epy-border);border-radius:12px;background:#fff;padding:0 12px;color:var(--epy-ink);font-weight:780;outline:0}.epy-account-filter-card input:focus,.epy-account-filter-card select:focus{border-color:var(--epy-primary);box-shadow:0 0 0 4px rgba(169,11,185,.1)}.epy-account-filter-actions{display:flex;align-items:center;gap:8px;min-height:44px}.epy-account-layout .epy-booking-list{display:grid;gap:14px}.epy-account-layout .epy-booking-list-card{display:grid;grid-template-columns:96px minmax(0,1fr) minmax(170px,230px);gap:16px;align-items:center;padding:16px;border:1px solid var(--epy-border);border-radius:20px;background:#fff;box-shadow:0 13px 32px rgba(58,15,72,.055);min-width:0}.epy-account-layout .epy-booking-date{min-width:0}.epy-account-layout .epy-booking-list-body{min-width:0}.epy-account-layout .epy-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0}.epy-account-layout .epy-card-top>div{min-width:0}.epy-account-layout .epy-card-top h2{margin:.2rem 0 0;font-size:1.24rem;line-height:1.15}.epy-account-layout .epy-card-top h2 a{color:inherit;text-decoration:none}.epy-account-layout .epy-status{white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.epy-account-layout .epy-booking-list-body p{margin:.55rem 0;color:var(--epy-muted);font-weight:760;line-height:1.45;overflow-wrap:anywhere}.epy-account-layout .epy-booking-meta{display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--epy-muted);font-weight:760}.epy-account-layout .epy-booking-actions{display:grid;grid-template-columns:1fr;gap:8px;min-width:0}.epy-account-layout .epy-booking-actions .epy-btn{width:100%;min-height:40px;padding:.55rem .85rem;white-space:normal;text-align:center}.epy-account-layout .epy-detail-summary-grid,.epy-account-layout .epy-reschedule-grid{min-width:0}.epy-account-pager{margin-top:16px}.epy-account-navigation{min-width:0}.epy-account-navigation .list a{overflow-wrap:anywhere}.epy-topic-page,.epy-public-page{padding:34px 20px}.epy-topic-page .epy-content-card,.epy-public-page .epy-content-card,.epy-reservation-lookup-page .epy-content-card{max-width:1120px;margin-inline:auto;padding:clamp(20px,4vw,42px);overflow:hidden}.epy-topic-page img,.epy-public-page img,.epy-content-card img{max-width:100%;height:auto}.epy-topic-page table,.epy-public-page table{display:block;width:100%;overflow-x:auto;border-collapse:collapse}.epy-topic-page p,.epy-public-page p{line-height:1.7;color:var(--epy-muted)}.epy-reservation-lookup-page,.epy-review-session-page{padding:32px 16px}.epy-reservation-lookup-page form,.epy-review-session-page form{max-width:760px;margin-inline:auto}.epy-reservation-lookup-page input,.epy-reservation-lookup-page select,.epy-reservation-lookup-page textarea,.epy-review-session-page input,.epy-review-session-page select,.epy-review-session-page textarea{max-width:100%;min-width:0}.customer-page .customer-blocks,.html-login-page .customer-blocks{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;max-width:1180px;margin-inline:auto}.html-login-page .new-wrapper,.html-login-page .returning-wrapper{min-width:0;border-radius:22px!important;overflow:hidden}.html-login-page .form-fields,.html-login-page .inputs{min-width:0}.html-login-page input{max-width:100%;min-width:0}.html-login-page .buttons{display:flex;flex-wrap:wrap;gap:10px}.html-login-page .button-1{white-space:normal;min-height:46px}
@media(max-width:1180px){.epy-account-layout-pro{grid-template-columns:1fr}.epy-account-filter-card{grid-template-columns:repeat(3,minmax(0,1fr))}.epy-account-layout .epy-booking-list-card{grid-template-columns:82px minmax(0,1fr)}.epy-account-layout .epy-booking-actions{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}.epy-account-navigation .list{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.epy-account-navigation .list li{flex:0 0 auto}.epy-account-navigation .list a{white-space:nowrap}}
@media(max-width:760px){.epy-account-layout-pro{padding:14px;gap:14px}.epy-account-layout .epy-panel-heading,.epy-account-heading{display:grid!important}.epy-account-layout .epy-panel-heading .epy-btn{width:100%}.epy-account-filter-card{grid-template-columns:1fr;padding:12px;border-radius:16px}.epy-account-filter-actions{display:grid;grid-template-columns:1fr 1fr}.epy-account-filter-actions .epy-btn,.epy-account-filter-actions .epy-link-button{width:100%;justify-content:center}.epy-account-layout .epy-booking-list-card{grid-template-columns:1fr;padding:14px;border-radius:18px}.epy-account-layout .epy-booking-date{display:flex!important;align-items:center;justify-content:space-between;gap:10px;min-height:58px;padding:10px 12px;border-radius:14px;background:var(--epy-soft)}.epy-account-layout .epy-card-top{display:grid}.epy-account-layout .epy-status{justify-self:start}.epy-account-layout .epy-booking-actions{grid-template-columns:1fr}.epy-panel-pager,.epy-account-pager{display:grid!important}.epy-panel-pager>div,.epy-account-pager>div{justify-content:space-between!important}.customer-page .customer-blocks,.html-login-page .customer-blocks{grid-template-columns:1fr}.epy-topic-page,.epy-public-page{padding:20px 12px}.epy-topic-page .epy-content-card,.epy-public-page .epy-content-card{padding:18px;border-radius:18px}.html-login-page .buttons{display:grid}.html-login-page .button-1{width:100%}}

/* CHECKPOINT 20C-FINAL: lookup/topic actual class coverage */
.epy-lookup-page{max-width:1280px;margin:0 auto;padding:34px 18px 56px;overflow-x:hidden}.epy-lookup-hero{margin:0 0 22px}.epy-lookup-hero h1{font-size:clamp(2rem,5vw,4rem);line-height:1.02;letter-spacing:-.06em;margin:.3rem 0 .8rem;color:var(--epy-ink)}.epy-lookup-hero p{color:var(--epy-muted);font-weight:700;line-height:1.55}.epy-lookup-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:18px;align-items:start}.epy-lookup-form{display:grid;gap:13px}.epy-lookup-form label{display:grid;gap:7px;color:var(--epy-muted);font-weight:850}.epy-lookup-form input{width:100%;min-width:0;height:50px;border:1px solid var(--epy-border);border-radius:13px;background:#fff;padding:0 14px;color:var(--epy-ink);font-weight:820;outline:0}.epy-lookup-form input:focus{border-color:var(--epy-primary);box-shadow:0 0 0 4px rgba(169,11,185,.1)}.epy-lookup-result{min-width:0}.epy-topic-container{width:min(1120px,calc(100% - 32px));margin-inline:auto}.epy-topic-hero{padding:42px 0 22px;background:linear-gradient(180deg,#fff,#fff8fd);border-bottom:1px solid #f0e1f2}.epy-topic-hero h1{font-size:clamp(2rem,5vw,4.3rem);line-height:1.02;letter-spacing:-.06em;margin:.4rem 0;color:var(--epy-ink)}.epy-topic-hero p,.epy-topic-content{color:var(--epy-muted);line-height:1.7}.epy-topic-hero span{color:var(--epy-primary);font-weight:950;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase}.epy-topic-content{padding:28px 0 54px}.epy-topic-content h2,.epy-topic-content h3{color:var(--epy-ink);letter-spacing:-.03em}.epy-topic-content img{max-width:100%;height:auto;border-radius:16px}.epy-topic-content table{display:block;width:100%;overflow-x:auto;border-collapse:collapse}.epy-topic-content a{color:var(--epy-primary);font-weight:850}
@media(max-width:780px){.epy-lookup-page{padding:22px 12px 42px}.epy-lookup-grid{grid-template-columns:1fr}.epy-lookup-form,.epy-lookup-result{border-radius:18px!important}.epy-topic-container{width:calc(100% - 24px)}.epy-topic-hero{padding:30px 0 18px}.epy-topic-content{padding:22px 0 42px}}


/* CHECKPOINT 20F: customer booking detail mobile account layout repair */
@media (max-width: 899px) {
  .epy-account-layout {
    width: min(100%, 560px) !important;
    max-width: 560px !important;
    margin: 16px auto 42px !important;
    padding: 0 12px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    overflow-x: hidden !important;
  }

  .epy-account-layout .epy-account-nav {
    position: relative !important;
    top: auto !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 12px !important;
    border-radius: 22px !important;
    background: rgba(255, 255, 255, .96) !important;
    box-shadow: 0 16px 36px rgba(62, 20, 82, .08) !important;
    overflow: hidden !important;
  }

  .epy-account-layout .epy-account-nav h2 {
    display: block !important;
    margin: 0 2px 2px !important;
    color: #170a31 !important;
    font-size: 1rem !important;
    line-height: 1.1 !important;
    font-weight: 950 !important;
  }

  .epy-account-layout .epy-account-nav a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: max-content !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    border: 1px solid #eadbed !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #302341 !important;
    font-size: .9rem !important;
    line-height: 1 !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    box-shadow: none !important;
  }

  .epy-account-layout .epy-account-nav a.epy-account-nav-primary,
  .epy-account-layout .epy-account-nav a.active,
  .epy-account-layout .epy-account-nav a:hover {
    border-color: #dcaee5 !important;
    background: linear-gradient(135deg, #fff7ff, #f8eaff) !important;
    color: #9d0fb5 !important;
  }

  .epy-account-layout .epy-account-nav a span {
    display: inline-flex !important;
    margin-right: 7px !important;
    font-size: 1rem !important;
    line-height: 1 !important;
  }

  .epy-account-layout .epy-account-nav {
    grid-template-columns: 1fr !important;
  }

  .epy-account-layout .epy-account-nav > a {
    flex: 0 0 auto !important;
  }

  .epy-account-layout .epy-account-nav::after {
    content: "" !important;
    display: none !important;
  }

  .epy-account-layout .epy-account-nav {
    --epy-account-scroll-gap: 8px;
  }

  .epy-account-layout .epy-account-nav h2 + a {
    margin-left: 0 !important;
  }

  .epy-account-layout .epy-account-nav h2 {
    grid-column: 1 / -1 !important;
  }

  .epy-account-layout .epy-account-nav {
    overflow-x: auto !important;
    grid-auto-flow: column !important;
    grid-auto-columns: max-content !important;
    align-items: center !important;
    scrollbar-width: thin !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .epy-account-layout .epy-account-main {
    width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  .epy-account-layout .epy-panel-heading {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    align-items: start !important;
  }

  .epy-account-layout .epy-panel-heading > div {
    min-width: 0 !important;
  }

  .epy-account-layout .epy-panel-heading h1 {
    margin: 4px 0 !important;
    color: #170a31 !important;
    font-size: clamp(2rem, 10vw, 2.85rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -.06em !important;
    overflow-wrap: anywhere !important;
  }

  .epy-account-layout .epy-panel-heading p {
    margin: 0 !important;
    color: #554863 !important;
    font-weight: 740 !important;
    overflow-wrap: anywhere !important;
  }

  .epy-account-layout .epy-form-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
  }

  .epy-account-layout .epy-form-actions .epy-btn {
    width: 100% !important;
    min-height: 54px !important;
    border-radius: 16px !important;
  }

  .epy-account-layout .epy-detail-summary-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    margin-bottom: 14px !important;
  }

  .epy-account-layout .epy-content-card {
    width: 100% !important;
    min-width: 0 !important;
    padding: 18px !important;
    border-radius: 22px !important;
    overflow: hidden !important;
  }

  .epy-account-layout .epy-card-top {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    align-items: start !important;
  }

  .epy-account-layout .epy-card-top h2 {
    margin: 0 !important;
    font-size: 1.45rem !important;
    line-height: 1.15 !important;
    letter-spacing: -.035em !important;
  }

  .epy-account-layout .epy-status {
    justify-self: start !important;
    max-width: 100% !important;
    white-space: normal !important;
    text-align: center !important;
    line-height: 1.15 !important;
  }

  .epy-account-layout .epy-definition-list > div {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 6px !important;
    padding: 13px 0 !important;
  }

  .epy-account-layout .epy-definition-list dt {
    color: #766780 !important;
    font-weight: 850 !important;
  }

  .epy-account-layout .epy-definition-list dd {
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
    font-size: 1rem !important;
    line-height: 1.45 !important;
  }

  .epy-account-layout .epy-timeline li {
    grid-template-columns: 22px minmax(0, 1fr) !important;
  }

  .epy-account-layout .epy-timeline div,
  .epy-account-layout .epy-timeline b,
  .epy-account-layout .epy-timeline small {
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
  }
}

@media (max-width: 420px) {
  .epy-account-layout {
    padding: 0 10px !important;
  }

  .epy-account-layout .epy-account-nav {
    padding: 10px !important;
    border-radius: 20px !important;
  }

  .epy-account-layout .epy-account-nav a {
    min-height: 40px !important;
    padding: 0 12px !important;
    font-size: .86rem !important;
  }

  .epy-account-layout .epy-content-card {
    padding: 16px !important;
  }

  .epy-account-layout .epy-panel-heading h1 {
    font-size: clamp(1.85rem, 10vw, 2.45rem) !important;
  }
}


/* CHECKPOINT 20F-FINAL: account nav must be horizontal scroll chips on mobile */
@media (max-width: 899px) {
  .epy-account-layout .epy-account-nav {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 10px !important;
    border-radius: 20px !important;
    scroll-snap-type: x proximity !important;
  }

  .epy-account-layout .epy-account-nav h2 {
    display: none !important;
  }

  .epy-account-layout .epy-account-nav a {
    flex: 0 0 auto !important;
    scroll-snap-align: start !important;
    max-width: none !important;
  }
}


/* CHECKPOINT 20G: salon panel full responsive repair pass */
.epy-salon-panel-modern,
.epy-salon-panel-modern * {
  min-width: 0;
}

.epy-salon-panel-modern {
  overflow-x: hidden !important;
}

.epy-salon-panel-modern .epy-panel-main {
  min-width: 0 !important;
  overflow-x: hidden !important;
}

.epy-salon-panel-modern .epy-panel-heading,
.epy-session-topbar,
.epy-dashboard-topline {
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-panel-heading h1,
.epy-session-topbar h1,
.epy-dashboard-topline h1 {
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-eyebrow {
  line-height: 1.2 !important;
}

.epy-salon-panel-modern .epy-field,
.epy-salon-panel-modern form label,
.epy-salon-panel-modern .epy-content-card > label {
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-field > span,
.epy-salon-panel-modern form label > span,
.epy-salon-panel-modern .epy-content-card > label > span {
  display: block !important;
  min-width: 0 !important;
  margin-bottom: 6px !important;
  color: var(--epy-muted) !important;
  font-size: .82rem !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern input,
.epy-salon-panel-modern select,
.epy-salon-panel-modern textarea {
  min-width: 0 !important;
  max-width: 100% !important;
}

.epy-salon-panel-modern .epy-form-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  align-items: start !important;
}

.epy-salon-panel-modern .epy-form-grid .full {
  grid-column: 1 / -1 !important;
}

.epy-salon-panel-modern .epy-form-grid .epy-field,
.epy-salon-panel-modern .epy-form-grid > label {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 6px !important;
  align-items: start !important;
}

.epy-salon-panel-modern .epy-form-grid input,
.epy-salon-panel-modern .epy-form-grid select,
.epy-salon-panel-modern .epy-form-grid textarea,
.epy-salon-panel-modern .epy-field input,
.epy-salon-panel-modern .epy-field select,
.epy-salon-panel-modern .epy-field textarea {
  width: 100% !important;
  min-height: 46px !important;
  border: 1px solid var(--epy-border) !important;
  border-radius: 13px !important;
  background: #fff !important;
  color: var(--epy-ink) !important;
  font-weight: 780 !important;
}

.epy-salon-panel-modern .epy-validation-summary {
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-validation-summary li {
  line-height: 1.4 !important;
  word-break: normal !important;
}

/* panel navigation: desktop fixed, mobile horizontal scroll */
@media (max-width: 760px) {
  body:has(.epy-salon-panel-modern) {
    overflow-x: hidden !important;
  }

  .epy-salon-panel-modern {
    width: 100% !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-panel-nav {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: none !important;
    padding: 16px 14px 12px !important;
    border-radius: 0 0 26px 26px !important;
    overflow: hidden !important;
  }

  .epy-salon-panel-modern .epy-panel-brand {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 12px !important;
    padding: 0 4px 12px !important;
    border-bottom: 1px solid rgba(255,255,255,.12) !important;
  }

  .epy-salon-panel-modern .epy-panel-brand strong {
    display: block !important;
    max-width: 245px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .epy-salon-panel-modern .epy-panel-nav nav {
    display: flex !important;
    flex-direction: row !important;
    gap: 8px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 0 2px 4px !important;
    scroll-snap-type: x proximity !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .epy-salon-panel-modern .epy-panel-nav nav a {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 48px !important;
    max-width: 210px !important;
    padding: 0 16px !important;
    border-radius: 16px !important;
    white-space: nowrap !important;
    scroll-snap-align: start !important;
  }

  .epy-salon-panel-modern .epy-panel-nav nav a span {
    flex: 0 0 auto !important;
  }

  .epy-salon-panel-modern .epy-panel-main {
    margin-left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 22px 12px 48px !important;
  }

  .epy-salon-panel-modern .epy-panel-heading {
    display: grid !important;
    gap: 14px !important;
  }

  .epy-salon-panel-modern .epy-panel-heading h1,
  .epy-session-topbar h1,
  .epy-dashboard-topline h1 {
    font-size: clamp(2rem, 9.5vw, 2.85rem) !important;
    line-height: 1.05 !important;
  }

  .epy-salon-panel-modern .epy-panel-heading p,
  .epy-session-topbar p,
  .epy-dashboard-topline p {
    font-size: 1rem !important;
    line-height: 1.48 !important;
  }

  .epy-salon-panel-modern .epy-panel-heading .epy-btn,
  .epy-session-top-actions .epy-btn {
    width: 100% !important;
  }
}

/* Tables become real cards on tablet/mobile */
@media (max-width: 1100px) {
  .epy-salon-panel-modern .epy-table-wrap {
    overflow: visible !important;
  }

  .epy-salon-panel-modern .epy-table-responsive thead {
    display: none !important;
  }

  .epy-salon-panel-modern .epy-table-responsive,
  .epy-salon-panel-modern .epy-table-responsive tbody,
  .epy-salon-panel-modern .epy-table-responsive tr,
  .epy-salon-panel-modern .epy-table-responsive td {
    display: block !important;
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-table-responsive tbody {
    display: grid !important;
    gap: 14px !important;
  }

  .epy-salon-panel-modern .epy-table-responsive tr {
    padding: 14px !important;
    border: 1px solid var(--epy-border) !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 14px 30px rgba(46, 16, 59, .06) !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 5px !important;
    padding: 10px 0 !important;
    border-bottom: 1px dashed #eadbed !important;
    text-align: left !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td:last-child {
    border-bottom: 0 !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td[data-label]:before {
    content: attr(data-label) !important;
    display: block !important;
    color: var(--epy-muted) !important;
    font-size: .78rem !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
    letter-spacing: .01em !important;
    white-space: normal !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td .epy-btn,
  .epy-salon-panel-modern .epy-table-responsive td:last-child .epy-btn {
    width: 100% !important;
    min-height: 44px !important;
    border-radius: 13px !important;
  }

  .epy-salon-panel-modern .epy-status {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: 100% !important;
    min-height: 30px !important;
    padding: 7px 10px !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    line-height: 1.15 !important;
    text-align: center !important;
  }
}

/* Calendar */
.epy-salon-panel-modern .epy-device-chips {
  display: flex !important;
  gap: 8px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding-bottom: 6px !important;
  -webkit-overflow-scrolling: touch !important;
}

.epy-salon-panel-modern .epy-device-chips button {
  flex: 0 0 auto !important;
  max-width: 220px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.epy-salon-panel-modern .epy-calendar-wrap {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

.epy-salon-panel-modern .epy-calendar-grid {
  min-width: max-content !important;
}

/* Region prices and forms */
.epy-salon-panel-modern .epy-price-row,
.epy-salon-panel-modern .epy-price-row-clean {
  display: grid !important;
  grid-template-columns: minmax(180px, 1fr) minmax(135px, .55fr) minmax(120px, .45fr) minmax(90px, .35fr) !important;
  gap: 12px !important;
  align-items: end !important;
}

.epy-salon-panel-modern .epy-price-row .epy-field,
.epy-salon-panel-modern .epy-price-row-clean .epy-field {
  display: grid !important;
  grid-template-columns: 1fr !important;
}

@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-price-row,
  .epy-salon-panel-modern .epy-price-row-clean {
    grid-template-columns: 1fr !important;
    padding: 16px !important;
    border-radius: 18px !important;
  }

  .epy-salon-panel-modern .epy-price-region {
    padding-bottom: 6px !important;
  }
}

/* Working hours */
.epy-salon-panel-modern .epy-working-hour-row {
  display: grid !important;
  grid-template-columns: minmax(150px, 1fr) repeat(4, minmax(130px, 1fr)) auto !important;
  gap: 12px !important;
  align-items: end !important;
}

.epy-salon-panel-modern .epy-working-hour-row > label {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 6px !important;
}

.epy-salon-panel-modern .epy-working-hour-row input[type=time] {
  width: 100% !important;
}

@media (max-width: 900px) {
  .epy-salon-panel-modern .epy-working-hour-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .epy-salon-panel-modern .epy-working-day {
    grid-column: 1 / -1 !important;
  }

  .epy-salon-panel-modern .epy-working-hour-row .epy-btn {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }
}

@media (max-width: 520px) {
  .epy-salon-panel-modern .epy-working-hour-row {
    grid-template-columns: 1fr !important;
  }
}

/* Check-in and session detail */
.epy-salon-panel-modern .epy-session-form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
}

@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-session-form {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-session-form .epy-btn,
  .epy-salon-panel-modern .epy-checkin-card .epy-btn {
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-session-progress {
    display: flex !important;
    overflow-x: auto !important;
    gap: 8px !important;
    padding-bottom: 6px !important;
  }

  .epy-salon-panel-modern .epy-session-progress > div {
    flex: 0 0 148px !important;
  }
}

/* Device page */
.epy-salon-panel-modern .epy-device-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
  gap: 16px !important;
}

.epy-salon-panel-modern .epy-device-card {
  display: grid !important;
  grid-template-columns: 170px minmax(0, 1fr) !important;
  grid-template-areas:
    "visual head"
    "visual chips"
    "visual actions"
    "edit edit" !important;
  gap: 14px !important;
  align-items: start !important;
  padding: 16px !important;
  border-radius: 22px !important;
}

.epy-salon-panel-modern .epy-device-visual {
  grid-area: visual !important;
  height: 150px !important;
}

.epy-salon-panel-modern .epy-device-card-head {
  grid-area: head !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

.epy-salon-panel-modern .epy-device-card-head h3,
.epy-salon-panel-modern .epy-device-card-head p {
  margin-top: 0 !important;
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-device-card .epy-chips {
  grid-area: chips !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.epy-salon-panel-modern .epy-device-card .epy-chips span {
  max-width: 100% !important;
  min-height: 30px !important;
  padding: 7px 10px !important;
  border-radius: 999px !important;
  background: var(--epy-soft) !important;
  color: var(--epy-primary) !important;
  font-size: .78rem !important;
  line-height: 1.15 !important;
  font-weight: 850 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-device-card-actions {
  grid-area: actions !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

.epy-salon-panel-modern .epy-device-card-actions form,
.epy-salon-panel-modern .epy-device-card-actions .epy-btn {
  width: 100% !important;
}

.epy-salon-panel-modern .epy-device-edit-panel {
  grid-area: edit !important;
  width: 100% !important;
}

.epy-salon-panel-modern .epy-device-edit-form {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 12px !important;
}

.epy-salon-panel-modern .epy-device-edit-form label {
  display: grid !important;
  grid-template-columns: 1fr !important;
}

.epy-salon-panel-modern .epy-device-edit-form .epy-btn,
.epy-salon-panel-modern .epy-device-edit-form button {
  width: 100% !important;
}

@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-device-grid {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-device-card {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "visual"
      "head"
      "chips"
      "actions"
      "edit" !important;
  }

  .epy-salon-panel-modern .epy-device-visual {
    height: 190px !important;
  }

  .epy-salon-panel-modern .epy-device-card-actions {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-device-edit-form {
    grid-template-columns: 1fr !important;
  }
}

/* Blocks and small lists */
.epy-salon-panel-modern .epy-block-list article,
.epy-salon-panel-modern .epy-request-list article,
.epy-salon-panel-modern .epy-admin-request-card {
  min-width: 0 !important;
  gap: 12px !important;
}

@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-block-list article,
  .epy-salon-panel-modern .epy-request-list article,
  .epy-salon-panel-modern .epy-admin-request-card {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-block-list article form,
  .epy-salon-panel-modern .epy-block-list article button {
    width: 100% !important;
  }
}

/* CHECKPOINT 20H: salon panel final responsive sweep and remaining risk guards */
.epy-salon-panel-modern {
  --panel-mobile-pad: 12px;
}

.epy-salon-panel-modern .epy-content-card,
.epy-salon-panel-modern .epy-toolbar-card,
.epy-salon-panel-modern .epy-form-submit-bar,
.epy-salon-panel-modern .epy-dialog,
.epy-salon-panel-modern .epy-panel-form-layout,
.epy-salon-panel-modern .epy-profile-form,
.epy-salon-panel-modern .epy-checkin-card,
.epy-salon-panel-modern .epy-holiday-card {
  max-width: 100% !important;
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-panel-heading .epy-btn,
.epy-salon-panel-modern .epy-btn,
.epy-salon-panel-modern button,
.epy-salon-panel-modern a.epy-btn {
  white-space: normal !important;
  text-align: center !important;
}

.epy-salon-panel-modern .epy-status,
.epy-salon-panel-modern .epy-count-badge,
.epy-salon-panel-modern .epy-capacity-badge,
.epy-salon-panel-modern .epy-sensitive,
.epy-salon-panel-modern .epy-source-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  line-height: 1.15 !important;
  max-width: 100% !important;
}

.epy-salon-panel-modern .epy-status {
  min-width: 0 !important;
  width: max-content !important;
  max-width: 100% !important;
}

.epy-salon-panel-modern .epy-table-responsive td[data-label="Durum"] .epy-status,
.epy-salon-panel-modern .epy-table-responsive td[data-label="Tutar"],
.epy-salon-panel-modern .epy-table-responsive td[data-label="İşlem"] {
  word-break: normal !important;
  overflow-wrap: normal !important;
}

/* top panel menu: prevent brand/menu overlap at every narrow breakpoint */
@media (max-width: 900px) {
  .epy-salon-panel-modern .epy-panel-nav {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  .epy-salon-panel-modern .epy-panel-brand {
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) auto !important;
    gap: 10px !important;
    align-items: center !important;
  }

  .epy-salon-panel-modern .epy-panel-brand strong,
  .epy-salon-panel-modern .epy-panel-brand small {
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .epy-salon-panel-modern .epy-panel-nav nav {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    gap: 8px !important;
    width: 100% !important;
    padding-bottom: 6px !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-snap-type: x proximity !important;
  }

  .epy-salon-panel-modern .epy-panel-nav nav a {
    flex: 0 0 auto !important;
    min-width: max-content !important;
    max-width: 230px !important;
    scroll-snap-align: start !important;
    text-overflow: ellipsis !important;
    overflow: hidden !important;
  }
}

/* all panel forms: label/input never share a tiny row on mobile */
@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-panel-main {
    padding-left: var(--panel-mobile-pad) !important;
    padding-right: var(--panel-mobile-pad) !important;
  }

  .epy-salon-panel-modern .epy-form-grid,
  .epy-salon-panel-modern .epy-panel-form-layout,
  .epy-salon-panel-modern .epy-profile-form,
  .epy-salon-panel-modern .epy-choice-grid,
  .epy-salon-panel-modern .epy-choice-grid-profile,
  .epy-salon-panel-modern .epy-toggle-grid,
  .epy-salon-panel-modern .epy-holiday-grid,
  .epy-salon-panel-modern .epy-location-search-row,
  .epy-salon-panel-modern .epy-gallery-upload-form,
  .epy-salon-panel-modern .epy-panel-two-column,
  .epy-salon-panel-modern .epy-checkin-layout,
  .epy-salon-panel-modern .epy-dashboard-grid,
  .epy-salon-panel-modern .epy-dashboard-kpi-grid,
  .epy-salon-panel-modern .epy-stat-grid,
  .epy-salon-panel-modern .epy-stat-grid-three,
  .epy-salon-panel-modern .epy-reschedule-grid,
  .epy-salon-panel-modern .epy-summary-grid,
  .epy-salon-panel-modern .epy-summary-grid-large {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern form label,
  .epy-salon-panel-modern .epy-field,
  .epy-salon-panel-modern .epy-field-block,
  .epy-salon-panel-modern .epy-content-card > label,
  .epy-salon-panel-modern .epy-holiday-card label,
  .epy-salon-panel-modern .epy-working-hour-row > label,
  .epy-salon-panel-modern .epy-price-row label,
  .epy-salon-panel-modern .epy-price-row-clean label {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern form label > span,
  .epy-salon-panel-modern .epy-field > span,
  .epy-salon-panel-modern .epy-field-block > span,
  .epy-salon-panel-modern .epy-content-card > label > span,
  .epy-salon-panel-modern .epy-holiday-card label > span,
  .epy-salon-panel-modern .epy-working-hour-row label > span,
  .epy-salon-panel-modern .epy-price-row label > span,
  .epy-salon-panel-modern .epy-price-row-clean label > span {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    line-height: 1.2 !important;
    text-align: left !important;
  }

  .epy-salon-panel-modern input,
  .epy-salon-panel-modern select,
  .epy-salon-panel-modern textarea {
    width: 100% !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-form-submit-bar,
  .epy-salon-panel-modern .epy-filter-inline-actions,
  .epy-salon-panel-modern .epy-card-actions,
  .epy-salon-panel-modern .epy-device-card-actions,
  .epy-salon-panel-modern .epy-form-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .epy-salon-panel-modern .epy-form-submit-bar .epy-btn,
  .epy-salon-panel-modern .epy-filter-inline-actions .epy-btn,
  .epy-salon-panel-modern .epy-card-actions .epy-btn,
  .epy-salon-panel-modern .epy-device-card-actions .epy-btn,
  .epy-salon-panel-modern .epy-form-actions .epy-btn {
    width: 100% !important;
    min-height: 46px !important;
  }
}

/* dashboard holiday mode card */
.epy-salon-panel-modern .epy-holiday-card {
  display: grid !important;
  gap: 12px !important;
}

.epy-salon-panel-modern .epy-switch-line {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-switch-line span {
  min-width: 0 !important;
  overflow-wrap: break-word !important;
  line-height: 1.25 !important;
}

@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-switch-line {
    grid-template-columns: auto minmax(0, 1fr) !important;
  }
}

/* manual booking region cards */
.epy-salon-panel-modern .epy-manual-region-card > span {
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-manual-region-card strong,
.epy-salon-panel-modern .epy-manual-region-card small {
  min-width: 0 !important;
  overflow-wrap: break-word !important;
}

@media (max-width: 520px) {
  .epy-salon-panel-modern .epy-manual-region-card > span {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 8px !important;
  }
}

/* calendar: keep chips readable and table scrollable */
@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-calendar-wrap {
    margin-left: calc(var(--panel-mobile-pad) * -1) !important;
    margin-right: calc(var(--panel-mobile-pad) * -1) !important;
    border-radius: 0 !important;
  }

  .epy-salon-panel-modern .epy-calendar-grid {
    min-width: 620px !important;
  }

  .epy-salon-panel-modern .epy-device-chips button {
    max-width: 180px !important;
    min-height: 42px !important;
  }
}

/* region price cards */
.epy-salon-panel-modern .epy-price-group-card .epy-section-title,
.epy-salon-panel-modern .epy-section-title {
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-section-title h2,
.epy-salon-panel-modern .epy-section-title p,
.epy-salon-panel-modern .epy-section-title span,
.epy-salon-panel-modern .epy-section-title a {
  min-width: 0 !important;
  overflow-wrap: break-word !important;
}

.epy-salon-panel-modern .epy-price-row-clean .epy-btn,
.epy-salon-panel-modern .epy-price-row .epy-btn {
  width: 100% !important;
}

@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-price-region b,
  .epy-salon-panel-modern .epy-price-region small {
    display: block !important;
    overflow-wrap: break-word !important;
  }
}

/* device page: safer mobile card layout */
@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-device-card {
    padding: 14px !important;
    border-radius: 20px !important;
  }

  .epy-salon-panel-modern .epy-device-card-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .epy-salon-panel-modern .epy-device-card .epy-chips {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
  }

  .epy-salon-panel-modern .epy-device-card .epy-chips span {
    flex: 0 1 auto !important;
    max-width: 100% !important;
  }
}

/* booking/session detail */
@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-session-customer-strip,
  .epy-salon-panel-modern .epy-detail-status-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .epy-salon-panel-modern .epy-session-reservation-no {
    text-align: left !important;
    margin-left: 0 !important;
  }

  .epy-salon-panel-modern .epy-operation-region {
    grid-template-columns: 44px minmax(0, 1fr) 28px !important;
    gap: 10px !important;
  }

  .epy-salon-panel-modern .epy-operation-region small,
  .epy-salon-panel-modern .epy-operation-region em {
    display: none !important;
  }
}


/* CHECKPOINT 20I: salon panel end-to-end responsive hardening */
.epy-salon-panel-modern,
.epy-salon-panel-modern * {
  min-width: 0;
}

.epy-salon-panel-modern .epy-panel-main {
  overflow-x: hidden !important;
}

.epy-salon-panel-modern .epy-panel-nav nav a,
.epy-salon-panel-modern .epy-btn,
.epy-salon-panel-modern .epy-status,
.epy-salon-panel-modern .epy-capacity-badge,
.epy-salon-panel-modern .epy-count-badge {
  white-space: nowrap !important;
}

.epy-salon-panel-modern .epy-panel-heading h1,
.epy-salon-panel-modern .epy-panel-heading p,
.epy-salon-panel-modern .epy-content-card h2,
.epy-salon-panel-modern .epy-section-title h2,
.epy-salon-panel-modern .epy-section-title p {
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-toolbar-card--bookings {
  align-items: stretch !important;
}

.epy-salon-panel-modern .epy-panel-booking-filter {
  grid-template-columns: minmax(180px, 1.15fr) minmax(150px, .8fr) minmax(145px, .7fr) minmax(145px, .7fr) minmax(86px, .45fr) auto !important;
  align-items: end !important;
}

.epy-salon-panel-modern .epy-panel-booking-filter label > span,
.epy-salon-panel-modern .epy-filter-inline label > span {
  white-space: nowrap !important;
  overflow: visible !important;
}

.epy-salon-panel-modern .epy-panel-booking-filter input,
.epy-salon-panel-modern .epy-panel-booking-filter select {
  height: 46px !important;
}

.epy-salon-panel-modern .epy-table-responsive td,
.epy-salon-panel-modern .epy-table-responsive td * {
  word-break: normal !important;
}

.epy-salon-panel-modern .epy-table-responsive td[data-label="Tutar"],
.epy-salon-panel-modern .epy-table-responsive td[data-label="Durum"],
.epy-salon-panel-modern .epy-table-responsive td[data-label="İşlem"] {
  white-space: nowrap !important;
}

.epy-salon-panel-modern .epy-status {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: max-content !important;
  max-width: 100% !important;
  line-height: 1.15 !important;
  padding: 7px 10px !important;
}

/* profile / iban / block / working hour forms */
.epy-salon-panel-modern .epy-form-grid > label,
.epy-salon-panel-modern .epy-form-grid .epy-field,
.epy-salon-panel-modern .epy-field-block,
.epy-salon-panel-modern .epy-panel-form-layout label,
.epy-salon-panel-modern .epy-price-row-clean label,
.epy-salon-panel-modern .epy-working-hour-row > label,
.epy-salon-panel-modern .epy-holiday-card label,
.epy-salon-panel-modern .epy-session-form label,
.epy-salon-panel-modern .epy-block-form label {
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-field > span,
.epy-salon-panel-modern .epy-field-block > span,
.epy-salon-panel-modern .epy-form-grid label > span,
.epy-salon-panel-modern .epy-working-hour-row label > span,
.epy-salon-panel-modern .epy-price-row-clean label > span {
  word-break: normal !important;
  overflow-wrap: normal !important;
  line-height: 1.15 !important;
}

.epy-salon-panel-modern .epy-form-grid input,
.epy-salon-panel-modern .epy-form-grid select,
.epy-salon-panel-modern .epy-form-grid textarea,
.epy-salon-panel-modern .epy-field-block input,
.epy-salon-panel-modern .epy-field-block textarea,
.epy-salon-panel-modern .epy-working-hour-row input,
.epy-salon-panel-modern .epy-price-row-clean input,
.epy-salon-panel-modern .epy-price-row-clean select {
  width: 100% !important;
  min-width: 0 !important;
}

/* devices page */
.epy-salon-panel-modern .epy-device-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)) !important;
  gap: 18px !important;
}

.epy-salon-panel-modern .epy-device-card {
  display: grid !important;
  grid-template-columns: 180px minmax(0, 1fr) !important;
  gap: 14px 18px !important;
  align-items: start !important;
  padding: 18px !important;
}

.epy-salon-panel-modern .epy-device-card .epy-device-visual {
  grid-row: 1 / span 3 !important;
  width: 100% !important;
  min-height: 150px !important;
  height: auto !important;
}

.epy-salon-panel-modern .epy-device-card-head {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 10px !important;
}

.epy-salon-panel-modern .epy-device-card-head h3,
.epy-salon-panel-modern .epy-device-card-head p {
  word-break: normal !important;
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-device-card .epy-chips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.epy-salon-panel-modern .epy-device-card .epy-chips span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 30px !important;
  padding: 0 10px !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-device-card-actions {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
}

.epy-salon-panel-modern .epy-device-card-actions form,
.epy-salon-panel-modern .epy-device-card-actions .epy-btn,
.epy-salon-panel-modern .epy-device-card-actions button {
  width: 100% !important;
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-device-edit-panel {
  grid-column: 1 / -1 !important;
}

/* calendar */
.epy-salon-panel-modern .epy-device-chips {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  overflow-x: auto !important;
  padding: 4px 2px 8px !important;
  -webkit-overflow-scrolling: touch !important;
}

.epy-salon-panel-modern .epy-device-chips button {
  flex: 0 0 auto !important;
  min-width: max-content !important;
  white-space: nowrap !important;
}

.epy-salon-panel-modern .epy-calendar-wrap {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

.epy-salon-panel-modern .epy-calendar-grid {
  min-width: max-content !important;
}

/* region prices */
.epy-salon-panel-modern .epy-price-row-clean {
  grid-template-columns: minmax(210px, 1fr) minmax(130px, .45fr) minmax(110px, .35fr) auto auto !important;
  align-items: end !important;
}

.epy-salon-panel-modern .epy-price-row-clean .epy-switch {
  align-self: center !important;
}

/* booking detail */
.epy-salon-panel-modern .epy-session-form {
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
}

.epy-salon-panel-modern .epy-session-form label > span {
  white-space: nowrap !important;
}

.epy-salon-panel-modern .epy-session-progress {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

.epy-salon-panel-modern .epy-session-progress > div {
  min-width: 150px !important;
}

/* checkout completed public polish */
.epy-checkout-completed-note {
  display: block;
  margin-top: 14px;
  color: var(--epy-muted, #70657b);
  font-weight: 700;
  line-height: 1.45;
}

.epy-checkout-reservation-number b {
  overflow-wrap: anywhere;
}

@media (max-width: 1280px) {
  .epy-salon-panel-modern .epy-panel-booking-filter {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .epy-salon-panel-modern .epy-filter-inline-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (max-width: 900px) {
  .epy-salon-panel-modern {
    display: block !important;
    width: 100% !important;
    max-width: 100vw !important;
    padding: 0 !important;
    overflow-x: hidden !important;
  }

  .epy-salon-panel-modern .epy-panel-nav {
    position: sticky !important;
    top: 0 !important;
    z-index: 50 !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 0 18px !important;
    padding: 14px 14px 10px !important;
    border-radius: 0 0 26px 26px !important;
    display: grid !important;
    gap: 12px !important;
    overflow: hidden !important;
  }

  .epy-salon-panel-modern .epy-panel-brand {
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) !important;
    gap: 10px !important;
    align-items: center !important;
    width: 100% !important;
    padding: 0 0 12px !important;
    margin: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.12) !important;
  }

  .epy-salon-panel-modern .epy-panel-brand > div,
  .epy-salon-panel-modern .epy-panel-brand strong,
  .epy-salon-panel-modern .epy-panel-brand small {
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .epy-salon-panel-modern .epy-panel-nav nav {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 0 0 8px !important;
    margin: 0 !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .epy-salon-panel-modern .epy-panel-nav nav a {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 46px !important;
    padding: 0 14px !important;
    border-radius: 16px !important;
    max-width: none !important;
  }

  .epy-salon-panel-modern .epy-panel-main {
    margin-left: 0 !important;
    width: 100% !important;
    padding: 16px 12px 46px !important;
    overflow-x: hidden !important;
  }

  .epy-salon-panel-modern .epy-panel-heading {
    display: grid !important;
    gap: 14px !important;
    margin-bottom: 18px !important;
  }

  .epy-salon-panel-modern .epy-panel-heading h1 {
    font-size: clamp(2rem, 11vw, 3.2rem) !important;
    line-height: 1.04 !important;
  }

  .epy-salon-panel-modern .epy-panel-heading .epy-btn,
  .epy-salon-panel-modern .epy-panel-heading a.epy-btn {
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-toolbar-card,
  .epy-salon-panel-modern .epy-content-card,
  .epy-salon-panel-modern .epy-panel-two-column,
  .epy-salon-panel-modern .epy-panel-form-layout {
    width: 100% !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-form-grid,
  .epy-salon-panel-modern .epy-panel-booking-filter,
  .epy-salon-panel-modern .epy-filter-inline,
  .epy-salon-panel-modern .epy-holiday-grid,
  .epy-salon-panel-modern .epy-price-row-clean,
  .epy-salon-panel-modern .epy-working-hour-row,
  .epy-salon-panel-modern .epy-block-form,
  .epy-salon-panel-modern .epy-session-form {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-form-grid > label,
  .epy-salon-panel-modern .epy-form-grid .epy-field,
  .epy-salon-panel-modern .epy-field-block,
  .epy-salon-panel-modern .epy-panel-form-layout label,
  .epy-salon-panel-modern .epy-price-row-clean label,
  .epy-salon-panel-modern .epy-working-hour-row > label,
  .epy-salon-panel-modern .epy-holiday-card label,
  .epy-salon-panel-modern .epy-session-form label,
  .epy-salon-panel-modern .epy-block-form label {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 7px !important;
  }

  .epy-salon-panel-modern .epy-field > span,
  .epy-salon-panel-modern .epy-field-block > span,
  .epy-salon-panel-modern .epy-form-grid label > span,
  .epy-salon-panel-modern .epy-working-hour-row label > span,
  .epy-salon-panel-modern .epy-price-row-clean label > span {
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  .epy-salon-panel-modern .epy-filter-inline-actions,
  .epy-salon-panel-modern .epy-device-card-actions,
  .epy-salon-panel-modern .epy-form-submit-bar {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-filter-inline-actions .epy-btn,
  .epy-salon-panel-modern .epy-filter-inline-actions .epy-link-button,
  .epy-salon-panel-modern .epy-device-card-actions .epy-btn,
  .epy-salon-panel-modern .epy-device-card-actions form,
  .epy-salon-panel-modern .epy-device-card-actions button,
  .epy-salon-panel-modern .epy-form-submit-bar .epy-btn,
  .epy-salon-panel-modern .epy-session-form .epy-btn {
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-table-responsive thead {
    display: none !important;
  }

  .epy-salon-panel-modern .epy-table-responsive,
  .epy-salon-panel-modern .epy-table-responsive tbody,
  .epy-salon-panel-modern .epy-table-responsive tr,
  .epy-salon-panel-modern .epy-table-responsive td {
    display: block !important;
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-table-responsive tbody {
    display: grid !important;
    gap: 12px !important;
  }

  .epy-salon-panel-modern .epy-table-responsive tr {
    border: 1px solid var(--epy-border) !important;
    border-radius: 18px !important;
    background: #fff !important;
    padding: 14px !important;
    box-shadow: 0 12px 28px rgba(42, 16, 55, .055) !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 5px !important;
    padding: 10px 0 !important;
    border: 0 !important;
    border-bottom: 1px dashed #eadbed !important;
    text-align: left !important;
    white-space: normal !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td:last-child {
    border-bottom: 0 !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td[data-label]:before {
    content: attr(data-label) !important;
    display: block !important;
    color: var(--epy-muted) !important;
    font-size: .78rem !important;
    font-weight: 900 !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td[data-label="İşlem"] .epy-btn {
    width: 100% !important;
    min-height: 42px !important;
  }

  .epy-salon-panel-modern .epy-status {
    white-space: nowrap !important;
    justify-self: start !important;
  }

  .epy-salon-panel-modern .epy-device-card {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-device-card .epy-device-visual {
    grid-row: auto !important;
    min-height: 180px !important;
  }

  .epy-salon-panel-modern .epy-session-layout,
  .epy-salon-panel-modern .epy-detail-status-row,
  .epy-salon-panel-modern .epy-summary-grid,
  .epy-salon-panel-modern .epy-summary-grid-large,
  .epy-salon-panel-modern .epy-panel-two-column {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-session-progress > div {
    min-width: 132px !important;
  }
}

@media (max-width: 420px) {
  .epy-salon-panel-modern .epy-panel-main {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .epy-salon-panel-modern .epy-content-card {
    padding: 18px !important;
    border-radius: 20px !important;
  }

  .epy-salon-panel-modern .epy-panel-heading h1 {
    font-size: clamp(1.8rem, 10vw, 2.65rem) !important;
  }
}

/* CHECKPOINT 20I: expired appointment status */

.epy-status-expired {
  background: #fff3e7 !important;
  color: #9a4a00 !important;
}

/* CHECKPOINT 20J: topic pages full-width container alignment fix */
.epy-topic-page,
main.epy-topic-page{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  overflow-x:hidden!important;
  background:linear-gradient(180deg,#fffafd 0,#fff 100%)!important;
  color:var(--epy-ink,#1d1332)!important;
}
.epy-topic-page .epy-topic-hero{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:clamp(48px,7vw,76px) 0 clamp(34px,5vw,56px)!important;
  border-bottom:1px solid #edddec!important;
  background:radial-gradient(circle at 78% 20%,rgba(255,206,90,.24),transparent 28%),linear-gradient(135deg,#fff 0%,#fff6fd 58%,#f7ecff 100%)!important;
}
.epy-topic-page .epy-topic-container{
  width:min(1120px,calc(100% - 48px))!important;
  max-width:1120px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}
.epy-topic-page .epy-topic-hero .epy-topic-container{display:block!important}
.epy-topic-page .epy-topic-hero span{display:inline-flex!important;color:var(--epy-primary,#a90bb9)!important;font-weight:950!important;font-size:.78rem!important;letter-spacing:.12em!important;text-transform:uppercase!important}
.epy-topic-page .epy-topic-hero h1{max-width:820px!important;margin:10px 0 12px!important;color:var(--epy-ink,#1d1332)!important;font-size:clamp(2.4rem,5vw,4.2rem)!important;line-height:1.02!important;letter-spacing:-.055em!important;overflow-wrap:normal!important}
.epy-topic-page .epy-topic-hero p{max-width:720px!important;margin:0!important;color:var(--epy-muted,#75677f)!important;font-weight:720!important;line-height:1.55!important}
.epy-topic-page .epy-topic-content{
  width:min(1120px,calc(100% - 48px))!important;
  max-width:1120px!important;
  margin:36px auto 64px!important;
  padding:clamp(24px,4vw,42px)!important;
  border:1px solid #eaddea!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 22px 60px rgba(73,28,88,.09)!important;
  color:var(--epy-muted,#5f5369)!important;
  line-height:1.75!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
.epy-topic-page .epy-topic-content > *:first-child{margin-top:0!important}
.epy-topic-page .epy-topic-content > *:last-child{margin-bottom:0!important}
.epy-topic-page .epy-topic-content img,
.epy-topic-page .epy-topic-content video,
.epy-topic-page .epy-topic-content iframe{max-width:100%!important;height:auto!important}
.epy-topic-page .epy-topic-content table{display:block!important;width:100%!important;overflow-x:auto!important;border-collapse:collapse!important}
.epy-topic-page .epy-topic-content a{color:var(--epy-primary,#a90bb9)!important;font-weight:850!important}
@media(max-width:760px){
  .epy-topic-page .epy-topic-container,
  .epy-topic-page .epy-topic-content{width:calc(100% - 28px)!important}
  .epy-topic-page .epy-topic-hero{padding:34px 0 28px!important}
  .epy-topic-page .epy-topic-hero h1{font-size:clamp(2rem,10vw,2.8rem)!important;letter-spacing:-.045em!important}
  .epy-topic-page .epy-topic-content{margin:18px auto 42px!important;padding:18px!important;border-radius:18px!important}
}


/* CHECKPOINT 20K: salon panel holiday date fields final responsive fix */
.epy-salon-panel-modern .epy-holiday-card {
  min-width: 0 !important;
  overflow: hidden !important;
}

.epy-salon-panel-modern .epy-holiday-card .epy-holiday-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)) !important;
  gap: 12px !important;
  width: 100% !important;
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-holiday-card .epy-holiday-grid > label,
.epy-salon-panel-modern .epy-holiday-card > label:not(.epy-switch-line) {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 7px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

.epy-salon-panel-modern .epy-holiday-card .epy-holiday-grid > label > span,
.epy-salon-panel-modern .epy-holiday-card > label:not(.epy-switch-line) > span {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  color: #746680 !important;
  font-size: .84rem !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  text-align: left !important;
}

.epy-salon-panel-modern .epy-holiday-card input[type="text"],
.epy-salon-panel-modern .epy-holiday-card input[type="datetime-local"] {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 46px !important;
  margin: 0 !important;
  padding: 0 12px !important;
  border: 1px solid var(--epy-border) !important;
  border-radius: 13px !important;
  background: #fff !important;
  color: var(--epy-ink) !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  text-align: left !important;
}

.epy-salon-panel-modern .epy-holiday-card input[type="datetime-local"] {
  font-size: .95rem !important;
}

@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-holiday-card .epy-holiday-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 420px) {
  .epy-salon-panel-modern .epy-holiday-card {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .epy-salon-panel-modern .epy-holiday-card input[type="text"],
  .epy-salon-panel-modern .epy-holiday-card input[type="datetime-local"] {
    height: 44px !important;
    font-size: .9rem !important;
  }
}

/* CHECKPOINT 20L: salon panel bookings/manual form final responsive repair */
.epy-salon-panel-modern .epy-panel-form-layout label > .epy-required-marker,
.epy-salon-panel-modern .epy-form-grid label > .epy-required-marker,
.epy-salon-panel-modern .epy-content-card form label > .epy-required-marker,
.epy-salon-panel-modern .epy-holiday-card label > .epy-required-marker,
.epy-salon-panel-modern .epy-filter-inline label > .epy-required-marker {
  display: none !important;
}

.epy-salon-panel-modern .epy-toolbar-card--bookings {
  overflow: visible !important;
}

.epy-salon-panel-modern .epy-toolbar-card--bookings .epy-panel-booking-filter {
  display: grid !important;
  grid-template-columns: minmax(170px, 1.1fr) minmax(170px, .9fr) minmax(150px, .75fr) minmax(150px, .75fr) minmax(96px, .45fr) auto !important;
  gap: 12px !important;
  align-items: end !important;
  width: 100% !important;
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-toolbar-card--bookings .epy-panel-booking-filter label {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 7px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

.epy-salon-panel-modern .epy-toolbar-card--bookings .epy-panel-booking-filter label > span {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  color: #746680 !important;
  font-size: .82rem !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  text-align: left !important;
}

.epy-salon-panel-modern .epy-toolbar-card--bookings .epy-panel-booking-filter input,
.epy-salon-panel-modern .epy-toolbar-card--bookings .epy-panel-booking-filter select {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 46px !important;
  margin: 0 !important;
}

.epy-salon-panel-modern .epy-toolbar-card--bookings .epy-filter-inline-actions {
  display: flex !important;
  align-items: end !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-toolbar-card--bookings .epy-filter-inline-actions .epy-btn,
.epy-salon-panel-modern .epy-toolbar-card--bookings .epy-filter-inline-actions .epy-link-button {
  min-height: 46px !important;
  white-space: nowrap !important;
}

@media (max-width: 1280px) {
  .epy-salon-panel-modern .epy-toolbar-card--bookings .epy-panel-booking-filter {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-toolbar-card--bookings .epy-panel-booking-filter {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-toolbar-card--bookings .epy-filter-inline-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-toolbar-card--bookings .epy-filter-inline-actions .epy-btn,
  .epy-salon-panel-modern .epy-toolbar-card--bookings .epy-filter-inline-actions .epy-link-button {
    width: 100% !important;
    justify-content: center !important;
  }
}

@media (max-width: 1100px) {
  .epy-salon-panel-modern .epy-table-wrap--bookings {
    overflow: visible !important;
    border-radius: 0 !important;
  }

  .epy-salon-panel-modern .epy-bookings-table,
  .epy-salon-panel-modern .epy-bookings-table tbody {
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 14px !important;
  }

  .epy-salon-panel-modern .epy-bookings-table thead {
    display: none !important;
  }

  .epy-salon-panel-modern .epy-bookings-table tr {
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 16px !important;
    border: 1px solid #eadbed !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg, #fff, #fffafd) !important;
    box-shadow: 0 14px 34px rgba(48, 17, 62, .06) !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td {
    display: grid !important;
    grid-template-columns: minmax(92px, 32%) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 11px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid #f1e5f2 !important;
    text-align: left !important;
    white-space: normal !important;
    line-height: 1.35 !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td:last-child {
    border-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td[data-label]::before {
    content: attr(data-label) !important;
    display: block !important;
    min-width: 0 !important;
    max-width: 100% !important;
    color: #756780 !important;
    font-size: .82rem !important;
    font-weight: 950 !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    text-align: left !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td > *:not(.epy-status) {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td[data-label="Randevu"] strong {
    display: inline-block !important;
    color: #1b1031 !important;
    font-size: 1rem !important;
    line-height: 1.25 !important;
    font-weight: 950 !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td[data-label="Tutar"] {
    text-align: left !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td[data-label="Tutar"] strong {
    justify-self: start !important;
    color: #1b1031 !important;
    font-weight: 950 !important;
    white-space: nowrap !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td[data-label="Durum"] .epy-status {
    justify-self: start !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    padding: 8px 12px !important;
    border-radius: 999px !important;
    line-height: 1.1 !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td[data-label="İşlem"] {
    grid-template-columns: 1fr !important;
    padding-top: 13px !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td[data-label="İşlem"]::before {
    display: none !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td[data-label="İşlem"] .epy-btn {
    width: 100% !important;
    min-height: 44px !important;
    border-radius: 14px !important;
  }
}

@media (max-width: 420px) {
  .epy-salon-panel-modern .epy-bookings-table tr {
    padding: 14px !important;
    border-radius: 18px !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td {
    grid-template-columns: minmax(82px, 34%) minmax(0, 1fr) !important;
    gap: 10px !important;
  }
}

/* Manual booking required marker cleanup: the labels already include the asterisk text. */
.epy-salon-panel-modern [data-manual-booking-form] label > .epy-required-marker,
.epy-salon-panel-modern [data-manual-booking-form] label > span.epy-required-marker {
  display: none !important;
}


/* CHECKPOINT 20M: salon panel required markers and switch controls final repair */
.epy-salon-panel-modern form .required,
.epy-salon-panel-modern form span.required,
.epy-salon-panel-modern form .field-validation-valid:empty,
.epy-salon-panel-modern form .field-validation-error:empty,
.epy-salon-panel-modern .epy-form-grid > span:not([class]),
.epy-salon-panel-modern .epy-panel-form-layout > span:not([class]),
.epy-salon-panel-modern .epy-price-row-clean > span:not([class]),
.epy-salon-panel-modern .epy-price-row > span:not([class]),
.epy-salon-panel-modern .epy-block-form > span:not([class]),
.epy-salon-panel-modern .epy-working-hour-row > span:not([class]) {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

/* Make every panel label behave as a safe vertical field. Prevent required star/label text from creating a side column. */
.epy-salon-panel-modern .epy-field,
.epy-salon-panel-modern .epy-field-block,
.epy-salon-panel-modern .epy-form-grid > label,
.epy-salon-panel-modern .epy-panel-form-layout label:not(.epy-switch):not(.epy-switch-line):not(.epy-switch-control),
.epy-salon-panel-modern .epy-price-row-clean > label:not(.epy-switch):not(.epy-switch-line):not(.epy-switch-control),
.epy-salon-panel-modern .epy-price-row > label:not(.epy-switch):not(.epy-switch-line):not(.epy-switch-control),
.epy-salon-panel-modern .epy-working-hour-row > label:not(.epy-switch):not(.epy-switch-line):not(.epy-switch-control) {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 7px !important;
  min-width: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
}

.epy-salon-panel-modern .epy-field > span,
.epy-salon-panel-modern .epy-field-block > span,
.epy-salon-panel-modern .epy-form-grid > label > span,
.epy-salon-panel-modern .epy-panel-form-layout label:not(.epy-switch):not(.epy-switch-line):not(.epy-switch-control) > span,
.epy-salon-panel-modern .epy-price-row-clean > label:not(.epy-switch):not(.epy-switch-line):not(.epy-switch-control) > span,
.epy-salon-panel-modern .epy-price-row > label:not(.epy-switch):not(.epy-switch-line):not(.epy-switch-control) > span,
.epy-salon-panel-modern .epy-working-hour-row > label:not(.epy-switch):not(.epy-switch-line):not(.epy-switch-control) > span {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  color: #746680 !important;
  font-size: .84rem !important;
  font-weight: 900 !important;
  line-height: 1.22 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  text-align: left !important;
}

/* Region price rows: keep desktop professional and avoid orphan required markers. */
.epy-salon-panel-modern .epy-price-row-clean {
  align-items: end !important;
  grid-template-columns: minmax(190px, 1.1fr) minmax(170px, .85fr) minmax(140px, .62fr) minmax(110px, .38fr) minmax(110px, .32fr) !important;
  gap: 14px !important;
}

.epy-salon-panel-modern .epy-price-row-clean .epy-field input {
  width: 100% !important;
  min-width: 0 !important;
}

/* Compact checkbox/switch fields, especially RegionPrices Active and WorkingHours Kapalı. */
.epy-salon-panel-modern .epy-switch,
.epy-salon-panel-modern .epy-switch-active {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 9px !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: max-content !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
  color: #302341 !important;
  font-weight: 900 !important;
}

.epy-salon-panel-modern .epy-switch input[type="checkbox"],
.epy-salon-panel-modern .epy-switch-active input[type="checkbox"] {
  position: static !important;
  display: inline-block !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  accent-color: var(--epy-primary) !important;
}

.epy-salon-panel-modern .epy-switch input[type="hidden"],
.epy-salon-panel-modern .epy-switch-active input[type="hidden"] {
  display: none !important;
}

.epy-salon-panel-modern .epy-switch span,
.epy-salon-panel-modern .epy-switch-active span {
  display: inline-block !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

/* Working hours Kapalı switch: no full-width grey bar. */
.epy-salon-panel-modern .epy-working-day {
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-working-day .epy-switch-control {
  position: relative !important;
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 9px !important;
  width: auto !important;
  max-width: max-content !important;
  min-height: 30px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #746680 !important;
  font-size: .86rem !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.epy-salon-panel-modern .epy-working-day .epy-switch-control input[type="checkbox"] {
  position: absolute !important;
  opacity: 0 !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  pointer-events: none !important;
}

.epy-salon-panel-modern .epy-working-day .epy-switch-control span {
  position: relative !important;
  display: inline-block !important;
  width: 46px !important;
  min-width: 46px !important;
  max-width: 46px !important;
  height: 26px !important;
  min-height: 26px !important;
  max-height: 26px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  background: #d7cbdc !important;
  box-shadow: inset 0 0 0 1px rgba(49, 31, 63, .05) !important;
}

.epy-salon-panel-modern .epy-working-day .epy-switch-control span::after {
  content: "" !important;
  position: absolute !important;
  top: 3px !important;
  left: 3px !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  background: #fff !important;
  box-shadow: 0 3px 9px rgba(35, 16, 48, .18) !important;
  transition: transform .18s ease !important;
}

.epy-salon-panel-modern .epy-working-day .epy-switch-control input[type="checkbox"]:checked + span {
  background: linear-gradient(135deg, #d30ed7, #8b10bd) !important;
}

.epy-salon-panel-modern .epy-working-day .epy-switch-control input[type="checkbox"]:checked + span::after {
  transform: translateX(20px) !important;
}

@media (max-width: 900px) {
  .epy-salon-panel-modern .epy-price-row-clean {
    grid-template-columns: 1fr !important;
    align-items: stretch !important;
    gap: 12px !important;
  }

  .epy-salon-panel-modern .epy-price-row-clean .epy-switch-active {
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-price-row-clean button {
    width: 100% !important;
  }
}

@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-form-grid,
  .epy-salon-panel-modern .epy-working-hour-row,
  .epy-salon-panel-modern .epy-block-form,
  .epy-salon-panel-modern .epy-panel-form-layout,
  .epy-salon-panel-modern .epy-price-row-clean {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-field,
  .epy-salon-panel-modern .epy-field-block,
  .epy-salon-panel-modern .epy-form-grid > label,
  .epy-salon-panel-modern .epy-panel-form-layout label:not(.epy-switch):not(.epy-switch-line):not(.epy-switch-control),
  .epy-salon-panel-modern .epy-price-row-clean > label:not(.epy-switch):not(.epy-switch-line):not(.epy-switch-control),
  .epy-salon-panel-modern .epy-working-hour-row > label:not(.epy-switch):not(.epy-switch-line):not(.epy-switch-control) {
    gap: 6px !important;
  }

  .epy-salon-panel-modern .epy-working-hour-row {
    padding: 18px !important;
  }

  .epy-salon-panel-modern .epy-working-day {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
  }

  .epy-salon-panel-modern .epy-working-day strong {
    min-width: 0 !important;
    overflow-wrap: break-word !important;
  }
}


/* CHECKPOINT 20N: salon/home cards 600-767 responsive final repair */
@media (max-width: 767px) {
  .epy-quick-salons .epy-quick-salon-list,
  .ep-ref-salons-page #ep-ref-salon-list,
  .ep-ref-salons-page .booking-results {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  .epy-quick-salons .salon-result-card,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card,
  .ep-ref-salons-page .booking-results .salon-result-card {
    display: block !important;
    grid-template-columns: none !important;
    grid-template-areas: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 12px !important;
    border: 1px solid #efddf1 !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, #fff 0%, #fffafd 100%) !important;
    box-shadow: 0 18px 42px rgba(55,17,70,.085) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .epy-quick-salons .salon-result-card .salon-photo-wrap,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-photo-wrap,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-photo-wrap {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 10 !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #fff, #faf6fb) !important;
    box-shadow: inset 0 0 0 1px #f3e6f4 !important;
  }

  .epy-quick-salons .salon-result-card .salon-photo-wrap img,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-photo-wrap img,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-photo-wrap img {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 10 !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 0 !important;
    padding: 0 !important;
  }

  .epy-quick-salons .salon-result-card .salon-photo-wrap img[src*="salon-placeholder"],
  .epy-quick-salons .salon-result-card .salon-photo-wrap img[src*="salon-placeholder-logo"],
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-photo-wrap img[src*="salon-placeholder"],
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-photo-wrap img[src*="salon-placeholder-logo"],
  .ep-ref-salons-page .booking-results .salon-result-card .salon-photo-wrap img[src*="salon-placeholder"],
  .ep-ref-salons-page .booking-results .salon-result-card .salon-photo-wrap img[src*="salon-placeholder-logo"] {
    object-fit: contain !important;
    padding: 22px !important;
    background: linear-gradient(135deg, #fff, #faf6fb) !important;
  }

  .epy-quick-salons .salon-result-card .salon-main,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-main,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-main {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 14px 0 0 !important;
    box-sizing: border-box !important;
  }

  .epy-quick-salons .salon-result-card .salon-main h3,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-main h3,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-main h3 {
    margin: 0 0 10px !important;
    font-size: 1.28rem !important;
    line-height: 1.12 !important;
    letter-spacing: -.035em !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
  }

  .epy-quick-salons .salon-result-card .ep-ref-card-badges,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .ep-ref-card-badges,
  .ep-ref-salons-page .booking-results .salon-result-card .ep-ref-card-badges {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    margin: 0 0 12px !important;
    max-height: 68px !important;
    overflow: hidden !important;
  }

  .epy-quick-salons .salon-result-card .ep-ref-card-badges .es-pill,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .ep-ref-card-badges .es-pill,
  .ep-ref-salons-page .booking-results .salon-result-card .ep-ref-card-badges .es-pill {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 30px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: .76rem !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
  }

  .epy-quick-salons .salon-result-card .meta-row,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .meta-row,
  .ep-ref-salons-page .booking-results .salon-result-card .meta-row {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin: 0 0 8px !important;
    color: #6d6079 !important;
    font-size: .91rem !important;
    line-height: 1.35 !important;
  }

  .epy-quick-salons .salon-result-card .feature-list.premium,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .feature-list.premium,
  .ep-ref-salons-page .booking-results .salon-result-card .feature-list.premium {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 12px 0 0 !important;
  }

  .epy-quick-salons .salon-result-card .feature-list.premium span,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .feature-list.premium span,
  .ep-ref-salons-page .booking-results .salon-result-card .feature-list.premium span {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 32px !important;
    padding: 0 11px !important;
    border: 1px solid #ead8ee !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #7a1b8d !important;
    font-size: .8rem !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
  }

  .epy-quick-salons .salon-result-card .salon-side,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-side,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-side {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 16px 0 0 !important;
    padding: 16px 0 0 !important;
    border-top: 1px solid #f0e2f2 !important;
    border-left: 0 !important;
    text-align: left !important;
    justify-items: start !important;
    box-sizing: border-box !important;
  }

  .epy-quick-salons .salon-result-card .salon-side .price-md,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-side .price-md,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-side .price-md {
    margin: 0 !important;
    color: #8c12ca !important;
    font-size: 2.05rem !important;
    line-height: 1 !important;
    font-weight: 1000 !important;
    letter-spacing: -.045em !important;
  }

  .epy-quick-salons .salon-result-card .ep-ref-side-trust,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .ep-ref-side-trust,
  .ep-ref-salons-page .booking-results .salon-result-card .ep-ref-side-trust {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 38px !important;
    border: 1px solid #ead8ee !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #6a5c76 !important;
    font-size: .86rem !important;
    font-weight: 850 !important;
  }

  .epy-quick-salons .salon-result-card .salon-side-actions,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-side-actions,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-side-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 2px 0 0 !important;
  }

  .epy-quick-salons .salon-result-card .salon-side-actions .btn-es,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-side-actions .btn-es,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-side-actions .btn-es {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 46px !important;
    padding: 0 10px !important;
    border-radius: 14px !important;
    font-size: .9rem !important;
    font-weight: 950 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}


/* CHECKPOINT 20P: payouts filters + mobile region gender selector polish */
.epy-salon-panel-modern .epy-toolbar-card--payouts {
  align-items: stretch !important;
}

.epy-salon-panel-modern .epy-panel-payout-filter {
  display: grid !important;
  grid-template-columns: minmax(180px,.9fr) minmax(170px,.75fr) minmax(170px,.75fr) minmax(120px,.45fr) auto !important;
  gap: 12px !important;
  align-items: end !important;
  min-width: 0 !important;
  width: 100% !important;
}

.epy-salon-panel-modern .epy-panel-payout-filter label,
.epy-salon-panel-modern .epy-toolbar-card--payouts .epy-filter-inline label {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 7px !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

.epy-salon-panel-modern .epy-panel-payout-filter label > span,
.epy-salon-panel-modern .epy-toolbar-card--payouts .epy-filter-inline label > span {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  color: #746680 !important;
  font-size: .82rem !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  text-align: left !important;
}

.epy-salon-panel-modern .epy-panel-payout-filter input,
.epy-salon-panel-modern .epy-panel-payout-filter select {
  width: 100% !important;
  min-width: 0 !important;
  height: 46px !important;
  margin: 0 !important;
}

.epy-salon-panel-modern .epy-toolbar-card--payouts .epy-filter-inline-actions {
  align-self: end !important;
  min-height: 46px !important;
}

@media (max-width: 1180px) {
  .epy-salon-panel-modern .epy-panel-payout-filter {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }

  .epy-salon-panel-modern .epy-toolbar-card--payouts .epy-filter-inline-actions {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (max-width: 680px) {
  .epy-salon-panel-modern .epy-panel-payout-filter {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-toolbar-card--payouts .epy-filter-inline-actions {
    grid-template-columns: 1fr !important;
  }
}

/* Mobile region selection: mannequin center is intentionally hidden, but gender selection must remain visible. */
.epy-mobile-region-gender {
  display: none;
}

@media (max-width: 760px) {
  .epy-anatomy-page .epy-mobile-region-gender {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    margin: 0 12px 16px !important;
    padding: 12px !important;
    border: 1px solid #eadbed !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg,#fff,#fff8fd) !important;
    box-shadow: 0 16px 38px rgba(63,15,79,.08) !important;
  }

  .epy-anatomy-page .epy-mobile-region-gender > span {
    grid-column: 1 / -1 !important;
    display: block !important;
    color: var(--epy-primary) !important;
    font-size: .76rem !important;
    font-weight: 950 !important;
    letter-spacing: .09em !important;
    text-transform: uppercase !important;
  }

  .epy-anatomy-page .epy-mobile-region-gender a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 48px !important;
    padding: 0 14px !important;
    border: 1px solid #e6d4ec !important;
    border-radius: 15px !important;
    background: #fff !important;
    color: #1b1031 !important;
    text-decoration: none !important;
    font-weight: 950 !important;
    text-align: center !important;
  }

  .epy-anatomy-page .epy-mobile-region-gender a.active {
    border-color: transparent !important;
    background: linear-gradient(135deg,var(--epy-primary),#651097) !important;
    color: #fff !important;
    box-shadow: 0 14px 30px rgba(169,11,185,.22) !important;
  }
}

@media (max-width: 380px) {
  .epy-anatomy-page .epy-mobile-region-gender {
    grid-template-columns: 1fr !important;
  }
}


/* CHECKPOINT 20Q: salon panel required marker final fix */
.epy-salon-panel-modern .epy-required-marker,
.epy-salon-panel-modern label > .epy-required-marker,
.epy-salon-panel-modern form label > span.epy-required-marker {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

.epy-salon-panel-modern .epy-form-grid > label,
.epy-salon-panel-modern .epy-panel-form-layout label:not(.epy-switch):not(.epy-switch-line):not(.epy-switch-control),
.epy-salon-panel-modern .epy-content-card label:not(.epy-switch):not(.epy-switch-line):not(.epy-switch-control) {
  position: relative !important;
}

.epy-salon-panel-modern .epy-form-grid > label > input,
.epy-salon-panel-modern .epy-form-grid > label > select,
.epy-salon-panel-modern .epy-form-grid > label > textarea,
.epy-salon-panel-modern .epy-panel-form-layout label > input,
.epy-salon-panel-modern .epy-panel-form-layout label > select,
.epy-salon-panel-modern .epy-panel-form-layout label > textarea {
  margin-bottom: 0 !important;
}


/* CHECKPOINT 20S: salon card CTA + panel table squeeze final fix */
/* Do not rewrite button text with pseudo content. The real markup already says Randevu Al. */
.salon-result-card .salon-side-actions .btn-es-primary,
.salon-result-card--premium .salon-side-actions .btn-es-primary,
.ep-ref-salons-page .salon-side-actions .btn-es-primary,
.epy-quick-salons .salon-side-actions .btn-es-primary {
  font-size: inherit !important;
  line-height: 1 !important;
}

.salon-result-card .salon-side-actions .btn-es-primary::after,
.salon-result-card--premium .salon-side-actions .btn-es-primary::after,
.ep-ref-salons-page .salon-side-actions .btn-es-primary::after,
.epy-quick-salons .salon-side-actions .btn-es-primary::after {
  content: none !important;
  display: none !important;
}

/* Tablet/mobile salon card CTA: prevent cramped duplicate-looking text and keep two buttons balanced. */
@media (max-width: 767px) {
  .epy-quick-salons .salon-result-card .salon-side-actions,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-side-actions,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-side-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .epy-quick-salons .salon-result-card .salon-side-actions .btn-es,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-side-actions .btn-es,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-side-actions .btn-es {
    min-width: 0 !important;
    width: 100% !important;
    padding: 0 8px !important;
    font-size: clamp(.78rem, 3.4vw, .95rem) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

@media (max-width: 360px) {
  .epy-quick-salons .salon-result-card .salon-side-actions,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-side-actions,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-side-actions {
    grid-template-columns: 1fr !important;
  }
}

/* Salon panel responsive table cards: value should not be squeezed beside label on narrow screens. */
@media (max-width: 620px) {
  .epy-salon-panel-modern .epy-table-responsive tr {
    padding: 16px !important;
    border-radius: 20px !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 5px !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 11px 0 !important;
    border-bottom: 1px solid #f0e1f2 !important;
    text-align: left !important;
    white-space: normal !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td[data-label]::before {
    display: block !important;
    width: 100% !important;
    color: #776981 !important;
    font-size: .78rem !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
    text-align: left !important;
    white-space: normal !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td > * {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td b,
  .epy-salon-panel-modern .epy-table-responsive td strong,
  .epy-salon-panel-modern .epy-table-responsive td a {
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td[data-label="Durum"] .epy-status,
  .epy-salon-panel-modern .epy-table-responsive td[data-label="İşlem"] .epy-btn,
  .epy-salon-panel-modern .epy-table-responsive td:last-child .epy-btn {
    justify-self: start !important;
    width: auto !important;
    min-width: 118px !important;
    max-width: 100% !important;
    white-space: nowrap !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td[data-label="Randevu"] b,
  .epy-salon-panel-modern .epy-bookings-table td[data-label="Randevu"] strong {
    display: block !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    line-height: 1.22 !important;
  }
}


/* CHECKPOINT 20X: salon panel upload button text visibility final fix */
/* Previous global label safety rules were too broad and affected upload labels.
   Restore upload boxes as visual dropzones and make their CTA text/icon visible. */
.epy-salon-panel-modern label.epy-upload-box,
.epy-salon-panel-modern .epy-upload-box,
.epy-salon-panel-modern .epy-gallery-upload-form label.epy-upload-box,
.epy-salon-panel-modern .epy-cover-uploader label.epy-upload-box {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  place-content: center !important;
  justify-items: center !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 176px !important;
  padding: 26px !important;
  border: 1.5px dashed #d6bddb !important;
  border-radius: 22px !important;
  background: linear-gradient(145deg, #fffafd, #fff) !important;
  color: #170a31 !important;
  text-align: center !important;
  cursor: pointer !important;
  overflow: hidden !important;
}

.epy-salon-panel-modern label.epy-upload-box:hover,
.epy-salon-panel-modern .epy-upload-box:hover {
  border-color: var(--epy-primary) !important;
  background: linear-gradient(145deg, #fff4ff, #fff) !important;
  transform: translateY(-1px) !important;
}

.epy-salon-panel-modern .epy-upload-box > input[type="file"] {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  opacity: 0 !important;
  cursor: pointer !important;
  z-index: 4 !important;
}

.epy-salon-panel-modern .epy-upload-box > .epy-upload-icon,
.epy-salon-panel-modern label.epy-upload-box > span.epy-upload-icon {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  place-items: center !important;
  width: 58px !important;
  min-width: 58px !important;
  max-width: 58px !important;
  height: 58px !important;
  min-height: 58px !important;
  max-height: 58px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, var(--epy-primary), #75109e) !important;
  color: #fff !important;
  font-size: 1.45rem !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  text-align: center !important;
  box-shadow: 0 14px 28px rgba(169, 11, 185, .18) !important;
  opacity: 1 !important;
  visibility: visible !important;
  overflow: visible !important;
}

.epy-salon-panel-modern .epy-upload-box > b,
.epy-salon-panel-modern label.epy-upload-box > b {
  position: relative !important;
  z-index: 2 !important;
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  color: #170a31 !important;
  font-size: 1.05rem !important;
  font-weight: 950 !important;
  line-height: 1.22 !important;
  text-align: center !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.epy-salon-panel-modern .epy-upload-box > small,
.epy-salon-panel-modern label.epy-upload-box > small {
  position: relative !important;
  z-index: 2 !important;
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  color: #746680 !important;
  font-size: .92rem !important;
  font-weight: 760 !important;
  line-height: 1.45 !important;
  text-align: center !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Prevent generic label > span safety rules from stretching upload icon into a blank purple bar. */
.epy-salon-panel-modern .epy-content-card label.epy-upload-box > span.epy-upload-icon,
.epy-salon-panel-modern .epy-panel-form-layout label.epy-upload-box > span.epy-upload-icon,
.epy-salon-panel-modern .epy-form-grid label.epy-upload-box > span.epy-upload-icon {
  width: 58px !important;
  max-width: 58px !important;
  min-width: 58px !important;
  color: #fff !important;
  text-align: center !important;
}

/* File input native selector buttons must never show as empty colored bars inside custom upload boxes. */
.epy-salon-panel-modern .epy-upload-box input[type="file"]::file-selector-button,
.epy-salon-panel-modern .epy-upload-box input[type="file"]::-webkit-file-upload-button {
  appearance: none !important;
  -webkit-appearance: none !important;
  width: 0 !important;
  height: 0 !important;
  opacity: 0 !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

@media (max-width: 760px) {
  .epy-salon-panel-modern label.epy-upload-box,
  .epy-salon-panel-modern .epy-upload-box,
  .epy-salon-panel-modern .epy-gallery-upload-form label.epy-upload-box,
  .epy-salon-panel-modern .epy-cover-uploader label.epy-upload-box {
    min-height: 168px !important;
    padding: 22px 18px !important;
    border-radius: 20px !important;
  }

  .epy-salon-panel-modern .epy-upload-box > .epy-upload-icon,
  .epy-salon-panel-modern label.epy-upload-box > span.epy-upload-icon {
    width: 54px !important;
    min-width: 54px !important;
    max-width: 54px !important;
    height: 54px !important;
    min-height: 54px !important;
    max-height: 54px !important;
    border-radius: 17px !important;
    font-size: 1.35rem !important;
  }

  .epy-salon-panel-modern .epy-upload-box > b,
  .epy-salon-panel-modern label.epy-upload-box > b {
    font-size: 1rem !important;
  }

  .epy-salon-panel-modern .epy-upload-box > small,
  .epy-salon-panel-modern label.epy-upload-box > small {
    font-size: .88rem !important;
  }
}


/* Checkpoint 20AA: booking stepper visibility, empty device pills, salon nav ellipsis, mobile gender short labels */
.epy-booking-stepper .done{
  color:#0d8b4f!important;
}

.epy-booking-stepper .done b{
  background:#10b864!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(16,184,100,.22)!important;
}

.epy-salon-panel-modern .epy-device-card .epy-chips span:empty{
  display:none!important;
}

.epy-salon-panel-modern .epy-panel-nav nav a{
  min-width:0!important;
}

.epy-salon-panel-modern .epy-panel-nav .epy-panel-nav-icon{
  display:grid!important;
  place-items:center!important;
  width:32px!important;
  height:32px!important;
  border-radius:11px!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  flex:0 0 auto!important;
}

.epy-salon-panel-modern .epy-panel-nav .epy-panel-nav-label{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
  height:auto!important;
  border-radius:0!important;
  background:transparent!important;
  color:inherit!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

.epy-gender-tab-short{display:none}

@media (max-width: 640px){
  .epy-gender-tab-long{display:none!important}
  .epy-gender-tab-short{display:inline!important}
}


/* CHECKPOINT 20AB: tablet booking list card layout
   Prevent Status/Action columns from hiding offscreen on tablets and narrow desktop windows. */
@media (max-width: 1240px) {
  .epy-salon-panel-modern .epy-table-wrap--bookings {
    overflow: visible !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-bookings-table {
    min-width: 0 !important;
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
  }

  .epy-salon-panel-modern .epy-bookings-table thead {
    display: none !important;
  }

  .epy-salon-panel-modern .epy-bookings-table,
  .epy-salon-panel-modern .epy-bookings-table tbody,
  .epy-salon-panel-modern .epy-bookings-table tr,
  .epy-salon-panel-modern .epy-bookings-table td {
    display: block !important;
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-bookings-table tbody {
    display: grid !important;
    gap: 14px !important;
  }

  .epy-salon-panel-modern .epy-bookings-table tr {
    border: 1px solid #eaddec !important;
    border-radius: 22px !important;
    background: linear-gradient(180deg, #fff, #fffafd) !important;
    padding: 16px 18px !important;
    box-shadow: 0 14px 34px rgba(55,18,75,.055) !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td {
    display: grid !important;
    grid-template-columns: 145px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: start !important;
    min-width: 0 !important;
    padding: 10px 0 !important;
    border: 0 !important;
    border-bottom: 1px dashed #eadbed !important;
    white-space: normal !important;
    text-align: left !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td:last-child {
    border-bottom: 0 !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td[data-label]::before {
    content: attr(data-label) !important;
    display: block !important;
    color: #776981 !important;
    font-size: .78rem !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
    letter-spacing: .01em !important;
    white-space: normal !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td[data-label="Randevu"] strong,
  .epy-salon-panel-modern .epy-bookings-table td[data-label="Cihaz"],
  .epy-salon-panel-modern .epy-bookings-table td[data-label="Bölgeler"] {
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    line-height: 1.32 !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td[data-label="Durum"] .epy-status,
  .epy-salon-panel-modern .epy-bookings-table td[data-label="İşlem"] .epy-btn {
    justify-self: start !important;
    max-width: 100% !important;
    white-space: nowrap !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td[data-label="İşlem"] .epy-btn {
    min-width: 128px !important;
    min-height: 42px !important;
  }
}

@media (max-width: 620px) {
  .epy-salon-panel-modern .epy-bookings-table td {
    grid-template-columns: 1fr !important;
    gap: 5px !important;
  }

  .epy-salon-panel-modern .epy-bookings-table td[data-label="İşlem"] .epy-btn {
    width: 100% !important;
  }
}

/* CHECKPOINT 20AC: tablet-safe salon panel session/detail responsiveness */
.epy-salon-panel-modern,
.epy-salon-panel-modern * {
  box-sizing: border-box !important;
}

.epy-salon-panel-modern .epy-panel-main,
.epy-salon-panel-modern .epy-content-card,
.epy-salon-panel-modern .epy-session-layout,
.epy-salon-panel-modern .epy-session-side,
.epy-salon-panel-modern .epy-session-code-card,
.epy-salon-panel-modern .epy-session-main-card {
  min-width: 0 !important;
  max-width: 100% !important;
}

.epy-salon-panel-modern .epy-session-code-card,
.epy-salon-panel-modern .epy-session-main-card,
.epy-salon-panel-modern .epy-history-card {
  overflow: hidden !important;
}

.epy-salon-panel-modern .epy-session-side .epy-session-form,
.epy-salon-panel-modern .epy-session-code-card .epy-session-form {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  align-items: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-session-side .epy-session-form label,
.epy-salon-panel-modern .epy-session-code-card .epy-session-form label {
  min-width: 0 !important;
  width: 100% !important;
}

.epy-salon-panel-modern .epy-session-side .epy-session-form input,
.epy-salon-panel-modern .epy-session-code-card .epy-session-form input {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

.epy-salon-panel-modern .epy-session-side .epy-session-form .epy-btn,
.epy-salon-panel-modern .epy-session-code-card .epy-session-form .epy-btn,
.epy-salon-panel-modern .epy-session-side .epy-btn-large,
.epy-salon-panel-modern .epy-session-code-card .epy-btn-large {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  white-space: normal !important;
  line-height: 1.18 !important;
  min-height: 50px !important;
}

.epy-salon-panel-modern .epy-session-side .epy-session-success,
.epy-salon-panel-modern .epy-session-code-card .epy-session-success {
  display: grid !important;
  grid-template-columns: 1fr !important;
  justify-items: start !important;
  gap: 6px !important;
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-session-side .epy-info-box,
.epy-salon-panel-modern .epy-session-code-card .epy-info-box,
.epy-salon-panel-modern .epy-history-card {
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

@media (max-width: 1440px) {
  .epy-salon-panel-modern .epy-session-layout,
  .epy-salon-panel-modern .epy-dashboard-grid,
  .epy-salon-panel-modern .epy-detail-layout {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .epy-salon-panel-modern .epy-session-side {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .epy-salon-panel-modern .epy-session-progress {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 900px) {
  .epy-salon-panel-modern .epy-panel {
    overflow-x: hidden !important;
  }

  .epy-salon-panel-modern .epy-panel-heading,
  .epy-salon-panel-modern .epy-session-customer-strip,
  .epy-salon-panel-modern .epy-operation-list-card header,
  .epy-salon-panel-modern .epy-detail-status-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    text-align: left !important;
  }

  .epy-salon-panel-modern .epy-session-reservation-no {
    margin-left: 0 !important;
    text-align: left !important;
  }

  .epy-salon-panel-modern .epy-session-progress {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    padding: 12px !important;
  }

  .epy-salon-panel-modern .epy-operation-region {
    grid-template-columns: 44px minmax(0, 1fr) auto 28px !important;
    gap: 10px !important;
  }
}

@media (max-width: 560px) {
  .epy-salon-panel-modern .epy-session-progress {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-operation-region {
    grid-template-columns: 42px minmax(0, 1fr) 28px !important;
  }

  .epy-salon-panel-modern .epy-operation-region small {
    grid-column: 2 / 3 !important;
  }
}


/* CHECKPOINT 20AE: final responsive audit hardening for salon panel/session pages */
/* Prevent tablet/desktop-between breakpoints from keeping cramped two-column layouts. */
.epy-salon-panel-modern,
.epy-salon-panel-modern *,
.epy-salon-panel-modern *::before,
.epy-salon-panel-modern *::after {
  box-sizing: border-box !important;
}

.epy-salon-panel-modern {
  max-width: 100vw !important;
  overflow-x: clip !important;
}

.epy-salon-panel-modern .epy-panel-main,
.epy-salon-panel-modern .epy-content-card,
.epy-salon-panel-modern .epy-toolbar-card,
.epy-salon-panel-modern .epy-session-main-card,
.epy-salon-panel-modern .epy-session-side,
.epy-salon-panel-modern .epy-session-code-card,
.epy-salon-panel-modern .epy-history-card {
  min-width: 0 !important;
  max-width: 100% !important;
}

@media (max-width: 1440px) {
  .epy-salon-panel-modern .epy-session-layout,
  .epy-salon-panel-modern .epy-session-detail-layout,
  .epy-salon-panel-modern .epy-session-columns,
  .epy-salon-panel-modern .epy-detail-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-session-side {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-session-code-card {
    width: 100% !important;
    min-width: 0 !important;
    padding: clamp(18px, 2.2vw, 26px) !important;
  }

  .epy-salon-panel-modern .epy-session-code-card h2 {
    font-size: clamp(1.35rem, 2.6vw, 2rem) !important;
    line-height: 1.08 !important;
    overflow-wrap: anywhere !important;
  }

  .epy-salon-panel-modern .epy-session-form {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    align-items: stretch !important;
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-session-form label,
  .epy-salon-panel-modern .epy-session-form input,
  .epy-salon-panel-modern .epy-session-form button,
  .epy-salon-panel-modern .epy-session-form .epy-btn {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-session-form input {
    height: 52px !important;
    font-size: 1rem !important;
  }

  .epy-salon-panel-modern .epy-session-success {
    display: grid !important;
    grid-template-columns: 1fr !important;
    justify-items: start !important;
    gap: 4px !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-session-success b,
  .epy-salon-panel-modern .epy-session-success span {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    white-space: normal !important;
  }

  .epy-salon-panel-modern .epy-info-box {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
  }
}

/* Booking detail operation area must not create hidden horizontal scroll on tablets. */
@media (max-width: 1240px) {
  .epy-salon-panel-modern .epy-session-customer-strip,
  .epy-salon-panel-modern .epy-session-meta-grid,
  .epy-salon-panel-modern .epy-operation-region,
  .epy-salon-panel-modern .epy-operation-list-card,
  .epy-salon-panel-modern .epy-operation-form {
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-session-customer-strip {
    grid-template-columns: 56px minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  .epy-salon-panel-modern .epy-session-reservation-no {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-summary-grid-large,
  .epy-salon-panel-modern .epy-session-meta-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .epy-salon-panel-modern .epy-session-progress {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: thin !important;
  }

  .epy-salon-panel-modern .epy-session-progress > div {
    min-width: 115px !important;
  }
}

@media (max-width: 760px) {
  .epy-salon-panel-modern {
    overflow-x: hidden !important;
  }

  .epy-salon-panel-modern .epy-panel-main {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .epy-salon-panel-modern .epy-content-card,
  .epy-salon-panel-modern .epy-session-code-card {
    border-radius: 22px !important;
    padding: 18px !important;
  }

  .epy-salon-panel-modern .epy-summary-grid-large,
  .epy-salon-panel-modern .epy-session-meta-grid {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-operation-region {
    grid-template-columns: 44px minmax(0, 1fr) auto !important;
    gap: 10px !important;
  }

  .epy-salon-panel-modern .epy-operation-region b,
  .epy-salon-panel-modern .epy-operation-region span {
    overflow-wrap: anywhere !important;
  }
}

/* Tablet booking filter/cards final guard */
@media (max-width: 1240px) {
  .epy-salon-panel-modern .epy-toolbar-card--bookings {
    grid-template-columns: 1fr !important;
    align-items: stretch !important;
  }

  .epy-salon-panel-modern .epy-panel-booking-filter {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .epy-salon-panel-modern .epy-panel-booking-filter label,
  .epy-salon-panel-modern .epy-panel-booking-filter input,
  .epy-salon-panel-modern .epy-panel-booking-filter select {
    min-width: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-count-badge {
    justify-self: start !important;
    width: auto !important;
    min-width: 90px !important;
    border-radius: 999px !important;
  }
}

@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-panel-booking-filter {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-filter-inline-actions {
    grid-template-columns: 1fr !important;
  }
}


/* CHECKPOINT 20AF: salon reviews dashboard/list and admin responsive polish */
.epy-salon-panel-modern .epy-review-kpi-grid {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)) !important;
}

.epy-salon-panel-modern .epy-salon-review-list-card {
  padding: clamp(18px, 2.2vw, 28px) !important;
}

.epy-salon-panel-modern .epy-salon-review-list {
  display: grid !important;
  gap: 14px !important;
}

.epy-salon-panel-modern .epy-salon-review-item {
  display: grid !important;
  grid-template-columns: 86px minmax(0, 1fr) !important;
  gap: 16px !important;
  padding: 18px !important;
  border: 1px solid #eaddec !important;
  border-radius: 20px !important;
  background: linear-gradient(180deg, #fff, #fffafd) !important;
  box-shadow: 0 14px 34px rgba(55, 18, 75, .055) !important;
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-review-score {
  display: grid !important;
  place-items: center !important;
  align-content: center !important;
  width: 74px !important;
  height: 74px !important;
  border-radius: 22px !important;
  background: #fff2fb !important;
  color: var(--epy-primary) !important;
}

.epy-salon-panel-modern .epy-review-score b {
  font-size: 1.6rem !important;
  line-height: 1 !important;
  font-weight: 1000 !important;
}

.epy-salon-panel-modern .epy-review-score span {
  font-size: .82rem !important;
  font-weight: 850 !important;
  color: #7a6b86 !important;
}

.epy-salon-panel-modern .epy-review-body,
.epy-salon-panel-modern .epy-review-head {
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-review-head {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

.epy-salon-panel-modern .epy-review-head h2 {
  margin: 0 0 6px !important;
  color: #18102f !important;
  font-size: 1.12rem !important;
  font-weight: 950 !important;
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-review-head p {
  margin: 0 !important;
  color: #675b72 !important;
  font-weight: 750 !important;
  line-height: 1.55 !important;
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-review-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 14px !important;
}

.epy-salon-panel-modern .epy-review-meta span {
  display: inline-flex !important;
  min-height: 30px !important;
  align-items: center !important;
  padding: 0 10px !important;
  border: 1px solid #ecdcef !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #6d6079 !important;
  font-size: .78rem !important;
  font-weight: 850 !important;
}

@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-salon-review-item {
    grid-template-columns: 1fr !important;
    padding: 16px !important;
  }
  .epy-salon-panel-modern .epy-review-score {
    width: 64px !important;
    height: 64px !important;
  }
  .epy-salon-panel-modern .epy-review-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
}


/* CHECKPOINT 20AH: live bookings refresh notice */
.epy-live-refresh-notice {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px 12px;
  align-items: center;
  margin: 0 0 18px;
  padding: 14px 16px;
  border: 1px solid #bfead4;
  border-radius: 18px;
  background: linear-gradient(135deg, #effff6, #ffffff);
  color: #126d43;
  box-shadow: 0 12px 28px rgba(15, 132, 79, .08);
}

.epy-live-refresh-notice > span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 12px;
  background: #0eb466;
  color: #fff;
  font-weight: 950;
}

.epy-live-refresh-notice b {
  display: block;
  color: #126d43;
  font-weight: 950;
}

.epy-live-refresh-notice small {
  grid-column: 2;
  color: #3d7d5f;
  font-weight: 780;
}

@media (max-width: 640px) {
  .epy-live-refresh-notice {
    grid-template-columns: 30px minmax(0, 1fr);
    padding: 12px;
    border-radius: 16px;
  }

  .epy-live-refresh-notice > span {
    width: 30px;
    height: 30px;
    border-radius: 10px;
  }
}


/* CHECKPOINT 20AI: salon panel bookings mobile cards hard fix */
/* Root fix: table layout remains desktop-only; tablet/mobile uses real cards, not CSS-converted table cells. */
.epy-salon-panel-modern .epy-booking-mobile-list {
  display: none;
}

@media (max-width: 980px) {
  .epy-salon-panel-modern .epy-content-card--bookings {
    padding: 16px !important;
  }

  .epy-salon-panel-modern .epy-table-wrap--bookings {
    display: none !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-list {
    display: grid !important;
    gap: 14px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card {
    display: grid !important;
    gap: 14px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 16px !important;
    border: 1px solid #eaddec !important;
    border-radius: 22px !important;
    background: linear-gradient(180deg, #fff, #fffafd) !important;
    box-shadow: 0 12px 30px rgba(55, 18, 75, .055) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: start !important;
    gap: 12px !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card-head span:first-child,
  .epy-salon-panel-modern .epy-booking-mobile-card dt {
    display: block !important;
    color: #746680 !important;
    font-size: .78rem !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
    letter-spacing: .01em !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card-head strong {
    display: block !important;
    margin-top: 4px !important;
    color: #170a31 !important;
    font-size: 1.08rem !important;
    line-height: 1.18 !important;
    font-weight: 1000 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card-head .epy-status {
    justify-self: end !important;
    max-width: 170px !important;
    min-height: 32px !important;
    padding: 7px 10px !important;
    border-radius: 999px !important;
    text-align: center !important;
    white-space: normal !important;
    line-height: 1.15 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card dl {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 0 !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card dl > div {
    display: grid !important;
    gap: 5px !important;
    min-width: 0 !important;
    padding: 12px !important;
    border: 1px solid #f0e3f1 !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, .72) !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card dd {
    margin: 0 !important;
    min-width: 0 !important;
    color: #1c1230 !important;
    font-size: .94rem !important;
    line-height: 1.32 !important;
    font-weight: 850 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card dd strong {
    font-size: 1.05rem !important;
    font-weight: 1000 !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-detail {
    width: 100% !important;
    min-height: 46px !important;
    justify-content: center !important;
    border-radius: 14px !important;
  }
}

@media (max-width: 640px) {
  .epy-salon-panel-modern .epy-content-card--bookings {
    padding: 12px !important;
    border-radius: 22px !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card {
    padding: 14px !important;
    border-radius: 20px !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card-head {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card-head .epy-status {
    justify-self: start !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card dl {
    grid-template-columns: 1fr !important;
  }
}

/* Emergency guard: if a converted table is still visible due to cache, prevent vertical one-letter columns. */
@media (max-width: 980px) {
  .epy-salon-panel-modern .epy-bookings-table td,
  .epy-salon-panel-modern .epy-bookings-table td[data-label],
  .epy-salon-panel-modern .epy-bookings-table td[data-label] * {
    writing-mode: horizontal-tb !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
    min-width: 0 !important;
  }
}


/* CHECKPOINT 20AI: global salon-panel responsive table fallback
   Any remaining panel table at tablet/mobile width becomes label-over-value blocks instead of squeezed columns. */
@media (max-width: 980px) {
  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table) {
    min-width: 0 !important;
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table) thead {
    display: none !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table),
  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table) tbody,
  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table) tr,
  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table) td {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table) tbody {
    display: grid !important;
    gap: 14px !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table) tr {
    padding: 16px !important;
    border: 1px solid #eaddec !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg, #fff, #fffafd) !important;
    box-shadow: 0 12px 30px rgba(55, 18, 75, .05) !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table) td {
    padding: 10px 0 !important;
    border: 0 !important;
    border-bottom: 1px dashed #eadbed !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table) td:last-child {
    border-bottom: 0 !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table) td[data-label]::before {
    content: attr(data-label) !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 5px !important;
    color: #746680 !important;
    font-size: .78rem !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table) td > * {
    max-width: 100% !important;
    min-width: 0 !important;
  }
}


/* CHECKPOINT 20AJ: salon panel full responsive hardening */
/* Real mobile cards for dashboard/payouts plus global Bootstrap-like breakpoints for every salon-panel page. */

.epy-salon-panel-modern .epy-panel-mobile-list {
  display: none;
}

@media (max-width: 980px) {
  .epy-salon-panel-modern .epy-panel-main {
    width: 100% !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    overflow-x: hidden !important;
  }

  .epy-salon-panel-modern .epy-content-card,
  .epy-salon-panel-modern .epy-toolbar-card,
  .epy-salon-panel-modern .epy-panel-heading,
  .epy-salon-panel-modern .epy-dashboard-topline,
  .epy-salon-panel-modern .epy-live-earnings-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  .epy-salon-panel-modern .epy-panel-heading,
  .epy-salon-panel-modern .epy-dashboard-topline,
  .epy-salon-panel-modern .epy-section-title {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    align-items: start !important;
  }

  .epy-salon-panel-modern .epy-panel-heading .epy-btn,
  .epy-salon-panel-modern .epy-dashboard-topline .epy-btn,
  .epy-salon-panel-modern .epy-section-title .epy-btn {
    justify-self: stretch !important;
    width: 100% !important;
  }

  .epy-salon-panel-modern h1 {
    font-size: clamp(2rem, 7vw, 3.25rem) !important;
    line-height: 1.02 !important;
    overflow-wrap: anywhere !important;
  }

  .epy-salon-panel-modern h2 {
    font-size: clamp(1.45rem, 5.5vw, 2.2rem) !important;
    line-height: 1.08 !important;
    overflow-wrap: anywhere !important;
  }

  .epy-salon-panel-modern .epy-stat-grid,
  .epy-salon-panel-modern .epy-dashboard-kpi-grid,
  .epy-salon-panel-modern .epy-dashboard-grid,
  .epy-salon-panel-modern .epy-panel-two-column,
  .epy-salon-panel-modern .epy-form-grid,
  .epy-salon-panel-modern .epy-cover-uploader,
  .epy-salon-panel-modern .epy-checkin-layout,
  .epy-salon-panel-modern .epy-device-grid,
  .epy-salon-panel-modern .epy-device-card-grid,
  .epy-salon-panel-modern .epy-choice-grid,
  .epy-salon-panel-modern .epy-manual-region-grid,
  .epy-salon-panel-modern .epy-block-list,
  .epy-salon-panel-modern .epy-profile-gallery,
  .epy-salon-panel-modern .epy-gallery-upload-form,
  .epy-salon-panel-modern .epy-location-search-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-form-grid > *,
  .epy-salon-panel-modern .epy-form-grid .full,
  .epy-salon-panel-modern .epy-location-search-row > *,
  .epy-salon-panel-modern .epy-gallery-upload-form > * {
    grid-column: auto !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern label,
  .epy-salon-panel-modern .epy-field,
  .epy-salon-panel-modern .epy-field-block,
  .epy-salon-panel-modern input,
  .epy-salon-panel-modern select,
  .epy-salon-panel-modern textarea,
  .epy-salon-panel-modern button,
  .epy-salon-panel-modern .epy-btn {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .epy-salon-panel-modern input,
  .epy-salon-panel-modern select,
  .epy-salon-panel-modern textarea {
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-form-actions,
  .epy-salon-panel-modern .epy-form-submit-bar,
  .epy-salon-panel-modern .epy-filter-inline-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-form-actions .epy-btn,
  .epy-salon-panel-modern .epy-form-submit-bar .epy-btn,
  .epy-salon-panel-modern .epy-filter-inline-actions .epy-btn,
  .epy-salon-panel-modern .epy-filter-inline-actions .epy-link-button {
    width: 100% !important;
    justify-content: center !important;
  }

  .epy-salon-panel-modern .epy-holiday-grid,
  .epy-salon-panel-modern .epy-panel-booking-filter,
  .epy-salon-panel-modern .epy-panel-payout-filter {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-working-hour-row,
  .epy-salon-panel-modern .epy-price-form,
  .epy-salon-panel-modern .epy-region-price-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-working-day,
  .epy-salon-panel-modern .epy-current-iban,
  .epy-salon-panel-modern .epy-location-confirmation {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
  }

  .epy-salon-panel-modern .epy-cover-preview,
  .epy-salon-panel-modern .epy-profile-map {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-table-wrap:not(.epy-table-wrap--bookings):not(.epy-table-wrap--payouts),
  .epy-salon-panel-modern .epy-table-wrap--payouts,
  .epy-salon-panel-modern .epy-active-session-card .epy-table-wrap,
  .epy-salon-panel-modern .epy-dashboard-latest-bookings-card .epy-table-wrap {
    display: none !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-list,
  .epy-salon-panel-modern .epy-payout-mobile-list,
  .epy-salon-panel-modern .epy-active-session-mobile-list,
  .epy-salon-panel-modern .epy-latest-bookings-mobile-list {
    display: grid !important;
    gap: 14px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card {
    display: grid !important;
    gap: 14px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 16px !important;
    border: 1px solid #eaddec !important;
    border-radius: 22px !important;
    background: linear-gradient(180deg, #fff, #fffafd) !important;
    box-shadow: 0 12px 30px rgba(55, 18, 75, .055) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: start !important;
    gap: 12px !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card-head span:first-child,
  .epy-salon-panel-modern .epy-panel-mobile-card dt {
    display: block !important;
    color: #746680 !important;
    font-size: .78rem !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
    letter-spacing: .01em !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card-head strong {
    display: block !important;
    margin-top: 4px !important;
    color: #170a31 !important;
    font-size: 1.08rem !important;
    line-height: 1.18 !important;
    font-weight: 1000 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card-head .epy-status {
    justify-self: end !important;
    max-width: 170px !important;
    min-height: 32px !important;
    padding: 7px 10px !important;
    border-radius: 999px !important;
    text-align: center !important;
    white-space: normal !important;
    line-height: 1.15 !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card dl {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 0 !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card dl > div {
    display: grid !important;
    gap: 5px !important;
    min-width: 0 !important;
    padding: 12px !important;
    border: 1px solid #f0e3f1 !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, .72) !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card dd {
    margin: 0 !important;
    min-width: 0 !important;
    color: #1c1230 !important;
    font-size: .94rem !important;
    line-height: 1.32 !important;
    font-weight: 850 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card dd strong {
    font-size: 1.05rem !important;
    font-weight: 1000 !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-detail,
  .epy-salon-panel-modern .epy-booking-mobile-detail {
    width: 100% !important;
    min-height: 46px !important;
    justify-content: center !important;
    border-radius: 14px !important;
  }
}

@media (max-width: 640px) {
  .epy-salon-panel-modern .epy-panel-main {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .epy-salon-panel-modern .epy-content-card,
  .epy-salon-panel-modern .epy-toolbar-card,
  .epy-salon-panel-modern .epy-live-earnings-card {
    border-radius: 20px !important;
    padding: 14px !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card {
    padding: 14px !important;
    border-radius: 20px !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card-head {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card-head .epy-status {
    justify-self: start !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card dl {
    grid-template-columns: 1fr !important;
  }
}


/* CHECKPOINT 20AK: salon panel tablet breakpoint root fix
   The salon panel keeps a left navigation column on tablets. Therefore the content column is much narrower than the viewport.
   Tables must switch to card/list layout at <=1280px, not <=980px. */
@media (max-width: 1280px) {
  .epy-salon-panel-modern .epy-panel-main {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  /* Bookings: never show CSS-converted table on tablet/narrow desktop. Use real cards. */
  .epy-salon-panel-modern .epy-content-card--bookings {
    padding: 16px !important;
  }

  .epy-salon-panel-modern .epy-table-wrap--bookings,
  .epy-salon-panel-modern .epy-content-card--bookings > .epy-table-wrap,
  .epy-salon-panel-modern .epy-content-card--bookings .epy-bookings-table {
    display: none !important;
    visibility: hidden !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-list {
    display: grid !important;
    visibility: visible !important;
    gap: 14px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card {
    display: grid !important;
    gap: 14px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 16px !important;
    border: 1px solid #eaddec !important;
    border-radius: 22px !important;
    background: linear-gradient(180deg, #fff, #fffafd) !important;
    box-shadow: 0 12px 30px rgba(55, 18, 75, .055) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: start !important;
    gap: 12px !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card-head span:first-child,
  .epy-salon-panel-modern .epy-booking-mobile-card dt {
    display: block !important;
    color: #746680 !important;
    font-size: .78rem !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
    letter-spacing: .01em !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card-head strong {
    display: block !important;
    margin-top: 4px !important;
    color: #170a31 !important;
    font-size: 1.08rem !important;
    line-height: 1.18 !important;
    font-weight: 1000 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    writing-mode: horizontal-tb !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card-head .epy-status {
    justify-self: end !important;
    max-width: 180px !important;
    min-height: 32px !important;
    padding: 7px 10px !important;
    border-radius: 999px !important;
    text-align: center !important;
    white-space: normal !important;
    line-height: 1.15 !important;
    writing-mode: horizontal-tb !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card dl {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 0 !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card dl > div {
    display: grid !important;
    gap: 5px !important;
    min-width: 0 !important;
    padding: 12px !important;
    border: 1px solid #f0e3f1 !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, .72) !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card dd {
    margin: 0 !important;
    min-width: 0 !important;
    color: #1c1230 !important;
    font-size: .94rem !important;
    line-height: 1.32 !important;
    font-weight: 850 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    writing-mode: horizontal-tb !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card dd strong {
    font-size: 1.05rem !important;
    font-weight: 1000 !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-detail {
    width: 100% !important;
    min-height: 46px !important;
    justify-content: center !important;
    border-radius: 14px !important;
  }

  /* Payouts + dashboard tables: use real mobile card lists where markup exists. */
  .epy-salon-panel-modern .epy-table-wrap--payouts,
  .epy-salon-panel-modern .epy-active-session-card .epy-table-wrap,
  .epy-salon-panel-modern .epy-dashboard-latest-bookings-card .epy-table-wrap {
    display: none !important;
    visibility: hidden !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-list,
  .epy-salon-panel-modern .epy-payout-mobile-list,
  .epy-salon-panel-modern .epy-active-session-mobile-list,
  .epy-salon-panel-modern .epy-latest-bookings-mobile-list {
    display: grid !important;
    visibility: visible !important;
    gap: 14px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card {
    display: grid !important;
    gap: 14px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 16px !important;
    border: 1px solid #eaddec !important;
    border-radius: 22px !important;
    background: linear-gradient(180deg, #fff, #fffafd) !important;
    box-shadow: 0 12px 30px rgba(55, 18, 75, .055) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: start !important;
    gap: 12px !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card-head span:first-child,
  .epy-salon-panel-modern .epy-panel-mobile-card dt {
    display: block !important;
    color: #746680 !important;
    font-size: .78rem !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
    letter-spacing: .01em !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card-head strong {
    display: block !important;
    margin-top: 4px !important;
    color: #170a31 !important;
    font-size: 1.08rem !important;
    line-height: 1.18 !important;
    font-weight: 1000 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    writing-mode: horizontal-tb !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card dl {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 0 !important;
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card dl > div {
    display: grid !important;
    gap: 5px !important;
    min-width: 0 !important;
    padding: 12px !important;
    border: 1px solid #f0e3f1 !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, .72) !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-card dd {
    margin: 0 !important;
    min-width: 0 !important;
    color: #1c1230 !important;
    font-size: .94rem !important;
    line-height: 1.32 !important;
    font-weight: 850 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    writing-mode: horizontal-tb !important;
  }

  .epy-salon-panel-modern .epy-panel-mobile-detail,
  .epy-salon-panel-modern .epy-booking-mobile-detail {
    width: 100% !important;
    min-height: 46px !important;
    justify-content: center !important;
    border-radius: 14px !important;
  }

  /* Remaining tables without real mobile markup: label/value card fallback at tablet width. */
  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table):not(.epy-payouts-table) {
    min-width: 0 !important;
    width: 100% !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table):not(.epy-payouts-table) thead {
    display: none !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table):not(.epy-payouts-table),
  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table):not(.epy-payouts-table) tbody,
  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table):not(.epy-payouts-table) tr,
  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table):not(.epy-payouts-table) td {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    writing-mode: horizontal-tb !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table):not(.epy-payouts-table) tbody {
    display: grid !important;
    gap: 14px !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table):not(.epy-payouts-table) tr {
    padding: 16px !important;
    border: 1px solid #eaddec !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg, #fff, #fffafd) !important;
    box-shadow: 0 12px 30px rgba(55, 18, 75, .05) !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table):not(.epy-payouts-table) td {
    padding: 10px 0 !important;
    border: 0 !important;
    border-bottom: 1px dashed #eadbed !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table):not(.epy-payouts-table) td:last-child {
    border-bottom: 0 !important;
  }

  .epy-salon-panel-modern .epy-table-responsive:not(.epy-bookings-table):not(.epy-payouts-table) td[data-label]::before {
    content: attr(data-label) !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 5px !important;
    color: #746680 !important;
    font-size: .78rem !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
  }

  .epy-salon-panel-modern .epy-table-responsive td,
  .epy-salon-panel-modern .epy-table-responsive td *,
  .epy-salon-panel-modern .epy-bookings-table td,
  .epy-salon-panel-modern .epy-bookings-table td *,
  .epy-salon-panel-modern .epy-payouts-table td,
  .epy-salon-panel-modern .epy-payouts-table td * {
    writing-mode: horizontal-tb !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
    min-width: 0 !important;
  }
}

@media (max-width: 640px) {
  .epy-salon-panel-modern .epy-booking-mobile-card-head,
  .epy-salon-panel-modern .epy-panel-mobile-card-head {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card-head .epy-status,
  .epy-salon-panel-modern .epy-panel-mobile-card-head .epy-status {
    justify-self: start !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-booking-mobile-card dl,
  .epy-salon-panel-modern .epy-panel-mobile-card dl {
    grid-template-columns: 1fr !important;
  }
}


/* CHECKPOINT 20AL: salon panel hamburger breakpoint + price/working form overflow fix */
/* Collapse salon-panel side menu before tablet layouts break. */
.epy-salon-panel-modern .epy-panel-menu-toggle {
  display: none;
}

@media (max-width: 1280px) {
  .epy-panel.epy-salon-panel-modern {
    display: block !important;
    width: min(100%, 1120px) !important;
    max-width: 100vw !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow-x: hidden !important;
  }

  .epy-panel.epy-salon-panel-modern > .epy-panel-nav {
    position: sticky !important;
    inset: auto !important;
    top: 0 !important;
    z-index: 100 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 0 18px !important;
    padding: 14px !important;
    border-radius: 0 0 24px 24px !important;
    overflow: visible !important;
    box-shadow: 0 18px 42px rgba(15, 5, 30, .18) !important;
  }

  .epy-panel.epy-salon-panel-modern > .epy-panel-main {
    margin-left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 28px 24px 56px !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  .epy-salon-panel-modern .epy-panel-brand {
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr) auto !important;
    gap: 12px !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  .epy-salon-panel-modern .epy-panel-brand div {
    min-width: 0 !important;
  }

  .epy-salon-panel-modern .epy-panel-brand strong {
    display: block !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .epy-salon-panel-modern .epy-panel-menu-toggle {
    display: inline-grid !important;
    grid-template-columns: 1fr !important;
    place-items: center !important;
    gap: 4px !important;
    width: 54px !important;
    height: 48px !important;
    min-width: 54px !important;
    padding: 0 !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 16px !important;
    background: rgba(255,255,255,.08) !important;
    color: #fff !important;
    cursor: pointer !important;
  }

  .epy-salon-panel-modern .epy-panel-menu-toggle span {
    display: block !important;
    width: 23px !important;
    height: 2px !important;
    border-radius: 99px !important;
    background: #fff !important;
  }

  .epy-salon-panel-modern .epy-panel-menu-toggle b {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
  }

  .epy-salon-panel-modern .epy-panel-nav nav {
    display: none !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-top: 14px !important;
    padding-top: 14px !important;
    border-top: 1px solid rgba(255,255,255,.12) !important;
    max-height: min(68vh, 580px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  .epy-salon-panel-modern .epy-panel-nav.is-open nav {
    display: grid !important;
  }

  .epy-salon-panel-modern .epy-panel-nav nav a {
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 10px !important;
    min-width: 0 !important;
    min-height: 46px !important;
    margin: 0 !important;
  }

  .epy-salon-panel-modern .epy-panel-nav .epy-panel-nav-label {
    white-space: nowrap !important;
  }

  /* Region prices and working hours: no row can overflow at tablet widths. */
  .epy-salon-panel-modern .epy-price-row-clean,
  .epy-salon-panel-modern .epy-working-hour-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    align-items: end !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  .epy-salon-panel-modern .epy-price-region,
  .epy-salon-panel-modern .epy-working-day {
    grid-column: 1 / -1 !important;
  }

  .epy-salon-panel-modern .epy-price-row-clean .epy-field,
  .epy-salon-panel-modern .epy-price-row-clean input,
  .epy-salon-panel-modern .epy-working-hour-row label,
  .epy-salon-panel-modern .epy-working-hour-row input {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-price-row-clean .epy-switch,
  .epy-salon-panel-modern .epy-working-hour-row .epy-switch-control {
    justify-self: start !important;
    align-self: center !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .epy-salon-panel-modern .epy-price-row-clean .epy-btn,
  .epy-salon-panel-modern .epy-working-hour-row .epy-btn {
    justify-self: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    grid-column: auto !important;
  }
}

@media (max-width: 760px) {
  .epy-panel.epy-salon-panel-modern > .epy-panel-main {
    padding: 22px 12px 48px !important;
  }

  .epy-salon-panel-modern .epy-panel-nav nav {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-price-row-clean,
  .epy-salon-panel-modern .epy-working-hour-row {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-price-row-clean .epy-btn,
  .epy-salon-panel-modern .epy-working-hour-row .epy-btn,
  .epy-salon-panel-modern .epy-price-row-clean .epy-switch,
  .epy-salon-panel-modern .epy-working-hour-row .epy-switch-control {
    grid-column: 1 / -1 !important;
  }
}

/* Profile gallery: allow salon owner to choose which image is used on salon cards. */
.epy-salon-panel-modern .epy-profile-gallery-actions {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  gap: 8px !important;
  align-items: center !important;
  padding: 10px !important;
}

.epy-salon-panel-modern .epy-profile-gallery-actions > span {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.epy-salon-panel-modern .epy-gallery-cover-button {
  min-height: 34px !important;
  padding: 0 11px !important;
  border: 1px solid #e7d6eb !important;
  border-radius: 999px !important;
  background: #fff8ff !important;
  color: #a20ab0 !important;
  font-weight: 950 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}

.epy-salon-panel-modern .epy-gallery-cover-button:hover {
  border-color: #b20aaa !important;
  background: #fff1ff !important;
}

@media (max-width: 520px) {
  .epy-salon-panel-modern .epy-profile-gallery-actions {
    grid-template-columns: 1fr auto !important;
  }

  .epy-salon-panel-modern .epy-gallery-cover-button {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }
}


/* CHECKPOINT 20AM: robust salon panel hamburger menu open fix */
/* CSS checkbox fallback: menu opens even if JavaScript is cached, deferred, or blocked. */
.epy-salon-panel-modern .epy-panel-menu-state {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  clip: rect(0, 0, 0, 0) !important;
}

@media (max-width: 1280px) {
  .epy-panel.epy-salon-panel-modern > .epy-panel-nav {
    overflow: visible !important;
  }

  .epy-salon-panel-modern .epy-panel-menu-toggle {
    user-select: none !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  .epy-salon-panel-modern .epy-panel-menu-state:checked ~ nav,
  .epy-salon-panel-modern .epy-panel-nav.is-open nav,
  .epy-panel.epy-salon-panel-modern > .epy-panel-nav.is-open > nav,
  .epy-panel.epy-salon-panel-modern > .epy-panel-nav > .epy-panel-menu-state:checked ~ nav#epy-panel-nav-menu {
    display: grid !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: min(68vh, 580px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  .epy-salon-panel-modern .epy-panel-menu-state:checked ~ .epy-panel-brand .epy-panel-menu-toggle,
  .epy-salon-panel-modern .epy-panel-nav.is-open .epy-panel-menu-toggle {
    background: linear-gradient(135deg, #b20aaa, #6f0794) !important;
    border-color: rgba(255,255,255,.28) !important;
    box-shadow: 0 14px 34px rgba(178,10,170,.25) !important;
  }

  .epy-salon-panel-modern .epy-panel-menu-state:checked ~ .epy-panel-brand .epy-panel-menu-toggle span:nth-child(1),
  .epy-salon-panel-modern .epy-panel-nav.is-open .epy-panel-menu-toggle span:nth-child(1) {
    transform: translateY(6px) rotate(45deg) !important;
  }

  .epy-salon-panel-modern .epy-panel-menu-state:checked ~ .epy-panel-brand .epy-panel-menu-toggle span:nth-child(2),
  .epy-salon-panel-modern .epy-panel-nav.is-open .epy-panel-menu-toggle span:nth-child(2) {
    opacity: 0 !important;
  }

  .epy-salon-panel-modern .epy-panel-menu-state:checked ~ .epy-panel-brand .epy-panel-menu-toggle span:nth-child(3),
  .epy-salon-panel-modern .epy-panel-nav.is-open .epy-panel-menu-toggle span:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg) !important;
  }
}

/* CHECKPOINT 20AN: salon panel device request matches salon application device flow */
.epy-device-request-card .epy-info-note {
  margin-bottom: 18px !important;
}

.epy-device-request-form {
  display: grid !important;
  gap: 22px !important;
}

.epy-device-request-block {
  display: grid !important;
  gap: 16px !important;
  padding: 18px !important;
  border: 1px solid #eaddec !important;
  border-radius: 22px !important;
  background: linear-gradient(180deg, #fff, #fffafd) !important;
}

.epy-device-request-block h3 {
  margin: 0 !important;
  color: #180d30 !important;
  font-size: 1.25rem !important;
  font-weight: 950 !important;
}

.epy-device-request-media-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.epy-device-request-media-slot {
  position: relative !important;
  display: grid !important;
  gap: 10px !important;
  min-width: 0 !important;
  padding: 16px !important;
  border: 1.5px solid #ead7ef !important;
  border-radius: 20px !important;
  background: #fff !important;
  cursor: pointer !important;
  overflow: hidden !important;
}

.epy-device-request-media-slot.is-uploaded {
  border-color: #31c987 !important;
  background: linear-gradient(180deg, #f5fff9, #fff) !important;
}

.epy-device-request-media-slot > b {
  display: grid !important;
  place-items: center !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #b20aaa, #6f0794) !important;
  color: #fff !important;
  font-weight: 950 !important;
}

.epy-device-request-media-slot strong {
  color: #180d30 !important;
  font-size: .98rem !important;
  font-weight: 950 !important;
  line-height: 1.15 !important;
}

.epy-device-request-media-slot strong em {
  display: inline-grid !important;
  margin-left: 4px !important;
  padding: 3px 7px !important;
  border-radius: 999px !important;
  background: #fff0ff !important;
  color: #b20aaa !important;
  font-size: .68rem !important;
  font-style: normal !important;
}

.epy-device-request-media-slot small,
.epy-device-request-media-slot > em {
  color: #796a84 !important;
  font-weight: 750 !important;
  line-height: 1.35 !important;
}

.epy-device-request-preview {
  display: grid !important;
  place-items: center !important;
  min-height: 110px !important;
  border: 1px solid #eaddec !important;
  border-radius: 16px !important;
  background: #fff7ff !important;
  color: #a58cac !important;
  font-weight: 900 !important;
}

.epy-device-request-media-slot u {
  display: grid !important;
  place-items: center !important;
  min-height: 38px !important;
  border: 1px solid #dcb3e6 !important;
  border-radius: 14px !important;
  color: #8f069b !important;
  font-weight: 950 !important;
  text-decoration: none !important;
}

.epy-device-request-media-slot input[type="file"] {
  position: absolute !important;
  inset: 0 !important;
  opacity: 0 !important;
  cursor: pointer !important;
}

.epy-admin-device-media-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
  gap: 14px !important;
}

.epy-admin-device-media-grid article {
  display: grid !important;
  gap: 8px !important;
  padding: 12px !important;
  border: 1px solid #eaddec !important;
  border-radius: 16px !important;
  background: #fff !important;
}

.epy-admin-device-media-grid img {
  width: 100% !important;
  height: 130px !important;
  object-fit: cover !important;
  border-radius: 12px !important;
  background: #fff5ff !important;
}

.epy-admin-media-missing {
  display: grid !important;
  place-items: center !important;
  height: 130px !important;
  border-radius: 12px !important;
  background: #f6edf8 !important;
  color: #8a7896 !important;
  font-weight: 900 !important;
}

@media (max-width: 980px) {
  .epy-device-request-media-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .epy-device-request-media-grid {
    grid-template-columns: 1fr !important;
  }

  .epy-device-request-block {
    padding: 14px !important;
    border-radius: 18px !important;
  }
}


/* CHECKPOINT 20AO: salon panel device media slot layout fix
   Fixes broken vertical text in /salon-panel/Devices > Cihaz görselleri cards. */
.epy-salon-panel-modern .epy-device-request-media-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 285px), 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
}

.epy-salon-panel-modern .epy-device-request-media-slot {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  grid-template-areas:
    "num title"
    "num hint"
    "preview preview"
    "upload upload"
    "filename filename" !important;
  align-content: start !important;
  align-items: start !important;
  gap: 8px 12px !important;
  min-width: 0 !important;
  min-height: 260px !important;
  padding: 16px !important;
  border: 1.5px solid #ead7ef !important;
  border-radius: 20px !important;
  background: linear-gradient(180deg, #fff, #fffafd) !important;
  cursor: pointer !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  writing-mode: horizontal-tb !important;
}

.epy-salon-panel-modern .epy-device-request-media-slot,
.epy-salon-panel-modern .epy-device-request-media-slot * {
  writing-mode: horizontal-tb !important;
  word-break: normal !important;
  overflow-wrap: anywhere !important;
  box-sizing: border-box !important;
}

.epy-salon-panel-modern .epy-device-request-media-slot > b {
  grid-area: num !important;
  display: grid !important;
  place-items: center !important;
  width: 34px !important;
  min-width: 34px !important;
  max-width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  max-height: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #b20aaa, #6f0794) !important;
  color: #fff !important;
  font-weight: 950 !important;
  font-size: .92rem !important;
  line-height: 1 !important;
}

.epy-salon-panel-modern .epy-device-request-media-slot strong {
  grid-area: title !important;
  display: block !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #180d30 !important;
  font-size: 1rem !important;
  font-weight: 950 !important;
  line-height: 1.18 !important;
  white-space: normal !important;
}

.epy-salon-panel-modern .epy-device-request-media-slot strong em {
  display: inline-grid !important;
  vertical-align: middle !important;
  margin-left: 6px !important;
  padding: 3px 8px !important;
  border-radius: 999px !important;
  background: #fff0ff !important;
  color: #b20aaa !important;
  font-size: .68rem !important;
  font-style: normal !important;
  font-weight: 950 !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
}

.epy-salon-panel-modern .epy-device-request-media-slot small {
  grid-area: hint !important;
  display: block !important;
  min-width: 0 !important;
  margin: 0 !important;
  color: #796a84 !important;
  font-weight: 760 !important;
  font-size: .84rem !important;
  line-height: 1.35 !important;
  white-space: normal !important;
}

.epy-salon-panel-modern .epy-device-request-preview {
  grid-area: preview !important;
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 118px !important;
  margin: 6px 0 0 !important;
  border: 1px solid #eaddec !important;
  border-radius: 16px !important;
  background: #fff7ff !important;
  color: #a58cac !important;
  font-weight: 900 !important;
  overflow: hidden !important;
}

.epy-salon-panel-modern .epy-device-request-preview i {
  display: block !important;
  max-width: 100% !important;
  padding: 0 10px !important;
  font-style: normal !important;
  text-align: center !important;
  line-height: 1.2 !important;
  white-space: normal !important;
}

.epy-salon-panel-modern .epy-device-request-preview img,
.epy-salon-panel-modern .epy-device-request-preview [data-epy-file-preview-image] {
  width: 100% !important;
  height: 118px !important;
  object-fit: cover !important;
  display: block !important;
}

.epy-salon-panel-modern .epy-device-request-media-slot u {
  grid-area: upload !important;
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 0 12px !important;
  border: 1px solid #dcb3e6 !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: #8f069b !important;
  font-weight: 950 !important;
  text-decoration: none !important;
  text-align: center !important;
  line-height: 1.15 !important;
  white-space: normal !important;
}

.epy-salon-panel-modern .epy-device-request-media-slot > em:not(.epy-required-pill),
.epy-salon-panel-modern .epy-device-request-media-slot [data-file-name] {
  grid-area: filename !important;
  display: block !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  color: #796a84 !important;
  font-weight: 760 !important;
  font-size: .82rem !important;
  line-height: 1.3 !important;
  font-style: normal !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.epy-salon-panel-modern .epy-device-request-media-slot input[type="file"] {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  opacity: 0 !important;
  cursor: pointer !important;
  z-index: 5 !important;
}

.epy-salon-panel-modern .epy-device-request-media-slot.is-uploaded {
  border-color: #31c987 !important;
  background: linear-gradient(180deg, #f5fff9, #fff) !important;
}

.epy-salon-panel-modern .epy-device-request-media-slot.is-uploaded u {
  border-color: #31c987 !important;
  color: #0b8f56 !important;
  background: #effff6 !important;
}

@media (max-width: 760px) {
  .epy-salon-panel-modern .epy-device-request-media-grid {
    grid-template-columns: 1fr !important;
  }

  .epy-salon-panel-modern .epy-device-request-media-slot {
    min-height: 238px !important;
    padding: 14px !important;
    border-radius: 18px !important;
  }
}


/* CHECKPOINT 20AV: scoped clean-rebase gallery feedback only */
.epy-salon-panel-modern .epy-upload-box.is-selected {
  border-color: var(--epy-primary) !important;
  background: var(--epy-soft) !important;
}
.epy-salon-panel-modern .epy-gallery-cover-button.is-current {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: default !important;
  background: #f3e8f6 !important;
  color: #6f177c !important;
}

/* CHECKPOINT 20AW: güvenli salon tanıtım metni editörü */
.epy-rich-editor{display:grid;gap:8px;min-width:0}.epy-rich-editor-toolbar{display:flex;flex-wrap:wrap;gap:6px;padding:8px;border:1px solid #eaddec;border-bottom:0;border-radius:14px 14px 0 0;background:#fbf7fc}.epy-rich-editor-toolbar button{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:34px;padding:0 10px;border:1px solid #e4d4e8;border-radius:9px;background:#fff;color:#291337;font-weight:850;cursor:pointer}.epy-rich-editor-toolbar button:hover,.epy-rich-editor-toolbar button:focus-visible{border-color:#a90bb9;color:#8b0797;outline:none}.epy-rich-editor-surface{min-height:180px;max-height:460px;overflow:auto;padding:15px;border:1px solid #dcccdf;border-radius:0 0 14px 14px;background:#fff;color:#20142d;line-height:1.65;outline:none}.epy-rich-editor-surface:focus{border-color:#a90bb9;box-shadow:0 0 0 4px rgba(169,11,185,.09)}.epy-rich-editor-surface:empty:before{content:attr(data-placeholder);color:#9a8ca2;pointer-events:none}.epy-rich-editor.is-ready textarea[data-epy-rich-source]{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}.epy-rich-editor-help{color:#776a80;font-size:.8rem;line-height:1.4}@media(max-width:600px){.epy-rich-editor-toolbar button{flex:1 1 auto}.epy-rich-editor-surface{min-height:160px}}

/* CHECKPOINT 20AW: scoped salon card favorites, popularity filter and mobile price alignment */
.salon-result-card .epy-salon-card-favorite,
.es16-salon-card .epy-salon-card-favorite {
  position: absolute !important;
  z-index: 8 !important;
  top: 14px !important;
  right: 14px !important;
  display: inline-grid !important;
  place-items: center !important;
  width: 42px !important;
  height: 42px !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.82) !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.94) !important;
  color: #6b5876 !important;
  font-size: 1.5rem !important;
  line-height: 1 !important;
  box-shadow: 0 10px 24px rgba(43,18,55,.18) !important;
  cursor: pointer !important;
  transition: transform .18s ease, color .18s ease, background .18s ease !important;
}
.salon-result-card .epy-salon-card-favorite:hover,
.es16-salon-card .epy-salon-card-favorite:hover { transform: translateY(-1px) scale(1.04) !important; }
.salon-result-card .epy-salon-card-favorite.active,
.es16-salon-card .epy-salon-card-favorite.active { color: #b20aaa !important; background: #fff2fd !important; }
.salon-result-card .epy-salon-card-favorite.is-loading,
.es16-salon-card .epy-salon-card-favorite.is-loading { opacity: .62 !important; cursor: wait !important; }
.epy-price-popular.active { border-color: rgba(178,10,170,.5) !important; box-shadow: 0 0 0 3px rgba(178,10,170,.08) !important; }

@media (max-width: 767px) {
  .epy-quick-salons .salon-result-card .salon-side,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-side,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-side {
    grid-template-columns: minmax(0,1fr) auto !important;
    align-items: center !important;
  }
  .epy-quick-salons .salon-result-card .salon-side > small,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-side > small,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-side > small {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: end !important;
  }
  .epy-quick-salons .salon-result-card .salon-side .price-md,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-side .price-md,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-side .price-md {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    justify-self: end !important;
    text-align: right !important;
    white-space: nowrap !important;
    font-size: clamp(1.75rem, 9vw, 2.35rem) !important;
  }
  .epy-quick-salons .salon-result-card .ep-ref-side-trust,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .ep-ref-side-trust,
  .ep-ref-salons-page .booking-results .salon-result-card .ep-ref-side-trust,
  .epy-quick-salons .salon-result-card .salon-side-actions,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-side-actions,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-side-actions {
    grid-column: 1 / -1 !important;
  }
}

/* CHECKPOINT 20AW: salon about rich content and document gallery */
.epy-salon-detail-classic .epy-detail-favorite {
  width: 48px !important;
  min-width: 48px !important;
  padding: 0 !important;
  font-size: 1.45rem !important;
  color: #6f5d7a !important;
}
.epy-salon-detail-classic .epy-detail-favorite.active { color: #b20aaa !important; background: #fff1fd !important; border-color: #ddb7e4 !important; }
.epy-salon-detail-classic .epy-salon-about-rich {
  max-width: 920px !important;
  color: #51445c !important;
  font-size: 1rem !important;
  line-height: 1.72 !important;
  overflow-wrap: anywhere !important;
}
.epy-salon-detail-classic .epy-salon-about-rich > :first-child { margin-top: 0 !important; }
.epy-salon-detail-classic .epy-salon-about-rich > :last-child { margin-bottom: 0 !important; }
.epy-salon-detail-classic .epy-salon-about-rich h2,
.epy-salon-detail-classic .epy-salon-about-rich h3,
.epy-salon-detail-classic .epy-salon-about-rich h4 { color: #20112f !important; font-weight: 900 !important; line-height: 1.25 !important; }
.epy-salon-detail-classic .epy-salon-about-rich ul,
.epy-salon-detail-classic .epy-salon-about-rich ol { padding-left: 1.35rem !important; }
.epy-salon-detail-classic button.epy-documents-polished-card {
  width: 100% !important;
  appearance: none !important;
  text-align: left !important;
  cursor: pointer !important;
  font: inherit !important;
}
.epy-document-modal-dialog {
  width: min(980px, calc(100vw - 28px)) !important;
  max-height: min(88vh, 820px) !important;
  display: grid !important;
  grid-template-rows: auto minmax(0,1fr) auto !important;
  gap: 14px !important;
  overflow: hidden !important;
}
.epy-document-modal-dialog header { padding-right: 46px !important; }
.epy-document-modal-dialog header h2 { margin: 5px 0 0 !important; overflow-wrap: anywhere !important; }
.epy-document-preview {
  display: grid !important;
  place-items: center !important;
  min-height: 280px !important;
  max-height: 62vh !important;
  border: 1px solid #eaddec !important;
  border-radius: 18px !important;
  background: #f9f6fb !important;
  overflow: auto !important;
}
.epy-document-preview img { display: block !important; max-width: 100% !important; max-height: 60vh !important; width: auto !important; height: auto !important; object-fit: contain !important; }
.epy-document-preview iframe { display: block !important; width: 100% !important; min-height: 58vh !important; border: 0 !important; background: #fff !important; }
.epy-document-file-placeholder { max-width: 460px !important; padding: 32px 20px !important; text-align: center !important; }
.epy-document-file-placeholder > span { display: grid !important; place-items: center !important; width: 64px !important; height: 64px !important; margin: 0 auto 12px !important; border-radius: 20px !important; background: #f3e6f7 !important; color: #a90bb9 !important; font-size: 1.8rem !important; }
.epy-document-file-placeholder b { display: block !important; color: #21132f !important; font-size: 1.05rem !important; overflow-wrap: anywhere !important; }
.epy-document-file-placeholder p { color: #776982 !important; }
@media (max-width: 640px) {
  .epy-document-modal-dialog { padding: 20px 14px !important; border-radius: 20px !important; }
  .epy-document-preview { min-height: 220px !important; }
  .epy-document-preview iframe { min-height: 52vh !important; }
}

/* CHECKPOINT 20AW: scoped booking confirmation, favorites and public detail layouts */
.epy-device-time-page .epy-time-confirmation-status{
  display:flex;align-items:center;gap:8px;margin:12px 0;padding:11px 13px;border:1px solid #bcebd2;border-radius:14px;background:#effcf5;color:#087748;font-weight:850
}
.epy-device-time-page .epy-time-confirmation-status[hidden]{display:none!important}
.epy-device-time-page .epy-time-confirmation-status>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#13a565;color:#fff}
.epy-device-time-page #epy-time-confirm-button{margin-top:8px}
.epy-device-time-page #epy-time-confirm-button:disabled{opacity:.52;cursor:not-allowed;transform:none}

.epy-booking-confirm-page .epy-confirm-layout--detailed{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:22px;align-items:start}
.epy-booking-confirm-page .epy-confirm-main{display:grid;gap:18px;min-width:0}
.epy-booking-confirm-page .epy-confirm-salon-card,.epy-booking-confirm-page .epy-confirm-services,.epy-booking-confirm-page .epy-confirm-facts{border:1px solid var(--epy-border);border-radius:22px;background:#fff;box-shadow:0 14px 38px rgba(70,20,80,.065)}
.epy-booking-confirm-page .epy-confirm-salon-card{display:grid;grid-template-columns:132px minmax(0,1fr);gap:18px;align-items:center;padding:18px}
.epy-booking-confirm-page .epy-confirm-salon-image{display:grid;place-items:center;width:132px;height:104px;border-radius:17px;overflow:hidden;background:linear-gradient(135deg,var(--epy-primary),#780799);color:#fff;font-size:1.4rem;font-weight:950;text-decoration:none}
.epy-booking-confirm-page .epy-confirm-salon-image img{width:100%;height:100%;object-fit:cover}
.epy-booking-confirm-page .epy-confirm-salon-card h2{margin:4px 0 5px;font-size:1.55rem}.epy-booking-confirm-page .epy-confirm-salon-card h2 a{color:inherit;text-decoration:none}
.epy-booking-confirm-page .epy-confirm-salon-card p{margin:0;color:var(--epy-muted);font-weight:760}
.epy-booking-confirm-page .epy-confirm-services{padding:20px}
.epy-booking-confirm-page .epy-confirm-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:14px}
.epy-booking-confirm-page .epy-confirm-section-title h2{margin:3px 0 0;font-size:1.5rem}.epy-booking-confirm-page .epy-confirm-section-title>b{padding:7px 10px;border-radius:999px;background:var(--epy-soft);color:var(--epy-primary);white-space:nowrap}
.epy-booking-confirm-page .epy-confirm-region-grid{display:grid;gap:10px}
.epy-booking-confirm-page .epy-confirm-region-grid>article{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid #f0e3f1;border-radius:16px;background:#fffafd;min-width:0}
.epy-booking-confirm-page .epy-confirm-region-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#fff;color:var(--epy-primary);overflow:hidden}
.epy-booking-confirm-page .epy-confirm-region-icon img{width:100%;height:100%;object-fit:contain;padding:5px}.epy-booking-confirm-page .epy-confirm-region-grid h3{margin:0;font-size:1rem}.epy-booking-confirm-page .epy-confirm-region-grid small{color:var(--epy-muted)}.epy-booking-confirm-page .epy-confirm-region-grid strong{white-space:nowrap;color:var(--epy-primary);font-size:1.05rem}
.epy-booking-confirm-page .epy-confirm-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden}
.epy-booking-confirm-page .epy-confirm-facts>div{display:grid;gap:5px;padding:16px;background:#fff}.epy-booking-confirm-page .epy-confirm-facts span{color:var(--epy-muted);font-size:.78rem;font-weight:800}.epy-booking-confirm-page .epy-confirm-facts b{overflow-wrap:anywhere}
.epy-booking-confirm-page .epy-confirm-payment-card{position:sticky;top:90px;padding:22px;min-width:0}.epy-booking-confirm-page .epy-confirm-total{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:18px 0;padding-bottom:16px;border-bottom:1px dashed var(--epy-border)}.epy-booking-confirm-page .epy-confirm-total b{color:var(--epy-primary);font-size:1.9rem;white-space:nowrap}.epy-booking-confirm-page .epy-confirm-payment-card>p{color:var(--epy-muted);line-height:1.55}.epy-booking-confirm-page .epy-secure-box{margin:16px 0;padding:14px;border-radius:15px;background:#effcf5;color:#087748;line-height:1.75;font-weight:760}

.epy-favorite-salon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:18px;min-width:0}
.epy-favorite-salon-card{display:grid;grid-template-rows:210px auto auto;min-width:0;border:1px solid var(--epy-border);border-radius:22px;background:#fff;overflow:hidden;box-shadow:0 15px 38px rgba(55,18,70,.07)}
.epy-favorite-salon-image{display:block;overflow:hidden}.epy-favorite-salon-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.epy-favorite-salon-card:hover .epy-favorite-salon-image img{transform:scale(1.025)}
.epy-favorite-salon-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end;padding:17px}.epy-favorite-salon-copy h2{margin:8px 0 5px;font-size:1.28rem}.epy-favorite-salon-copy h2 a{color:inherit;text-decoration:none}.epy-favorite-salon-copy p{margin:0;color:var(--epy-muted)}.epy-favorite-salon-price{text-align:right}.epy-favorite-salon-price small,.epy-favorite-salon-price b{display:block}.epy-favorite-salon-price small{color:var(--epy-muted);font-size:.72rem}.epy-favorite-salon-price b{color:var(--epy-primary);font-size:1.25rem;white-space:nowrap}
.epy-favorite-salon-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 17px 17px}.epy-favorite-salon-actions form{grid-column:1/-1;text-align:center}.epy-favorite-salon-actions .epy-btn{width:100%;white-space:normal}.epy-favorite-salon-actions .epy-link-button{min-height:36px}

.epy-public-booking-detail-page{max-width:1180px;margin:0 auto;padding:34px 18px;min-width:0}
.epy-public-booking-detail-card{overflow:hidden;border:1px solid var(--epy-border);border-radius:28px;background:#fff;box-shadow:0 22px 60px rgba(61,18,78,.1)}
.epy-public-booking-detail-card>header{display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:16px;align-items:center;padding:26px;background:linear-gradient(135deg,#fff,#fff5fc)}
.epy-public-booking-success{display:grid;place-items:center;width:58px;height:58px;border-radius:20px;background:#0ca565;color:#fff;font-size:1.7rem;font-weight:950}.epy-public-booking-detail-card h1{margin:4px 0;font-size:clamp(1.9rem,4vw,3rem);letter-spacing:-.045em}.epy-public-booking-detail-card header p{margin:0;color:var(--epy-muted)}.epy-public-booking-status{white-space:nowrap}
.epy-public-booking-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #f0e4f2;border-bottom:1px solid #f0e4f2}.epy-public-booking-facts>div{display:grid;gap:6px;padding:18px;border-right:1px solid #f0e4f2;min-width:0}.epy-public-booking-facts>div:nth-child(3n){border-right:0}.epy-public-booking-facts span{color:var(--epy-muted);font-size:.78rem;font-weight:800}.epy-public-booking-facts b{overflow-wrap:anywhere}.epy-public-booking-facts a{color:inherit}.epy-public-booking-total{color:var(--epy-primary);font-size:1.35rem}
.epy-public-booking-regions{padding:24px}.epy-public-booking-regions h2{margin:4px 0 18px}.epy-public-booking-region-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.epy-public-booking-region-grid>article{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid #f0e3f1;border-radius:16px;background:#fffafd}.epy-public-booking-region-grid>article>span{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#fff;overflow:hidden}.epy-public-booking-region-grid img{width:100%;height:100%;object-fit:contain;padding:5px}.epy-public-booking-region-grid h3{margin:0;font-size:1rem}.epy-public-booking-region-grid small{color:var(--epy-muted)}.epy-public-booking-region-grid strong{white-space:nowrap;color:var(--epy-primary)}
.epy-public-booking-detail-card>footer{display:flex;justify-content:flex-end;gap:10px;padding:20px 24px;border-top:1px solid #f0e4f2;background:#fffafd}

@media(max-width:900px){
 .epy-booking-confirm-page .epy-confirm-layout--detailed{grid-template-columns:1fr}.epy-booking-confirm-page .epy-confirm-payment-card{position:static}.epy-booking-confirm-page .epy-confirm-facts{grid-template-columns:1fr}.epy-booking-confirm-page .epy-confirm-facts>div{border-bottom:1px solid #f0e4f2}.epy-booking-confirm-page .epy-confirm-facts>div:last-child{border-bottom:0}
 .epy-public-booking-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.epy-public-booking-facts>div:nth-child(3n){border-right:1px solid #f0e4f2}.epy-public-booking-facts>div:nth-child(2n){border-right:0}
}
@media(max-width:620px){
 .epy-booking-confirm-page .epy-confirm-salon-card{grid-template-columns:1fr}.epy-booking-confirm-page .epy-confirm-salon-image{width:100%;height:170px}.epy-booking-confirm-page .epy-confirm-section-title{align-items:flex-start;flex-direction:column}.epy-booking-confirm-page .epy-confirm-region-grid>article{grid-template-columns:44px minmax(0,1fr)}.epy-booking-confirm-page .epy-confirm-region-grid strong{grid-column:2;justify-self:start}
 .epy-favorite-salon-grid{grid-template-columns:1fr}.epy-favorite-salon-copy{grid-template-columns:minmax(0,1fr) auto}.epy-favorite-salon-actions{grid-template-columns:1fr}
 .epy-public-booking-detail-page{padding:18px 10px}.epy-public-booking-detail-card>header{grid-template-columns:50px minmax(0,1fr);padding:18px}.epy-public-booking-success{width:48px;height:48px;border-radius:16px}.epy-public-booking-status{grid-column:1/-1;justify-self:start}.epy-public-booking-facts{grid-template-columns:1fr}.epy-public-booking-facts>div{border-right:0!important;border-bottom:1px solid #f0e4f2}.epy-public-booking-region-grid{grid-template-columns:1fr}.epy-public-booking-region-grid>article{grid-template-columns:44px minmax(0,1fr)}.epy-public-booking-region-grid strong{grid-column:2;justify-self:start}.epy-public-booking-detail-card>footer{display:grid}.epy-public-booking-detail-card>footer .epy-btn{width:100%}
}

/* CHECKPOINT 20AX: salon activity cards, vivid discovery filters and polished trust/location UI */
.epy-card-review-count {
  color: #8c7d96 !important;
  font-size: .78rem !important;
  font-weight: 760 !important;
  white-space: nowrap !important;
}

.epy-salon-card-insights {
  display: grid !important;
  grid-template-rows: auto auto auto !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 16px 0 0 !important;
  border: 1px solid rgba(178, 10, 170, .13) !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, #fff9ff 0%, #fbf5ff 52%, #fff 100%) !important;
  box-shadow: 0 12px 28px rgba(83, 24, 101, .045) !important;
  overflow: hidden !important;
}
.epy-salon-card-insights > header {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 42px !important;
  padding: 9px 12px !important;
  border-bottom: 1px solid rgba(178, 10, 170, .09) !important;
  color: #2b1539 !important;
}
.epy-salon-card-insights > header b {
  font-size: .83rem !important;
  font-weight: 950 !important;
  line-height: 1.2 !important;
}
.epy-insight-fire {
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 26px !important;
  width: 26px !important;
  height: 26px !important;
  border-radius: 9px !important;
  background: linear-gradient(135deg, #fff2dc, #ffe4f2) !important;
  font-size: .9rem !important;
  line-height: 1 !important;
}
.epy-insight-metrics {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  min-width: 0 !important;
}
.epy-insight-metrics > div {
  display: grid !important;
  grid-template-columns: 26px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  gap: 1px 7px !important;
  align-items: center !important;
  min-width: 0 !important;
  padding: 11px 8px !important;
  border-right: 1px solid rgba(178, 10, 170, .08) !important;
  text-align: left !important;
}
.epy-insight-metrics > div:last-child { border-right: 0 !important; }
.epy-insight-metrics b {
  grid-column: 2 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
  color: #241232 !important;
  font-size: .98rem !important;
  font-weight: 1000 !important;
  line-height: 1.05 !important;
  font-variant-numeric: tabular-nums !important;
  white-space: nowrap !important;
}
.epy-insight-metrics small {
  grid-column: 2 !important;
  grid-row: 2 !important;
  min-width: 0 !important;
  color: #7b6b86 !important;
  font-size: .58rem !important;
  font-weight: 760 !important;
  line-height: 1.18 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
.epy-insight-icon {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  display: grid !important;
  place-items: center !important;
  width: 26px !important;
  height: 26px !important;
  border-radius: 9px !important;
  background: #f5e9fa !important;
  color: #8f13bf !important;
}
.epy-insight-icon::before {
  content: "" !important;
  display: block !important;
  width: 16px !important;
  height: 16px !important;
  background: currentColor !important;
  -webkit-mask-position: center !important;
  mask-position: center !important;
  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  -webkit-mask-size: contain !important;
  mask-size: contain !important;
}
.epy-insight-icon.is-view::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2.5 12s3.5-6 9.5-6 9.5 6 9.5 6-3.5 6-9.5 6-9.5-6-9.5-6Z' fill='none' stroke='black' stroke-width='2.2'/%3E%3Ccircle cx='12' cy='12' r='3' fill='black'/%3E%3C/svg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2.5 12s3.5-6 9.5-6 9.5 6 9.5 6-3.5 6-9.5 6-9.5-6-9.5-6Z' fill='none' stroke='black' stroke-width='2.2'/%3E%3Ccircle cx='12' cy='12' r='3' fill='black'/%3E%3C/svg%3E") !important;
}
.epy-insight-icon.is-favorite { background: #fff0f6 !important; color: #ef347e !important; }
.epy-insight-icon.is-favorite::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 20.5 4.2 13C-.4 8.6 6.4 2.7 12 8c5.6-5.3 12.4.6 7.8 5Z' fill='black'/%3E%3C/svg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 20.5 4.2 13C-.4 8.6 6.4 2.7 12 8c5.6-5.3 12.4.6 7.8 5Z' fill='black'/%3E%3C/svg%3E") !important;
}
.epy-insight-icon.is-booking { background: #f0efff !important; color: #5c45df !important; }
.epy-insight-icon.is-booking::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2.5' fill='none' stroke='black' stroke-width='2.2'/%3E%3Cpath d='M7 3v4M17 3v4M4 9h16' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2.5' fill='none' stroke='black' stroke-width='2.2'/%3E%3Cpath d='M7 3v4M17 3v4M4 9h16' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}
.epy-insight-icon.is-completed { background: #eafbf3 !important; color: #14a866 !important; }
.epy-insight-icon.is-completed::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='2.2'/%3E%3Cpath d='m7.8 12.2 2.7 2.7 5.9-6.1' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='2.2'/%3E%3Cpath d='m7.8 12.2 2.7 2.7 5.9-6.1' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
.epy-salon-card-insights > footer {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  min-width: 0 !important;
  padding: 8px 12px 10px !important;
  border-top: 1px solid rgba(178, 10, 170, .08) !important;
  color: #6f6079 !important;
  font-size: .66rem !important;
  font-weight: 760 !important;
  line-height: 1.35 !important;
  overflow-wrap: anywhere !important;
}
.epy-salon-card-insights > footer b { color: #8b0aaa !important; font-weight: 950 !important; }
.epy-insight-live-dot {
  flex: 0 0 9px !important;
  width: 9px !important;
  height: 9px !important;
  border-radius: 50% !important;
  background: #43d994 !important;
  box-shadow: 0 0 0 4px rgba(67, 217, 148, .13) !important;
}

/* Detailed trust strip directly under the discovery/slider area. */
.epy-quick-home .epy-quick-trust--detailed {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  width: min(1180px, calc(100% - 32px)) !important;
  max-width: 1180px !important;
  margin: 22px auto 34px !important;
  padding: 0 !important;
  border: 1px solid #eee0f0 !important;
  border-radius: 22px !important;
  background: #fff !important;
  box-shadow: 0 16px 42px rgba(62, 20, 82, .045) !important;
  overflow: hidden !important;
}
.epy-quick-home .epy-quick-trust--detailed > article {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: center !important;
  min-width: 0 !important;
  min-height: 108px !important;
  padding: 20px !important;
  border-right: 1px solid #f0e4f2 !important;
  background: #fff !important;
}
.epy-quick-home .epy-quick-trust--detailed > article:last-child { border-right: 0 !important; }
.epy-quick-home .epy-quick-trust--detailed i {
  display: grid !important;
  place-items: center !important;
  width: 52px !important;
  height: 52px !important;
  border-radius: 18px !important;
  background: linear-gradient(145deg, #f8e9ff, #fff5fb) !important;
  color: #8e12bd !important;
  box-shadow: inset 0 0 0 1px rgba(178, 10, 170, .08) !important;
}
.epy-quick-home .epy-quick-trust--detailed i::before { width: 30px !important; height: 30px !important; }
.epy-quick-home .epy-quick-trust--detailed span { display: grid !important; gap: 5px !important; min-width: 0 !important; }
.epy-quick-home .epy-quick-trust--detailed b { color: #221231 !important; font-size: .95rem !important; line-height: 1.18 !important; font-weight: 950 !important; overflow-wrap: anywhere !important; }
.epy-quick-home .epy-quick-trust--detailed small { color: #796b82 !important; font-size: .72rem !important; line-height: 1.35 !important; font-weight: 720 !important; overflow-wrap: anywhere !important; }

/* Vivid but brand-compatible discovery icons. */
.epy-quick-home .epy-quick-tile > span[class*="epy-filter-icon"],
.epy-quick-home .epy-quick-price > span[class*="epy-filter-icon"],
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-tile > span[class*="epy-filter-icon"],
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-quick-price > span[class*="epy-filter-icon"] {
  display: grid !important;
  place-items: center !important;
  width: 58px !important;
  height: 58px !important;
  border-radius: 19px !important;
  background: linear-gradient(145deg, #fff1fc, #f5e9ff) !important;
  box-shadow: inset 0 0 0 1px rgba(178, 10, 170, .08), 0 9px 22px rgba(90, 24, 112, .07) !important;
}
.epy-quick-home .epy-filter-icon-calendar,
.ep-ref-salons-page .epy-filter-icon-calendar { background: linear-gradient(145deg, #ffeaf8, #fff5fc) !important; }
.epy-quick-home .epy-filter-icon-location,
.ep-ref-salons-page .ep-ref-salon-filter-hub .epy-filter-icon-location { background: linear-gradient(145deg, #fde9ff, #f6edff) !important; }
.epy-quick-home .epy-filter-icon-people,
.ep-ref-salons-page .epy-filter-icon-people { background: linear-gradient(145deg, #fff0fa, #edf5ff) !important; }
.epy-quick-home .epy-filter-icon-device,
.ep-ref-salons-page .epy-filter-icon-device { background: linear-gradient(145deg, #eef6ff, #f8eaff) !important; }
.epy-quick-home .epy-filter-icon-rating,
.ep-ref-salons-page .epy-filter-icon-rating { background: linear-gradient(145deg, #fff3dc, #f6eaff) !important; }
.epy-quick-home .epy-filter-icon-specialist,
.ep-ref-salons-page .epy-filter-icon-specialist,
.epy-quick-home .epy-filter-icon-male,
.ep-ref-salons-page .epy-filter-icon-male { background: linear-gradient(145deg, #f6eaff, #fff3fc) !important; }
.epy-quick-home .epy-price-low.active,
.ep-ref-salons-page .epy-price-low.active {
  border-color: rgba(31, 181, 111, .42) !important;
  background: linear-gradient(135deg, #f7fff9, #fff) !important;
  box-shadow: 0 0 0 3px rgba(31, 181, 111, .07), 0 12px 30px rgba(41, 126, 82, .05) !important;
}
.epy-quick-home .epy-price-low.active > span,
.ep-ref-salons-page .epy-price-low.active > span { background: linear-gradient(145deg, #e9fced, #f4fff7) !important; }
.epy-quick-home .epy-price-high > span,
.ep-ref-salons-page .epy-price-high > span { background: linear-gradient(145deg, #fff2dc, #fffaf0) !important; }

/* Location banner keeps a real, visible icon in all dynamic states. */
.ep-ref-salons-page .ep-ref-location-banner--polished {
  grid-template-columns: 68px minmax(0, 1fr) auto !important;
  gap: 16px !important;
  min-height: 100px !important;
  padding: 16px 18px !important;
  border-color: #ead7ee !important;
  background: linear-gradient(135deg, #fff 0%, #fff9ff 100%) !important;
  box-shadow: 0 12px 30px rgba(65, 20, 80, .04) !important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished .epy-location-banner-icon {
  display: grid !important;
  place-items: center !important;
  width: 64px !important;
  height: 64px !important;
  border-radius: 21px !important;
  background: linear-gradient(145deg, #fde8ff, #f3e9ff) !important;
  color: #a40fb9 !important;
  box-shadow: inset 0 0 0 1px rgba(178, 10, 170, .08) !important;
  overflow: hidden !important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished .epy-location-banner-icon::before { display: none !important; }
.ep-ref-salons-page .ep-ref-location-banner--polished .epy-location-banner-icon svg {
  display: block !important;
  width: 43px !important;
  height: 43px !important;
  max-width: 43px !important;
  max-height: 43px !important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished b {
  display: block !important;
  margin: 0 0 5px !important;
  color: #21112f !important;
  font-size: 1.02rem !important;
  font-weight: 1000 !important;
  line-height: 1.2 !important;
  overflow-wrap: anywhere !important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished small {
  display: block !important;
  color: #74667d !important;
  font-size: .82rem !important;
  font-weight: 740 !important;
  line-height: 1.38 !important;
  overflow-wrap: anywhere !important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-success {
  border-color: rgba(29, 178, 105, .3) !important;
  background: linear-gradient(135deg, #f5fff9, #fff) !important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-success .epy-location-banner-icon {
  background: linear-gradient(145deg, #e5faed, #f4fff8) !important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-loading .epy-location-banner-icon { animation: epyLocationPulse 1.1s ease-in-out infinite alternate !important; }
@keyframes epyLocationPulse { from { transform: scale(.96); opacity: .72; } to { transform: scale(1.03); opacity: 1; } }

/* Desktop cards follow the requested image/content/price composition. */
@media (min-width: 1100px) {
  .epy-quick-salons .salon-result-card,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card,
  .ep-ref-salons-page .booking-results .salon-result-card {
    grid-template-columns: minmax(270px, 31%) minmax(0, 1fr) 190px !important;
    gap: 16px !important;
    align-items: stretch !important;
    padding: 16px !important;
  }
  .epy-quick-salons .salon-result-card .salon-photo-wrap,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-photo-wrap,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-photo-wrap {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 340px !important;
    border-radius: 20px !important;
    overflow: hidden !important;
  }
  .epy-quick-salons .salon-result-card .salon-photo-wrap img,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-photo-wrap img,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-photo-wrap img {
    width: 100% !important;
    height: 100% !important;
    min-height: 340px !important;
    object-fit: cover !important;
    border-radius: 20px !important;
  }
  .epy-quick-salons .salon-result-card .salon-main,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-main,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-main {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    padding: 4px 0 !important;
  }
  .epy-quick-salons .salon-result-card .salon-side,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-side,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-side {
    align-content: start !important;
    padding: 20px 0 12px 18px !important;
  }
}

@media (max-width: 980px) {
  .epy-quick-home .epy-quick-trust--detailed > article {
    grid-template-columns: 44px minmax(0, 1fr) !important;
    min-height: 92px !important;
    padding: 14px !important;
  }
  .epy-quick-home .epy-quick-trust--detailed i { width: 42px !important; height: 42px !important; border-radius: 15px !important; }
  .epy-quick-home .epy-quick-trust--detailed i::before { width: 25px !important; height: 25px !important; }
  .epy-quick-home .epy-quick-trust--detailed b { font-size: .8rem !important; }
  .epy-quick-home .epy-quick-trust--detailed small { font-size: .64rem !important; }
}

@media (max-width: 767px) {
  .epy-quick-home .epy-quick-trust--detailed {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    width: calc(100% - 24px) !important;
    margin: 14px auto 26px !important;
    border-radius: 18px !important;
  }
  .epy-quick-home .epy-quick-trust--detailed > article {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: 38px auto !important;
    place-items: center !important;
    align-content: center !important;
    gap: 6px !important;
    min-height: 92px !important;
    padding: 10px 4px !important;
    text-align: center !important;
  }
  .epy-quick-home .epy-quick-trust--detailed i { width: 38px !important; height: 38px !important; border-radius: 13px !important; }
  .epy-quick-home .epy-quick-trust--detailed i::before { width: 22px !important; height: 22px !important; }
  .epy-quick-home .epy-quick-trust--detailed span { display: block !important; }
  .epy-quick-home .epy-quick-trust--detailed b { display: block !important; font-size: .62rem !important; line-height: 1.14 !important; }
  .epy-quick-home .epy-quick-trust--detailed small { display: none !important; }

  .epy-salon-card-insights { margin-top: 14px !important; border-radius: 17px !important; }
  .epy-salon-card-insights > header { min-height: 39px !important; padding: 8px 10px !important; }
  .epy-salon-card-insights > header b { font-size: .78rem !important; }
  .epy-insight-metrics > div { grid-template-columns: 24px minmax(0, 1fr) !important; gap: 1px 5px !important; padding: 10px 5px !important; }
  .epy-insight-icon { width: 24px !important; height: 24px !important; border-radius: 8px !important; }
  .epy-insight-icon::before { width: 15px !important; height: 15px !important; }
  .epy-insight-metrics b { font-size: .88rem !important; }
  .epy-insight-metrics small { font-size: .52rem !important; line-height: 1.12 !important; }
  .epy-salon-card-insights > footer { padding: 8px 10px 9px !important; font-size: .61rem !important; }

  .ep-ref-salons-page .ep-ref-location-banner--polished {
    grid-template-columns: 54px minmax(0, 1fr) !important;
    min-height: 0 !important;
    padding: 14px !important;
  }
  .ep-ref-salons-page .ep-ref-location-banner--polished .epy-location-banner-icon { width: 52px !important; height: 52px !important; border-radius: 17px !important; }
  .ep-ref-salons-page .ep-ref-location-banner--polished .epy-location-banner-icon svg { width: 36px !important; height: 36px !important; }
  .ep-ref-salons-page .ep-ref-location-banner--polished b { font-size: .92rem !important; }
  .ep-ref-salons-page .ep-ref-location-banner--polished small { font-size: .74rem !important; }
  .ep-ref-salons-page .ep-ref-location-banner--polished button { grid-column: 1 / -1 !important; width: 100% !important; }
}

@media (max-width: 359px) {
  .epy-insight-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .epy-insight-metrics > div:nth-child(2) { border-right: 0 !important; }
  .epy-insight-metrics > div:nth-child(-n+2) { border-bottom: 1px solid rgba(178, 10, 170, .08) !important; }
  .epy-quick-home .epy-quick-trust--detailed { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .epy-quick-home .epy-quick-trust--detailed > article:nth-child(2) { border-right: 0 !important; }
  .epy-quick-home .epy-quick-trust--detailed > article:nth-child(-n+2) { border-bottom: 1px solid #f0e4f2 !important; }
}

/* CHECKPOINT 20AX: tablet discovery grid must not fall back to the legacy four-column reset. */
@media (max-width: 980px) {
  .epy-quick-home .epy-quick-filter,
  .ep-ref-salons-page .ep-ref-salon-filter-hub {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* CHECKPOINT 20AX: trust artwork and compact mobile metric typography. */
.epy-quick-home .epy-quick-trust--detailed i::before {
  content: "" !important;
  display: block !important;
  width: 30px !important;
  height: 30px !important;
  background: currentColor !important;
  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  -webkit-mask-position: center !important;
  mask-position: center !important;
  -webkit-mask-size: contain !important;
  mask-size: contain !important;
}

@media (max-width: 767px) and (min-width: 360px) {
  .epy-insight-metrics > div {
    grid-template-columns: 20px minmax(0, 1fr) !important;
    gap: 1px 4px !important;
    padding: 9px 4px !important;
  }
  .epy-insight-icon {
    width: 20px !important;
    height: 20px !important;
    border-radius: 7px !important;
  }
  .epy-insight-icon::before {
    width: 13px !important;
    height: 13px !important;
  }
  .epy-insight-metrics b { font-size: .84rem !important; }
  .epy-insight-metrics small {
    font-size: .47rem !important;
    line-height: 1.08 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    letter-spacing: -.01em !important;
  }
  .epy-quick-salons .ep-ref-card-badges,
  .ep-ref-salons-page .ep-ref-card-badges { gap: 5px !important; }
  .epy-quick-salons .ep-ref-card-badges .es-pill,
  .ep-ref-salons-page .ep-ref-card-badges .es-pill {
    max-width: 100% !important;
    padding-inline: 8px !important;
    font-size: .64rem !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}


/* CHECKPOINT 20AX: home location guidance card. */
.epy-quick-home .epy-home-location-prompt {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 16px !important;
  width: 100% !important;
  margin: 18px 0 22px !important;
  padding: 16px 18px !important;
  border: 1px solid #ead8ef !important;
  border-radius: 22px !important;
  background: linear-gradient(135deg, #fff, #fff8ff) !important;
  box-shadow: 0 14px 38px rgba(78, 20, 96, .055) !important;
}
.epy-quick-home .epy-home-location-prompt-icon {
  display: grid !important;
  place-items: center !important;
  width: 58px !important;
  height: 58px !important;
  border-radius: 19px !important;
  background: linear-gradient(145deg, #fde9ff, #f1e9ff) !important;
  color: #b20bbb !important;
}
.epy-quick-home .epy-home-location-prompt-icon::before {
  width: 34px !important;
  height: 34px !important;
}
.epy-quick-home .epy-home-location-prompt > div {
  min-width: 0 !important;
}
.epy-quick-home .epy-home-location-prompt b {
  display: block !important;
  color: #1b1031 !important;
  font-size: 1.02rem !important;
  line-height: 1.25 !important;
  font-weight: 950 !important;
  overflow-wrap: anywhere !important;
}
.epy-quick-home .epy-home-location-prompt small {
  display: block !important;
  margin-top: 4px !important;
  color: #74677e !important;
  font-size: .82rem !important;
  line-height: 1.42 !important;
  font-weight: 720 !important;
  overflow-wrap: anywhere !important;
}
.epy-quick-home .epy-home-location-prompt button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 174px !important;
  min-height: 48px !important;
  padding: 0 18px !important;
  border: 1px solid #dca8e7 !important;
  border-radius: 15px !important;
  background: linear-gradient(135deg, #fff, #fff7ff) !important;
  color: #a20bac !important;
  font-weight: 920 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease !important;
}
.epy-quick-home .epy-home-location-prompt button:hover,
.epy-quick-home .epy-home-location-prompt button:focus-visible {
  border-color: #b90fc5 !important;
  box-shadow: 0 10px 24px rgba(169, 11, 185, .12) !important;
  transform: translateY(-1px) !important;
  outline: none !important;
}
@media (max-width: 760px) {
  .epy-quick-home .epy-home-location-prompt {
    grid-template-columns: 52px minmax(0, 1fr) !important;
    gap: 13px !important;
    padding: 15px !important;
    border-radius: 20px !important;
  }
  .epy-quick-home .epy-home-location-prompt-icon {
    width: 52px !important;
    height: 52px !important;
    border-radius: 17px !important;
  }
  .epy-quick-home .epy-home-location-prompt-icon::before {
    width: 30px !important;
    height: 30px !important;
  }
  .epy-quick-home .epy-home-location-prompt b {
    font-size: .92rem !important;
  }
  .epy-quick-home .epy-home-location-prompt small {
    font-size: .75rem !important;
  }
  .epy-quick-home .epy-home-location-prompt button {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-width: 0 !important;
  }
}
@media (max-width: 360px) {
  .epy-quick-home .epy-home-location-prompt {
    grid-template-columns: 44px minmax(0, 1fr) !important;
    gap: 10px !important;
    padding: 13px !important;
  }
  .epy-quick-home .epy-home-location-prompt-icon {
    width: 44px !important;
    height: 44px !important;
    border-radius: 14px !important;
  }
  .epy-quick-home .epy-home-location-prompt-icon::before {
    width: 26px !important;
    height: 26px !important;
  }
  .epy-quick-home .epy-home-location-prompt b {
    font-size: .84rem !important;
  }
}

/* CHECKPOINT 20BC: focused UI repair pass */
/* Detailed trust artwork from the approved reference, recolored with Epilasyon Sepeti tones. */
.epy-quick-home .epy-quick-trust--detailed > article {
  grid-template-columns: 64px minmax(0, 1fr) !important;
}
.epy-quick-home .epy-quick-trust--detailed .epy-trust-art {
  display: grid !important;
  place-items: center !important;
  width: 60px !important;
  height: 60px !important;
  min-width: 60px !important;
  border-radius: 20px !important;
  background: transparent !important;
  overflow: visible !important;
  box-shadow: none !important;
}
.epy-quick-home .epy-quick-trust--detailed .epy-trust-art svg {
  display: block !important;
  width: 60px !important;
  height: 60px !important;
  max-width: 100% !important;
  max-height: 100% !important;
}
.epy-quick-home .epy-quick-trust--detailed .epy-trust-art::before {
  content: none !important;
  display: none !important;
}

/* Manual appointment services: service and duration stay together, price is always right-aligned. */
.epy-salon-panel-modern .epy-manual-region-card > .epy-manual-region-content {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) max-content !important;
  align-items: center !important;
  gap: 14px !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 13px 16px !important;
}
.epy-salon-panel-modern .epy-manual-region-service {
  display: grid !important;
  grid-template-columns: minmax(0, max-content) max-content !important;
  align-items: baseline !important;
  gap: 7px !important;
  min-width: 0 !important;
}
.epy-salon-panel-modern .epy-manual-region-service b {
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
}
.epy-salon-panel-modern .epy-manual-region-service small,
.epy-salon-panel-modern .epy-manual-region-price {
  white-space: nowrap !important;
}
.epy-salon-panel-modern .epy-manual-region-price {
  justify-self: end !important;
  min-width: 92px !important;
  text-align: right !important;
  font-variant-numeric: tabular-nums !important;
}

/* Working-hour switches use one consistent position on every day row. */
.epy-salon-panel-modern .epy-working-hour-row .epy-working-day {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  align-content: center !important;
  justify-items: start !important;
  gap: 8px !important;
  min-width: 150px !important;
}
.epy-salon-panel-modern .epy-working-hour-row .epy-working-day > strong {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}
.epy-salon-panel-modern .epy-working-hour-row .epy-working-day .epy-switch-control {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  width: auto !important;
  margin: 0 !important;
  white-space: nowrap !important;
}
.epy-salon-panel-modern .epy-working-hour-row .epy-switch-control em {
  display: inline-block !important;
  margin: 0 !important;
  color: #75667d !important;
  font-style: normal !important;
  font-size: .82rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

@media (max-width: 980px) {
  .epy-quick-home .epy-quick-trust--detailed > article {
    grid-template-columns: 48px minmax(0, 1fr) !important;
  }
  .epy-quick-home .epy-quick-trust--detailed .epy-trust-art,
  .epy-quick-home .epy-quick-trust--detailed .epy-trust-art svg {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
  }
}

@media (max-width: 767px) {
  .epy-quick-home .epy-quick-trust--detailed > article {
    grid-template-columns: 1fr !important;
    grid-template-rows: 42px auto !important;
  }
  .epy-quick-home .epy-quick-trust--detailed .epy-trust-art,
  .epy-quick-home .epy-quick-trust--detailed .epy-trust-art svg {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
  }
  .epy-salon-panel-modern .epy-manual-region-service {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 2px !important;
  }
  .epy-salon-panel-modern .epy-working-hour-row .epy-working-day {
    min-width: 0 !important;
  }
}

/* CHECKPOINT 20BD: global salon-name search guidance */
.ep-ref-page-query-field .ep-ref-global-search-note {
  display: block !important;
  margin-top: 5px !important;
  color: #786a82 !important;
  font-size: .74rem !important;
  font-weight: 750 !important;
  line-height: 1.25 !important;
  white-space: normal !important;
}

.epy-salon-autocomplete-panel button[data-url] {
  cursor: pointer !important;
}

@media (max-width: 640px) {
  .ep-ref-page-query-field .ep-ref-global-search-note {
    font-size: .7rem !important;
  }
}

/* CHECKPOINT 20BE: physical-device preference, grouped fallback and device-card meta polish */
.epy-device-time-page .epy-preferred-device-notice{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  width:100%;
  margin:0 0 20px;
  padding:16px 18px;
  border:1px solid rgba(169,11,185,.2);
  border-radius:18px;
  background:linear-gradient(135deg,#fff,#fff7ff);
  box-shadow:0 12px 30px rgba(70,20,80,.055);
  box-sizing:border-box;
}
.epy-device-time-page .epy-preferred-device-notice.is-unavailable{
  border-color:rgba(217,119,6,.25);
  background:linear-gradient(135deg,#fffdf5,#fff9ed);
}
.epy-device-time-page .epy-preferred-device-notice.is-all-devices{
  border-color:rgba(83,56,188,.22);
  background:linear-gradient(135deg,#fbf9ff,#f7f2ff);
}
.epy-device-time-page .epy-preferred-device-copy{
  display:flex;
  align-items:flex-start;
  gap:12px;
  min-width:0;
}
.epy-device-time-page .epy-preferred-device-copy>div{min-width:0}
.epy-device-time-page .epy-preferred-device-icon{
  display:grid;
  place-items:center;
  flex:0 0 36px;
  width:36px;
  height:36px;
  border-radius:12px;
  background:linear-gradient(135deg,var(--epy-primary),#7d0798);
  color:#fff;
  font-size:.95rem;
  font-weight:950;
  box-shadow:0 8px 18px rgba(169,11,185,.2);
}
.epy-device-time-page .epy-preferred-device-notice.is-unavailable .epy-preferred-device-icon{background:linear-gradient(135deg,#e29b18,#c56b08)}
.epy-device-time-page .epy-preferred-device-copy b{
  display:block;
  color:var(--epy-ink);
  font-size:.9rem;
  font-weight:950;
  line-height:1.25;
}
.epy-device-time-page .epy-preferred-device-copy p{
  margin:4px 0 0;
  color:var(--epy-muted);
  font-size:.78rem;
  line-height:1.5;
}
.epy-device-time-page .epy-other-devices-button{
  flex:0 0 auto;
  min-height:42px;
  white-space:nowrap;
}
.epy-device-time-page .epy-device-card-statuses{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  min-width:0;
  margin:0 0 8px;
}
.epy-device-time-page .epy-device-capacity-pill{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:28px;
  padding:0 10px 0 6px;
  border:1px solid #e6d9ee;
  border-radius:999px;
  background:#faf6ff;
  color:#66566f;
  font-size:.7rem;
  font-weight:760;
  line-height:1;
  white-space:nowrap;
}
.epy-device-time-page .epy-device-capacity-icon{
  display:grid;
  place-items:center;
  width:20px;
  height:20px;
  border-radius:999px;
  background:#f0e3f7;
  color:#8d12a0;
  font-size:.64rem;
  font-weight:950;
}
.epy-device-time-page .epy-device-capacity-pill>b{color:#2f2038;font-size:.76rem;font-weight:950}
.epy-device-time-page .epy-preferred-device-pill{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 9px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--epy-primary),#7d0798);
  color:#fff;
  font-size:.68rem;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
}
.epy-device-time-page .epy-device-card.is-preferred-device{
  border-color:rgba(169,11,185,.42)!important;
  box-shadow:0 18px 42px rgba(109,20,135,.1)!important;
}
@media(max-width:760px){
  .epy-device-time-page .epy-preferred-device-notice{
    align-items:stretch;
    flex-direction:column;
    padding:15px;
  }
  .epy-device-time-page .epy-other-devices-button{
    width:100%;
    justify-content:center;
    text-align:center;
  }
  .epy-device-time-page .epy-device-card-statuses{gap:6px}
}

/* CHECKPOINT 20BF: automatic availability refresh and explicit device scope */
.epy-device-time-page .epy-availability-toolbar.has-device-scope{
  grid-template-columns:minmax(0,1fr) 205px auto;
}
.epy-device-time-page .epy-device-scope-fieldset{
  grid-column:1/-1;
  min-width:0;
  margin:2px 0 0;
  padding:14px;
  border:1px solid #ead9ef;
  border-radius:16px;
  background:linear-gradient(180deg,#fff,#fffaff);
}
.epy-device-time-page .epy-device-scope-fieldset legend{
  width:auto;
  margin:0 0 9px;
  padding:0 5px;
  color:#5d4e67;
  font-size:.72rem;
  font-weight:900;
}
.epy-device-time-page .epy-device-scope-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  min-width:0;
}
.epy-device-time-page .epy-device-scope-option{
  position:relative;
  display:block;
  min-width:0;
  margin:0;
  cursor:pointer;
}
.epy-device-time-page .epy-device-scope-option>input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.epy-device-time-page .epy-device-scope-option>span{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:10px;
  align-items:center;
  min-height:66px;
  padding:10px 12px;
  border:1px solid #e7d9ec;
  border-radius:14px;
  background:#fff;
  color:#2c2035;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease;
}
.epy-device-time-page .epy-device-scope-option>span>i{
  grid-row:1/3;
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:11px;
  background:#f5eafa;
  color:#9811aa;
  font-size:.82rem;
  font-style:normal;
  font-weight:950;
}
.epy-device-time-page .epy-device-scope-option>span>b{
  min-width:0;
  font-size:.82rem;
  font-weight:950;
  line-height:1.2;
  overflow-wrap:anywhere;
}
.epy-device-time-page .epy-device-scope-option>span>small{
  min-width:0;
  color:#75677e;
  font-size:.7rem;
  font-weight:720;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.epy-device-time-page .epy-device-scope-option:hover>span{
  border-color:#d7b7df;
  background:#fffaff;
  transform:translateY(-1px);
}
.epy-device-time-page .epy-device-scope-option.is-selected>span,
.epy-device-time-page .epy-device-scope-option>input:checked+span{
  border-color:#b20cbd;
  background:linear-gradient(135deg,#fff8ff,#f8efff);
  box-shadow:0 0 0 3px rgba(178,12,189,.08);
}
.epy-device-time-page .epy-device-scope-option.is-selected>span>i,
.epy-device-time-page .epy-device-scope-option>input:checked+span>i{
  background:linear-gradient(135deg,#b20cbd,#750793);
  color:#fff;
}
.epy-device-time-page .epy-device-scope-option.is-disabled{
  cursor:not-allowed;
}
.epy-device-time-page .epy-device-scope-option.is-disabled>span{
  opacity:.58;
  background:#f7f4f8;
  transform:none;
}
.epy-device-time-page .epy-availability-toolbar[aria-busy="true"] .epy-device-scope-option,
.epy-device-time-page .epy-availability-toolbar[aria-busy="true"] .epy-date-field{
  pointer-events:none;
}
.epy-device-time-page .epy-preferred-device-notice{
  justify-content:flex-start;
}
@media(max-width:899px){
  .epy-device-time-page .epy-availability-toolbar.has-device-scope{
    grid-template-columns:1fr 1fr;
  }
  .epy-device-time-page .epy-device-scope-fieldset{
    grid-column:1/-1;
  }
}
@media(max-width:640px){
  .epy-device-time-page .epy-availability-toolbar.has-device-scope{
    grid-template-columns:1fr;
  }
  .epy-device-time-page .epy-device-scope-fieldset{
    grid-column:auto;
    padding:12px;
  }
  .epy-device-time-page .epy-device-scope-options{
    grid-template-columns:1fr;
  }
}

/* CHECKPOINT 20BG: reference-matched filter panel */
.epy-quick-home .epy-quick-filter,
.ep-ref-salons-page .ep-ref-salon-filter-hub{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  overflow:visible!important;
}

.epy-quick-home .epy-filter-primary-grid,
.ep-ref-salons-page .epy-filter-primary-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:20px!important;
  width:min(100%,980px)!important;
  margin:20px auto 0!important;
  align-items:stretch!important;
}
.epy-quick-home .epy-filter-secondary-grid,
.ep-ref-salons-page .epy-filter-secondary-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  width:min(100%,980px)!important;
  margin:16px auto 0!important;
  align-items:stretch!important;
}
.ep-ref-salons-page .epy-filter-secondary-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.epy-filter-primary-grid>.epy-choice-control,
.epy-filter-secondary-grid>.epy-choice-control,
.epy-filter-primary-grid>select,
.epy-filter-secondary-grid>select,
.epy-filter-primary-grid>input[type="hidden"],
.epy-filter-secondary-grid>input[type="hidden"]{
  display:none!important;
}

.epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price),
.ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price){
  --epy-filter-border:#f3d4e3;
  --epy-filter-icon-bg:linear-gradient(145deg,#fff1f8,#fce6f1);
  --epy-filter-accent:#ed2998;
  -webkit-appearance:none!important;
  appearance:none!important;
  position:relative!important;
  display:grid!important;
  grid-template-columns:82px minmax(0,1fr) 18px!important;
  grid-template-rows:auto auto!important;
  column-gap:18px!important;
  row-gap:7px!important;
  align-content:center!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:166px!important;
  margin:0!important;
  padding:24px 22px!important;
  border:1.5px solid var(--epy-filter-border)!important;
  border-radius:27px!important;
  background:#fff!important;
  color:#170c30!important;
  text-align:left!important;
  cursor:pointer!important;
  overflow:hidden!important;
  box-shadow:0 10px 30px rgba(51,22,74,.035)!important;
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease!important;
}
.epy-quick-home .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price),
.ep-ref-salons-page .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price){
  --epy-filter-border:#e9dced;
  --epy-filter-icon-bg:linear-gradient(145deg,#faf0fc,#f4eafa);
  --epy-filter-accent:#a528c0;
  -webkit-appearance:none!important;
  appearance:none!important;
  position:relative!important;
  display:grid!important;
  grid-template-columns:60px minmax(0,1fr) 14px!important;
  grid-template-rows:auto auto!important;
  column-gap:13px!important;
  row-gap:5px!important;
  align-content:center!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:122px!important;
  margin:0!important;
  padding:17px!important;
  border:1.5px solid var(--epy-filter-border)!important;
  border-radius:22px!important;
  background:#fff!important;
  color:#170c30!important;
  text-align:left!important;
  cursor:pointer!important;
  overflow:hidden!important;
  box-shadow:0 8px 24px rgba(51,22,74,.03)!important;
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease!important;
}
.epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price):hover,
.ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price):hover,
.epy-quick-home .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price):hover,
.ep-ref-salons-page .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price):hover{
  transform:translateY(-2px)!important;
  border-color:var(--epy-filter-accent)!important;
  box-shadow:0 16px 36px rgba(51,22,74,.08)!important;
}
.epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price):focus-visible,
.ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price):focus-visible,
.epy-quick-home .epy-filter-primary-grid>.epy-quick-date-tile:focus-within,
.ep-ref-salons-page .epy-filter-primary-grid>.epy-quick-date-tile:focus-within{
  outline:4px solid rgba(175,37,195,.13)!important;
  outline-offset:3px!important;
  border-color:var(--epy-filter-accent)!important;
}

.epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"],
.ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"]{
  grid-column:1!important;
  grid-row:1/3!important;
  display:grid!important;
  place-items:center!important;
  width:80px!important;
  height:80px!important;
  min-width:80px!important;
  min-height:80px!important;
  margin:0!important;
  border-radius:24px!important;
  background:var(--epy-filter-icon-bg)!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
.epy-quick-home .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"],
.ep-ref-salons-page .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"]{
  grid-column:1!important;
  grid-row:1/3!important;
  display:grid!important;
  place-items:center!important;
  width:58px!important;
  height:58px!important;
  min-width:58px!important;
  min-height:58px!important;
  margin:0!important;
  border-radius:19px!important;
  background:var(--epy-filter-icon-bg)!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
.epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"]::before,
.ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"]::before,
.epy-quick-home .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"]::before,
.ep-ref-salons-page .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"]::before,
.epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"]::after,
.ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"]::after{
  content:none!important;
  display:none!important;
  background:none!important;
  -webkit-mask:none!important;
  mask:none!important;
}
.epy-quick-home .epy-filter-primary-grid svg,
.ep-ref-salons-page .epy-filter-primary-grid svg{
  display:block!important;
  width:59px!important;
  height:59px!important;
  max-width:59px!important;
  max-height:59px!important;
  overflow:visible!important;
}
.epy-quick-home .epy-filter-secondary-grid svg,
.ep-ref-salons-page .epy-filter-secondary-grid svg{
  display:block!important;
  width:42px!important;
  height:42px!important;
  max-width:42px!important;
  max-height:42px!important;
  overflow:visible!important;
}

.epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>b,
.ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>b{
  grid-column:2!important;
  grid-row:1!important;
  align-self:end!important;
  min-width:0!important;
  margin:0!important;
  color:#150a2d!important;
  font-size:clamp(1.18rem,1.7vw,1.55rem)!important;
  line-height:1.06!important;
  font-weight:950!important;
  letter-spacing:-.025em!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
.epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>small,
.ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>small{
  grid-column:2!important;
  grid-row:2!important;
  align-self:start!important;
  min-width:0!important;
  margin:1px 0 0!important;
  color:#75677d!important;
  font-size:clamp(.84rem,1.1vw,1rem)!important;
  line-height:1.32!important;
  font-weight:730!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
.epy-quick-home .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>b,
.ep-ref-salons-page .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>b{
  grid-column:2!important;
  grid-row:1!important;
  align-self:end!important;
  margin:0!important;
  color:#160b2e!important;
  font-size:1rem!important;
  line-height:1.08!important;
  font-weight:950!important;
}
.epy-quick-home .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>small,
.ep-ref-salons-page .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>small{
  grid-column:2!important;
  grid-row:2!important;
  align-self:start!important;
  margin:1px 0 0!important;
  color:#77697f!important;
  font-size:.75rem!important;
  line-height:1.25!important;
  font-weight:720!important;
}

.epy-filter-tile-chevron{
  grid-column:3!important;
  grid-row:1/3!important;
  align-self:center!important;
  justify-self:end!important;
  display:block!important;
  width:14px!important;
  height:14px!important;
  margin:0!important;
  border-top:4px solid var(--epy-filter-accent)!important;
  border-right:4px solid var(--epy-filter-accent)!important;
  border-bottom:0!important;
  border-left:0!important;
  border-radius:2px!important;
  background:transparent!important;
  transform:rotate(45deg)!important;
}

.epy-filter-theme-date,
.epy-filter-theme-location{
  --epy-filter-border:#f4ccdf!important;
  --epy-filter-icon-bg:linear-gradient(145deg,#fff0f7,#fce4ef)!important;
  --epy-filter-accent:#ef2998!important;
}
.epy-filter-theme-gender{
  --epy-filter-border:#d9dcf9!important;
  --epy-filter-icon-bg:linear-gradient(145deg,#f8efff,#eef3ff)!important;
  --epy-filter-accent:#a63be0!important;
}
.epy-filter-theme-device{
  --epy-filter-border:#d3e1fa!important;
  --epy-filter-icon-bg:linear-gradient(145deg,#edf8ff,#e8f0ff)!important;
  --epy-filter-accent:#267fe8!important;
}
.epy-filter-theme-price-high{
  --epy-filter-border:#f6d7aa!important;
  --epy-filter-icon-bg:linear-gradient(145deg,#fff8e9,#fff0dc)!important;
  --epy-filter-accent:#f39a18!important;
}
.epy-filter-theme-price-low{
  --epy-filter-border:#bde9c7!important;
  --epy-filter-icon-bg:linear-gradient(145deg,#efffed,#e4f9e4)!important;
  --epy-filter-accent:#0caf4d!important;
}

.epy-quick-home .epy-filter-primary-grid>.epy-filter-theme-price-low.active,
.ep-ref-salons-page .epy-filter-primary-grid>.epy-filter-theme-price-low.active{
  border-color:#35c65d!important;
  background:linear-gradient(135deg,#fcfffc,#effbef)!important;
  box-shadow:0 15px 38px rgba(14,177,75,.1)!important;
}
.epy-quick-home .epy-filter-primary-grid>.epy-filter-theme-price-high.active,
.ep-ref-salons-page .epy-filter-primary-grid>.epy-filter-theme-price-high.active{
  border-color:#f3a22a!important;
  background:linear-gradient(135deg,#fffefa,#fff8e9)!important;
  box-shadow:0 15px 38px rgba(239,142,18,.1)!important;
}
.epy-quick-home .epy-filter-primary-grid>.epy-quick-price.active::after,
.ep-ref-salons-page .epy-filter-primary-grid>.epy-quick-price.active::after{
  content:"✓"!important;
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  z-index:7!important;
  display:grid!important;
  place-items:center!important;
  width:38px!important;
  height:38px!important;
  border-radius:50%!important;
  color:#fff!important;
  background:linear-gradient(135deg,#36d86d,#06aa43)!important;
  font-size:21px!important;
  font-weight:950!important;
  line-height:1!important;
  box-shadow:0 9px 22px rgba(8,171,70,.25)!important;
  pointer-events:none!important;
}
.epy-quick-home .epy-filter-primary-grid>.epy-filter-theme-price-high.active::after,
.ep-ref-salons-page .epy-filter-primary-grid>.epy-filter-theme-price-high.active::after{
  background:linear-gradient(135deg,#ffbe42,#f1880e)!important;
  box-shadow:0 9px 22px rgba(241,136,14,.23)!important;
}
.epy-quick-home .epy-filter-primary-grid>.epy-quick-price.active .epy-filter-tile-chevron,
.ep-ref-salons-page .epy-filter-primary-grid>.epy-quick-price.active .epy-filter-tile-chevron{
  margin-top:47px!important;
}

.epy-quick-home .epy-filter-secondary-grid>.epy-filter-secondary-card.active,
.ep-ref-salons-page .epy-filter-secondary-grid>.epy-filter-secondary-card.active,
.epy-quick-home .epy-filter-secondary-grid>.epy-quick-toggle.active,
.ep-ref-salons-page .epy-filter-secondary-grid>.epy-quick-toggle.active{
  border-color:#be70d2!important;
  background:linear-gradient(135deg,#fff,#fff6ff)!important;
  box-shadow:0 12px 30px rgba(160,31,184,.09)!important;
}
.epy-quick-home .epy-filter-secondary-grid>.epy-filter-secondary-card.active::after,
.ep-ref-salons-page .epy-filter-secondary-grid>.epy-filter-secondary-card.active::after,
.epy-quick-home .epy-filter-secondary-grid>.epy-quick-toggle.active::after,
.ep-ref-salons-page .epy-filter-secondary-grid>.epy-quick-toggle.active::after{
  content:"✓"!important;
  position:absolute!important;
  top:9px!important;
  right:9px!important;
  display:grid!important;
  place-items:center!important;
  width:28px!important;
  height:28px!important;
  border-radius:50%!important;
  color:#fff!important;
  background:linear-gradient(135deg,#d332d8,#7a17ba)!important;
  font-size:15px!important;
  font-weight:950!important;
  box-shadow:0 7px 18px rgba(128,26,183,.2)!important;
}

.epy-quick-home .epy-filter-primary-grid .epy-quick-date-tile>input[type="date"],
.ep-ref-salons-page .epy-filter-primary-grid .epy-quick-date-tile>input[type="date"]{
  position:absolute!important;
  inset:0!important;
  z-index:5!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  opacity:0!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}
.epy-filter-primary-grid .epy-quick-price>input[type="radio"],
.epy-filter-secondary-grid .epy-quick-price>input[type="radio"],
.epy-filter-secondary-grid .epy-quick-toggle>input[type="checkbox"]{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}

.epy-quick-home .epy-home-location-prompt,
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished{
  display:grid!important;
  grid-template-columns:68px minmax(0,1fr)!important;
  gap:13px 17px!important;
  align-items:center!important;
  width:min(100%,980px)!important;
  margin:0 auto 20px!important;
  padding:21px!important;
  border:1.5px solid #eadcf1!important;
  border-radius:28px!important;
  background:linear-gradient(135deg,#fff 0%,#fffaff 72%,#f8ecff 100%)!important;
  box-shadow:0 12px 34px rgba(72,30,97,.045)!important;
  overflow:hidden!important;
}
.epy-quick-home .epy-home-location-prompt>.epy-home-location-prompt-icon,
.ep-ref-salons-page .ep-ref-location-banner>.epy-location-banner-icon{
  grid-column:1!important;
  grid-row:1!important;
  display:grid!important;
  place-items:center!important;
  width:64px!important;
  height:64px!important;
  border-radius:21px!important;
  background:linear-gradient(145deg,#f2e6ff,#f9e8fb)!important;
  color:transparent!important;
}
.epy-quick-home .epy-home-location-prompt>div,
.ep-ref-salons-page .ep-ref-location-banner>div{
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
}
.epy-quick-home .epy-home-location-prompt>div>b,
.ep-ref-salons-page .ep-ref-location-banner>div>b{
  display:block!important;
  color:#170d31!important;
  font-size:clamp(1.05rem,1.7vw,1.28rem)!important;
  line-height:1.15!important;
  font-weight:950!important;
}
.epy-quick-home .epy-home-location-prompt>div>small,
.ep-ref-salons-page .ep-ref-location-banner>div>small{
  display:block!important;
  margin-top:5px!important;
  color:#786a82!important;
  font-size:.88rem!important;
  line-height:1.35!important;
  font-weight:720!important;
}
.epy-quick-home .epy-home-location-prompt .epy-location-gradient-action,
.ep-ref-salons-page .ep-ref-location-banner .epy-location-gradient-action{
  grid-column:1/-1!important;
  grid-row:2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:16px!important;
  width:100%!important;
  min-height:80px!important;
  height:auto!important;
  margin:4px 0 0!important;
  padding:0 26px!important;
  border:0!important;
  border-radius:25px!important;
  background:linear-gradient(100deg,#5b34f0 0%,#9135ed 48%,#d83ddd 100%)!important;
  color:#fff!important;
  box-shadow:0 17px 34px rgba(111,47,225,.21)!important;
  cursor:pointer!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important;
}
.epy-quick-home .epy-home-location-prompt .epy-location-gradient-action:hover,
.ep-ref-salons-page .ep-ref-location-banner .epy-location-gradient-action:hover{
  transform:translateY(-2px)!important;
  filter:saturate(1.06)!important;
  box-shadow:0 21px 40px rgba(111,47,225,.27)!important;
}
.epy-location-gradient-action>span{
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  height:42px!important;
  flex:0 0 42px!important;
}
.epy-location-gradient-action>span svg{
  width:40px!important;
  height:40px!important;
  filter:brightness(0) invert(1)!important;
}
.epy-quick-home .epy-home-location-prompt .epy-location-gradient-action>strong,
.ep-ref-salons-page .ep-ref-location-banner .epy-location-gradient-action>strong{
  color:#fff!important;
  font-size:clamp(1.25rem,2.4vw,1.72rem)!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.025em!important;
}

.epy-quick-home .epy-quick-submit,
.ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-submit{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:min(100%,980px)!important;
  min-height:64px!important;
  margin:18px auto 0!important;
  border:0!important;
  border-radius:21px!important;
  background:linear-gradient(100deg,#5532cf 0%,#872dcc 50%,#ca31c8 100%)!important;
  color:#fff!important;
  font-size:1.16rem!important;
  font-weight:950!important;
  box-shadow:0 14px 30px rgba(100,41,190,.19)!important;
}

@media(max-width:980px){
  .epy-quick-home .epy-filter-secondary-grid,
  .ep-ref-salons-page .epy-filter-secondary-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:640px){
  .epy-quick-home .epy-quick-search-card,
  .ep-ref-salons-page .ep-ref-salons-filter-shell{
    padding-left:13px!important;
    padding-right:13px!important;
  }
  .epy-quick-home .epy-filter-primary-grid,
  .ep-ref-salons-page .epy-filter-primary-grid,
  .epy-quick-home .epy-filter-secondary-grid,
  .ep-ref-salons-page .epy-filter-secondary-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
  }
  .epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price),
  .ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price){
    grid-template-columns:52px minmax(0,1fr) 12px!important;
    column-gap:8px!important;
    row-gap:4px!important;
    min-height:130px!important;
    padding:13px 10px!important;
    border-radius:20px!important;
  }
  .epy-quick-home .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price),
  .ep-ref-salons-page .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price){
    grid-template-columns:47px minmax(0,1fr) 10px!important;
    column-gap:7px!important;
    min-height:108px!important;
    padding:11px 9px!important;
    border-radius:18px!important;
  }
  .epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"],
  .ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"]{
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    min-height:52px!important;
    border-radius:17px!important;
  }
  .epy-quick-home .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"],
  .ep-ref-salons-page .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"]{
    width:47px!important;
    height:47px!important;
    min-width:47px!important;
    min-height:47px!important;
    border-radius:15px!important;
  }
  .epy-quick-home .epy-filter-primary-grid svg,
  .ep-ref-salons-page .epy-filter-primary-grid svg{
    width:39px!important;
    height:39px!important;
    max-width:39px!important;
    max-height:39px!important;
  }
  .epy-quick-home .epy-filter-secondary-grid svg,
  .ep-ref-salons-page .epy-filter-secondary-grid svg{
    width:33px!important;
    height:33px!important;
    max-width:33px!important;
    max-height:33px!important;
  }
  .epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>b,
  .ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>b{
    font-size:clamp(.9rem,4.1vw,1.03rem)!important;
    line-height:1.05!important;
  }
  .epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>small,
  .ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>small{
    font-size:clamp(.64rem,2.9vw,.76rem)!important;
    line-height:1.22!important;
  }
  .epy-quick-home .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>b,
  .ep-ref-salons-page .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>b{
    font-size:.83rem!important;
  }
  .epy-quick-home .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>small,
  .ep-ref-salons-page .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>small{
    font-size:.62rem!important;
  }
  .epy-filter-tile-chevron{
    width:10px!important;
    height:10px!important;
    border-width:3px 3px 0 0!important;
  }
  .epy-quick-home .epy-filter-primary-grid>.epy-quick-price.active::after,
  .ep-ref-salons-page .epy-filter-primary-grid>.epy-quick-price.active::after{
    top:8px!important;
    right:8px!important;
    width:29px!important;
    height:29px!important;
    font-size:16px!important;
  }
  .epy-quick-home .epy-filter-primary-grid>.epy-quick-price.active .epy-filter-tile-chevron,
  .ep-ref-salons-page .epy-filter-primary-grid>.epy-quick-price.active .epy-filter-tile-chevron{
    margin-top:34px!important;
  }
  .epy-quick-home .epy-home-location-prompt,
  .ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished{
    grid-template-columns:52px minmax(0,1fr)!important;
    gap:10px 12px!important;
    padding:15px!important;
    border-radius:22px!important;
  }
  .epy-quick-home .epy-home-location-prompt>.epy-home-location-prompt-icon,
  .ep-ref-salons-page .ep-ref-location-banner>.epy-location-banner-icon{
    width:50px!important;
    height:50px!important;
    border-radius:16px!important;
  }
  .epy-quick-home .epy-home-location-prompt .epy-location-gradient-action,
  .ep-ref-salons-page .ep-ref-location-banner .epy-location-gradient-action{
    min-height:64px!important;
    border-radius:20px!important;
    gap:11px!important;
  }
  .epy-location-gradient-action>span,
  .epy-location-gradient-action>span svg{
    width:32px!important;
    height:32px!important;
    flex-basis:32px!important;
  }
  .epy-quick-home .epy-home-location-prompt .epy-location-gradient-action>strong,
  .ep-ref-salons-page .ep-ref-location-banner .epy-location-gradient-action>strong{
    font-size:1.15rem!important;
  }
  .epy-quick-home .epy-quick-submit,
  .ep-ref-salons-page .ep-ref-salon-filter-hub>.epy-quick-submit{
    min-height:56px!important;
    border-radius:18px!important;
    font-size:1rem!important;
  }
}

@media(max-width:360px){
  .epy-quick-home .epy-filter-primary-grid,
  .ep-ref-salons-page .epy-filter-primary-grid,
  .epy-quick-home .epy-filter-secondary-grid,
  .ep-ref-salons-page .epy-filter-secondary-grid{
    gap:7px!important;
  }
  .epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price),
  .ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price){
    grid-template-columns:43px minmax(0,1fr) 9px!important;
    column-gap:6px!important;
    min-height:119px!important;
    padding:10px 7px!important;
  }
  .epy-quick-home .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price),
  .ep-ref-salons-page .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price){
    grid-template-columns:40px minmax(0,1fr) 8px!important;
    min-height:101px!important;
    padding:9px 6px!important;
  }
  .epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"],
  .ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"]{
    width:43px!important;
    height:43px!important;
    min-width:43px!important;
    min-height:43px!important;
    border-radius:14px!important;
  }
  .epy-quick-home .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"],
  .ep-ref-salons-page .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price)>span[class*="epy-filter-icon"]{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    border-radius:13px!important;
  }
  .epy-quick-home .epy-filter-primary-grid svg,
  .ep-ref-salons-page .epy-filter-primary-grid svg{width:33px!important;height:33px!important;max-width:33px!important;max-height:33px!important}
  .epy-quick-home .epy-filter-secondary-grid svg,
  .ep-ref-salons-page .epy-filter-secondary-grid svg{width:28px!important;height:28px!important;max-width:28px!important;max-height:28px!important}
  .epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>b,
  .ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>b{font-size:.83rem!important}
  .epy-quick-home .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>small,
  .ep-ref-salons-page .epy-filter-primary-grid>:is(.epy-quick-tile,.epy-quick-price)>small{font-size:.58rem!important}
}

/* CHECKPOINT 20BG FINAL: neutralize legacy tile-span and mobile price placement rules */
.epy-quick-home .epy-filter-primary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron,
.ep-ref-salons-page .epy-filter-primary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron,
.epy-quick-home .epy-filter-secondary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron,
.ep-ref-salons-page .epy-filter-secondary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron {
  grid-column:3!important;
  grid-row:1/3!important;
  align-self:center!important;
  justify-self:end!important;
  display:block!important;
  width:14px!important;
  height:14px!important;
  min-width:0!important;
  min-height:0!important;
  max-width:14px!important;
  max-height:14px!important;
  margin:0!important;
  padding:0!important;
  border-top:4px solid var(--epy-filter-accent)!important;
  border-right:4px solid var(--epy-filter-accent)!important;
  border-bottom:0!important;
  border-left:0!important;
  border-radius:2px!important;
  background:transparent!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  transform:rotate(45deg)!important;
}
.epy-quick-home .epy-filter-primary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron::before,
.ep-ref-salons-page .epy-filter-primary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron::before,
.epy-quick-home .epy-filter-secondary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron::before,
.ep-ref-salons-page .epy-filter-secondary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron::before,
.epy-quick-home .epy-filter-primary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron::after,
.ep-ref-salons-page .epy-filter-primary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron::after,
.epy-quick-home .epy-filter-secondary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron::after,
.ep-ref-salons-page .epy-filter-secondary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron::after {
  content:none!important;
  display:none!important;
}
.epy-quick-home .epy-filter-primary-grid > :is(.epy-price-high,.epy-price-low),
.ep-ref-salons-page .epy-filter-primary-grid > :is(.epy-price-high,.epy-price-low) {
  grid-column:auto!important;
  grid-row:auto!important;
}
@media(max-width:640px){
  .epy-quick-home .epy-filter-primary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron,
  .ep-ref-salons-page .epy-filter-primary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron,
  .epy-quick-home .epy-filter-secondary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron,
  .ep-ref-salons-page .epy-filter-secondary-grid > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron {
    width:10px!important;
    height:10px!important;
    max-width:10px!important;
    max-height:10px!important;
    border-width:3px 3px 0 0!important;
  }
}

/* CHECKPOINT 20BG: filter selection states follow each card's reference colour. */
.epy-filter-theme-date,.epy-filter-theme-location{--epy-filter-selected-bg:#fff6fb;--epy-filter-selected-shadow:rgba(239,41,152,.13);--epy-filter-selected-check:#ed2998}
.epy-filter-theme-gender{--epy-filter-selected-bg:#faf6ff;--epy-filter-selected-shadow:rgba(166,59,224,.13);--epy-filter-selected-check:#9d35d8}
.epy-filter-theme-device{--epy-filter-selected-bg:#f4f9ff;--epy-filter-selected-shadow:rgba(38,127,232,.13);--epy-filter-selected-check:#267fe8}
.epy-quick-home .epy-filter-primary-grid>.epy-quick-tile.filled,
.ep-ref-salons-page .epy-filter-primary-grid>.epy-quick-tile.filled{
  border-color:var(--epy-filter-accent)!important;
  background:linear-gradient(135deg,#fff 0%,var(--epy-filter-selected-bg,#fff7ff) 100%)!important;
  box-shadow:0 15px 38px var(--epy-filter-selected-shadow,rgba(160,31,184,.11))!important;
}
.epy-quick-home .epy-filter-primary-grid>.epy-quick-tile.filled::after,
.ep-ref-salons-page .epy-filter-primary-grid>.epy-quick-tile.filled::after{
  content:"✓"!important;
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  z-index:7!important;
  display:grid!important;
  place-items:center!important;
  width:38px!important;
  height:38px!important;
  border-radius:50%!important;
  background:var(--epy-filter-selected-check,var(--epy-filter-accent))!important;
  color:#fff!important;
  font-size:21px!important;
  font-weight:950!important;
  line-height:1!important;
  box-shadow:0 9px 22px var(--epy-filter-selected-shadow,rgba(160,31,184,.2))!important;
  pointer-events:none!important;
}
.epy-quick-home .epy-filter-primary-grid>.epy-quick-tile.filled .epy-filter-tile-chevron,
.ep-ref-salons-page .epy-filter-primary-grid>.epy-quick-tile.filled .epy-filter-tile-chevron{
  margin-top:47px!important;
}
.epy-quick-home .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price).filled,
.ep-ref-salons-page .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price).filled{
  border-color:#bd70d1!important;
  background:linear-gradient(135deg,#fff,#fff6ff)!important;
  box-shadow:0 12px 30px rgba(160,31,184,.09)!important;
}
.epy-quick-home .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price).filled::after,
.ep-ref-salons-page .epy-filter-secondary-grid>:is(.epy-quick-tile,.epy-quick-price).filled::after{
  content:"✓"!important;
  position:absolute!important;
  top:9px!important;
  right:9px!important;
  display:grid!important;
  place-items:center!important;
  width:28px!important;
  height:28px!important;
  border-radius:50%!important;
  color:#fff!important;
  background:linear-gradient(135deg,#d332d8,#7a17ba)!important;
  font-size:15px!important;
  font-weight:950!important;
  line-height:1!important;
  box-shadow:0 7px 18px rgba(128,26,183,.2)!important;
  pointer-events:none!important;
}
@media(max-width:640px){
  .epy-quick-home .epy-filter-primary-grid>.epy-quick-tile.filled::after,
  .ep-ref-salons-page .epy-filter-primary-grid>.epy-quick-tile.filled::after{
    top:8px!important;
    right:8px!important;
    width:29px!important;
    height:29px!important;
    font-size:16px!important;
  }
  .epy-quick-home .epy-filter-primary-grid>.epy-quick-tile.filled .epy-filter-tile-chevron,
  .ep-ref-salons-page .epy-filter-primary-grid>.epy-quick-tile.filled .epy-filter-tile-chevron{
    margin-top:34px!important;
  }
}

/* CHECKPOINT 20BH: compact three-column filter cards and blue male-service theme */
@media (min-width: 981px) {
  .epy-quick-home .epy-filter-primary-grid,
  .ep-ref-salons-page .epy-filter-primary-grid,
  .epy-quick-home .epy-filter-secondary-grid,
  .ep-ref-salons-page .epy-filter-secondary-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
    width: min(100%, 980px) !important;
  }
}

.epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price),
.ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) {
  grid-template-columns: 58px minmax(0, 1fr) 12px !important;
  grid-template-rows: auto auto !important;
  column-gap: 13px !important;
  row-gap: 5px !important;
  min-height: 122px !important;
  padding: 17px !important;
  border-radius: 22px !important;
}

.epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > span[class*="epy-filter-icon"],
.ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > span[class*="epy-filter-icon"] {
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  min-height: 58px !important;
  border-radius: 19px !important;
}

.epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) svg,
.ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) svg {
  width: 42px !important;
  height: 42px !important;
  max-width: 42px !important;
  max-height: 42px !important;
}

.epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > b,
.ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > b {
  font-size: 1rem !important;
  line-height: 1.08 !important;
  letter-spacing: -.015em !important;
}

.epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > small,
.ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > small {
  font-size: .75rem !important;
  line-height: 1.25 !important;
}

.epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron,
.ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > .epy-filter-tile-chevron {
  width: 11px !important;
  height: 11px !important;
  max-width: 11px !important;
  max-height: 11px !important;
  border-width: 3px 3px 0 0 !important;
}

.epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > .epy-quick-price.active::after,
.ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > .epy-quick-price.active::after,
.epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > .epy-quick-tile.filled::after,
.ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > .epy-quick-tile.filled::after {
  top: 9px !important;
  right: 9px !important;
  width: 28px !important;
  height: 28px !important;
  font-size: 15px !important;
}

.epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > .epy-quick-tile.filled .epy-filter-tile-chevron,
.ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > .epy-quick-tile.filled .epy-filter-tile-chevron {
  margin-top: 32px !important;
}

.epy-filter-theme-male {
  --epy-filter-border: #c9dcfb !important;
  --epy-filter-icon-bg: linear-gradient(145deg, #eff7ff, #e1efff) !important;
  --epy-filter-accent: #267fe8 !important;
  --epy-filter-selected-bg: #f2f8ff !important;
  --epy-filter-selected-shadow: rgba(38, 127, 232, .14) !important;
  --epy-filter-selected-check: #267fe8 !important;
}

.epy-quick-home .epy-filter-secondary-grid > .epy-filter-theme-male:is(.filled,.active),
.ep-ref-salons-page .epy-filter-secondary-grid > .epy-filter-theme-male:is(.filled,.active) {
  border-color: #267fe8 !important;
  background: linear-gradient(135deg, #fff 0%, #f1f8ff 100%) !important;
  box-shadow: 0 12px 30px rgba(38, 127, 232, .11) !important;
}

.epy-quick-home .epy-filter-secondary-grid > .epy-filter-theme-male:is(.filled,.active)::after,
.ep-ref-salons-page .epy-filter-secondary-grid > .epy-filter-theme-male:is(.filled,.active)::after {
  background: linear-gradient(135deg, #4db5ff, #2364d6) !important;
  box-shadow: 0 7px 18px rgba(38, 127, 232, .22) !important;
}

@media (max-width: 980px) {
  .epy-quick-home .epy-filter-primary-grid,
  .ep-ref-salons-page .epy-filter-primary-grid,
  .epy-quick-home .epy-filter-secondary-grid,
  .ep-ref-salons-page .epy-filter-secondary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
}

@media (max-width: 640px) {
  .epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price),
  .ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) {
    grid-template-columns: 46px minmax(0, 1fr) 9px !important;
    column-gap: 8px !important;
    row-gap: 4px !important;
    min-height: 112px !important;
    padding: 11px 9px !important;
    border-radius: 19px !important;
  }
  .epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > span[class*="epy-filter-icon"],
  .ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > span[class*="epy-filter-icon"] {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    border-radius: 15px !important;
  }
  .epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) svg,
  .ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) svg {
    width: 33px !important;
    height: 33px !important;
    max-width: 33px !important;
    max-height: 33px !important;
  }
  .epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > b,
  .ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > b {
    font-size: .88rem !important;
    line-height: 1.06 !important;
  }
  .epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > small,
  .ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > small {
    font-size: .64rem !important;
    line-height: 1.22 !important;
  }
}

@media (max-width: 360px) {
  .epy-quick-home .epy-filter-primary-grid,
  .ep-ref-salons-page .epy-filter-primary-grid,
  .epy-quick-home .epy-filter-secondary-grid,
  .ep-ref-salons-page .epy-filter-secondary-grid {
    gap: 8px !important;
  }
  .epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price),
  .ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) {
    grid-template-columns: 42px minmax(0, 1fr) 8px !important;
    column-gap: 6px !important;
    min-height: 108px !important;
    padding: 9px 7px !important;
  }
  .epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > span[class*="epy-filter-icon"],
  .ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > span[class*="epy-filter-icon"] {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    border-radius: 14px !important;
  }
  .epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) svg,
  .ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) svg {
    width: 30px !important;
    height: 30px !important;
    max-width: 30px !important;
    max-height: 30px !important;
  }
  .epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > b,
  .ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > b {
    font-size: .81rem !important;
  }
  .epy-quick-home :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > small,
  .ep-ref-salons-page :is(.epy-filter-primary-grid,.epy-filter-secondary-grid) > :is(.epy-quick-tile,.epy-quick-price) > small {
    font-size: .58rem !important;
  }
}

/* CHECKPOINT 20BK: compact location confirmation after geolocation succeeds. */
.epy-quick-home .epy-home-location-prompt.is-success,
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) auto !important;
  grid-template-rows: auto !important;
  gap: 14px !important;
  align-items: center !important;
  width: min(100%, 980px) !important;
  min-height: 0 !important;
  margin-bottom: 18px !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(24, 166, 96, .24) !important;
  border-radius: 20px !important;
  background: linear-gradient(135deg, #f2fff7 0%, #fff 64%, #fbf6ff 100%) !important;
  box-shadow: 0 12px 30px rgba(34, 118, 72, .055) !important;
  overflow: visible !important;
}

.epy-quick-home .epy-home-location-prompt.is-success > .epy-home-location-prompt-icon,
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success > .epy-location-banner-icon {
  position: relative !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: grid !important;
  place-items: center !important;
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  min-height: 52px !important;
  border-radius: 17px !important;
  background: linear-gradient(145deg, #e0faea, #f5fff9) !important;
  box-shadow: inset 0 0 0 1px rgba(24, 166, 96, .12) !important;
}

.epy-quick-home .epy-home-location-prompt.is-success > .epy-home-location-prompt-icon::after,
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success > .epy-location-banner-icon::after {
  content: "✓" !important;
  position: absolute !important;
  right: -4px !important;
  bottom: -4px !important;
  display: grid !important;
  place-items: center !important;
  width: 22px !important;
  height: 22px !important;
  border: 3px solid #fff !important;
  border-radius: 999px !important;
  background: #18a660 !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 1000 !important;
  line-height: 1 !important;
  box-shadow: 0 6px 14px rgba(25, 164, 94, .2) !important;
}

.epy-quick-home .epy-home-location-prompt.is-success > div,
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success > div {
  grid-column: 2 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
}

.epy-quick-home .epy-home-location-prompt.is-success > div > b,
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success > div > b {
  display: block !important;
  margin: 0 !important;
  color: #173425 !important;
  font-size: 1rem !important;
  font-weight: 950 !important;
  line-height: 1.2 !important;
}

.epy-quick-home .epy-home-location-prompt.is-success > div > small,
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success > div > small {
  display: block !important;
  margin-top: 4px !important;
  color: #617369 !important;
  font-size: .8rem !important;
  font-weight: 760 !important;
  line-height: 1.35 !important;
  overflow-wrap: anywhere !important;
}

.epy-quick-home .epy-home-location-prompt.is-success .epy-location-gradient-action,
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success .epy-location-gradient-action {
  grid-column: 3 !important;
  grid-row: 1 !important;
  display: inline-flex !important;
  justify-self: end !important;
  width: auto !important;
  min-width: 108px !important;
  min-height: 44px !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 16px !important;
  border: 1px solid #dcc9e5 !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: #841796 !important;
  box-shadow: 0 8px 20px rgba(93, 30, 111, .065) !important;
  gap: 0 !important;
}

.epy-quick-home .epy-home-location-prompt.is-success .epy-location-gradient-action:hover,
.epy-quick-home .epy-home-location-prompt.is-success .epy-location-gradient-action:focus-visible,
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success .epy-location-gradient-action:hover,
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success .epy-location-gradient-action:focus-visible {
  transform: translateY(-1px) !important;
  border-color: #bf8fd0 !important;
  background: #fff8ff !important;
  box-shadow: 0 11px 24px rgba(93, 30, 111, .1) !important;
}

.epy-quick-home .epy-home-location-prompt.is-success .epy-location-gradient-action > span,
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success .epy-location-gradient-action > span {
  display: none !important;
}

.epy-quick-home .epy-home-location-prompt.is-success .epy-location-gradient-action > strong,
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success .epy-location-gradient-action > strong {
  color: #841796 !important;
  font-size: .82rem !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.epy-quick-home .epy-home-location-prompt.is-loading .epy-location-gradient-action:disabled,
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-loading .epy-location-gradient-action:disabled {
  cursor: wait !important;
  opacity: .75 !important;
}

@media (max-width: 700px) {
  .epy-quick-home .epy-home-location-prompt.is-success,
  .ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success {
    grid-template-columns: 48px minmax(0, 1fr) !important;
    gap: 10px 12px !important;
    padding: 13px !important;
    border-radius: 18px !important;
  }

  .epy-quick-home .epy-home-location-prompt.is-success > .epy-home-location-prompt-icon,
  .ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success > .epy-location-banner-icon {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    border-radius: 15px !important;
  }

  .epy-quick-home .epy-home-location-prompt.is-success > div > b,
  .ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success > div > b {
    font-size: .9rem !important;
  }

  .epy-quick-home .epy-home-location-prompt.is-success > div > small,
  .ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success > div > small {
    font-size: .72rem !important;
  }

  .epy-quick-home .epy-home-location-prompt.is-success .epy-location-gradient-action,
  .ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success .epy-location-gradient-action {
    grid-column: 2 !important;
    grid-row: 2 !important;
    justify-self: start !important;
    width: auto !important;
    min-width: 96px !important;
    min-height: 38px !important;
    height: 38px !important;
    padding: 0 14px !important;
    border-radius: 12px !important;
  }
}

/* CHECKPOINT 20BL: media preview, native editor, booking controls and review filter repair */
.epy-application .epy-media-preview,
.epy-application [data-epy-media-slot-card] .epy-media-preview {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
}
.epy-application .epy-media-preview > em {
  position: relative !important;
  z-index: 1 !important;
}
.epy-application .epy-media-preview img[data-epy-file-preview-image] {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: #fff !important;
}
.epy-application .epy-media-preview img[data-epy-file-preview-image][hidden] {
  display: none !important;
}
.epy-application .epy-media-preview.has-preview > em {
  visibility: hidden !important;
}
.epy-application .epy-media-preview.is-loading::after,
.epy-application .epy-media-preview.is-preview-error::after {
  position: absolute !important;
  inset: 0 !important;
  z-index: 3 !important;
  display: grid !important;
  place-items: center !important;
  padding: 12px !important;
  border-radius: inherit !important;
  background: rgba(255,255,255,.92) !important;
  color: #786a81 !important;
  font-size: .82rem !important;
  font-weight: 850 !important;
  text-align: center !important;
}
.epy-application .epy-media-preview.is-loading::after { content: "Önizleme hazırlanıyor…" !important; }
.epy-application .epy-media-preview.is-preview-error::after { content: "Görsel seçildi; önizleme açılamadı." !important; }
.epy-application [data-epy-media-slot-card].is-uploaded {
  border-color: rgba(28, 175, 103, .42) !important;
  background: linear-gradient(180deg, #fff, #f5fff9) !important;
}
.epy-application [data-epy-media-slot-card].is-uploaded > i {
  border-color: rgba(20, 158, 88, .36) !important;
  background: #effcf5 !important;
  color: #087c49 !important;
}

.epy-nop-rich-editor-field {
  display: grid !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
}
.epy-nop-rich-editor-field > span:first-child {
  color: #67596f !important;
  font-size: .82rem !important;
  font-weight: 900 !important;
}
.epy-nop-rich-editor-field .tox,
.epy-nop-rich-editor-field .tox-tinymce,
.epy-nop-rich-editor-field .mce-tinymce,
.epy-nop-rich-editor-field textarea,
.epy-nop-rich-editor-field iframe {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
.epy-nop-rich-editor-field .tox-tinymce,
.epy-nop-rich-editor-field .mce-tinymce {
  min-height: 280px !important;
  border: 1px solid #e8d9eb !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: none !important;
}
.epy-nop-rich-editor-field .tox-editor-container,
.epy-nop-rich-editor-field .tox-sidebar-wrap,
.epy-nop-rich-editor-field .tox-edit-area {
  min-width: 0 !important;
}
.epy-rich-editor-help {
  display: block !important;
  margin: 0 !important;
  color: #88798f !important;
  font-size: .78rem !important;
  line-height: 1.45 !important;
}

.epy-device-summary-actions {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  margin-top: 14px !important;
  width: 100% !important;
}
.epy-device-summary-actions .epy-btn {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  justify-content: center !important;
}

.epy-session-form .epy-verification-code-field,
.epy-verification-code-field {
  position: static !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  overflow: visible !important;
}
.epy-session-form .epy-verification-code-field > span,
.epy-verification-code-field > span {
  position: static !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  color: #70627a !important;
  font-size: .82rem !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
  background: transparent !important;
}
.epy-session-form .epy-verification-code-field input,
.epy-verification-code-field input {
  position: static !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 50px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border: 1px solid #e5d9e8 !important;
  border-radius: 13px !important;
  background: #fff !important;
  color: #271832 !important;
  font-size: 1rem !important;
  font-weight: 800 !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
}
.epy-session-form .epy-verification-code-field input:focus,
.epy-verification-code-field input:focus {
  border-color: #ae12ba !important;
  box-shadow: 0 0 0 4px rgba(174,18,186,.09) !important;
  outline: 0 !important;
}

.epy-salon-panel-modern .epy-toolbar-card--reviews {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  gap: 14px !important;
  align-items: end !important;
  width: 100% !important;
  min-width: 0 !important;
}
.epy-salon-panel-modern .epy-panel-review-filter {
  display: grid !important;
  grid-template-columns: minmax(220px,1fr) minmax(120px,160px) auto !important;
  gap: 12px !important;
  align-items: end !important;
  width: 100% !important;
  min-width: 0 !important;
}
.epy-salon-panel-modern .epy-panel-review-filter > label {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 7px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  align-content: end !important;
}
.epy-salon-panel-modern .epy-panel-review-filter > label > span {
  position: static !important;
  display: block !important;
  width: auto !important;
  margin: 0 !important;
  color: #71617a !important;
  font-size: .76rem !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  white-space: normal !important;
  transform: none !important;
}
.epy-salon-panel-modern .epy-panel-review-filter select {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 46px !important;
  margin: 0 !important;
  padding: 0 42px 0 13px !important;
  border: 1px solid #e6dae8 !important;
  border-radius: 13px !important;
  background-color: #fff !important;
  color: #2c1b35 !important;
  font-weight: 800 !important;
  box-sizing: border-box !important;
}
.epy-salon-panel-modern .epy-panel-review-filter .epy-filter-inline-actions {
  display: flex !important;
  align-items: end !important;
  gap: 8px !important;
  min-height: 46px !important;
  margin: 0 !important;
}
.epy-salon-panel-modern .epy-toolbar-card--reviews > .epy-count-badge {
  align-self: end !important;
  justify-self: end !important;
  margin: 0 !important;
  white-space: nowrap !important;
}
@media (max-width: 880px) {
  .epy-salon-panel-modern .epy-toolbar-card--reviews { grid-template-columns: 1fr !important; align-items: stretch !important; }
  .epy-salon-panel-modern .epy-panel-review-filter { grid-template-columns: 1fr 1fr !important; }
  .epy-salon-panel-modern .epy-panel-review-filter .epy-filter-inline-actions { grid-column: 1 / -1 !important; }
  .epy-salon-panel-modern .epy-toolbar-card--reviews > .epy-count-badge { justify-self: start !important; }
}
@media (max-width: 580px) {
  .epy-salon-panel-modern .epy-panel-review-filter { grid-template-columns: 1fr !important; }
  .epy-salon-panel-modern .epy-panel-review-filter .epy-filter-inline-actions {
    grid-column: auto !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
  }
  .epy-salon-panel-modern .epy-panel-review-filter .epy-filter-inline-actions > * { width: 100% !important; }
}

/* CHECKPOINT 20BL: nopCommerce Summernote editor fit for public salon forms */
.epy-nop-rich-editor-field .note-editor,
.epy-nop-rich-editor-field .note-frame,
.epy-nop-rich-editor-field .note-editing-area,
.epy-nop-rich-editor-field .note-editable {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
.epy-nop-rich-editor-field .note-editor.note-frame {
  overflow: hidden !important;
  border: 1px solid #e8d9eb !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: none !important;
}
.epy-nop-rich-editor-field .note-toolbar {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 4px !important;
  padding: 9px !important;
  border-bottom: 1px solid #eee2f0 !important;
  background: #fcf8fd !important;
}
.epy-nop-rich-editor-field .note-toolbar .note-btn-group { margin: 0 !important; }
.epy-nop-rich-editor-field .note-toolbar .note-btn {
  min-width: 34px !important;
  min-height: 34px !important;
  padding: 5px 9px !important;
  border-color: #e4d6e7 !important;
  background: #fff !important;
  color: #392442 !important;
}
.epy-nop-rich-editor-field .note-editable {
  min-height: 220px !important;
  padding: 16px !important;
  color: #26172f !important;
  line-height: 1.65 !important;
  overflow-wrap: anywhere !important;
}
.epy-nop-rich-editor-field .note-statusbar { border-top-color: #eee2f0 !important; background: #fcf8fd !important; }
@media (max-width: 600px) {
  .epy-nop-rich-editor-field .note-toolbar { padding: 7px !important; }
  .epy-nop-rich-editor-field .note-toolbar .note-btn { min-width: 32px !important; min-height: 32px !important; padding: 4px 7px !important; }
  .epy-nop-rich-editor-field .note-editable { min-height: 190px !important; padding: 13px !important; }
}

/* CHECKPOINT 20BM: salon listing card image normalization and professional cover cropping */
:root{
  --epy-salon-card-cover-radius: 20px;
  --epy-salon-card-cover-ratio: 4 / 5;
}

@media (min-width: 1100px) {
  .epy-quick-salons .salon-result-card,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card,
  .ep-ref-salons-page .booking-results .salon-result-card {
    grid-template-columns: 320px minmax(0, 1fr) 190px !important;
    gap: 18px !important;
    align-items: start !important;
  }

  .epy-quick-salons .salon-result-card .salon-photo-wrap,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-photo-wrap,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-photo-wrap {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: var(--epy-salon-card-cover-ratio) !important;
    max-height: none !important;
    align-self: start !important;
    border-radius: var(--epy-salon-card-cover-radius) !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #fff 0%, #f8f1fb 100%) !important;
    box-shadow: inset 0 0 0 1px #f0e0f2 !important;
  }

  .epy-quick-salons .salon-result-card .salon-photo-wrap img,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-photo-wrap img,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-photo-wrap img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: var(--epy-salon-card-cover-ratio) !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: var(--epy-salon-card-cover-radius) !important;
    transform: translateZ(0) !important;
  }
}

@media (min-width: 768px) and (max-width: 1099px) {
  .epy-quick-salons .salon-result-card,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card,
  .ep-ref-salons-page .booking-results .salon-result-card {
    grid-template-columns: 230px minmax(0, 1fr) 170px !important;
    gap: 16px !important;
    align-items: start !important;
  }

  .epy-quick-salons .salon-result-card .salon-photo-wrap,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-photo-wrap,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-photo-wrap {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: var(--epy-salon-card-cover-ratio) !important;
    align-self: start !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #fff 0%, #f8f1fb 100%) !important;
    box-shadow: inset 0 0 0 1px #f0e0f2 !important;
  }

  .epy-quick-salons .salon-result-card .salon-photo-wrap img,
  .ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-photo-wrap img,
  .ep-ref-salons-page .booking-results .salon-result-card .salon-photo-wrap img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    aspect-ratio: var(--epy-salon-card-cover-ratio) !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 18px !important;
  }
}

.epy-quick-salons .salon-result-card .salon-photo-wrap img[src*="salon-placeholder"],
.epy-quick-salons .salon-result-card .salon-photo-wrap img[src*="salon-placeholder-logo"],
.ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-photo-wrap img[src*="salon-placeholder"],
.ep-ref-salons-page #ep-ref-salon-list .salon-result-card .salon-photo-wrap img[src*="salon-placeholder-logo"],
.ep-ref-salons-page .booking-results .salon-result-card .salon-photo-wrap img[src*="salon-placeholder"],
.ep-ref-salons-page .booking-results .salon-result-card .salon-photo-wrap img[src*="salon-placeholder-logo"] {
  object-fit: contain !important;
  object-position: center center !important;
  padding: 20px !important;
  background: linear-gradient(135deg, #fff 0%, #fbf7fc 100%) !important;
}

/* CHECKPOINT 20BQ: premium anatomy pin interaction */
.epy-anatomy-page .epy-anatomy-pin,
.epy-anatomy-page .epy-anatomy-pin.pin-left,
.epy-anatomy-page .epy-anatomy-pin.pin-right {
  z-index: 14 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 82px !important;
  max-width: 136px !important;
  min-height: 34px !important;
  padding: 7px 12px !important;
  border: 1px solid rgba(194,158,211,.62) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.96) !important;
  color: #2d1542 !important;
  box-shadow: 0 9px 22px rgba(55,18,72,.11) !important;
  transform: translateY(-50%) !important;
  transition: border-color .16s ease,background-color .16s ease,color .16s ease,box-shadow .16s ease !important;
  overflow: hidden !important;
  isolation: isolate !important;
}
.epy-anatomy-page .epy-anatomy-pin::before,
.epy-anatomy-page .epy-anatomy-pin::after {
  content: none !important;
  display: none !important;
}
.epy-anatomy-page .epy-anatomy-pin .epy-pin-state,
.epy-anatomy-page .epy-anatomy-pin small,
.epy-anatomy-page .epy-anatomy-pin .epy-region-price,
.epy-anatomy-page .epy-anatomy-pin [data-price] {
  display: none !important;
}
.epy-anatomy-page .epy-anatomy-pin strong {
  display: block !important;
  max-width: 100% !important;
  color: inherit !important;
  font-size: .74rem !important;
  line-height: 1.15 !important;
  font-weight: 950 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.epy-anatomy-page .epy-anatomy-pin:hover,
.epy-anatomy-page .epy-anatomy-pin:focus-visible {
  z-index: 40 !important;
  transform: translateY(-50%) !important;
  outline: none !important;
  border-color: rgba(146,34,177,.58) !important;
  background: linear-gradient(180deg,#fff 0%,#f8effc 100%) !important;
  color: #6f1488 !important;
  box-shadow: 0 13px 28px rgba(83,23,100,.17) !important;
}
.epy-anatomy-page .epy-anatomy-pin.selected,
.epy-anatomy-page .epy-anatomy-pin.selected:hover,
.epy-anatomy-page .epy-anatomy-pin.selected:focus-visible {
  transform: translateY(-50%) !important;
  border-color: transparent !important;
  background: linear-gradient(135deg,#8e13aa 0%,#5c0a8a 100%) !important;
  color: #fff !important;
  box-shadow: 0 14px 30px rgba(94,13,116,.26) !important;
}
.epy-anatomy-page .epy-anatomy-line {
  stroke: rgba(130,57,156,.35) !important;
  stroke-width: .16 !important;
  stroke-dasharray: 1.1 1.4 !important;
}
.epy-anatomy-page .epy-anatomy-dot {
  width: 10px !important;
  height: 10px !important;
  border: 2px solid #fff !important;
  background: #a40cb3 !important;
  box-shadow: 0 0 0 3px rgba(164,12,179,.16),0 4px 11px rgba(62,14,78,.18) !important;
}
.epy-anatomy-page .epy-anatomy-dot.selected {
  background: #5b0b86 !important;
  box-shadow: 0 0 0 4px rgba(91,11,134,.19),0 5px 12px rgba(62,14,78,.22) !important;
}
@media(max-width:760px){
  .epy-anatomy-page .epy-anatomy-pin,
  .epy-anatomy-page .epy-anatomy-pin.pin-left,
  .epy-anatomy-page .epy-anatomy-pin.pin-right{
    min-width:66px!important;
    max-width:110px!important;
    min-height:30px!important;
    padding:6px 9px!important;
  }
  .epy-anatomy-page .epy-anatomy-pin strong{font-size:.65rem!important}
}

/* CHECKPOINT 20BR: restore anatomy label-to-point dotted leaders */
.epy-anatomy-page#epy-region-page .epy-anatomy-lines {
  z-index: 3 !important;
  overflow: visible !important;
  opacity: 1 !important;
}
.epy-anatomy-page#epy-region-page .epy-anatomy-line {
  display: block !important;
  stroke: #a90bb9 !important;
  stroke-width: 1.35px !important;
  stroke-dasharray: 3 4 !important;
  stroke-linecap: round !important;
  opacity: .62 !important;
  vector-effect: non-scaling-stroke !important;
  filter: drop-shadow(0 1px 1px rgba(83, 19, 103, .12)) !important;
}
.epy-anatomy-page#epy-region-page .epy-anatomy-line.selected {
  stroke: #6e0b91 !important;
  stroke-width: 1.7px !important;
  stroke-dasharray: 3.2 3.4 !important;
  opacity: .92 !important;
}
.epy-anatomy-page#epy-region-page .epy-anatomy-dot {
  z-index: 8 !important;
}
.epy-anatomy-page#epy-region-page .epy-anatomy-pin {
  z-index: 14 !important;
}
@media (max-width: 760px) {
  .epy-anatomy-page#epy-region-page .epy-anatomy-line {
    stroke-width: 1.5px !important;
    stroke-dasharray: 2.7 3.5 !important;
    opacity: .68 !important;
  }
}

/* CHECKPOINT 20BR: compact premium salon-panel hamburger */
@media (max-width: 1280px) {
  .epy-salon-panel-modern .epy-panel-menu-toggle {
    position: relative !important;
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2px !important;
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    padding: 0 !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    border-radius: 16px !important;
    background: linear-gradient(145deg, rgba(255,255,255,.14), rgba(255,255,255,.06)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 12px 26px rgba(4,0,16,.18) !important;
    overflow: hidden !important;
    -webkit-tap-highlight-color: transparent !important;
    transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease !important;
  }
  .epy-salon-panel-modern .epy-panel-menu-toggle::before {
    content: "" !important;
    position: absolute !important;
    inset: 6px !important;
    border-radius: 12px !important;
    background: rgba(18,5,38,.16) !important;
    pointer-events: none !important;
  }
  .epy-salon-panel-modern .epy-panel-menu-toggle span {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: #fff !important;
    box-shadow: 0 1px 0 rgba(0,0,0,.12) !important;
    transform-origin: center !important;
    transition: transform .2s ease, opacity .16s ease, width .18s ease !important;
  }
  .epy-salon-panel-modern .epy-panel-menu-toggle span:nth-child(1),
  .epy-salon-panel-modern .epy-panel-menu-toggle span:nth-child(3) { width: 22px !important; }
  .epy-salon-panel-modern .epy-panel-menu-toggle span:nth-child(2) {
    width: 15px !important;
    transform: translateX(3.5px) !important;
    opacity: .92 !important;
  }
  .epy-salon-panel-modern .epy-panel-menu-toggle:hover,
  .epy-salon-panel-modern .epy-panel-menu-toggle:focus-visible {
    transform: translateY(-1px) !important;
    border-color: rgba(255,255,255,.3) !important;
    background: linear-gradient(145deg, rgba(255,255,255,.2), rgba(255,255,255,.08)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 15px 30px rgba(4,0,16,.24) !important;
    outline: none !important;
  }
  .epy-salon-panel-modern .epy-panel-menu-state:checked ~ .epy-panel-brand .epy-panel-menu-toggle,
  .epy-salon-panel-modern .epy-panel-nav.is-open .epy-panel-menu-toggle {
    background: linear-gradient(135deg, #d31ac4 0%, #78099d 100%) !important;
    border-color: rgba(255,255,255,.28) !important;
    box-shadow: 0 16px 34px rgba(178,10,170,.3) !important;
  }
  .epy-salon-panel-modern .epy-panel-menu-state:checked ~ .epy-panel-brand .epy-panel-menu-toggle span:nth-child(1),
  .epy-salon-panel-modern .epy-panel-nav.is-open .epy-panel-menu-toggle span:nth-child(1) {
    width: 22px !important;
    transform: translateY(4px) rotate(45deg) !important;
  }
  .epy-salon-panel-modern .epy-panel-menu-state:checked ~ .epy-panel-brand .epy-panel-menu-toggle span:nth-child(2),
  .epy-salon-panel-modern .epy-panel-nav.is-open .epy-panel-menu-toggle span:nth-child(2) {
    width: 15px !important;
    transform: translateX(3.5px) !important;
    opacity: 0 !important;
  }
  .epy-salon-panel-modern .epy-panel-menu-state:checked ~ .epy-panel-brand .epy-panel-menu-toggle span:nth-child(3),
  .epy-salon-panel-modern .epy-panel-nav.is-open .epy-panel-menu-toggle span:nth-child(3) {
    width: 22px !important;
    transform: translateY(-4px) rotate(-45deg) !important;
  }
}


/* CHECKPOINT 20BS: tighter hamburger rhythm and centered nearby-salons heading */
.epy-quick-home .epy-quick-section-head {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  align-items: end !important;
  gap: 16px !important;
  width: 100% !important;
}
.epy-quick-home .epy-quick-section-head > div {
  grid-column: 2 !important;
  min-width: 0 !important;
  text-align: center !important;
  justify-self: center !important;
}
.epy-quick-home .epy-quick-section-head > div .epy-eyebrow,
.epy-quick-home .epy-quick-section-head > div h2 {
  display: block !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}
.epy-quick-home .epy-quick-section-head > a {
  grid-column: 3 !important;
  justify-self: end !important;
  align-self: center !important;
  white-space: nowrap !important;
}
@media (max-width: 767px) {
  .epy-quick-home .epy-quick-section-head {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    align-items: center !important;
    gap: 7px !important;
    margin: 18px 0 14px !important;
    text-align: center !important;
  }
  .epy-quick-home .epy-quick-section-head > div,
  .epy-quick-home .epy-quick-section-head > a {
    grid-column: 1 !important;
    justify-self: center !important;
    text-align: center !important;
  }
  .epy-quick-home .epy-quick-section-head > a {
    font-size: .9rem !important;
  }
}


/* CHECKPOINT 20BT: public salon-search icon alignment */
.ep-ref-salons-page .ep-ref-page-query-field {
  grid-template-rows: 34px auto !important;
  align-content: center !important;
}
.ep-ref-salons-page .ep-ref-page-query-field > .epy-filter-icon-search {
  grid-row: 1 / 3 !important;
  align-self: center !important;
  transform: translateY(-3px) !important;
}
.ep-ref-salons-page .ep-ref-page-query-field > input {
  grid-row: 1 !important;
  align-self: end !important;
}
.ep-ref-salons-page .ep-ref-page-query-field > .ep-ref-global-search-note {
  display: block !important;
  grid-column: 2 !important;
  grid-row: 2 !important;
  align-self: start !important;
  margin: -1px 0 0 !important;
  color: #756680 !important;
  font-size: .82rem !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}


/* CHECKPOINT 20BV: make salon live-notification actions clickable. */
.epy-salon-live-toast {
  pointer-events: none !important;
}
.epy-salon-live-toast.show {
  pointer-events: auto !important;
}
.epy-salon-live-toast a[data-epy-salon-ack] {
  position: relative !important;
  z-index: 2 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  touch-action: manipulation !important;
  -webkit-tap-highlight-color: transparent !important;
}
.epy-salon-live-toast a[data-epy-salon-ack]:focus-visible {
  outline: 3px solid rgba(255,255,255,.78) !important;
  outline-offset: 3px !important;
}

/* CHECKPOINT 20BY: full slot-state visibility and salon shaving service */
.epy-slot-legend{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:12px!important;flex-wrap:wrap!important;color:#74677d!important;font-size:.78rem!important;font-weight:850!important}
.epy-slot-legend span{display:inline-flex!important;align-items:center!important;gap:6px!important;white-space:nowrap!important}
.epy-slot-legend i{display:block!important;width:9px!important;height:9px!important;border-radius:50%!important}
.epy-slot-legend .is-available i{background:#13af62!important;box-shadow:0 0 0 4px rgba(19,175,98,.12)!important}
.epy-slot-legend .is-busy i{background:#dc3545!important;box-shadow:0 0 0 4px rgba(220,53,69,.11)!important}
.epy-slot-grid .epy-slot.is-busy,
.epy-slot-grid .epy-slot[disabled].is-busy,
.epy-slot-grid .epy-slot-button.is-busy,
.epy-slot-grid .epy-slot-button[disabled].is-busy{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;background:linear-gradient(180deg,#fff0f1,#fbdcde)!important;border:1px solid #edabb1!important;color:#9b2130!important;opacity:1!important;cursor:not-allowed!important;box-shadow:none!important;filter:none!important}
.epy-slot-grid .epy-slot.is-busy small,
.epy-slot-grid .epy-slot-button.is-busy small{font-size:.62rem!important;line-height:1!important;text-transform:uppercase!important;letter-spacing:.04em!important;font-weight:950!important;color:#b02736!important}
.epy-slot-grid .epy-slot:not(.is-busy),
.epy-slot-grid .epy-slot-button:not(.is-busy){background:linear-gradient(180deg,#effbf3,#e3f7e9)!important;border-color:#a8dfb8!important;color:#096b3c!important}
.epy-slot-grid .epy-slot:not(.is-busy):hover,
.epy-slot-grid .epy-slot.selected,
.epy-slot-grid .epy-slot-button:not(.is-busy):hover{background:#0eaf5b!important;border-color:#0eaf5b!important;color:#fff!important}

.epy-application-shaving-card{display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(220px,.75fr) minmax(190px,.55fr)!important;gap:14px!important;align-items:center!important;margin:16px 0 20px!important;padding:18px!important;border:1px solid #e8d8ed!important;border-radius:20px!important;background:linear-gradient(135deg,#fffaff,#fff)!important;box-shadow:0 12px 30px rgba(72,23,88,.045)!important}
.epy-application-shaving-copy{display:flex!important;gap:12px!important;align-items:center!important;min-width:0!important}
.epy-application-shaving-copy>span{display:grid!important;place-items:center!important;flex:0 0 46px!important;width:46px!important;height:46px!important;border-radius:15px!important;background:linear-gradient(135deg,#f7defb,#eef5ff)!important;color:#a70fba!important;font-size:1.25rem!important}
.epy-application-shaving-copy b,.epy-application-shaving-copy small{display:block!important}.epy-application-shaving-copy b{font-size:1.02rem!important}.epy-application-shaving-copy small{margin-top:4px!important;color:#75677f!important;line-height:1.4!important}
.epy-application-shaving-toggle,.epy-shaving-service-toggle{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important;padding:13px 14px!important;border:1px solid #eadcec!important;border-radius:15px!important;background:#fff!important;cursor:pointer!important}
.epy-application-shaving-toggle input,.epy-shaving-service-toggle input{width:20px!important;height:20px!important;accent-color:#a80db6!important;flex:0 0 20px!important}
.epy-application-shaving-toggle b,.epy-application-shaving-toggle small,.epy-shaving-service-toggle b,.epy-shaving-service-toggle small{display:block!important}.epy-application-shaving-toggle small,.epy-shaving-service-toggle small{margin-top:2px!important;color:#7b6e84!important;font-size:.75rem!important;line-height:1.3!important}
.epy-application-shaving-fee>span,.epy-shaving-fee-field>span{display:block!important;margin-bottom:6px!important;font-weight:900!important;color:#44304e!important}
.epy-application-shaving-fee>div,.epy-money-input{display:grid!important;grid-template-columns:minmax(0,1fr) 42px!important;align-items:center!important;border:1px solid #e5d5e9!important;border-radius:14px!important;background:#fff!important;overflow:hidden!important}
.epy-application-shaving-fee input,.epy-money-input input{width:100%!important;min-width:0!important;height:46px!important;border:0!important;background:transparent!important;padding:0 12px!important;font-weight:900!important;outline:0!important}
.epy-application-shaving-fee i,.epy-money-input i{display:grid!important;place-items:center!important;height:100%!important;background:#faf0fb!important;color:#9c10a9!important;font-style:normal!important;font-weight:950!important}
.epy-application-shaving-fee small,.epy-shaving-fee-field small{display:block!important;margin-top:6px!important;color:#7b6d84!important;font-size:.72rem!important;line-height:1.35!important}
.epy-shaving-service-card{background:linear-gradient(135deg,#fff9ff,#fafdff)!important}
.epy-shaving-service-form{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(230px,.7fr) minmax(180px,.45fr) auto!important;gap:14px!important;align-items:center!important}
.epy-shaving-service-copy{display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important}.epy-shaving-service-icon{display:grid!important;place-items:center!important;flex:0 0 52px!important;width:52px!important;height:52px!important;border-radius:17px!important;background:linear-gradient(135deg,#f4daf8,#e7f3ff)!important;color:#a60db6!important;font-size:1.35rem!important}.epy-shaving-service-copy h2{margin:2px 0 3px!important}.epy-shaving-service-copy p{margin:0!important;color:#74677d!important;line-height:1.4!important}
.es-pill.epy-shaving-pill,.epy-shaving-pill,.epy-shaving-detail-pill{display:inline-flex!important;align-items:center!important;min-height:28px!important;padding:5px 10px!important;border:1px solid #bfe5dc!important;border-radius:999px!important;background:linear-gradient(135deg,#eefcf7,#f8fffd)!important;color:#08785c!important;font-weight:900!important;font-size:.72rem!important;white-space:nowrap!important}
.epy-shaving-detail-pill{font-size:.82rem!important}
@media(max-width:1000px){.epy-application-shaving-card,.epy-shaving-service-form{grid-template-columns:1fr 1fr!important}.epy-application-shaving-copy,.epy-shaving-service-copy{grid-column:1/-1!important}.epy-shaving-service-form .epy-btn{align-self:end!important}}
@media(max-width:640px){.epy-application-shaving-card,.epy-shaving-service-form{grid-template-columns:1fr!important}.epy-application-shaving-copy,.epy-shaving-service-copy{grid-column:auto!important}.epy-shaving-service-form .epy-btn{width:100%!important}.epy-device-slot-title{align-items:flex-start!important;flex-direction:column!important}.epy-slot-legend{justify-content:flex-start!important}}

/* CHECKPOINT 20DI — salons location prompt: pin stays with heading; CTA stays on its own row. */
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  align-items:stretch!important;
  gap:16px!important;
  width:min(100%,980px)!important;
  min-height:0!important;
  margin:0 auto 20px!important;
  padding:21px!important;
  border:1.5px solid #eadcf1!important;
  border-radius:28px!important;
  background:linear-gradient(135deg,#fff 0%,#fffaff 72%,#f8ecff 100%)!important;
  box-shadow:0 12px 34px rgba(72,30,97,.055)!important;
  overflow:visible!important;
  text-align:left!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished>.ep-ref-location-summary{
  grid-column:1!important;
  grid-row:1!important;
  display:grid!important;
  grid-template-columns:64px minmax(0,1fr)!important;
  align-items:center!important;
  gap:17px!important;
  width:100%!important;
  min-width:0!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished .ep-ref-location-summary>.epy-location-banner-icon{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  width:64px!important;
  height:64px!important;
  min-width:64px!important;
  min-height:64px!important;
  margin:0!important;
  border:1px solid rgba(213,27,147,.08)!important;
  border-radius:21px!important;
  background:linear-gradient(145deg,#ffe8f7 0%,#f3e9ff 100%)!important;
  color:transparent!important;
  box-shadow:inset 0 0 0 1px rgba(208,39,160,.04),0 10px 24px rgba(108,45,145,.08)!important;
  overflow:visible!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished .ep-ref-location-summary>.epy-location-banner-icon svg{
  display:block!important;
  width:42px!important;
  height:42px!important;
  max-width:42px!important;
  max-height:42px!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished .ep-ref-location-summary-copy{
  min-width:0!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished .ep-ref-location-summary-copy>b{
  display:block!important;
  margin:0!important;
  color:#170d31!important;
  font-size:clamp(1.05rem,1.7vw,1.28rem)!important;
  font-weight:950!important;
  line-height:1.18!important;
  letter-spacing:-.02em!important;
  overflow-wrap:anywhere!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished .ep-ref-location-summary-copy>small{
  display:block!important;
  margin:5px 0 0!important;
  color:#786a82!important;
  font-size:.88rem!important;
  font-weight:720!important;
  line-height:1.42!important;
  overflow-wrap:anywhere!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished>.epy-location-gradient-action{
  grid-column:1!important;
  grid-row:2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:80px!important;
  height:auto!important;
  margin:0!important;
  padding:0 26px!important;
  border:0!important;
  border-radius:25px!important;
  background:linear-gradient(100deg,#5b34f0 0%,#9135ed 48%,#d83ddd 100%)!important;
  color:#fff!important;
  box-shadow:0 17px 34px rgba(111,47,225,.21)!important;
  cursor:pointer!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished>.epy-location-gradient-action:hover,
.ep-ref-salons-page .ep-ref-location-banner--polished>.epy-location-gradient-action:focus-visible{
  transform:translateY(-2px)!important;
  filter:saturate(1.06)!important;
  box-shadow:0 21px 40px rgba(111,47,225,.27)!important;
  outline:none!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished>.epy-location-gradient-action>strong{
  color:#fff!important;
  font-size:clamp(1.25rem,2.4vw,1.72rem)!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:-.025em!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-loading .ep-ref-location-summary>.epy-location-banner-icon{
  background:linear-gradient(145deg,#f2e7ff,#fcf7ff)!important;
  animation:epyLocationPulse 1.1s ease-in-out infinite alternate!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-loading>.epy-location-gradient-action:disabled{
  cursor:wait!important;
  opacity:.78!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-error{
  border-color:#f0c4ce!important;
  background:linear-gradient(135deg,#fff 0%,#fff5f7 100%)!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-error .ep-ref-location-summary>.epy-location-banner-icon{
  border-color:rgba(197,47,78,.14)!important;
  background:linear-gradient(145deg,#ffe8ed,#fff7f8)!important;
  box-shadow:inset 0 0 0 1px rgba(197,47,78,.08),0 10px 24px rgba(197,47,78,.08)!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-error>.epy-location-gradient-action{
  background:linear-gradient(100deg,#b92f54,#dc4667)!important;
  box-shadow:0 14px 28px rgba(185,47,84,.18)!important;
}
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success{
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto!important;
  align-items:center!important;
  gap:14px!important;
  padding:14px 16px!important;
  border-color:rgba(24,166,96,.24)!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,#f2fff7 0%,#fff 64%,#fbf6ff 100%)!important;
  box-shadow:0 12px 30px rgba(34,118,72,.055)!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-success>.ep-ref-location-summary{
  grid-column:1!important;
  grid-row:1!important;
  grid-template-columns:52px minmax(0,1fr)!important;
  gap:14px!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-success .ep-ref-location-summary>.epy-location-banner-icon{
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  min-height:52px!important;
  border-color:rgba(24,166,96,.16)!important;
  border-radius:17px!important;
  background:linear-gradient(145deg,#e0faea,#f5fff9)!important;
  box-shadow:inset 0 0 0 1px rgba(24,166,96,.08)!important;
  animation:none!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-success .ep-ref-location-summary>.epy-location-banner-icon svg{
  width:34px!important;
  height:34px!important;
  max-width:34px!important;
  max-height:34px!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-success .ep-ref-location-summary>.epy-location-banner-icon::after{
  content:"✓"!important;
  position:absolute!important;
  right:-4px!important;
  bottom:-4px!important;
  display:grid!important;
  place-items:center!important;
  width:22px!important;
  height:22px!important;
  border:3px solid #fff!important;
  border-radius:999px!important;
  background:#18a660!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:1000!important;
  line-height:1!important;
  box-shadow:0 6px 14px rgba(25,164,94,.2)!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-success .ep-ref-location-summary-copy>b{
  color:#173425!important;
  font-size:1rem!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-success .ep-ref-location-summary-copy>small{
  color:#617369!important;
  font-size:.8rem!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-success>.epy-location-gradient-action{
  grid-column:2!important;
  grid-row:1!important;
  justify-self:end!important;
  width:auto!important;
  min-width:108px!important;
  min-height:44px!important;
  height:44px!important;
  padding:0 16px!important;
  border:1px solid #dcc9e5!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#841796!important;
  box-shadow:0 8px 20px rgba(93,30,111,.065)!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-success>.epy-location-gradient-action:hover,
.ep-ref-salons-page .ep-ref-location-banner--polished.is-success>.epy-location-gradient-action:focus-visible{
  transform:translateY(-1px)!important;
  border-color:#bf8fd0!important;
  background:#fff8ff!important;
  box-shadow:0 11px 24px rgba(93,30,111,.1)!important;
}
.ep-ref-salons-page .ep-ref-location-banner--polished.is-success>.epy-location-gradient-action>strong{
  color:#841796!important;
  font-size:.82rem!important;
  font-weight:950!important;
  white-space:nowrap!important;
}
@media(max-width:700px){
  .ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished{
    gap:13px!important;
    padding:15px!important;
    border-radius:21px!important;
  }
  .ep-ref-salons-page .ep-ref-location-banner--polished>.ep-ref-location-summary{
    grid-template-columns:52px minmax(0,1fr)!important;
    gap:12px!important;
  }
  .ep-ref-salons-page .ep-ref-location-banner--polished .ep-ref-location-summary>.epy-location-banner-icon{
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    min-height:52px!important;
    border-radius:17px!important;
  }
  .ep-ref-salons-page .ep-ref-location-banner--polished .ep-ref-location-summary>.epy-location-banner-icon svg{
    width:35px!important;
    height:35px!important;
    max-width:35px!important;
    max-height:35px!important;
  }
  .ep-ref-salons-page .ep-ref-location-banner--polished .ep-ref-location-summary-copy>b{font-size:.94rem!important}
  .ep-ref-salons-page .ep-ref-location-banner--polished .ep-ref-location-summary-copy>small{font-size:.74rem!important}
  .ep-ref-salons-page .ep-ref-location-banner--polished>.epy-location-gradient-action{
    min-height:62px!important;
    border-radius:19px!important;
    padding:0 18px!important;
  }
  .ep-ref-salons-page .ep-ref-location-banner--polished>.epy-location-gradient-action>strong{font-size:1.12rem!important}
  .ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished.is-success{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    gap:10px!important;
    padding:13px!important;
    border-radius:18px!important;
  }
  .ep-ref-salons-page .ep-ref-location-banner--polished.is-success>.ep-ref-location-summary{
    grid-column:1!important;
    grid-row:1!important;
    grid-template-columns:46px minmax(0,1fr)!important;
    gap:12px!important;
  }
  .ep-ref-salons-page .ep-ref-location-banner--polished.is-success .ep-ref-location-summary>.epy-location-banner-icon{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    min-height:46px!important;
    border-radius:15px!important;
  }
  .ep-ref-salons-page .ep-ref-location-banner--polished.is-success>.epy-location-gradient-action{
    grid-column:1!important;
    grid-row:2!important;
    justify-self:stretch!important;
    width:100%!important;
    min-height:42px!important;
    height:42px!important;
    border-radius:13px!important;
  }
}

/* 20DN-HF6: Kişiye Özel sipariş durum ve hediye görünümü */
.epy-status-cancelled,.epy-status-refunded{background:#fff0f2!important;color:#b4233e!important}
.epy-status-partial-refund{background:#fff7e8!important;color:#a86400!important}
.epy-status-shipped{background:#f2eaff!important;color:#6b2bc8!important}
.epy-status-delivered{background:#eafaf1!important;color:#087a45!important}
.epy-status-processing{background:#eaf3ff!important;color:#1768b7!important}
.epy-personal-gift-note{display:block;margin-top:3px;color:#d11f3e;font-size:.68rem;font-weight:900}

/* CHECKPOINT 20DN-HF6-BF3: tablet/mobile overflow and responsive layout hardening */
.epy-quick-home,
.epy-quick-home .epy-quick-search-card,
.epy-quick-home .epy-quick-intro,
.epy-quick-home .epy-home-location-prompt,
.epy-quick-home .epy-quick-filter,
.ep-ref-salons-page,
.ep-ref-salons-page .es-container,
.ep-ref-salons-page .ep-ref-salons-filter-shell,
.ep-ref-salons-page .ep-ref-salon-filter-hub {
  box-sizing: border-box !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

.epy-quick-home {
  width: 100% !important;
  margin-inline: auto !important;
  padding-inline: clamp(12px, 2.2vw, 22px) !important;
  overflow: visible !important;
}

.epy-quick-home .epy-quick-search-card {
  width: min(1180px, 100%) !important;
  margin-inline: auto !important;
}

.epy-quick-home .epy-quick-intro,
.epy-quick-home .epy-quick-intro h1,
.epy-quick-home .epy-quick-intro p {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  white-space: normal !important;
}

.epy-quick-home .epy-quick-intro h1 {
  overflow-wrap: normal !important;
  word-break: normal !important;
  text-wrap: balance;
}

.epy-quick-home .epy-home-location-prompt,
.ep-ref-salons-page .ep-ref-location-banner,
.ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished {
  width: 100% !important;
  max-width: 980px !important;
}

.epy-quick-home .epy-filter-primary-grid,
.epy-quick-home .epy-filter-secondary-grid,
.ep-ref-salons-page .epy-filter-primary-grid,
.ep-ref-salons-page .epy-filter-secondary-grid {
  width: 100% !important;
  min-width: 0 !important;
}

.epy-quick-home :is(.epy-filter-primary-grid, .epy-filter-secondary-grid) > :is(.epy-quick-tile, .epy-quick-price),
.ep-ref-salons-page :is(.epy-filter-primary-grid, .epy-filter-secondary-grid) > :is(.epy-quick-tile, .epy-quick-price) {
  grid-column: auto !important;
  grid-row: auto !important;
}

.epy-quick-home :is(.epy-quick-tile, .epy-quick-price, .epy-home-query-field),
.ep-ref-salons-page :is(.epy-quick-tile, .epy-quick-price, .ep-ref-mini-search) {
  min-width: 0 !important;
  max-width: 100% !important;
}

.epy-quick-home :is(.epy-quick-tile, .epy-quick-price) > b,
.epy-quick-home :is(.epy-quick-tile, .epy-quick-price) > small,
.ep-ref-salons-page :is(.epy-quick-tile, .epy-quick-price) > b,
.ep-ref-salons-page :is(.epy-quick-tile, .epy-quick-price) > small {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
}

@media (max-width: 1180px) {
  .epy-quick-home {
    padding: 20px 14px 40px !important;
  }

  .epy-quick-home .epy-quick-search-card,
  .ep-ref-salons-page .ep-ref-salons-filter-shell {
    width: 100% !important;
    max-width: 100% !important;
    padding: clamp(22px, 3.4vw, 34px) !important;
    margin-inline: auto !important;
  }

  .epy-quick-home .epy-quick-intro {
    max-width: 100% !important;
    text-align: left !important;
  }

  .epy-quick-home .epy-quick-intro h1 {
    font-size: clamp(2.45rem, 7vw, 4rem) !important;
    line-height: .98 !important;
    letter-spacing: -.055em !important;
  }

  .epy-quick-home .epy-filter-primary-grid,
  .ep-ref-salons-page .epy-filter-primary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .epy-quick-home .epy-filter-secondary-grid,
  .ep-ref-salons-page .epy-filter-secondary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .epy-quick-home .epy-quick-trust--detailed {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .epy-quick-home .salon-result-card,
  .ep-ref-salons-page .salon-result-card {
    grid-template-columns: 140px minmax(0, 1fr) !important;
  }

  .epy-quick-home .salon-result-card .salon-side,
  .ep-ref-salons-page .salon-result-card .salon-side {
    grid-column: 1 / -1 !important;
    border-left: 0 !important;
    border-top: 1px solid #ead8ee !important;
  }
}

@media (max-width: 820px) {
  .epy-quick-home {
    padding-inline: 10px !important;
  }

  .epy-quick-home .epy-quick-search-card,
  .ep-ref-salons-page .ep-ref-salons-filter-shell {
    padding: 20px 16px !important;
    border-radius: 24px !important;
  }

  .epy-quick-home .epy-quick-intro h1 {
    font-size: clamp(2.25rem, 8.5vw, 3.45rem) !important;
    letter-spacing: -.05em !important;
  }

  .epy-quick-home .epy-quick-intro p {
    font-size: .98rem !important;
  }

  .epy-quick-home .epy-home-location-prompt {
    grid-template-columns: 54px minmax(0, 1fr) !important;
    padding: 16px !important;
    border-radius: 22px !important;
  }

  .ep-ref-salons-page .ep-ref-location-banner.ep-ref-location-banner--polished {
    grid-template-columns: minmax(0, 1fr) !important;
    padding: 16px !important;
    border-radius: 22px !important;
  }

  .ep-ref-salons-page .ep-ref-location-banner--polished > .ep-ref-location-summary {
    grid-template-columns: 54px minmax(0, 1fr) !important;
  }

  .epy-quick-home .epy-home-location-prompt > .epy-home-location-prompt-icon,
  .ep-ref-salons-page .ep-ref-location-banner > .epy-location-banner-icon {
    width: 52px !important;
    height: 52px !important;
  }

  .epy-quick-home .epy-filter-primary-grid,
  .ep-ref-salons-page .epy-filter-primary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .epy-quick-home .epy-filter-secondary-grid,
  .ep-ref-salons-page .epy-filter-secondary-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)) !important;
  }

  .epy-quick-home .epy-quick-trust--detailed {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  /* Neutralize the legacy 100vw/negative-margin breakout that can create tablet-browser overflow. */
  .html-home-page .master-wrapper-content,
  .html-home-page .master-column-wrapper,
  .html-home-page .center-1,
  .html-home-page .page-body {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-inline: 0 !important;
  }

  .epy-quick-home {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 12px 8px 32px !important;
    overflow-x: visible !important;
  }

  .epy-quick-home .epy-quick-search-card,
  .ep-ref-salons-page .ep-ref-salons-filter-shell {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 18px 12px !important;
    border-radius: 22px !important;
  }

  .ep-ref-salons-page .es-container {
    width: 100% !important;
    max-width: 100% !important;
    padding-inline: 8px !important;
  }

  .epy-quick-home .epy-quick-intro h1 {
    font-size: clamp(2rem, 10vw, 2.85rem) !important;
    line-height: 1 !important;
  }

  .epy-quick-home .epy-filter-primary-grid,
  .epy-quick-home .epy-filter-secondary-grid,
  .ep-ref-salons-page .epy-filter-primary-grid,
  .ep-ref-salons-page .epy-filter-secondary-grid {
    gap: 10px !important;
  }

  .epy-quick-home .epy-filter-secondary-grid,
  .ep-ref-salons-page .epy-filter-secondary-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)) !important;
  }

  .epy-quick-home .epy-filter-primary-grid,
  .ep-ref-salons-page .epy-filter-primary-grid {
    grid-auto-rows: 1fr !important;
  }

  .epy-quick-home .salon-result-card,
  .ep-ref-salons-page .salon-result-card {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  /* Secondary filters retain their full-width horizontal layout. */
  .epy-quick-home .epy-filter-secondary-grid > :is(.epy-quick-tile, .epy-quick-price) > b,
  .ep-ref-salons-page .epy-filter-secondary-grid > :is(.epy-quick-tile, .epy-quick-price) > b {
    font-size: 1rem !important;
    line-height: 1.3 !important;
  }

  .epy-quick-home .epy-filter-secondary-grid > :is(.epy-quick-tile, .epy-quick-price) > small,
  .ep-ref-salons-page .epy-filter-secondary-grid > :is(.epy-quick-tile, .epy-quick-price) > small {
    font-size: .8125rem !important;
    line-height: 1.4 !important;
  }

  /* Two equal cards per row. Stack their content so icons and arrows cannot
     squeeze labels into a narrow middle track on phone screens. */
  .epy-quick-home .epy-filter-primary-grid > :is(.epy-quick-tile, .epy-quick-price),
  .ep-ref-salons-page .epy-filter-primary-grid > :is(.epy-quick-tile, .epy-quick-price) {
    width: 100% !important;
    height: 100% !important;
    min-height: 152px !important;
    grid-template-areas: none !important;
    grid-template-columns: minmax(0, 1fr) 18px !important;
    grid-template-rows: 42px auto 1fr !important;
    align-content: start !important;
    column-gap: 6px !important;
    row-gap: 8px !important;
    padding: 12px !important;
  }

  .epy-quick-home .epy-filter-primary-grid > :is(.epy-quick-tile, .epy-quick-price) > span[class*="epy-filter-icon"],
  .ep-ref-salons-page .epy-filter-primary-grid > :is(.epy-quick-tile, .epy-quick-price) > span[class*="epy-filter-icon"] {
    grid-area: 1 / 1 !important;
    align-self: start !important;
    justify-self: start !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
  }

  .epy-quick-home .epy-filter-primary-grid > :is(.epy-quick-tile, .epy-quick-price) > .epy-filter-tile-chevron,
  .ep-ref-salons-page .epy-filter-primary-grid > :is(.epy-quick-tile, .epy-quick-price) > .epy-filter-tile-chevron {
    grid-area: 1 / 2 !important;
    margin-top: 0 !important;
  }

  .epy-quick-home .epy-filter-primary-grid > :is(.epy-quick-tile, .epy-quick-price) > b,
  .ep-ref-salons-page .epy-filter-primary-grid > :is(.epy-quick-tile, .epy-quick-price) > b {
    grid-area: 2 / 1 / auto / -1 !important;
    align-self: start !important;
    font-size: .875rem !important;
    line-height: 1.3 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  .epy-quick-home .epy-filter-primary-grid > :is(.epy-quick-tile, .epy-quick-price) > small,
  .ep-ref-salons-page .epy-filter-primary-grid > :is(.epy-quick-tile, .epy-quick-price) > small {
    grid-area: 3 / 1 / auto / -1 !important;
    align-self: start !important;
    font-size: .75rem !important;
    line-height: 1.35 !important;
  }

  .epy-quick-home .epy-filter-primary-grid > :is(.epy-quick-tile.filled, .epy-quick-price.active) .epy-filter-tile-chevron,
  .ep-ref-salons-page .epy-filter-primary-grid > :is(.epy-quick-tile.filled, .epy-quick-price.active) .epy-filter-tile-chevron {
    visibility: hidden !important;
  }

  .epy-quick-home .salon-photo-wrap img,
  .ep-ref-salons-page .salon-photo-wrap img {
    width: 100% !important;
    height: 190px !important;
  }
}

@media (max-width: 420px) {
  .epy-quick-home .epy-filter-secondary-grid,
  .ep-ref-salons-page .epy-filter-secondary-grid,
  .epy-quick-home .epy-quick-trust--detailed {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* Shared plugin-page overflow containment. Scroll remains local to tables/carousels only. */
:where(
  .epy-account-layout,
  .epy-account-layout-pro,
  .epy-booking-page,
  .epy-booking-confirm-page,
  .epy-detail-page,
  .epy-public-page,
  .epy-topic-page,
  .epy-reservation-lookup-page,
  .epy-review-session-page,
  .epy-lookup-page,
  .ep-ref-salons-page,
  .epy-salon-panel-modern
) {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

:where(
  .epy-account-layout,
  .epy-account-layout-pro,
  .epy-booking-page,
  .epy-booking-confirm-page,
  .epy-detail-page,
  .epy-public-page,
  .epy-topic-page,
  .epy-reservation-lookup-page,
  .epy-review-session-page,
  .epy-lookup-page,
  .ep-ref-salons-page,
  .epy-salon-panel-modern
) :where(img, svg, video, canvas, iframe, input, select, textarea, button) {
  max-width: 100% !important;
}

:where(.epy-table-wrap, .table-wrapper, .table-responsive, .ep-ref-results-wrap) {
  max-width: 100% !important;
  overflow-x: auto !important;
  overscroll-behavior-inline: contain !important;
  -webkit-overflow-scrolling: touch !important;
}

@media (max-width: 980px) {
  :where(.epy-dialog, .epy-modal-dialog, .epy-location-dialog, .epy-choice-dialog, .epy-device-dialog) {
    width: min(100%, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    max-height: calc(100dvh - 24px) !important;
  }

  :where(.epy-account-layout-pro, .epy-detail-layout, .epy-booking-confirm-layout, .epy-confirm-layout) {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* Three-step booking; single final confirmation with pay-at-salon summary. */
.epy-selectable-device[hidden],#epy-change-selection[hidden]{display:none!important}.epy-booking-stepper{grid-template-columns:repeat(3,minmax(0,1fr))}.epy-final-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:24px;border:1px solid #eadcf5;border-radius:22px;background:#fff;margin:20px 0}.epy-final-summary h2{font-size:22px;margin:6px 0}.epy-final-summary p{margin:6px 0;color:#665b77}.epy-final-price{font-size:26px;color:#9209ae;text-align:right}.epy-final-price small{display:block;font-size:13px;font-weight:500;color:#73617c}.epy-final-summary dl{grid-column:1/-1;display:flex;gap:28px;margin:0}.epy-final-summary dt{font-size:12px;color:#786d87}.epy-final-summary dd{margin:4px 0;font-weight:600}.epy-final-summary>p,.epy-final-summary>a{grid-column:1/-1}.epy-final-consents{margin:24px 0}.epy-final-consents h2{font-size:20px}.epy-final-consents .epy-contract-list{display:grid;gap:10px}.epy-final-consents .epy-contract-card{padding:16px}.epy-pay-at-salon-notice{background:#f7f0ff;border:1px solid #e5d5f6;border-radius:14px;padding:16px;line-height:1.6}.epy-booking-info-form>.epy-form-actions{position:sticky;bottom:0;background:#fff;padding:16px 0;z-index:4;border-top:1px solid #eee4f5}
@media(max-width:600px){.epy-final-summary{padding:18px;gap:12px}.epy-final-price{font-size:21px}.epy-final-summary h2{font-size:19px}.epy-final-summary dl{flex-wrap:wrap;gap:12px}.epy-booking-stepper span{font-size:11px}.epy-booking-info-form>.epy-form-actions{flex-wrap:wrap}.epy-booking-info-form>.epy-form-actions .epy-btn-primary{width:100%}}

.epy-booking-page .epy-booking-stepper{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.epy-booking-page .epy-booking-stepper span{min-width:0;white-space:normal;font-size:13px!important}.epy-booking-page .epy-booking-stepper b{flex-shrink:0}.epy-booking-page .epy-booking-stepper span:not(.active){font-size:13px!important}
@media(max-width:600px){.epy-booking-page .epy-booking-stepper span{flex-direction:column;padding:8px 5px;gap:5px;text-align:center;font-size:11px!important}.epy-booking-page .epy-booking-stepper span:not(.active){font-size:11px!important}.epy-booking-page .epy-booking-stepper b{width:24px;height:24px}}

/* R2: Epilasyon Sepeti — consistent, compact and accessible booking surfaces. */
:root{--epy-r2-purple:#7028b8;--epy-r2-navy:#211331;--epy-r2-muted:#655b74;--epy-r2-border:#d9cbe9;--epy-r2-tint:#f3ecfb}
.epy-booking-page,.epy-success,.epy-account-layout,.epy-detail-page,.epy-quick-home{color:var(--epy-r2-navy)}
.epy-quick-home .epy-quick-intro h1{font-size:clamp(30px,4vw,56px)!important;line-height:1.16!important;font-weight:700!important;letter-spacing:-1.5px!important;max-width:850px;margin:18px auto!important}
.epy-quick-home .epy-quick-intro p{font-size:17px!important;font-weight:400!important;line-height:1.65!important;max-width:780px;margin:0 auto 24px!important;color:var(--epy-r2-muted)!important}
.epy-quick-home .epy-quick-search-card,.ep-ref-salons-page .epy-quick-search-card{padding:30px!important;border-radius:24px!important;box-shadow:0 12px 40px #28143a08!important}
.epy-home-location-prompt,.ep-ref-location-banner--polished{display:flex!important;align-items:center!important;flex-wrap:wrap;gap:18px!important;padding:22px!important;border-radius:18px!important;background:linear-gradient(120deg,#f4edfc,#fff)!important;border:1px solid var(--epy-r2-border)!important;box-shadow:none!important;max-width:none!important;margin:24px 0!important}
.epy-home-location-prompt>div,.ep-ref-location-banner-main{flex:1;min-width:220px}
.epy-home-location-prompt b,.ep-ref-location-banner--polished b{font-size:19px!important;font-weight:650!important;color:var(--epy-r2-navy)!important}
.epy-home-location-prompt small,.ep-ref-location-banner--polished small{display:block;font-size:14px!important;line-height:1.6;font-weight:400!important;color:var(--epy-r2-muted)!important}
.epy-location-gradient-action{background:#7028b8!important;color:#fff!important;width:auto!important;min-height:48px!important;padding:13px 23px!important;border:0!important;border-radius:12px!important;box-shadow:0 5px 14px #7028b820!important;gap:9px!important;flex:0 0 auto!important;font-size:16px!important}
.epy-location-gradient-action strong{font-size:16px!important;font-weight:600!important;color:#fff!important}.epy-location-gradient-action svg{width:20px!important;height:20px!important;filter:none!important}
.epy-location-gradient-action:hover,.epy-btn-primary:hover{background:#552080!important;transform:translateY(-1px)}
.epy-filter-primary-grid{gap:12px!important}
.epy-quick-tile{min-height:104px!important;padding:19px 18px!important;border:1px solid var(--epy-r2-border)!important;border-radius:16px!important;background:#fff!important;box-shadow:none!important;gap:14px!important}
.epy-quick-tile:hover{border-color:#8a49c3!important;background:#faf7fe!important;box-shadow:0 5px 16px #4020580a!important}
.epy-quick-tile>b,.epy-quick-tile b{font-size:16px!important;font-weight:650!important;color:var(--epy-r2-navy)!important}.epy-quick-tile small{font-size:13px!important;line-height:1.5!important;font-weight:400!important;color:var(--epy-r2-muted)!important}
.epy-quick-tile>[class*="icon"],.epy-home-query-field>[class*="icon"],.epy-home-location-prompt-icon,.epy-location-banner-icon{width:44px!important;height:44px!important;border-radius:12px!important;background:var(--epy-r2-tint)!important;color:#742ab7!important;display:grid!important;place-items:center!important;flex-shrink:0!important;filter:none!important}
.epy-quick-tile svg,.epy-home-query-field svg,.epy-home-location-prompt-icon svg,.epy-location-banner-icon svg{width:25px!important;height:25px!important;filter:none!important}
.epy-home-location-prompt-icon:before,.epy-home-location-prompt-icon:after{display:none!important}
.epy-quick-tile.active,.epy-quick-tile.is-active,.epy-quick-tile[aria-pressed=true]{border-color:#782db8!important;background:#f2eafa!important}
.epy-quick-submit,.epy-quick-filter button[type=submit]{background:#7028b8!important;color:#fff!important;border-radius:12px!important;min-height:52px!important;font-size:17px!important;box-shadow:0 5px 18px #7028b820!important}
.epy-home-query-field,.epy-salon-query-field{border-color:var(--epy-r2-border)!important;border-radius:14px!important;min-height:72px!important;box-shadow:none!important}
.epy-modal-dialog{border-radius:20px!important;border:1px solid var(--epy-r2-border)!important;box-shadow:0 25px 80px #21133124!important;max-height:85dvh;overflow:auto;padding:28px!important}.epy-modal-dialog h2{font-size:27px!important;line-height:1.25!important;font-weight:650!important;letter-spacing:-.4px!important;margin:10px 0 12px!important}.epy-modal-dialog p{font-size:15px!important;font-weight:400!important;line-height:1.7!important}
.epy-modal-dialog .epy-choice-option,.epy-choice-option{border-radius:12px!important;border-color:var(--epy-r2-border)!important;padding:16px!important}.epy-choice-option b{font-size:16px!important;font-weight:600!important}.epy-choice-option small{font-size:13px!important;font-weight:400!important}.epy-choice-option.active,.epy-choice-option.is-selected,.epy-choice-option[aria-selected=true]{border:2px solid #7028b8!important;background:#f3eafa!important}.epy-modal-backdrop{background:#21133180!important;backdrop-filter:blur(4px)!important}
.epy-btn{border-radius:11px!important;font-size:15px!important;font-weight:600!important;min-height:46px;padding:12px 19px!important;line-height:1.4!important}.epy-btn-primary{background:#7028b8!important;border:1px solid #7028b8!important;color:#fff!important;box-shadow:0 5px 16px #7028b81a!important}.epy-btn-secondary{border:1px solid #b79bce!important;color:#60238e!important;background:#fff!important;box-shadow:none!important}.epy-btn:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #b578e5!important;outline-offset:3px}
.epy-booking-page{max-width:1200px;margin-inline:auto;padding:28px 22px}.epy-booking-heading h1{font-size:clamp(29px,3.2vw,43px)!important;line-height:1.2!important;font-weight:650!important;letter-spacing:-.8px!important}.epy-booking-heading p{font-size:16px!important;color:var(--epy-r2-muted)!important}
.epy-final-summary{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:16px 24px!important;padding:25px!important;border:1px solid #cbb4e0!important;border-left:5px solid #792dbc!important;border-radius:18px!important;background:linear-gradient(115deg,#f7f2fc,#fff)!important;box-shadow:0 7px 25px #29113c08!important;margin-bottom:22px!important}.epy-final-summary h2{font-size:24px!important;margin:7px 0!important;font-weight:650!important}.epy-final-summary p{margin:3px 0!important;font-size:15px!important}.epy-final-price{text-align:right;color:#7028b8!important;font-size:28px!important;white-space:nowrap}.epy-final-price small{display:block;font-size:13px!important;font-weight:400;color:#655b74}.epy-final-summary dl{grid-column:1/-1;display:flex!important;flex-wrap:wrap;gap:28px!important;margin:0!important;padding:15px 0;border-block:1px solid #e4d8ef}.epy-final-summary dt{font-size:12px!important;color:#655b74}.epy-final-summary dd{font-size:16px!important;font-weight:600;margin:5px 0 0!important}.epy-final-summary>a{justify-self:start}.epy-region-tags{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.epy-region-tags span{font-size:13px;padding:7px 12px;color:#5c2386;background:#e9dcf6;border-radius:8px}
.epy-contact-summary-card{background:#f3eafa!important;border-color:#c6a7df!important;padding:24px!important;box-shadow:none!important}.epy-contact-summary-icon{background:#137b56!important;color:#fff!important;box-shadow:none!important}.epy-contact-summary-card h2{font-size:25px!important;margin:6px 0 16px!important}.epy-contact-summary-grid{gap:10px!important}.epy-contact-summary-grid>span{background:#fff!important;border:1px solid #d3bfe3!important;border-radius:12px!important;padding:12px 16px!important}.epy-contact-summary-grid b{font-size:11px!important;color:#675473!important;letter-spacing:.5px}.epy-contact-summary-grid em{font-size:15px!important;color:#211331!important;overflow-wrap:anywhere;font-weight:600!important}
.epy-contract-card{border:1px solid #cfb8e2!important;border-radius:14px!important;padding:20px!important;background:#fff!important;box-shadow:none!important;gap:16px!important}.epy-contract-card:has(input:checked){background:#f5eefd!important;border-color:#9d66c8!important}.epy-contract-icon{width:44px!important;height:44px!important;border-radius:11px!important;background:#eadcf7!important;color:#7028b8!important;flex-shrink:0}.epy-contract-icon svg{width:24px;height:24px}.epy-contract-copy b{font-size:16px!important;font-weight:600!important}.epy-contract-copy small{font-size:14px!important;line-height:1.6!important;color:#655b74!important}.epy-contract-card input[type=checkbox]{accent-color:#7028b8!important;width:22px!important;height:22px!important;flex-shrink:0}.epy-contract-copy .epy-link-button{color:#7028b8;padding:0;border:0;background:transparent;font-size:14px;font-weight:600;margin-top:7px}.epy-final-consents h2,.epy-payment-choices h2{font-size:23px!important;font-weight:600!important}
.epy-payment-choices{padding:24px;background:#f7f3fc;border:1px solid #d4bfe5;border-radius:16px;margin-top:24px}.epy-payment-choices>label{display:flex;gap:14px;align-items:center;padding:18px;border:1px solid #d4bfe5;border-radius:12px;margin-top:12px;background:#fff;cursor:pointer}.epy-payment-choices>label:has(input:checked){background:#eee2f8;border-color:#7028b8}.epy-payment-choices input{width:21px;height:21px;accent-color:#7028b8}.epy-payment-choices b{display:block;font-size:16px}.epy-payment-choices small{display:block;margin-top:5px;font-size:14px;color:#655b74;line-height:1.6}.epy-bank-details{display:grid;gap:8px;padding:20px;background:#fff8e9;border:1px solid #d9b66f;border-radius:12px;margin:18px 0;overflow-wrap:anywhere}.epy-bank-details span{font-weight:650;letter-spacing:1px}.epy-pay-at-salon-notice{background:#eee4f8!important;color:#452061!important;border-color:#c5a4df!important;font-size:15px!important;line-height:1.7!important}
.epy-selectable-device[hidden]{display:none!important}.epy-selection-locked .epy-selectable-device.active .epy-device-slot-section{display:none!important}.epy-selection-locked .epy-selectable-device.active{border:2px solid #7028b8!important;background:#f6effc!important}.epy-selection-locked .epy-device-visual{max-width:150px!important;height:120px!important}.epy-selection-locked .epy-device-summary-note{display:none}.epy-device-summary{border-color:#c5a4df!important;background:linear-gradient(145deg,#f2eafa,#fff)!important;box-shadow:none!important}.epy-device-summary h2{font-size:25px!important}.epy-device-summary .epy-summary-line{gap:15px}.epy-time-confirmation-status{background:#e0f4eb!important;color:#0e7049!important}.epy-time-confirmation-status[hidden],#epy-change-selection[hidden]{display:none!important}
.epy-success{max-width:900px!important;padding:35px!important;margin:45px auto!important;text-align:center;border:1px solid #cdb2e3!important;border-top:5px solid #7028b8!important;border-radius:22px!important;background:linear-gradient(155deg,#f7f1fc,#fff 55%)!important}.epy-success h1{font-size:clamp(30px,4vw,43px)!important}.epy-success-icon{width:70px!important;height:70px!important;font-size:38px!important;background:#def5e9!important;color:#137b56!important;margin-bottom:20px!important}.epy-success-meta{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;margin:26px 0!important;text-align:left!important}.epy-success-meta>div{padding:17px!important;background:#fff!important;border:1px solid #dbcbe9!important;border-radius:12px!important;min-width:0}.epy-success-meta span{font-size:12px!important;color:#655b74!important;display:block;margin-bottom:7px}.epy-success-meta b{font-size:16px!important;overflow-wrap:anywhere}.epy-success-meta .epy-success-total{background:#eee0fa!important;grid-column:1/-1;border-color:#ac7dd0!important}.epy-success-total b{font-size:26px!important;color:#7028b8}
.epy-booking-list-card{border:1px solid #d1b9e3!important;border-left:4px solid #8b42bf!important;border-radius:17px!important;padding:20px!important;gap:20px!important;box-shadow:0 5px 25px #32114e07!important}.epy-booking-date{background:#7028b8!important;color:#fff!important;border-radius:13px!important;min-width:92px!important;padding:17px!important}.epy-booking-date b{color:#fff!important;font-size:32px!important}.epy-booking-date span,.epy-booking-date small{color:#fff!important;font-size:13px!important}.epy-booking-list-body h2{font-size:23px!important;font-weight:600!important}.epy-reservation-number{font-size:12px!important;color:#7028b8!important}.epy-booking-list-body p{font-size:15px!important;font-weight:400!important}.epy-booking-meta{font-size:14px!important;color:#655b74!important}.epy-booking-actions{gap:8px!important;min-width:210px}.epy-booking-actions .epy-btn{font-size:14px!important}.epy-status{font-size:12px!important;padding:8px 12px!important;font-weight:600!important}.epy-status-confirmed,.epy-status-completed{background:#dff4e8!important;color:#126c49!important}.epy-status-paymentpending,.epy-status-cancellationrequested{background:#fff0d1!important;color:#885416!important}.epy-status-cancelled,.epy-status-expired{background:#eeeaf1!important;color:#655b74!important}.epy-account-filter-card{background:#f7f2fc!important;border-color:#d0b7e3!important;padding:18px!important;border-radius:15px!important}.epy-account-main h1{font-size:36px!important;font-weight:650!important}.epy-account-filter-card input,.epy-account-filter-card select{border-color:#c7aedb!important;font-size:14px!important}.epy-account-nav{border-color:#d4bfe5!important}.epy-salon-faq{margin-top:24px}.epy-salon-faq details{padding:16px;border:1px solid #d4bfe5;border-radius:11px;margin:9px 0}.epy-salon-faq summary{font-weight:600;cursor:pointer}.epy-salon-about-rich{line-height:1.8;color:#493d57}.epy-classic-hero-card h1{font-size:clamp(30px,3.5vw,46px)!important;font-weight:650!important;letter-spacing:-.7px!important}
@media(max-width:760px){.epy-quick-home .epy-quick-search-card,.ep-ref-salons-page .epy-quick-search-card{padding:18px!important}.epy-home-location-prompt,.ep-ref-location-banner--polished{padding:17px!important;gap:12px!important}.epy-location-gradient-action{width:100%!important}.epy-quick-tile{min-height:92px!important;padding:14px!important}.epy-filter-primary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.epy-quick-tile>[class*="icon"]{width:35px!important;height:35px!important}.epy-quick-tile small{font-size:12px!important}.epy-modal-dialog{width:calc(100vw - 28px)!important;padding:22px!important;margin:auto!important;max-height:88dvh!important}.epy-final-summary{grid-template-columns:1fr!important;padding:20px!important}.epy-final-price{text-align:left!important}.epy-final-summary>a{justify-self:stretch}.epy-contact-summary-main{flex-wrap:wrap}.epy-contact-summary-grid{grid-template-columns:1fr!important}.epy-contract-card{padding:15px!important;gap:10px!important}.epy-contract-icon{display:none!important}.epy-success{margin:20px 12px!important;padding:23px!important}.epy-success-meta{grid-template-columns:1fr!important}.epy-booking-list-card{flex-wrap:wrap!important;display:flex!important}.epy-booking-list-body{flex:1;min-width:170px}.epy-booking-actions{width:100%;display:grid!important;grid-template-columns:1fr!important;min-width:0}.epy-account-filter-card{display:grid!important;grid-template-columns:1fr 1fr!important}.epy-final-summary dl{gap:18px!important}.epy-contact-summary-card{padding:18px!important}.epy-selection-locked .epy-device-visual{display:none!important}}
@media(prefers-reduced-motion:reduce){.epy-btn,.epy-quick-tile{transition:none!important;transform:none!important}}

[hidden]{display:none!important}

/* R9 compact consent cards v1 */
.epy-final-consents{margin:18px 0!important}
.epy-final-consents h2{font-size:19px!important;margin:0 0 10px!important}
.epy-final-consents .epy-contract-list{gap:8px!important;align-items:stretch}
.epy-final-consents .epy-contract-card{grid-template-columns:28px minmax(0,1fr) 24px!important;padding:10px 12px!important;gap:10px!important;border-radius:10px!important;min-height:0!important;align-items:center!important}
.epy-final-consents .epy-contract-icon{display:grid!important;width:28px!important;height:28px!important;border-radius:7px!important}
.epy-final-consents .epy-contract-icon svg{width:17px;height:17px}
.epy-final-consents .epy-contract-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;min-width:0}
.epy-final-consents .epy-contract-copy>b,.epy-final-consents .epy-contract-copy>label,.epy-final-consents .epy-contract-copy>button:first-child{grid-column:1;grid-row:1;text-align:left}
.epy-final-consents .epy-contract-copy b{font-size:14px!important;line-height:1.35!important}
.epy-final-consents .epy-contract-copy small{grid-column:1/-1;grid-row:2;font-size:12px!important;line-height:1.4!important;margin:0!important}
.epy-final-consents .epy-contract-copy .epy-link-button{margin:0!important;font-size:12px!important;line-height:1.4;white-space:normal}
.epy-final-consents .epy-contract-copy>button:not(:first-child){grid-column:2;grid-row:1;white-space:nowrap;align-self:start}
.epy-final-consents .epy-contract-card input[type=checkbox]{width:22px!important;height:22px!important;margin:0!important;justify-self:end!important}
@media(min-width:1000px){.epy-final-consents .epy-contract-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:599px){.epy-final-consents .epy-contract-card{grid-template-columns:minmax(0,1fr) 24px!important}.epy-final-consents .epy-contract-icon{display:none!important}.epy-final-consents .epy-contract-copy{gap:4px 8px}.epy-final-consents .epy-contract-copy b{font-size:13px!important}}

/* R9 consolidated home and smaller consents v2 */
.epy-r9-compact-home .epy-dashboard-topline h1{font-size:30px!important;margin-bottom:6px!important}.epy-r9-compact-home .epy-dashboard-topline p{font-size:14px!important}.epy-r9-compact-home .epy-dashboard-topline{margin-bottom:16px!important}
.epy-r9-compact-home .epy-r9-summary{gap:12px!important;margin:0 0 16px!important}.epy-r9-compact-home .epy-r9-summary article{padding:14px 16px!important;border-radius:13px!important}.epy-r9-compact-home .epy-r9-summary strong{font-size:28px!important}.epy-r9-compact-home .epy-r9-summary span{font-size:13px!important}.epy-r9-compact-home .epy-r9-summary small{font-size:11px!important}
.epy-r9-finance-mini{display:flex;gap:24px;align-items:center;flex-wrap:wrap;padding:16px 18px;margin:16px 0;background:#fff;border:1px solid #e7dcec;border-radius:13px}.epy-r9-finance-mini>div{display:grid;gap:4px}.epy-r9-finance-mini span{font-size:12px;color:#746681}.epy-r9-finance-mini strong{font-size:20px;color:#13855a}.epy-r9-finance-mini>a{margin-left:auto;font-size:13px;font-weight:600}.epy-r9-salon-settings{background:#fff;border:1px solid #e7dcec;border-radius:12px;padding:12px 16px;margin-top:14px}.epy-r9-salon-settings>summary{cursor:pointer;font-size:13px;font-weight:600}.epy-r9-salon-settings .epy-holiday-card{margin-top:12px}
.epy-final-consents{margin:12px 0!important}.epy-final-consents h2{font-size:17px!important;margin-bottom:8px!important}.epy-final-consents .epy-contract-list{gap:6px!important}.epy-final-consents .epy-contract-card{padding:7px 10px!important;gap:7px!important;grid-template-columns:22px minmax(0,1fr) 22px!important;border-radius:8px!important}.epy-final-consents .epy-contract-icon{width:22px!important;height:22px!important;border-radius:5px!important}.epy-final-consents .epy-contract-icon svg{width:14px;height:14px}.epy-final-consents .epy-contract-copy{gap:2px 8px!important}.epy-final-consents .epy-contract-copy b{font-size:13px!important}.epy-final-consents .epy-contract-copy small{font-size:11px!important;line-height:1.3!important}.epy-final-consents .epy-contract-copy .epy-link-button{font-size:11px!important}.epy-final-consents .epy-contract-card input[type=checkbox]{width:22px!important;height:22px!important}
@media(max-width:599px){.epy-final-consents .epy-contract-card{grid-template-columns:minmax(0,1fr) 22px!important}.epy-r9-compact-home .epy-dashboard-topline h1{font-size:24px!important}}

/* Single-column legal list, requested final layout */
.epy-final-consents .epy-contract-list{grid-template-columns:minmax(0,1fr)!important;gap:5px!important}
.epy-final-consents .epy-contract-card{padding:5px 9px!important;gap:7px!important;grid-template-columns:20px minmax(0,1fr) auto!important}
.epy-final-consents .epy-contract-icon{width:20px!important;height:20px!important}.epy-final-consents .epy-contract-copy b{font-size:12px!important}.epy-final-consents .epy-contract-copy small{font-size:10px!important}.epy-notice-read-state{font-size:10px;color:#796b89;white-space:nowrap}.epy-notice-read-state.is-read{color:#158260;font-weight:600}
@media(max-width:599px){.epy-final-consents .epy-contract-card{grid-template-columns:minmax(0,1fr) auto!important}}

/* Readable appointment progress and compact booked-region rows. */
.epy-salon-panel-modern .epy-session-progress>div{color:#44354f;font-size:.85rem;font-weight:750;opacity:1}.epy-salon-panel-modern .epy-session-progress i{background:#e7e1ec;color:#44354f;border:2px solid #cbbfd5;width:42px;height:42px}.epy-salon-panel-modern .epy-session-progress .done{color:#086341}.epy-salon-panel-modern .epy-session-progress .done i{background:#daf3e6;color:#086341;border-color:#14875b}.epy-salon-panel-modern .epy-session-progress .active{color:#7216a2}.epy-salon-panel-modern .epy-session-progress .active i{background:#8724b8;color:#fff;border-color:#6d168f;box-shadow:0 0 0 4px #f0e1f8}.epy-salon-panel-modern .epy-operation-region-list-readonly .epy-operation-region{grid-template-columns:32px minmax(0,1fr) auto;min-height:48px;padding:9px 12px;gap:10px}.epy-salon-panel-modern .epy-operation-region-list-readonly .epy-region-operation-icon{width:30px;height:30px;border-radius:9px;font-size:.85rem}.epy-salon-panel-modern .epy-operation-region-list-readonly small{display:block;color:#51405f}.epy-salon-panel-modern .epy-operation-list-card h2{font-size:1.25rem}

/* AR: compact, independent cancellation and rescheduling controls. */
.epy-account-layout .epy-booking-operations{align-self:start;padding:24px}.epy-account-layout .epy-booking-operations h2{font-size:22px;line-height:1.3;margin:0 0 14px;font-weight:750}.epy-booking-operations .epy-operation-status{font-size:15px;line-height:1.6;color:#352640;margin:0 0 14px}.epy-booking-operations .epy-cancel-form{margin:0 0 14px}.epy-booking-operations .epy-cancel-form label{display:block;font-size:14px;font-weight:700;margin-bottom:7px}.epy-booking-operations textarea{display:block;width:100%;min-height:84px;box-sizing:border-box;border:1px solid #dac8ed;border-radius:10px;padding:10px;font:inherit;resize:vertical;margin-bottom:10px}.epy-booking-operations .epy-btn{width:100%;min-height:44px;padding:11px 14px;box-sizing:border-box;font-size:14px;white-space:normal;text-align:center}.epy-booking-operations .epy-operation-muted{font-size:13px;line-height:1.5;color:#71617f;margin:10px 0}.epy-operation-help{display:block;margin:16px 0;color:#6b21a8;font-size:14px;font-weight:650}.epy-operation-conditions{border-top:1px solid #e8ddf0;margin-top:16px;padding-top:14px}.epy-operation-conditions summary{cursor:pointer;font-size:14px;font-weight:650;color:#5c247e}.epy-booking-operations .epy-operation-conditions p{font-size:13px;line-height:1.65;color:#675574;margin:10px 0 0}.epy-booking-operations .epy-operation-test{padding:9px 11px;background:#f5ecff;color:#6b21a8;border-radius:9px;font-size:13px;line-height:1.5;margin:0 0 12px}
