/* apartments.ge — design tokens */
:root{
  --ink:#0F2A3D; --ink2:#26394A; --muted:#55697A; --line:#E1E7EC; --line2:#D3DCE2;
  --bg:#F5F7F8; --soft:#EEF2F4; --white:#FFFFFF;
  --teal:#0B6E69; --teal-d:#08524E; --teal-l:#E6F2F1;
  --coral:#E2552B; --coral-d:#C2410C;
  --vip-bg:#FFF1CC; --vip-ink:#7A4B00;
  --err:#B42318; --err-bg:#FEECEB; --ok-bg:#E6F2F1; --warn-bg:#FFF3EE;
  --r:12px; --r-lg:18px;
  --font:Manrope,'Noto Sans Georgian',system-ui,-apple-system,'Segoe UI',sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);font-size:15px;line-height:1.5}
img{max-width:100%;display:block}
a{color:var(--teal)}a:hover{color:var(--teal-d)}
h1,h2,h3{line-height:1.25;margin:0}
h1{font-size:28px;font-weight:800}
h2{font-size:22px;font-weight:800}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid #5BB3AE;outline-offset:2px}
[hidden]{display:none!important}
.wrap{max-width:1280px;margin:0 auto;padding:0 20px}
.muted{color:var(--muted)}
.small{font-size:13px}
.pos{color:var(--teal)}.neg{color:var(--err)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:8px 12px;border-radius:8px;z-index:100}
.skip:focus{left:8px}
.ic{flex:none}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 16px;border-radius:10px;border:1px solid transparent;font-weight:700;font-size:15px;text-decoration:none;cursor:pointer;white-space:nowrap;background:none;color:var(--ink)}
.btn-primary{background:var(--teal);color:#fff}.btn-primary:hover{background:var(--teal-d);color:#fff}
.btn-accent{background:var(--coral);color:#fff}.btn-accent:hover{background:var(--coral-d);color:#fff}
.btn-ghost{background:#fff;border-color:var(--line2);color:var(--ink);font-weight:600}.btn-ghost:hover{border-color:var(--ink);color:var(--ink)}
.btn-danger{color:var(--err)}
.btn-lg{height:50px;padding:0 22px;font-size:16px}
.btn-sm{height:40px;padding:0 12px;font-size:14px}
.btn-xs{height:32px;padding:0 10px;font-size:13px;border-radius:8px}
.btn-icon{width:44px;padding:0}.btn-lg.btn-icon{width:50px}
.btn-block{width:100%}
.linkish{background:none;border:0;padding:13px 14px;color:var(--muted);font-weight:600;cursor:pointer;text-align:left;width:100%;border-radius:10px}
.linkish:hover{background:var(--soft)}

/* header */
.hdr{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:20}
.hdr-in{display:flex;align-items:center;gap:12px 22px;padding-top:12px;padding-bottom:12px;flex-wrap:nowrap}
.logo{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);font-size:21px;font-weight:800;letter-spacing:-.02em}
.logo b{color:var(--coral)}
@keyframes chute{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}
.chute{transform-origin:20px 4px;animation:chute 4s ease-in-out infinite}
.nav{display:flex;flex-wrap:nowrap;gap:18px;flex:1 1 auto;min-width:0;overflow:hidden;font-weight:600;white-space:nowrap}
.nav a{color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:6px;padding:8px 0}
.nav a:hover{color:var(--teal)}
.hdr-r{display:flex;align-items:center;gap:8px;flex:none}
.hdr-r .btn-primary{min-width:132px}
.uname{max-width:110px;overflow:hidden;text-overflow:ellipsis}
.logo{flex:none}
.seg{display:inline-flex;background:var(--soft);border-radius:10px;padding:3px;gap:2px}
.seg a,.seg button,.seg label span{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:36px;padding:0 10px;border-radius:8px;border:0;background:transparent;color:var(--muted);font-weight:700;font-size:13px;text-decoration:none;cursor:pointer}
.seg a.on,.seg button.on{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(15,42,61,.18)}
.seg label{position:relative}
.seg label input{position:absolute;opacity:0;pointer-events:none}
.seg label input:checked+span{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(15,42,61,.18)}
.seg label input:focus-visible+span{outline:3px solid #5BB3AE}
.seg-big label span{height:44px;padding:0 16px;font-size:15px}
.nav-toggle{display:none}
@media (max-width:1180px){
  .hdr-in{flex-wrap:wrap}
  .nav-toggle{display:inline-flex;margin-left:auto}
  .nav{display:none;order:5;flex-basis:100%;flex-direction:column;gap:0;border-top:1px solid var(--line);padding-top:6px;overflow:visible}
  .hdr.open .nav{display:flex}
  .hdr-r{order:4;flex-basis:100%;flex-wrap:wrap}
}
@media (max-width:640px){
  .hide-sm{display:none}
  .hdr-r .btn-primary{min-width:0}
}

/* alerts */
.flashes{padding-top:14px;display:flex;flex-direction:column;gap:8px}
.alert{border-radius:var(--r);padding:12px 14px;font-weight:600;border:1px solid}
.alert-ok{background:var(--ok-bg);border-color:#9FCFCB;color:var(--teal-d)}
.alert-err{background:var(--err-bg);border-color:#F4B4AE;color:#8A1C12}
.alert-info{background:#EEF4FB;border-color:#C5D8EE;color:#1E3F66}
.alert-warn{background:var(--warn-bg);border-color:#F0B9A3;color:#8A2C0A}

/* hero + search card */
.hero{background:var(--ink);color:#fff}
.hero-in{padding-top:56px;padding-bottom:64px;display:flex;flex-direction:column;gap:14px}
.hero h1{font-size:clamp(28px,4.2vw,46px);line-height:1.15;max-width:820px}
.hero-sub{margin:0 0 14px;font-size:18px;color:#C9D6DF;max-width:760px}
.search-card{background:#fff;color:var(--ink);border-radius:var(--r-lg);padding:18px;display:flex;flex-direction:column;gap:16px;box-shadow:0 20px 50px rgba(5,20,30,.35)}
.tabs{display:flex;flex-wrap:wrap;gap:8px}
.tab{position:relative}
.tab input,.pill input{position:absolute;opacity:0;pointer-events:none}
.tab span{display:inline-flex;align-items:center;height:44px;padding:0 18px;border-radius:10px;border:1px solid var(--line2);font-weight:600;cursor:pointer}
.tab input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff;font-weight:700}
.tab input:focus-visible+span,.pill input:focus-visible+span{outline:3px solid #5BB3AE;outline-offset:2px}
.sfields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;align-items:end}
.fld{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--muted);min-width:0}
.fld>span{display:block}
.inp{height:50px;width:100%;min-width:0;border-radius:10px;border:1px solid var(--line2);padding:0 12px;font-size:15px;color:var(--ink);background:#fff}
.inp:focus{border-color:var(--teal);outline:none;box-shadow:0 0 0 3px rgba(11,110,105,.18)}
.inp-sm{height:42px;font-size:14px}
.inp-xs{height:32px;font-size:13px;width:auto;padding:0 6px}
.ta{height:auto;padding:12px;line-height:1.6;resize:vertical}
.row2{display:flex;gap:8px}
.pills{display:flex;flex-wrap:wrap;gap:6px}
.pill{position:relative;flex:0 0 auto}
.pill span{display:inline-flex;align-items:center;justify-content:center;min-width:48px;height:50px;padding:0 14px;border-radius:10px;border:1px solid var(--line2);background:#fff;color:var(--ink);font-weight:700;cursor:pointer}
.pill input:checked+span{border-color:var(--teal);background:var(--teal-l);color:var(--teal)}
.pill-sm span{height:42px;min-width:42px;padding:0 10px}
.pills-wide .pill{flex:1}.pills-wide .pill span{width:100%}
.sfields .pills .pill{flex:1}.sfields .pills .pill span{width:100%;min-width:0}
.s-actions{display:flex;gap:8px}.s-actions .btn-accent{flex:1}
.chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:14px}
.chip{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:var(--soft);color:var(--ink);text-decoration:none;font-weight:600;border:0;cursor:pointer;font-size:14px}
a.chip:hover,button.chip:hover{background:#E1E8EC;color:var(--ink)}
.chip-teal{background:var(--teal-l);color:var(--teal)}

/* sections & cards */
.home{padding-top:44px;padding-bottom:64px;display:flex;flex-direction:column;gap:52px}
.sec{display:flex;flex-direction:column;gap:18px}
.sec-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.sec-head h2{display:flex;align-items:center;gap:10px}
.cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.cat-tile{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink);font-weight:700;font-size:16px}
.cat-tile:hover{border-color:var(--teal);color:var(--ink)}
.cat-ico{width:48px;height:48px;border-radius:12px;background:var(--teal-l);color:var(--teal);display:flex;align-items:center;justify-content:center;flex:none}
.badge{display:inline-flex;align-items:center;font-size:12px;font-weight:800;padding:4px 8px;border-radius:6px;line-height:1.2}
.b-plus{background:var(--coral-d);color:#fff}
.b-vip{background:var(--vip-bg);color:var(--vip-ink)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.card{position:relative}
.card-link{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--ink)}
.card-link:hover{border-color:#B9C6CF;color:var(--ink)}
.card-plus .card-link,.card-plus .rcard-link{border:2px solid #E9A88C}
.ph{position:relative;background:#D6E2E8;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;overflow:hidden}
.ph img{width:100%;height:100%;object-fit:cover}
.ph-empty{color:#7D8E9B}
.ph .badge{position:absolute;left:12px;top:12px}
.ph-count{position:absolute;left:12px;bottom:12px;background:rgba(15,42,61,.78);color:#fff;font-size:12px;font-weight:700;padding:3px 8px;border-radius:6px;display:inline-flex;align-items:center;gap:4px}
.card-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px;flex:1}
.price{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px}
.price strong{font-size:20px;font-weight:800}
.price span{font-size:13px;color:var(--muted);font-weight:600}
.ttl{font-size:15px;font-weight:600;line-height:1.4}
.specs{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:var(--muted);font-weight:600}
.meta{display:flex;justify-content:space-between;gap:8px;font-size:13px;color:var(--muted);border-top:1px solid var(--soft);padding-top:10px;margin-top:auto}
.fav-btn{position:absolute;right:12px;top:12px;width:40px;height:40px;border-radius:999px;border:0;background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 4px rgba(15,42,61,.2)}
.fav-btn.on,.fav-inline.on{color:var(--coral)}
.fav-btn.on svg,.fav-inline.on svg{fill:var(--coral)}
.empty{color:var(--muted)}
.box{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:22px}
.empty-box{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.empty-box p{margin:0}
.promo{display:flex;flex-wrap:wrap;gap:28px;align-items:center;padding:30px}
.promo-txt{flex:1 1 340px;display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.promo-txt p{margin:0;color:var(--muted);font-size:16px;line-height:1.6}
.promo-pk{flex:1 1 440px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.pk{border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.pk p{margin:0;font-size:14px;color:var(--ink2)}
.pk-vip{background:#FFFAEC;border:1px solid #F2D9A0}
.pk-plus{background:#FFF3EE;border:1px solid #F0B9A3}
.pk-price{font-size:26px;font-weight:800}.pk-price small{font-size:14px;color:var(--muted);font-weight:600}

/* search page */
.filterbar{background:#fff;border-bottom:1px solid var(--line)}
.fb-in{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:12px;padding-bottom:12px}
.fb-q{display:flex;align-items:center;gap:8px;height:42px;border:1px solid var(--line2);border-radius:10px;padding:0 12px;background:#fff;flex:1 1 240px;color:var(--muted)}
.fb-q input{border:0;outline:0;flex:1;min-width:0;font-size:14px;background:transparent;color:var(--ink)}
.fb-q-sm{flex:0 1 300px}
.fb-in>select{width:auto;flex:0 1 auto}
.fb-range{display:flex;gap:6px}.fb-range .inp{width:130px}
.more-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding-bottom:12px}
.more-filters select{width:auto}
.check{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--ink);cursor:pointer;font-size:14px;min-height:32px}
.check input{width:18px;height:18px;accent-color:var(--teal)}
.results{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start;padding-top:20px;padding-bottom:48px}
.rlist{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:14px}
.rhead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}
.rhead h1{font-size:22px}.rhead h1 .muted{font-size:15px;font-weight:600}
.rhead-r{display:flex;gap:8px;align-items:center}
.sortsel{display:flex;align-items:center;gap:8px;font-size:14px}
.sortsel select{width:auto}
.rcard{position:relative}
.rcard-link{display:flex;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--ink)}
.rcard-link:hover{border-color:#B9C6CF;color:var(--ink)}
.rcard .ph{flex:0 0 260px;aspect-ratio:auto;min-height:190px}
.rcard-body{flex:1 1 280px;padding:16px 18px;display:flex;flex-direction:column;gap:8px;min-width:0}
.rcard-body .ttl{font-size:16px;font-weight:700}
.addr{font-size:14px;color:var(--muted)}
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tags span{font-size:13px;font-weight:700;background:var(--soft);padding:5px 10px;border-radius:8px}
.tags .tag-sea{background:var(--teal-l);color:var(--teal)}
.rcard .meta{border-top:1px solid var(--soft)}
.rcard .fav-btn{left:12px;right:auto;top:auto;bottom:12px}
@media (max-width:640px){.rcard .ph{flex-basis:100%;min-height:200px}.rcard .fav-btn{left:auto;right:12px;top:12px;bottom:auto}}
.map-box{flex:1 1 400px;position:sticky;top:16px;height:calc(100vh - 32px);min-height:480px;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line2);background:#E4ECEE}
#map{width:100%;height:100%}
.show-map-btn,.close-map-btn{display:none}
@media (max-width:1000px){
  .map-box{display:none;position:fixed;inset:0;height:auto;min-height:0;border-radius:0;z-index:50;top:0}
  .results.map-open .map-box{display:block}
  .show-map-btn{display:inline-flex}
  .close-map-btn{display:inline-flex;position:absolute;top:12px;left:12px;z-index:500}
}
.pin{background:#fff;color:var(--ink);font:800 12px var(--font);padding:4px 8px;border-radius:999px;box-shadow:0 2px 8px rgba(15,42,61,.3);white-space:nowrap;text-decoration:none;display:inline-block;transform:translate(-50%,-50%)}
.pin-plus{background:var(--coral-d);color:#fff}
.pin-vip{background:var(--vip-bg);color:var(--vip-ink)}
.leaflet-div-icon{background:none;border:0}
.pager{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;padding-top:8px}
.pager a,.pager span{min-width:44px;height:44px;padding:0 12px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line2);color:var(--ink);text-decoration:none;font-weight:700}
.pager span.on{background:var(--ink);border-color:var(--ink);color:#fff}
.pager span:not(.on){border:0;background:none}

/* listing */
.listing{padding-top:16px;padding-bottom:64px;display:flex;flex-direction:column;gap:18px}
.crumbs{display:flex;flex-wrap:wrap;gap:6px;font-size:14px;color:var(--muted)}
.crumbs a{text-decoration:none}
.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:200px 200px;gap:8px;border-radius:var(--r-lg);overflow:hidden}
.gallery-one{grid-template-columns:1fr;grid-template-rows:440px}
.g-item{position:relative;padding:0;border:0;background:#D6E2E8;cursor:zoom-in;overflow:hidden}
.g-item img{width:100%;height:100%;object-fit:cover}
.g-main{grid-column:span 2;grid-row:span 2}
.gallery-one .g-main{grid-column:auto;grid-row:auto}
.g-empty{display:flex;align-items:center;justify-content:center;color:#7D8E9B;cursor:default}
.g-item .badge{position:absolute;left:14px;top:14px}
.g-more{position:absolute;inset:0;background:rgba(15,42,61,.55);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center}
@media (max-width:760px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:240px 110px}.g-item:nth-child(n+4):not(script){display:none}.g-main{grid-row:span 1}}
.l-grid{display:flex;flex-wrap:wrap;gap:22px;align-items:flex-start}
.l-main{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:18px}
.l-side{flex:1 1 320px;display:flex;flex-direction:column;gap:14px;position:sticky;top:16px}
@media (max-width:900px){.l-side{position:static}}
.l-title{font-size:27px;line-height:1.3}
.l-addr{display:flex;gap:6px;align-items:center;color:var(--muted);margin:10px 0 0}
.facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:18px 0 0}
.facts div{background:var(--bg);border-radius:12px;padding:12px 14px}
.facts dt{font-size:13px;color:var(--muted);font-weight:600}
.facts dd{margin:2px 0 0;font-size:16px;font-weight:800}
.box-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.box>h2{margin-bottom:14px}
.desc{font-size:16px;line-height:1.75;color:var(--ink2);max-width:76ch}
.feat-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px 16px}
.feat-list li{display:flex;align-items:center;gap:10px;color:var(--ink)}
.feat-list .ic{color:var(--teal)}
.lmap{height:320px;border-radius:14px;margin-bottom:12px;background:#E4ECEE}
.price-box{display:flex;flex-direction:column;gap:12px}
.price-big{font-size:32px;font-weight:800;line-height:1.1}
.owner{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--soft);border-bottom:1px solid var(--soft)}
.owner div{display:flex;flex-direction:column}
.avatar{width:48px;height:48px;border-radius:999px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;flex:none}
.contact-alt{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.l-meta{display:flex;justify-content:space-between;gap:8px;font-size:13px}
.l-meta span{display:inline-flex;align-items:center;gap:4px}
.l-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.owner-tools{display:flex;flex-direction:column;gap:8px;padding:14px}
.lightbox{position:fixed;inset:0;background:rgba(6,16,24,.94);z-index:100;display:flex;align-items:center;justify-content:center}
.lightbox img{max-width:92vw;max-height:86vh;object-fit:contain}
.lightbox button{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;width:52px;height:52px;border-radius:999px;font-size:30px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.lb-close{top:16px;right:16px}.lb-prev{left:16px;top:50%}.lb-next{right:16px;top:50%}
.lb-count{position:absolute;bottom:18px;color:#fff;font-weight:700}

/* auth */
.auth{padding-top:40px;padding-bottom:64px}
.auth-box{max-width:460px;margin:0 auto;display:flex;flex-direction:column;gap:14px;padding:28px}
.auth-links{display:flex;flex-direction:column;gap:6px;font-size:14px}
.narrow{max-width:640px}
.center-page{padding-top:64px;padding-bottom:96px;display:flex;flex-direction:column;gap:14px;align-items:flex-start}

/* cabinet */
.cab{display:flex;flex-wrap:wrap;gap:22px;align-items:flex-start;padding-top:22px;padding-bottom:64px}
.cab-side{flex:1 1 250px;display:flex;flex-direction:column;gap:12px}
.cab-main{flex:999 1 620px;min-width:0;display:flex;flex-direction:column;gap:14px}
.bal-box{display:flex;flex-direction:column;gap:12px;padding:18px}
.who{display:flex;flex-direction:column}.who span{font-size:13px;color:var(--muted)}
.bal{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--bg);border-radius:12px;padding:12px 14px}
.bal>div{display:flex;flex-direction:column}.bal strong{font-size:22px}
.side-menu{display:flex;flex-direction:column;padding:8px}
.side-menu a{padding:12px 14px;border-radius:10px;color:var(--ink);font-weight:600;text-decoration:none}
.side-menu a:hover{background:var(--soft)}
.side-menu a.on{background:var(--teal-l);color:var(--teal);font-weight:800}
.cab-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}
.tabs2{display:flex;flex-wrap:wrap;gap:8px}
.tabs2 a{height:42px;padding:0 14px;border-radius:10px;border:1px solid var(--line2);background:#fff;color:var(--ink);font-weight:600;font-size:14px;display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.tabs2 a.on{background:var(--ink);border-color:var(--ink);color:#fff}
.my-item{display:flex;flex-wrap:wrap;gap:16px;padding:14px}
.my-ph{position:relative;flex:0 0 150px;height:112px;border-radius:12px;overflow:hidden;background:#D6E2E8;display:flex;align-items:center;justify-content:center}
.my-ph img{width:100%;height:100%;object-fit:cover}
.my-ph .badge{position:absolute;left:8px;top:8px;font-size:11px}
.my-info{flex:1 1 260px;min-width:0;display:flex;flex-direction:column;gap:4px}
.my-ttl{font-weight:700;color:var(--ink);text-decoration:none}
.my-price{font-size:18px}
.my-stats{flex:0 1 190px;display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}
.my-stats span{display:inline-flex;align-items:center;gap:6px}
.my-stats b{color:var(--ink)}
.my-actions{flex:1 1 100%;display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid var(--soft);padding-top:12px}
.my-actions form{display:contents}

/* form */
.form-page{padding-top:22px;padding-bottom:64px;max-width:980px}
.form-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:16px}
.lform{display:flex;flex-direction:column;gap:16px}
.fsec{display:flex;flex-direction:column;gap:14px}
.fsec>h2{font-size:19px}
.fgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;align-items:end}
.feat-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:4px 14px}
.pickmap{height:300px;border-radius:14px;background:#E4ECEE}
.seg-tabs{align-self:flex-start}
.tr-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.drop{display:flex;flex-direction:column;align-items:center;gap:6px;border:2px dashed var(--line2);border-radius:14px;padding:26px;text-align:center;cursor:pointer;color:var(--muted);position:relative}
.drop:hover{border-color:var(--teal);color:var(--teal)}
.drop strong{color:var(--ink)}
.drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.previews,.ex-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}
.previews img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.ex-ph{display:flex;flex-direction:column;gap:2px}
.ex-ph img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.price-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.inp-price{font-size:22px;font-weight:800;max-width:260px}
.form-submit{display:flex;align-items:center;gap:14px;flex-wrap:wrap}

/* promote */
.promo-target{display:flex;gap:14px;align-items:center;padding:14px}
.promo-target img{width:110px;height:82px;object-fit:cover;border-radius:10px}
.promo-target div{display:flex;flex-direction:column;gap:2px}
.promo-form{display:flex;flex-direction:column;gap:18px}
.pkg-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.pkg{position:relative;cursor:pointer}
.pkg input{position:absolute;opacity:0}
.pkg-in{display:flex;flex-direction:column;gap:8px;align-items:flex-start;border:1px solid var(--line);border-radius:16px;padding:18px;height:100%}
.pkg-vip input:checked+.pkg-in{border:3px solid #E8B64C;background:#FFFAEC;padding:16px}
.pkg-plus input:checked+.pkg-in{border:3px solid var(--coral-d);background:#FFF3EE;padding:16px}
.pkg input:focus-visible+.pkg-in{outline:3px solid #5BB3AE}
.pkg-desc{font-size:14px;color:var(--ink2)}
.promo-opts{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-end}
.promo-opts .pill span{height:44px}
.promo-total{margin-left:auto;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.promo-total strong{font-size:28px}
.topup{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start;justify-content:space-between}
.topup-form{flex:1 1 360px;display:flex;flex-direction:column;gap:10px}
.row-inline{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.row-inline .fld{flex:1 1 160px}

/* tables & admin */
.tbl-wrap{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:14px}
.tbl{width:100%;border-collapse:collapse;font-size:14px}
.tbl th,.tbl td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--soft);vertical-align:top}
.tbl th{font-size:13px;color:var(--muted);font-weight:700;background:var(--bg)}
.tbl .r{text-align:right;white-space:nowrap}
.tbl-img{width:64px;height:48px;object-fit:cover;border-radius:6px}
.tbl-actions{display:flex;flex-direction:column;gap:6px;min-width:220px}
.tbl-actions form{display:flex;flex-wrap:wrap;gap:4px}
.row-blocked td{opacity:.55}
.st{display:inline-block;font-size:12px;font-weight:800;padding:3px 8px;border-radius:6px;background:var(--soft)}
.st-active,.st-succeeded{background:var(--teal-l);color:var(--teal)}
.st-pending,.st-created{background:var(--vip-bg);color:var(--vip-ink)}
.st-blocked,.st-failed,.st-deleted{background:var(--err-bg);color:var(--err)}
.admin{padding-top:20px;padding-bottom:64px;display:flex;flex-direction:column;gap:16px}
.admin-nav{display:flex;flex-wrap:wrap;gap:6px}
.admin-nav a{padding:8px 14px;border-radius:10px;background:#fff;border:1px solid var(--line);color:var(--ink);text-decoration:none;font-weight:600}
.admin-nav a.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.admin-filter{display:flex;flex-wrap:wrap;gap:8px}
.admin-filter .inp{width:auto;flex:0 1 340px}
.admin-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px;align-items:start}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.stat{display:flex;flex-direction:column;gap:4px;padding:16px}
.stat strong{font-size:26px}
.vip-inline{align-items:center}
.cards-3{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}

/* footer */
.ftr{background:var(--ink);color:#C9D6DF;margin-top:20px}
.ftr-in{display:flex;flex-wrap:wrap;gap:28px 64px;padding-top:40px;padding-bottom:28px;font-size:14px}
.ftr a{color:#C9D6DF;text-decoration:none}.ftr a:hover{color:#fff}
.ftr-brand{flex:1 1 260px;display:flex;flex-direction:column;gap:8px}
.ftr-logo{font-size:20px;font-weight:800;color:#fff}.ftr-logo b{color:#F0805F}
.ftr-col{display:flex;flex-direction:column;gap:8px}.ftr-col strong{color:#fff}
.ftr-bottom{border-top:1px solid #23445A;padding-top:14px;padding-bottom:20px;font-size:13px}

@media (prefers-reduced-motion:reduce){.chute{animation:none}*{scroll-behavior:auto}}
@media (max-width:640px){
  .wrap{padding:0 14px}
  .hero-in{padding-top:32px;padding-bottom:36px}
  .box{padding:16px}
  .fb-range .inp{width:110px}
  .promo-total{margin-left:0}
}

/* v3: compact form, street autocomplete, pages, footer */
.fgrid-2{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.fgrid-3{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.street-row{display:grid;grid-template-columns:minmax(0,3fr) minmax(110px,1fr);gap:12px;align-items:end}
.street-row .fld>label{display:block}
.ac{position:relative}
.ac-list{position:absolute;z-index:1200;left:0;right:0;top:calc(100% + 6px);margin:0;padding:6px;list-style:none;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 32px rgba(15,42,61,.18);max-height:330px;overflow:auto}
.ac-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;cursor:pointer;color:var(--ink);font-weight:600;font-size:15px}
.ac-list li small{flex:none;font-size:12px;font-weight:600;color:var(--muted);background:var(--soft);border-radius:999px;padding:2px 9px;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ac-list li.on,.ac-list li:hover{background:var(--soft)}
.ac-list li.ac-manual{border-top:1px solid var(--line);border-radius:0 0 10px 10px;color:var(--teal);margin-top:4px}
.sea-row{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center}
.fld-inline{flex-direction:row;align-items:center;gap:10px}
.fld-inline .inp{width:140px}
details.more{border-top:1px solid var(--soft);padding-top:12px}
details.more>summary{cursor:pointer;font-weight:700;color:var(--teal);padding:4px 0;list-style:none}
details.more>summary::before{content:'+ '}
details.more[open]>summary::before{content:'− '}
details.more[open]>summary{margin-bottom:12px}
.chips-pills .pill span{height:42px;font-weight:600}
.note{background:#F1EEFB;border-left:3px solid #7C6BD6;border-radius:8px;padding:12px 14px;color:var(--ink2);font-size:14px}
.video{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#000}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.progress{height:10px;border-radius:999px;background:var(--soft);overflow:hidden}
.progress span{display:block;height:100%;background:var(--teal)}
.page-txt{padding-top:32px;padding-bottom:64px;display:flex;flex-direction:column;gap:18px}
.ftr-sub{margin-top:10px;color:#fff}
.social{display:flex;gap:10px}
.social a{width:38px;height:38px;border-radius:999px;border:1px solid #2F5068;display:inline-flex;align-items:center;justify-content:center}
.social a:hover{border-color:#fff}
@media (max-width:640px){.street-row{grid-template-columns:1fr}}

.tr-btn{color:#2D5BD7;border-color:#B9C9F2}
.tr-btn:hover{color:#1E44A8;border-color:#1E44A8}
[data-translate-status]:empty{display:none}

/* blog */
.blog,.blog-post{padding-top:16px;padding-bottom:64px;display:flex;flex-direction:column;gap:20px}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}
.post-card{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--ink)}
.post-card:hover .post-ttl{color:var(--teal)}
.post-ph{display:block;aspect-ratio:4/3;border-radius:14px;overflow:hidden;background:#D6E2E8}
.post-ph img{width:100%;height:100%;object-fit:cover}
.post-ttl{font-size:17px;font-weight:700;line-height:1.4}
.post{max-width:820px;display:flex;flex-direction:column;gap:12px}
.post h1{font-size:clamp(24px,3.4vw,36px)}
.post-hero{width:100%;border-radius:16px;margin:6px 0 10px}
.post-body{font-size:17px;line-height:1.75;color:var(--ink2);max-width:72ch}
.post-body p{margin:0 0 1em}
.post-body img{border-radius:12px;margin:10px 0}
.post-body h2,.post-body h3{margin:1.2em 0 .5em}
.blog-edit-img{width:220px;border-radius:10px}

/* v8: home sections, cities, agents, analytics */
.eyebrow{display:block;font-size:13px;font-weight:800;letter-spacing:.12em;color:var(--coral);margin-bottom:4px}
.see-all{font-weight:700;color:var(--ink);text-decoration:none;border-bottom:2px solid var(--coral);padding-bottom:2px;white-space:nowrap}
.see-all:hover{color:var(--coral)}
.sec-head{align-items:flex-end}
.cards-4{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
@media (min-width:1100px){.cards-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.rotator>.card{animation:none}
.rotator>.card.rot-in{animation:rotIn .45s ease}
@keyframes rotIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.rot-nav{display:flex;gap:6px}
.city-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
@media (min-width:1100px){.city-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.city-tile{position:relative;display:block;aspect-ratio:4/3;border-radius:18px;overflow:hidden;background:var(--ink);text-decoration:none;color:#fff}
.city-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.city-tile:hover img{transform:scale(1.04)}
.city-tile::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(10,25,36,.78),rgba(10,25,36,0) 60%)}
.city-txt{position:absolute;left:18px;bottom:16px;z-index:1;display:flex;flex-direction:column}
.city-txt strong{font-size:24px;font-weight:800}
.city-txt span{font-size:14px;color:#DCE6EC}
.agent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.agent-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-decoration:none;color:var(--ink)}
.agent-card:hover{border-color:var(--teal);color:var(--ink)}
.agent-name{font-weight:800;font-size:16px}
.agent-n{font-size:13px;font-weight:700;color:var(--teal)}
.agency-logo{width:64px;height:64px;border-radius:14px;background:var(--teal-l);color:var(--teal);display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:24px;overflow:hidden;flex:none;border:1px solid var(--line)}
.agency-logo img{width:100%;height:100%;object-fit:contain;background:#fff}
.agency-logo-lg{width:120px;height:120px;font-size:44px}
.agency-logo-sm{width:48px;height:48px;font-size:18px;text-decoration:none}
.agent-head{display:flex;flex-wrap:wrap;gap:22px;align-items:flex-start}
.agent-info{flex:1 1 320px;display:flex;flex-direction:column;gap:10px}
.agent-info p{margin:0}
.agent-links{display:flex;flex-wrap:wrap;gap:8px}
.agency-status{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}
.agency-logo-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.an-filter{display:flex;flex-wrap:wrap;gap:10px;padding:14px}
.an-filter select{width:auto;max-width:100%}
.an-title{font-size:17px;margin-bottom:10px}
.an-chart svg{width:100%;height:auto;display:block}
.an-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.an-card{display:flex;flex-direction:column;gap:6px}
.an-ico{width:44px;height:44px;border-radius:999px;background:var(--teal-l);color:var(--teal);display:inline-flex;align-items:center;justify-content:center}
.an-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.an-row strong{font-size:28px}
.an-pct{font-weight:800}
.an-up{color:#0B7A4B}.an-down{color:var(--err)}.an-flat{color:var(--muted)}

/* profile v2 */
.pform{display:flex;flex-direction:column;gap:16px}
.choice-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.choice{position:relative;cursor:pointer}
.choice input{position:absolute;opacity:0}
.choice-in{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:16px 18px;height:100%;transition:border-color .15s,box-shadow .15s}
.choice input:checked+.choice-in{border-color:var(--teal);box-shadow:0 0 0 3px rgba(11,110,105,.14)}
.choice input:focus-visible+.choice-in{outline:3px solid #5BB3AE}
.choice-ico{width:44px;height:44px;border-radius:12px;background:var(--soft);color:var(--ink);display:flex;align-items:center;justify-content:center;flex:none}
.choice input:checked+.choice-in .choice-ico{background:var(--teal);color:#fff}
.choice-txt{display:flex;flex-direction:column;gap:2px}
.choice-txt strong{font-size:16px}
.choice-txt span{font-size:13px;color:var(--muted);line-height:1.45}
.pcard{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px 22px;display:flex;flex-direction:column;gap:14px}
.pcard h2{font-size:18px}
.pcard h3{font-size:14px;margin:6px 0 -4px;color:var(--ink2)}
.pcard-accent{border-color:#B9DCD9}
.pub-ok{display:flex;align-items:center;gap:8px;margin:4px 0 0;font-size:14px}
.pub-ok .dot{width:9px;height:9px;border-radius:50%;background:#1F9D63;flex:none}
.brand-row{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.logo-drop{position:relative;width:104px;height:104px;border-radius:22px;border:2px dashed var(--line2);background:var(--bg);display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;flex:none}
.logo-drop:hover{border-color:var(--teal)}
.logo-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.logo-drop img{width:100%;height:100%;object-fit:contain;background:#fff}
.logo-ph{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--muted)}
.logo-ph small{font-size:12px;font-weight:600}
.brand-fields{flex:1 1 280px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.fld-sw{display:flex;flex-direction:column;gap:6px}
.switch{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;position:relative}
.switch input{position:absolute;opacity:0}
.switch span{width:36px;height:20px;border-radius:999px;background:#C9D3DA;position:relative;transition:background .15s;flex:none}
.switch span::after{content:'';position:absolute;left:2px;top:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s}
.switch input:checked+span{background:var(--teal)}
.switch input:checked+span::after{transform:translateX(16px)}
.switch input:focus-visible+span{outline:3px solid #5BB3AE}
.social-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.soc-in{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--muted)}
.pass-card summary{cursor:pointer;font-weight:700;list-style:none}
.pass-card summary::after{content:' ▾';color:var(--muted)}
.pass-card[open] summary{margin-bottom:12px}
.save-bar{position:sticky;bottom:0;background:linear-gradient(to top,var(--bg) 70%,rgba(245,247,248,0));padding:12px 0;z-index:5}
.pub-card{flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:center;margin-top:16px;background:#FFF8F4;border-color:#F3CDBC}
.pub-card>div{display:flex;flex-direction:column;gap:2px}

/* user menu */
.umenu{position:relative}
.umenu-btn{gap:8px;padding:0 10px 0 6px}
.uav{width:32px;height:32px;border-radius:999px;background:var(--teal);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;overflow:hidden;flex:none}
.uav img{width:100%;height:100%;object-fit:contain;background:#fff}
.uav-lg{width:52px;height:52px;font-size:20px}
.umenu-pop{position:absolute;right:0;top:calc(100% + 8px);width:300px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 44px rgba(15,42,61,.18);z-index:60;overflow:hidden}
.umenu-pop::before{content:'';position:absolute;top:-10px;left:0;right:0;height:10px}
.umenu-head{display:flex;gap:12px;align-items:center;padding:16px 18px}
.umenu-head div{display:flex;flex-direction:column;min-width:0}
.umenu-head strong{font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.umenu-head span{font-size:13px;color:var(--muted)}
.umenu-bal{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 10px;margin:0 14px 8px;padding:12px 14px;border-radius:12px;background:var(--bg);text-decoration:none;color:var(--ink)}
.umenu-bal span:first-child{font-size:12px;color:var(--muted);grid-column:1}
.umenu-bal strong{font-size:18px;grid-column:1}
.umenu-plus{grid-column:2;grid-row:1 / span 2;display:inline-flex;align-items:center;gap:4px;background:var(--teal);color:#fff;font-weight:700;font-size:13px;padding:7px 10px;border-radius:9px}
.umenu-list{display:flex;flex-direction:column;border-top:1px solid var(--soft);padding:6px 0}
.umenu-list a,.umenu-out button{display:flex;align-items:center;gap:12px;padding:11px 18px;color:var(--ink);text-decoration:none;font-weight:600;font-size:15px}
.umenu-list a:hover,.umenu-out button:hover{background:var(--soft);color:var(--ink)}
.umenu-list .ic{color:var(--muted)}
.umenu-out{border-top:1px solid var(--soft)}
.umenu-out button{width:100%;border:0;background:none;cursor:pointer;font:inherit;font-weight:600}
@media (max-width:640px){.umenu-pop{position:fixed;left:12px;right:12px;top:70px;width:auto}}

/* mobile header: one compact row; language & currency live in the menu */
.nav-extra{display:none}
@media (max-width:1180px){
  .hdr-in{flex-wrap:wrap;gap:10px}
  .logo{order:1}
  .hdr-r{order:2;flex-basis:auto;margin-left:auto;flex-wrap:nowrap;gap:6px}
  .nav-toggle{order:3;margin-left:0}
  .nav{order:5}
  .hdr-r>.seg{display:none}
  .nav-extra{display:flex;flex-wrap:wrap;gap:10px;padding:10px 0 6px}
  .hdr.open .nav{padding-bottom:8px}
  .nav a{padding:11px 0;border-bottom:1px solid var(--soft)}
  .nav-extra .seg a{border-bottom:0;padding:0 14px}
}
@media (max-width:640px){
  .hdr-in{padding-top:10px;padding-bottom:10px}
  .logo{font-size:18px;gap:6px}
  .logo svg{width:32px;height:32px}
  .hdr-r .btn{height:40px}
  .hdr-r .btn-icon,.hdr-r .btn-primary{width:40px;padding:0}
  .umenu-btn{padding:0 6px 0 4px}
  .umenu-btn .ic{display:none}
  .uav{width:30px;height:30px}
  .umenu-pop{top:64px}
  /* cabinet: the header menu already has these links, so the side column is hidden on phones */
  .cab-side{display:none}
  .cab{padding-top:14px}
}
@media (max-width:380px){
  .logo span{font-size:16px}
  .hdr-r a[aria-label]{display:none}
}

/* v15: tidy mobile layout, compact deal tabs */
/* deal tabs: one compact segmented row */
.tabs{display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;background:var(--soft);padding:4px;border-radius:12px;align-self:flex-start}
.tab span{height:38px;padding:0 16px;border:0;border-radius:9px;font-size:14px;font-weight:600;justify-content:center;width:100%;color:var(--muted)}
.tab input:checked+span{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(15,42,61,.18);border:0}

@media (max-width:640px){
  /* header: everything on one line */
  .hdr-in{flex-wrap:nowrap}
  .hdr.open .hdr-in{flex-wrap:wrap}
  .hdr-r a[aria-label]{display:none}
  .hdr-r .btn,.nav-toggle{height:38px}
  .hdr-r .btn-icon,.hdr-r .btn-primary,.nav-toggle{width:38px;min-width:38px;padding:0}
  .logo{min-width:0}
  .logo span{white-space:nowrap}

  /* hero */
  .hero-in{padding-top:24px;padding-bottom:28px;gap:10px}
  .hero h1{font-size:26px}
  .hero-sub{font-size:15px;margin-bottom:8px}
  .search-card{padding:14px;gap:14px;border-radius:16px}
  .tabs{display:grid;width:100%;grid-template-columns:repeat(4,1fr)}
  .tab span{padding:0 4px;font-size:13px;height:36px}
  .sfields{grid-template-columns:1fr 1fr;gap:10px}
  .sfields .fld:nth-child(3),.sfields .fld:nth-child(4),.s-actions{grid-column:1 / -1}
  .inp{height:46px}
  .pill span{height:46px}

  /* categories: compact two-column tiles */
  .home{padding-top:24px;gap:36px}
  .cats{grid-template-columns:1fr 1fr;gap:10px}
  .cat-tile{padding:12px;gap:10px;font-size:14px;line-height:1.3}
  .cat-ico{width:38px;height:38px;border-radius:10px}
  .cat-ico svg{width:20px;height:20px}
  .sec h2,.sec-head h2{font-size:21px}

  /* search filters: aligned grid */
  .fb-in{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:10px;padding-bottom:10px}
  .fb-q{grid-column:1 / -1}
  .fb-in>select{width:100%}
  .fb-in>select[name=city]{grid-column:1 / -1}
  .fb-range{grid-column:1 / -1}
  .fb-range .inp{width:auto;flex:1;min-width:0}
  .fb-in>.pills{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,1fr)}
  .fb-in>.pills .pill span{width:100%;min-width:0}
  .fb-in>.btn{width:100%}
  .more-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .more-filters select{width:100%}
  .more-filters .fb-range{grid-column:1 / -1}
  .results{padding-top:14px;gap:14px}
  .rhead{gap:8px}
  .rhead h1{font-size:19px;width:100%}
  .rhead-r{width:100%;display:grid;grid-template-columns:auto 1fr;gap:8px}
  .sortsel{gap:6px}
  .sortsel span{display:none}
  .sortsel select{width:100%}
}
.code-inp{font-size:28px;font-weight:800;letter-spacing:.5em;text-align:center;height:60px}
.verify-row{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center}
.ver-ok{display:inline-flex;align-items:center;gap:6px;color:#0B7A4B;font-weight:700;font-size:14px}
/* desktop header: keep every menu item visible */
@media (min-width:1181px) and (max-width:1400px){
  .hdr-in{gap:12px 16px}
  .nav{gap:14px;font-size:14px}
  .seg a,.seg button{min-width:34px;padding:0 8px}
  .logo{font-size:19px}
  .hdr-r a[aria-label]{display:none}
  .hdr-r .btn-primary{min-width:0}
}

/* language + currency dropdown */
.dd-btn{gap:6px;padding:0 12px;font-size:14px;font-weight:700}
.dd-pop{width:220px;padding:8px 0}
.dd-sec{display:flex;flex-direction:column;padding:4px 0}
.dd-sec+.dd-sec{border-top:1px solid var(--soft)}
.dd-lbl{font-size:12px;color:var(--muted);font-weight:700;padding:6px 16px 2px}
.dd-sec a{display:flex;gap:10px;align-items:center;padding:9px 16px;color:var(--ink);text-decoration:none;font-weight:600;font-size:14px}
.dd-sec a b{min-width:24px}
.dd-sec a:hover{background:var(--soft)}
.dd-sec a.on{color:var(--teal)}
.dd-sec a.on::after{content:'✓';margin-left:auto}
@media (max-width:1180px){.locale{display:none}}
/* agents: highlighted in the top menu */
.nav a.nav-hl{background:var(--teal-l);color:var(--teal);padding:7px 12px;border-radius:999px;font-weight:700;gap:6px}
.nav a.nav-hl:hover,.nav a.nav-hl.on{background:var(--teal);color:#fff}
@media (max-width:1180px){.nav a.nav-hl{align-self:flex-start;margin:6px 0;border-bottom:0}}
.agent-cta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;background:var(--ink);color:#fff;border-radius:18px;padding:20px 24px}
.agent-cta div{display:flex;flex-direction:column;gap:4px;max-width:640px}
.agent-cta strong{font-size:18px}
.agent-cta span{color:#C9D6DF;font-size:14px;line-height:1.5}
.owner-all{display:inline-block;margin-top:2px;font-size:13px;font-weight:700;color:var(--teal);text-decoration:none}
.owner-all:hover{text-decoration:underline}
/* same property in other listings */
.dup-box{border-color:#F3CDBC;background:#FFFAF6}
.dup-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:12px}
.dup-head h2{font-size:18px;margin:0 0 2px}
.dup-head p{margin:0}
.dup-ico{width:44px;height:44px;border-radius:12px;background:#FDE3D6;color:var(--coral-d);display:flex;align-items:center;justify-content:center;flex:none}
.dup-list{display:flex;flex-direction:column;gap:8px}
.dup-row{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px 12px;text-decoration:none;color:var(--ink)}
.dup-row:hover{border-color:var(--coral)}
.dup-ph{width:64px;height:48px;border-radius:8px;overflow:hidden;background:#D6E2E8;flex:none}
.dup-ph img{width:100%;height:100%;object-fit:cover}
.dup-who{flex:1;min-width:0;display:flex;flex-direction:column}
.dup-who strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dup-price{display:flex;flex-direction:column;align-items:flex-end;white-space:nowrap}
.dup-price .cheaper{color:#0B7A4B;font-weight:700;font-size:13px}
.dup-price .pricier{color:var(--err);font-weight:700;font-size:13px}

/* blog: share, rating, comments */
.post-tools{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin-top:10px}
.share-row,.rate-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sh{width:40px;height:40px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line2);background:#fff;color:var(--ink);cursor:pointer;text-decoration:none}
.sh:hover{color:#fff;border-color:transparent}
.sh-fb:hover{background:#1877F2}.sh-wa:hover{background:#25D366}.sh-tg:hover{background:#229ED9}.sh-vb:hover{background:#7360F2}.sh-x:hover{background:#111}
button.sh:hover{background:var(--teal)}
.stars{display:inline-flex}
.star{border:0;background:none;font-size:26px;line-height:1;color:#D3DCE2;cursor:pointer;padding:0 2px}
.star.on,.stars:hover .star{color:#F2A33A}
.stars .star:hover~.star{color:#D3DCE2}
.comments{display:flex;flex-direction:column;gap:14px}
.comments h2{font-size:22px}
.cm-form{display:flex;flex-direction:column;gap:8px}
.cm{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}
.cm-body{flex:1;min-width:0}
.cm-head{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.cm-head form{margin-left:auto}
.cm-head .linkish{padding:0;width:auto;color:var(--err)}
.cm p{margin:6px 0 0;line-height:1.6}
/* google button */
.g-btn{gap:10px;font-weight:700}
.or-line{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px}
.or-line::before,.or-line::after{content:'';flex:1;height:1px;background:var(--line)}
/* original photos */
.photo-dl{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;align-items:center;padding:16px}
.photo-dl>div{display:flex;flex-direction:column}
.photo-dl .btn,.photo-dl form{grid-column:1 / -1}
.photo-dl-ico{width:40px;height:40px;border-radius:10px;background:var(--teal-l);color:var(--teal);display:flex;align-items:center;justify-content:center}
.gallery img,.lightbox img{-webkit-user-drag:none;user-select:none;-webkit-touch-callout:none}
.g-empty img{width:100%;height:100%;object-fit:cover}
/* logged-in header on medium screens: avatar only */
@media (min-width:1181px) and (max-width:1500px){
  .umenu-btn .uname{display:none}
  .hdr-r a[aria-label]{display:none}
  .nav{gap:14px}
}
.bump-done{background:var(--teal-l);border-color:transparent;color:var(--teal);cursor:default;font-weight:700}
.bump-done:hover{border-color:transparent;color:var(--teal)}

/* security / admin users filter */
.hp{position:absolute!important;left:-10000px!important;top:auto;width:1px;height:1px;overflow:hidden}
.ufilter{display:flex;flex-wrap:wrap;gap:6px}
.ufilter a{padding:7px 12px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--ink);text-decoration:none;font-weight:600;font-size:14px}
.ufilter a span{color:var(--muted);font-weight:700;margin-left:4px}
.ufilter a.on{background:var(--ink);color:#fff;border-color:var(--ink)}.ufilter a.on span{color:#C9D6DF}
.ufilter a.warn:not(.on){border-color:var(--err);color:var(--err)}
.bulkbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px}
.st.role-admin{background:var(--err-bg);color:var(--err)}
.st.role-agent{background:var(--teal-l);color:var(--teal)}

/* share */
.share-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.share-row .inp{flex:1 1 260px}
textarea[data-grow]{overflow:hidden;min-height:180px}
#d-ka{min-height:260px}

/* ===== v16: blog photos, header, mobile, agent page, reviews, filters ===== */
/* blog cards: whole picture visible on a blurred backdrop of itself */
.post-ph{position:relative;aspect-ratio:16/10;background:#0F2A3D}
.post-ph::before{content:'';position:absolute;inset:-20px;background:var(--ph) center/cover no-repeat;filter:blur(18px) brightness(.85);transform:scale(1.05)}
.post-ph img{position:relative;object-fit:contain}
/* blog editor */
.rte{border:1px solid var(--line2);border-radius:12px;background:#fff;overflow:hidden}
.rte-bar{display:flex;flex-wrap:wrap;gap:4px;padding:8px;background:var(--bg);border-bottom:1px solid var(--line)}
.rte-bar button{height:34px;min-width:36px;padding:0 10px;border:1px solid transparent;border-radius:8px;background:transparent;font:inherit;font-size:14px;font-weight:600;color:var(--ink);cursor:pointer}
.rte-bar button:hover{background:#fff;border-color:var(--line2)}
.rte-area{padding:14px 16px;outline:0;max-width:none;font-size:16px;overflow-y:auto;max-height:70vh}
.rte-area:focus{box-shadow:inset 0 0 0 2px #B9DCD9}
.tbl-act{display:flex;gap:6px;flex-wrap:wrap}.tbl-act form{display:contents}
.wm-box{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;border-color:#F2C5B5;background:#FFF8F5}

/* header: on medium desktops hide the user name so the whole menu (ბლოგი) fits */
@media (min-width:1181px) and (max-width:1600px){
  .uname{display:none}
  .hdr-r .btn-primary{min-width:0}
  .nav{gap:16px}
}

/* phones: no sideways sliding, no zoom-in when tapping a field */
html,body{max-width:100%;overflow-x:clip}
img,video,iframe{max-width:100%}
@media (max-width:820px){
  .inp,.inp-sm,select.inp,textarea.inp,.fb-q input,input[type=text],input[type=email],input[type=tel],input[type=password],input[type=search],input[type=number]{font-size:16px}
  .tbl-wrap{max-width:100%}
}

/* agent page */
.agent-hero{padding:0;overflow:hidden}
.agent-cover{height:clamp(140px,22vw,280px);background:linear-gradient(120deg,#0F2A3D,#0B6E69)}
.agent-cover img{width:100%;height:100%;object-fit:cover;display:block}
.agent-cover-empty{height:110px}
.agent-hero .agent-head{padding:0 24px 22px}
.agent-logo-over{margin-top:-60px;border:4px solid #fff;box-shadow:0 4px 14px rgba(15,42,61,.15);background:#fff}
.agent-hero .agent-info{padding-top:16px}
.agent-rating{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink)}
.stars{display:inline-flex;gap:1px;vertical-align:middle}
.star{fill:#D9E1E6}.star.on{fill:#F5A524}.star.half{fill:#F5C66B}
.deal-filter{margin-top:-6px}
.fav-agent.on{background:var(--teal-l);border-color:#B9DCD9;color:var(--teal)}
.fav-agent.on .ic{fill:currentColor}
@media (max-width:640px){
  .agent-hero .agent-head{padding:0 14px 16px;gap:10px}
  .agent-logo-over{width:96px;height:96px;margin-top:-48px}
  .agent-links .btn{flex:1 1 auto}
}
/* agent cards */
.agent-card{position:relative;overflow:hidden}
.agent-card-cover{display:block;margin:-18px -18px 0;height:84px;width:calc(100% + 36px)}
.agent-card-cover img{width:100%;height:100%;object-fit:cover;display:block}
.agent-card-cover+.agency-logo{margin-top:-34px;border:3px solid #fff;background:#fff}
.agent-card-rate{display:inline-flex;align-items:center;gap:5px;font-size:14px}
/* reviews */
.reviews{display:flex;flex-direction:column;gap:16px;padding:20px 22px;margin-top:10px}
.rev-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}
.rev-sum{display:flex;align-items:center;gap:8px}.rev-sum b{font-size:28px}
.rev-form{display:flex;flex-direction:column;gap:10px;background:var(--bg);border-radius:14px;padding:14px}
.star-pick{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;gap:2px}
.star-pick input{position:absolute;opacity:0;pointer-events:none}
.star-pick label{cursor:pointer;line-height:0}
.star-pick svg{fill:#D9E1E6;transition:fill .12s}
.star-pick label:hover svg,.star-pick label:hover~label svg,.star-pick input:checked~label svg{fill:#F5A524}
.star-pick input:focus-visible+label svg{outline:2px solid var(--teal);border-radius:4px}
.rev-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.rev-list li{padding:14px 0;border-top:1px solid var(--soft)}
.rev-list p{margin:6px 0 0;color:var(--ink2);line-height:1.6}
.rev-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.rev-del{margin-left:auto}.rev-del .linkish{padding:4px 8px;width:auto;color:var(--err)}
/* profile: cover upload + share */
.cover-drop{position:relative;display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4/1;min-height:110px;border-radius:16px;border:2px dashed var(--line2);background:var(--bg);overflow:hidden;cursor:pointer}
.cover-drop:hover{border-color:var(--teal)}
.cover-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.cover-drop img{width:100%;height:100%;object-fit:cover}
.share-box{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding:12px;border-radius:12px;background:var(--teal-l)}
.share-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.share-row .inp{flex:1 1 240px;background:#fff}
/* my listings filter */
.my-filter{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.my-q{flex:1 1 240px;height:42px}
.my-filter select{width:auto;flex:0 1 auto}
.mf-dd{position:relative}
.mf-dd summary{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer;min-width:170px;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mf-dd summary::-webkit-details-marker{display:none}
.mf-dd summary::after{content:'';margin-left:auto;border:5px solid transparent;border-top-color:var(--muted);transform:translateY(3px)}
.mf-pop{position:absolute;z-index:30;top:calc(100% + 6px);left:0;min-width:200px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px rgba(15,42,61,.14);padding:10px 14px;display:flex;flex-direction:column;gap:10px}
@media (max-width:640px){
  .my-filter{display:grid;grid-template-columns:1fr 1fr}
  .my-q{grid-column:1 / -1}
  .mf-dd summary{max-width:none;min-width:0}
  .my-filter select{width:100%}
}

/* my listings: the deal dropdown keeps one width, so nothing shifts when the choice changes */
.mf-dd summary{width:190px;min-width:190px;max-width:190px}
.mf-lbl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mf-n{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--teal);color:#fff;font-size:12px}
.my-filter select{width:190px}
.mf-pop .check{white-space:nowrap}
@media (max-width:640px){.mf-dd summary{width:100%;min-width:0;max-width:none}.my-filter select{width:100%}}

/* phones: header always fits in one row (login is an icon, the logo text gives way first) */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media (max-width:640px){
  .hdr-in{gap:8px}
  .logo{flex:1 1 auto;min-width:0;overflow:hidden}
  .logo span{overflow:hidden;text-overflow:ellipsis}
  .hdr-r{flex:none;margin-left:0}
  .nav-toggle{flex:none}
  .hdr-r .login-btn{width:38px;min-width:38px;padding:0}
}
@media (max-width:350px){
  .logo span{display:none}
}

/* quick import */
.import-box{background:linear-gradient(135deg,#F2F8F8,#EEF4FB);border-color:#CFE3E1}
.import-sites{display:flex;flex-wrap:wrap;gap:8px}
.import-sites span{padding:6px 12px;border-radius:999px;background:#fff;border:1px solid var(--line2);font-weight:600;font-size:14px}
.import-sites span.muted{font-weight:500}
.import-form{display:flex;flex-direction:column;gap:10px}
.import-form .inp{background:#fff}
.imp-photos .ex-ph{cursor:pointer}
.imp-photos .ex-ph:has(input[type=checkbox]:not(:checked)) img{opacity:.35;filter:grayscale(1)}

/* favourites heart always in the header */
.hdr-r a.fav-link{display:inline-flex !important}
@media (max-width:640px){.hdr-r a.fav-link{width:38px;min-width:38px;padding:0}}
@media (min-width:1181px) and (max-width:1600px){.nav{gap:12px}}
/* listing facts: long values (ახალი გარემონტებული) stay inside their box */
.facts div{min-width:0}
.facts dd{overflow-wrap:anywhere;hyphens:auto}
@media (max-width:640px){.facts dd{font-size:15px;line-height:1.3}}
/* agent list loading in place */
[data-ajax-list]{transition:opacity .15s}
[data-ajax-list].is-loading{opacity:.45;pointer-events:none}

/* cookie consent */
.ck-bar{position:fixed;z-index:1000;left:16px;right:16px;bottom:16px;max-width:760px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;padding:14px 18px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 40px rgba(15,42,61,.18);transition:opacity .25s,transform .25s;padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))}
.ck-bar p{margin:0;flex:1 1 320px;font-size:14px;line-height:1.5;color:var(--ink2)}
.ck-bar a{color:var(--teal);font-weight:600}
.ck-btns{display:flex;gap:8px;flex-wrap:wrap}
.ck-out{opacity:0;transform:translateY(12px)}
@media (max-width:640px){.ck-bar{left:10px;right:10px;bottom:10px}.ck-btns{width:100%}.ck-btns .btn{flex:1}}
@media print{.ck-bar{display:none}}

/* ===== messages ===== */
.msg-link{position:relative}
.badge-dot{position:absolute;top:2px;right:2px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--coral);color:#fff;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;border:2px solid #fff}
.badge-n{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--coral);color:#fff;font-size:12px;font-weight:800;margin-left:auto}
.side-menu a{display:flex;align-items:center;gap:6px}
.hdr-r a.msg-link{display:inline-flex !important}
@media (max-width:640px){.hdr-r a.msg-link{width:38px;min-width:38px;padding:0}}
@media (max-width:380px){.hdr-r a.fav-link{display:none !important}}
.msg-btn{gap:8px}
.conv-list{padding:0;overflow:hidden}
.conv{display:flex;gap:12px;align-items:center;padding:14px 16px;text-decoration:none;color:var(--ink);border-bottom:1px solid var(--soft)}
.conv:last-child{border-bottom:0}
.conv:hover{background:var(--bg)}
.conv-new{background:#F4FAF9}
.conv-new strong{font-weight:800}
.conv-mid{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.conv-top{display:flex;justify-content:space-between;gap:10px}
.conv-lst{color:var(--teal);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.conv-last{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.conv-new .conv-last{color:var(--ink)}
.uav-lg{width:46px;height:46px;font-size:18px}
.uav img{width:100%;height:100%;object-fit:contain;background:#fff}
.msg-mail{margin-top:6px}
.chat-page{gap:12px}
.chat-head{display:flex;align-items:center;gap:10px;padding:10px 12px}
.chat-who{flex:1;min-width:0;display:flex;flex-direction:column}
.chat-who strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-more{position:relative}
.chat-more summary{list-style:none;cursor:pointer;font-size:20px}
.chat-more summary::-webkit-details-marker{display:none}
.chat-more .mf-pop{left:auto;right:0;min-width:230px;padding:6px}
.chat-more .linkish{padding:10px 12px;font-size:14px}
.chat-listing{display:flex;gap:12px;align-items:center;padding:10px;text-decoration:none;color:var(--ink)}
.chat-listing img{width:72px;height:54px;object-fit:cover;border-radius:8px;flex:none}
.chat-listing span{display:flex;flex-direction:column;min-width:0}
.chat-listing b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-box{display:flex;flex-direction:column;padding:0;overflow:hidden}
.chat-msgs{height:min(60vh,560px);overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:6px;background:var(--bg);overscroll-behavior:contain}
.chat-day{text-align:center;margin:8px 0}
.chat-day span{font-size:12px;color:var(--muted);background:#fff;padding:3px 10px;border-radius:999px;border:1px solid var(--line)}
.msg{display:flex;flex-direction:column;align-items:flex-start;max-width:78%}
.msg.mine{align-self:flex-end;align-items:flex-end}
.bubble{background:#fff;border:1px solid var(--line);padding:9px 13px;border-radius:16px 16px 16px 4px;line-height:1.5;font-size:15px;overflow-wrap:anywhere;white-space:normal}
.msg.mine .bubble{background:var(--teal);border-color:var(--teal);color:#fff;border-radius:16px 16px 4px 16px}
.msg.mine .bubble a{color:#fff}
.msg-t{font-size:11px;color:var(--muted);margin:2px 6px 0}
.seen{color:#B9C4CC;letter-spacing:-3px}.seen.on{color:var(--teal)}
.chat-form{display:flex;gap:8px;align-items:flex-end;padding:10px;border-top:1px solid var(--line);background:#fff}
.chat-form .ta{min-height:46px;height:46px;max-height:160px;resize:none;padding:11px 12px}
.chat-form .btn{height:46px;width:52px;padding:0;flex:none}
.chat-off{padding:14px 16px;margin:0;border-top:1px solid var(--line)}
@media (max-width:640px){
  .chat-msgs{height:calc(100vh - 330px);min-height:280px;padding:12px}
  .msg{max-width:88%}
}

[data-part]{transition:opacity .15s}
[data-part].is-loading{opacity:.45}

/* header: menu items never shrink or get clipped */
.nav a{flex:none}
.hdr.tight .hdr-in{gap:10px 12px}
.hdr.tight .nav{gap:12px;font-size:14px}
.hdr.tight .nav a.nav-hl{padding:6px 10px}
.hdr.tight .logo{font-size:18px}
.hdr.tight .logo svg{width:34px;height:34px}
.hdr.tight .uname{display:none}
/* not enough room even when tight: ☰ menu, like on tablets */
.hdr.burger .hdr-in{flex-wrap:wrap;gap:10px}
.hdr.burger .logo{order:1}
.hdr.burger .hdr-r{order:2;margin-left:auto}
.hdr.burger .nav-toggle{display:inline-flex;order:3;margin-left:0}
.hdr.burger .nav{display:none;order:5;flex-basis:100%;flex-direction:column;gap:0;border-top:1px solid var(--line);padding-top:6px;overflow:visible;white-space:normal}
.hdr.burger.open .nav{display:flex;padding-bottom:8px}
.hdr.burger .nav a{padding:11px 0;border-bottom:1px solid var(--soft)}
.hdr.burger .nav a.nav-hl{align-self:flex-start;margin:6px 0;border-bottom:0;padding:7px 12px}
.hdr.burger .nav-extra{display:flex;flex-wrap:wrap;gap:10px;padding:10px 0 6px}
.hdr.burger .nav-extra .seg a{border-bottom:0;padding:0 14px}
.hdr.burger .locale{display:none}

/* listing: private note, complex link */
.note-box{display:flex;flex-direction:column;gap:6px;padding:14px 16px}
.note-lbl{display:flex;align-items:center;gap:6px;font-weight:700;font-size:14px}
.note-lbl small{font-weight:500}
.note-box .ta{min-height:64px;background:#FFFDF2;border-color:#EFE3B0}
.l-cx{margin:4px 0 0}
.l-cx a{display:inline-flex;align-items:center;gap:6px;color:var(--teal);text-decoration:none;font-size:14px}
.l-cx a:hover b{text-decoration:underline}
/* welcome (finish registration) */
.welcome-box{max-width:620px;gap:14px}
.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.steps li{display:flex;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;opacity:.6}
.steps li.now{opacity:1;border-color:#B9DCD9;background:#F4FAF9}
.steps li.done{opacity:1}
.steps li span:last-child{display:flex;flex-direction:column}
.step-n{width:32px;height:32px;border-radius:50%;flex:none;display:inline-flex;align-items:center;justify-content:center;font-weight:800;background:var(--soft);color:var(--ink)}
.steps li.now .step-n{background:var(--teal);color:#fff}
.steps li.done .step-n{background:#1F9D63;color:#fff}
.step-h{font-size:17px;margin-top:6px}
.welcome .choice-cards{grid-template-columns:1fr}
/* complexes */
.cx-filter{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.cx-filter .fb-q{flex:1 1 240px}
.cx-filter select{width:auto}
.cx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}
.cx-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--ink);transition:box-shadow .15s,transform .15s}
.cx-card:hover{box-shadow:0 10px 30px rgba(15,42,61,.12);transform:translateY(-2px)}
.cx-ph{position:relative;display:block;aspect-ratio:4/3;background:linear-gradient(135deg,#0F2A3D,#0B6E69)}
.cx-ph img{width:100%;height:100%;object-fit:cover;display:block}
.cx-ph .badge{position:absolute;left:12px;top:12px}
.cx-ph-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:56px;font-weight:800;color:rgba(255,255,255,.5)}
.b-ok{background:#E3F4EC;color:#11663F}
.cx-body{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px}
.cx-body strong{font-size:17px}
.cx-price b{font-size:16px}
.cx-foot{display:flex;justify-content:space-between;gap:8px;margin-top:2px}
.cx-n{color:var(--teal);font-weight:700}
.nav a.on{color:var(--teal)}

/* header level 2: icon-only "add" and language buttons */
.hdr.tight2 .hdr-r .btn-primary .hide-sm{display:none}
.hdr.tight2 .hdr-r .btn-primary{width:44px;min-width:44px;padding:0}
.hdr.tight2 .locale .dd-btn span{display:none}
.hdr.tight2 .locale .dd-btn{width:44px;padding:0;justify-content:center}
.hdr.tight2 .hdr-r{gap:6px}
/* "მეტი ▾" for menu items that don't fit */
.nav-more{position:relative;flex:none}
.nav-more[hidden]{display:none}
.nav-more-btn{display:inline-flex;align-items:center;gap:4px;padding:8px 0;border:0;background:none;font:inherit;font-weight:600;color:var(--ink);cursor:pointer}
.nav-more-btn:hover{color:var(--teal)}
.nav-more-pop{position:absolute;top:calc(100% + 8px);left:-12px;z-index:40;min-width:200px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px rgba(15,42,61,.14);padding:6px;display:flex;flex-direction:column}
.nav-more-pop[hidden]{display:none}
.nav-more-pop a{padding:10px 12px !important;border-radius:8px}
.nav-more-pop a:hover{background:var(--soft)}
.nav-more-pop a.nav-hl{margin:0;align-self:stretch}
.nav{overflow:visible}
@media (max-width:1180px){.nav-more{display:none !important}}

/* the page never jumps sideways when content gets shorter/taller (scrollbar space stays reserved) */
html{scrollbar-gutter:stable}
/* broker page: why publish */
.pcard-accent{background:linear-gradient(180deg,#F1F9F8 0,#fff 220px);border-color:#9FD1CC;box-shadow:0 6px 24px rgba(11,110,105,.08)}
.broker-why{background:#0F2A3D;color:#E6EEF2;border-radius:14px;padding:16px 18px}
.broker-why p{margin:0}
.broker-why b{color:#fff}
.broker-why ul{margin:10px 0;padding:0;list-style:none;display:grid;gap:6px}
.broker-why li{padding-left:24px;position:relative;font-size:14px}
.broker-why li::before{content:'✓';position:absolute;left:0;color:#5FD3C4;font-weight:800}
.broker-why .small{color:#C9D6DF}
/* company / team */
.co-card .row-inline{flex-wrap:wrap}
.co-add .inp{flex:1 1 260px}
.co-invite{background:var(--vip-bg);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}
.co-invite p{margin:0}
.co-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.co-list li{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 0;border-top:1px solid var(--soft)}
.co-list form{margin-left:auto}
.co-list .linkish{color:var(--err);width:auto;padding:4px 8px}
.co-badge{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--teal);font-weight:700;font-size:14px}
.agency-logo-xs{width:28px;height:28px;font-size:12px;border-radius:8px}
.co-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.co-member{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;text-decoration:none;color:var(--ink)}
a.co-member:hover{border-color:var(--teal)}
.co-member span:last-child{display:flex;flex-direction:column;min-width:0}
.co-member .agency-logo{width:48px;height:48px;font-size:18px}

.co-jump{display:inline-flex;align-items:center;gap:6px;margin-left:10px;padding:4px 10px;border-radius:999px;background:var(--teal-l);color:var(--teal);font-size:13px;font-weight:700;text-decoration:none;vertical-align:middle}
.co-jump:hover{background:var(--teal);color:#fff}
.co-card{border:2px solid #9FD1CC;scroll-margin-top:90px}
.co-card:target{box-shadow:0 0 0 4px rgba(11,110,105,.18)}

/* my listings: select several */
.bulk-bar{position:sticky;top:8px;z-index:15;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 14px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 4px 14px rgba(15,42,61,.06);min-height:52px}
.bulk-all{font-weight:700}
.bulk-n{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 8px;border-radius:999px;background:var(--teal);color:#fff;font-weight:800;font-size:13px}
.bulk-acts{display:flex;flex-wrap:wrap;gap:6px;margin-left:auto}
.bulk-acts[hidden],.bulk-n[hidden]{display:none}
.my-item{position:relative}
.my-chk{position:absolute;left:8px;top:8px;z-index:3;width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.95);border-radius:8px;box-shadow:0 1px 4px rgba(15,42,61,.2);cursor:pointer}
.my-chk input{width:18px;height:18px;accent-color:var(--teal);cursor:pointer}
.my-item.picked{border-color:var(--teal);box-shadow:0 0 0 2px rgba(11,110,105,.25)}
.my-item .my-ph .badge{left:auto;right:8px}

/* ---------- v24: info tooltip ---------- */
.choice-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.tip-h{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.tip{display:inline-flex;cursor:help;outline:none}
.tip-i{width:22px;height:22px;border-radius:50%;background:var(--teal-l);color:var(--teal);border:1.5px solid #B9DCD9;display:inline-flex;align-items:center;justify-content:center;font:italic 800 13px/1 Georgia,serif;transition:background .15s,color .15s}
.tip:hover .tip-i,.tip:focus .tip-i,.tip.open .tip-i{background:var(--teal);color:#fff;border-color:var(--teal)}
.tip-pop{display:none;position:absolute;left:0;top:calc(100% + 10px);z-index:30;width:min(440px,100%);background:#fff;color:var(--ink2);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 40px -12px rgba(15,42,61,.28);padding:16px 18px;font-size:14px;font-weight:500;line-height:1.55;cursor:auto}
.tip-pop::before{content:"";position:absolute;top:-7px;left:var(--tip-x,40%);width:12px;height:12px;background:#fff;border-left:1px solid var(--line);border-top:1px solid var(--line);transform:rotate(45deg)}
.tip-pop b{display:block;font-size:15px;color:var(--ink);margin-bottom:4px}
.tip-ul{display:flex;flex-direction:column;gap:5px;margin-top:10px}
.tip-ul>span{position:relative;padding-left:22px}
.tip-ul>span::before{content:"✓";position:absolute;left:0;top:0;color:var(--teal);font-weight:800}
.tip:hover .tip-pop,.tip:focus .tip-pop,.tip:focus-within .tip-pop,.tip.open .tip-pop{display:block}
@media (hover:none){.tip:hover .tip-pop{display:none}.tip.open .tip-pop{display:block}}

/* ---------- developers index ---------- */
.dv-hero{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(120deg,#0F2A3D 0%,#0B6E69 100%);color:#fff;border-radius:var(--r-lg);padding:28px 30px;margin:6px 0 8px}
.dv-hero h1{color:#fff}
.dv-hero p{margin:6px 0 0;opacity:.85;max-width:640px}
.dv-logos{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.dv-logo{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 12px;text-decoration:none;color:var(--ink);transition:box-shadow .15s,transform .15s}
.dv-logo:hover{box-shadow:0 10px 26px -14px rgba(15,42,61,.35);transform:translateY(-2px);color:var(--ink)}
.dv-logo-img{width:100%;height:76px;display:flex;align-items:center;justify-content:center}
.dv-logo-img img{max-width:140px;max-height:76px;object-fit:contain}
.dv-logo-img b{width:64px;height:64px;border-radius:14px;background:var(--teal-l);color:var(--teal);display:flex;align-items:center;justify-content:center;font-size:26px}
.dv-logo strong{font-size:14px;line-height:1.3}
.cx-ph{position:relative}
.cx-dev-logo{position:absolute;right:10px;bottom:10px;width:54px;height:54px;border-radius:12px;background:#fff;padding:4px;box-shadow:0 4px 14px rgba(0,0,0,.18)}
.cx-dev-logo img{width:100%;height:100%;object-fit:contain}
.b-draft{position:absolute;right:10px;top:10px;background:var(--soft);color:var(--ink2)}
.cx-prog{display:block;height:6px;border-radius:99px;background:var(--soft);overflow:hidden;margin:4px 0 2px}
.cx-prog span{display:block;height:100%;background:linear-gradient(90deg,#0B6E69,#2BA59C);border-radius:99px}

/* ---------- developer page ---------- */
.dv-stats{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 4px}
.dv-stats div{background:var(--bg);border-radius:12px;padding:10px 16px;display:flex;flex-direction:column;min-width:110px}
.dv-stats b{font-size:22px;font-weight:800;line-height:1.1}
.dv-stats span{font-size:13px;color:var(--muted)}
.dv-about{margin-top:16px}

/* ---------- my projects ---------- */
.dv-paywall{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;margin:14px 0;background:linear-gradient(120deg,#FFF8EC,#E6F2F1)}
.dv-paywall p{margin:4px 0 0;max-width:560px}
.dv-mylist{display:flex;flex-direction:column;gap:12px;margin-top:16px}
.dv-myrow{display:grid;grid-template-columns:150px 1fr auto;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px}
.dv-myph{display:block;height:100px;border-radius:12px;overflow:hidden;background:var(--soft);color:var(--muted)}
.dv-myph img{width:100%;height:100%;object-fit:cover}
.dv-myph span{display:flex;height:100%;align-items:center;justify-content:center}
.dv-myinfo h2{font-size:17px}
.dv-myinfo h2 a{color:var(--ink);text-decoration:none}
.dv-myinfo p{margin:4px 0 0}
.dv-mymeta{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}
.dv-myact{display:flex;flex-direction:column;gap:6px}
@media (max-width:760px){.dv-myrow{grid-template-columns:96px 1fr}.dv-myph{height:80px}.dv-myact{grid-column:1/-1;flex-direction:row;flex-wrap:wrap}}
.dv-empty{align-items:center;text-align:center;padding:40px 22px;margin-top:16px}
.dv-empty-ico{width:76px;height:76px;border-radius:20px;background:var(--teal-l);color:var(--teal);display:flex;align-items:center;justify-content:center}
.dv-empty p{max-width:520px;margin:0}

/* ---------- project editor ---------- */
.pe-tabs{display:flex;gap:6px;overflow-x:auto;margin:16px 0;padding-bottom:2px;scrollbar-width:thin}
.pe-tabs button{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:9px 16px;font-weight:700;cursor:pointer;color:var(--ink2)}
.pe-tabs button span{width:22px;height:22px;border-radius:50%;background:var(--soft);display:inline-flex;align-items:center;justify-content:center;font-size:12px}
.pe-tabs button.on{border-color:var(--teal);background:var(--teal);color:#fff}
.pe-tabs button.on span{background:rgba(255,255,255,.22)}
.pe-tabs button:disabled{opacity:.45;cursor:not-allowed}
.pe-pane{display:flex;flex-direction:column;gap:16px}
.pe-pane[hidden]{display:none}
.fgrid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media (max-width:760px){.fgrid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
.fld-l{display:block;font-size:13px;font-weight:700;color:var(--ink2);margin-bottom:6px}
.pe-progress input[type=range]{width:100%;accent-color:var(--teal)}
.pe-feats{display:flex;flex-wrap:wrap;gap:8px}
.chip-check{position:relative;cursor:pointer}
.chip-check input{position:absolute;opacity:0}
.chip-check span{display:inline-block;border:1.5px solid var(--line);border-radius:999px;padding:7px 14px;font-size:14px;font-weight:600;background:#fff;transition:all .15s}
.chip-check input:checked+span{border-color:var(--teal);background:var(--teal-l);color:var(--teal-d)}
.chip-check input:focus-visible+span{outline:3px solid #5BB3AE}
.pe-cover{min-height:200px}
.pe-upl{align-self:flex-start;cursor:pointer}
.pe-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}
.pe-thumbs:empty{display:none}
.pe-thumb{position:relative;display:block;border-radius:10px;overflow:hidden;background:var(--soft);aspect-ratio:4/3}
.pe-thumb img{width:100%;height:100%;object-fit:cover}
.pe-del{position:absolute;left:6px;bottom:6px;background:rgba(255,255,255,.92);border-radius:8px;padding:3px 8px;font-size:12px;font-weight:700;display:flex;align-items:center;gap:4px;cursor:pointer}
.pe-new{outline:2px solid var(--teal)}
.pe-save{position:sticky;bottom:0;z-index:5;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:16px;padding:12px 16px;margin-top:16px;box-shadow:0 -8px 24px -16px rgba(15,42,61,.3)}
.pe-delete{margin-top:24px;text-align:right}
.bgen{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.bgen .fld{min-width:96px;flex:1 1 96px;margin:0}
.bgen .fld input,.bgen .fld select{width:100%}
.bedit .fld:first-child{flex:1 1 100%}
.bedit-btns{display:flex;gap:8px;flex:1 1 100%}

/* ---------- building grid ---------- */
.bld-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:center}
.bld-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:13px;font-weight:600}
.bld-legend span{display:inline-flex;align-items:center;gap:6px}
.bld-legend span::before{content:"";width:14px;height:14px;border-radius:4px;border:1.5px solid}
.bld-legend .u-available::before{background:#E3F4EC;border-color:#47A877}
.bld-legend .u-reserved::before{background:#FFF1CC;border-color:#E0A526}
.bld-legend .u-sold::before{background:#EEF0F2;border-color:#B8C1C9}
.bld{display:flex;gap:18px;overflow-x:auto;padding:4px 2px 10px;align-items:flex-end}
.bld-card.busy .bld{opacity:.5;pointer-events:none}
.bld-block{flex:none;background:linear-gradient(180deg,#F4F7F9,#fff);border:1px solid var(--line);border-radius:14px;padding:10px 10px 12px}
.bld-bh{display:flex;align-items:center;gap:10px;margin:0 0 8px 2px}
.bld-floors{display:flex;flex-direction:column;gap:4px}
.bld-row{display:flex;gap:6px;align-items:stretch}
.bld-fl{width:34px;flex:none;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:var(--muted);background:transparent;border:0;border-right:2px solid var(--line2);padding:0}
button.bld-fl{cursor:pointer}button.bld-fl:hover{color:var(--teal)}
.bld-cells{display:flex;gap:4px}
.u{position:relative;width:66px;min-height:46px;border-radius:8px;border:1.5px solid;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3px 2px;cursor:pointer;font:inherit;line-height:1.15;transition:transform .1s,box-shadow .1s}
.u b{font-size:12px;font-weight:800}
.u small{font-size:10px;color:var(--ink2);white-space:nowrap}
.u i{font-style:normal;font-size:10px;font-weight:800;color:var(--teal-d)}
.u:hover{transform:translateY(-1px);box-shadow:0 4px 12px -4px rgba(15,42,61,.35);z-index:1}
.u-available{background:#E3F4EC;border-color:#8FCDAE}
.u-reserved{background:#FFF1CC;border-color:#EBC15F}
.u-sold{background:#EEF0F2;border-color:#D3DCE2;color:#8796A3}
.u-sold small{color:#97A4AF;text-decoration:line-through}
.u-sel{box-shadow:0 0 0 3px var(--teal);border-color:var(--teal)}
.u-dim{opacity:.25}
.u-add{border-style:dashed;border-color:var(--line2);background:#fff;color:var(--muted);font-size:20px;width:40px}
.u-pl{position:absolute;top:3px;right:3px;width:6px;height:6px;border-radius:50%;background:var(--teal)}
.bld-pub .u{width:74px;min-height:52px}
.bld-panel{position:sticky;bottom:10px;z-index:6;box-shadow:0 -10px 30px -18px rgba(15,42,61,.45);border-color:var(--teal)}

/* ---------- public project page ---------- */
.pj-title{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;align-items:flex-start}
.pj-title h1{margin:8px 0 4px}
.pj-dev,.pj-devcard{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:8px 14px 8px 8px;background:#fff}
.pj-dev span:last-child,.pj-devcard span:last-child{display:flex;flex-direction:column;line-height:1.25}
.pj-dev:hover,.pj-devcard:hover{border-color:var(--teal);color:var(--ink)}
.pj-devcard{margin:4px 0}
.pj-prog{margin-top:16px}
.pj-prog-top{display:flex;justify-content:space-between;font-size:14px;font-weight:700;margin-bottom:6px}
.pj-bar{height:10px;border-radius:99px;background:var(--soft);overflow:hidden}
.pj-bar span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#0B6E69,#2BA59C)}
.pj-jump{display:flex;gap:6px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.pj-jump a{font-size:13px;font-weight:700;text-decoration:none;background:var(--soft);color:var(--ink2);padding:6px 12px;border-radius:999px}
.pj-jump a:hover{background:var(--teal-l);color:var(--teal-d)}
.pj .l-main>section{scroll-margin-top:90px}
.pj-types{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin-top:14px}
.pj-type{display:flex;flex-direction:column;text-align:left;border:1px solid var(--line);border-radius:16px;background:#fff;padding:0;overflow:hidden;cursor:pointer;font:inherit;color:inherit;transition:box-shadow .15s,border-color .15s}
.pj-type:hover{border-color:var(--teal);box-shadow:0 10px 24px -16px rgba(15,42,61,.45)}
.pj-plan{height:150px;background:#F7F9FA;display:flex;align-items:center;justify-content:center;color:var(--line2);border-bottom:1px solid var(--line)}
.pj-plan img{max-width:100%;max-height:100%;object-fit:contain;padding:8px}
.pj-type-b{display:flex;flex-direction:column;gap:2px;padding:12px 14px 14px}
.pj-type-b strong{font-size:16px}
.pj-type-p{font-size:17px;color:var(--ink);margin-top:4px}
.pj-rf{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}
.pj-rf button{border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:6px 14px;font-weight:700;font-size:13px;cursor:pointer}
.pj-rf button.on{background:var(--ink);border-color:var(--ink);color:#fff}
.pj-feats{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px 16px}
.pj-feats li{display:flex;align-items:center;gap:8px;font-weight:600}
.pj-feats .ic{color:var(--teal)}
.pj-terms{background:linear-gradient(120deg,#fff,#F3FAF9)}
.pj-videos{display:grid;gap:12px;margin-top:12px}
.pj-video{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#000}
.pj-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.upd-line{list-style:none;margin:12px 0 0;padding:0 0 0 18px;border-left:2px solid var(--teal-l);display:flex;flex-direction:column;gap:18px}
.upd-line li{position:relative}
.upd-line li::before{content:"";position:absolute;left:-25px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px #fff}
.upd-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.upd-line p{margin:4px 0 8px}
.u-modal{position:fixed;inset:0;z-index:120;background:rgba(15,42,61,.55);display:flex;align-items:center;justify-content:center;padding:16px}
.u-modal-in{position:relative;background:#fff;border-radius:18px;width:min(520px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:22px}
.u-modal h3{font-size:20px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding-right:40px}
.u-close{position:absolute;top:10px;right:10px;color:var(--ink);background:var(--soft)}
.u-plan{display:block;margin:14px 0 0;background:#F7F9FA;border-radius:12px;padding:8px}
.u-plan img{max-height:320px;margin:0 auto;object-fit:contain}
.u-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.u-st-available{background:#E3F4EC;color:#1E7A4F}.u-st-reserved{background:var(--vip-bg);color:var(--vip-ink)}.u-st-sold{background:var(--soft);color:var(--muted)}
body.noscroll{overflow:hidden}
@media (max-width:640px){.dv-hero{padding:22px 18px}.u{width:58px}.bld-pub .u{width:62px}.pj-plan{height:120px}}
.bld-selbar{font-size:14px}
.bld-selbar .linkish{display:inline;width:auto;padding:0;font-size:14px}
.bld-panel{position:sticky;bottom:10px;max-height:70vh;overflow:auto}
.upd-head .linkish,.pe-delete .linkish,.bld-bh .linkish{width:auto;padding:4px 8px}

/* ---------- v25 ---------- */
.pe-tabs{flex-wrap:wrap;overflow:visible;padding-bottom:0}
.pe-tabs button{flex:1 1 auto;justify-content:center;padding:9px 12px}
@media (max-width:640px){.pe-tabs button{flex:1 1 calc(50% - 6px)}}
.choice-locked{cursor:not-allowed}
.choice-locked .choice-in{background:var(--soft);opacity:.55;filter:grayscale(1);border-style:dashed}
.lock-note{display:flex;align-items:center;gap:6px;margin:-4px 0 4px}
.dev-legal{display:flex;flex-direction:column;gap:10px;background:var(--bg);border-radius:14px;padding:14px 16px}
.dev-legal h3{margin:0}
.dev-legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (max-width:640px){.dev-legal-grid{grid-template-columns:1fr}}
.st-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
.st-cards .choice-ico{font-size:22px}
@media (max-width:760px){.st-cards{grid-template-columns:1fr}}
.cx-frame{display:inline-flex;align-items:center;gap:6px;color:var(--ink2);font-weight:600}
.fr-dot{width:12px;height:12px;border-radius:3px;border:1px solid rgba(0,0,0,.2)}
.fr-black{background:#2B2F33}.fr-white{background:#fff}.fr-green{background:#4CAF7A}.fr-renovated{background:linear-gradient(135deg,#E8C27A,#0B6E69)}
.cx-left{color:var(--teal-d)}
.pj-count{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;background:var(--teal-l);border-radius:14px;padding:12px 16px;font-weight:700}
.pj-count div{display:flex;gap:8px}
.pj-count div span{background:#fff;border-radius:10px;min-width:62px;padding:6px 10px;text-align:center;display:flex;flex-direction:column;line-height:1.1}
.pj-count b{font-size:22px;color:var(--teal-d)}
.pj-count small{font-size:12px;color:var(--muted);font-weight:600}
.cx-wrap{display:flex}.cx-wrap>.cx-card{flex:1}
.dv-about-2{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
@media (max-width:900px){.dv-about-2{grid-template-columns:1fr}}
.dv-legal-line{display:flex;align-items:center;gap:6px;color:var(--teal-d);font-weight:600;margin:4px 0 0}

/* ---------- v26 ---------- */
.cab-main.form-page{padding:0;max-width:none;display:block}
.cab-main.form-page>*+*{margin-top:14px}
/* building visual */
.fc-steps{margin:0;padding-left:20px;color:var(--ink2);display:flex;flex-direction:column;gap:2px}
.fc-list{display:flex;flex-direction:column;gap:16px}
.fc-item{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:18px;border:1px solid var(--line);border-radius:16px;padding:14px;background:var(--bg)}
@media (max-width:900px){.fc-item{grid-template-columns:1fr}}
.fc-form{display:flex;flex-direction:column;gap:10px}
.fc-form p{margin:0}
.fc-thumbs{display:flex;flex-wrap:wrap;gap:6px;max-height:150px;overflow:auto}
.fc-thumb{width:64px;height:48px;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;cursor:pointer;background:#fff}
.fc-thumb img{width:100%;height:100%;object-fit:cover}
.fc-thumb.on{border-color:var(--teal)}
.fc-upl{align-self:flex-start;cursor:pointer}
.fc-btns{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.fc-stage{position:relative;border-radius:12px;overflow:hidden;background:#0F2A3D;user-select:none;touch-action:none;align-self:start}
.fc-stage img{width:100%;display:block}
.fc-stage svg{position:absolute;inset:0;width:100%;height:100%}
.fc-nophoto{min-height:260px;display:flex;align-items:center;justify-content:center;color:#cfe;padding:20px;text-align:center}
.fc-band{fill:rgba(11,110,105,.18);stroke:rgba(255,255,255,.75);stroke-width:.25;vector-effect:non-scaling-stroke}
.fc-band.odd{fill:rgba(11,110,105,.32)}
.fc-outline{fill:none;stroke:#FFD54A;stroke-width:2;vector-effect:non-scaling-stroke}
.fc-lbl{font-size:2.6px;fill:#fff;font-weight:800;paint-order:stroke;stroke:#0F2A3D;stroke-width:.5px}
.fc-h{position:absolute;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:#FFD54A;border:3px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.4);cursor:grab;touch-action:none}
.fc-h:active{cursor:grabbing}
.bld-details>summary{cursor:pointer;list-style:none;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.bld-details>summary::before{content:"▸";color:var(--teal);font-weight:800}
.bld-details[open]>summary::before{content:"▾"}
.fc-view{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;margin-top:12px}
@media (max-width:900px){.fc-view{grid-template-columns:1fr}}
.fc-pub .fc-stage{background:#E9EEF1}
.fc-fl{fill:transparent;stroke:transparent;cursor:pointer;transition:fill .12s}
.fc-fl.has{fill:rgba(43,165,156,.38);stroke:rgba(255,255,255,.9);stroke-width:.6;vector-effect:non-scaling-stroke}
.fc-fl:hover{fill:rgba(255,213,74,.55);stroke:#fff}
.fc-fl.sel{fill:rgba(226,85,43,.55);stroke:#fff}
.fc-tip{position:absolute;z-index:3;pointer-events:none;background:#fff;border-radius:10px;padding:8px 12px;box-shadow:0 10px 24px -8px rgba(15,42,61,.45);display:flex;flex-direction:column;font-size:13px;min-width:150px}
.fc-side{border:1px solid var(--line);border-radius:14px;padding:14px;max-height:620px;overflow:auto;background:#fff}
.fc-side h3{font-size:18px;margin-bottom:6px}
.fc-sub{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:12px 0 6px}
.fc-units{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.fc-units li{display:flex;gap:10px;align-items:center;background:#E3F4EC;border-radius:10px;padding:8px 10px;font-size:14px}
.fc-units i{margin-left:auto;font-style:normal;font-weight:800;color:var(--teal-d)}
.fc-ls{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:6px;margin-bottom:8px}
.fc-ls:hover{border-color:var(--teal);color:var(--ink)}
.fc-ls img,.fc-ls-ph{width:76px;height:58px;border-radius:8px;object-fit:cover;flex:none;background:var(--soft)}
.fc-ls>span{display:flex;flex-direction:column;min-width:0}
.fc-ls small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fc-n{display:inline-block;min-width:20px;padding:0 6px;border-radius:99px;background:var(--teal-l);color:var(--teal-d);font-size:12px}
.pj-rf button.on .fc-n{background:rgba(255,255,255,.2);color:#fff}
.b-acc{display:inline-flex;align-items:center;gap:4px;background:#1E5BB8;color:#fff}
.cx-ph .b-acc{position:absolute;left:10px;bottom:10px}
.pj-title .b-acc{margin-left:6px}
.acc-check{display:flex;flex-wrap:wrap;align-items:center;gap:6px;background:#EEF4FD;border:1px solid #CFE0F7;border-radius:12px;padding:10px 12px;margin-top:8px}
.acc-check .acc-ic{color:#1E5BB8}
.dv-stats a.dv-stat-site{background:var(--teal);color:#fff;text-decoration:none;border-radius:12px;padding:10px 16px;display:flex;flex-direction:column;min-width:110px}
.dv-stats a.dv-stat-site span{color:rgba(255,255,255,.85)}
.cx-site{color:var(--teal-d);font-weight:700}
.ag-intro{background:linear-gradient(120deg,#0F2A3D,#0B6E69);color:#fff;border-radius:var(--r-lg);padding:26px 28px;margin:6px 0 18px;display:grid;grid-template-columns:1.1fr 1.4fr;gap:24px}
.ag-intro h1{color:#fff}
.ag-intro p{margin:8px 0 0;opacity:.9}
.ag-intro-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ag-intro-cols>div{background:rgba(255,255,255,.1);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.ag-intro-cols b{display:flex;align-items:center;gap:8px}
.ag-intro-cols p{font-size:14px;margin:0 0 6px}
@media (max-width:900px){.ag-intro{grid-template-columns:1fr;padding:20px 18px}.ag-intro-cols{grid-template-columns:1fr}}
.news-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start;margin-top:12px}
@media (max-width:1000px){.news-grid{grid-template-columns:1fr}}
.news-list{display:flex;flex-direction:column;gap:10px}
.news-item{padding:16px 18px;display:flex;flex-direction:column;gap:6px}
.news-item h3{font-size:17px}
.news-item h3 a{color:var(--ink);text-decoration:none}
.news-item h3 a:hover{color:var(--teal)}
.news-item p{margin:0}
.news-q{background:var(--soft);border-radius:6px;padding:1px 6px}
.news-set{position:sticky;top:90px}
.fc-card>[data-fc-add]{align-self:flex-start}
/* platforms (listing on other sites) */
.my-plat{flex:0 1 300px;min-width:240px}
.plat{display:flex;flex-direction:column;gap:6px}
.plat-chips{display:flex;flex-wrap:wrap;gap:5px}
.pchip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:800;letter-spacing:.03em;padding:4px 8px;border-radius:7px;border:1px solid var(--line2);background:#fff;color:#9AA8B3;text-decoration:none;cursor:pointer;line-height:1.2}
.pchip.has{color:var(--ink2);background:var(--soft);border-color:var(--line2)}
.pchip.s-active{background:#E3F4EC;border-color:#8FCDAE;color:#1E7A4F}
.pchip.s-gone{background:var(--err-bg);border-color:#F4B3AE;color:var(--err)}
.pchip.s-unknown{background:var(--vip-bg);border-color:#EBC15F;color:var(--vip-ink)}
.plat-acts{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.plat-acts .linkish{width:auto;padding:0;font-size:12px;color:var(--teal);text-decoration:underline}
.plat-acts .small{font-size:11px}
.plat-form{display:grid;grid-template-columns:auto 1fr;gap:6px 8px;align-items:center;background:var(--bg);border-radius:10px;padding:10px}
.plat-form b{font-size:11px;color:var(--ink2)}
.plat-form input{height:32px;font-size:13px}
.plat-form .row-inline{grid-column:1/-1}
.plat-top{display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:#fff;border:1px dashed var(--line2);border-radius:12px;padding:10px 14px;margin:6px 0 10px}
.tbl-plat{min-width:230px}
.perm-form{display:flex;flex-direction:column;gap:6px;background:var(--bg);border-radius:12px;padding:12px}
.pchip.s-linked{background:#EAF1FD;border-color:#A9C4F0;color:#1E5BB8}
.pchip.s-bad{background:var(--err-bg);border-color:#F4B3AE;color:var(--err)}
.pchip-add{color:var(--teal);border-style:dashed;font-size:13px;padding:2px 9px}
.plat-more .linkish{width:auto;padding:0;font-size:12px;color:var(--teal);text-decoration:underline}
/* deal filter: room to breathe between heading, tabs and cards */
.deal-filter{margin:14px 0 22px;gap:10px}
.deal-filter a{height:40px;padding:0 16px;border-radius:999px}
.deal-filter a b{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:99px;background:var(--soft);font-size:12px;margin-left:2px}
.deal-filter a.on b{background:rgba(255,255,255,.2)}
.agent-page .sec-head + [data-ajax-list]{margin-top:4px}
.agent-page .sec-head{margin-top:28px}
/* listing form: delete photos right away */
.ex-photos .ex-ph{position:relative;gap:6px}
.ex-del{position:absolute;top:6px;right:6px;width:30px;height:30px;border-radius:50%;border:0;background:rgba(15,42,61,.75);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,transform .15s}
.ex-del:hover{background:var(--err);transform:scale(1.08)}
.ex-del-btn{align-self:flex-start}
.ex-ph.removing{opacity:.35;pointer-events:none;transition:opacity .2s}
.ex-bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px}
.ex-bar .btn b{margin-left:4px}
.ex-pick{position:absolute;top:6px;left:6px;width:30px;height:30px;border-radius:8px;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.25)}
.ex-pick input{width:18px;height:18px;accent-color:var(--err);cursor:pointer;margin:0}
.ex-ph.picked img{outline:3px solid var(--err);outline-offset:-3px;opacity:.75}
/* search map: grouped pins, complexes */
.pin-many{cursor:pointer;display:inline-flex;align-items:center;gap:5px}
.pin-many b{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:99px;background:var(--teal);color:#fff;font-size:11px;padding:0 4px}
.pin-plus.pin-many b{background:#fff;color:var(--coral-d)}
.pin-cx{display:inline-flex;align-items:center;gap:4px;transform:translate(-50%,-50%);background:var(--ink);color:#fff;border-radius:8px;padding:3px 7px;font:700 11px var(--font);text-decoration:none;white-space:nowrap;opacity:.88;box-shadow:0 2px 6px rgba(15,42,61,.35)}
.pin-cx:hover{opacity:1;color:#fff}
.pin-cx span{max-width:140px;overflow:hidden;text-overflow:ellipsis}
.pin-pop{display:flex;flex-direction:column;gap:4px;min-width:190px}
.pin-pop>b{font-size:13px;margin-bottom:2px}
.pin-pop a{display:flex;gap:8px;align-items:baseline;text-decoration:none;color:var(--ink);padding:4px 6px;border-radius:6px}
.pin-pop a:hover{background:var(--soft)}
.pin-pop a span{color:var(--muted);font-size:12px}
.pin-pop a i{margin-left:auto;font-style:normal;font-size:10px;font-weight:800;color:var(--coral-d)}
.menu-tbl td{vertical-align:middle}
.menu-tbl .inp{min-width:130px}
.menu-off td{opacity:.55}
.lid{font-variant-numeric:tabular-nums}
/* admin security: shield + integrity */
.sh-box{margin-bottom:16px}
.sh-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px}
.sh-head p{margin:4px 0 0;max-width:820px}
.sh-me{background:var(--soft);border-radius:10px;padding:8px 12px;font-size:14px}
.sh-alert{border-color:#F4B3AE;background:#FFF8F7}
.sh-files{margin:6px 0 12px;padding-left:18px;font-size:13px;columns:2;column-gap:28px}
.sh-files li{break-inside:avoid;margin-bottom:3px}
.sh-files .inline-form{display:inline}
.sh-ev summary{cursor:pointer;margin:6px 0}
.sh-uri{max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sh-banner{margin:10px 0 0}
@media (max-width:760px){.sh-files{columns:1}}
/* listing form: choose the main photo among existing, imported and new photos */
.imp-ph .imp-tg{display:flex;flex-direction:column;gap:6px;cursor:pointer}
.imp-photos .imp-ph:has([data-imp-keep]:not(:checked)) img{opacity:.35;filter:grayscale(1)}
.main-pick{align-self:flex-start;padding:3px 9px 3px 6px;border-radius:999px;border:1px solid var(--line,#dde3ea);background:#fff;cursor:pointer;transition:background .15s,border-color .15s}
.main-pick:has(input:disabled){opacity:.45;cursor:not-allowed}
.ex-ph:has(.main-pick input:checked) img{outline:3px solid #f5a623;outline-offset:-3px}
.ex-ph:has(.main-pick input:checked) .main-pick{background:#fff4dc;border-color:#f5a623;font-weight:700}
.ex-ph:has(.main-pick input:checked)::after{content:"★";position:absolute;top:42px;left:6px;width:30px;height:30px;border-radius:50%;background:#f5a623;color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;box-shadow:0 1px 4px rgba(0,0,0,.25);pointer-events:none}
.imp-ph:has(.main-pick input:checked)::after{top:6px}
.ex-ph.picked:has(.main-pick input:checked) img{outline-color:var(--err)}
/* admin: compact tables (security log) */
.tbl-tight{font-size:13px}
.tbl-tight th,.tbl-tight td{padding:6px 10px;vertical-align:middle;line-height:1.35}
.tbl-tight .nw{white-space:nowrap}
.sec-log .sl-det{max-width:520px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}
.sec-log tbody tr:hover{background:var(--bg)}
/* admin: broadcasts */
.bc-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px;align-items:start}
@media (max-width:900px){.bc-grid{grid-template-columns:1fr}}
.bc-form h2{font-size:16px;margin:14px 0 8px}.bc-form h2:first-of-type{margin-top:0}
.bc-targets{display:flex;flex-wrap:wrap;gap:8px}
.bc-t{cursor:pointer}.bc-t input{position:absolute;opacity:0;pointer-events:none}
.bc-t span{display:inline-flex;gap:6px;align-items:center;padding:7px 12px;border:1px solid var(--line);border-radius:999px;font-size:14px;background:#fff;transition:all .15s}
.bc-t span b{font-size:12px;background:var(--soft);border-radius:999px;padding:1px 7px}
.bc-t input:checked+span{background:var(--teal);border-color:var(--teal);color:#fff}
.bc-t input:checked+span b{background:rgba(255,255,255,.25)}
.bc-t input:focus-visible+span{outline:2px solid var(--teal);outline-offset:2px}
.bc-pick{position:relative;margin-top:10px}
.bc-sug{position:absolute;z-index:20;left:0;right:0;top:46px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.12);max-height:300px;overflow:auto;padding:4px}
.bc-sug button{display:block;width:100%;text-align:left;border:0;background:none;padding:8px 10px;border-radius:8px;cursor:pointer;font:inherit}
.bc-sug button:hover{background:var(--bg)}.bc-sug p{padding:8px 10px;margin:0}
.bc-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.bc-chip{display:inline-flex;align-items:center;gap:5px;background:var(--soft);border-radius:999px;padding:4px 6px 4px 11px;font-size:13px}
.bc-chip small{color:var(--muted)}
.bc-chip button{border:0;background:rgba(0,0,0,.08);width:20px;height:20px;border-radius:50%;cursor:pointer;font-size:11px;line-height:1}
.bc-chip button:hover{background:var(--err);color:#fff}
.bc-smsbox{border-left:3px solid #f5a623;padding-left:12px;margin:6px 0 4px}
.bc-warn{color:#b26a00}
.bc-send{display:flex;align-items:center;gap:12px;margin-top:14px}
.bc-hist h2{font-size:16px;margin-top:0}
.bc-h{padding:10px 0;border-bottom:1px solid var(--soft)}.bc-h:last-child{border-bottom:0}
.bc-prev{color:var(--muted);margin-top:2px}
.bubble-sys{border-left:3px solid #f5a623}
.msg-sys{display:block;font-size:12px;font-weight:700;color:#b26a00;margin-bottom:4px}
.chat-err{margin:6px 14px 10px;padding:8px 12px;border-radius:10px;background:var(--err-bg);color:var(--err);font-size:14px;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.chat-err[hidden]{display:none}
/* listing form: hourglass while the listing is being uploaded and saved */
body.hg-lock{overflow:hidden}
.hg-ov{position:fixed;inset:0;z-index:9999;background:rgba(15,42,61,.55);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:16px;animation:hgIn .2s ease}
@keyframes hgIn{from{opacity:0}to{opacity:1}}
.hg-box{background:#fff;border-radius:20px;padding:26px 30px 22px;width:min(320px,100%);text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.hg{width:84px;height:126px;display:block;margin:0 auto 10px;animation:hgTilt 2.4s ease-in-out infinite}
@keyframes hgTilt{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
.hg-sand{fill:#f5a623;transition:y .4s linear,height .4s linear}
.hg-stream{fill:#f5a623;transition:opacity .3s;animation:hgFlow .5s linear infinite}
@keyframes hgFlow{0%{opacity:.6}50%{opacity:1}100%{opacity:.6}}
.hg-glass{fill:rgba(11,110,105,.06);stroke:var(--teal);stroke-width:2.5;stroke-linejoin:round}
.hg-cap{fill:var(--teal)}
.hg-pct{font-size:30px;font-weight:800;color:var(--ink);line-height:1.1;font-variant-numeric:tabular-nums}
.hg-txt{color:var(--muted);font-size:14px;margin:4px 0 12px;min-height:20px}
.hg-bar{height:6px;border-radius:99px;background:var(--soft);overflow:hidden}
.hg-bar span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--teal),#f5a623);transition:width .4s linear}
@media (prefers-reduced-motion:reduce){.hg{animation:none}.hg-stream{animation:none}}
/* import: this listing was already added */
.imp-dup{display:flex;flex-direction:column;gap:6px;margin:12px 0 4px;padding:12px 14px;border-radius:12px;background:var(--warn-bg);border:1px solid #f5a623;color:#7a4a00}
.imp-dup strong{font-size:15px}
.imp-dup-act{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.imp-dup-act form.inline{display:inline}
.imp-dup-l{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;padding:6px;color:var(--ink);text-decoration:none;max-width:560px}
.imp-dup-l img{width:72px;height:54px;object-fit:cover;border-radius:7px;flex:none}
.imp-dup-l span{display:flex;flex-direction:column;min-width:0}
.imp-dup-l .small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pin-note{color:var(--teal);font-weight:600;margin-top:-4px}
.inp-busy{background-image:linear-gradient(90deg,transparent,rgba(11,110,105,.08),transparent);background-size:200% 100%;animation:inpBusy 1s linear infinite}
@keyframes inpBusy{from{background-position:200% 0}to{background-position:-200% 0}}
/* listing form: AI description */
.ai-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}
.btn-ai{background:linear-gradient(135deg,#6d4aff,#0B6E69);color:#fff;border:0;box-shadow:0 4px 14px rgba(109,74,255,.25)}
.btn-ai:hover{filter:brightness(1.08)}
.btn-ai:disabled{opacity:.7;cursor:wait}
/* AI dialog */
.ai-ov{position:fixed;inset:0;z-index:9999;background:rgba(15,42,61,.45);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:16px;animation:hgIn .18s ease}
.ai-ov.out{opacity:0;transition:opacity .16s}
.ai-dlg{position:relative;width:min(420px,100%);background:#fff;border-radius:22px;padding:30px 26px 22px;text-align:center;box-shadow:0 24px 70px rgba(40,20,120,.3);animation:aiPop .22s cubic-bezier(.2,.9,.3,1.2)}
.ai-dlg::before{content:"";position:absolute;inset:0;border-radius:22px;padding:2px;background:linear-gradient(135deg,#6d4aff,#0B6E69);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
@keyframes aiPop{from{transform:scale(.92);opacity:0}to{transform:none;opacity:1}}
.ai-dlg-ic{width:56px;height:56px;margin:0 auto 12px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:26px;background:linear-gradient(135deg,#6d4aff,#0B6E69);box-shadow:0 8px 22px rgba(109,74,255,.35)}
.ai-dlg h3{margin:0 0 8px;font-size:19px;color:var(--ink)}
.ai-dlg p{margin:0 0 20px;color:var(--muted);font-size:14.5px;line-height:1.55}
.ai-dlg-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.ai-dlg-btns .btn{min-width:130px}
/* launch offer */
.promo-bar-wrap{margin-top:18px;margin-bottom:6px}
.promo-bar{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:16px;text-decoration:none;color:#fff;background:linear-gradient(120deg,#0B6E69 0%,#0F2A3D 55%,#6d4aff 100%);box-shadow:0 10px 30px rgba(11,110,105,.25);position:relative;overflow:hidden}
.promo-bar::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.18) 50%,transparent 70%);transform:translateX(-100%);animation:promoShine 4s ease-in-out infinite}
@keyframes promoShine{0%,60%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
.promo-gift{font-size:30px;flex:none;animation:promoBounce 2.4s ease-in-out infinite}
@keyframes promoBounce{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-3px) rotate(-6deg)}}
.promo-txt{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.promo-txt b{font-size:17px}
.promo-txt span{font-size:13.5px;opacity:.88}
.promo-cta{flex:none;background:#f5a623;color:#0F2A3D;font-weight:800;padding:9px 16px;border-radius:999px;white-space:nowrap}
.promo-bar:hover .promo-cta{background:#ffbf47}
@media (max-width:640px){.promo-bar{flex-wrap:wrap}.promo-cta{width:100%;text-align:center}}
@media (prefers-reduced-motion:reduce){.promo-bar::after,.promo-gift{animation:none}}
.promo-mini{background:var(--teal-l);color:var(--teal-d);border-radius:10px;padding:9px 12px;font-size:14px;font-weight:600;margin:0 0 12px}
.promo-pay{display:flex;align-items:baseline;gap:10px;margin-bottom:6px;justify-content:flex-end}
.promo-old{text-decoration:line-through;color:var(--muted);font-size:16px}
.promo-free{font-weight:800;color:var(--teal);font-size:20px}
/* agent page: compact contacts, about text, filters */
.ag-contacts{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.ag-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--bg);border:1px solid var(--line);font-size:13.5px;color:var(--ink);text-decoration:none;max-width:100%;font:inherit;font-size:13.5px;cursor:default}
.ag-chip span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
a.ag-chip,button.ag-chip{cursor:pointer}
a.ag-chip:hover,button.ag-chip:hover{border-color:var(--teal);color:var(--teal)}
.ag-chip-phone{background:var(--teal-l);border-color:transparent;color:var(--teal-d);font-weight:700}
.ag-soc{display:inline-flex;gap:6px}
.ag-soc-btn{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--bg);border:1px solid var(--line);color:var(--ink2);transition:transform .15s,background .15s,color .15s}
.ag-soc-btn:hover{transform:translateY(-2px);color:#fff}
.ag-soc-facebook:hover{background:#1877f2;border-color:#1877f2}
.ag-soc-instagram:hover{background:linear-gradient(45deg,#f58529,#dd2a7b,#8134af);border-color:transparent}
.ag-soc-tiktok:hover{background:#111;border-color:#111}
.ag-soc-telegram:hover{background:#229ed9;border-color:#229ed9}
.ag-soc-website:hover{background:var(--teal);border-color:var(--teal)}
.agent-hero .agent-links{margin-top:2px}
.ag-tip{margin:0;font-size:13.5px;color:var(--teal-d);background:var(--teal-l);border-radius:10px;padding:8px 12px}
.ag-about{position:relative;margin-top:6px;padding:14px 16px;border-radius:14px;background:var(--bg);border-left:3px solid var(--teal)}
.ag-about-txt{font-size:14.5px;line-height:1.65;color:var(--ink2)}
.ag-about.clamped .ag-about-txt{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.ag-more{margin-top:6px;font-weight:700;color:var(--teal)}
.ag-filter{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:4px 0 16px;padding:12px;border-radius:14px;background:#fff;border:1px solid var(--line)}
.ag-filter .inp-sm{height:40px;width:auto}
.ag-rooms{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.ag-rooms label{cursor:pointer}
.ag-rooms input{position:absolute;opacity:0;pointer-events:none}
.ag-rooms span{display:block;min-width:40px;height:38px;line-height:38px;text-align:center;font-weight:700;font-size:14px;border-right:1px solid var(--line)}
.ag-rooms label:last-child span{border-right:0}
.ag-rooms input:checked+span{background:var(--teal);color:#fff}
.ag-rooms input:focus-visible+span{outline:2px solid var(--teal);outline-offset:-2px}
.ag-price{display:inline-flex;align-items:center;gap:6px}
.ag-price .inp-sm{width:110px}
.ag-reset{font-size:13.5px;color:var(--err);text-decoration:none;font-weight:600}
.ag-found{margin:-6px 0 12px}
@media (max-width:640px){.ag-filter .inp-sm{flex:1 1 140px}.ag-price{flex:1 1 100%}.ag-price .inp-sm{flex:1}}

/* cookie bar: small and quiet */
.ck-bar{left:auto;right:16px;bottom:16px;max-width:430px;margin:0;gap:10px 12px;padding:12px 14px;border-radius:14px;align-items:flex-start;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);box-shadow:0 8px 28px rgba(15,42,61,.16);border-left:3px solid var(--teal);animation:ckIn .3s ease}
@keyframes ckIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.ck-ic{font-size:22px;line-height:1;flex:none;margin-top:1px}
.ck-bar p{flex:1 1 0;min-width:0;font-size:12.5px;line-height:1.45}
.ck-btns{width:100%;justify-content:flex-end;gap:6px}
.ck-btns .btn{height:32px;padding:0 12px;font-size:12.5px;border-radius:9px}
@media (max-width:640px){.ck-bar{left:10px;right:10px;bottom:10px;max-width:none}.ck-btns .btn{flex:1}}
/* search: hovering a listing shows its pin */
.pin{transition:transform .18s ease,background .18s,color .18s,box-shadow .18s}
.pin.pin-hot{background:var(--teal)!important;color:#fff!important;transform:translate(-50%,-50%) scale(1.25);box-shadow:0 6px 18px rgba(11,110,105,.55);z-index:2;position:relative}
.pin.pin-hot b{background:#fff;color:var(--teal)}
.pin-ring{position:absolute;left:0;top:0;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:rgba(11,110,105,.35);animation:pinRing 1.3s ease-out infinite;pointer-events:none}
@keyframes pinRing{0%{transform:scale(1);opacity:.9}100%{transform:scale(5);opacity:0}}
.rcard{transition:box-shadow .18s,transform .18s}
.rcard:hover,.rcard.rcard-hot{box-shadow:0 0 0 2px var(--teal),0 10px 28px rgba(15,42,61,.12)}
@media (prefers-reduced-motion:reduce){.pin-ring{animation:none;opacity:.5}}
/* verified agents */
.vf-badge{display:inline-flex;vertical-align:-0.12em;margin-left:6px;filter:drop-shadow(0 1px 2px rgba(226,85,43,.35))}
.vf-badge svg{display:block}
h1 .vf-badge{vertical-align:-0.08em}
.vf-card{display:flex;flex-direction:column;gap:12px;border:1px solid #f6d3b5;background:linear-gradient(135deg,#fff8f1,#fff)}
.vf-head{display:flex;gap:14px;align-items:center}
.vf-head>div{display:flex;flex-direction:column;gap:3px}
.vf-big .vf-badge{margin:0}
.vf-form{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.vf-drop{display:block;width:100%;border:2px dashed #f2b98a;border-radius:12px;padding:14px;text-align:center;cursor:pointer;background:#fff;font-size:14px}
.vf-drop:hover{border-color:var(--coral)}
.vf-drop input{position:absolute;opacity:0;width:1px;height:1px}
.vf-state{margin:0;padding:9px 12px;border-radius:10px;font-size:14px}
.vf-wait{background:#fff4dc;color:#7a4a00}
.vf-no{background:var(--err-bg);color:var(--err)}
.vf-queue{display:flex;flex-direction:column;gap:14px}
.vf-item{display:grid;grid-template-columns:minmax(0,320px) 1fr;gap:18px;align-items:start}
.vf-late{border-color:var(--err)}
.vf-doc img{width:100%;max-height:260px;object-fit:contain;border-radius:10px;background:var(--bg);border:1px solid var(--line)}
.vf-info h3{margin:0 0 6px}
.vf-act{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.vf-act .inp-sm{flex:1 1 220px}
.nav-n{display:inline-flex;min-width:18px;height:18px;border-radius:99px;background:var(--coral);color:#fff;font-size:11px;align-items:center;justify-content:center;padding:0 5px;margin-left:4px}
@media (max-width:700px){.vf-item{grid-template-columns:1fr}}

.choice-pending{opacity:.5;cursor:not-allowed;filter:grayscale(1)}.side-menu>a{display:flex;align-items:center;gap:12px;transition:background .2s,transform .2s}.side-menu>a:hover{transform:translateX(4px)}.side-menu>a .ic{flex-shrink:0}.side-menu>a.on .ic{color:#e87832}.contract-preview{background:white;color:#111;padding:36px;line-height:1.8;white-space:pre-wrap}.contract-tools{display:flex;gap:10px;flex-wrap:wrap}@media(prefers-reduced-motion:reduce){.side-menu>a{transition:none}.side-menu>a:hover{transform:none}}

.nav-pending{opacity:.45;display:inline-flex;align-items:center;gap:6px;cursor:not-allowed}

[data-verify-count]{background:#e87832;color:white;border-radius:20px;padding:2px 8px;margin-left:6px}.verify-new{outline:3px solid #e87832;box-shadow:0 0 0 6px #e8783220}
/* Verified agent contract workspace */
.ct-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px}.ct-heading h1{margin:8px 0}.ct-eyebrow{font-size:12px;font-weight:700;letter-spacing:.03em;color:#54717f}.ct-verified{display:flex;align-items:center;gap:6px;background:#e7f4ef;color:#087869;border-radius:30px;padding:8px 12px;font-size:12px;white-space:nowrap}.ct-start-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ct-start{padding:24px}.ct-start h2{font-size:20px;margin:14px 0 10px}.ct-start p{line-height:1.7}.ct-start-icon{display:inline-flex;padding:12px;background:#e9f4f2;border-radius:14px;color:#0c766d}.ct-template-buttons{display:flex;flex-direction:column;gap:10px}.ct-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ct-document-list{display:grid;gap:8px;max-height:360px;overflow:auto}.ct-document{display:flex;align-items:center;gap:12px;border:1px solid #dbe5e9;border-radius:12px;padding:14px;background:#fff;transition:background .2s}.ct-document.on,.ct-document:hover{background:#edf7f5}.ct-document span:nth-child(2){flex:1}.ct-document strong,.ct-document small{display:block}.ct-document small{color:#70838d;margin-top:4px}.ct-document>span:last-child{font-size:12px}.ct-fieldset{border:0;border-top:1px solid #e1e8eb;padding:18px 0;margin:18px 0}.ct-fieldset legend{font-weight:700;padding:0 12px 0 0}.ct-languages{display:flex;gap:14px;flex-wrap:wrap;margin:16px 0}.ct-toolbar{display:flex;align-items:center;gap:5px;flex-wrap:wrap;background:#f3f7f8;border:1px solid #dbe5e9;border-radius:12px 12px 0 0;padding:10px;position:sticky;top:80px;z-index:2}.ct-toolbar button,.ct-toolbar select{background:#fff;border:1px solid #d3dfe4;border-radius:6px;padding:7px 10px;color:#173443;cursor:pointer;font-size:13px}.ct-toolbar button:hover{background:#def1ed}.ct-paper-wrap{background:#edf1f3;border:1px solid #dbe5e9;padding:24px;overflow-x:auto}.ct-paper{background:#fff;color:#111;max-width:794px;min-height:700px;margin:0 auto;padding:48px 52px;box-shadow:0 3px 18px #15304010;font:15px Arial,sans-serif;line-height:1.7;overflow-wrap:anywhere;outline:none}.ct-paper h1{font-size:24px;text-align:center;line-height:1.4;margin:0 0 24px;color:#000}.ct-paper h2{font-size:18px;margin:22px 0 10px;color:#000}.ct-paper p{margin:0 0 10px}.ct-paper table{width:100%;border-collapse:collapse}.ct-paper td,.ct-paper th{border:1px solid #d9d9d9;padding:10px;min-width:60px}.ct-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.ct-actions form{display:flex;gap:10px;flex-wrap:wrap}.ct-share-section{border-top:1px solid #dbe5e9;padding-top:18px;margin-top:24px}.ct-unsaved{color:#a85814!important}.ct-editor-shell{padding:24px}.ct-share-section>form{margin-top:16px}.ct-share-section .inp{max-width:500px}[data-doc-title][hidden]{display:none}.ct-fieldset [hidden]{display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:800px){.ct-start-grid{grid-template-columns:1fr}.ct-heading{flex-direction:column}.ct-paper-wrap{padding:8px}.ct-paper{padding:24px 18px;min-height:500px}.ct-editor-shell{padding:14px}.ct-toolbar{top:64px}.ct-document>span:last-child{display:none}}

.ct-toolbar{position:static;top:auto}.ct-dialog{border:1px solid #d9e9e6;border-radius:24px;background:linear-gradient(135deg,#f0fbf8,#fff8ee);box-shadow:0 24px 90px #153b4250;padding:28px;width:min(920px,94vw);max-height:88vh;overflow:auto;color:#173443}.ct-dialog::backdrop{background:#112d4666;backdrop-filter:blur(5px)}#ct-confirm{width:min(480px,92vw)}.ct-progress{position:sticky;bottom:0;display:flex;align-items:center;gap:14px;padding:16px;border-radius:14px;background:#edf2fc;color:#405a9b;box-shadow:0 4px 25px #17344315;z-index:3}.ct-progress strong{font-size:25px}.ct-progress progress{flex:1;accent-color:#526fb2}.ct-progress.ready{background:#def7e9;color:#097343}.ct-progress.ready progress{accent-color:#139d62}.ct-sign-canvas{touch-action:none;background:#fff;border:1px solid #aabfc5;border-radius:12px;width:100%;max-width:540px;height:180px}.ct-sign-box{padding:22px;margin:20px auto;max-width:900px;background:#f1f8f6;border-radius:18px}.ct-sign-status{color:#087869;font-weight:700}[data-locale-key][hidden],.ct-fieldset[hidden]{display:none}

.ct-dialog{background:linear-gradient(135deg,#f4efff,#eaf8f5);border:2px solid #927de0}.ct-dialog .btn-primary{background:linear-gradient(135deg,#6d4aff,#0B6E69);border:0;box-shadow:0 4px 14px #6d4aff40}

@media(min-width:760px){#ct-fields{display:grid;grid-template-columns:minmax(0,1fr)170px;gap:0 20px}#ct-fields>*{grid-column:1}#ct-fields>.ct-progress{grid-column:2;grid-row:1 / span 30;position:sticky;top:0;bottom:auto;align-self:start;flex-direction:column;text-align:center}.ct-progress progress{width:100%;flex:none}.ct-progress strong{font-size:36px}}.ct-dialog[open]{animation:aiPop .22s cubic-bezier(.2,.9,.3,1.2)}

/* Author card styles must never override the native closed dialog state. */
dialog.ct-dialog:not([open]){display:none!important}dialog.ct-dialog[open]{position:fixed;inset:0;margin:auto;width:min(920px,calc(100vw - 32px));max-height:calc(100dvh - 48px);box-sizing:border-box}#ct-confirm[open]{width:min(480px,calc(100vw - 32px))}.ct-dialog-heading{position:sticky;top:-28px;z-index:5;background:linear-gradient(135deg,#f4efff,#eaf8f5);padding:14px 0;margin-top:-14px;border-bottom:1px solid #dce1ef}.ct-dialog-heading h2{margin:0}.ct-dialog-heading button{flex-shrink:0}@media(max-width:600px){dialog.ct-dialog[open]{padding:20px;max-height:calc(100dvh - 24px)}.ct-dialog-heading{top:-20px}}

.up-overlay{position:fixed;inset:0;z-index:20000;background:#0f2a3d88;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:20px}.up-box{width:min(420px,100%);padding:30px;border-radius:22px;background:linear-gradient(135deg,#f4efff,#eaf8f5);box-shadow:0 24px 70px #28147850;text-align:center}.up-box strong{display:block;font-size:38px;color:#0b6e69;margin:14px}.up-box progress{width:100%;height:14px;accent-color:#6d4aff}.up-box p{line-height:1.7;color:#48606f}.up-icon{margin:auto;border-radius:50%;background:linear-gradient(135deg,#6d4aff,#0b6e69);color:white;font-size:28px;width:56px;height:56px;display:grid;place-items:center}.umenu-list a.on,.side-menu a.on{background:#fff1d8;color:#82530d;font-weight:800}.umenu-list a.on .ic{color:#e87832}.up-error{color:#b42318}.ct-sign-link-button{background:linear-gradient(135deg,#6d4aff,#0b6e69);color:white}

.msg-recipient{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #dce6eb;border-radius:12px;text-decoration:none}.msg-recipient small{display:block;color:#657a88;margin-top:4px}.ct-extra-tools{margin-top:14px}.ct-extra-tools summary{cursor:pointer;color:#6b7e8b;font-size:13px}.ct-extra-tools button{margin-top:10px}.ct-sign-highlight{box-shadow:0 0 0 3px #6d4aff55}.agent-intro{width:min(760px,calc(100vw - 32px))!important}.intro-hero{text-align:center}.intro-hero h2{font-size:27px;margin:16px 0 10px}.intro-hero p{color:#607582;line-height:1.7}.intro-features{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0}.intro-feature{display:flex;gap:12px;padding:16px;background:#ffffffb5;border-radius:14px;border:1px solid #e1e6f1}.intro-feature>span{color:#6d4aff;flex-shrink:0}.intro-feature h3{font-size:16px;margin:0 0 8px}.intro-feature p{font-size:13px;line-height:1.7;margin:0;color:#526b7a}.intro-promo{padding:14px;background:#def7e9;color:#08734b;border-radius:12px;text-align:center}.agent-intro .ct-actions{justify-content:center}.card-photo-preview{position:absolute;inset:0;overflow:hidden}.card-photo-track{display:flex;height:100%;width:100%;transition:transform .25s ease}.card-photo-slide{position:relative;display:block;flex:0 0 100%;min-width:0;height:100%;overflow:hidden}.card-photo-slide img{display:block}.card-photo-blur{position:absolute;inset:-10px;background-size:cover;background-position:center;filter:blur(5px)}.card-photo-more:after{content:"";position:absolute;inset:0;background:#0f2a3dba}.card-photo-cta{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#fff;text-align:center;padding:18px}.card-photo-cta small{font-size:12px}.card-preview-dots{display:none;position:absolute;bottom:12px;left:50%;transform:translateX(-50%);gap:5px;background:#102b3c55;border-radius:20px;padding:5px 8px}.card-preview-dots i{width:6px;height:6px;border-radius:50%;background:#ffffff80}.card-preview-dots i.on{background:#fff}@media(max-width:800px){[data-card-preview]{touch-action:pan-y}.card-preview-dots{display:flex}}@media(max-width:600px){.intro-features{grid-template-columns:1fr}.intro-hero h2{font-size:23px}}@media(prefers-reduced-motion:reduce){.card-photo-track{transition:none}}

/* Keep completion visible below the dialog heading. */
@media(min-width:760px){#ct-fields>.ct-progress{top:calc(var(--ct-heading-height,72px) + 14px)}}
.ct-sign-box>summary{cursor:pointer;font-size:22px;font-weight:700;padding:4px 0}.ct-sign-box[open]>summary{margin-bottom:18px}.ct-sign-success{padding:20px;border-radius:18px;background:linear-gradient(120deg,#e3f9ef,#eae5ff);color:#155b48;margin:20px 0}.ct-sound-button{margin:10px 0}.ct-sign-box{scroll-margin-top:100px}

.ct-editor-shell>summary{cursor:pointer;font-size:20px;font-weight:700}.ct-editor-shell[open]>summary{margin-bottom:18px}.ct-editor-shell[hidden]{display:none!important}

/* Cookie preferences and the footer's existing parachute logo. */
dialog.ck-bar:not([open]){display:none!important}dialog.ck-bar[open]{top:auto;width:calc(100% - 32px);box-sizing:border-box;color:var(--ink)}dialog.ck-bar.ck-settings[open]{position:fixed;inset:0;margin:auto;width:min(520px,calc(100vw - 32px));max-width:520px;max-height:calc(100dvh - 32px);overflow:auto;padding:32px 26px 24px;border:1px solid #dce7ea;border-radius:22px;background:linear-gradient(135deg,#f5efff,#edf9f4);box-shadow:0 22px 80px #102d4550;animation:ckSettingsIn .18s ease-out}dialog.ck-settings::backdrop{background:#102d4566;backdrop-filter:blur(4px)}.ck-settings p{font-size:15px;line-height:1.65}.ck-settings .ck-btns{margin-top:10px}.ck-settings .ck-btns .btn{height:auto;min-height:40px;font-size:14px;padding:10px 16px}.ck-close{position:absolute;top:8px;right:12px;border:0;background:transparent;color:var(--ink);font-size:28px;cursor:pointer;width:36px;height:36px}.ck-close[hidden]{display:none!important}@keyframes ckSettingsIn{from{opacity:0}to{opacity:1}}
.ftr .ftr-logo{display:inline-flex;align-items:center;align-self:flex-start;gap:14px;font-size:28px;line-height:1.15;color:#fff}.ftr-logo-mark{display:flex;align-items:center;justify-content:center;width:76px;height:76px;flex:none;border-radius:22px;background:#f3faf8;box-shadow:0 8px 24px #0002}.ftr-logo-mark svg{width:64px;height:64px;flex:none}.ftr-logo>span:last-child{white-space:nowrap}@media(max-width:400px){.ftr .ftr-logo{font-size:25px;gap:10px}.ftr-logo-mark{width:66px;height:66px}.ftr-logo-mark svg{width:56px;height:56px}}@media(prefers-reduced-motion:reduce){dialog.ck-bar{animation:none!important;transition:none!important}}

.ct-editor-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none}.ct-editor-toggle::-webkit-details-marker{display:none}.ct-collapse-label{flex:none;font-size:14px;min-width:100px;pointer-events:none}.ct-editor-toggle:focus-visible{outline:3px solid #9173ed;outline-offset:5px}

.ct-start-heading{display:contents}@media(max-width:800px){.ct-start-heading{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#e9f4f2;border-radius:14px;margin-bottom:10px}.ct-start-heading .ct-start-icon{padding:0;background:transparent;border-radius:0;flex:none}.ct-start-heading h2{margin:0;font-size:17px;line-height:1.4;min-width:0;color:#173443}.ct-start-heading .ct-start-icon svg{width:24px;height:24px}}

/* Footer logo directly on the dark background, without a white tile. */
.ftr-logo-mark{background:transparent;box-shadow:none;border-radius:0}.ftr-logo-mark svg path[stroke]{stroke:#c3e6e1}

/* social banner maker */
.bn-grid{display:grid;grid-template-columns:minmax(0,340px) 1fr;gap:20px;align-items:start}
.bn-side h3{font-size:15px;margin:16px 0 8px}.bn-side h3:first-child{margin-top:0}
.bn-sizes,.bn-styles{display:flex;flex-direction:column;gap:6px}
.bn-styles{flex-direction:row;flex-wrap:wrap}
.bn-sizes label,.bn-styles label{cursor:pointer}
.bn-sizes input,.bn-styles input{position:absolute;opacity:0;pointer-events:none}
.bn-sizes span{display:flex;flex-direction:column;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}
.bn-sizes small{color:var(--muted);font-size:12px}
.bn-styles span{display:block;padding:7px 14px;border:1px solid var(--line);border-radius:99px;background:#fff;font-weight:600;font-size:14px}
.bn-sizes input:checked+span,.bn-styles input:checked+span{border-color:var(--teal);background:var(--teal-l);box-shadow:0 0 0 1px var(--teal)}
.bn-photos{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.bn-ph{position:relative;border:2px solid transparent;border-radius:8px;padding:0;overflow:hidden;cursor:pointer;background:none;aspect-ratio:1}
.bn-ph img{width:100%;height:100%;object-fit:cover;display:block;opacity:.6}
.bn-ph.on{border-color:var(--coral)}.bn-ph.on img{opacity:1}
.bn-ph b{position:absolute;top:4px;left:4px;min-width:20px;height:20px;border-radius:99px;background:var(--coral);color:#fff;font-size:12px;display:none;align-items:center;justify-content:center}
.bn-ph.on b{display:flex}
.bn-side .fld{margin-bottom:8px}
.bn-stage{position:sticky;top:90px;display:flex;flex-direction:column;align-items:center;gap:12px}
.bn-canvas-wrap{width:100%;display:flex;justify-content:center;background:repeating-conic-gradient(#eef2f4 0 25%,#f7f9fa 0 50%) 0 0/24px 24px;border-radius:16px;padding:18px}
.bn-canvas-wrap canvas{max-width:100%;max-height:68vh;width:auto;height:auto;border-radius:10px;box-shadow:0 12px 34px rgba(15,42,61,.22)}
.bn-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
[data-banner]:not(.ready) .bn-canvas-wrap{opacity:.5}
@media (max-width:900px){.bn-grid{grid-template-columns:1fr}.bn-stage{position:static}}

/* broadcast history details */
.bc-more{margin-top:6px}.bc-more summary{cursor:pointer;color:var(--teal);font-size:13px;font-weight:600}
.bc-full{background:var(--soft);border-radius:8px;padding:8px 10px;margin:8px 0;white-space:normal}
.bc-sub{font-weight:700;font-size:13px;margin:10px 0 4px}
.bc-list{list-style:none;margin:0;padding:0;max-height:260px;overflow:auto}.bc-list li{padding:4px 0;border-bottom:1px dashed var(--line)}
.bc-st{display:inline-block;font-size:11px;font-weight:700;border-radius:99px;padding:1px 8px;margin-right:4px}
.bc-st.ok{background:#E6F6EF;color:#0F7A52}.bc-st.no{background:var(--err-bg);color:var(--err)}
/* banner maker: locked for unverified profiles */
.bn-lock{max-width:560px;text-align:center;padding:28px 24px}.bn-lock h2{margin:10px 0 8px}
.bn-lock-list{list-style:none;padding:0;margin:14px auto;display:inline-block;text-align:left}.bn-lock-list li{padding:3px 0}
.bn-lock .btn{margin:6px 0 10px}
/* agent market reports (bonus) */
.mr-hero{display:flex;gap:16px;align-items:center;background:linear-gradient(135deg,#FFF6EC,#FDEBE3);border-color:#F6D3C3}
.mr-amt{font-size:30px;font-weight:800;color:var(--coral);white-space:nowrap}
.mr-hero p{margin:4px 0 0}
.mr-form .fld{margin-bottom:14px}
.mr-trend{display:flex;flex-wrap:wrap;gap:8px}
.mr-t input,.mr-chk input{position:absolute;opacity:0;pointer-events:none}
.mr-t span,.mr-chk span{display:inline-block;padding:7px 14px;border:1px solid var(--line);border-radius:99px;cursor:pointer;font-size:14px;background:#fff}
.mr-up input:checked+span{background:#E6F6EF;border-color:#0F7A52;color:#0F7A52;font-weight:700}
.mr-same input:checked+span{background:var(--soft);border-color:var(--ink);font-weight:700}
.mr-down input:checked+span{background:var(--err-bg);border-color:var(--err);color:var(--err);font-weight:700}
.mr-chk{display:flex;flex-wrap:wrap;gap:6px}
.mr-chk input:checked+span{background:var(--teal-l);border-color:var(--teal);color:var(--teal);font-weight:700}
.mr-h{padding:8px 0;border-bottom:1px dashed var(--line)}.mr-h:last-child{border-bottom:0}
.mr-st{display:inline-block;font-size:12px;font-weight:700;border-radius:99px;padding:1px 9px;margin-right:6px}
.mr-st-pending{background:var(--warn-bg);color:#8A5A00}.mr-st-approved{background:#E6F6EF;color:#0F7A52}.mr-st-rejected{background:var(--err-bg);color:var(--err)}
.mr-adm{margin-bottom:16px}
@media (max-width:600px){.mr-hero{flex-direction:column;align-items:flex-start}}
/* home: empty agent slots invite agencies */
.agent-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1100px){.agent-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:860px){.agent-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:620px){.agent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.agent-free:nth-child(n+9){display:none}}
.agent-free{border:2px dashed #CFE3E1!important;background:linear-gradient(160deg,#F3FAF9,#fff)!important;justify-content:center;align-items:center;text-align:center;min-height:170px;gap:6px}
.agent-free:hover{border-color:var(--teal)!important}
.agent-free-plus{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-size:26px;font-weight:700;color:#fff;background:linear-gradient(135deg,#0B6E69,#6d4aff);animation:promoBounce 2.4s ease-in-out infinite}
.agent-free .agent-name{color:var(--teal)}
/* pop-up advert */
.pop-ad{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:16px}
.pop-bg{position:absolute;inset:0;background:rgba(10,24,36,.55);backdrop-filter:blur(3px);opacity:0;transition:opacity .25s}
.pop-card{position:relative;width:min(440px,100%);max-height:calc(100vh - 32px);overflow:auto;border-radius:22px;color:#fff;background:linear-gradient(140deg,#0B6E69 0%,#0F2A3D 55%,#6d4aff 100%);box-shadow:0 30px 80px rgba(0,0,0,.35);transform:translateY(18px) scale(.96);opacity:0;transition:transform .3s cubic-bezier(.2,.9,.3,1.2),opacity .25s}
.pop-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.16) 50%,transparent 70%);transform:translateX(-100%);animation:promoShine 4s ease-in-out infinite}
.pop-ad.on .pop-bg{opacity:1}.pop-ad.on .pop-card{transform:none;opacity:1}
.pop-x{position:absolute;top:10px;right:10px;z-index:2;width:34px;height:34px;border-radius:50%;border:0;background:rgba(15,42,61,.55);color:#fff;font-size:22px;line-height:1;cursor:pointer}
.pop-x:hover{background:rgba(15,42,61,.85)}
.pop-img{aspect-ratio:1200/630;overflow:hidden}.pop-img img{width:100%;height:100%;object-fit:cover;display:block}
.pop-body{padding:22px 24px 24px;display:flex;flex-direction:column;gap:10px;align-items:flex-start;position:relative}
.pop-img+.pop-body .pop-badge{margin-top:-46px}
.pop-badge{font-size:40px;line-height:1;display:inline-block;animation:promoBounce 2.4s ease-in-out infinite;filter:drop-shadow(0 6px 10px rgba(0,0,0,.3))}
.pop-body h2{margin:0;font-size:22px;line-height:1.3;color:#fff}
.pop-body p{margin:0;font-size:15px;line-height:1.55;opacity:.9}
.pop-cta{margin-top:6px;display:block;width:100%;text-align:center;padding:13px 18px;border-radius:99px;background:#F2A93B;color:#0F2A3D!important;font-weight:800;text-decoration:none;box-shadow:0 8px 20px rgba(242,169,59,.35);transition:transform .15s}
.pop-cta:hover{transform:translateY(-1px)}
@media (prefers-reduced-motion:reduce){.pop-card,.pop-card::after,.pop-badge,.agent-free-plus{animation:none;transition:none}}
.pop-adm{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:20px;align-items:start}
.pop-adm h3{margin:18px 0 8px}.pop-adm-img{width:100%;max-width:360px;border-radius:12px;display:block;margin-bottom:6px}
.pop-lg{border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin:0 0 10px}.pop-lg legend{font-weight:700;font-size:13px;padding:0 6px}
.pop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}
.pop-prev .pop-card{transform:none;opacity:1;width:100%}
.pop-state{font-size:14px;color:var(--muted);vertical-align:middle}.pop-state.on{color:#0F7A52}
@media (max-width:900px){.pop-adm{grid-template-columns:1fr}}
/* pop-up: no horizontal scrollbar from the shine; a little wider on desktop */
.pop-card{overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;width:min(480px,100%)}
.pop-card::-webkit-scrollbar{width:6px;height:0}.pop-card::-webkit-scrollbar-thumb{background:rgba(255,255,255,.3);border-radius:6px}
/* listing form: drag to reorder photos */
.ex-photos[data-sortable] .ex-ph[data-img-id]{cursor:grab;user-select:none;-webkit-user-select:none}
.ex-photos[data-sortable] img{pointer-events:none}
.ex-handle{position:absolute;left:50%;top:6px;transform:translateX(-50%);z-index:2;width:34px;height:26px;border-radius:8px;background:rgba(15,42,61,.72);color:#fff;display:grid;place-items:center;font-size:16px;cursor:grab;touch-action:none}
.ex-num{position:absolute;right:6px;top:62px;z-index:2;min-width:22px;height:22px;padding:0 6px;border-radius:99px;background:#fff;color:var(--ink);font-size:12px;font-weight:800;display:grid;place-items:center;box-shadow:0 1px 4px rgba(0,0,0,.2)}
.ex-dragging{opacity:.35}
.ex-ghost{position:fixed;z-index:2000;pointer-events:none;box-shadow:0 16px 40px rgba(0,0,0,.3);transform:rotate(2deg);background:#fff;border-radius:12px;padding:4px}
.ex-sort-hint{margin:0 0 6px}
/* market report form: each question as its own numbered, tinted block */
.mr-form{counter-reset:mrq}
.mr-form>.fld{counter-increment:mrq;background:linear-gradient(135deg,#F3FAF9,#F7F5FF);border:1px solid #E1ECEB;border-radius:16px;padding:14px 14px 16px;margin-bottom:12px}
.mr-form>.fld>span:first-child{display:flex;align-items:center;gap:10px;font-size:15.5px;font-weight:800;color:var(--ink);margin-bottom:10px}
.mr-form>.fld>span:first-child::before{content:counter(mrq);flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:800;color:#fff;background:linear-gradient(135deg,#0B6E69,#6d4aff);box-shadow:0 4px 10px rgba(11,110,105,.25)}
.mr-form>.fld .inp{background:#fff}
.mr-trend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.mr-trend .mr-t span{display:block;text-align:center;padding:10px 6px;white-space:nowrap}
.mr-t span,.mr-chk span{background:#fff}
.mr-trend .mr-t span{white-space:normal;overflow:hidden;text-overflow:ellipsis;font-size:13.5px;padding:10px 4px;line-height:1.25}
.mr-trend{gap:6px}.mr-trend .mr-t span{white-space:nowrap;font-size:13px;padding:10px 2px;letter-spacing:-.1px}@media (max-width:380px){.mr-trend .mr-t span{font-size:12px}}
/* user menu on phones: never taller than the screen, scrolls inside itself */
@media (max-width:640px){.umenu-pop{max-height:calc(100vh - 84px);max-height:calc(100dvh - 84px);overflow-y:auto;overscroll-behavior:contain}}
/* listing form: no contacts in the description */
.desc-warn{margin:6px 0 4px;padding:9px 12px;border-radius:10px;background:var(--warn-bg);color:#8A5A00;font-size:13px}
.desc-warn.hit{background:var(--err-bg);color:var(--err);font-weight:700}
.ta.desc-bad{border-color:#E7A33E!important;box-shadow:0 0 0 3px rgba(231,163,62,.15)}
/* home: ID search next to the popular chips */
.id-find{margin-left:auto;display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;background:#fff;overflow:hidden;height:34px}
.id-find .inp{border:0;height:32px;width:130px;padding:0 4px 0 14px;font-size:14px;background:transparent;box-shadow:none}
.id-find button{border:0;background:var(--teal);color:#fff;height:34px;width:40px;display:grid;place-items:center;cursor:pointer}
@media (max-width:640px){.id-find{margin-left:0;width:100%}.id-find .inp{flex:1;width:auto}}
