/* Layout */
.yp-sl { --gap:16px; --side-w:300px; --radius:14px; --bd:1px solid rgba(0,0,0,.08); --active-bg:rgba(0,0,0,.05); position:relative; }

/* Body grid */
.yp-sl__body{ display:grid; grid-template-columns: minmax(0,1fr) minmax(280px, var(--side-w)); gap:var(--gap); align-items:start; }
.yp-sl__map-wrap{ position:relative; }
.yp-sl__map{ width:100%; height:520px; border-radius:var(--radius); border:var(--bd); overflow:hidden; }
.yp-sl__toggle{ position:absolute; bottom:10px; left:10px; display:none; }

/* Side & header */
.yp-sl__side{ height:520px; overflow:auto; padding-right:2px; }
.yp-sl__header{
  position: sticky; top:0; z-index:2; background:#fff; padding:8px 0 0 0;
  display:flex; gap:8px; align-items:center; border-bottom:none; margin-bottom:6px;
}
.yp-sl__search{ position:relative; flex:1; }

/* Search input */
.yp-sl__search-input{
  width:100%!important; padding:.55rem 0!important;
  border:none!important; border-bottom:1px solid rgba(0,0,0,.18)!important;
  border-radius:0!important; box-shadow:none!important; background:#fff!important;
}
.yp-sl__search-input:focus{ outline:none; border-bottom-color: rgba(0,0,0,.45); }

/* Typeahead */
.yp-sl__autocomplete{
  position:absolute; left:0; right:0; top:calc(100% + 6px);
  background:#fff; border:1px solid rgba(0,0,0,.14);
  border-radius:10px; overflow:hidden; box-shadow:0 10px 30px rgba(0,0,0,.08); z-index:10;
}
.yp-sl__autocomplete:empty{ display:none; }

.yp-sl__ac-item{ padding:.5rem .7rem; cursor:pointer; }
.yp-sl__ac-item:hover{ background:rgba(0,0,0,.04); }

/* Filter button */
.icon-only.button{ display:inline-flex; align-items:center; justify-content:center; padding:.55rem; width:36px; height:36px; }
.icon-only.button svg{ display:block; }
.yp-sl__filter-btn{ margin-left:auto; }

/* List */
.yp-sl__list{ display:block; }
.yp-sl__empty{ opacity:.75; padding:.6rem; }

/* Rows */
.yp-sl__card{
  border:none; border-radius:0; padding:10px 0;
  border-bottom:1px solid rgba(0,0,0,.08);
}
.yp-sl__card.is-active{ background: var(--active-bg); }
.yp-sl__card:last-child{ border-bottom:none; }
.yp-sl__title{ font-weight:600; cursor:pointer; line-height:1.25; }
.yp-sl__meta{ font-size:0.95rem; opacity:.9; line-height:1.35; margin-top:2px; }

/* ACTIONS: text link version */
.yp-sl__actions{ display:block; }
.yp-sl__dir-link{
  display:inline-block;
  margin-top:8px;                 /* adres ile 1 satır boşluk */
  font-size:0.90rem;              /* adresten bir tık küçük */
  font-weight:600;
  text-decoration:underline;
}

/* (Eski küçük ok butonu — artık kullanılmıyor; kalsa da zarar vermez)
.yp-sl__dir{ display:none; }
*/

/* Lightbox (DESKTOP) */
.yp-sl__lightbox[hidden]{ display:none; }
.yp-sl__lightbox{ position:absolute; top:0; right:0; left:auto; bottom:auto; width: var(--side-w); background:transparent; z-index:6; }
.yp-sl__lightbox-card{ background:#fff; border:var(--bd); border-radius:12px; overflow:hidden; display:flex; flex-direction:column; max-height:520px; box-shadow:0 20px 40px rgba(0,0,0,.12); }
.yp-sl__lightbox-head{ display:flex; align-items:center; justify-content:space-between; padding:8px 12px; border-bottom:var(--bd); min-height:40px; }
.yp-sl__lightbox-head strong{ font-weight:600; font-size:15px; line-height:1; }
.yp-sl__close{ border:none!important; background:transparent; font-size:22px; width:34px!important; height:34px!important; line-height:1; display:flex; align-items:center; justify-content:center; cursor:pointer; margin:0!important; padding:0!important; }
.yp-sl__lightbox-body{ padding:10px 12px; overflow:auto; }
.yp-sl__lightbox-foot{ display:flex; gap:10px; justify-content:flex-end; padding:10px 12px; border-top:var(--bd); }
.yp-sl__lightbox-foot .button{ min-width:92px; height:40px; padding:0 14px; }

/* City list */
.yp-sl__city-list{ display:grid; gap:8px; }
.yp-sl__check{ display:flex; align-items:center; gap:10px; }
.yp-sl__check input[type="checkbox"]{ width:18px; height:18px; margin:0; vertical-align:middle; accent-color:#e5ab22; outline:none; box-shadow:none; }
.yp-sl__check input[type="checkbox"]:focus,
.yp-sl__check input[type="checkbox"]:focus-visible{ outline:none; box-shadow:none; }
.yp-sl__check input[type="checkbox"]::-moz-focus-inner{ border:0; }

/* Mobile */
@media (max-width: 991px){
  .yp-sl__body{ grid-template-columns: 1fr; }
  .yp-sl__side{
    position:fixed; left:0; right:0; bottom:-75vh; height:70vh; background:#fff; border-top-left-radius:16px; border-top-right-radius:16px;
    box-shadow:0 -20px 40px rgba(0,0,0,.18); padding:0 14px 12px; transition:bottom .25s ease; z-index:5;
  }
  .yp-sl.is-list .yp-sl__side{ bottom:0; }
  .yp-sl__toggle{ display:inline-flex; }

  /* Mobil lightbox liste üzerinde, tam genişlik */
  .yp-sl__lightbox{ position:fixed; right:0; left:0; bottom:0; top:auto; width:auto; z-index:7; background:transparent; }
  .yp-sl__lightbox-card{ max-height:70vh; border-radius:16px 16px 0 0; box-shadow:none; border:var(--bd); }
  .yp-sl__lightbox-body{ flex:1; overflow:auto; }
  .yp-sl__lightbox-foot{ position:sticky; bottom:0; background:#fff; }
  html.yp-sl--lb-open, body.yp-sl--lb-open { overflow:hidden; }
}

/* Google InfoWindow custom */
.yp-sl .gm-style-iw-c{ overflow: visible !important; border-radius: 12px !important; }
.yp-sl .gm-ui-hover-effect{
  position: absolute !important; right: -12px !important; top: -12px !important;
  width: 32px !important; height: 32px !important; border-radius: 50% !important;
  background: #fff !important; box-shadow: 0 4px 12px rgba(0,0,0,.2) !important;
  display:flex !important; align-items:center; justify-content:center; opacity:1 !important;
}
.yp-sl .gm-ui-hover-effect img,
.yp-sl .gm-ui-hover-effect span{ width:18px !important; height:18px !important; margin:0 !important; }

/* InfoWindow link */
.yp-sl .yp-sl__iw a{
  display:inline-block; margin-top:8px;
  border:0!important; outline:0!important; box-shadow:none!important; background:transparent!important;
  -webkit-appearance:none; -moz-appearance:none; -webkit-tap-highlight-color:transparent;
}
