/* ──────────────────────────────────────────────────────────────
   RentSale.ge — выравнивание каркаса (rw-polish.css)
   Только геометрия, тени, отступы и состояния.
   Цвета, шрифты и раскладка НЕ меняются.
   Отключить: убрать строку с rw-polish.css в config.php.
   ────────────────────────────────────────────────────────────── */

:root{
  --rwR:10px;            /* контролы */
  --rwR-card:14px;       /* карточки */
  --rwSh:0 1px 2px rgba(30,20,10,.05), 0 4px 14px rgba(30,20,10,.055);
  --rwSh-h:0 10px 30px rgba(30,20,10,.11);
  --rwE:cubic-bezier(.2,.7,.3,1);
  --rwRing:0 0 0 3px rgba(63,164,92,.16);
}

/* ── 1. Шапка: одна высота, одно скругление, ровные промежутки ── */
html .sh2-nav{gap:10px}
html .sh2-add,
html .sh2-my,
html .sh2-imp,
html .sh2-prof,
html .sh2 .lang-btn{height:40px;border-radius:var(--rwR)}
html .sh2-add{box-shadow:0 4px 12px rgba(63,164,92,.26);transition:background .18s var(--rwE),transform .18s var(--rwE),box-shadow .18s var(--rwE)}
html .sh2-add:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(63,164,92,.3)}
html .sh2-add:active{transform:translateY(0)}
html .sh2-my,html .sh2-imp,html .sh2-prof,html .sh2 .lang-btn{transition:border-color .18s var(--rwE),background .18s var(--rwE),color .18s var(--rwE)}
html .sh2-links a{padding:9px 12px;border-radius:var(--rwR)}
html .sh2{border-bottom-color:rgba(234,226,216,.85)}
html .sh2 :is(a,button):focus-visible{outline:none;box-shadow:var(--rwRing)}

/* Телефон: шапка должна умещаться целиком — профиль не уезжает за экран */
@media(max-width:820px){
  html .sh2-nav{gap:4px;padding:0 6px 0 5px;overflow:hidden}
  html .sh2-right{gap:3px;min-width:0;flex-shrink:1}
  html .sh2-prof,html .sh2-imp,html .sh2 .lang-btn,html .rw-lang{height:32px;border-radius:8px;padding:0 6px}
  html .sh2-prof{flex-shrink:0}
  html .rw-lang{min-width:32px;padding:0 5px;font-size:10.5px}
  html .sh2-mbtn{border-radius:8px;padding:6px 8px}
}
@media(max-width:400px){
  html .sh2-nav{gap:3px}
  html .rw-lang{min-width:29px;padding:0 4px;font-size:10px}
  html .sh2-prof{padding:0 5px}
}

/* ── 2. Карточки и сетка ── */
html .rw-grid{gap:18px}
html .rw-grid .card{
  border-radius:var(--rwR-card);
  border-color:#eae2d8;
  box-shadow:var(--rwSh);
  transition:transform .22s var(--rwE),box-shadow .22s var(--rwE),border-color .22s var(--rwE);
}
html .rw-grid .card:hover{transform:translateY(-3px);box-shadow:var(--rwSh-h);border-color:#e0d6c6}
html .rw-grid .card .photo{background:#f5f2ed}
html .rw-grid .card .photo .fav{width:34px;height:34px;top:10px;right:10px;box-shadow:0 2px 6px rgba(0,0,0,.1)}
html .rw-grid .card.is-vip:hover{box-shadow:0 10px 30px rgba(230,160,20,.22)}

/* карточки подкатегорий — та же геометрия, что у объявлений */
html .subcat-card{
  border-radius:var(--rwR-card);
  border-color:#eae2d8;
  box-shadow:var(--rwSh);
  transition:transform .22s var(--rwE),box-shadow .22s var(--rwE),border-color .22s var(--rwE);
}
html .subcat-card:hover{transform:translateY(-3px);box-shadow:var(--rwSh-h);border-color:#e0d6c6}
html .subcat-card.has-photo .sc-photo{transition:transform .35s var(--rwE)}

/* карточки на странице объявления */
html .listing-card,
html .info-card,
html .contact-card,
html .desc-block{border-radius:var(--rwR-card)}
html .listing-card{transition:transform .22s var(--rwE),box-shadow .22s var(--rwE)}
html .listing-card:hover{transform:translateY(-3px)}

/* ── 3. Кнопки, поля, фильтр ──
   :where() = нулевая специфичность: любое правило страницы перебивает это */
:where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]),select,textarea){
  border-radius:var(--rwR);
  transition:border-color .16s var(--rwE),box-shadow .16s var(--rwE);
}
html input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]):focus,
html select:focus,
html textarea:focus{outline:none;border-color:#3FA45C;box-shadow:var(--rwRing)}

:where(button,.btn,.btn-primary,.btn-call,.btn-share){border-radius:var(--rwR);transition:background .18s var(--rwE),transform .12s var(--rwE),box-shadow .18s var(--rwE),border-color .18s var(--rwE)}
html :is(button,.btn,.btn-primary,.btn-call,.btn-share):active{transform:translateY(1px)}
html :is(button,a.btn,a.btn-primary):focus-visible{outline:none;box-shadow:var(--rwRing)}
html button:not(:disabled){cursor:pointer}

/* ── 4. Страница объявления ── */
html .gallery-main,
html .listing-img{border-radius:var(--rwR-card)}
html .gal-n,html .gal-prev{box-shadow:0 2px 8px rgba(0,0,0,.14)}
html .price-block{border-radius:var(--rwR-card)}
html .meta-tag{border-radius:999px}
html .breadcrumb{margin-bottom:12px}
html .contact-item{border-radius:var(--rwR)}

/* ── 5. Подвал ── */
html .sf2-links{gap:16px;margin-bottom:10px}
html .sf2-links a{transition:color .16s var(--rwE)}
html .sf2-copy{margin-top:10px}
html .sf2-fb-f textarea,html .sf2-fb-row input{border-radius:var(--rwR)}
html .sf2-fb-f textarea:focus,html .sf2-fb-row input:focus{border-color:#3FA45C;box-shadow:var(--rwRing)}
html .sf2-fb-row button{border-radius:var(--rwR)}

/* ── 6. Нижнее меню на телефоне ── */
html .bn2{box-shadow:0 -2px 14px rgba(30,40,30,.07)}
html .bn2 a{border-radius:var(--rwR);padding:3px 0}
html .bn2 a.bn2-fab .bn2-ic{box-shadow:0 6px 16px rgba(63,164,92,.32)}

/* ── 7. Общее ── */
html a{-webkit-tap-highlight-color:rgba(63,164,92,.12)}
@media(prefers-reduced-motion:reduce){
  *{transition-duration:.01ms !important;animation-duration:.01ms !important}
}
