/* ==========================================================================
   Berasoft Emlak — Design System
   ========================================================================== */
:root{
  --be-navy:#13294B;
  --be-navy-dark:#0C1B33;
  --be-navy-darker:#08131F;
  --be-navy-soft:#EEF2F8;
  --be-gold:#D8A13A;
  --be-gold-dark:#B9852A;
  --be-gold-soft:#FBF1DF;
  --be-bg:#F4F6FA;
  --be-surface:#FFFFFF;
  --be-text:#1F2937;
  --be-muted:#6B7280;
  --be-muted-soft:#9AA4B2;
  --be-border:#E7EAF0;
  --be-success:#15803D;
  --be-danger:#DC2626;

  --be-r-sm:8px;
  --be-r-md:12px;
  --be-r-lg:18px;
  --be-r-xl:24px;
  --be-r-pill:999px;

  --be-shadow-sm:0 2px 8px rgba(19,41,75,.06);
  --be-shadow-md:0 10px 28px rgba(19,41,75,.10);
  --be-shadow-lg:0 20px 45px rgba(12,27,51,.16);
  --be-shadow-gold:0 10px 24px rgba(216,161,58,.28);

  --be-ease:cubic-bezier(.22,.61,.36,1);
  font-family:'Inter',sans-serif;
}

*{ scrollbar-color: var(--be-navy) var(--be-bg); }
html{ scroll-behavior:smooth; }
body{
  background:var(--be-bg); color:var(--be-text); font-family:'Inter',sans-serif;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
h1,h2,h3,h4,h5,.be-brand{ font-family:'Poppins',sans-serif; letter-spacing:-.01em; }
h1,.h1{ font-weight:700; }
h2,.h2{ font-weight:700; }
p{ line-height:1.7; }
a{ transition:color .18s var(--be-ease); }
::selection{ background:var(--be-gold-soft); color:var(--be-navy); }

:focus-visible{ outline:2px solid var(--be-gold); outline-offset:2px; border-radius:4px; }

/* ---- Utility -------------------------------------------------------- */
.be-kicker{
  display:inline-flex; align-items:center; gap:.5rem; font-size:.72rem; font-weight:700;
  letter-spacing:.12em; text-transform:uppercase; color:var(--be-gold-dark);
  background:var(--be-gold-soft); padding:.35rem .8rem; border-radius:var(--be-r-pill);
}
.be-kicker::before{ content:""; width:6px; height:6px; border-radius:50%; background:var(--be-gold); }
.be-section-title{ font-weight:700; color:var(--be-navy); letter-spacing:-.02em; }
.be-section-sub{ color:var(--be-muted); max-width:560px; }
.be-section-head{ margin-bottom:2.25rem; }

/* ---- Top bar & navigation ------------------------------------------- */
.be-topbar{ background:var(--be-navy-dark); color:#fff; letter-spacing:.01em; }
.be-topbar a{ transition:opacity .18s var(--be-ease); }
.be-topbar a:hover{ opacity:.75; }

.be-header{ position:sticky; top:0; z-index:1030; }
.navbar{ transition:box-shadow .2s var(--be-ease); }
.be-brand{ font-weight:700; font-size:1.4rem; color:var(--be-navy)!important; display:flex; align-items:center; gap:.55rem; }
.be-brand i{
  color:#fff; background:linear-gradient(135deg,var(--be-gold),var(--be-gold-dark));
  width:36px; height:36px; border-radius:var(--be-r-sm); display:inline-flex; align-items:center; justify-content:center;
  font-size:.95rem; box-shadow:var(--be-shadow-gold);
}
.navbar-nav .nav-link{
  font-weight:500; font-size:.94rem; color:var(--be-text)!important; padding:.5rem .7rem!important;
  position:relative; white-space:nowrap;
}
.navbar-nav .nav-link::after{
  content:""; position:absolute; left:.7rem; right:.7rem; bottom:.15rem; height:2px; background:var(--be-gold);
  transform:scaleX(0); transition:transform .2s var(--be-ease);
}
.navbar-nav .nav-link:hover{ color:var(--be-navy)!important; }
.navbar-nav .nav-link:hover::after{ transform:scaleX(1); }
.be-nav-fav-label{ display:none; }

/* Between xl (1200) and xxl (1400) the nav is tight: shrink further, then relax at xxl+ */
@media (min-width:1200px) and (max-width:1399.98px){
  .navbar-nav .nav-link{ font-size:.85rem; padding:.5rem .5rem!important; }
  .be-brand{ font-size:1.2rem; }
  .be-brand i{ width:32px; height:32px; font-size:.85rem; }
}
@media (min-width:1400px){
  .be-nav-fav-label{ display:inline; }
}

/* ---- Buttons ---------------------------------------------------------*/
.btn{ border-radius:var(--be-r-sm); font-weight:600; padding:.55rem 1.15rem; transition:all .18s var(--be-ease); letter-spacing:.01em; }
.btn-sm{ border-radius:var(--be-r-sm); }
.btn-lg{ border-radius:var(--be-r-md); padding:.8rem 1.75rem; }
.btn-be-primary{ background:var(--be-navy); border-color:var(--be-navy); color:#fff; }
.btn-be-primary:hover{ background:var(--be-navy-dark); border-color:var(--be-navy-dark); color:#fff; transform:translateY(-1px); box-shadow:var(--be-shadow-md); }
.btn-be-gold{ background:var(--be-gold); border-color:var(--be-gold); color:#fff; }
.btn-be-gold:hover{ background:var(--be-gold-dark); border-color:var(--be-gold-dark); color:#fff; transform:translateY(-1px); box-shadow:var(--be-shadow-gold); }
.btn-outline-secondary{ border-color:var(--be-border); color:var(--be-navy); }
.btn-outline-secondary:hover{ background:var(--be-navy); border-color:var(--be-navy); color:#fff; }
.btn-outline-danger{ border-color:var(--be-border); color:var(--be-danger); }
.btn-outline-danger:hover{ transform:translateY(-1px); }
.btn-success{ border-radius:var(--be-r-sm); }
.btn:focus{ box-shadow:none; }
.btn:active{ transform:translateY(0); }

/* ---- HERO / SEARCH ---------------------------------------------------*/
.be-hero{
  background:
    radial-gradient(circle at 85% 8%, rgba(216,161,58,.30), transparent 45%),
    radial-gradient(circle at 5% 95%, rgba(216,161,58,.12), transparent 40%),
    linear-gradient(150deg, var(--be-navy) 0%, var(--be-navy-dark) 65%, var(--be-navy-darker) 100%);
  color:#fff; padding:88px 0 64px;
  position:relative; overflow:hidden;
}
.be-hero::before{
  content:""; position:absolute; inset:0; opacity:.5; pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size:42px 42px;
  -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,.5), transparent 70%);
  mask-image:linear-gradient(180deg, rgba(0,0,0,.5), transparent 70%);
}
.be-hero .be-hero-text{ max-width:760px; margin:0 auto 2.5rem; position:relative; z-index:1; }
.be-hero .be-kicker{ background:rgba(255,255,255,.12); color:#F3D9A6; margin-bottom:1.1rem; }
.be-hero .be-kicker::before{ background:var(--be-gold); }
.be-hero h1{ font-weight:700; font-size:2.75rem; position:relative; z-index:1; margin-bottom:1rem; line-height:1.15; }
.be-hero p.lead{ opacity:.82; position:relative; z-index:1; margin-bottom:0; font-size:1.1rem; }

.be-stats-strip{ position:relative; z-index:1; margin-top:3rem; }
.be-stat{ text-align:center; padding:0 1rem; border-right:1px solid rgba(255,255,255,.14); }
.be-stat:last-child{ border-right:none; }
.be-stat .num{ font-family:'Poppins',sans-serif; font-weight:700; font-size:1.9rem; color:#fff; display:block; line-height:1.2; }
.be-stat .num .suffix{ color:var(--be-gold); }
.be-stat .label{ color:rgba(255,255,255,.6); font-size:.82rem; letter-spacing:.02em; }

.be-search-card{
  background:#fff; border-radius:var(--be-r-lg); box-shadow:var(--be-shadow-lg);
  padding:1.5rem; margin-top:0; position:relative; z-index:2;
}
.be-search-tabs{ border-bottom:none; gap:.4rem; }
.be-search-tabs .nav-link{
  font-weight:600; color:var(--be-muted); border-radius:var(--be-r-pill)!important; padding:.55rem 1.2rem;
  transition:all .18s var(--be-ease); font-size:.9rem;
}
.be-search-tabs .nav-link:hover{ background:var(--be-bg); }
.be-search-tabs .nav-link.active{ background:var(--be-navy); color:#fff; box-shadow:var(--be-shadow-sm); }
.be-search-card .form-select,.be-search-card .form-control{ border-radius:var(--be-r-sm); border-color:var(--be-border); padding:.6rem .85rem; }
.be-search-card .form-select:focus,.be-search-card .form-control:focus{ border-color:var(--be-gold); box-shadow:0 0 0 3px var(--be-gold-soft); }

/* ---- FORMS (global) --------------------------------------------------*/
.form-control,.form-select{ border-radius:var(--be-r-sm); border-color:var(--be-border); padding:.6rem .85rem; font-size:.94rem; }
.form-control:focus,.form-select:focus{ border-color:var(--be-gold); box-shadow:0 0 0 3px var(--be-gold-soft); }
.form-label{ font-weight:600; font-size:.87rem; color:var(--be-navy); margin-bottom:.4rem; }
.form-control-sm,.form-select-sm{ border-radius:var(--be-r-sm); }

/* ---- CARD (listing) ---------------------------------------------------*/
.be-card{ background:#fff; border-radius:var(--be-r-md); overflow:hidden; box-shadow:var(--be-shadow-sm); border:1px solid var(--be-border); transition:all .25s var(--be-ease); height:100%; }
.be-card:hover{ transform:translateY(-6px); box-shadow:var(--be-shadow-md); border-color:transparent; }
.be-card .be-card-img{ position:relative; height:210px; overflow:hidden; background:var(--be-navy-soft); }
.be-card .be-card-img img{ width:100%; height:100%; object-fit:cover; transition:transform .45s var(--be-ease); }
.be-card:hover .be-card-img img{ transform:scale(1.08); }
.be-card .be-card-img::after{
  content:""; position:absolute; inset:auto 0 0 0; height:55%; pointer-events:none;
  background:linear-gradient(180deg, transparent, rgba(8,19,31,.55));
}
.be-card-badges{ position:absolute; top:12px; left:12px; right:12px; z-index:2; display:flex; flex-wrap:wrap; gap:.4rem; align-items:flex-start; }
.be-card-badges .be-badge-type{ margin-left:auto; }
.be-badge-featured{ background:linear-gradient(135deg,var(--be-gold),var(--be-gold-dark)); color:#fff; padding:.3rem .7rem; border-radius:var(--be-r-pill); font-size:.7rem; font-weight:700; box-shadow:0 4px 10px rgba(0,0,0,.18); letter-spacing:.02em; white-space:nowrap; }
.be-badge-type{ background:rgba(19,41,75,.82); backdrop-filter:blur(4px); color:#fff; padding:.3rem .7rem; border-radius:var(--be-r-pill); font-size:.7rem; font-weight:700; letter-spacing:.02em; white-space:nowrap; }
.be-badge-new{ background:#16A34A; color:#fff; padding:.3rem .7rem; border-radius:var(--be-r-pill); font-size:.7rem; font-weight:700; letter-spacing:.02em; white-space:nowrap; box-shadow:0 4px 10px rgba(0,0,0,.18); }
.be-fav-btn{ position:absolute; bottom:12px; right:12px; z-index:2; background:#fff; border-radius:50%; width:38px; height:38px; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 12px rgba(0,0,0,.2); border:none; transition:transform .18s var(--be-ease); }
.be-fav-btn:hover{ transform:scale(1.1); }
.be-fav-btn i{ color:var(--be-navy); transition:color .18s var(--be-ease); }
.be-fav-btn.active i{ color:#e0455f; }
/* Inline variant: normal flow button (listing detail actions), not the absolute card overlay */
.be-fav-btn-inline.be-fav-btn{ position:static; width:auto; height:auto; border-radius:var(--be-r-sm); border:1px solid var(--be-border); box-shadow:none; padding:.4rem .9rem; background:transparent; }
.be-fav-btn-inline.be-fav-btn i{ color:var(--be-danger); }
.be-fav-btn-inline.be-fav-btn.active{ background:var(--be-danger); border-color:var(--be-danger); }
.be-fav-btn-inline.be-fav-btn.active i{ color:#fff; }
.be-card-body{ padding:1.15rem 1.25rem 1.3rem; }
.be-card-price{ color:var(--be-navy); font-weight:700; font-size:1.3rem; font-family:'Poppins',sans-serif; letter-spacing:-.01em; }
.be-card-title{ font-weight:600; font-size:1rem; color:var(--be-text); display:block; margin:.45rem 0 .6rem; line-height:1.4; transition:color .18s var(--be-ease); }
.be-card:hover .be-card-title{ color:var(--be-navy); }
.be-card-meta{ color:var(--be-muted); font-size:.85rem; display:flex; gap:0; flex-wrap:wrap; padding-top:.6rem; border-top:1px dashed var(--be-border); }
.be-card-meta span{ display:inline-flex; align-items:center; gap:.35rem; padding-right:.9rem; margin-right:.9rem; border-right:1px solid var(--be-border); }
.be-card-meta span:last-child{ border-right:none; margin-right:0; padding-right:0; }
.be-card-meta i{ color:var(--be-gold-dark); }
.be-card-loc{ color:var(--be-muted); font-size:.85rem; margin-top:.5rem; display:flex; align-items:center; gap:.35rem; }
.be-card-loc i{ color:var(--be-navy); }

/* ---- Categories --------------------------------------------------- */
.be-cat-card{
  background:#fff; border-radius:var(--be-r-md); padding:1.75rem 1rem; text-align:center;
  box-shadow:var(--be-shadow-sm); border:1px solid var(--be-border); transition:all .22s var(--be-ease);
  display:block; color:var(--be-text); text-decoration:none;
}
.be-cat-card:hover{ transform:translateY(-6px); color:var(--be-navy); box-shadow:var(--be-shadow-md); border-color:transparent; }
.be-cat-card .be-cat-icon{
  width:58px; height:58px; margin:0 auto .9rem; border-radius:var(--be-r-md);
  background:linear-gradient(135deg,var(--be-navy-soft),#fff); display:flex; align-items:center; justify-content:center;
  transition:all .22s var(--be-ease);
}
.be-cat-card:hover .be-cat-icon{ background:linear-gradient(135deg,var(--be-gold),var(--be-gold-dark)); }
.be-cat-card i{ font-size:1.5rem; color:var(--be-gold-dark); transition:color .22s var(--be-ease); }
.be-cat-card:hover i{ color:#fff; }
.be-cat-card span{ font-weight:600; font-size:.94rem; }

/* ---- Offices ----------------------------------------------------- */
.be-office-card{ background:#fff; border-radius:var(--be-r-md); box-shadow:var(--be-shadow-sm); border:1px solid var(--be-border); padding:1.75rem 1.25rem; text-align:center; height:100%; transition:all .22s var(--be-ease); position:relative; }
.be-office-card:hover{ transform:translateY(-6px); box-shadow:var(--be-shadow-md); border-color:transparent; }
.be-office-card img{ width:84px; height:84px; object-fit:cover; border-radius:var(--be-r-md); margin-bottom:.9rem; box-shadow:var(--be-shadow-sm); border:1px solid var(--be-border); }
.be-office-card .be-verified{ color:var(--be-gold-dark); font-size:.7rem; font-weight:700; display:inline-flex; align-items:center; gap:.3rem; margin-top:.3rem; }

/* ---- Compare page -------------------------------------------------- */
.be-compare-loading{ padding:2.5rem; text-align:center; color:var(--be-muted); }
.be-compare-actions{ display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; flex-wrap:wrap; }
.be-compare-table{ width:100%; border-collapse:separate; border-spacing:0; background:#fff; border:1px solid var(--be-border); border-radius:var(--be-r-lg); overflow:hidden; box-shadow:var(--be-shadow-sm); }
.be-compare-table th,.be-compare-table td{ padding:.9rem 1rem; vertical-align:middle; text-align:center; border-bottom:1px solid var(--be-border); }
.be-compare-table tbody tr:last-child th,.be-compare-table tbody tr:last-child td{ border-bottom:none; }
.be-compare-table thead th{ background:var(--be-navy-soft); vertical-align:top; }
.be-compare-corner{ background:#fff!important; min-width:120px; }
.be-compare-table tbody th[scope=row]{ text-align:left; color:var(--be-muted); font-weight:600; font-size:.9rem; background:#F9FAFC; white-space:nowrap; }
.be-compare-table tbody tr:nth-child(even) td{ background:rgba(19,41,75,.02); }
.be-compare-price{ font-family:'Poppins',sans-serif; font-weight:700; color:var(--be-navy); font-size:1.05rem; }
.be-compare-card{ position:relative; width:200px; max-width:100%; margin:0 auto; }
.be-compare-card img{ width:100%; height:130px; object-fit:cover; border-radius:var(--be-r-sm); box-shadow:var(--be-shadow-sm); display:block; }
.be-compare-title{ display:block; margin-top:.65rem; font-weight:600; color:var(--be-navy); text-decoration:none; font-size:.92rem; line-height:1.35; }
.be-compare-title:hover{ color:var(--be-gold-dark); }
.be-compare-remove{ position:absolute; top:-9px; right:-9px; width:27px; height:27px; border-radius:50%; border:none; background:var(--be-navy); color:#fff; display:flex; align-items:center; justify-content:center; cursor:pointer; box-shadow:var(--be-shadow-sm); transition:all .18s var(--be-ease); z-index:2; }
.be-compare-remove:hover{ background:var(--be-danger); transform:scale(1.1); }

/* ---- Footer -------------------------------------------------------- */
.be-footer{
  background:
    radial-gradient(circle at 10% 0%, rgba(216,161,58,.14), transparent 42%),
    radial-gradient(circle at 92% 108%, rgba(216,161,58,.08), transparent 46%),
    var(--be-navy-dark);
  position:relative; color:rgba(255,255,255,.7);
}
.be-footer::before{ content:""; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--be-gold),var(--be-navy) 60%); }

.be-footer-brand{ display:inline-flex; align-items:center; gap:.6rem; font-family:'Poppins',sans-serif; font-weight:700; font-size:1.3rem; color:#fff!important; text-decoration:none; margin-bottom:1rem; }
.be-footer-logo{
  width:38px; height:38px; border-radius:var(--be-r-sm); flex-shrink:0;
  background:linear-gradient(135deg,var(--be-gold),var(--be-gold-dark)); color:#fff;
  display:inline-flex; align-items:center; justify-content:center; box-shadow:var(--be-shadow-gold); font-size:1rem;
}
.be-footer-slogan{ color:rgba(255,255,255,.58); font-size:.92rem; line-height:1.7; max-width:320px; margin-bottom:0; }

.be-footer h6{
  font-weight:700; letter-spacing:.06em; font-size:.78rem; text-transform:uppercase; color:#fff;
  margin-bottom:1.25rem; position:relative; padding-bottom:.65rem;
}
.be-footer h6::after{ content:""; position:absolute; left:0; bottom:0; width:26px; height:2px; border-radius:2px; background:var(--be-gold); }

.be-footer-links li{ margin-bottom:.7rem; }
.be-footer-links a{ color:rgba(255,255,255,.65); text-decoration:none; font-size:.92rem; transition:color .18s var(--be-ease), padding .18s var(--be-ease); }
.be-footer-links a:hover{ color:var(--be-gold); padding-left:4px; }

.be-footer-contact{ list-style:none; padding:0; margin:0; }
.be-footer-contact li{ display:flex; align-items:flex-start; gap:.7rem; margin-bottom:.9rem; color:rgba(255,255,255,.72); font-size:.92rem; line-height:1.5; }
.be-footer-contact .ic{
  width:34px; height:34px; flex-shrink:0; border-radius:var(--be-r-sm); font-size:.82rem;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.08); color:var(--be-gold);
  display:flex; align-items:center; justify-content:center;
}
.be-footer-contact a{ color:rgba(255,255,255,.72); text-decoration:none; transition:color .18s var(--be-ease); word-break:break-word; }
.be-footer-contact a:hover{ color:var(--be-gold); }

.be-footer-bottom{ background:var(--be-navy-darker); border-top:1px solid rgba(255,255,255,.05); color:rgba(255,255,255,.5); }
.be-social{ width:38px; height:38px; border-radius:50%; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.08); color:#fff; display:flex; align-items:center; justify-content:center; text-decoration:none; transition:all .2s var(--be-ease); }
.be-social:hover{ background:var(--be-gold); border-color:var(--be-gold); transform:translateY(-3px); box-shadow:var(--be-shadow-gold); }

/* ---- Filters / sidebar --------------------------------------------- */
.be-filter-box{ background:#fff; border-radius:var(--be-r-md); padding:1.4rem; box-shadow:var(--be-shadow-sm); border:1px solid var(--be-border); }
.be-filter-box h5{ font-size:1rem; padding-bottom:.9rem; margin-bottom:1rem!important; border-bottom:1px solid var(--be-border); }
.be-filter-box .form-label{ color:var(--be-text); font-weight:600; font-size:.82rem; }

/* ---- Detail page ---------------------------------------------------- */
.be-detail-gallery{ position:relative; border-radius:var(--be-r-lg); overflow:hidden; box-shadow:var(--be-shadow-md); }
.be-detail-gallery img{ width:100%; border-radius:var(--be-r-lg); object-fit:cover; height:480px; display:block; transition:transform .6s var(--be-ease); }
.be-detail-gallery:hover img{ transform:scale(1.03); }
.be-detail-gallery::after{
  content:""; position:absolute; inset:0; pointer-events:none; border-radius:var(--be-r-lg);
  background:linear-gradient(180deg, rgba(8,19,31,.32) 0%, transparent 24%, transparent 68%, rgba(8,19,31,.5) 100%);
}
.be-gallery-badges{ position:absolute; top:16px; left:16px; z-index:3; display:flex; flex-wrap:wrap; gap:.45rem; }
.be-gallery-badges .be-status-badge{ box-shadow:0 6px 16px rgba(8,19,31,.28); }
.be-gallery-count{
  position:absolute; bottom:16px; right:16px; z-index:3; background:rgba(8,19,31,.6); backdrop-filter:blur(8px);
  color:#fff; font-size:.82rem; font-weight:600; padding:.45rem .85rem; border-radius:var(--be-r-pill);
  display:inline-flex; align-items:center; gap:.5rem; border:1px solid rgba(255,255,255,.15);
}

.be-thumb-strip{ display:grid; grid-template-columns:repeat(5,1fr); gap:.6rem; margin-top:.7rem; }
.be-detail-thumb{ position:relative; }
.be-detail-thumb img{ border-radius:var(--be-r-sm); height:82px; width:100%; object-fit:cover; cursor:pointer; border:2px solid transparent; transition:all .18s var(--be-ease); opacity:.68; }
.be-detail-thumb:hover img, .be-detail-thumb.active img{ border-color:var(--be-gold); opacity:1; transform:translateY(-2px); }

/* Section heading with gold accent */
.be-detail-title{ display:flex; align-items:center; gap:.65rem; color:var(--be-navy); font-family:'Poppins',sans-serif; font-weight:700; font-size:1.12rem; margin-bottom:1.15rem; }
.be-detail-title::before{ content:""; width:4px; height:20px; border-radius:2px; background:linear-gradient(180deg,var(--be-gold),var(--be-gold-dark)); flex-shrink:0; }

/* Title / price header card */
.be-detail-head{ background:#fff; border-radius:var(--be-r-lg); border:1px solid var(--be-border); box-shadow:var(--be-shadow-sm); padding:1.6rem 1.7rem; }
.be-detail-head h1{ font-size:1.55rem; color:var(--be-navy); margin:.65rem 0 .4rem; line-height:1.25; }
.be-detail-loc{ color:var(--be-muted); font-size:.94rem; }
.be-detail-loc i{ color:var(--be-gold-dark); }
.be-detail-price{ font-family:'Poppins',sans-serif; font-weight:700; font-size:2rem; color:var(--be-navy); letter-spacing:-.02em; line-height:1.05; }
.be-detail-price-sqm{ color:var(--be-muted); font-size:.85rem; margin-top:.2rem; }
.be-detail-actions{ display:flex; flex-wrap:wrap; align-items:center; gap:.6rem; padding-top:1.15rem; margin-top:1.15rem; border-top:1px solid var(--be-border); }

/* Key facts grid */
.be-fact-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(112px,1fr)); gap:.75rem; }
.be-fact{ background:linear-gradient(165deg,var(--be-navy-soft),#fff); border:1px solid var(--be-border); border-radius:var(--be-r-md); padding:1.05rem .75rem; text-align:center; transition:all .2s var(--be-ease); }
.be-fact:hover{ transform:translateY(-4px); box-shadow:var(--be-shadow-sm); border-color:var(--be-gold-soft); }
.be-fact-icon{ width:44px; height:44px; margin:0 auto .6rem; border-radius:var(--be-r-sm); background:#fff; box-shadow:var(--be-shadow-sm); color:var(--be-gold-dark); display:flex; align-items:center; justify-content:center; font-size:1.05rem; }
.be-fact-val{ font-family:'Poppins',sans-serif; font-weight:700; color:var(--be-navy); font-size:1.08rem; line-height:1.2; }
.be-fact-label{ color:var(--be-muted); font-size:.75rem; letter-spacing:.02em; margin-top:.2rem; }

/* Refined spec list */
.be-spec-list{ display:grid; grid-template-columns:repeat(2,1fr); gap:0 2.75rem; }
.be-spec-row{ display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:.72rem 0; border-bottom:1px solid var(--be-border); font-size:.93rem; }
.be-spec-row .k{ color:var(--be-muted); display:inline-flex; align-items:center; gap:.6rem; }
.be-spec-row .k i{ color:var(--be-gold-dark); width:16px; text-align:center; }
.be-spec-row .v{ font-weight:600; color:var(--be-navy); text-align:right; }

.be-spec-table td{ padding:.65rem .3rem; border-bottom:1px solid var(--be-border); font-size:.94rem; }
.be-spec-table tr:last-child td{ border-bottom:none; }

.be-dash-card{ background:#fff; border-radius:var(--be-r-lg); padding:1.5rem 1.6rem; box-shadow:var(--be-shadow-sm); border:1px solid var(--be-border); }
.be-dash-card h5,.be-dash-card h6{ color:var(--be-navy); }
.be-detail-desc{ color:var(--be-text); font-size:1rem; line-height:1.85; white-space:pre-line; margin:0; }

/* Agent / contact box */
.be-detail-sidebar{ position:sticky; top:88px; }
.be-agent-box{ background:#fff; border-radius:var(--be-r-lg); box-shadow:var(--be-shadow-md); border:1px solid var(--be-border); overflow:hidden; }
.be-agent-head{
  background:
    radial-gradient(circle at 88% 0%, rgba(216,161,58,.4), transparent 55%),
    linear-gradient(140deg,var(--be-navy) 0%, var(--be-navy-dark) 100%);
  padding:1.4rem 1.5rem; display:flex; align-items:center; gap:.95rem; position:relative;
}
.be-agent-head img{ width:62px; height:62px; border-radius:50%; object-fit:cover; border:3px solid rgba(255,255,255,.25); box-shadow:var(--be-shadow-sm); flex-shrink:0; }
.be-agent-head .name{ color:#fff; font-weight:700; font-family:'Poppins',sans-serif; font-size:1.02rem; line-height:1.3; }
.be-agent-head .title{ color:var(--be-gold); font-size:.82rem; font-weight:600; }
.be-agent-body{ padding:1.4rem 1.5rem; }
.be-agent-office{ font-size:.88rem; color:var(--be-muted); }
.be-agent-office a{ color:var(--be-navy); font-weight:600; text-decoration:none; }
.be-agent-office a:hover{ color:var(--be-gold-dark); }
.be-msg-note{ font-size:.78rem; color:var(--be-muted-soft); }

.be-blog-content{ color:var(--be-text); font-size:1.02rem; line-height:1.85; }
.be-blog-content h2{ color:var(--be-navy); font-size:1.4rem; margin:1.75rem 0 .9rem; }
.be-blog-content h3{ color:var(--be-navy); font-size:1.15rem; margin:1.5rem 0 .75rem; }
.be-blog-content p{ margin-bottom:1.1rem; }
.be-blog-content img{ border-radius:var(--be-r-md); margin:1rem 0; }
.be-blog-content blockquote{ border-left:4px solid var(--be-gold); padding:.5rem 0 .5rem 1.2rem; color:var(--be-muted); font-style:italic; margin:1.5rem 0; }
.be-blog-content ul,.be-blog-content ol{ padding-left:1.4rem; margin-bottom:1.1rem; }
.be-blog-content li{ margin-bottom:.4rem; }

/* ---- Sidebar (panel/admin) ------------------------------------------ */
.be-sidebar{ background:var(--be-navy-dark); min-height:100vh; }
.be-sidebar a{ color:rgba(255,255,255,.68); text-decoration:none; display:flex; align-items:center; padding:.62rem 1.05rem; border-radius:var(--be-r-sm); font-size:.88rem; transition:all .16s var(--be-ease); margin-bottom:.15rem; }
.be-sidebar a:hover{ background:rgba(255,255,255,.08); color:#fff; }
.be-sidebar a.active{ background:var(--be-gold); color:#fff; font-weight:600; box-shadow:var(--be-shadow-gold); }
.be-sidebar .be-brand{ color:#fff!important; }
.be-topbar-admin{ background:#fff; border-bottom:1px solid var(--be-border); padding:.9rem 1.6rem; }

/* ---- Status badges ---------------------------------------------------*/
.be-status-badge{ padding:.3rem .65rem; border-radius:var(--be-r-sm); font-size:.74rem; font-weight:700; letter-spacing:.01em; }
.status-active{ background:#DCFCE7; color:#15803D; }
.status-pending{ background:#FEF3C7; color:#B45309; }
.status-passive,.status-suspended{ background:#F3F4F6; color:#4B5563; }
.status-rejected,.status-failed{ background:#FEE2E2; color:#B91C1C; }
.status-expired{ background:#F3F4F6; color:#6B7280; }
.status-sold{ background:#E0E7FF; color:#4338CA; }
.status-paid{ background:#DCFCE7; color:#15803D; }
.status-awaiting_confirmation{ background:#FEF3C7; color:#B45309; }

/* ---- Empty states / alerts ------------------------------------------ */
.be-empty-state{
  background:#fff; border:1px dashed var(--be-border); border-radius:var(--be-r-lg);
  padding:3.5rem 2rem; text-align:center; color:var(--be-muted);
}
.be-empty-state i{ font-size:2.4rem; color:var(--be-gold); margin-bottom:1rem; display:block; }
.be-empty-state h5{ color:var(--be-navy); margin-bottom:.5rem; }

.alert{ border-radius:var(--be-r-md); border:none; }
.alert-info{ background:var(--be-navy-soft); color:var(--be-navy); }
.alert-success{ background:#DCFCE7; color:#15803D; }
.alert-danger{ background:#FEE2E2; color:#B91C1C; }
.alert-warning{ background:var(--be-gold-soft); color:#92620F; }

/* ---- Pagination -------------------------------------------------- */
.pagination .page-link{ border:1px solid var(--be-border); color:var(--be-navy); margin:0 .2rem; border-radius:var(--be-r-sm)!important; font-weight:600; font-size:.88rem; }
.pagination .page-item.active .page-link{ background:var(--be-navy); border-color:var(--be-navy); color:#fff; }
.pagination .page-link:hover{ background:var(--be-navy-soft); color:var(--be-navy); }

/* ---- Breadcrumb ---------------------------------------------------- */
.breadcrumb{ font-size:.85rem; }
.breadcrumb-item a{ color:var(--be-muted); text-decoration:none; }
.breadcrumb-item a:hover{ color:var(--be-navy); }
.breadcrumb-item.active{ color:var(--be-navy); font-weight:600; }

/* ---- Auth pages (login/apply) -------------------------------------- */
.be-auth-wrap{ min-height:calc(100vh - 300px); display:flex; align-items:center; }
.be-auth-visual{
  background:
    radial-gradient(circle at 20% 20%, rgba(216,161,58,.28), transparent 45%),
    linear-gradient(150deg, var(--be-navy) 0%, var(--be-navy-dark) 100%);
  border-radius:var(--be-r-xl); color:#fff; padding:3rem; height:100%; min-height:460px;
  display:flex; flex-direction:column; justify-content:center; position:relative; overflow:hidden;
}
.be-auth-visual::before{
  content:""; position:absolute; inset:0; opacity:.4;
  background-image:linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size:36px 36px;
}
.be-auth-visual .be-auth-icon{
  width:64px; height:64px; border-radius:var(--be-r-md); background:linear-gradient(135deg,var(--be-gold),var(--be-gold-dark));
  display:flex; align-items:center; justify-content:center; font-size:1.6rem; margin-bottom:1.5rem; position:relative; z-index:1; box-shadow:var(--be-shadow-gold);
}
.be-auth-visual h3{ position:relative; z-index:1; }
.be-auth-visual ul{ position:relative; z-index:1; list-style:none; padding:0; margin-top:1.5rem; }
.be-auth-visual ul li{ display:flex; gap:.7rem; align-items:flex-start; margin-bottom:.9rem; color:rgba(255,255,255,.82); font-size:.94rem; }
.be-auth-visual ul li i{ color:var(--be-gold); margin-top:.2rem; }
.be-auth-card{ border-radius:var(--be-r-lg)!important; box-shadow:var(--be-shadow-lg); border:1px solid var(--be-border); padding:2.5rem!important; }

/* ---- Contact icons -------------------------------------------------- */
.be-contact-item{ display:flex; gap:1rem; align-items:flex-start; margin-bottom:1.25rem; }
.be-contact-item .icon{ width:42px; height:42px; border-radius:var(--be-r-sm); background:var(--be-navy-soft); color:var(--be-navy); display:flex; align-items:center; justify-content:center; flex-shrink:0; }

/* ---- Misc ---------------------------------------------------------- */
.text-be-navy{ color:var(--be-navy)!important; }
.text-be-gold{ color:var(--be-gold-dark)!important; }
.be-share-row{ display:flex; gap:.5rem; }
.be-share-row a{ width:34px; height:34px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:var(--be-bg); color:var(--be-navy); border:1px solid var(--be-border); transition:var(--be-transition); }
.be-share-row a:hover{ background:var(--be-navy); color:#fff; border-color:var(--be-navy); }
.be-amenity-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(160px, 1fr)); gap:.75rem; }
.be-amenity{ display:flex; align-items:center; gap:.6rem; padding:.6rem .8rem; background:var(--be-bg); border-radius:var(--be-r-md); font-size:.9rem; font-weight:600; color:var(--be-navy); }
.be-amenity i{ color:var(--be-gold-dark); }
.be-why-card{ text-align:center; padding:1.75rem 1.25rem; height:100%; }
.be-why-icon{ width:60px; height:60px; border-radius:50%; background:linear-gradient(135deg,var(--be-navy),var(--be-navy-dark)); color:var(--be-gold); display:flex; align-items:center; justify-content:center; font-size:1.4rem; margin:0 auto 1rem; }
.be-city-card{ position:relative; display:block; height:150px; border-radius:var(--be-r-md); overflow:hidden; text-decoration:none; }
.be-city-card img{ width:100%; height:100%; object-fit:cover; transition:var(--be-transition); }
.be-city-card:hover img{ transform:scale(1.06); }
.be-city-card-overlay{ position:absolute; inset:0; background:linear-gradient(180deg,rgba(19,41,75,0) 40%,rgba(19,41,75,.85) 100%); display:flex; flex-direction:column; justify-content:flex-end; padding:.85rem; color:#fff; }
.be-city-name{ font-weight:700; font-size:1.05rem; }
.be-city-count{ font-size:.78rem; opacity:.85; }

.be-cta-band{
  background:
    radial-gradient(circle at 15% 30%, rgba(216,161,58,.25), transparent 45%),
    linear-gradient(135deg, var(--be-navy) 0%, var(--be-navy-dark) 100%);
  border-radius:var(--be-r-xl); position:relative; overflow:hidden;
}

@media (max-width:768px){
  .be-hero h1{ font-size:1.9rem; }
  .be-hero{ padding:52px 0 40px; }
  .be-stats-strip{ margin-top:2rem; }
  .be-stat{ border-right:none; border-bottom:1px solid rgba(255,255,255,.14); padding-bottom:1rem; margin-bottom:1rem; }
  .be-stat:last-child{ border-bottom:none; margin-bottom:0; padding-bottom:0; }
  .be-detail-gallery img{ height:270px; }
  .be-thumb-strip{ grid-template-columns:repeat(4,1fr); }
  .be-spec-list{ grid-template-columns:1fr; }
  .be-detail-sidebar{ position:static; }
  .be-detail-price{ font-size:1.7rem; }
  .be-fact-grid{ grid-template-columns:repeat(3,1fr); }
  .be-auth-visual{ display:none; }
}
@media (max-width:420px){
  .be-fact-grid{ grid-template-columns:repeat(2,1fr); }
  .be-spec-row{ flex-wrap:wrap; gap:.15rem; }
  .be-spec-row .v{ text-align:left; }
}

/* ==========================================================================
   MODERN KATMAN — dark mode, animasyon, harita, yukarı-çık, son gezilenler
   ========================================================================== */

/* Tema geçiş butonu */
.be-theme-toggle{ width:38px; height:38px; padding:0; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }

/* Animasyonlu hero fonu */
.be-hero::after{
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(520px circle at 18% 22%, rgba(216,161,58,.18), transparent 46%),
    radial-gradient(620px circle at 82% 12%, rgba(80,140,230,.16), transparent 52%);
  animation:beHeroGlow 13s var(--be-ease) infinite alternate;
}
@keyframes beHeroGlow{ 0%{opacity:.55; transform:translate3d(0,0,0);} 100%{opacity:1; transform:translate3d(0,-14px,0);} }
@media (prefers-reduced-motion: reduce){ .be-hero::after{ animation:none; } }

/* Scroll-reveal — JS hem .be-reveal ekler hem gosterir; JS yoksa icerik gorunur kalir */
@media (prefers-reduced-motion: no-preference){
  .be-reveal{ opacity:0; transform:translateY(22px); transition:opacity .7s var(--be-ease), transform .7s var(--be-ease); will-change:opacity, transform; }
  .be-reveal.is-visible{ opacity:1; transform:none; }
}

/* Yukari cik */
.be-to-top{
  position:fixed; right:22px; bottom:22px; width:48px; height:48px; border:none; border-radius:50%;
  background:var(--be-navy); color:#fff; box-shadow:var(--be-shadow-lg); cursor:pointer;
  opacity:0; visibility:hidden; transform:translateY(12px) scale(.9);
  transition:opacity .28s var(--be-ease), transform .28s var(--be-ease), background .2s var(--be-ease);
  z-index:1030; display:flex; align-items:center; justify-content:center; font-size:1rem;
}
.be-to-top:hover{ background:var(--be-gold); box-shadow:var(--be-shadow-gold); transform:translateY(0) scale(1.06); }
.be-to-top.is-visible{ opacity:1; visibility:visible; transform:translateY(0) scale(1); }

/* Harita */
.be-map{ width:100%; height:360px; border-radius:var(--be-r-md); overflow:hidden; z-index:0; }
.be-map-search{ height:min(72vh,620px); position:sticky; top:90px; }
.be-map-addr{ color:var(--be-muted); font-size:.9rem; }
.leaflet-container{ font-family:'Inter',sans-serif; }
.be-map-pop-title{ color:var(--be-navy); font-weight:700; text-decoration:none; font-size:.92rem; }
.be-map-pop-title:hover{ color:var(--be-gold-dark); }
.be-map-pop-price{ color:var(--be-gold-dark); font-weight:700; margin-top:.2rem; font-size:.86rem; }
#beResultsCol.map-active > .row.g-4,
#beResultsCol.map-active > nav{ display:none; }

/* Son gezdikleriniz */
.be-recent-card{ display:block; background:var(--be-surface); border:1px solid var(--be-border); border-radius:var(--be-r-md); overflow:hidden; box-shadow:var(--be-shadow-sm); text-decoration:none; transition:transform .2s var(--be-ease), box-shadow .2s var(--be-ease); height:100%; }
.be-recent-card:hover{ transform:translateY(-4px); box-shadow:var(--be-shadow-md); }
.be-recent-card img{ width:100%; height:150px; object-fit:cover; display:block; }
.be-recent-body{ padding:.85rem 1rem 1rem; }
.be-recent-price{ color:var(--be-gold-dark); font-weight:700; font-size:1rem; }
.be-recent-title{ color:var(--be-text); font-size:.9rem; margin-top:.15rem; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }

/* ==========================================================================
   DARK MODE
   ========================================================================== */
[data-theme="dark"]{
  --be-bg:#0A111F;
  --be-surface:#111C31;
  --be-navy-soft:#182740;
  --be-text:#E6EBF2;
  --be-muted:#9FB0C6;
  --be-muted-soft:#6B7C96;
  --be-border:#233350;
  --be-shadow-sm:0 2px 10px rgba(0,0,0,.40);
  --be-shadow-md:0 12px 30px rgba(0,0,0,.50);
  --be-shadow-lg:0 22px 48px rgba(0,0,0,.60);
}
[data-theme="dark"] body{ background:var(--be-bg); color:var(--be-text); }
[data-theme="dark"] .navbar.bg-white{ background:var(--be-surface)!important; border-bottom:1px solid var(--be-border); }
[data-theme="dark"] .navbar .nav-link{ color:var(--be-text); }
[data-theme="dark"] .navbar .nav-link:hover,[data-theme="dark"] .navbar .nav-link:focus{ color:var(--be-gold); }
[data-theme="dark"] .be-brand{ color:var(--be-text)!important; }
[data-theme="dark"] .be-search-card,
[data-theme="dark"] .be-card,
[data-theme="dark"] .be-office-card,
[data-theme="dark"] .be-compare-table,
[data-theme="dark"] .be-filter-box,
[data-theme="dark"] .be-detail-head,
[data-theme="dark"] .be-dash-card,
[data-theme="dark"] .be-agent-box,
[data-theme="dark"] .be-cat-card,
[data-theme="dark"] .be-empty-state{ background:var(--be-surface); border-color:var(--be-border); }
[data-theme="dark"] .be-compare-corner{ background:var(--be-surface)!important; }
[data-theme="dark"] .be-compare-table tbody th[scope=row]{ background:var(--be-navy-soft); color:var(--be-muted); }
[data-theme="dark"] .be-fact{ background:linear-gradient(165deg,var(--be-navy-soft),var(--be-surface)); border-color:var(--be-border); }
[data-theme="dark"] .be-fact-icon{ background:var(--be-navy-soft); }
[data-theme="dark"] .be-fav-btn{ background:var(--be-surface); color:var(--be-text); }
[data-theme="dark"] .be-card-title{ color:var(--be-text); }
[data-theme="dark"] .be-card-loc,[data-theme="dark"] .be-card-meta{ color:var(--be-muted); }
[data-theme="dark"] .form-control,
[data-theme="dark"] .form-select{ background-color:var(--be-navy-soft); border-color:var(--be-border); color:var(--be-text); }
[data-theme="dark"] .form-control::placeholder{ color:var(--be-muted-soft); }
[data-theme="dark"] .form-select option{ background:var(--be-surface); color:var(--be-text); }
[data-theme="dark"] .form-label{ color:var(--be-text); }
[data-theme="dark"] .text-muted{ color:var(--be-muted)!important; }
[data-theme="dark"] .be-search-tabs .nav-link{ color:var(--be-muted); }
[data-theme="dark"] .be-search-tabs .nav-link:hover{ background:var(--be-navy-soft); }
[data-theme="dark"] .be-spec-row{ border-color:var(--be-border)!important; }
[data-theme="dark"] .breadcrumb-item,[data-theme="dark"] .breadcrumb-item a,[data-theme="dark"] .breadcrumb-item.active{ color:var(--be-muted); }
[data-theme="dark"] hr{ border-color:var(--be-border); opacity:1; }
[data-theme="dark"] .page-link{ background:var(--be-surface); border-color:var(--be-border); color:var(--be-text); }
[data-theme="dark"] .page-item.active .page-link{ background:var(--be-navy); border-color:var(--be-navy); color:#fff; }
[data-theme="dark"] .be-detail-desc{ color:var(--be-text); }
[data-theme="dark"] .be-theme-toggle{ color:var(--be-text); border-color:var(--be-border); }

/* Dark mode — kontrast tamamlayıcı (ikinci geçiş) */
[data-theme="dark"] .be-section-title,
[data-theme="dark"] .be-card-price,
[data-theme="dark"] .be-detail-price,
[data-theme="dark"] .be-detail-head h1,
[data-theme="dark"] .be-detail-title,
[data-theme="dark"] .be-compare-price,
[data-theme="dark"] .be-compare-title,
[data-theme="dark"] .be-fact-val,
[data-theme="dark"] .be-spec-row .v,
[data-theme="dark"] .be-dash-card h5,
[data-theme="dark"] .be-dash-card h6,
[data-theme="dark"] .be-filter-box h5,
[data-theme="dark"] .form-label{ color:var(--be-text); }
[data-theme="dark"] .be-card:hover .be-card-title,
[data-theme="dark"] .be-cat-card:hover{ color:var(--be-gold); }
[data-theme="dark"] .be-card-loc i,
[data-theme="dark"] .be-fav-btn i{ color:var(--be-gold); }
[data-theme="dark"] .btn-outline-secondary{ color:var(--be-text); border-color:var(--be-border); }
[data-theme="dark"] .btn-outline-secondary:hover{ background:var(--be-navy-soft); border-color:var(--be-gold); color:#fff; }
[data-theme="dark"] .navbar-nav .nav-link{ color:var(--be-text); }
[data-theme="dark"] .navbar-nav .nav-link:hover{ color:var(--be-gold)!important; }
[data-theme="dark"] .text-dark{ color:var(--be-text)!important; }
[data-theme="dark"] .text-be-navy{ color:var(--be-text)!important; }

/* ==========================================================================
   ULTRA POLISH — lightbox, filtre çipleri, mobil iletişim çubuğu, erişilebilirlik
   ========================================================================== */

html{ scroll-behavior:smooth; }
@media (prefers-reduced-motion: reduce){ html{ scroll-behavior:auto; } }
#beContactForm{ scroll-margin-top:90px; }

/* Erişilebilir odak halkası */
a:focus-visible, button:focus-visible, .btn:focus-visible,
.form-control:focus-visible, .form-select:focus-visible,
.page-link:focus-visible, [tabindex]:focus-visible{
  outline:3px solid var(--be-gold-soft); outline-offset:2px;
}

/* İnce kaydırma çubuğu */
*{ scrollbar-width:thin; scrollbar-color:var(--be-border) transparent; }
::-webkit-scrollbar{ width:11px; height:11px; }
::-webkit-scrollbar-thumb{ background:var(--be-border); border-radius:20px; border:3px solid var(--be-bg); }
::-webkit-scrollbar-thumb:hover{ background:var(--be-muted); }

/* Galeri: büyütme imleci + hover zoom + aktif küçük resim */
.be-detail-gallery{ cursor:zoom-in; overflow:hidden; }
.be-detail-gallery img{ transition:transform .5s var(--be-ease); }
.be-detail-gallery:hover img{ transform:scale(1.04); }
.be-detail-thumb{ cursor:pointer; transition:opacity .18s var(--be-ease), box-shadow .18s var(--be-ease); }
.be-detail-thumb.active{ box-shadow:0 0 0 3px var(--be-gold); }
.be-detail-thumb:hover{ opacity:.85; }

/* Lightbox */
.be-lightbox{
  position:fixed; inset:0; z-index:2000; display:flex; align-items:center; justify-content:center;
  background:rgba(6,11,20,.92); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
  opacity:0; transition:opacity .25s var(--be-ease); padding:2.5rem 1rem 6rem;
}
.be-lightbox.is-open{ opacity:1; }
.be-lightbox[hidden]{ display:none; }
.be-lb-img{
  max-width:min(1200px,94vw); max-height:82vh; width:auto; height:auto;
  border-radius:var(--be-r-md); box-shadow:0 30px 80px rgba(0,0,0,.6);
  animation:beLbZoom .3s var(--be-ease); object-fit:contain;
}
@keyframes beLbZoom{ from{ transform:scale(.94); opacity:.4; } to{ transform:scale(1); opacity:1; } }
.be-lb-close{
  position:absolute; top:18px; right:22px; width:46px; height:46px; border:none; border-radius:50%;
  background:rgba(255,255,255,.12); color:#fff; font-size:1.7rem; line-height:1; cursor:pointer;
  display:flex; align-items:center; justify-content:center; transition:background .18s var(--be-ease);
}
.be-lb-close:hover{ background:var(--be-gold); }
.be-lb-nav{
  position:absolute; top:50%; transform:translateY(-50%); width:52px; height:52px; border:none; border-radius:50%;
  background:rgba(255,255,255,.12); color:#fff; font-size:2rem; line-height:1; cursor:pointer;
  display:flex; align-items:center; justify-content:center; transition:background .18s var(--be-ease);
}
.be-lb-nav:hover{ background:var(--be-gold); }
.be-lb-prev{ left:22px; } .be-lb-next{ right:22px; }
.be-lb-counter{
  position:absolute; bottom:26px; left:50%; transform:translateX(-50%);
  color:#fff; font-size:.92rem; letter-spacing:.03em; background:rgba(0,0,0,.4);
  padding:.4rem 1rem; border-radius:var(--be-r-pill); font-weight:600;
}
@media (max-width:640px){
  .be-lb-nav{ width:44px; height:44px; font-size:1.6rem; }
  .be-lb-prev{ left:10px; } .be-lb-next{ right:10px; }
}

/* Aktif filtre çipleri */
.be-filter-chips{ display:flex; flex-wrap:wrap; gap:.5rem; align-items:center; margin-bottom:1rem; }
.be-chip{
  display:inline-flex; align-items:center; gap:.45rem; padding:.4rem .55rem .4rem .85rem;
  background:var(--be-surface); border:1px solid var(--be-border); border-radius:var(--be-r-pill);
  font-size:.83rem; font-weight:600; color:var(--be-navy); box-shadow:var(--be-shadow-sm);
  text-decoration:none; transition:all .16s var(--be-ease);
}
.be-chip .lbl{ color:var(--be-muted); font-weight:500; }
.be-chip:hover{ border-color:var(--be-gold); }
.be-chip .x{
  display:inline-flex; align-items:center; justify-content:center; width:18px; height:18px;
  border-radius:50%; background:var(--be-navy-soft); color:var(--be-navy); font-size:.66rem;
  transition:all .16s var(--be-ease);
}
.be-chip:hover .x{ background:var(--be-gold); color:#fff; }
.be-chip-clear{ color:var(--be-gold-dark); font-weight:600; font-size:.83rem; text-decoration:none; margin-left:.15rem; }
.be-chip-clear:hover{ text-decoration:underline; }

/* Mobil yapışkan iletişim çubuğu */
.be-mobile-cta{
  position:fixed; left:0; right:0; bottom:0; z-index:1035; display:none;
  gap:.5rem; padding:.6rem .8rem calc(.6rem + env(safe-area-inset-bottom));
  background:var(--be-surface); border-top:1px solid var(--be-border);
  box-shadow:0 -8px 28px rgba(0,0,0,.12);
}
.be-mobile-cta .btn{ flex:1; font-weight:600; }
@media (max-width:991.98px){
  .be-mobile-cta{ display:flex; }
  body.has-mobile-cta{ padding-bottom:76px; }
}

/* Yazdırma (ilan detayı) */
@media print{
  .navbar, .be-footer, .be-to-top, .be-mobile-cta, .be-detail-actions,
  .be-detail-sidebar, .be-theme-toggle, #beMap, .be-thumb-strip, .be-filter-chips{ display:none !important; }
  .col-lg-8{ width:100% !important; max-width:100% !important; flex:0 0 100% !important; }
  body{ background:#fff !important; }
  .be-dash-card, .be-detail-head{ box-shadow:none !important; border:1px solid #ccc !important; break-inside:avoid; }
}

/* Dark mode — yeni bileşenler */
[data-theme="dark"] .be-chip{ background:var(--be-surface); border-color:var(--be-border); color:var(--be-text); }
[data-theme="dark"] .be-chip .x{ background:var(--be-navy-soft); color:var(--be-text); }
[data-theme="dark"] .be-mobile-cta{ background:var(--be-surface); border-color:var(--be-border); }

/* Şifre göster/gizle */
.be-pass-wrap{ position:relative; }
.be-pass-wrap .form-control{ padding-right:2.8rem; }
.be-pass-toggle{
  position:absolute; top:50%; right:.55rem; transform:translateY(-50%);
  border:none; background:transparent; color:var(--be-muted); cursor:pointer;
  width:2rem; height:2rem; display:flex; align-items:center; justify-content:center;
  border-radius:var(--be-r-sm); transition:color .16s var(--be-ease);
}
.be-pass-toggle:hover{ color:var(--be-gold-dark); }

/* Erişilebilirlik: "Ana içeriğe geç" atlama bağlantısı */
.be-skip-link{
  position:fixed; top:-60px; left:12px; z-index:3000;
  background:var(--be-navy); color:#fff; padding:.6rem 1rem;
  border-radius:var(--be-r-sm); font-weight:600; text-decoration:none;
  box-shadow:var(--be-shadow-lg); transition:top .2s var(--be-ease);
}
.be-skip-link:focus{ top:12px; color:#fff; outline:3px solid var(--be-gold); outline-offset:2px; }
#be-main{ outline:none; }
