/* Herkese açık fotoğraf gezgini, modal + paylaşılabilir profil */
.dp-carousel{width:100%;outline:none}
.dp-carousel-main{position:relative;overflow:hidden;border-radius:18px;background:#e6eee6;isolation:isolate}
.dp-carousel-image{display:block;width:100%;height:clamp(270px,37vw,470px);object-fit:cover;transition:opacity .2s}
.dp-carousel-label,.dp-carousel-count{position:absolute;bottom:16px;background:rgba(18,59,45,.82);color:white;border:1px solid #ffffff30;border-radius:25px;padding:9px 13px;font-size:11px;font-weight:800;z-index:1}
.dp-carousel-label{left:17px}.dp-carousel-count{right:17px}
.dp-carousel-arrow{width:43px;height:43px;border-radius:50%;border:1px solid #ffffffa0;background:#ffffffed;color:#20553e;display:grid;place-items:center;position:absolute;top:50%;transform:translateY(-50%);z-index:2;font:700 30px/1 Manrope,sans-serif;box-shadow:0 5px 18px #173f3320;transition:background .18s}
.dp-carousel-arrow:hover{background:#fff}.dp-carousel-arrow.prev{left:16px}.dp-carousel-arrow.next{right:16px}
.dp-carousel-thumbs{display:flex;gap:9px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:12px 1px 4px;scrollbar-width:thin}
.dp-carousel-thumb{padding:0;flex:0 0 82px;width:82px;height:65px;overflow:hidden;scroll-snap-align:start;border-radius:10px;border:3px solid transparent;background:#dceae0;opacity:.7;transition:border .2s,opacity .2s}
.dp-carousel-thumb.active{border-color:#2c815b;opacity:1}.dp-carousel-thumb img{height:100%;width:100%;object-fit:cover}
.gallery-public-empty{min-height:280px;border:1px dashed #b6d6c3;border-radius:19px;background:linear-gradient(120deg,#ecf7ef,#f7faf7);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#3b7457}
.gallery-public-empty p{font-size:12px;color:#849c8b;margin:0}
.public-profile-section{margin-top:27px;border-top:1px solid #e6eee6;padding-top:18px}
.public-profile-section h3{font-size:18px;margin:5px 0 12px;color:#244d38}
.public-profile-description{line-height:1.8;color:#546e5e;white-space:pre-line}
.public-profile-address{font-size:12px;color:#647e6b}
.public-amenity-list,.vendor-page-features{display:flex;flex-wrap:wrap;gap:9px}
.public-amenity,.vendor-page-features>span{background:#f0f8f2;border:1px solid #cfe5d5;color:#306748;border-radius:11px;padding:9px 13px;font-size:12px;font-weight:700}
.public-amenity:before,.vendor-page-features>span:before{content:'✓';margin-right:8px;color:#218650}
.public-profile-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:13px}
.public-profile-links a{border:1px solid #cde4d4;background:#f4faf5;color:#2b7352;border-radius:9px;font-weight:800;font-size:12px;padding:10px 13px}
.detail-overlay .detail-modal.wide{width:min(870px,100%);max-height:min(92vh,1000px);overflow-y:auto}
.detail-overlay .dp-carousel-image{height:clamp(220px,35vw,390px)}
.detail-overlay .dp-carousel-main{margin-top:14px}

/* Paylaşılabilir, mobil uyumlu işletme profil sayfası */
.vendor-public-page{background:#f5f8f5;color:#233d2f;font-family:Manrope,sans-serif}
.public-vendor-nav{min-height:80px;padding:19px max(22px,calc((100vw - 1250px)/2));display:flex;justify-content:space-between;align-items:center;gap:20px;background:#145443;color:#fffbe8}
.public-vendor-logo{font:700 24px Quicksand,Manrope,sans-serif;letter-spacing:-.05em}.public-vendor-logo strong{color:#aad2b6}
.public-vendor-nav nav{display:flex;gap:28px;font-size:12px;font-weight:700}
.public-vendor-main{max-width:1294px;padding:35px 22px 80px;margin:auto;min-height:70vh}
.vendor-page-intro{padding:28px 35px 35px;margin-bottom:24px;border:1px solid #dfeadf;border-radius:24px;background:radial-gradient(circle at 95% 20%,#e6f4e8,transparent 46%),#fff;box-shadow:0 12px 35px #2456390a}
.vendor-page-intro-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.vendor-page-type{font-size:12px;color:#2b815b;font-weight:800;margin-bottom:7px}
.vendor-page-intro h1{font-size:clamp(35px,4.1vw,58px);letter-spacing:-.065em;line-height:1.1;margin:0 0 11px;color:#164b36}
.vendor-page-intro p{font-size:15px;color:#66806e;margin:0;line-height:1.7}
.vendor-page-rating{display:grid;gap:5px;text-align:right;white-space:nowrap}
.vendor-page-rating strong{font-size:19px;color:#1b6e45}.vendor-page-rating span{font-size:11px;color:#839185}
.vendor-page-columns{display:grid;grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:25px}
.vendor-page-main{min-width:0;display:grid;gap:22px}
.vendor-page-gallery,.vendor-page-section,.vendor-page-info{padding:25px;border:1px solid #e0eade;border-radius:22px;background:#fff;box-shadow:0 10px 30px #1b543807}
.vendor-page-gallery{padding:16px}
.vendor-page-gallery .dp-carousel-image{height:clamp(280px,37vw,520px)}
.vendor-page-section h2{font-size:25px;letter-spacing:-.05em;color:#194c36;margin:6px 0 15px}
.vendor-description{color:#617768;line-height:1.85;white-space:pre-line;font-size:14px}
.vendor-review{border-top:1px solid #e7efe9;padding:18px 0 4px}.vendor-review:first-of-type{border-top:0}
.vendor-review>div{display:flex;align-items:center;justify-content:space-between}.vendor-review strong{color:#d89f4c;letter-spacing:.06em}.vendor-review time{font-size:11px;color:#87988c}.vendor-review p{font-size:13px;color:#5d7163;line-height:1.65}
.vendor-page-aside{position:sticky;top:22px}.vendor-page-info h3{font-size:23px;line-height:1.2;letter-spacing:-.04em;margin:5px 0 18px;color:#1c513a}
.vendor-page-info dl{margin:0 0 22px}.vendor-page-info dl>div{padding:12px 0;border-top:1px solid #edf0eb;display:grid;gap:5px}.vendor-page-info dt{font-size:11px;color:#81988b;font-weight:700}.vendor-page-info dd{margin:0;font-size:13px;color:#264f39;font-weight:800;overflow-wrap:anywhere}
.vendor-request{display:block;text-align:center;background:#145443;border-radius:11px;padding:15px;color:white!important;font-weight:800;font-size:13px}
.vendor-page-info>p{font-size:11px;color:#799085;line-height:1.7}
.vendor-page-contact{display:grid;gap:9px;padding-top:14px;border-top:1px solid #e7ece7}.vendor-page-contact a{display:block;font-size:12px;font-weight:800;color:#24704f}
.vendor-page-loading,.vendor-page-error{text-align:center;max-width:700px;margin:70px auto;padding:55px 25px;border-radius:22px;border:1px solid #e2ebe5;background:white;color:#597a64}
.vendor-page-error h1{font-size:31px;color:#20523c}.vendor-page-error p{font-size:13px;margin-bottom:27px}.vendor-page-error .primary{display:inline-block}
.vendor-public-footer{background:#145443;color:#fffbe8;display:flex;gap:18px;justify-content:space-between;padding:26px max(22px,calc((100vw - 1250px)/2));font-size:12px}.vendor-public-footer a{font-weight:800}

@media(max-width:900px){.vendor-page-columns{grid-template-columns:1fr}.vendor-page-aside{position:static}.vendor-page-info dl{display:grid;grid-template-columns:1fr 1fr;gap:10px}.vendor-page-info dl>div{padding:10px 0}}
@media(max-width:650px){.dp-carousel-image{height:260px!important}.dp-carousel-arrow{width:36px;height:36px;font-size:24px}.dp-carousel-arrow.prev{left:9px}.dp-carousel-arrow.next{right:9px}.dp-carousel-thumb{flex-basis:66px;width:66px;height:54px}.public-vendor-nav{padding:17px}.public-vendor-nav nav{gap:13px;font-size:11px}.public-vendor-logo{font-size:19px}.public-vendor-main{padding:20px 13px 40px}.vendor-page-intro{padding:23px 19px}.vendor-page-intro-row{display:block}.vendor-page-intro h1{font-size:38px}.vendor-page-rating{text-align:left;margin-top:15px}.vendor-page-gallery,.vendor-page-section,.vendor-page-info{padding:18px}.vendor-page-gallery{padding:10px}.vendor-page-info dl{display:block}.vendor-public-footer{padding:24px 17px}}
@media(prefers-reduced-motion:reduce){.dp-carousel *, .vendor-public-page *{scroll-behavior:auto!important;transition:none!important}}
