/* =========================================================
   LIVBEN • Listing Detail (PRO) v2.2
   - Works with listing_detail_v2.php (patched)
   - No inline CSS expected
========================================================= */

:root{
  --bg:#f6f7fb;
  --card:#fff;
  --text:#121826;
  --muted:#5b6475;
  --line:#e7e9ef;
  --shadow:0 10px 30px rgba(16,24,40,.08);
  --shadow2:0 14px 50px rgba(16,24,40,.10);
  --r:14px;
  --p:14px;

  --primary:#2563eb;
  --primary2:#1d4ed8;
  --danger:#ef4444;
  --wa:#16a34a;
  --warn:#f59e0b;

  --soft:#f4f6fb;
  --soft2:#eef2ff;
  --chip:#f4f6fb;

  --focus: 0 0 0 3px rgba(37,99,235,.15);
}

/* ===== page wrap ===== */
.ld{
  color:var(--text);
  background:transparent;
}
.ld *{ box-sizing:border-box; }
.ld a{ color:inherit; }
.ld img{ max-width:100%; }
.ld button{ font-family:inherit; }

.ld .ld-muted{ color:var(--muted); }
.ld .ld-strong{ font-weight:800; }
.ld .ld-sep, .ld .ld-dot{ color:#99a0af; }
.ld .ld-link{ color:var(--primary); text-decoration:none; }
.ld .ld-link:hover{ text-decoration:underline; }

/* ===== top ===== */
.ld-top{
  display:flex;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin: 10px 0 14px;
}
.ld-top-left{ min-width:280px; flex:1; }
.ld-breadcrumb{ font-size:13px; color:var(--muted); margin-bottom:6px; }
.ld-title{ margin:0; font-size:20px; line-height:1.25; font-weight:900; letter-spacing:.1px; }
.ld-meta{ margin-top:6px; color:var(--muted); font-size:13px; }

.ld-badges{
  display:flex; flex-wrap:wrap; gap:8px;
  margin-top:10px;
}
.ld-badge{
  border:1px solid var(--line);
  background:#fff;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  color:var(--muted);
  box-shadow: 0 1px 0 rgba(16,24,40,.02);
}
.ld-badge-warn{ background:#fff7e6; border-color:#ffe0a3; color:#7a4b00; }
.ld-badge-soft{ background:#f0f5ff; border-color:#d6e4ff; color:#204a87; }

.ld-top-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:flex-start;
}
.ld-inline{ display:inline; margin:0; }

/* ===== buttons ===== */
.ld-btn{
  border:1px solid var(--line);
  background:#fff;
  padding:10px 12px;
  border-radius:12px;
  cursor:pointer;
  text-decoration:none;
  color:var(--text);
  font-weight:700;
  font-size:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  transition:
    transform .05s ease,
    background .2s ease,
    border-color .2s ease,
    box-shadow .2s ease;
  user-select:none;
  box-shadow: 0 1px 0 rgba(16,24,40,.02);
}
.ld-btn:active{ transform: translateY(1px); }
.ld-btn:hover{ background:#fbfcff; border-color:#dfe3ee; }
.ld-btn:focus{ outline:none; box-shadow: var(--focus); border-color: rgba(37,99,235,.55); }

.ld-btn-ghost{ background:#fff; }
.ld-btn-primary{
  background:var(--primary);
  border-color:var(--primary2);
  color:#fff;
}
.ld-btn-primary:hover{ background:var(--primary2); border-color:var(--primary2); }
.ld-btn-danger{ background:var(--danger); border-color:#dc2626; color:#fff; }
.ld-btn-danger:hover{ background:#dc2626; border-color:#b91c1c; }
.ld-btn-wa{ background:var(--wa); border-color:#15803d; color:#fff; }
.ld-btn-wa:hover{ background:#15803d; border-color:#166534; }
.ld-btn-sm{ padding:7px 10px; border-radius:10px; font-size:13px; }

/* ===== layout ===== */
.ld-grid{
  display:grid;
  grid-template-columns: minmax(0,1fr) 380px;
  gap:14px;
}
@media (max-width: 1024px){
  .ld-grid{ grid-template-columns: 1fr; }
}

/* ===== card ===== */
.ld-card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--r);
  box-shadow: var(--shadow);
  overflow:hidden;
}
.ld-card-body{ padding: var(--p); }

.ld-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.ld-row-sm{ align-items:flex-start; }
.ld-row-end{ justify-content:flex-start; }

.ld-h2{ font-size:16px; font-weight:900; margin:0; }

/* ===== price + content ===== */
.ld-price{
  font-size:22px;
  font-weight:950;
  letter-spacing:.2px;
  margin:0;
}
.ld-price--side{ margin-top:8px; }

.ld-desc{
  margin-top:10px;
  color:var(--text);
  line-height:1.85;
  font-size:14px;
  background: linear-gradient(180deg, rgba(246,247,251,.0), rgba(246,247,251,.55));
  border:1px solid rgba(231,233,239,.7);
  border-radius:12px;
  padding:12px;
}

/* ===== price warn ===== */
.ld-priceWarn{
  margin-top:8px;
  font-size:12px;
  color:#92400e;
  background: rgba(245,158,11,.14);
  border:1px solid rgba(245,158,11,.22);
  border-radius:10px;
  padding:8px 10px;
}
.ld-priceWarn--side{
  margin-top:8px;
  border-radius:12px;
}

/* ===== chips ===== */
.ld-chips{ display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.ld-chip{
  background:var(--chip);
  border:1px solid #e3e8f5;
  padding:7px 10px;
  border-radius:999px;
  font-size:13px;
  color:#2b3446;
}

/* ===== inline actions ===== */
.ld-actions-inline{ display:flex; gap:8px; flex-wrap:wrap; }

/* ===== CTA ===== */
.ld-cta{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:14px;
}
.ld-note{
  margin-top:12px;
  color:var(--muted);
  font-size:13px;
  line-height:1.7;
  border-top:1px dashed var(--line);
  padding-top:10px;
}

/* =========================================================
   GALLERY (STANDARD MAIN IMAGE)
========================================================= */
.ld-gallery{ position:relative; }

/* main */
.ld-g-main{
  width:100%;
  border:0;
  background:transparent;
  padding:0;
  cursor:zoom-in;
  border-radius:12px;
  overflow:hidden;
  box-shadow: 0 1px 0 rgba(16,24,40,.02);
}
.ld-g-img{
  width:100%;
  display:block;
  max-height: 520px;
  object-fit: cover;
  background:#f1f3f8;
}

/* ✅ std: reduce huge feeling (PHP adds these classes) */
.ld-g-main--std{
  border-radius:14px;
  border:1px solid rgba(231,233,239,.9);
  background: #fff;
}
.ld-g-img--std{
  max-height: 420px;
  aspect-ratio: 16 / 10;
  object-fit: contain; /* standard look: product fits */
  background: radial-gradient(circle at 30% 20%, #f8fafc 0%, #f1f3f8 45%, #eef2ff 100%);
}

/* nav */
.ld-g-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:40px; height:40px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.92);
  box-shadow: var(--shadow);
  cursor:pointer;
  font-size:22px;
  display:flex;
  align-items:center;
  justify-content:center;
  transition: transform .08s ease, background .2s ease, border-color .2s ease;
}
.ld-g-nav:hover{
  background:#fff;
  border-color:#dfe3ee;
  transform:translateY(-50%) scale(1.02);
}
.ld-g-prev{ left:10px; }
.ld-g-next{ right:10px; }

/* thumbs */
.ld-thumbs{
  display:flex;
  gap:8px;
  overflow:auto;
  margin-top:10px;
  padding-bottom:6px;
  scrollbar-width: thin;
}
.ld-thumb{
  width:78px; height:58px;
  border-radius:10px;
  border:2px solid transparent;
  padding:0;
  background:transparent;
  cursor:pointer;
  flex:0 0 auto;
  overflow:hidden;
  transition: transform .08s ease, border-color .15s ease;
}
.ld-thumb:hover{ transform: translateY(-1px); }
.ld-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.ld-thumb.is-active{ border-color:var(--primary); }
.ld-hint{ margin-top:8px; color:var(--muted); font-size:12px; }

/* =========================================================
   TABS (VIDEOS)
========================================================= */
.ld-tabs{ margin-top:10px; }
.ld-tabbar{
  display:flex;
  gap:8px;
  overflow:auto;
  padding-bottom:6px;
  scrollbar-width: thin;
}
.ld-tab{
  border:1px solid var(--line);
  background:#fff;
  padding:8px 10px;
  border-radius:999px;
  cursor:pointer;
  font-weight:800;
  font-size:13px;
  white-space:nowrap;
  transition: background .2s ease, border-color .2s ease;
}
.ld-tab:hover{ border-color:#dfe3ee; background:#fbfcff; }
.ld-tab.is-active{ border-color:var(--primary); background:#eff6ff; }
.ld-tabpanel{ display:none; margin-top:10px; }
.ld-tabpanel.is-active{ display:block; }

.ld-ratio{
  position:relative;
  width:100%;
  padding-top:56.25%;
  border-radius:12px;
  overflow:hidden;
  background:#000;
  border:1px solid rgba(231,233,239,.65);
}
.ld-iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.ld-video{
  width:100%;
  border-radius:12px;
  background:#000;
  border:1px solid rgba(231,233,239,.65);
}

/* =========================================================
   ALERTS + COMMENTS
========================================================= */
.ld-alert{
  border:1px solid var(--line);
  background:#fafafa;
  padding:12px;
  border-radius:12px;
  color:var(--muted);
  font-size:13px;
  line-height:1.7;
}

.ld-comments{ display:grid; gap:10px; margin-top:12px; }
.ld-comment{
  border:1px solid var(--line);
  background:#fff;
  border-radius:12px;
  padding:12px;
  box-shadow: 0 1px 0 rgba(16,24,40,.02);
}
.ld-comment-text{
  margin-top:8px;
  color:#2b3446;
  line-height:1.75;
  font-size:14px;
}

/* =========================================================
   SIMILAR GRID
========================================================= */
.ld-similar{
  margin-top:12px;
  display:grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap:12px;
}
@media (max-width: 1024px){
  .ld-similar{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
.ld-similar-item{ min-width:0; }

/* =========================================================
   RIGHT SIDEBAR (PRO KV + fields)
   (PHP adds: ld-kvPro, ld-kvRow, ld-kvKey, ld-kvVal,
              ld-fieldsPro, ld-fieldPro, ld-fieldKey, ld-fieldVal, ld-fieldSub)
========================================================= */
.ld-kvPro{
  margin-top:12px;
  border:1px solid rgba(231,233,239,.75);
  border-radius:14px;
  overflow:hidden;
  background:linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
}
.ld-kvRow{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  border-top:1px solid rgba(231,233,239,.85);
}
.ld-kvRow:first-child{ border-top:0; }
.ld-kvKey{
  width:140px;
  flex:0 0 auto;
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  letter-spacing:.2px;
}
.ld-kvVal{
  flex:1;
  text-align:right;
  color:var(--text);
  font-weight:800;
  font-size:13px;
  min-width:0;
  word-break:break-word;
}
.ld-kvVal a{ color:var(--primary); font-weight:900; }

/* legacy kv (if still used elsewhere) */
.ld-kv{
  margin-top:12px;
  display:grid;
  grid-template-columns: 140px minmax(0,1fr);
  gap:8px 10px;
  font-size:14px;
}
.ld-kv .k{ color:var(--muted); font-size:13px; }
.ld-kv .v{ color:var(--text); }

.ld-stack{ margin-top:12px; display:grid; gap:8px; }

/* store header block */
.ld-store{
  display:flex;
  gap:10px;
  align-items:center;
  margin-top:12px;
  padding:10px 10px;
  border:1px solid rgba(231,233,239,.75);
  border-radius:14px;
  background:linear-gradient(180deg, #fff 0%, #fbfcff 100%);
}
.ld-store-logo{
  width:56px; height:56px;
  border-radius:12px;
  object-fit:cover;
  background:#f1f3f8;
  border:1px solid var(--line);
}

/* pro fields with underline */
.ld-fieldsPro{ margin-top:10px; }
.ld-fieldPro{
  padding:10px 0;
  border-bottom:1px solid rgba(231,233,239,.85);
}
.ld-fieldPro:last-child{ border-bottom:0; padding-bottom:0; }
.ld-fieldKey{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  margin-bottom:4px;
}
.ld-fieldVal{
  color:var(--text);
  font-weight:900;
  font-size:14px;
  line-height:1.35;
}
.ld-fieldSub{
  margin-top:6px;
  font-size:12px;
  color:var(--muted);
}

/* old field (legacy) */
.ld-field{ margin-top:10px; }

/* socials */
.ld-social{ margin-top:12px; display:flex; gap:8px; flex-wrap:wrap; }

.ld-storeCta{ margin-top:12px; }

/* =========================================================
   STORE OTHER LISTINGS (right block)
========================================================= */
.ld-storeSimilar{
  margin-top:12px;
  display:grid;
  grid-template-columns: 1fr;
  gap:12px;
}
.ld-storeSimilar-item{ min-width:0; }

/* =========================================================
   SAFE SHOPPING LIST
========================================================= */
.ld-ul{
  margin:10px 0 0;
  padding-left:18px;
  color:var(--muted);
  line-height:1.85;
}
.ld-ul li{ margin:4px 0; }

/* =========================================================
   DIALOGS
========================================================= */
.ld-dialog{
  border:1px solid var(--line);
  border-radius:16px;
  width:min(920px, 92vw);
  padding:0;
  box-shadow: var(--shadow2);
}
.ld-dialog::backdrop{ background: rgba(0,0,0,.45); }
.ld-dialog-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:12px 14px;
  border-bottom:1px solid var(--line);
  background:#fff;
}
.ld-dialog-body{ padding:14px; background:#fff; }
.ld-dialog-foot{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin-top:12px;
}

.ld-x{
  border:1px solid var(--line);
  background:#fff;
  width:36px; height:36px;
  border-radius:12px;
  cursor:pointer;
  font-size:16px;
  transition: background .2s ease, border-color .2s ease;
}
.ld-x:hover{ background:#fbfcff; border-color:#dfe3ee; }

.ld-fullimg{
  width:100%;
  max-height: 78vh;
  object-fit: contain;
  background:#f3f4f6;
  border-radius:12px;
  display:block;
  border:1px solid rgba(231,233,239,.65);
}

/* =========================================================
   FORMS
========================================================= */
.ld-formgrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:10px;
}
@media (max-width: 720px){
  .ld-formgrid{ grid-template-columns: 1fr; }
}
.ld-formgrid label{
  display:block;
  font-weight:900;
  font-size:13px;
  color:#2b3446;
}
.ld-formgrid input,
.ld-formgrid select,
.ld-formgrid textarea{
  width:100%;
  margin-top:6px;
  border:1px solid var(--line);
  border-radius:12px;
  padding:10px 12px;
  font-size:14px;
  outline:none;
  background:#fff;
  transition: box-shadow .2s ease, border-color .2s ease;
}
.ld-formgrid input:focus,
.ld-formgrid select:focus,
.ld-formgrid textarea:focus{
  border-color:var(--primary);
  box-shadow: var(--focus);
}
.ld-span2{ grid-column: 1 / -1; }
.ld-formnote{
  margin-top:10px;
  color:var(--muted);
  font-size:13px;
  line-height:1.6;
}

/* =========================================================
   MOBILE BAR
========================================================= */
.ld-mobilebar{
  position: sticky;
  bottom: 10px;
  display:none;
  gap:10px;
  margin-top:12px;
  padding:10px;
  background: rgba(255,255,255,.92);
  border:1px solid var(--line);
  border-radius:16px;
  box-shadow: var(--shadow);
  backdrop-filter: blur(8px);
}
@media (max-width: 1024px){
  .ld-mobilebar{ display:flex; }
  .ld-top-actions{ display:none; }
}

/* =========================================================
   TO TOP + TOAST
========================================================= */
.ld-totop{
  position:fixed;
  right:16px;
  bottom:16px;
  width:44px; height:44px;
  border-radius:999px;
  border:1px solid var(--line);
  background:#fff;
  box-shadow: var(--shadow);
  cursor:pointer;
  display:none;
  transition: transform .08s ease, background .2s ease, border-color .2s ease;
}
.ld-totop:hover{ transform: translateY(-1px); background:#fbfcff; border-color:#dfe3ee; }
.ld-totop.is-show{ display:block; }

.ld-toast{
  position:fixed;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  background:#111827;
  color:#fff;
  padding:10px 12px;
  border-radius:12px;
  font-weight:800;
  font-size:13px;
  box-shadow: var(--shadow2);
}

/* =========================================================
   SMALL POLISH
========================================================= */
@media (max-width: 480px){
  .ld-title{ font-size:18px; }
  .ld-price{ font-size:20px; }
  .ld-kvKey{ width:120px; }
}

/* Optional: reduce card shadow for very dense pages */
@media (prefers-reduced-motion: reduce){
  .ld-btn, .ld-g-nav, .ld-thumb, .ld-totop{ transition:none !important; }
}/* =========================================================
   LIVBEN • Sidebar Store/Seller Block (PRO)
   - Works with existing listing_detail_v2.php markup
   - Improves: Mağaza/Satıcı + Other listings + Safe shopping
========================================================= */

/* ---- Card headings inside sidebar (optional polish) ---- */
.ld-right .ld-card .ld-h2{
  display:flex;
  align-items:center;
  gap:10px;
}
.ld-right .ld-card .ld-h2::after{
  content:"";
  flex:1;
  height:1px;
  background: linear-gradient(90deg, rgba(231,233,239,1), rgba(231,233,239,0));
}

/* ---- Store header row ---- */
.ld-right .ld-store{
  margin-top:12px;
  padding:12px;
  border:1px solid rgba(231,233,239,.85);
  border-radius:16px;
  background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
  box-shadow: 0 1px 0 rgba(16,24,40,.02);
}

.ld-right .ld-store .ld-strong{
  font-size:15px;
  letter-spacing:.1px;
}

.ld-right .ld-store .ld-muted{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:4px;
  font-size:12px;
}

/* logo more premium */
.ld-right .ld-store-logo{
  width:60px;
  height:60px;
  border-radius:16px;
  border:1px solid rgba(231,233,239,.9);
  background: radial-gradient(circle at 30% 20%, #f8fafc 0%, #f1f3f8 50%, #eef2ff 100%);
}

/* ---- Underlined info rows (Telefon / WhatsApp / Telegram etc.) ---- */
.ld-right .ld-field{
  margin-top:0;
  padding:10px 0;
  border-bottom:1px solid rgba(231,233,239,.9);
}
.ld-right .ld-field:last-child{
  border-bottom:0;
  padding-bottom:0;
}

.ld-right .ld-field .ld-muted{
  font-size:12px;
  font-weight:900;
  letter-spacing:.2px;
  color:var(--muted);
  margin-bottom:4px;
}

.ld-right .ld-field .ld-strong{
  font-size:14px;
  font-weight:900;
  line-height:1.35;
}

/* clickable value styles */
.ld-right .ld-field a.ld-link{
  font-weight:950;
  text-decoration:none;
}
.ld-right .ld-field a.ld-link:hover{
  text-decoration:underline;
}

/* ---- Quick action buttons cluster (WhatsApp/Telegram/Maps etc.) ---- */
.ld-right .ld-social{
  margin-top:12px;
  padding-top:12px;
  border-top:1px dashed rgba(231,233,239,.95);
}
.ld-right .ld-social .ld-btn{
  box-shadow: 0 1px 0 rgba(16,24,40,.02);
}

/* ---- Address block special styling ---- */
.ld-right .ld-field .ld-strong{
  word-break: break-word;
}
.ld-right .ld-field .ld-muted a.ld-link{
  font-weight:900;
}
.ld-right .ld-field .ld-muted{
  line-height:1.6;
}

/* optional: make address look like “note box” without changing markup
   (targets the field that contains Google Maps/OSM links) */
.ld-right .ld-field:has(.ld-muted a.ld-link){
  padding:12px;
  border:1px solid rgba(231,233,239,.85);
  border-radius:16px;
  background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
  margin-top:12px;
}

/* ---- Store Other Listings (right side) ---- */
.ld-right .ld-storeSimilar{
  margin-top:12px;
  border-top:1px dashed rgba(231,233,239,.95);
  padding-top:12px;
}

/* if you render store other listings as cards/listing_card.php */
.ld-right .ld-storeSimilar-item{
  border:1px solid rgba(231,233,239,.85);
  border-radius:16px;
  overflow:hidden;
  background:#fff;
  box-shadow: 0 1px 0 rgba(16,24,40,.02);
}

/* empty message */
.ld-right .ld-alert{
  border-radius:16px;
  background: linear-gradient(180deg, #ffffff 0%, #fafafa 100%);
}

/* ---- Safe Shopping box ---- */
.ld-right .ld-ul{
  margin-top:10px;
  padding:12px 12px 12px 18px;
  border:1px solid rgba(231,233,239,.9);
  border-radius:16px;
  background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
}
.ld-right .ld-ul li{
  margin:6px 0;
}

/* highlight “admin onayı” text if it is in muted paragraph */
.ld-right .ld-card-body > .ld-muted:last-child{
  margin-top:12px;
  padding-top:12px;
  border-top:1px dashed rgba(231,233,239,.95);
  font-weight:800;
}

/* ---- Tiny responsive tweaks ---- */
@media (max-width: 1024px){
  .ld-right .ld-store{
    border-radius:14px;
  }
}/* =========================================================
   STORE PRO ENRICH (ADD-ON)
   - mevcutu bozmaz, sadece zenginleştirir
========================================================= */

.ld-storeHead{ align-items:flex-start; gap:10px; }
.ld-storeSub{ margin-top:4px; font-size:12px; line-height:1.5; }

.ld-storeBadge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 10px;
  border-radius:999px;
  border:1px solid rgba(231,233,239,.9);
  background:linear-gradient(180deg,#fff 0%, #fbfcff 100%);
  color:var(--muted);
  font-weight:900;
  font-size:12px;
}
.ld-storeBadge-ok{
  border-color: rgba(22,163,74,.28);
  background: rgba(22,163,74,.08);
  color:#166534;
}

.ld-storePro{
  padding:12px;
  border-radius:16px;
  border:1px solid rgba(231,233,239,.85);
  background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
}

.ld-storeInfo{ min-width:0; }
.ld-storeName{ font-size:15px; letter-spacing:.1px; }
.ld-storeLink{ display:inline-block; margin-top:2px; }
.ld-storeMiniAddr{
  margin-top:6px;
  font-size:12px;
  line-height:1.55;
  color:var(--muted);
  display:-webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow:hidden;
}

.ld-storeAvatar{
  width:56px; height:56px;
  border-radius:14px;
  border:1px solid var(--line);
  background: radial-gradient(circle at 30% 20%, #f8fafc 0%, #eef2ff 55%, #f1f3f8 100%);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:950;
  color:#1f2937;
}

.ld-storeActions{
  margin-top:10px;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.ld-storeActions .ld-btn{ box-shadow:none; }
.ld-storeActions .ld-btn:hover{ box-shadow: 0 6px 18px rgba(16,24,40,.08); }

.ld-fieldsPro--tight .ld-fieldPro{ padding:10px 0; }
.ld-fieldsPro--tight .ld-fieldKey{ text-transform:none; }

.ld-social--pro{ margin-top:12px; }
.ld-storeCta--pro{ margin-top:12px; }

/* =========================================================
   STORE OTHER LISTINGS GRID (RIGHT)
========================================================= */
.ld-storeSimilar--grid{
  margin-top:12px;
  display:grid;
  grid-template-columns: 1fr;
  gap:12px;
}

/* sağ blok genişse 2 kolon */
@media (min-width: 1024px){
  .ld-storeSimilar--grid{
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap:12px;
  }
}

/* listing_card içindeki görsel taşmasın diye */
.ld-storeSimilar-item{ min-width:0; }

.ld-storeMore{
  margin-top:12px;
  padding-top:12px;
  border-top:1px dashed var(--line);
  display:flex;
  justify-content:flex-end;
}/* =========================================================
   MODAL POPUP FIX (DIV BASED DIALOGS)
   - HTML: <div class="ld-dialog" ...><div class="ld-dialog-card">...
   - Makes dialogs real popup with overlay
========================================================= */

/* overlay */
.ld-overlay{
  position: fixed;
  inset: 0;
  background: rgba(15,23,42,.55);
  z-index: 9998;
}

/* dialog wrapper: full-screen center container */
.ld-dialog{
  position: fixed;
  inset: 0;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;

  /* override old "box" styles that make it look like normal block */
  border: 0;
  border-radius: 0;
  width: auto;
  box-shadow: none;
  background: transparent;
}

/* hidden attribute safety */
.ld-dialog[hidden]{ display:none !important; }
.ld-overlay[hidden]{ display:none !important; }

/* actual modal card */
.ld-dialog-card{
  width: min(560px, 100%);
  max-height: 90vh;
  overflow: auto;

  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  box-shadow: var(--shadow2);
}

/* body scroll lock */
body.ld-modal-open{ overflow: hidden; }
/* =========================================================
   DIALOG FORMS FIX (listing_detail_v2.php markup)
   - fixes: ld-form, ld-form-row, ld-label, ld-input, ld-textarea, ld-form-grid
   - ensures dialog content gets muted/strong even if moved outside .ld
========================================================= */

/* dialog içindeki muted/strong: .ld dışında kalsa da çalışsın */
.ld-dialog .ld-muted{ color: var(--muted); }
.ld-dialog .ld-strong{ font-weight: 800; }

/* form body padding (senin HTML’de form direkt head’den sonra geliyor) */
.ld-dialog .ld-form{
  margin: 0;
  padding: 14px;
  background: #fff;
}

/* row spacing */
.ld-dialog .ld-form-row{ margin-top: 12px; }
.ld-dialog .ld-form-row:first-child{ margin-top: 0; }

/* labels */
.ld-dialog .ld-label{
  display: block;
  font-weight: 900;
  font-size: 13px;
  color: #2b3446;
  margin-bottom: 6px;
}

/* inputs */
.ld-dialog .ld-input,
.ld-dialog .ld-textarea{
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 10px 12px;
  font-size: 14px;
  outline: none;
  background: #fff;
  transition: box-shadow .2s ease, border-color .2s ease;
}

.ld-dialog .ld-textarea{ resize: vertical; }

.ld-dialog .ld-input:focus,
.ld-dialog .ld-textarea:focus{
  border-color: var(--primary);
  box-shadow: var(--focus);
}

/* grid: PHP'de class "ld-form-grid" */
.ld-dialog .ld-form-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px;
}

/* eski isim (eğer başka yerde kaldıysa) */
.ld-dialog .ld-formgrid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px;
}

@media (max-width: 720px){
  .ld-dialog .ld-form-grid,
  .ld-dialog .ld-formgrid{
    grid-template-columns: 1fr;
  }
}

/* actions */
.ld-dialog .ld-form-actions{
  margin-top: 14px;
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

/* small text */
.ld-dialog .ld-small{ font-size: 12px; line-height: 1.6; }

/* honeypot */
.ld-dialog .ld-hp{
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}