/* Ortadoğulular Şube Haritası
   Renkleri değiştirmek için .odsh üzerindeki değişkenleri temanın Özel CSS alanında ezebilirsiniz. */
.odsh{
  --odsh-ink:#15203a; --odsh-muted:#5c6579; --odsh-line:#dfe3ea; --odsh-surface:#ffffff; --odsh-soft:#f5f6f9;
  --odsh-land:#e2e6ee; --odsh-land-hover:#cfd6e2; --odsh-land-edge:#ffffff;
  --odsh-brand:#1c2d55; --odsh-brand-hover:#2b4380; --odsh-brand-ink:#ffffff;
  --odsh-gold:#c4963a; --odsh-gold-ink:#2a1d04; --odsh-gold-soft:#f4e9d1; --odsh-plate:#1f4fb4;
  --odsh-shadow:0 10px 30px rgba(21,32,58,.12);
  display:grid; gap:24px; color:var(--odsh-ink); font-family:inherit; font-size:15px; line-height:1.55; text-align:left;
}
.odsh *, .odsh *::before, .odsh *::after{box-sizing:border-box}

/* Tema stillerine karşı sıfırlama */
.odsh button, .odsh input{font-family:inherit; text-transform:none; letter-spacing:normal; text-shadow:none; box-shadow:none; margin:0; min-height:0; width:auto; line-height:1.3}
.odsh a{text-decoration:none}
.odsh ul{list-style:none; margin:0; padding:0}
.odsh li{margin:0; padding:0}
.odsh li::before{content:none}
.odsh svg{max-width:100%}

/* Özet */
.odsh .odsh-head{display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:16px 40px}
.odsh .odsh-lede{margin:0; color:var(--odsh-muted); max-width:58ch; flex:1 1 320px}
.odsh .odsh-stats{display:flex; gap:28px}
.odsh .odsh-stat b{display:block; font-size:34px; font-weight:800; line-height:1; color:var(--odsh-ink); font-variant-numeric:tabular-nums; min-width:1ch}
.odsh .odsh-stat span{font-size:13px; color:var(--odsh-muted)}

/* Ana ızgara */
.odsh .odsh-main{display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:24px; align-items:start}
@media (max-width: 960px){ .odsh .odsh-main{grid-template-columns:minmax(0,1fr)} }

.odsh .odsh-mapcard{background:var(--odsh-surface); border:1px solid var(--odsh-line); border-radius:16px; padding:18px; min-width:0}
.odsh .odsh-toolbar{display:flex; flex-wrap:wrap; gap:12px; align-items:center; justify-content:space-between; margin-bottom:8px}
.odsh .odsh-chips{display:flex; flex-wrap:wrap; gap:6px}
.odsh .odsh-chip{font-size:13px; font-weight:600; border:1px solid var(--odsh-line); border-radius:999px; background:transparent; color:var(--odsh-ink); padding:7px 14px; cursor:pointer}
.odsh .odsh-chip:hover{border-color:var(--odsh-brand); background:transparent; color:var(--odsh-ink)}
.odsh .odsh-chip[aria-pressed="true"]{background:var(--odsh-brand); border-color:var(--odsh-brand); color:var(--odsh-brand-ink)}
.odsh .odsh-search{position:relative; flex:1 1 200px; max-width:280px; margin:0; display:block}
.odsh .odsh-search input{width:100%; height:auto; font-size:14px; font-weight:500; color:var(--odsh-ink); background:var(--odsh-soft); border:1px solid var(--odsh-line); border-radius:10px; padding:9px 12px 9px 34px}
.odsh .odsh-search svg{position:absolute; left:11px; top:50%; transform:translateY(-50%); width:16px; height:16px; color:var(--odsh-muted); pointer-events:none}
.odsh .odsh-search input:focus{outline:2px solid var(--odsh-gold); outline-offset:1px; border-color:transparent}

/* Harita */
.odsh .odsh-mapbox{position:relative}
.odsh .odsh-map{display:block; width:100%; height:auto; overflow:visible}
.odsh .odsh-prov{fill:var(--odsh-land); stroke:var(--odsh-land-edge); stroke-width:1; stroke-linejoin:round; cursor:pointer; transition:fill .15s}
.odsh .odsh-prov:hover{fill:var(--odsh-land-hover)}
.odsh .odsh-prov.is-br{fill:var(--odsh-brand)}
.odsh .odsh-prov.is-br:hover{fill:var(--odsh-brand-hover)}
.odsh .odsh-prov.is-br.is-dim{fill:var(--odsh-land-hover)}
.odsh .odsh-prov:focus, .odsh .odsh-map:focus, .odsh .odsh-map g:focus{outline:none}
.odsh .odsh-hl{fill:none; stroke:var(--odsh-gold); stroke-width:3; stroke-linejoin:round; pointer-events:none}
.odsh .odsh-hl.is-sel{fill:var(--odsh-gold)}
.odsh .odsh-lbl{font-family:inherit; font-size:15px; font-weight:700; fill:var(--odsh-brand-ink); text-anchor:middle; dominant-baseline:central; pointer-events:none;
  paint-order:stroke; stroke:var(--odsh-brand); stroke-width:3px; stroke-linejoin:round}
.odsh .odsh-lbl.is-sel{fill:var(--odsh-gold-ink); stroke:var(--odsh-gold)}
.odsh .odsh-lbl.is-dim{display:none}
@media (max-width: 640px){ .odsh .odsh-lbl{display:none} .odsh .odsh-mapcard{padding:12px} .odsh .odsh-search{max-width:none} }

.odsh .odsh-legend{display:flex; flex-wrap:wrap; gap:6px 16px; margin-top:6px; font-size:13px; color:var(--odsh-muted)}
.odsh .odsh-sw{display:inline-block; width:12px; height:12px; border-radius:3px; margin-right:6px; vertical-align:-1px}
.odsh .odsh-sw-br{background:var(--odsh-brand)}
.odsh .odsh-sw-land{background:var(--odsh-land); border:1px solid var(--odsh-line)}
.odsh .odsh-sw-sel{background:var(--odsh-gold)}

.odsh .odsh-tip{position:absolute; z-index:5; pointer-events:none; background:var(--odsh-surface); color:var(--odsh-ink); border:1px solid var(--odsh-line);
  box-shadow:var(--odsh-shadow); border-radius:10px; padding:8px 12px; font-size:13px; line-height:1.4; white-space:nowrap; transform:translate(-50%, calc(-100% - 14px))}
.odsh .odsh-tip b{display:block; font-size:14px}
.odsh .odsh-tip span{color:var(--odsh-muted)}
.odsh [hidden]{display:none !important}

/* Panel */
/* Masaüstünde panel harita kartıyla aynı boyda: satır yüksekliğini harita belirler (panel 0 sayılır),
   panel sonra o yüksekliğe uzar; uzun şube listeleri panelin içinde kayar. */
.odsh .odsh-main{align-items:stretch}
.odsh .odsh-mapcard{align-self:start}
.odsh .odsh-panel{background:var(--odsh-surface); border:1px solid var(--odsh-line); border-radius:16px; padding:22px; display:grid; gap:14px; align-content:start; min-width:0; height:0; min-height:100%; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin}
@media (max-width: 960px){ .odsh .odsh-panel{height:auto; min-height:0; overflow:visible} }
.odsh .odsh-ara-baslik{font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:var(--odsh-muted); margin:4px 0 -4px}

/* Çok şubeli il: türe göre gruplanmış liste */
.odsh .odsh-gruplar{display:grid; gap:16px}
.odsh .odsh-grup-ad{font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:var(--odsh-muted); margin:0 0 6px; display:flex; justify-content:space-between}
.odsh .odsh-grup-ad span{font-variant-numeric:tabular-nums}
.odsh .odsh-slist{display:grid; gap:0; border-top:1px solid var(--odsh-line)}
.odsh .odsh-s{display:grid; gap:2px; padding:10px 0; border-bottom:1px solid var(--odsh-line); font-size:13px; line-height:1.45}
.odsh .odsh-s.is-hit{background:var(--odsh-gold-soft); margin:0 -10px; padding:10px; border-radius:8px}
.odsh .odsh-s-ad{font-size:14px; font-weight:700; color:var(--odsh-ink); line-height:1.3}
.odsh .odsh-s-adres{color:var(--odsh-muted)}
.odsh .odsh-s-tel{color:var(--odsh-ink); font-variant-numeric:tabular-nums}
.odsh .odsh-s-link, .odsh .odsh-s-link:visited{justify-self:start; color:var(--odsh-brand)}
.odsh .odsh-s-link span{color:var(--odsh-gold); transition:margin .15s}
.odsh .odsh-s-link:hover{color:var(--odsh-brand-hover); text-decoration:underline}
.odsh .odsh-s-link:hover span{margin-left:3px}
.odsh .odsh-s-adres, .odsh .odsh-s-tel{font-size:12.5px}
.odsh .odsh-tek{display:grid; gap:8px}
.odsh .odsh-tek .odsh-s-ad{font-size:16px}
.odsh .odsh-btn-ghost, .odsh .odsh-btn-ghost:visited{background:transparent; color:var(--odsh-brand); border:1px solid var(--odsh-line)}
.odsh .odsh-btn-ghost:hover, .odsh .odsh-btn-ghost:focus{background:var(--odsh-soft); color:var(--odsh-brand); border-color:var(--odsh-brand)}
.odsh .odsh-ptitle{font-family:inherit; font-size:26px; font-weight:800; line-height:1.15; margin:0; padding:0; color:var(--odsh-ink); text-transform:none; letter-spacing:-.01em}
.odsh .odsh-panel p{margin:0; color:var(--odsh-muted)}
.odsh .odsh-prow{display:flex; align-items:center; gap:12px; flex-wrap:wrap}
.odsh .odsh-plate{display:inline-flex; align-items:stretch; border:2px solid #15203a; border-radius:5px; overflow:hidden; font-size:15px; font-weight:800; line-height:1; background:#fff; color:#111; font-variant-numeric:tabular-nums}
.odsh .odsh-plate b{background:var(--odsh-plate); color:#fff; font-size:9px; padding:0 4px 3px; display:flex; align-items:flex-end}
.odsh .odsh-plate span{padding:5px 8px}
.odsh .odsh-region{font-size:13px; color:var(--odsh-muted)}
.odsh .odsh-tags{display:flex; flex-wrap:wrap; gap:6px}
.odsh .odsh-tag{font-size:13px; font-weight:600; background:var(--odsh-gold-soft); color:var(--odsh-ink); padding:4px 10px; border-radius:6px}
.odsh .odsh-status{display:inline-flex; align-items:center; gap:6px; font-size:13px; font-weight:700}
.odsh .odsh-status i{width:8px; height:8px; border-radius:50%; background:var(--odsh-brand)}
.odsh .odsh-status.is-no i{background:var(--odsh-muted)}
.odsh .odsh-contact{display:grid; gap:2px; font-size:14px; border-top:1px solid var(--odsh-line); padding-top:12px}
.odsh .odsh-contact span{color:var(--odsh-muted); font-size:11px; text-transform:uppercase; letter-spacing:.08em; font-weight:700; margin-top:6px}
.odsh .odsh-contact span:first-child{margin-top:0}
.odsh .odsh-btn{display:flex; justify-content:center; align-items:center; gap:8px; font-size:14px; font-weight:700; text-align:center; border-radius:10px; padding:12px 16px; cursor:pointer; border:0; width:100%}
.odsh .odsh-btn-primary, .odsh .odsh-btn-primary:visited{background:var(--odsh-brand); color:var(--odsh-brand-ink)}
.odsh .odsh-btn-primary:hover, .odsh .odsh-btn-primary:focus{background:var(--odsh-brand-hover); color:var(--odsh-brand-ink)}
.odsh .odsh-btn-gold, .odsh .odsh-btn-gold:hover, .odsh .odsh-btn-gold:focus{background:var(--odsh-gold); color:var(--odsh-gold-ink)}
.odsh .odsh-near{display:flex; flex-wrap:wrap; gap:6px}
.odsh .odsh-link{font-size:13px; font-weight:600; color:var(--odsh-ink); background:var(--odsh-soft); border:1px solid var(--odsh-line); border-radius:999px; padding:5px 12px; cursor:pointer}
.odsh .odsh-link:hover{border-color:var(--odsh-brand); background:var(--odsh-soft); color:var(--odsh-ink)}
.odsh .odsh-regions{display:grid; gap:8px}
.odsh .odsh-regions li{display:grid; grid-template-columns:130px minmax(0,1fr) 20px; align-items:center; gap:10px; font-size:13px}
.odsh .odsh-bar{height:8px; border-radius:4px; background:var(--odsh-land)}
.odsh .odsh-bar i{display:block; height:100%; border-radius:4px; background:var(--odsh-brand)}
.odsh .odsh-regions b{text-align:right; font-variant-numeric:tabular-nums}
.odsh .odsh-clear{justify-self:start; font-size:13px; font-weight:600; color:var(--odsh-muted); background:none; border:0; padding:0; cursor:pointer; text-decoration:underline}
.odsh .odsh-clear:hover{background:none; color:var(--odsh-ink)}

/* İl listesi */
.odsh .odsh-list-title{font-family:inherit; font-size:20px; font-weight:800; line-height:1.2; margin:0 0 12px; padding:0; color:var(--odsh-ink); text-transform:none; letter-spacing:normal}
.odsh .odsh-cities{display:grid; grid-template-columns:repeat(auto-fill, minmax(180px, 1fr)); gap:8px}
.odsh .odsh-city, .odsh .odsh-city:visited{display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:14px; font-weight:700; color:var(--odsh-ink); background:var(--odsh-surface); border:1px solid var(--odsh-line); border-radius:10px; padding:11px 14px; min-height:46px}
.odsh .odsh-city:hover{border-color:var(--odsh-brand); color:var(--odsh-ink)}
.odsh .odsh-city small{color:var(--odsh-muted); font-weight:500; font-size:12px; text-align:right}
.odsh .odsh-city[aria-current="true"]{border-color:var(--odsh-gold); box-shadow:inset 0 0 0 1px var(--odsh-gold)}

.odsh .odsh-s-link:focus-visible, .odsh .odsh-btn:focus-visible, .odsh .odsh-chip:focus-visible, .odsh .odsh-city:focus-visible, .odsh .odsh-link:focus-visible, .odsh .odsh-clear:focus-visible{outline:2px solid var(--odsh-gold); outline-offset:2px}

/* Franchise formundaki il kutusu seçilince kısa vurgu (form .odsh dışında) */
.odsh-flash{animation:odsh-flash 1.4s ease}
@keyframes odsh-flash{0%{box-shadow:0 0 0 0 #c4963a}30%{box-shadow:0 0 0 4px #c4963a}100%{box-shadow:0 0 0 0 transparent}}

@media (prefers-reduced-motion: reduce){ .odsh *, .odsh-flash{transition:none !important; animation:none !important} }
