@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Manrope:wght@500;600;700;800;900&display=swap');

/*
Theme Name: Pomogite Clean
Theme URI: https://pomogi-pomogy.ru/
Author: Pomogite
Description: Чистая тема для карты объявлений о потерянных собаках.
Version: 6.4.7
*/

:root{
  --green:#62b80f;
  --green-dark:#4d9708;
  --blue:#0b2a57;
  --bg:#f4f6f3;
  --text:#172033;
  --muted:#657083;
  --card:#ffffff;
  --border:#e2eadb;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:Arial, sans-serif;background:var(--bg);color:var(--text)}
a{color:inherit}

.site-header{background:#fff;border-bottom:1px solid #e8eee3;position:sticky;top:0;z-index:50;box-shadow:0 3px 18px rgba(0,0,0,.04)}
.header-inner{max-width:1220px;margin:0 auto;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{font-family:'Cormorant Garamond',serif;font-size:42px;font-weight:600;text-decoration:none;letter-spacing:1px;color:#0f1d12}
.logo span{color:var(--green)}
.nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.nav a{font-weight:700;text-decoration:none;color:#283044;padding:8px 10px;border-radius:12px}
.nav a:hover{background:#eef8e8;color:var(--green-dark)}
.primary-btn,.secondary-btn,.danger-btn{border:0;border-radius:999px;padding:12px 20px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:16px}
.primary-btn{background:var(--green);color:#fff}.primary-btn:hover{background:var(--green-dark)}
.secondary-btn{background:#eef8e8;color:#376d09}.danger-btn{background:#fff0f0;color:#a31212}

.hero{max-width:1220px;margin:24px auto 14px;padding:0 20px;text-align:center}
.hero h1{font-size:38px;line-height:1.15;margin:0 0 10px}.hero p{margin:0;color:var(--muted);font-size:18px;line-height:1.45}

.wrap{max-width:1220px;margin:0 auto;padding:0 20px 40px}
.map-card{position:relative;background:#fff;border-radius:28px;padding:14px;box-shadow:0 12px 35px rgba(23,32,51,.08);border:1px solid #edf3e8;overflow:hidden}
#map{width:100%;height:560px;border-radius:20px;overflow:hidden;background:#e8eee3}
.map-help{position:absolute;top:28px;left:50%;transform:translateX(-50%);z-index:5;background:var(--green);color:#fff;padding:13px 24px;border-radius:999px;font-size:20px;font-weight:900;box-shadow:0 10px 28px rgba(0,0,0,.18);white-space:nowrap;pointer-events:none}.map-help-button{pointer-events:auto;cursor:pointer;border:0}.map-help-link{pointer-events:auto;text-decoration:none}.map-help-link:hover{background:var(--green-dark);transform:translateX(-50%) translateY(-1px)}.map-help b{font-size:26px;margin-right:8px}

.section{margin-top:28px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:16px}.section h2{font-size:30px;margin:0}.section .note{color:var(--muted);margin:6px 0 0}

.announcement-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}.announcement-card{background:#fff;border:1px solid #edf3e8;border-radius:22px;overflow:hidden;box-shadow:0 8px 24px rgba(23,32,51,.07);cursor:pointer;text-align:left;padding:0;transition:.2s}.announcement-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(23,32,51,.12)}.announcement-card img{width:100%;height:170px;object-fit:cover;background:#edf7e8;display:block}.announcement-card-body{padding:14px}.announcement-card h3{font-size:19px;margin:0 0 8px}.announcement-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.35}.empty{background:#fff;border:1px dashed #cfe2c4;border-radius:22px;padding:28px;text-align:center;color:var(--muted)}

.form-card,.auth-card{background:#fff;border-radius:26px;padding:24px;box-shadow:0 12px 35px rgba(23,32,51,.08);border:1px solid #edf3e8}.form-card h2,.auth-card h2{font-size:28px;margin:0 0 10px}.form-card p,.auth-card p{color:var(--muted);margin:0 0 18px;line-height:1.45}.field{margin-bottom:14px}.field label{display:block;font-weight:800;margin-bottom:7px}.field input,.field textarea{width:100%;border:1px solid #d8e2d0;border-radius:14px;padding:13px 14px;font-size:16px;background:#fff}.field textarea{min-height:120px;resize:vertical}.hint{font-size:14px;color:var(--muted);margin-top:6px}.coords-box{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px 14px;border-radius:16px;background:#f4faef;border:1px solid #dbeccc;color:#42652e;margin-bottom:14px;font-weight:700}

.auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.auth-panel{background:#f8fcf4;border:1px solid #dceccc;border-radius:20px;padding:18px}.auth-panel h3{margin:0 0 14px;font-size:22px}.alert{padding:12px 14px;border-radius:14px;margin:12px 0;font-weight:700}.alert-ok{background:#eaf8e2;color:#326a08}.alert-error{background:#ffe8e8;color:#9b1111}

.modal{display:none;position:fixed;inset:0;z-index:9999}.modal.open{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.58)}.modal-window{position:relative;background:#fff;max-width:650px;width:calc(100% - 28px);max-height:90vh;overflow:auto;margin:5vh auto;border-radius:26px;padding:18px;box-shadow:0 24px 70px rgba(0,0,0,.35)}.modal-close{position:absolute;right:14px;top:12px;width:40px;height:40px;border:0;border-radius:50%;background:var(--green);color:#fff;font-size:28px;line-height:1;cursor:pointer}.modal-image{width:100%;max-height:390px;object-fit:cover;border-radius:20px;background:#edf7e8}.modal-title{font-size:30px;margin:16px 0 8px}.modal-description{white-space:pre-line;line-height:1.5;color:#30384a}.contact-box{margin-top:14px;background:#f4faef;border:1px solid #dbeccc;border-radius:16px;padding:14px}.contact-box a{font-weight:900;color:#356b0b}

.site-footer{background:var(--blue);color:#fff;margin-top:30px}.footer-inner{max-width:1220px;margin:0 auto;padding:26px 20px;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}.footer-inner p{margin:0;color:#e8f0ff}

.wp-admin-bar .site-header{top:32px}
@media(max-width:782px){.wp-admin-bar .site-header{top:46px}}
@media(max-width:800px){.header-inner{flex-direction:column;align-items:flex-start}.nav{justify-content:flex-start}.hero h1{font-size:30px}.map-help{font-size:15px;padding:10px 14px;max-width:calc(100% - 34px);white-space:normal;text-align:center}#map{height:430px}.auth-grid{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.footer-inner{flex-direction:column}.announcement-grid{grid-template-columns:1fr 1fr}.announcement-card img{height:135px}}
@media(max-width:520px){.announcement-grid{grid-template-columns:1fr}.hero{margin-top:18px}.wrap{padding:0 12px 30px}.map-card{border-radius:18px;padding:8px}#map{height:380px;border-radius:14px}.form-card,.auth-card{padding:18px;border-radius:20px}.logo{font-size:23px}}

.modal-gallery{
  margin-bottom:14px;
}

.modal-thumbs{
  display:flex;
  gap:10px;
  margin-top:10px;
}

.modal-thumb{
  width:82px;
  height:62px;
  padding:0;
  border:2px solid transparent;
  border-radius:12px;
  overflow:hidden;
  background:#eef7e8;
  cursor:pointer;
}

.modal-thumb.active{
  border-color:#66b80f;
}

.modal-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* ===== РЕДАКТИРОВАНИЕ ОБЪЯВЛЕНИЙ ===== */
.edit-link{
  margin-top:-12px;
  margin-bottom:8px;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-height:38px;
  padding:9px 14px;
  border-radius:999px;
  background:#eef8e8;
  color:#376d09;
  font-weight:800;
  text-decoration:none;
  border:1px solid #dbeccc;
}

.edit-link:hover{background:#e2f4d8}

.edit-card{border:2px solid #dbeccc}
.cancel-edit{margin-top:12px}

.current-photos{margin:0 0 14px}
.current-photos > label{display:block;font-weight:800;margin-bottom:8px}
.current-photos > div{display:flex;gap:10px;flex-wrap:wrap}
.current-photos img{width:96px;height:74px;object-fit:cover;border-radius:12px;background:#edf7e8;border:1px solid #dbeccc}

.modal-edit-box{margin-top:14px}
.modal-edit-box .secondary-btn{width:100%}

/* ===== КАРТА + ОБЪЯВЛЕНИЯ СПРАВА ПО ВИДИМОЙ ОБЛАСТИ ===== */
.map-area-layout{
  display:grid;
  grid-template-columns:minmax(0, 1fr) 360px;
  gap:18px;
  align-items:stretch;
  margin-top:18px;
}

.map-area-layout .map-card{
  margin:0;
}

.visible-announcements-panel{
  background:#fff;
  border:1px solid #edf3e8;
  border-radius:28px;
  padding:16px;
  box-shadow:0 12px 35px rgba(23,32,51,.08);
  max-height:590px;
  overflow:auto;
}

.visible-announcements-head{
  position:sticky;
  top:0;
  background:#fff;
  z-index:2;
  padding-bottom:12px;
  margin-bottom:10px;
  border-bottom:1px solid #edf3e8;
}

.visible-announcements-head h2{
  margin:0 0 6px;
  font-size:24px;
}

.visible-announcements-head p{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.35;
}


.visible-announcements-head p.is-help-mode-hint{
  display:block;
  margin-top:10px;
  padding:12px 14px;
  border-radius:16px;
  background:#f1faeb;
  border:1px solid #d9efcc;
  color:#2f5f12;
  box-shadow:0 8px 22px rgba(98,184,15,.08);
}

.visible-announcements-head p.is-help-mode-hint strong{
  display:block;
  font-size:14px;
  line-height:1.35;
  font-weight:800;
  color:#234d0b;
}

.visible-announcements-head p.is-help-mode-hint span{
  display:block;
  margin-top:3px;
  font-size:13px;
  line-height:1.35;
  color:#4b6f36;
}

.visible-announcements-list{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.visible-announcement-card{
  width:100%;
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid #edf3e8;
  background:#f8fcf4;
  border-radius:18px;
  padding:9px;
  text-align:left;
  cursor:pointer;
  transition:.2s;
  position:relative;
}

.visible-announcement-card:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(23,32,51,.10);
}

.visible-announcement-card img{
  width:92px;
  height:76px;
  object-fit:cover;
  border-radius:14px;
  background:#edf7e8;
}

.visible-announcement-card b{
  display:block;
  font-size:16px;
  line-height:1.2;
  margin-bottom:5px;
  color:#1e2a18;
}

.visible-announcement-card small{
  display:block;
  color:var(--muted);
  font-size:13px;
  line-height:1.25;
}

.visible-announcement-card .mini-edit{
  grid-column:1 / -1;
  display:inline-flex;
  justify-content:center;
  padding:7px 10px;
  border-radius:999px;
  background:#eef8e8;
  color:#376d09;
  font-weight:800;
  text-decoration:none;
  font-size:13px;
}

.empty.mini{
  padding:18px;
  font-size:14px;
  line-height:1.45;
}

@media(max-width:1000px){
  .map-area-layout{
    grid-template-columns:1fr;
  }
  .visible-announcements-panel{
    max-height:none;
  }
  .visible-announcements-list{
    display:grid;
    grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));
  }
}

@media(max-width:520px){
  .visible-announcements-list{
    grid-template-columns:1fr;
  }
}


/* ===== ФИНАЛЬНАЯ КОМПАКТНАЯ ШАПКА С КРУПНЫМ ЛОГОТИПОМ ===== */
.site-header{
  background:#fff;
  border-bottom:1px solid #e8eee3;
  position:sticky;
  top:0;
  z-index:50;
  box-shadow:0 3px 18px rgba(0,0,0,.04);
}

.header-inner{
  max-width:1220px;
  margin:0 auto;
  padding:6px 20px !important;
  min-height:76px !important;
  height:76px !important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.logo,
.logo-full{
  display:flex !important;
  align-items:center !important;
  gap:10px;
  height:64px !important;
  line-height:1 !important;
  text-decoration:none;
  overflow:visible;
}

.logo-full img,
.logo img{
  display:block !important;
  width:auto !important;
  height:64px !important;
  max-height:64px !important;
  object-fit:contain !important;
  margin:0 !important;
}

.logo-full span,
.logo span{
  font-family:'Cormorant Garamond',serif;
  font-size:32px !important;
  font-weight:600;
  line-height:1 !important;
}

.nav{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.nav a{
  font-size:15px;
  padding:7px 9px;
}

.primary-btn,
.secondary-btn,
.danger-btn{
  padding:9px 15px !important;
  font-size:15px !important;
}

.wp-admin-bar .site-header{
  top:32px;
}

@media(max-width:782px){
  .wp-admin-bar .site-header{top:46px}
}

@media(max-width:800px){
  .header-inner{
    height:auto !important;
    min-height:70px !important;
    padding:8px 14px !important;
    flex-direction:column;
    align-items:flex-start;
  }

  .logo,
  .logo-full{
    height:58px !important;
  }

  .logo-full img,
  .logo img{
    height:58px !important;
    max-height:58px !important;
  }

  .logo-full span,
  .logo span{
    font-size:28px !important;
  }
}
/* ===== УДАЛЕНИЕ ОБЪЯВЛЕНИЯ ===== */
.delete-announcement-form{
  margin-top:10px;
}

.delete-announcement-form .danger-btn{
  width:100%;
  background:#fff0f0;
  color:#a31212;
  border:1px solid #ffd0d0;
}

.delete-announcement-form .danger-btn:hover{
  background:#ffe2e2;
}


/* ===== СОГЛАСИЯ И ПОЛИТИКА ===== */
.policy-check{
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin:12px 0 16px;
  padding:12px 14px;
  border-radius:14px;
  background:#f8fcf4;
  border:1px solid #dceccc;
  color:#334155;
  font-size:14px;
  line-height:1.35;
  font-weight:600;
}

.policy-check input{
  width:auto !important;
  min-width:18px;
  height:42px;
  margin-top:1px;
}

.policy-check a{
  color:#376d09;
  font-weight:900;
  text-decoration:underline;
}

.footer-links{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.footer-links a{
  color:#e8f0ff;
  font-weight:700;
  text-decoration:none;
}

.footer-links a:hover{
  text-decoration:underline;
}


/* ===== ОБЫЧНЫЕ СТРАНИЦЫ: ПОЛИТИКА, СОГЛАШЕНИЕ ===== */
.page-card{
  max-width:900px;
  margin:40px auto;
  background:#fff;
  padding:36px;
  border-radius:26px;
  box-shadow:0 12px 35px rgba(23,32,51,.08);
  border:1px solid #edf3e8;
}

.page-card h1{
  font-size:36px;
  line-height:1.2;
  margin:0 0 24px;
  color:var(--text);
}

.page-content{
  font-size:18px;
  line-height:1.65;
  color:#263044;
}

.page-content h2{
  margin-top:32px;
  font-size:26px;
  line-height:1.25;
}

.page-content p{
  margin:0 0 18px;
}

.page-content ul,
.page-content ol{
  padding-left:24px;
  margin:0 0 20px;
}

.page-content li{
  margin-bottom:8px;
}

@media(max-width:700px){
  .page-card{
    margin:24px 12px;
    padding:22px;
    border-radius:20px;
  }

  .page-card h1{
    font-size:30px;
  }

  .page-content{
    font-size:16px;
  }
}


/* ===== МОДАЛЬНОЕ ОКНО ВХОДА И РЕГИСТРАЦИИ ===== */
.auth-open-btn{
  border:1px solid #d8e2d0;
  background:#fff;
  color:#172033;
  border-radius:14px;
  padding:9px 15px;
  font-size:15px;
  font-weight:800;
  cursor:pointer;
}

.auth-open-btn:hover{
  background:#eef8e8;
  color:var(--green-dark);
}

.auth-cta-card{
  text-align:left;
}

.auth-modal{
  display:none;
  position:fixed;
  inset:0;
  z-index:10000;
}

.auth-modal.open{
  display:block;
}

.auth-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.62);
  backdrop-filter:blur(3px);
}

.auth-modal-window{
  position:relative;
  max-width:760px;
  width:calc(100% - 28px);
  margin:7vh auto;
  background:#fff;
  border-radius:28px;
  padding:28px;
  box-shadow:0 28px 90px rgba(0,0,0,.35);
}

.auth-modal-close{
  position:absolute;
  right:-16px;
  top:-16px;
  width:48px;
  height:48px;
  border:0;
  border-radius:50%;
  background:#fff;
  color:#333;
  font-size:36px;
  line-height:1;
  cursor:pointer;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
}

.auth-tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  border-bottom:1px solid #dfe7d8;
  margin-bottom:26px;
}

.auth-tab{
  border:0;
  background:#fff;
  padding:14px 12px;
  font-size:20px;
  font-weight:900;
  color:#7b8190;
  cursor:pointer;
  border-bottom:4px solid transparent;
}

.auth-tab.active{
  color:#172033;
  border-bottom-color:var(--green);
}

.auth-modal-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
}

.auth-modal-panel{
  min-width:0;
}

.auth-modal-panel h3{
  font-size:24px;
  margin:0 0 8px;
}

.auth-modal-panel p{
  color:var(--muted);
  line-height:1.45;
  margin:0 0 20px;
}

.auth-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:8px 0 18px;
  font-size:14px;
}

.auth-row a{
  color:var(--green-dark);
  font-weight:800;
  text-decoration:none;
}

.remember-check{
  display:flex;
  align-items:center;
  gap:8px;
  color:#334155;
  font-weight:700;
}

.remember-check input{
  width:18px;
  height:42px;
  accent-color:var(--green);
}

.auth-submit{
  width:100%;
}

.policy-check.compact{
  font-size:13px;
  margin:10px 0 16px;
}

.map-help-button{
  border:0;
  cursor:pointer;
}

body.auth-modal-open{
  overflow:hidden;
}

@media(max-width:760px){
  .auth-modal-window{
    margin:4vh auto;
    padding:22px;
    max-height:92vh;
    overflow:auto;
  }

  .auth-modal-grid{
    grid-template-columns:1fr;
  }

  .auth-pane{
    display:none;
  }

  .auth-pane.active{
    display:block;
  }

  .auth-modal-close{
    right:10px;
    top:10px;
    width:42px;
    height:42px;
    font-size:32px;
  }
}

/* Новый дизайн окна входа/регистрации */
.auth-modal-backdrop{background:rgba(0,0,0,.58);backdrop-filter:blur(4px)}
.auth-modal-window{max-width:525px;width:calc(100% - 32px);margin:6vh auto;border-radius:28px;padding:28px 38px 24px;box-shadow:0 28px 95px rgba(0,0,0,.34);overflow:visible}
.auth-modal-close{right:-18px;top:-18px;width:50px;height:50px;background:#fff;color:#222;font-size:32px;box-shadow:0 8px 28px rgba(0,0,0,.14)}
.auth-tabs{margin:0 0 24px;border-bottom:1px solid #dfe7d8}
.auth-tab{font-size:14px;padding:0 10px 12px;background:#fff;color:#6f7480;border-bottom:3px solid transparent}
.auth-tab.active{color:#172033;border-bottom-color:var(--green)}
.auth-modal-grid{grid-template-columns:1fr 1fr;gap:36px;align-items:start}
.auth-modal-panel h3,.auth-register-form h3{font-size:18px;margin:0 0 10px;font-weight:900}
.auth-modal-panel p,.auth-register-form p{font-size:13px;line-height:1.45;margin-bottom:18px;color:#5f6b82}
.auth-register-preview{border-left:1px solid #edf1e9;padding-left:36px;min-height:230px}
.auth-modal .field{margin-bottom:12px}
.auth-modal .field label{display:none}
.auth-modal .field input{height:38px;border-radius:7px;border:1px solid #dfe6d8;font-size:12px;padding:9px 12px;background:#fff}
.auth-icon-field{position:relative}
.auth-icon-field input{padding-left:34px!important;padding-right:34px!important}
.auth-user-field:before{content:'👤';position:absolute;left:11px;top:8px;font-size:13px;opacity:.55;z-index:1}
.auth-lock-field:before{content:'🔒';position:absolute;left:11px;top:8px;font-size:13px;opacity:.55;z-index:1}
.auth-lock-field:after{content:'◉';position:absolute;right:12px;top:10px;font-size:12px;opacity:.45}
.auth-row{font-size:11px;margin:8px 0 18px;gap:8px}
.remember-check{gap:7px;font-size:11px;font-weight:700}
.remember-check input{width:14px;height:14px}
.auth-row a{font-size:11px;color:var(--green-dark);text-decoration:underline;font-weight:800}
.auth-submit{height:38px;border-radius:7px;font-size:13px;box-shadow:none}
.secondary-register-btn{height:38px;width:100%;max-width:190px;border:1px solid var(--green-dark);background:#fff;color:var(--green-dark);border-radius:7px;font-weight:900;cursor:pointer;margin-top:35px}
.secondary-register-btn:hover{background:#f2faed}
.auth-pane{display:none}.auth-pane.active{display:grid}.auth-register-form.active{display:block}
.auth-register-form{max-width:420px;margin:0 auto 8px}.auth-register-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.auth-register-form .policy-check.compact{font-size:11px;line-height:1.3}
.auth-register-fields .field-with-hint{
  align-self:start;
}
.auth-register-fields .field-with-hint input{
  margin-bottom:4px;
}
.auth-register-fields .field-hint{
  display:block;
  margin:0 2px 8px;
  font-size:10.5px;
  line-height:1.25;
  color:#6b7280;
}

.auth-illustration{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:18px -8px 12px;border-bottom:2px solid #dbeacc;padding-bottom:8px;color:#356b0b}
.auth-people{font-size:30px;line-height:1;filter:saturate(.75);opacity:.9;white-space:nowrap}.auth-brand{text-align:center;min-width:150px}.auth-brand img{max-width:150px;height:auto;display:block;margin:0 auto 2px}.auth-brand span{font-size:9px;color:#596579;display:block}
.auth-terms-bottom{text-align:center;font-size:10px;line-height:1.45;color:#667085}.auth-terms-bottom a{color:var(--green-dark);font-weight:700;text-decoration:underline}
@media(max-width:760px){.auth-modal-window{margin:5vh auto;padding:24px 20px;max-height:90vh;overflow:auto}.auth-modal-grid{grid-template-columns:1fr;gap:18px}.auth-register-preview{border-left:0;border-top:1px solid #edf1e9;padding-left:0;padding-top:18px;min-height:auto}.auth-illustration{display:none}.auth-register-fields{grid-template-columns:1fr}.auth-pane.active{display:block}}


/* ===== КАТЕГОРИИ НА ГЛАВНОЙ В СТИЛЕ ПРИМЕРА ===== */
.home-categories{
  max-width:1290px;
  margin:34px auto 28px;
  padding:0 18px;
}

.category-search-row{
  display:grid;
  grid-template-columns:220px minmax(0, 1fr);
  gap:14px;
  align-items:center;
  max-width:920px;
  margin:0 auto 18px;
}

.all-categories-btn{
  height:54px;
  border:0;
  border-radius:14px;
  background:#0aa8f2;
  color:#fff;
  font-size:16px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(10,168,242,.18);
}

.home-search-form{
  display:grid;
  grid-template-columns:44px minmax(0,1fr)96px;
  align-items:center;
  height:54px;
  border:2px solid #0aa8f2;
  border-radius:14px;
  overflow:hidden;
  background:#fff;
}

.home-search-form .search-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  color:#717b8e;
  font-size:22px;
  line-height:1;
}

.home-search-form input{
  height:100%;
  border:0;
  outline:0;
  padding:0 8px;
  font-size:16px;
  color:#273044;
}

.home-search-form button{
  height:100%;
  border:0;
  background:#0aa8f2;
  color:#fff;
  font-weight:900;
  font-size:15px;
  cursor:pointer;
}

.category-grid{
  display:grid;
  grid-template-columns:repeat(10, minmax(104px, 1fr));
  gap:10px;
}

.category-card{
  min-height:126px;
  border:1px solid #edf0f4;
  border-radius:16px;
  background:#fff;
  text-decoration:none;
  color:#1d2738;
  padding:16px 10px 12px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  text-align:center;
  box-shadow:0 10px 26px rgba(20,31,51,.05);
  transition:.18s ease;
}

.category-card:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(20,31,51,.10);
  border-color:#d8ead2;
}

.category-card b{
  font-size:34px;
  line-height:1;
  filter:saturate(.95);
}

.category-card span{
  display:block;
  font-size:14px;
  line-height:1.2;
  font-weight:800;
}

@media(max-width:1100px){
  .category-grid{grid-template-columns:repeat(3, 1fr);}
}

@media(max-width:700px){
  .home-categories{margin-top:20px;padding:0 12px;}
  .category-search-row{grid-template-columns:1fr;}
  .category-grid{grid-template-columns:repeat(2, 1fr);}
  .home-search-form{grid-template-columns:36px minmax(0,1fr)78px;}
}

@media(max-width:420px){
  .category-grid{grid-template-columns:1fr;}
}

.field select{
  width:100%;
  border:1px solid #d8e2d0;
  border-radius:14px;
  padding:13px 14px;
  font-size:16px;
  background:#fff;
  color:#273044;
}

.category-card{
  cursor:pointer;
  font-family:inherit;
}

.category-card.active{
  border-color:#79c96b;
  background:#f3fbef;
  box-shadow:0 14px 30px rgba(72, 166, 48, .14);
}

.modal-category{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:0 0 10px;
  padding:7px 10px;
  border-radius:999px;
  background:#f3fbef;
  color:#2f6c22;
  font-size:13px;
  font-weight:900;
}


/* ===== УМЕНЬШЕННАЯ КНОПКА "НАЖМИТЕ НА КАРТУ" ===== */
.map-card .map-help,
.map-card .map-help.map-help-button,
.map-card button.map-help,
.map-card .primary-btn.map-help,
.map-card .map-help-link{
  width:auto !important;
  min-width:0 !important;
  max-width:calc(100% - 40px) !important;
  height:auto !important;
  min-height:0 !important;

  top:62px !important;
  left:50% !important;
  transform:translateX(-50%) !important;

  padding:6px 16px !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:800 !important;

  border-radius:999px !important;
  box-shadow:0 6px 16px rgba(0,0,0,.12) !important;
  white-space:nowrap !important;
}

.map-card .map-help b,
.map-card .map-help.map-help-button b,
.map-card button.map-help b,
.map-card .primary-btn.map-help b,
.map-card .map-help-link b{
  font-size:15px !important;
  line-height:1 !important;
  margin-right:5px !important;
}

@media(max-width:700px){
  .map-card .map-help,
  .map-card .map-help.map-help-button,
  .map-card button.map-help,
  .map-card .primary-btn.map-help,
  .map-card .map-help-link{
    top:10px !important;
    padding:6px 12px !important;
    font-size:12px !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .map-card .map-help b,
  .map-card .map-help.map-help-button b,
  .map-card button.map-help b,
  .map-card .primary-btn.map-help b,
  .map-card .map-help-link b{
    font-size:14px !important;
  }
}


/* ===== ЧАТ МЕЖДУ ПОЛЬЗОВАТЕЛЯМИ ===== */
.messages-page{padding-top:10px}
.messages-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:18px;align-items:start}
.dialogs-list,.chat-panel{background:#fff;border:1px solid #edf3e8;border-radius:26px;box-shadow:0 12px 35px rgba(23,32,51,.08);padding:16px}
.dialogs-list h2{font-size:22px;margin:0 0 12px}
.dialog-item{display:block;text-decoration:none;border:1px solid #edf3e8;border-radius:18px;padding:12px;margin-bottom:10px;background:#f8fcf4;transition:.18s}
.dialog-item:hover,.dialog-item.active{border-color:#79c96b;background:#f3fbef;box-shadow:0 8px 20px rgba(72,166,48,.10)}
.dialog-item b{display:block;font-size:16px;margin-bottom:4px;color:#172033}
.dialog-item span{display:block;font-size:13px;font-weight:800;color:#376d09;margin-bottom:5px}
.dialog-item small{display:block;color:var(--muted);line-height:1.3}
.chat-head{border-bottom:1px solid #edf3e8;padding-bottom:12px;margin-bottom:14px}
.chat-head h2{margin:0 0 4px;font-size:24px}.chat-head p{margin:0;color:var(--muted);font-weight:700}
.chat-messages{display:flex;flex-direction:column;gap:10px;min-height:260px;max-height:520px;overflow:auto;padding:4px 4px 14px}
.chat-bubble{max-width:78%;border-radius:18px;padding:11px 13px;line-height:1.4;box-shadow:0 5px 15px rgba(23,32,51,.06)}
.chat-bubble.me{align-self:flex-end;background:#62b80f;color:#fff;border-bottom-right-radius:6px}
.chat-bubble.other{align-self:flex-start;background:#f1f5ee;color:#172033;border-bottom-left-radius:6px}
.chat-bubble small{display:block;margin-top:6px;font-size:11px;opacity:.75}
.chat-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;border-top:1px solid #edf3e8;padding-top:14px}
.chat-form textarea,.message-author-form textarea{width:100%;min-height:54px;border:1px solid #d8e2d0;border-radius:14px;padding:12px 13px;font-size:15px;resize:vertical;font-family:inherit}
.message-author-form{margin-top:12px;padding-top:12px;border-top:1px solid #edf3e8}
.message-author-form label{display:block;font-weight:900;margin-bottom:7px}
.message-author-form .primary-btn{width:100%;margin-top:8px}
@media(max-width:850px){.messages-layout{grid-template-columns:1fr}.chat-form{grid-template-columns:1fr}.chat-bubble{max-width:92%}}


/* ===== СТРАНИЦА СТАТИСТИКИ ТОЛЬКО ДЛЯ АДМИНА ===== */
.pomogite-stats-page{
  padding-top:34px;
}

.stats-card{
  background:#fff;
  border:1px solid #edf3e8;
  border-radius:28px;
  padding:28px;
  box-shadow:0 12px 35px rgba(23,32,51,.08);
}

.stats-card h1{
  margin:0 0 8px;
  font-size:34px;
  color:var(--text);
}

.stats-note{
  margin:0 0 24px;
  color:var(--muted);
}

.stats-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(160px, 1fr));
  gap:14px;
}

.stats-item{
  background:#f8fcf4;
  border:1px solid #dceccc;
  border-radius:20px;
  padding:18px;
}

.stats-item b{
  display:block;
  font-size:15px;
  line-height:1.25;
  color:#344154;
  margin-bottom:12px;
}

.stats-item strong{
  display:block;
  font-size:34px;
  line-height:1;
  color:#376d09;
}

@media(max-width:900px){
  .stats-grid{
    grid-template-columns:repeat(2, 1fr);
  }
}

@media(max-width:520px){
  .stats-card{
    padding:20px;
    border-radius:22px;
  }

  .stats-grid{
    grid-template-columns:1fr;
  }
}


/* ===== УВЕДОМЛЕНИЯ О НОВЫХ СООБЩЕНИЯХ ===== */
.messages-nav-link{
  position:relative;
  display:inline-flex !important;
  align-items:center;
  gap:6px;
}

.messages-nav-link.has-unread{
  color:#172033 !important;
  background:#fff4f4;
}

.messages-badge{
  min-width:20px;
  height:20px;
  padding:0 6px;
  border-radius:999px;
  background:#e53935;
  color:#fff;
  font-size:12px;
  line-height:20px;
  font-weight:900;
  text-align:center;
  box-shadow:0 4px 10px rgba(229,57,53,.28);
}

.dialog-item.unread{
  border-color:#79c96b;
  background:#f3fbef;
  box-shadow:0 8px 22px rgba(72,166,48,.12);
}

.dialog-item b{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}

.dialog-item b em{
  min-width:22px;
  height:22px;
  padding:0 7px;
  border-radius:999px;
  background:#e53935;
  color:#fff;
  font-style:normal;
  font-size:12px;
  line-height:22px;
  font-weight:900;
  text-align:center;
}


/* ===== ПРОФИЛИ ПОЛЬЗОВАТЕЛЕЙ И ОТЗЫВЫ ===== */
.profile-page{padding-top:30px}
.profile-card{background:#fff;border:1px solid #edf3e8;border-radius:28px;padding:24px;box-shadow:0 12px 35px rgba(23,32,51,.08);margin-bottom:18px}
.profile-head{display:grid;grid-template-columns:auto minmax(0,1fr) 320px;gap:20px;align-items:start}
.profile-avatar img{border-radius:50%;box-shadow:0 8px 22px rgba(23,32,51,.12)}
.profile-main h1{margin:0 0 10px;font-size:34px}
.profile-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.profile-meta span{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#f3fbef;color:#2f6c22;font-size:13px;font-weight:900}
.profile-review-summary{display:inline-flex;align-items:center;gap:10px;border:1px solid #dceccc;background:#f8fcf4;border-radius:18px;padding:10px 14px}
.profile-review-summary strong{font-size:28px;color:#376d09;line-height:1}.profile-review-summary span{font-weight:800;color:var(--muted)}
.profile-message-form textarea{width:100%;min-height:82px;border:1px solid #d8e2d0;border-radius:14px;padding:12px 13px;font-size:15px;resize:vertical;font-family:inherit;margin-bottom:10px}
.profile-message-form .primary-btn{width:100%}
.profile-grid-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}
.profile-card h2{margin:0 0 14px;font-size:26px}
.profile-ads-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
.profile-ad-card{display:block;text-decoration:none;border:1px solid #edf3e8;border-radius:18px;background:#f8fcf4;overflow:hidden;transition:.18s;position:relative}
.profile-ad-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(23,32,51,.10)}
.profile-ad-card img{width:100%;height:105px;object-fit:cover;background:#edf7e8;display:block}.profile-ad-card b{display:block;padding:10px 12px 3px;font-size:15px}.profile-ad-card span{display:block;padding:0 12px 12px;color:var(--muted);font-size:12px;font-weight:800}
.review-form{border:1px solid #dceccc;background:#f8fcf4;border-radius:20px;padding:14px;margin-bottom:16px}.review-form label{display:block;font-weight:900;margin:8px 0 6px}.review-form select,.review-form textarea{width:100%;border:1px solid #d8e2d0;border-radius:14px;padding:12px 13px;font-size:15px;background:#fff;font-family:inherit}.review-form textarea{min-height:90px;resize:vertical}.review-form .primary-btn{width:100%;margin-top:10px}
.reviews-list{display:flex;flex-direction:column;gap:12px}.review-item{border:1px solid #edf3e8;border-radius:18px;background:#fff;padding:14px}.review-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px}.review-top a{font-weight:900;color:#172033;text-decoration:none}.review-top strong{color:#f2a900;letter-spacing:1px}.review-item p{margin:0 0 8px;line-height:1.45}.review-item small{color:var(--muted);font-weight:700}.modal-author a,.modal-helpers a,.chat-head a{color:#376d09;font-weight:900;text-decoration:none}.modal-author a:hover,.modal-helpers a:hover,.chat-head a:hover{text-decoration:underline}
@media(max-width:900px){.profile-head{grid-template-columns:1fr}.profile-grid-section{grid-template-columns:1fr}}


/* ===== КОРЗИНА В ПРОФИЛЕ ДЛЯ СВОИХ ОБЪЯВЛЕНИЙ ===== */
.profile-ad-link{
  display:block;
  color:inherit;
  text-decoration:none;
}

.profile-delete-ad-form{
  position:absolute;
  top:8px;
  right:8px;
  z-index:3;
  margin:0;
}

.profile-delete-ad-form button{
  width:34px;
  height:34px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.94);
  color:#a31212;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:16px;
  box-shadow:0 6px 16px rgba(23,32,51,.15);
}

.profile-delete-ad-form button:hover{
  background:#fff0f0;
  transform:translateY(-1px);
}


/* ===== ПОШАГОВОЕ ДОБАВЛЕНИЕ ОБЪЯВЛЕНИЯ ===== */
.add-announcement-section.is-hidden{
  display:none !important;
}

.map-help-button.is-selecting-place{
  background:#4d9708 !important;
}


/* ===== ПРЕЗЕНТАБЕЛЬНОЕ ОКНО ОБЪЯВЛЕНИЯ ===== */
#announcementModal .modal-window{
  max-width:900px !important;
  width:calc(100% - 36px) !important;
  max-height:86vh !important;
  margin:7vh auto !important;
  padding:26px !important;
  border-radius:28px !important;
  display:grid !important;
  grid-template-columns:minmax(280px, 420px) minmax(300px, 1fr) !important;
  gap:26px 34px !important;
  align-items:start !important;
  overflow:auto !important;
}

#announcementModal .modal-close{
  position:absolute !important;
  right:18px !important;
  top:16px !important;
  width:36px !important;
  height:36px !important;
  border-radius:50% !important;
  background:#fff !important;
  color:#1f2937 !important;
  font-size:34px !important;
  box-shadow:none !important;
  z-index:3 !important;
}

#announcementModal .modal-gallery{
  grid-row:1 / span 8;
  margin:0 !important;
}

#announcementModal .modal-image{
  width:100% !important;
  height:430px !important;
  max-height:none !important;
  object-fit:cover !important;
  border-radius:20px !important;
  background:#edf8e8 !important;
  display:block !important;
}

#announcementModal .modal-image[src=""],
#announcementModal .modal-image:not([src]){
  min-height:430px;
}

#announcementModal .modal-thumbs{
  display:flex !important;
  gap:14px !important;
  margin-top:16px !important;
  flex-wrap:wrap !important;
}

#announcementModal .modal-thumb{
  width:92px !important;
  height:74px !important;
  border-radius:12px !important;
  border:2px solid transparent !important;
  background:#edf8e8 !important;
}

#announcementModal .modal-thumb.active{
  border-color:var(--green) !important;
  box-shadow:0 8px 18px rgba(98,184,15,.18) !important;
}

#announcementModal .modal-category{
  justify-self:start;
  margin:0 0 4px !important;
  padding:8px 12px !important;
  font-size:13px !important;
  background:#eef8e8 !important;
}

#announcementModal .modal-title{
  margin:0 42px 4px 0 !important;
  font-size:34px !important;
  line-height:1.12 !important;
  color:#172033 !important;
}

#announcementModal .modal-status{
  margin:0 0 6px !important;
  color:#344054 !important;
  font-size:17px !important;
}

#announcementModal .modal-author{
  color:#344054;
  line-height:1.45;
  font-size:15px;
}

#announcementModal .modal-author a{
  color:#347109;
  font-weight:900;
  text-decoration:none;
}

#announcementModal .modal-description{
  color:#172033 !important;
  font-size:16px !important;
  line-height:1.55 !important;
  white-space:pre-line !important;
  margin:4px 0 6px !important;
}

#announcementModal .modal-helpers:empty{display:none;}
#announcementModal .modal-helpers{
  padding:12px 14px;
  border:1px solid #dbeccc;
  border-radius:16px;
  background:#fbfef8;
  line-height:1.45;
}

#announcementModal .contact-box{
  margin:8px 0 0 !important;
  padding:14px 16px !important;
  border-radius:16px !important;
  background:#f8fcf4 !important;
  display:grid !important;
  grid-template-columns:42px 1fr 44px !important;
  gap:12px !important;
  align-items:center !important;
}

#announcementModal .modal-contact-icon{
  width:42px;
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--green);
  color:#fff;
  font-size:22px;
  font-weight:900;
}

#announcementModal .modal-contact-text span{
  display:block;
  color:#667085;
  font-size:14px;
  margin-bottom:3px;
}

#announcementModal .contact-phone{
  color:#347109 !important;
  font-size:18px;
  font-weight:900;
  text-decoration:none;
}

#announcementModal .modal-copy-phone{
  width:42px;
  height:42px;
  border:1px solid #d8e8cf;
  border-radius:12px;
  background:#fff;
  color:#347109;
  font-size:22px;
  font-weight:900;
  cursor:pointer;
}

#announcementModal .modal-info-box{
  display:grid;
  gap:10px;
  margin:10px 0 0;
  padding:16px;
  border:1px solid #e3eadf;
  border-radius:16px;
  background:#fff;
}

#announcementModal .modal-info-box div{
  display:grid;
  grid-template-columns:150px 1fr;
  gap:10px;
  align-items:start;
}

#announcementModal .modal-info-box b{
  color:#596579;
  font-size:14px;
}

#announcementModal .modal-info-box span{
  color:#172033;
  font-size:15px;
}

#announcementModal .modal-edit-box{
  margin-top:10px !important;
  display:grid !important;
  gap:12px !important;
}

#announcementModal .modal-edit-box form{
  margin:0 !important;
}

#announcementModal .modal-action-btn,
#announcementModal .modal-edit-box .primary-btn,
#announcementModal .modal-edit-box .secondary-btn,
#announcementModal .modal-edit-box .danger-btn{
  width:100% !important;
  min-height:54px !important;
  padding:14px 18px !important;
  border-radius:14px !important;
  font-size:16px !important;
  line-height:1.2 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}

#announcementModal .modal-edit-box .secondary-btn{
  background:#eef8e8 !important;
  color:#347109 !important;
}

#announcementModal .modal-edit-box .danger-btn{
  background:#fff0f0 !important;
  color:#b42318 !important;
  border:1px solid #ffd0d0 !important;
}

#announcementModal .message-author-form label,
#announcementModal .helper-form label{
  display:block;
  font-weight:800;
  margin-bottom:8px;
}

#announcementModal .message-author-form textarea,
#announcementModal .helper-form input{
  width:100%;
  border:1px solid #d8e2d0;
  border-radius:14px;
  padding:12px 14px;
  font-size:15px;
  margin-bottom:10px;
}

#announcementModal .message-author-form textarea{
  min-height:96px;
  resize:vertical;
}

@media(max-width:820px){
  #announcementModal .modal-window{
    grid-template-columns:1fr !important;
    gap:18px !important;
    margin:3vh auto !important;
    max-height:94vh !important;
    padding:18px !important;
  }
  #announcementModal .modal-gallery{
    grid-row:auto;
  }
  #announcementModal .modal-image{
    height:300px !important;
  }
  #announcementModal .modal-title{
    font-size:28px !important;
  }
  #announcementModal .modal-info-box div{
    grid-template-columns:1fr;
    gap:3px;
  }
}


/* ===== МАЛЕНЬКОЕ ОКНО НА КАРТЕ + КОМПАКТНОЕ БОЛЬШОЕ ОКНО ===== */
.map-balloon-card{
  width:230px;
  font-family:Arial, sans-serif;
  color:#172033;
}

.map-balloon-photo{
  width:100%;
  height:126px;
  border:0;
  padding:0;
  border-radius:12px;
  background:#edf8e8;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  color:#356b0b;
  font-weight:900;
}

.map-balloon-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.map-balloon-title{
  display:block;
  width:100%;
  border:0;
  background:transparent;
  padding:10px 0 4px;
  text-align:left;
  color:#172033;
  font-size:16px;
  font-weight:900;
  cursor:pointer;
}

.map-balloon-title:hover{
  color:#4d9708;
  text-decoration:underline;
}

.map-balloon-meta{
  color:#536172;
  font-size:13px;
  line-height:1.35;
  margin-bottom:6px;
}


.map-balloon-status{
  display:block;
  width:max-content;
  max-width:100%;
  margin:0 0 6px;
  padding:3px 9px;
  border:1px solid #ffd08a;
  border-radius:999px;
  background:#fff7ed;
  color:#9a4b00;
  font-size:13px;
  line-height:1.2;
  font-weight:900;
}

.map-balloon-desc{
  color:#172033;
  font-size:13px;
  line-height:1.35;
}

.map-balloon-phone{
  margin-top:8px;
  color:#347109;
  font-weight:900;
  font-size:13px;
}

/* Делаем большое окно объявления аккуратнее и ниже по высоте */
#announcementModal .modal-window{
  max-width:820px !important;
  max-height:82vh !important;
  margin:6vh auto !important;
  padding:24px !important;
  grid-template-columns:minmax(260px, 380px) minmax(300px, 1fr) !important;
  gap:22px 30px !important;
}

#announcementModal .modal-image{
  height:340px !important;
}

#announcementModal .modal-image[src=""],
#announcementModal .modal-image:not([src]){
  min-height:340px !important;
}

#announcementModal .modal-title{
  font-size:30px !important;
}

#announcementModal .modal-action-btn,
#announcementModal .modal-edit-box .primary-btn,
#announcementModal .modal-edit-box .secondary-btn,
#announcementModal .modal-edit-box .danger-btn{
  min-height:48px !important;
  padding:12px 16px !important;
  font-size:15px !important;
}

@media(max-width:820px){
  #announcementModal .modal-window{
    max-width:calc(100% - 24px) !important;
    grid-template-columns:1fr !important;
    max-height:88vh !important;
    margin:4vh auto !important;
  }

  #announcementModal .modal-image{
    height:280px !important;
  }

  #announcementModal .modal-gallery{
    grid-row:auto !important;
  }
}


/* ===== МОБИЛЬНАЯ АДАПТАЦИЯ: ГЛАВНАЯ, КАРТА, ПРОФИЛЬ, ЧАТ ===== */
@media(max-width:900px){
  html, body{
    overflow-x:hidden;
  }

  .site-header{
    position:sticky;
    top:0;
  }

  .header-inner{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    padding:8px 12px !important;
    gap:10px !important;
    align-items:flex-start !important;
  }

  .logo,
  .logo-full{
    height:48px !important;
    max-width:100%;
  }

  .logo img,
  .logo-full img{
    height:48px !important;
    max-height:48px !important;
  }

  .logo span,
  .logo-full span{
    font-size:24px !important;
  }

  .nav{
    width:100%;
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto;
    overflow-y:hidden;
    justify-content:flex-start !important;
    gap:8px !important;
    padding-bottom:4px;
    -webkit-overflow-scrolling:touch;
  }

  .nav a,
  .nav button,
  .nav .primary-btn,
  .nav .secondary-btn,
  .nav .auth-open-btn{
    flex:0 0 auto;
    white-space:nowrap;
    font-size:13px !important;
    padding:8px 10px !important;
    border-radius:999px !important;
  }

  .hero{
    margin:16px auto 10px !important;
    padding:0 12px !important;
  }

  .hero h1{
    font-size:25px !important;
    line-height:1.18 !important;
  }

  .hero p{
    font-size:15px !important;
  }

  .wrap{
    padding:0 10px 28px !important;
  }

  .home-categories{
    margin:16px auto 16px !important;
    padding:0 10px !important;
  }

  .category-search-row{
    grid-template-columns:1fr !important;
    max-width:none !important;
    gap:10px !important;
    margin-bottom:12px !important;
  }

  .all-categories-btn,
  .home-search-form{
    height:46px !important;
    border-radius:12px !important;
  }

  .home-search-form{
    grid-template-columns:38px minmax(0,1fr)74px !important;
  }

  .home-search-form input{
    font-size:14px !important;
  }

  .home-search-form button{
    font-size:13px !important;
  }

  .category-grid{
    display:flex !important;
    overflow-x:auto;
    gap:10px !important;
    padding:2px 2px 10px;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
  }

  .category-card{
    flex:0 0 128px;
    min-height:104px !important;
    padding:12px 8px !important;
    border-radius:14px !important;
    scroll-snap-align:start;
  }

  .category-card b{
    font-size:28px !important;
  }

  .category-card span{
    font-size:12px !important;
  }

  .map-area-layout{
    grid-template-columns:1fr !important;
    gap:12px !important;
    margin-top:12px !important;
  }

  .map-card{
    border-radius:18px !important;
    padding:8px !important;
  }

  #map{
    height:430px !important;
    border-radius:14px !important;
  }

  .map-card .map-help,
  .map-card .map-help.map-help-button,
  .map-card button.map-help,
  .map-card .primary-btn.map-help,
  .map-card .map-help-link{
    top:54px !important;
    max-width:calc(100% - 24px) !important;
    padding:7px 12px !important;
    font-size:12px !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .visible-announcements-panel{
    border-radius:18px !important;
    padding:12px !important;
    max-height:none !important;
  }

  .visible-announcements-head h2{
    font-size:21px !important;
  }

  .visible-announcements-list{
    display:grid !important;
    grid-template-columns:1fr !important;
  }

  .visible-announcement-card{
    grid-template-columns:82px minmax(0,1fr) !important;
    border-radius:15px !important;
  }

  .visible-announcement-card img{
    width:82px !important;
    height:68px !important;
  }

  .announcement-grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .form-card,
  .auth-card,
  .page-card{
    padding:16px !important;
    border-radius:18px !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  .form-card h2,
  .auth-card h2,
  .page-card h1{
    font-size:24px !important;
  }

  .field input,
  .field textarea,
  .field select{
    font-size:16px !important;
    padding:12px !important;
  }

  .primary-btn,
  .secondary-btn,
  .danger-btn{
    min-height:42px;
  }
}

@media(max-width:620px){
  #map{
    height:390px !important;
  }

  .modal-window,
  #announcementModal .modal-window,
  .auth-modal-window{
    width:calc(100% - 18px) !important;
    max-width:calc(100% - 18px) !important;
    margin:9px auto !important;
    max-height:calc(100vh - 18px) !important;
    border-radius:18px !important;
    padding:14px !important;
    overflow:auto !important;
  }

  #announcementModal .modal-window{
    display:block !important;
  }

  #announcementModal .modal-image,
  .modal-image{
    height:230px !important;
    max-height:230px !important;
    border-radius:14px !important;
  }

  #announcementModal .modal-title,
  .modal-title{
    font-size:23px !important;
    line-height:1.15 !important;
  }

  .modal-close,
  .auth-modal-close{
    right:8px !important;
    top:8px !important;
    width:38px !important;
    height:38px !important;
    font-size:28px !important;
  }

  .modal-thumbs{
    gap:7px !important;
    overflow-x:auto;
  }

  .modal-thumb{
    flex:0 0 62px !important;
    width:62px !important;
    height:50px !important;
  }

  #announcementModal .modal-action-btn,
  #announcementModal .modal-edit-box .primary-btn,
  #announcementModal .modal-edit-box .secondary-btn,
  #announcementModal .modal-edit-box .danger-btn,
  .modal-edit-box .primary-btn,
  .modal-edit-box .secondary-btn,
  .modal-edit-box .danger-btn{
    width:100% !important;
    min-height:42px !important;
    padding:10px 12px !important;
    font-size:14px !important;
    margin:5px 0 !important;
  }

  .auth-modal-grid,
  .auth-register-fields{
    grid-template-columns:1fr !important;
  }

  .auth-tabs{
    margin-bottom:16px !important;
  }

  .auth-tab{
    font-size:13px !important;
  }

  .auth-register-preview,
  .auth-illustration{
    display:none !important;
  }

  .map-balloon-card{
    width:205px !important;
  }

  .map-balloon-photo{
    height:105px !important;
  }

  .map-balloon-title{
    font-size:15px !important;
  }

  /* Универсальная адаптация профилей и статистики */
  .profile-layout,
  .user-profile-layout,
  .profile-grid,
  .stats-grid,
  .admin-stats-grid,
  .reviews-grid,
  .messages-layout,
  .chat-layout{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .profile-card,
  .profile-main,
  .profile-sidebar,
  .stats-card,
  .review-card,
  .message-card,
  .chat-card{
    border-radius:18px !important;
    padding:14px !important;
  }

  table{
    display:block;
    width:100%;
    overflow-x:auto;
  }
}

@media(max-width:420px){
  .logo span,
  .logo-full span{
    font-size:20px !important;
  }

  .logo img,
  .logo-full img{
    height:42px !important;
    max-height:42px !important;
  }

  .nav a,
  .nav button,
  .nav .primary-btn,
  .nav .secondary-btn,
  .nav .auth-open-btn{
    font-size:12px !important;
    padding:7px 9px !important;
  }

  .hero h1{
    font-size:22px !important;
  }

  #map{
    height:360px !important;
  }

  .category-card{
    flex-basis:116px !important;
    min-height:96px !important;
  }

  .visible-announcement-card{
    grid-template-columns:72px minmax(0,1fr) !important;
  }

  .visible-announcement-card img{
    width:72px !important;
    height:62px !important;
  }
}

/* ===== FIX: мобильное окно входа и компактные категории ===== */
@media (max-width: 700px){
  /* Крестик закрытия окна входа/регистрации — внутри окна */
  .auth-modal-window{
    position:relative !important;
    width:calc(100% - 24px) !important;
    max-width:calc(100% - 24px) !important;
    margin:18px auto !important;
    padding:22px 18px 20px !important;
    border-radius:24px !important;
    overflow:visible !important;
  }

  .auth-modal-close{
    right:10px !important;
    top:10px !important;
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
    min-height:36px !important;
    font-size:26px !important;
    line-height:36px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#ffffff !important;
    color:#172033 !important;
    box-shadow:0 6px 18px rgba(0,0,0,.14) !important;
    z-index:20 !important;
  }

  .auth-tabs{
    padding-right:38px !important;
  }

  /* Категории на телефоне: компактная сетка, а не длинные большие блоки */
  .home-categories{
    margin:18px auto 18px !important;
    padding:0 12px !important;
  }

  .category-grid{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    gap:8px !important;
  }

  .category-card{
    min-height:86px !important;
    height:auto !important;
    padding:10px 6px !important;
    border-radius:14px !important;
    gap:6px !important;
    box-shadow:0 6px 18px rgba(20,31,51,.05) !important;
  }

  .category-card b{
    font-size:26px !important;
    line-height:1 !important;
  }

  .category-card span{
    font-size:12px !important;
    line-height:1.12 !important;
    font-weight:800 !important;
  }
}

@media (max-width: 420px){
  .category-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }

  .category-card{
    min-height:82px !important;
    padding:9px 6px !important;
  }

  .category-card b{
    font-size:24px !important;
  }

  .category-card span{
    font-size:12px !important;
  }
}



/* ===== FIX: компактные карточки "Объявления рядом" на телефоне ===== */
@media (max-width: 700px){
  .visible-announcements-panel{
    padding:16px !important;
    border-radius:22px !important;
    max-height:none !important;
    overflow:visible !important;
  }

  .visible-announcements-head h2{
    font-size:24px !important;
    line-height:1.15 !important;
  }

  .visible-announcements-head p{
    font-size:14px !important;
  }

  .visible-announcements-list{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
  }

  .visible-announcement-card{
    display:grid !important;
    grid-template-columns:76px minmax(0, 1fr) !important;
    gap:10px !important;
    align-items:center !important;
    width:100% !important;
    min-height:94px !important;
    padding:9px !important;
    border-radius:16px !important;
    text-align:left !important;
    overflow:hidden !important;
  }

  .visible-announcement-card img{
    width:76px !important;
    height:68px !important;
    border-radius:14px !important;
    object-fit:cover !important;
    display:block !important;
  }

  .visible-dog-content,
  .visible-announcement-card > span{
    min-width:0 !important;
    display:block !important;
  }

  .visible-announcement-card b{
    display:block !important;
    font-size:15px !important;
    line-height:1.15 !important;
    margin:0 0 5px !important;
    white-space:normal !important;
    word-break:break-word !important;
  }

  .visible-announcement-card small{
    display:block !important;
    font-size:12px !important;
    line-height:1.25 !important;
    color:#657083 !important;
    max-height:46px !important;
    overflow:hidden !important;
  }

  .visible-announcement-card .mini-edit{
    grid-column:1 / -1 !important;
    min-height:30px !important;
    padding:6px 10px !important;
    font-size:12px !important;
    border-radius:999px !important;
  }
}

@media (max-width: 420px){
  .visible-announcement-card{
    grid-template-columns:70px minmax(0, 1fr) !important;
    min-height:88px !important;
    padding:8px !important;
  }

  .visible-announcement-card img{
    width:70px !important;
    height:62px !important;
  }

  .visible-announcement-card b{
    font-size:14px !important;
  }

  .visible-announcement-card small{
    font-size:11px !important;
    max-height:42px !important;
  }
}


/* ===== ПОДКАТЕГОРИИ И СРОЧНЫЕ ОБЪЯВЛЕНИЯ ===== */
.urgent-filter-row{
  max-width:920px;
  margin:0 auto 14px;
}
.urgent-filter-btn{
  width:100%;
  min-height:48px;
  border:0;
  border-radius:16px;
  background:#fff2f2;
  color:#b91c1c;
  font-size:17px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(185,28,28,.10);
  border:1px solid #ffd3d3;
}
.urgent-filter-btn:hover,.urgent-filter-btn.active{background:#ef4444;color:#fff;border-color:#ef4444}
.category-menu{position:relative;min-width:0}
.category-card em{
  display:block;
  font-size:11px;
  line-height:1;
  font-style:normal;
  color:#7a8494;
  font-weight:800;
  margin-top:2px;
}
.subcategory-dropdown{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 18px);
  display:none;
  z-index:25;
  background:#fff;
  border:1px solid #dfe9d8;
  border-radius:16px;
  box-shadow:0 18px 42px rgba(23,32,51,.16);
  padding:8px;
}
.category-menu:hover .subcategory-dropdown,
.category-menu:focus-within .subcategory-dropdown{display:block}
.subcategory-dropdown button{
  width:100%;
  border:0;
  background:#fff;
  border-radius:10px;
  padding:9px 10px;
  text-align:left;
  color:#1d2738;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
}
.subcategory-dropdown button:hover,.subcategory-dropdown button.active{background:#f3fbef;color:#2f6c22}
.urgent-check{
  display:flex;
  gap:10px;
  align-items:center;
  margin:8px 0 16px;
  padding:12px 14px;
  border-radius:14px;
  background:#fff2f2;
  border:1px solid #ffd3d3;
  color:#9f1239;
  font-size:15px;
  line-height:1.3;
  font-weight:900;
}
.urgent-check input{width:18px;height:42px;accent-color:#ef4444}
.modal-status.urgent{background:#fff1f2;color:#b91c1c;border-color:#fecdd3}
.visible-announcement-card.is-urgent{border-color:#fecaca;background:#fff7f7}
.visible-announcement-card.is-urgent b:before{content:'🔴 ';}
.map-balloon-meta{font-weight:800}

@media(max-width:700px){
  .urgent-filter-row{padding:0 12px;margin-bottom:10px}
  .urgent-filter-btn{min-height:42px;font-size:15px;border-radius:14px}
  .category-grid{grid-template-columns:repeat(2, minmax(0,1fr)) !important;}
  .category-menu{position:relative}
  .category-card em{font-size:10px}
  .subcategory-dropdown{
    position:static;
    display:none;
    margin-top:6px;
    box-shadow:none;
    border-radius:12px;
  }
  .category-menu:focus-within .subcategory-dropdown{display:block}
  .subcategory-dropdown button{font-size:12px;padding:8px}
}


/* ===== ПРЕЗЕНТАБЕЛЬНЫЙ ШРИФТ И АККУРАТНЫЕ ПОДКАТЕГОРИИ ===== */
:root{
  --ui-font:'Inter', Arial, sans-serif;
  --heading-font:'Manrope', 'Inter', Arial, sans-serif;
}

body,
button,
input,
select,
textarea{
  font-family:var(--ui-font) !important;
}

h1,h2,h3,
.hero h1,
.section h2,
.visible-announcements-head h2,
.modal-title,
.auth-modal-panel h3,
.auth-register-form h3,
.page-card h1,
.category-card span,
.all-categories-btn,
.urgent-filter-btn{
  font-family:var(--heading-font) !important;
  letter-spacing:-.02em;
}

.hero h1{
  font-weight:800 !important;
}

.category-grid{
  align-items:start !important;
}

.category-menu{
  position:relative !important;
  overflow:visible !important;
  z-index:1;
}

.category-menu:hover,
.category-menu:focus-within{
  z-index:80;
}

.category-card{
  border-radius:18px !important;
  font-weight:700 !important;
}

.category-card span{
  font-size:14px !important;
  font-weight:800 !important;
  line-height:1.15 !important;
}

.category-card em{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  align-self:center;
  margin-top:3px !important;
  padding:4px 8px;
  border-radius:999px;
  background:#f2f7ee;
  color:#64748b !important;
  font-size:10px !important;
  font-weight:800 !important;
  line-height:1 !important;
}

/* Шторка подкатегорий: шире, аккуратнее, не ломает слова и не вылезает некрасиво */
.subcategory-dropdown{
  left:50% !important;
  right:auto !important;
  top:calc(100% + 10px) !important;
  transform:translateX(-50%);
  width:244px !important;
  min-width:244px !important;
  max-width:244px !important;
  padding:10px !important;
  border-radius:18px !important;
  border:1px solid #dfe9d8 !important;
  background:#fff !important;
  box-shadow:0 18px 45px rgba(23,32,51,.14) !important;
}

.subcategory-dropdown:before{
  content:'';
  position:absolute;
  top:-7px;
  left:50%;
  width:14px;
  height:14px;
  transform:translateX(-50%) rotate(45deg);
  background:#fff;
  border-left:1px solid #dfe9d8;
  border-top:1px solid #dfe9d8;
}

.subcategory-dropdown button{
  position:relative;
  display:flex !important;
  align-items:flex-start;
  gap:8px;
  width:100% !important;
  padding:10px 11px !important;
  border-radius:12px !important;
  font-family:var(--ui-font) !important;
  font-size:13px !important;
  font-weight:650 !important;
  line-height:1.25 !important;
  color:#263044 !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:anywhere !important;
}

.subcategory-dropdown button:before{
  content:'•';
  flex:0 0 auto;
  color:var(--green);
  font-size:18px;
  line-height:.95;
}

.subcategory-dropdown button:hover,
.subcategory-dropdown button.active{
  background:#f3fbef !important;
  color:#2f6c22 !important;
}

/* Чтобы первая и последняя шторки не выходили за экран */
.category-menu:first-child .subcategory-dropdown,
.category-menu:nth-child(2) .subcategory-dropdown{
  left:0 !important;
  transform:none !important;
}

.category-menu:first-child .subcategory-dropdown:before,
.category-menu:nth-child(2) .subcategory-dropdown:before{
  left:42px;
  transform:rotate(45deg);
}

.category-menu:nth-last-child(1) .subcategory-dropdown,
.category-menu:nth-last-child(2) .subcategory-dropdown{
  left:auto !important;
  right:0 !important;
  transform:none !important;
}

.category-menu:nth-last-child(1) .subcategory-dropdown:before,
.category-menu:nth-last-child(2) .subcategory-dropdown:before{
  left:auto;
  right:42px;
  transform:rotate(45deg);
}

/* Блок срочных объявлений */
.urgent-filter-row{
  max-width:920px !important;
  margin:0 auto 14px !important;
}

.urgent-filter-btn{
  min-height:46px !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,#fff8f8 0%, #fff0f0 100%) !important;
  border:1px solid #ffcaca !important;
  color:#b91c1c !important;
  font-family:var(--heading-font) !important;
  font-size:16px !important;
  font-weight:850 !important;
  letter-spacing:.01em;
  box-shadow:0 10px 24px rgba(185,28,28,.08) !important;
}

.urgent-filter-btn:hover,
.urgent-filter-btn.active{
  background:linear-gradient(180deg,#ef4444 0%, #dc2626 100%) !important;
  color:#fff !important;
  border-color:#dc2626 !important;
}

/* Планшеты */
@media(max-width:1100px){
  .subcategory-dropdown{
    width:230px !important;
    min-width:230px !important;
    max-width:230px !important;
  }
}

/* Телефон: подкатегории раскрываются аккуратным блоком под карточкой */
@media(max-width:700px){
  .category-card span{
    font-size:12px !important;
    line-height:1.15 !important;
  }

  .category-card em{
    font-size:9px !important;
    padding:3px 7px !important;
  }

  .subcategory-dropdown{
    position:static !important;
    left:auto !important;
    right:auto !important;
    transform:none !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin-top:7px !important;
    padding:8px !important;
    border-radius:14px !important;
    box-shadow:0 8px 20px rgba(23,32,51,.08) !important;
  }

  .subcategory-dropdown:before{
    display:none !important;
  }

  .subcategory-dropdown button{
    font-size:12px !important;
    padding:8px 9px !important;
    border-radius:10px !important;
  }

  .urgent-filter-btn{
    min-height:40px !important;
    font-size:14px !important;
    border-radius:14px !important;
  }
}

/* ===== НОВАЯ ГЛАВНАЯ: ПОМОЩЬ РЯДОМ ===== */
.site-header{background:#fff;border-bottom:1px solid #e8eee3;box-shadow:0 4px 18px rgba(23,32,51,.04)}
.header-inner{max-width:1240px!important;height:92px!important;min-height:92px!important;padding:10px 22px!important;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo-full img,.logo img{height:105px!important;max-height:105px!important;width:auto!important;object-fit:contain!important}.nav{gap:14px}.nav a{font-size:15px}.auth-open-btn{height:44px;border-radius:12px}.primary-btn{height:44px;border-radius:12px;background:linear-gradient(180deg,#55bd0d,#23830b)!important}
.home-redesign{max-width:1240px;margin:28px auto 0;padding:0 18px}.home-hero-shell{display:grid;grid-template-columns:370px minmax(0,1fr);gap:28px;align-items:stretch;margin-bottom:28px}.home-hero-copy{padding:20px 0}.home-hero-copy h1{font-family:var(--heading-font, Manrope, Arial, sans-serif);font-size:48px;line-height:1.08;margin:0 0 8px;color:#171b2a}.home-hero-copy h1 span{color:#1f8b1d}.home-hero-subtitle{font-size:22px;margin:0 0 22px;color:#303746}.home-hero-text{font-size:17px;line-height:1.42;max-width:330px;margin:0 0 24px;color:#1f2937}.home-hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero-btn{border:0;border-radius:10px;padding:14px 22px;font-size:16px;font-weight:850;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;box-shadow:0 10px 20px rgba(23,32,51,.10)}.hero-btn-need{background:linear-gradient(180deg,#ff9500,#e66d00);color:#fff}.hero-btn-help{background:linear-gradient(180deg,#2f9f25,#12690f);color:#fff}.home-search-panel{background:#fff;border:1px solid #e5eadf;border-radius:18px;padding:20px 22px;box-shadow:0 12px 30px rgba(23,32,51,.06);align-self:center}.home-main-search{display:grid;grid-template-columns:48px minmax(0,1fr)210px 120px;align-items:center;height:58px;border:1px solid #d9e4d3;border-radius:12px;overflow:hidden;background:#fff;margin-bottom:18px}.home-main-search-icon{font-size:28px;color:#657083;text-align:center}.home-main-search input,.home-main-search select{height:100%;border:0;border-left:1px solid #edf1e8;outline:0;padding:0 16px;font-size:16px;background:#fff;color:#273044}.home-main-search input{border-left:0}.home-main-search button{height:100%;border:0;background:linear-gradient(180deg,#54b80f,#23830b);color:#fff;font-weight:900;font-size:16px;cursor:pointer}.home-quick-filters{display:flex;gap:10px;flex-wrap:wrap}.home-quick-filters button{border:1px solid #e2eadb;border-radius:10px;background:#fff;padding:11px 16px;font-weight:750;font-size:14px;cursor:pointer;color:#172033}.home-quick-filters button:hover,.home-quick-filters button.active{border-color:#6fc74e;background:#f1faec;color:#236c0e}.home-urgent-row{max-width:none!important;margin:0 0 26px!important}.home-urgent-row .urgent-filter-btn{width:100%;min-height:52px!important;font-size:18px!important;border-radius:14px!important}.home-big-categories{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px;margin-bottom:22px}.home-big-category{min-height:170px;border:1px solid #e5eadf;border-radius:16px;background:#fff;text-align:center;padding:18px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;box-shadow:0 10px 24px rgba(23,32,51,.05);cursor:pointer;transition:.18s;color:#172033}.home-big-category:hover,.home-big-category.active{transform:translateY(-2px);border-color:#6fc74e;background:linear-gradient(180deg,#fff,#f4fbef)}.home-big-icon{width:62px;height:62px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eef8e8;font-size:30px}.home-big-category strong{font-size:18px;line-height:1.1}.home-big-category small{font-size:13px;line-height:1.35;color:#4b5563;min-height:36px}.home-big-category em{font-style:normal;font-size:12px;font-weight:850;color:#24710e;background:#eaf7e4;border:1px solid #d7ecd1;border-radius:8px;padding:6px 10px}.home-content-row{display:grid;grid-template-columns:minmax(0,1fr)310px;gap:18px;margin:8px 0 28px}.home-latest-help,.home-trust-card,.home-how-project{background:#fff;border:1px solid #e8eee3;border-radius:18px;box-shadow:0 10px 24px rgba(23,32,51,.05)}.home-latest-help{padding:16px}.home-section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.home-section-head h2,.home-trust-card h2{margin:0;font-size:20px}.home-section-head a{font-weight:800;text-decoration:none;color:#25780f}.home-latest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.home-latest-card{display:flex;flex-direction:column;align-items:flex-start;border:1px solid #e8eee3;background:#fff;border-radius:14px;overflow:hidden;padding:0;text-align:left;cursor:pointer}.home-latest-photo{width:100%;height:126px;background:#eef8e8;display:flex;align-items:center;justify-content:center;color:#35740e;font-weight:900}.home-latest-photo img{width:100%;height:100%;object-fit:cover}.home-latest-badge{margin:10px 10px 0;padding:5px 8px;border-radius:8px;background:#edf7e9;color:#236c0e;font-size:12px;font-weight:800}.home-latest-card strong{padding:8px 10px 0;font-size:16px;line-height:1.2}.home-latest-card small{padding:8px 10px;color:#586174}.home-latest-more{margin:0 10px 12px;width:calc(100% - 20px);text-align:center;border:1px solid #e5eadf;border-radius:8px;padding:8px 10px;font-weight:800}.home-trust-card{padding:16px}.home-trust-card ul{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-direction:column;gap:14px}.home-trust-card li{display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:start}.home-trust-card li span{grid-row:1/3;width:36px;height:36px;border-radius:50%;background:#eef8e8;display:flex;align-items:center;justify-content:center}.home-trust-card b{font-size:15px}.home-trust-card small{display:block;color:#657083;margin-top:2px}.home-how-project{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:16px;margin-bottom:28px}.home-how-card{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:14px;background:#f8fcf4}.home-how-card b{font-size:16px}.home-how-card span{font-size:14px;color:#657083}.map-title-section{margin-top:14px!important}.map-title-section h1{font-size:36px!important}.map-title-section p{font-size:17px!important}

@media(max-width:1100px){.home-hero-shell{grid-template-columns:1fr}.home-big-categories{grid-template-columns:repeat(3,1fr)}.home-content-row{grid-template-columns:1fr}.home-main-search{grid-template-columns:44px minmax(0,1fr)160px 100px}.home-latest-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.header-inner{height:auto!important;min-height:0!important}.logo-full img,.logo img{height:70px!important;max-height:70px!important}.home-redesign{margin-top:18px;padding:0 12px}.home-hero-copy h1{font-size:34px}.home-hero-subtitle{font-size:18px}.home-main-search{grid-template-columns:38px minmax(0,1fr);height:auto;border-radius:14px}.home-main-search input{height:48px}.home-main-search select,.home-main-search button{grid-column:1/-1;height:44px;border-left:0;border-top:1px solid #edf1e8}.home-big-categories{grid-template-columns:repeat(2,1fr);gap:10px}.home-big-category{min-height:132px;padding:12px 8px}.home-big-icon{width:48px;height:48px;font-size:24px}.home-big-category strong{font-size:15px}.home-big-category small{display:none}.home-latest-grid{grid-template-columns:1fr}.home-how-project{grid-template-columns:1fr}.home-content-row{display:block}.home-trust-card{margin-top:14px}.map-title-section h1{font-size:28px!important}}


/* ===== ДОРАБОТКА: более квадратные карточки разделов и объявлений ===== */
.home-big-categories{
  grid-template-columns:repeat(7, minmax(150px, 1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}

.home-big-category{
  aspect-ratio:1 / 1 !important;
  min-height:0 !important;
  height:auto !important;
  padding:16px 12px !important;
  border-radius:18px !important;
  justify-content:center !important;
}

.home-big-icon{
  width:58px !important;
  height:58px !important;
  font-size:28px !important;
  flex:0 0 auto !important;
}

.home-big-category strong{
  font-size:18px !important;
}

.home-big-category small{
  min-height:0 !important;
  max-width:132px !important;
  margin:0 auto !important;
}

.home-big-category em{
  margin-top:2px !important;
  padding:6px 12px !important;
}

/* Карточки объявлений в блоке "Сейчас ищут помощь" — компактнее и ровнее */
.home-latest-grid{
  grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)) !important;
  gap:16px !important;
}

.home-latest-card{
  border-radius:16px !important;
  min-height:238px !important;
}

.home-latest-photo{
  height:108px !important;
}

.home-latest-card strong{
  font-size:15px !important;
  line-height:1.25 !important;
  min-height:42px !important;
}

.home-latest-card small{
  font-size:13px !important;
  line-height:1.3 !important;
}

.home-latest-more{
  margin-top:auto !important;
}

/* Средние экраны */
@media(max-width:1200px){
  .home-big-categories{
    grid-template-columns:repeat(4, minmax(140px, 1fr)) !important;
  }
}

/* Мобильная версия */
@media(max-width:760px){
  .home-big-categories{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:12px !important;
  }

  .home-big-category{
    aspect-ratio:auto !important;
    min-height:138px !important;
    padding:14px 10px !important;
  }

  .home-big-category small{
    display:block !important;
    font-size:12px !important;
    line-height:1.25 !important;
  }

  .home-latest-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:12px !important;
  }

  .home-latest-card{
    min-height:220px !important;
  }

  .home-latest-photo{
    height:96px !important;
  }
}

@media(max-width:430px){
  .home-latest-grid{
    grid-template-columns:1fr !important;
  }
}


/* ===== ФИНАЛ: hero без лишнего заголовка + квадратные карточки разделов ===== */
.home-redesign{
  max-width:1440px !important;
}

.home-hero-copy{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  padding:22px 0 !important;
}

.home-hero-copy h1,
.home-hero-subtitle{
  display:none !important;
}

.home-hero-text{
  max-width:380px !important;
  margin:0 0 22px !important;
  font-size:20px !important;
  line-height:1.42 !important;
  font-weight:500 !important;
  color:#172033 !important;
}

.home-hero-actions{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  gap:16px !important;
  align-items:center !important;
}

.home-hero-actions .hero-btn{
  min-width:190px !important;
  height:52px !important;
  padding:0 22px !important;
  white-space:nowrap !important;
}

.home-big-categories{
  display:grid !important;
  grid-template-columns:repeat(auto-fit, 190px) !important;
  justify-content:center !important;
  gap:18px !important;
  align-items:stretch !important;
  margin-bottom:28px !important;
}

.home-big-category{
  width:190px !important;
  height:190px !important;
  min-height:190px !important;
  aspect-ratio:1 / 1 !important;
  padding:16px 14px !important;
  border-radius:18px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:8px !important;
  overflow:hidden !important;
}

.home-big-icon{
  width:62px !important;
  height:62px !important;
  font-size:30px !important;
  margin:0 auto !important;
  flex:0 0 62px !important;
}

.home-big-category strong{
  font-size:19px !important;
  line-height:1.12 !important;
  min-height:42px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}

.home-big-category small{
  display:block !important;
  width:100% !important;
  max-width:150px !important;
  min-height:38px !important;
  max-height:38px !important;
  overflow:hidden !important;
  font-size:13px !important;
  line-height:1.28 !important;
  color:#4b5563 !important;
  text-align:center !important;
  margin:0 auto !important;
}

.home-big-category em{
  flex:0 0 auto !important;
  margin-top:0 !important;
  padding:6px 12px !important;
  font-size:12px !important;
  line-height:1 !important;
  max-width:150px !important;
  white-space:nowrap !important;
}

/* карточки объявлений в блоке "Сейчас ищут помощь" */
.home-latest-grid{
  grid-template-columns:repeat(auto-fill, minmax(180px, 1fr)) !important;
  gap:18px !important;
}

.home-latest-card{
  min-height:260px !important;
  border-radius:16px !important;
}

.home-latest-photo{
  height:120px !important;
}

@media(max-width:900px){
  .home-hero-actions{
    flex-wrap:wrap !important;
  }

  .home-hero-actions .hero-btn{
    min-width:0 !important;
    flex:1 1 170px !important;
  }

  .home-big-categories{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  }

  .home-big-category{
    width:100% !important;
    height:auto !important;
    min-height:170px !important;
  }
}

@media(max-width:600px){
  .home-hero-text{
    font-size:18px !important;
  }

  .home-hero-actions{
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    gap:10px !important;
  }

  .home-hero-actions .hero-btn{
    flex:1 1 0 !important;
    height:48px !important;
    font-size:14px !important;
    padding:0 10px !important;
  }

  .home-big-categories{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:12px !important;
  }

  .home-big-category{
    min-height:158px !important;
    padding:14px 10px !important;
  }

  .home-big-icon{
    width:50px !important;
    height:50px !important;
    font-size:25px !important;
    flex-basis:50px !important;
  }

  .home-big-category strong{
    font-size:16px !important;
    min-height:34px !important;
  }

  .home-big-category small{
    font-size:12px !important;
    max-height:34px !important;
    min-height:34px !important;
  }
}


/* ===== ФИКС СЕТКИ КАТЕГОРИЙ: 7 карточек в одну строку ===== */
@media (min-width: 1101px){
  .home-big-categories{
    width:100% !important;
    max-width:1180px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    display:grid !important;
    grid-template-columns:repeat(7, minmax(0, 1fr)) !important;
    gap:14px !important;
    justify-content:center !important;
    align-items:stretch !important;
  }

  .home-big-category{
    width:100% !important;
    height:170px !important;
    min-height:170px !important;
    max-height:170px !important;
    aspect-ratio:auto !important;
    padding:14px 10px !important;
    overflow:hidden !important;
  }

  .home-big-icon{
    width:52px !important;
    height:52px !important;
    flex:0 0 52px !important;
    font-size:26px !important;
  }

  .home-big-category strong{
    font-size:17px !important;
    line-height:1.15 !important;
    min-height:38px !important;
    max-height:40px !important;
    overflow:hidden !important;
  }

  .home-big-category small{
    max-width:135px !important;
    min-height:34px !important;
    max-height:34px !important;
    font-size:12px !important;
    line-height:1.25 !important;
    overflow:hidden !important;
  }

  .home-big-category em{
    padding:5px 10px !important;
    font-size:11px !important;
    max-width:132px !important;
  }
}

@media (min-width: 901px) and (max-width: 1100px){
  .home-big-categories{
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:14px !important;
  }

  .home-big-category{
    width:100% !important;
    height:170px !important;
    min-height:170px !important;
  }
}


/* ===== УБРАТЬ ПУСТЫЕ ПЛАШКИ СЧЁТЧИКОВ В КАТЕГОРИЯХ ===== */
.home-big-category em,
.home-category-count,
.category-count{
  display:none !important;
  height:0 !important;
  min-height:0 !important;
  max-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  overflow:hidden !important;
}

.site-header{
    min-height:88px;
}

.site-logo{
    padding-top:6px;
}

.site-logo img,
.custom-logo{
    height:95px!important;
    width:auto!important;
    max-height:none!important;
}

.home-hero-shell{
    grid-template-columns:420px 1fr!important;
    column-gap:80px!important;
}
/* ===== ФИНАЛЬНАЯ ПРАВКА ЛОГОТИПА В ШАПКЕ ===== */
.header-inner{
  height:92px !important;
  min-height:92px !important;
  padding-top:8px !important;
  padding-bottom:8px !important;
}
.logo-full,
.logo{
  display:flex !important;
  align-items:center !important;
  overflow:visible !important;
}
.logo-full img,
.logo img,
.custom-logo,
.custom-logo-link img{
  height:92px !important;
  max-height:92px !important;
  width:auto !important;
  object-fit:contain !important;
}
@media(max-width:760px){
  .logo-full img,
  .logo img,
  .custom-logo,
  .custom-logo-link img{
    height:64px !important;
    max-height:64px !important;
  }
}

.home-category-wrap{position:relative}
.home-subcats{display:none;position:absolute;top:100%;left:0;background:#fff;border:1px solid #e5e5e5;border-radius:14px;padding:10px;min-width:220px;z-index:30;box-shadow:0 10px 30px rgba(0,0,0,.08)}
.home-subcats span{display:block;padding:7px 8px;font-size:14px}
.home-category-wrap:hover .home-subcats{display:block}

/* ===== РАБОЧИЕ ШТОРКИ НИЖНИХ КАТЕГОРИЙ ===== */
.home-big-categories{
  overflow:visible !important;
  align-items:start !important;
}
.home-category-wrap{
  position:relative !important;
  width:190px !important;
  min-height:190px !important;
  overflow:visible !important;
  z-index:1;
}
.home-category-wrap:hover,
.home-category-wrap:focus-within{
  z-index:80;
}
.home-category-wrap .home-big-category{
  width:190px !important;
  height:190px !important;
}
.home-subcats{
  display:none !important;
  position:absolute !important;
  left:50% !important;
  top:calc(100% + 10px) !important;
  transform:translateX(-50%) !important;
  width:260px !important;
  max-width:calc(100vw - 30px) !important;
  padding:12px !important;
  background:#fff !important;
  border:1px solid #dfe9d8 !important;
  border-radius:18px !important;
  box-shadow:0 18px 45px rgba(23,32,51,.18) !important;
  z-index:90 !important;
}
.home-category-wrap:hover .home-subcats,
.home-category-wrap:focus-within .home-subcats{
  display:block !important;
}
.home-subcats:before{
  content:'';
  position:absolute;
  left:50%;
  top:-8px;
  width:14px;
  height:14px;
  transform:translateX(-50%) rotate(45deg);
  background:#fff;
  border-left:1px solid #dfe9d8;
  border-top:1px solid #dfe9d8;
}
.home-subcats .home-subcat-title{
  display:block !important;
  padding:8px 12px !important;
  margin:8px 0 6px !important;
  background:#e8f7ee !important;
  color:#1d7f45 !important;
  border-radius:10px !important;
  font-size:12px !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
}
.home-subcats button{
  display:block !important;
  width:100% !important;
  border:0 !important;
  background:#fff !important;
  border-radius:12px !important;
  padding:10px 12px !important;
  text-align:left !important;
  color:#172033 !important;
  font-size:14px !important;
  font-weight:800 !important;
  cursor:pointer !important;
}
.home-subcats button:hover,
.home-subcats button.active{
  background:#f3fbef !important;
  color:#2f6c22 !important;
}
@media(max-width:760px){
  .home-category-wrap{
    width:100% !important;
    min-height:auto !important;
  }
  .home-category-wrap .home-big-category{
    width:100% !important;
    height:132px !important;
  }
  .home-subcats{
    left:0 !important;
    right:0 !important;
    top:calc(100% + 8px) !important;
    transform:none !important;
    width:100% !important;
  }
}

.category-dropdown a{background:#e8f7ee;color:#1d7f45;border-radius:12px;padding:10px 14px;margin:6px 0;display:block;font-weight:600}.category-dropdown a:hover{background:#34c759;color:#fff}

.subcategory-dropdown .group-title{
background:#e8f7ee;
color:#1d7f45;
padding:10px 12px;
border-radius:10px;
font-weight:800;
margin:8px 0 6px;
display:block;
text-transform:uppercase;
font-size:12px;
}

.category-card{position:relative;}
.category-card::after{content:'';position:absolute;left:0;right:0;bottom:-25px;height:30px;}


/* ===== ИСПРАВЛЕНИЕ ШТОРКИ: НЕВИДИМЫЙ МОСТИК ОТ КАРТОЧКИ ДО МЕНЮ ===== */
.home-category-wrap{
  position:relative !important;
}

/* невидимая зона между карточкой и шторкой, чтобы шторка не пропадала при движении мышки вниз */
.home-category-wrap::after{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  top:100% !important;
  transform:translateX(-50%) !important;
  width:280px !important;
  height:34px !important;
  background:transparent !important;
  z-index:85 !important;
  pointer-events:auto !important;
  display:none !important;
}

.home-category-wrap:hover::after,
.home-category-wrap:focus-within::after{
  display:block !important;
}

.home-category-wrap:hover .home-subcats,
.home-category-wrap:focus-within .home-subcats,
.home-subcats:hover{
  display:block !important;
}


/* ===== АККУРАТНОЕ МЕНЮ ПОЛЬЗОВАТЕЛЯ В ШАПКЕ ===== */
.profile-menu{
  position:relative;
  display:inline-flex;
  align-items:center;
}

/* ===== НЕВИДИМЫЙ МОСТИК ДЛЯ МЕНЮ ПРОФИЛЯ ===== */
.profile-menu::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:100%;
  height:42px;
  background:transparent;
  z-index:119;
}

.profile-menu:hover .profile-menu-toggle,
.profile-menu:focus-within .profile-menu-toggle{
  background:#eef8e8;
  color:var(--green-dark);
}

.profile-menu-toggle{
  border:1px solid #d8e2d0;
  background:#fff;
  color:#172033;
  border-radius:14px;
  padding:9px 14px;
  font-size:15px;
  font-weight:800;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.profile-menu-toggle:hover,
.profile-menu:focus-within .profile-menu-toggle{
  background:#eef8e8;
  color:var(--green-dark);
}

.profile-dropdown{
  display:none;
  position:absolute;
  right:0;
  top:calc(100% + 18px);
  width:260px;
  background:#fff;
  border:1px solid #dfe9d8;
  border-radius:18px;
  box-shadow:0 18px 45px rgba(23,32,51,.16);
  padding:10px;
  z-index:120;
  text-align:left;
}

.profile-dropdown:before{
  content:"";
  position:absolute;
  right:22px;
  top:-8px;
  width:14px;
  height:14px;
  background:#fff;
  border-left:1px solid #dfe9d8;
  border-top:1px solid #dfe9d8;
  transform:rotate(45deg);
}

.profile-menu:hover .profile-dropdown,
.profile-menu:focus-within .profile-dropdown{
  display:block;
}

.profile-dropdown a{
  display:flex !important;
  align-items:center;
  gap:8px;
  padding:10px 12px !important;
  border-radius:12px !important;
  color:#172033 !important;
  text-decoration:none !important;
  font-size:14px !important;
  font-weight:800 !important;
}

.profile-dropdown a:hover{
  background:#f3fbef !important;
  color:#2f6c22 !important;
}

.profile-dropdown-title{
  display:block;
  margin:8px 0 6px;
  padding:8px 12px;
  border-radius:10px;
  background:#e8f7ee;
  color:#1d7f45;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.03em;
}

/* больше не показываем старые технические ID-бейджи */
.user-id-badge{
  display:none !important;
}

/* ===== ДОПОЛНИТЕЛЬНАЯ СТАТИСТИКА АДМИНА ===== */
.stats-section-title{
  margin:28px 0 14px;
  font-size:22px;
  line-height:1.2;
  color:#172033;
}

.stats-item small{
  display:block;
  margin-top:10px;
  color:#657083;
  font-size:13px;
  line-height:1.3;
}

.stats-grid-moderation .stats-item{
  background:#fffdf5;
  border-color:#efe2b8;
}

@media(max-width:900px){
  .nav{
    gap:8px;
  }
  .profile-dropdown{
    right:auto;
    left:0;
  }
  .profile-dropdown:before{
    right:auto;
    left:22px;
  }
}

@media(max-width:760px){
  .profile-menu::after{
    display:none;
  }

  .profile-menu{
    width:100%;
  }
  .profile-menu-toggle{
    width:100%;
    justify-content:center;
  }
  .profile-dropdown{
    position:static;
    width:100%;
    margin-top:8px;
    box-shadow:none;
  }
  .profile-dropdown:before{
    display:none;
  }
}

/* ===== ПРЕЗЕНТАБЕЛЬНЫЙ СТИЛЬ КНОПОК И ВЕРХНЕГО МЕНЮ ===== */
body,
button,
input,
select,
textarea{
  font-family:'Manrope','Inter',Arial,sans-serif !important;
}

.nav{
  gap:18px !important;
}

.nav a:not(.primary-btn),
.messages-nav-link,
.profile-menu-toggle{
  font-family:'Manrope','Inter',Arial,sans-serif !important;
  font-size:16px !important;
  font-weight:800 !important;
  letter-spacing:.01em !important;
  color:#172033 !important;
  text-decoration:none !important;
}

.nav a:not(.primary-btn){
  padding:10px 12px !important;
  border-radius:14px !important;
  transition:.18s ease !important;
}

.nav a:not(.primary-btn):hover{
  background:#f1faec !important;
  color:#24710e !important;
}

.primary-btn,
.nav .primary-btn{
  min-height:56px !important;
  padding:0 28px !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,#47b61a 0%,#168108 100%) !important;
  color:#fff !important;
  font-family:'Manrope','Inter',Arial,sans-serif !important;
  font-size:16px !important;
  font-weight:900 !important;
  letter-spacing:.01em !important;
  box-shadow:0 12px 26px rgba(31,139,29,.24) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
}

.primary-btn:hover,
.nav .primary-btn:hover{
  transform:translateY(-1px) !important;
  filter:saturate(1.06) !important;
  box-shadow:0 16px 34px rgba(31,139,29,.30) !important;
}

.profile-menu-toggle{
  min-height:56px !important;
  padding:0 20px !important;
  border-radius:16px !important;
  border:1px solid #dfe9d8 !important;
  background:#fff !important;
  box-shadow:0 10px 22px rgba(23,32,51,.06) !important;
  gap:9px !important;
}

.profile-menu-toggle:hover,
.profile-menu:hover .profile-menu-toggle,
.profile-menu:focus-within .profile-menu-toggle{
  background:#f5fbf1 !important;
  border-color:#cfe7c6 !important;
  color:#24710e !important;
}

.home-hero-actions .hero-btn,
.hero-btn{
  height:56px !important;
  min-width:210px !important;
  border-radius:15px !important;
  font-family:'Manrope','Inter',Arial,sans-serif !important;
  font-size:17px !important;
  font-weight:900 !important;
  letter-spacing:.01em !important;
  box-shadow:0 14px 28px rgba(23,32,51,.16) !important;
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
}

.hero-btn:hover{
  transform:translateY(-1px) !important;
  box-shadow:0 18px 36px rgba(23,32,51,.20) !important;
}

.hero-btn-need{
  background:linear-gradient(180deg,#ff9f13 0%,#f06d00 100%) !important;
}

.hero-btn-help{
  background:linear-gradient(180deg,#42b526 0%,#147d0b 100%) !important;
}

.home-search-panel{
  border-radius:20px !important;
  padding:20px !important;
  box-shadow:0 18px 45px rgba(23,32,51,.08) !important;
  border-color:#e4ebdf !important;
}

.home-main-search{
  height:64px !important;
  border-radius:17px !important;
  border:1px solid #dfe8d9 !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.7) !important;
}

.home-main-search input,
.home-main-search select{
  font-family:'Manrope','Inter',Arial,sans-serif !important;
  font-size:16px !important;
  font-weight:500 !important;
}

.home-main-search button,
.home-search-form button{
  background:linear-gradient(180deg,#47b61a 0%,#168108 100%) !important;
  font-family:'Manrope','Inter',Arial,sans-serif !important;
  font-size:17px !important;
  font-weight:900 !important;
  letter-spacing:.01em !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18) !important;
  transition:filter .18s ease !important;
}

.home-main-search button:hover,
.home-search-form button:hover{
  filter:saturate(1.08) brightness(.98) !important;
}

.home-quick-filters button{
  min-height:46px !important;
  padding:0 18px !important;
  border-radius:14px !important;
  background:#fff !important;
  border:1px solid #dfe8d9 !important;
  font-family:'Manrope','Inter',Arial,sans-serif !important;
  font-size:15px !important;
  font-weight:850 !important;
  box-shadow:0 8px 18px rgba(23,32,51,.04) !important;
}

.home-quick-filters button:hover,
.home-quick-filters button.active{
  background:#f4fbef !important;
  border-color:#85cf73 !important;
  color:#196f11 !important;
}

.home-urgent-row .urgent-filter-btn{
  font-family:'Manrope','Inter',Arial,sans-serif !important;
  font-weight:900 !important;
}

@media(max-width:760px){
  .primary-btn,
  .nav .primary-btn,
  .profile-menu-toggle{
    min-height:48px !important;
    border-radius:14px !important;
  }

  .home-hero-actions .hero-btn,
  .hero-btn{
    min-width:0 !important;
    height:50px !important;
    font-size:15px !important;
  }

  .home-main-search{
    height:auto !important;
  }
}


/* ===== ПОДПИСКИ НА РАЙОНЫ ===== */
.subscriptions-page{padding-top:28px;padding-bottom:48px}
.subscriptions-hero{background:#fff;border:1px solid #edf3e8;border-radius:28px;padding:26px 28px;box-shadow:0 12px 35px rgba(23,32,51,.08);margin-bottom:18px}
.subscriptions-hero h1{margin:0 0 8px;font-size:34px}.subscriptions-hero p{margin:0;color:var(--muted);font-size:17px;line-height:1.45;max-width:780px}
.subscriptions-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:18px;align-items:start;margin-bottom:18px}
.subscription-card{background:#fff;border:1px solid #edf3e8;border-radius:28px;padding:22px;box-shadow:0 12px 35px rgba(23,32,51,.08)}
.subscription-card h2{margin:0 0 14px;font-size:24px}.subscription-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.subscription-card-head h2{margin:0}
.subscription-map{width:100%;height:360px;border-radius:20px;background:#e8eee3;border:1px solid #dbeccc;overflow:hidden;margin:12px 0}
.subscription-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.subscription-checks label{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #dceccc;border-radius:14px;background:#f8fcf4;font-weight:800;color:#273044}
.subscription-checks input{width:18px;height:18px;accent-color:var(--green)}
.subscription-list,.notification-list{display:flex;flex-direction:column;gap:12px}
.subscription-item{border:1px solid #edf3e8;border-radius:20px;background:#f8fcf4;padding:14px;display:flex;flex-direction:column;gap:7px}.subscription-item b{font-size:17px}.subscription-item span{color:#4b5563;font-size:14px;font-weight:700}.subscription-item form{margin-top:4px}.subscription-item .secondary-btn{width:100%}
.notification-item{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:18px;border:1px solid #edf3e8;background:#fff;text-decoration:none;color:#172033}.notification-item.unread{background:#f3fbef;border-color:#79c96b}.notification-item b{font-size:16px}.notification-item span{color:#4b5563}.notification-item small{color:var(--muted);font-weight:800}
.notifications-nav-link{position:relative}.notifications-nav-link .messages-badge{margin-left:6px}
@media(max-width:900px){.subscriptions-grid{grid-template-columns:1fr}.subscription-checks{grid-template-columns:1fr}.subscription-map{height:320px}.subscriptions-hero h1{font-size:28px}}

/* Форма объявления: раздел → подкатегория → категория объявления */
.form-category-row{
  display:grid;
  grid-template-columns:1fr 1fr 1.35fr;
  gap:14px;
  align-items:end;
  margin-bottom:14px;
}
.form-category-row .field{margin-bottom:0;}
.form-category-row select{
  width:100%;
  border:1px solid #d8e2d0;
  border-radius:14px;
  padding:13px 14px;
  font-size:16px;
  background:#fff;
  color:#172033;
}
@media(max-width:900px){
  .form-category-row{grid-template-columns:1fr;gap:12px;}
}

/* ===== ФОРМА ОБЪЯВЛЕНИЯ: ФОТО, АДРЕС И ПРЕДПРОСМОТР ===== */
.add-form-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  gap:22px;
  align-items:start;
}
.add-form-main{min-width:0}
.photo-drop-field{margin:14px 0}
.photo-drop-field > label:first-child{display:block;font-weight:800;margin-bottom:8px}
.photo-drop-zone{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:130px;
  padding:18px;
  border:2px dashed #b9dbac;
  border-radius:20px;
  background:#f7fcf3;
  text-align:center;
  cursor:pointer;
  transition:.18s ease;
}
.photo-drop-zone:hover,.photo-drop-zone.is-dragover{background:#eef8e8;border-color:var(--green);box-shadow:0 10px 24px rgba(98,184,15,.12)}
.photo-drop-zone input{display:none}
.photo-drop-icon{font-size:34px;line-height:1}
.photo-drop-zone strong{font-size:16px;color:#213047}
.photo-drop-zone em{font-style:normal;font-size:13px;color:var(--muted)}
.photo-preview-list{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.photo-preview-item{position:relative;width:96px;border-radius:14px;overflow:hidden;background:#fff;border:1px solid #e1eadb;box-shadow:0 6px 16px rgba(23,32,51,.06)}
.photo-preview-item img{display:block;width:96px;height:72px;object-fit:cover}
.photo-preview-item span{display:block;padding:5px 6px;font-size:11px;font-weight:800;color:#356b0b;text-align:center;background:#f3fbef}
.location-fields{display:grid;grid-template-columns:1fr 210px;gap:12px;align-items:start}
.use-location-btn{margin:-2px 0 14px;border:1px solid #dbeccc!important}
.add-live-preview{position:sticky;top:96px;background:#fff;border:1px solid #edf3e8;border-radius:24px;padding:14px;box-shadow:0 12px 35px rgba(23,32,51,.08)}
.preview-title{font-weight:900;margin:0 0 10px;font-size:16px;color:#172033}
.preview-card{border:1px solid #e4eedc;border-radius:20px;overflow:hidden;background:#f8fcf4}
.preview-photo{height:160px;background:#edf7e8;display:flex;align-items:center;justify-content:center;color:#7b8a72;font-weight:900}
.preview-photo img{width:100%;height:100%;object-fit:cover;display:block}
.preview-badges{display:flex;gap:6px;flex-wrap:wrap;padding:12px 12px 0}
.preview-category,.preview-urgent{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;font-size:12px;font-weight:900;background:#eef8e8;color:#2f6c22}
.preview-urgent{background:#ffe9e9;color:#b01818}
.preview-card h3{font-size:18px;line-height:1.25;margin:10px 12px 6px;color:#172033}
.preview-card p{margin:0 12px 10px;color:#536071;font-size:14px;line-height:1.38;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.preview-meta{margin:0 12px 10px;color:#657083;font-size:13px;font-weight:700;line-height:1.35}
@media(max-width:980px){.add-form-layout{grid-template-columns:1fr}.add-live-preview{position:static}.location-fields{grid-template-columns:1fr}}
@media(max-width:700px){.photo-drop-zone{min-height:112px;padding:14px}.preview-photo{height:140px}}

/* Subscription map saved areas */

.subscription-item{cursor:pointer;transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;}
.subscription-item:hover,.subscription-item.active-subscription{border-color:#62b80f;box-shadow:0 14px 30px rgba(98,184,15,.14);transform:translateY(-1px);}
.subscription-item.active-subscription{background:#f2faec;}

.pomogi-delete-subscription{background:#eef7e9;border:1px solid #d9ead1;border-radius:14px;padding:12px;text-align:center;cursor:pointer;transition:all .2s ease;font-weight:600;color:#5a6b52;}
.pomogi-delete-subscription:hover{background:#ffeaea;border-color:#ffbcbc;color:#c0392b;transform:translateY(-1px);}
.pomogi-delete-subscription::before{content:'🗑 ';}

.header-inner{gap:12px}.nav{gap:8px;flex-wrap:nowrap;flex:1;justify-content:center}.nav a{padding:8px 8px;font-size:14px}.profile-menu{margin-left:auto}.cta-button,.header-cta{white-space:nowrap}



/* ===== DESKTOP ШАПКА: ФИНАЛЬНАЯ ВЕРСТКА ПОД УВЕДОМЛЕНИЯ ===== */
@media (min-width: 901px){
  .site-header{
    overflow:visible !important;
  }

  .header-inner{
    max-width:1220px !important;
    width:100% !important;
    min-height:72px !important;
    height:72px !important;
    padding:6px 18px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:18px !important;
  }

  .logo,
  .logo-full{
    flex:0 0 auto !important;
    height:58px !important;
    max-width:260px !important;
  }

  .logo-full img,
  .logo img{
    height:58px !important;
    max-height:58px !important;
    width:auto !important;
  }

  .nav{
    flex:1 1 auto !important;
    min-width:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:8px !important;
    flex-wrap:nowrap !important;
    white-space:nowrap !important;
  }

  .nav a:not(.primary-btn),
  .nav button.auth-open-btn{
    font-family:'Manrope',Arial,sans-serif !important;
    font-size:14px !important;
    line-height:1 !important;
    padding:8px 8px !important;
    font-weight:800 !important;
  }

  .notifications-nav-link{
    display:inline-flex !important;
    align-items:center !important;
    gap:4px !important;
  }

  .profile-menu{
    flex:0 0 auto !important;
  }

  .profile-menu-toggle{
    height:42px !important;
    padding:8px 12px !important;
    min-width:112px !important;
    max-width:150px !important;
    font-family:'Manrope',Arial,sans-serif !important;
    font-size:14px !important;
    line-height:1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .primary-btn{
    flex:0 0 auto !important;
    height:42px !important;
    min-width:132px !important;
    padding:9px 16px !important;
    border-radius:14px !important;
    font-family:'Manrope',Arial,sans-serif !important;
    font-size:15px !important;
    line-height:1 !important;
    font-weight:900 !important;
    white-space:nowrap !important;
    box-shadow:0 10px 22px rgba(31,143,18,.18) !important;
  }
}

/* Планшеты: пока не полноценное мобильное меню, но без поломки в две строки */
@media (max-width: 1100px) and (min-width: 901px){
  .header-inner{
    max-width:1180px !important;
    gap:12px !important;
    padding-left:14px !important;
    padding-right:14px !important;
  }

  .logo-full img,
  .logo img{
    height:52px !important;
    max-height:52px !important;
  }

  .logo,
  .logo-full{
    height:52px !important;
    max-width:220px !important;
  }

  .nav{
    gap:5px !important;
  }

  .nav a:not(.primary-btn),
  .nav button.auth-open-btn{
    font-size:13px !important;
    padding:7px 6px !important;
  }

  .profile-menu-toggle{
    min-width:96px !important;
    max-width:120px !important;
    padding-left:10px !important;
    padding-right:10px !important;
  }

  .primary-btn{
    min-width:118px !important;
    padding-left:12px !important;
    padding-right:12px !important;
    font-size:14px !important;
  }
}


/* Header refinement */
.header-inner{
  max-width:1220px;
  padding:18px 20px;
  gap:22px;
}

.logo-full{
  height:74px !important;
}

.logo-full img,
.logo img{
  height:74px !important;
  max-height:74px !important;
}

.nav{
  gap:12px !important;
}

.nav a{
  font-size:16px !important;
  font-weight:800 !important;
  padding:8px 10px !important;
}

.profile-menu-toggle{
  font-size:16px !important;
  font-weight:700 !important;
}

.primary-btn{
  font-size:16px !important;
  padding:11px 18px !important;
}

@media(max-width:1100px){
  .logo-full img,
  .logo img{
    height:66px !important;
    max-height:66px !important;
  }

  .nav a{
    font-size:15px !important;
  }
}



/* ===== HEADER READABILITY FINAL FIX =====
   Баланс: логотип читаемый, меню крупнее, шапка не растягивается на весь экран.
*/
@media (min-width: 901px){
  .site-header{
    overflow:visible !important;
  }

  .header-inner{
    max-width:1240px !important;
    min-height:88px !important;
    height:88px !important;
    padding:8px 20px !important;
    gap:20px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
  }

  .logo,
  .logo-full{
    flex:0 0 auto !important;
    height:78px !important;
    max-width:315px !important;
    display:flex !important;
    align-items:center !important;
    overflow:visible !important;
  }

  .logo-full img,
  .logo img{
    height:78px !important;
    max-height:78px !important;
    width:auto !important;
    object-fit:contain !important;
    display:block !important;
  }

  .nav{
    flex:1 1 auto !important;
    min-width:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:14px !important;
    flex-wrap:nowrap !important;
    white-space:nowrap !important;
  }

  .nav a:not(.primary-btn),
  .nav button.auth-open-btn{
    font-family:'Manrope',Arial,sans-serif !important;
    font-size:15.5px !important;
    line-height:1.1 !important;
    padding:8px 8px !important;
    font-weight:800 !important;
    letter-spacing:.01em !important;
  }

  .notifications-nav-link{
    display:inline-flex !important;
    align-items:center !important;
    gap:5px !important;
  }

  .messages-badge{
    min-width:18px !important;
    height:18px !important;
    padding:0 5px !important;
    font-size:12px !important;
    line-height:18px !important;
  }

  .profile-menu{
    flex:0 0 auto !important;
    margin-left:6px !important;
  }

  .profile-menu-toggle{
    height:46px !important;
    min-width:126px !important;
    max-width:165px !important;
    padding:9px 14px !important;
    border-radius:14px !important;
    font-family:'Manrope',Arial,sans-serif !important;
    font-size:15.5px !important;
    line-height:1 !important;
    font-weight:800 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .primary-btn{
    flex:0 0 auto !important;
    height:46px !important;
    min-width:142px !important;
    padding:10px 18px !important;
    border-radius:14px !important;
    font-family:'Manrope',Arial,sans-serif !important;
    font-size:15.5px !important;
    line-height:1 !important;
    font-weight:900 !important;
    white-space:nowrap !important;
    box-shadow:0 10px 22px rgba(31,143,18,.18) !important;
  }
}

@media (max-width: 1180px) and (min-width: 901px){
  .header-inner{
    max-width:1160px !important;
    gap:12px !important;
    padding-left:14px !important;
    padding-right:14px !important;
  }

  .logo,
  .logo-full{
    height:68px !important;
    max-width:265px !important;
  }

  .logo-full img,
  .logo img{
    height:68px !important;
    max-height:68px !important;
  }

  .nav{
    gap:8px !important;
  }

  .nav a:not(.primary-btn),
  .nav button.auth-open-btn{
    font-size:14px !important;
    padding-left:6px !important;
    padding-right:6px !important;
  }

  .profile-menu-toggle{
    height:42px !important;
    min-width:108px !important;
    max-width:135px !important;
    font-size:14px !important;
    padding-left:11px !important;
    padding-right:11px !important;
  }

  .primary-btn{
    height:42px !important;
    min-width:124px !important;
    font-size:14px !important;
    padding-left:13px !important;
    padding-right:13px !important;
  }
}

/* Subscription category picker */
.subscription-categories-field{
  margin-top:14px;
}
.subscription-category-picker{
  display:grid;
  gap:8px;
  margin-top:8px;
}
.subscription-category-section{
  border:1px solid #dcefd3;
  border-radius:14px;
  background:linear-gradient(180deg,#fbfff8,#f6fff1);
  overflow:hidden;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.subscription-category-section[open]{
  border-color:#9bd98d;
  box-shadow:0 8px 22px rgba(37,120,25,.08);
  background:#fbfff8;
}
.subscription-category-section summary{
  list-style:none;
  min-height:44px;
  padding:10px 12px;
  display:grid;
  grid-template-columns:minmax(115px,1fr) auto auto;
  align-items:center;
  gap:10px;
  cursor:pointer;
}
.subscription-category-section summary::-webkit-details-marker{
  display:none;
}
.subscription-section-title{
  font-weight:800;
  color:#172033;
  line-height:1.15;
  white-space:nowrap;
}
.subscription-section-all{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:0;
  padding:7px 10px;
  border-radius:999px;
  background:#edf9e8;
  border:1px solid #d5ebcd;
  color:#2f6f26;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
  user-select:none;
  white-space:nowrap;
}
.subscription-section-all:hover{
  background:#e3f6dc;
  border-color:#aada9c;
}
.subscription-section-toggle{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:#2b8d1f;
  font-size:13px;
  font-weight:800;
  white-space:nowrap;
}
.subscription-section-toggle:after{
  content:"▾";
  font-size:12px;
  transition:transform .18s ease;
}
.subscription-category-section[open] .subscription-section-toggle:after{
  transform:rotate(180deg);
}
.subscription-category-section[open] .subscription-section-toggle{
  color:#1f7518;
}
.subscription-category-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:0 12px 12px;
}
.subscription-category-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:0;
  padding:8px 10px;
  border-radius:999px;
  border:1px solid #e1ecd9;
  background:#fff;
  color:#263247;
  font-size:13px;
  font-weight:700;
  line-height:1.15;
  cursor:pointer;
  transition:all .16s ease;
  user-select:none;
}
.subscription-category-chip:hover{
  border-color:#90d27f;
  background:#f1ffed;
  transform:translateY(-1px);
}
.subscription-category-picker input[type="checkbox"]{
  width:15px;
  height:15px;
  accent-color:#2c9a16;
  flex:0 0 auto;
}
.subscription-category-chip:has(input:checked){
  background:#e9f8e3;
  border-color:#80cb70;
  color:#1f6818;
}
.hint.small{
  font-size:12px;
  margin-top:8px;
  color:#68756a;
}
@media (max-width: 760px){
  .subscription-category-section summary{
    grid-template-columns:1fr;
    gap:8px;
  }
  .subscription-section-all,
  .subscription-section-toggle{
    justify-self:start;
  }
}



/* Modern search filters */
.home-main-search-modern{
  grid-template-columns: 38px 1fr auto auto !important;
}
.home-main-search-modern select{display:none!important}
.home-filter-open{
  border:0;
  border-left:1px solid #e4eadf;
  background:#f7fbf4;
  color:#2f5f0a;
  font-weight:800;
  padding:0 18px;
  cursor:pointer;
  white-space:nowrap;
}
.home-filter-open:hover{background:#eef8e8;color:#1f6e05}
.home-filter-modal[hidden]{display:none!important}
.home-filter-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px}
.home-filter-backdrop{position:absolute;inset:0;background:rgba(15,25,18,.45);backdrop-filter:blur(4px)}
.home-filter-dialog{
  position:relative;
  width:min(920px, calc(100vw - 32px));
  max-height:min(780px, calc(100vh - 48px));
  overflow:hidden;
  background:#fff;
  border:1px solid #e0ead8;
  border-radius:28px;
  box-shadow:0 28px 90px rgba(20,40,20,.25);
  display:flex;
  flex-direction:column;
}
.home-filter-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:24px 26px 18px;
  border-bottom:1px solid #eef3ea;
}
.home-filter-head strong{display:block;font-size:26px;line-height:1.15;color:#121b2f}
.home-filter-head span{display:block;margin-top:6px;color:#657083;font-size:15px}
.home-filter-close{
  width:42px;height:42px;border:0;border-radius:50%;
  background:#f3f7ef;color:#283044;font-size:28px;line-height:1;cursor:pointer;
}
.home-filter-close:hover{background:#ffecec;color:#b91c1c}
.home-filter-search{padding:18px 26px 10px}
.home-filter-search input{
  width:100%;
  border:1px solid #dce8d4;
  border-radius:18px;
  padding:15px 18px;
  font-size:16px;
  outline:none;
}
.home-filter-search input:focus{border-color:#62b80f;box-shadow:0 0 0 4px rgba(98,184,15,.12)}
.home-filter-body{
  padding:8px 26px 22px;
  overflow:auto;
  display:grid;
  gap:14px;
}
.home-filter-all{
  width:100%;
  border:1px solid #dcebd4;
  background:#f3fbef;
  border-radius:18px;
  padding:14px 16px;
  text-align:left;
  font-weight:850;
  color:#255707;
  cursor:pointer;
}
.home-filter-all:hover,
.home-filter-all.active{background:#e7f8de;border-color:#62b80f}
.home-filter-section{
  border:1px solid #e1ecd8;
  border-radius:22px;
  background:#fbfdf9;
  padding:12px;
}
.home-filter-section-title{
  width:100%;
  border:0;
  background:transparent;
  padding:6px 4px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  color:#172033;
}
.home-filter-section-title span{font-weight:900;font-size:17px}
.home-filter-section-title small{
  font-size:13px;
  font-weight:800;
  color:#37720a;
  background:#eef9e8;
  border:1px solid #d7eccb;
  border-radius:999px;
  padding:7px 11px;
}
.home-filter-section-title:hover small,
.home-filter-section-title.active small{background:#62b80f;color:#fff;border-color:#62b80f}
.home-filter-chips{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}
.home-filter-chip-title{
  flex-basis:100%;
  margin:8px 0 0;
  color:#5e6b5a;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.home-filter-chips button{
  border:1px solid #dfead8;
  background:#fff;
  border-radius:999px;
  padding:9px 13px;
  font-weight:750;
  color:#263044;
  cursor:pointer;
  box-shadow:0 3px 10px rgba(20,40,20,.035);
}
.home-filter-chips button:hover,
.home-filter-chips button.active{
  border-color:#62b80f;
  background:#eef9e8;
  color:#2f6f08;
}
.home-filter-foot{
  border-top:1px solid #eef3ea;
  padding:16px 26px 22px;
  display:flex;
  justify-content:flex-end;
  gap:12px;
}
.home-filter-reset,
.home-filter-apply{
  border:0;
  border-radius:16px;
  padding:12px 18px;
  font-weight:900;
  cursor:pointer;
}
.home-filter-reset{background:#f3f7ef;color:#536050}
.home-filter-apply{background:#21a10a;color:#fff;box-shadow:0 10px 22px rgba(33,161,10,.2)}
body.home-filter-opened{overflow:hidden}

@media (max-width: 760px){
  .home-main-search-modern{grid-template-columns:38px 1fr !important}
  .home-main-search-modern .home-filter-open,
  .home-main-search-modern button[type="submit"]{grid-column:1 / -1;height:48px;border-left:0;border-top:1px solid #e4eadf}
  .home-filter-dialog{border-radius:22px;max-height:calc(100vh - 24px)}
  .home-filter-modal{padding:12px}
  .home-filter-head{padding:20px 18px 14px}
  .home-filter-head strong{font-size:22px}
  .home-filter-search{padding:14px 18px 8px}
  .home-filter-body{padding:8px 18px 18px}
  .home-filter-foot{padding:14px 18px 18px}
}


/* ===== Скрытый телефон в объявлении ===== */
#announcementModal .show-phone-btn{
  border:0;
  border-radius:14px;
  background:#1fa20b;
  color:#fff;
  font-weight:800;
  padding:10px 14px;
  cursor:pointer;
  box-shadow:0 10px 22px rgba(31,162,11,.16);
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
#announcementModal .show-phone-btn:hover{
  background:#168507;
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(31,162,11,.22);
}
#announcementModal .show-phone-btn:disabled{
  opacity:.7;
  cursor:wait;
  transform:none;
}
#announcementModal .modal-contact-text em{
  display:block;
  font-style:normal;
  color:#5f6b7a;
  font-weight:600;
  margin-top:3px;
}



/* Улучшенная карточка объявления в модальном окне */
#announcementModal .modal-window{
  max-width:940px !important;
  width:min(940px, calc(100% - 40px)) !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  scrollbar-gutter:stable;
}

#announcementModal .modal-gallery{
  min-width:0 !important;
}

#announcementModal .modal-window > *{
  min-width:0;
}

#announcementModal .contact-box{
  width:100% !important;
  box-sizing:border-box !important;
  margin:12px 0 0 !important;
  padding:14px !important;
  border:1px solid #dcefd2 !important;
  border-radius:18px !important;
  background:linear-gradient(180deg,#fbfff8 0%,#f4fbef 100%) !important;
  display:grid !important;
  grid-template-columns:46px minmax(0,1fr) auto !important;
  gap:12px !important;
  align-items:center !important;
}

#announcementModal .contact-box--guest{
  grid-template-columns:46px minmax(0,1fr) !important;
}

#announcementModal .contact-box--guest .show-phone-btn{
  grid-column:1 / -1 !important;
  width:100% !important;
  margin-top:2px !important;
}

#announcementModal .modal-contact-icon{
  width:46px !important;
  height:46px !important;
  border-radius:50% !important;
  background:linear-gradient(180deg,#27b40d 0%,#159005 100%) !important;
  box-shadow:0 8px 18px rgba(31,162,11,.18) !important;
}

#announcementModal .modal-contact-text{
  min-width:0 !important;
}

#announcementModal .modal-contact-text span{
  color:#344054 !important;
  font-size:14px !important;
  font-weight:800 !important;
  margin:0 0 3px !important;
}

#announcementModal .modal-contact-text em{
  color:#667085 !important;
  font-size:14px !important;
  line-height:1.35 !important;
  font-weight:600 !important;
}

#announcementModal .show-phone-btn{
  min-width:128px !important;
  white-space:nowrap !important;
  border-radius:14px !important;
  padding:12px 16px !important;
  font-size:15px !important;
  font-weight:900 !important;
}

#announcementModal .modal-copy-phone{
  flex:none !important;
}

#announcementModal .modal-info-box{
  margin-top:14px !important;
}

#announcementModal .message-author-form{
  margin-top:12px !important;
}

#announcementModal .message-author-form .modal-action-btn{
  box-shadow:0 14px 30px rgba(31,162,11,.18) !important;
}

@media(max-width:860px){
  #announcementModal .modal-window{
    display:block !important;
    width:calc(100% - 24px) !important;
    max-width:calc(100% - 24px) !important;
    padding:16px !important;
  }
  #announcementModal .modal-gallery{
    margin-bottom:16px !important;
  }
  #announcementModal .contact-box,
  #announcementModal .contact-box--hidden,
  #announcementModal .contact-box--shown{
    grid-template-columns:44px minmax(0,1fr) !important;
  }
  #announcementModal .show-phone-btn,
  #announcementModal .modal-copy-phone{
    grid-column:1 / -1 !important;
    width:100% !important;
  }
}



/* === UI REFRESH: FILTER BUTTON + URGENT BAR === */

/* Filter button */
.home-filter-open{
    background:#ffffff !important;
    color:#49653d !important;
    border:1px solid #dfe8d7 !important;
    border-radius:14px 0 0 14px !important;
    font-weight:700 !important;
    transition:all .18s ease;
    box-shadow:none !important;
}

.home-filter-open:hover{
    background:#f4fbef !important;
    color:#2d5d1e !important;
    border-color:#c9ddba !important;
}

/* Search button */
.home-main-search-modern button[type="submit"]{
    border-radius:0 14px 14px 0 !important;
    font-weight:800 !important;
    box-shadow:0 4px 14px rgba(50,140,20,.12);
}

/* Urgent section */
.urgent-announcements-bar,
.home-urgent-bar,
.urgent-bar{
    background:#fff5f5 !important;
    border:1px solid #ffd8d8 !important;
    color:#d93c3c !important;
    border-radius:18px !important;
    min-height:62px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:20px !important;
    font-weight:800 !important;
    box-shadow:none !important;
}

/* fallback for red banner */
div[style*="linear-gradient"][style*="red"],
div[style*="#ff"],
.red-banner,
.urgent-strip{
    background:#fff5f5 !important;
    border:1px solid #ffd8d8 !important;
    color:#d93c3c !important;
    border-radius:18px !important;
    box-shadow:none !important;
}

/* softer spacing */
.urgent-announcements-bar p,
.home-urgent-bar p{
    margin:0 !important;
    opacity:.9;
}




/* === REAL UI FIX: search buttons + urgent banner === */

/* Search row: make buttons visually separate */
.home-main-search-modern{
  display:grid !important;
  grid-template-columns:38px 1fr auto auto !important;
  gap:10px !important;
  align-items:stretch !important;
}

/* Search input area */
.home-main-search-modern input[type="search"]{
  border-right:1px solid #e4eadf !important;
}

/* Filters button: calm secondary button, like category chips */
.home-main-search-modern .home-filter-open,
.home-filter-open{
  height:52px !important;
  min-height:52px !important;
  background:#ffffff !important;
  color:#2f5f0a !important;
  border:1px solid #dfe8d7 !important;
  border-radius:14px !important;
  padding:0 18px !important;
  font-size:15px !important;
  font-weight:800 !important;
  box-shadow:0 6px 16px rgba(23,32,51,.04) !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  white-space:nowrap !important;
}

.home-main-search-modern .home-filter-open:hover,
.home-filter-open:hover{
  background:#f2faed !important;
  border-color:#9bd486 !important;
  color:#1f6e05 !important;
  transform:translateY(-1px);
}

/* Find button stays the main action */
.home-main-search-modern button[type="submit"]{
  height:52px !important;
  min-height:52px !important;
  border-radius:14px !important;
  padding:0 26px !important;
  font-size:15px !important;
  font-weight:900 !important;
  box-shadow:0 10px 22px rgba(31,162,11,.16) !important;
}

/* Urgent announcements: softer, lighter, less aggressive */
.home-urgent-row,
.urgent-filter-row.home-urgent-row{
  max-width:920px !important;
  margin:0 auto 24px !important;
}

.home-urgent-row .urgent-filter-btn,
.urgent-filter-row .urgent-filter-btn{
  width:100% !important;
  min-height:48px !important;
  background:#fff7f7 !important;
  color:#c62929 !important;
  border:1px solid #ffd6d6 !important;
  border-radius:18px !important;
  font-size:17px !important;
  font-weight:900 !important;
  box-shadow:0 8px 20px rgba(198,41,41,.06) !important;
  transition:all .18s ease !important;
}

.home-urgent-row .urgent-filter-btn:hover,
.home-urgent-row .urgent-filter-btn.active,
.urgent-filter-row .urgent-filter-btn:hover,
.urgent-filter-row .urgent-filter-btn.active{
  background:#fff0f0 !important;
  color:#b91c1c !important;
  border-color:#ffbebe !important;
  transform:translateY(-1px);
}

/* Mobile: search buttons under the input */
@media(max-width:760px){
  .home-main-search-modern{
    grid-template-columns:38px 1fr !important;
    gap:8px !important;
  }

  .home-main-search-modern .home-filter-open,
  .home-main-search-modern button[type="submit"]{
    grid-column:auto !important;
    width:100% !important;
  }

  .home-main-search-modern .home-filter-open{
    grid-column:1 / 2 !important;
  }

  .home-main-search-modern button[type="submit"]{
    grid-column:2 / 3 !important;
  }
}




/* =========================================
   NEXT UI IMPROVEMENTS
========================================= */

/* Category cards */
.home-categories-grid .category-card,
.category-card{
    transition:all .22s ease !important;
    border-radius:24px !important;
    border:1px solid #e7eee2 !important;
    box-shadow:0 6px 20px rgba(30,41,59,.04) !important;
    overflow:hidden;
    background:#ffffff !important;
}

.home-categories-grid .category-card:hover,
.category-card:hover{
    transform:translateY(-4px);
    box-shadow:0 16px 34px rgba(30,41,59,.10) !important;
    border-color:#b6d7a8 !important;
}

/* Category icon circles */
.category-card .category-icon,
.category-icon{
    width:74px !important;
    height:74px !important;
    border-radius:50% !important;
    background:#f2f9ec !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    transition:all .22s ease;
}

.category-card:hover .category-icon,
.category-card:hover .category-icon{
    transform:scale(1.06);
    background:#e9f8de !important;
}

/* Softer texts */
.category-card p,
.category-card .category-desc{
    opacity:.78;
    line-height:1.45;
}

/* Main content blocks */
.home-announcements-block,
.home-info-block,
.home-sidebar-block{
    border-radius:28px !important;
    border:1px solid #edf2ea !important;
    box-shadow:0 10px 28px rgba(15,23,42,.04) !important;
    background:#fff !important;
}

/* Empty state */
.home-empty-state,
.empty-announcements{
    border:1px dashed #d7e7cb !important;
    border-radius:22px !important;
    background:#fcfef9 !important;
    padding:24px !important;
}

/* Buttons */
button,
.button,
input[type="submit"]{
    transition:all .18s ease !important;
}

button:hover,
.button:hover,
input[type="submit"]:hover{
    transform:translateY(-1px);
}

/* Header navigation */
.main-navigation a{
    transition:all .18s ease !important;
    border-radius:10px;
}

.main-navigation a:hover{
    background:#f3f9ee;
}

/* General spacing */
.homepage-wrapper,
.site-main{
    gap:28px !important;
}




/* =========================================
   UI BALANCE FIX
========================================= */

/* Softer category cards */
.category-card,
.home-category-card,
.home-categories-grid > div{
    border-radius:22px !important;
    border:1px solid #edf2e8 !important;
    box-shadow:0 4px 14px rgba(15,23,42,.03) !important;
    transition:all .18s ease !important;
    background:#fff !important;
}

.category-card:hover,
.home-category-card:hover,
.home-categories-grid > div:hover{
    transform:translateY(-2px) !important;
    box-shadow:0 10px 22px rgba(15,23,42,.06) !important;
    border-color:#d4e7c8 !important;
}

/* Icons less oversized */
.category-icon,
.home-category-card .category-icon{
    width:60px !important;
    height:60px !important;
    background:#f4faef !important;
}

/* Search block more compact */
.home-main-search-modern{
    border-radius:26px !important;
    padding:18px !important;
}

/* Filters button refined */
.home-filter-open{
    background:#ffffff !important;
    border:1px solid #e4ebde !important;
    color:#43622f !important;
    box-shadow:none !important;
}

.home-filter-open:hover{
    background:#f4fbef !important;
}

/* Urgent bar more elegant */
.home-urgent-row .urgent-filter-btn,
.urgent-filter-btn{
    min-height:42px !important;
    border-radius:14px !important;
    background:#fff7f7 !important;
    border:1px solid #ffdede !important;
    font-size:16px !important;
    letter-spacing:.1px;
    box-shadow:none !important;
}

/* Main content blocks */
.home-announcements-block,
.home-sidebar-block{
    border-radius:24px !important;
    border:1px solid #eef3ea !important;
    box-shadow:0 6px 20px rgba(15,23,42,.03) !important;
}

/* Reduce visual heaviness */
button,
.button{
    box-shadow:none !important;
}


/* =====================================================
   SERVICE POLISH: map center + nearby feed
   мягкий современный вид без ломки логики карты
===================================================== */

.map-title-section{
  margin-top:18px !important;
  margin-bottom:12px !important;
}
.map-title-section h1{
  letter-spacing:-.02em !important;
}
.map-title-section p{
  max-width:720px;
  margin-left:auto !important;
  margin-right:auto !important;
  color:#637083 !important;
}

.map-area-layout{
  grid-template-columns:minmax(0, 1fr) 330px !important;
  gap:20px !important;
  align-items:stretch !important;
  max-width:1040px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.map-area-layout .map-card{
  border-radius:30px !important;
  padding:14px !important;
  border:1px solid #e8f0e3 !important;
  box-shadow:0 18px 44px rgba(23,32,51,.07) !important;
  background:linear-gradient(180deg,#ffffff,#fbfdf9) !important;
}

#map{
  border-radius:24px !important;
  overflow:hidden !important;
}

.map-card .map-help,
.map-card .map-help.map-help-button,
.map-card button.map-help,
.map-card .primary-btn.map-help,
.map-card .map-help-link{
  top:56px !important;
  background:linear-gradient(180deg,#50b914,#238607) !important;
  border:1px solid rgba(255,255,255,.45) !important;
  box-shadow:0 10px 22px rgba(34,126,12,.20) !important;
}

.visible-announcements-panel{
  border-radius:30px !important;
  padding:18px !important;
  border:1px solid #e8f0e3 !important;
  box-shadow:0 18px 44px rgba(23,32,51,.065) !important;
  background:linear-gradient(180deg,#ffffff,#fbfdf8) !important;
  overflow:auto !important;
  max-height:590px !important;
}

.visible-announcements-head{
  padding-bottom:14px !important;
  margin-bottom:14px !important;
  border-bottom:1px solid #edf3e8 !important;
  background:linear-gradient(180deg,#ffffff,#fbfdf8) !important;
}

.visible-announcements-head h2{
  font-size:24px !important;
  line-height:1.1 !important;
  letter-spacing:-.02em !important;
  margin-bottom:6px !important;
}

.visible-announcements-head p{
  font-size:13px !important;
  color:#6b7688 !important;
}

.visible-announcements-list{
  gap:12px !important;
}

.visible-announcement-card{
  grid-template-columns:72px minmax(0,1fr) !important;
  gap:12px !important;
  padding:12px !important;
  border-radius:22px !important;
  background:#ffffff !important;
  border:1px solid #edf3e8 !important;
  box-shadow:0 6px 18px rgba(23,32,51,.035) !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}

.visible-announcement-card:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 14px 28px rgba(23,32,51,.08) !important;
  border-color:#cfe6c2 !important;
}

.visible-announcement-card img{
  width:72px !important;
  height:72px !important;
  border-radius:18px !important;
  background:#eef8e8 !important;
  object-fit:cover !important;
}

.visible-dog-content{
  min-width:0;
  display:flex !important;
  flex-direction:column !important;
  gap:6px !important;
}

.visible-announcement-card b{
  font-size:16px !important;
  line-height:1.16 !important;
  margin:0 !important;
  color:#172033 !important;
}

.visible-announcement-card small{
  font-size:13px !important;
  line-height:1.32 !important;
  color:#667085 !important;
}

.visible-dog-meta-row{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
}

.visible-dog-badge,
.visible-dog-status{
  display:inline-flex;
  align-items:center;
  max-width:100%;
  border-radius:999px;
  padding:4px 8px;
  font-size:11px;
  line-height:1;
  font-weight:900;
  white-space:nowrap;
}

.visible-dog-badge{
  color:#2d681b;
  background:#edf8e7;
  border:1px solid #d7edcc;
}

.visible-dog-status{
  color:#4b5563;
  background:#f5f7f4;
  border:1px solid #e8eee3;
}

.visible-announcement-card.is-urgent{
  border-color:#fecaca !important;
  background:linear-gradient(180deg,#fff,#fff7f7) !important;
}

.visible-announcement-card.is-urgent .visible-dog-status{
  color:#b91c1c;
  background:#fff1f1;
  border-color:#fecaca;
}

.visible-announcement-card .mini-edit{
  grid-column:1 / -1 !important;
  margin-top:2px !important;
  border-radius:999px !important;
  background:#eef8e8 !important;
  color:#2f7a14 !important;
  font-weight:900 !important;
  padding:9px 12px !important;
  transition:all .18s ease !important;
}

.visible-announcement-card .mini-edit:hover{
  background:#def4d4 !important;
  transform:translateY(-1px);
}

.home-how-project{
  max-width:1040px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

@media(max-width:980px){
  .map-area-layout{
    grid-template-columns:1fr !important;
    max-width:760px !important;
  }
  .visible-announcements-panel{
    max-height:none !important;
  }
}

@media(max-width:700px){
  .map-area-layout .map-card,
  .visible-announcements-panel{
    border-radius:22px !important;
    padding:10px !important;
  }
  #map{
    height:430px !important;
    border-radius:18px !important;
  }
  .visible-announcement-card{
    grid-template-columns:64px minmax(0,1fr) !important;
  }
  .visible-announcement-card img{
    width:64px !important;
    height:64px !important;
  }
}




/* =====================================================
   FIX: nearby feed card emoji/icons + no horizontal scroll
===================================================== */

/* Right feed should never create horizontal scrollbar */
.visible-announcements-panel{
  overflow-x:hidden !important;
}

/* Keep cards compact and sane */
.visible-announcement-card{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  display:grid !important;
  grid-template-columns:58px minmax(0,1fr) !important;
  align-items:center !important;
  gap:12px !important;
  padding:12px !important;
  border-radius:20px !important;
  background:#ffffff !important;
  border:1px solid #e7f0df !important;
  box-shadow:0 6px 18px rgba(23,32,51,.035) !important;
  text-align:left !important;
  overflow:hidden !important;
}

/* Only the real announcement photo/placeholder, not emoji images */
.visible-announcement-card > img{
  width:58px !important;
  height:58px !important;
  min-width:58px !important;
  max-width:58px !important;
  border-radius:16px !important;
  object-fit:cover !important;
  background:#eef8e8 !important;
}

/* WordPress emoji images must stay inline-sized */
.visible-announcement-card img.emoji,
.visible-announcement-card .emoji,
.visible-dog-badge img,
.visible-dog-status img,
.visible-dog-content small img{
  width:1em !important;
  height:1em !important;
  min-width:1em !important;
  max-width:1em !important;
  border-radius:0 !important;
  object-fit:contain !important;
  background:transparent !important;
  vertical-align:-0.15em !important;
  display:inline !important;
  margin:0 .12em !important;
}

/* Content should wrap instead of forcing horizontal scroll */
.visible-dog-content{
  min-width:0 !important;
  overflow:hidden !important;
}

.visible-announcement-card b,
.visible-announcement-card small,
.visible-dog-badge,
.visible-dog-status{
  min-width:0 !important;
  max-width:100% !important;
}

.visible-announcement-card b{
  display:block !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

.visible-announcement-card small{
  display:block !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

.visible-dog-meta-row{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;
  min-width:0 !important;
  overflow:hidden !important;
}

.visible-dog-badge{
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  font-size:11px !important;
  padding:4px 8px !important;
}

.visible-dog-status{
  font-size:11px !important;
  padding:4px 8px !important;
}

/* Keep edit/open button clean */
.visible-announcement-card .mini-edit{
  grid-column:1 / -1 !important;
  width:100% !important;
  box-sizing:border-box !important;
  text-align:center !important;
  border-radius:999px !important;
  margin-top:4px !important;
  padding:9px 12px !important;
}

/* Map/feed proportions */
.map-area-layout{
  grid-template-columns:minmax(0, 1fr) 310px !important;
  gap:18px !important;
}

.visible-announcements-head h2{
  font-size:22px !important;
}

.visible-announcements-head p{
  font-size:13px !important;
}




/* === V1.1 HELP STATUS + HELP OFFER BUTTON === */
.visible-dog-status.is-help,
.visible-dog-status:not(.is-urgent):not(.is-done){
    background:#fff1dd !important;
    color:#d56b00 !important;
    border:1px solid #ffd19a !important;
}

.modal-status.help-needed{
    display:inline-flex;
    align-items:center;
    width:max-content;
    background:#fff1dd !important;
    color:#d56b00 !important;
    border:1px solid #ffd19a !important;
    border-radius:999px;
    padding:7px 12px;
    font-size:13px;
    font-weight:900;
    margin:8px 0 12px;
}

.modal-status.found{
    background:#ecfdf3 !important;
    color:#18753a !important;
    border:1px solid #bbebcc !important;
}

.help-offer-btn{
    width:100% !important;
    border:0 !important;
    border-radius:18px !important;
    background:linear-gradient(180deg,#49b51d,#248e0a) !important;
    color:#fff !important;
    font-weight:900 !important;
    font-size:16px !important;
    padding:14px 18px !important;
    box-shadow:0 10px 22px rgba(36,142,10,.18) !important;
    cursor:pointer !important;
    transition:all .18s ease !important;
}

.help-offer-btn:hover{
    transform:translateY(-1px);
    filter:brightness(1.03);
}

.help-offer-btn.is-helping{
    background:#f1f8ee !important;
    color:#24760d !important;
    border:1px solid #cfe9c7 !important;
    box-shadow:none !important;
}

.help-offer-btn:disabled{
    opacity:.75;
    cursor:wait !important;
    transform:none !important;
}

/* ===== ВЕРСИЯ 1.1Б: компактное окно объявления в стиле Avito ===== */
.modal-window-v11b{
  max-width:1120px;
  width:calc(100% - 56px);
  max-height:88vh;
  margin:4vh auto;
  padding:26px;
  border-radius:28px;
  display:grid;
  grid-template-columns:minmax(300px, 470px) minmax(360px, 1fr);
  gap:24px 30px;
  overflow:auto;
}
.modal-window-v11b .modal-close{
  right:18px;
  top:16px;
  background:#fff;
  color:#111827;
  box-shadow:none;
  z-index:3;
}
.modal-window-v11b .modal-close:hover{background:#eef8e8;color:var(--green-dark)}
.modal-window-v11b .modal-gallery{margin:0;min-width:0}
.modal-window-v11b .modal-image{
  width:100%;
  height:360px;
  max-height:none;
  object-fit:cover;
  border-radius:20px;
  background:#eef8e8;
  display:block;
}
.modal-window-v11b .modal-thumbs{
  margin-top:16px;
  gap:12px;
  flex-wrap:wrap;
}
.modal-window-v11b .modal-thumb{
  width:104px;
  height:74px;
  border-radius:12px;
  border:2px solid #edf3e8;
  box-shadow:0 8px 20px rgba(23,32,51,.06);
}
.modal-window-v11b .modal-thumb.active{
  border-color:var(--green);
  box-shadow:0 10px 22px rgba(98,184,15,.18);
}
.modal-window-v11b .modal-details{
  min-width:0;
  padding-right:12px;
  border-left:1px solid #edf3e8;
  padding-left:30px;
}
.modal-window-v11b .modal-category{
  display:inline-flex;
  align-items:center;
  max-width:calc(100% - 42px);
  padding:8px 14px;
  border-radius:999px;
  background:#eef8e8;
  color:#376d09;
  font-weight:900;
  font-size:14px;
  line-height:1.2;
  margin:0 0 14px;
}
.modal-window-v11b .modal-title{
  font-family:Inter, Arial, sans-serif;
  font-size:34px;
  line-height:1.12;
  margin:0 0 12px;
  color:#172033;
}
.modal-window-v11b .modal-status{
  display:inline-flex;
  align-items:center;
  width:max-content;
  margin:0 0 14px;
  padding:8px 14px;
  border-radius:999px;
  font-weight:900;
  border:1px solid #ffc170;
  color:#c86800;
  background:#fff7ee;
}
.modal-window-v11b .modal-status.found{border-color:#bae8a2;color:#2f7808;background:#f1fbeb}
.modal-window-v11b .modal-status.urgent{border-color:#ffb3b3;color:#bd1d1d;background:#fff1f1}
.modal-window-v11b .modal-author{
  color:#30384a;
  font-size:15px;
  line-height:1.45;
  margin:0 0 16px;
}
.modal-window-v11b .modal-author a{color:#2f8508;font-weight:900;text-decoration:none}
.modal-window-v11b .modal-description{
  font-size:17px;
  line-height:1.5;
  margin:0 0 18px;
  max-height:118px;
  overflow:auto;
}
.modal-window-v11b .modal-helpers:not(:empty){
  margin:0 0 14px;
  padding:12px 14px;
  border-radius:16px;
  background:#f8fcf4;
  border:1px solid #dbeccc;
}
.modal-window-v11b .contact-box{
  margin:0 0 16px;
  min-height:78px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  padding:16px;
  border-radius:18px;
  background:linear-gradient(90deg,#f4faef,#fbfff8);
  border:1px solid #cfeac2;
}
.modal-window-v11b .modal-contact-icon{
  width:46px;
  height:46px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg,#24bd12,#109700);
  color:#fff;
  font-size:22px;
  box-shadow:0 8px 20px rgba(31,177,12,.18);
}
.modal-window-v11b .modal-contact-text{display:flex;flex-direction:column;gap:3px;min-width:0}
.modal-window-v11b .modal-contact-text span{font-weight:900;color:#172033}
.modal-window-v11b .modal-contact-text em{font-style:normal;color:#657083;font-size:14px}
.modal-window-v11b .show-phone-btn,
.modal-window-v11b .modal-copy-phone{
  border:0;
  border-radius:14px;
  background:var(--green);
  color:#fff;
  font-weight:900;
  padding:12px 16px;
  cursor:pointer;
  white-space:nowrap;
}
.modal-window-v11b .show-phone-btn:hover,
.modal-window-v11b .modal-copy-phone:hover{background:var(--green-dark)}
.modal-window-v11b .modal-action-box{display:grid;gap:12px}
.modal-window-v11b .modal-message-compact{display:grid;gap:12px;margin:0}
.modal-window-v11b .modal-message-compact textarea{
  min-height:76px;
  width:100%;
  border:1px solid #d8e2d0;
  border-radius:16px;
  padding:14px;
  font-size:16px;
  resize:vertical;
}
.modal-window-v11b .modal-action-btn{
  width:100%;
  min-height:54px;
  border-radius:16px;
  font-size:17px;
  margin:0;
}
.modal-window-v11b .help-offer-btn{
  border:0;
  background:linear-gradient(180deg,#28c116,#119600);
  color:#fff;
  font-weight:900;
  box-shadow:0 12px 26px rgba(31,177,12,.22);
}
.modal-window-v11b .help-offer-btn.is-helping{
  background:#eef8e8;
  color:#2f7808;
  border:1px solid #cfeac2;
  box-shadow:none;
}
.modal-window-v11b .modal-info-box{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  border:1px solid #e2eadb;
  border-radius:20px;
  background:#fff;
  overflow:hidden;
}
.modal-window-v11b .modal-info-box div{
  padding:18px 22px;
  min-height:82px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
  border-right:1px solid #edf3e8;
}
.modal-window-v11b .modal-info-box div:last-child{border-right:0}
.modal-window-v11b .modal-info-box b{font-size:15px;color:#30384a}
.modal-window-v11b .modal-info-box span{font-size:16px;color:#172033}
.modal-window-v11b .modal-owner-box{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.modal-window-v11b .modal-owner-box form{margin:0}
.modal-window-v11b .modal-owner-box .mark-announcement-found-form,
.modal-window-v11b .modal-owner-box .helper-form{grid-column:1 / -1}
.modal-window-v11b .modal-owner-box .helper-form{
  display:grid;
  gap:10px;
  padding:16px;
  border-radius:18px;
  background:#f8fcf4;
  border:1px solid #dbeccc;
}
.modal-window-v11b .modal-owner-box .helper-form input{
  border:1px solid #d8e2d0;
  border-radius:14px;
  padding:13px 14px;
  font-size:16px;
}

@media(max-width:900px){
  .modal-window-v11b{
    width:calc(100% - 24px);
    max-height:92vh;
    margin:2vh auto;
    padding:16px;
    grid-template-columns:1fr;
    gap:18px;
    border-radius:22px;
  }
  .modal-window-v11b .modal-details{
    border-left:0;
    padding-left:0;
    padding-right:0;
  }
  .modal-window-v11b .modal-image{height:290px}
  .modal-window-v11b .modal-title{font-size:26px;padding-right:42px}
  .modal-window-v11b .modal-info-box{grid-template-columns:1fr}
  .modal-window-v11b .modal-info-box div{border-right:0;border-bottom:1px solid #edf3e8;min-height:auto;padding:14px 16px}
  .modal-window-v11b .modal-info-box div:last-child{border-bottom:0}
  .modal-window-v11b .modal-owner-box{grid-template-columns:1fr}
  .modal-window-v11b .contact-box{grid-template-columns:auto 1fr;}
  .modal-window-v11b .show-phone-btn,.modal-window-v11b .modal-copy-phone{grid-column:1 / -1;width:100%}
}

@media(max-width:520px){
  .modal-window-v11b{width:calc(100% - 12px);padding:12px;border-radius:18px}
  .modal-window-v11b .modal-image{height:230px;border-radius:16px}
  .modal-window-v11b .modal-thumb{width:74px;height:56px}
  .modal-window-v11b .modal-category{font-size:12px;max-width:calc(100% - 44px)}
  .modal-window-v11b .modal-title{font-size:23px}
  .modal-window-v11b .modal-description{max-height:160px;font-size:15px}
  .modal-window-v11b .modal-action-btn{min-height:50px;font-size:15px}
}

/* v11c: clickable coordinates in announcement modal */
.modal-window-v11b .modal-place-link{
  border:0;
  background:transparent;
  padding:0;
  margin:0;
  text-align:left;
  cursor:pointer;
  color:#172033;
  font:inherit;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.modal-window-v11b .modal-place-link span{
  font-size:16px;
  color:#172033;
}
.modal-window-v11b .modal-place-link em{
  font-style:normal;
  font-size:13px;
  color:#168600;
  font-weight:800;
}
.modal-window-v11b .modal-place-link:hover em{
  text-decoration:underline;
}

/* === v11d: компактное окно объявления без лишней прокрутки === */
#announcementModal .modal-window{
  max-width:980px !important;
  width:min(980px, calc(100% - 36px)) !important;
  max-height:calc(100vh - 90px) !important;
  margin:45px auto !important;
  padding:18px 22px 18px !important;
  display:grid !important;
  grid-template-columns:minmax(260px, 390px) minmax(320px, 1fr) !important;
  grid-template-areas:
    "gallery details"
    "info info"
    "owner owner" !important;
  gap:14px 26px !important;
  align-items:start !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
}

#announcementModal .modal-gallery{
  grid-area:gallery !important;
  grid-row:auto !important;
  margin:0 !important;
}

#announcementModal .modal-details{
  grid-area:details !important;
  min-width:0 !important;
}

#announcementModal .modal-info-box{
  grid-area:info !important;
  margin:4px 0 0 !important;
  padding:12px 14px !important;
  display:grid !important;
  grid-template-columns:1fr 1fr 1fr !important;
  gap:0 !important;
  border-radius:18px !important;
}

#announcementModal .modal-owner-box{
  grid-area:owner !important;
  margin:0 !important;
}

#announcementModal .modal-image{
  height:320px !important;
  max-height:320px !important;
  border-radius:18px !important;
}

#announcementModal .modal-image[src=""],
#announcementModal .modal-image:not([src]){
  min-height:320px !important;
}

#announcementModal .modal-thumbs{
  margin-top:10px !important;
  gap:10px !important;
}

#announcementModal .modal-thumb{
  width:78px !important;
  height:62px !important;
  border-radius:12px !important;
}

#announcementModal .modal-category{
  margin:0 42px 4px 0 !important;
  padding:6px 10px !important;
  font-size:12px !important;
}

#announcementModal .modal-title{
  font-size:28px !important;
  margin:0 42px 4px 0 !important;
  line-height:1.08 !important;
}

#announcementModal .modal-status{
  font-size:16px !important;
  margin:0 0 5px !important;
}

#announcementModal .modal-author{
  font-size:14px !important;
  line-height:1.35 !important;
  margin-bottom:6px !important;
}

#announcementModal .modal-description{
  font-size:15px !important;
  line-height:1.35 !important;
  margin:4px 0 8px !important;
  max-height:58px !important;
  overflow:auto !important;
}

#announcementModal .contact-box{
  margin:8px 0 0 !important;
  padding:10px 12px !important;
  border-radius:16px !important;
  grid-template-columns:40px minmax(0,1fr) auto !important;
  gap:10px !important;
}

#announcementModal .modal-contact-icon{
  width:40px !important;
  height:40px !important;
  font-size:19px !important;
}

#announcementModal .modal-contact-text span,
#announcementModal .modal-contact-text em{
  font-size:13px !important;
  line-height:1.25 !important;
}

#announcementModal .show-phone-btn{
  min-width:126px !important;
  padding:10px 14px !important;
  font-size:14px !important;
  border-radius:13px !important;
}

#announcementModal .message-author-form{
  margin-top:8px !important;
}

#announcementModal .message-author-form label{
  display:none !important;
}

#announcementModal .message-author-form textarea{
  min-height:54px !important;
  height:54px !important;
  margin-bottom:8px !important;
  padding:10px 12px !important;
  font-size:14px !important;
  border-radius:14px !important;
}

#announcementModal .modal-action-btn,
#announcementModal .modal-edit-box .primary-btn,
#announcementModal .modal-edit-box .secondary-btn,
#announcementModal .modal-edit-box .danger-btn{
  min-height:46px !important;
  padding:11px 16px !important;
  font-size:15px !important;
  border-radius:14px !important;
}

#announcementModal .modal-action-box{
  margin-top:0 !important;
  display:grid !important;
  gap:8px !important;
}

#announcementModal .modal-info-box div{
  grid-template-columns:122px minmax(0,1fr) !important;
  gap:8px !important;
  padding:0 12px !important;
  border-right:1px solid #edf1ea !important;
}

#announcementModal .modal-info-box div:last-child{
  border-right:0 !important;
}

#announcementModal .modal-info-box b,
#announcementModal .modal-info-box span{
  font-size:14px !important;
  line-height:1.3 !important;
}

#announcementModal .modal-edit-box{
  margin-top:10px !important;
  grid-template-columns:1fr 1fr !important;
  gap:10px 14px !important;
}

#announcementModal .modal-edit-box > form,
#announcementModal .modal-edit-box > .primary-btn,
#announcementModal .modal-edit-box > .secondary-btn,
#announcementModal .modal-edit-box > .danger-btn{
  margin:0 !important;
}

#announcementModal .modal-edit-box > form:last-child,
#announcementModal .modal-edit-box > .primary-btn:last-child{
  grid-column:1 / -1 !important;
}

@media(max-height:820px) and (min-width:861px){
  #announcementModal .modal-window{
    margin:28px auto !important;
    max-height:calc(100vh - 56px) !important;
    padding:16px 20px !important;
    gap:12px 24px !important;
  }
  #announcementModal .modal-image,
  #announcementModal .modal-image[src=""],
  #announcementModal .modal-image:not([src]){
    height:285px !important;
    min-height:285px !important;
    max-height:285px !important;
  }
  #announcementModal .modal-thumb{width:70px !important;height:54px !important;}
  #announcementModal .modal-title{font-size:26px !important;}
  #announcementModal .modal-description{max-height:48px !important;}
  #announcementModal .message-author-form textarea{height:46px !important;min-height:46px !important;}
  #announcementModal .modal-action-btn,
  #announcementModal .modal-edit-box .primary-btn,
  #announcementModal .modal-edit-box .secondary-btn,
  #announcementModal .modal-edit-box .danger-btn{min-height:42px !important;padding:9px 14px !important;}
  #announcementModal .modal-info-box{padding:10px 12px !important;}
}

@media(max-width:860px){
  #announcementModal .modal-window{
    display:block !important;
    width:calc(100% - 22px) !important;
    max-width:calc(100% - 22px) !important;
    margin:12px auto !important;
    max-height:calc(100vh - 24px) !important;
    padding:14px !important;
  }
  #announcementModal .modal-image,
  #announcementModal .modal-image[src=""],
  #announcementModal .modal-image:not([src]){
    height:230px !important;
    min-height:230px !important;
    max-height:230px !important;
  }
  #announcementModal .modal-info-box{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
  #announcementModal .modal-info-box div{
    grid-template-columns:1fr !important;
    padding:0 !important;
    border-right:0 !important;
    border-bottom:1px solid #edf1ea !important;
    padding-bottom:8px !important;
  }
  #announcementModal .modal-info-box div:last-child{border-bottom:0 !important;padding-bottom:0 !important;}
  #announcementModal .modal-edit-box{grid-template-columns:1fr !important;}
}

.auth-alert{
  border-radius:14px;
  padding:11px 13px;
  margin:0 0 12px;
  font-size:13px;
  line-height:1.35;
  font-weight:700;
}
.auth-alert-error{
  background:#fff0f0;
  border:1px solid #f2b8b8;
  color:#9b1111;
}
.auth-alert + .field input,
.auth-alert + input{
  border-color:#e2b0b0;
}

/* === Compact user profile page: fit desktop screen better === */
@media (min-width: 901px){
  .profile-page{
    padding-top:16px;
    padding-bottom:12px;
  }
  .profile-page .profile-card{
    padding:18px 22px;
    border-radius:24px;
    margin-bottom:12px;
  }
  .profile-head{
    grid-template-columns:76px minmax(0,1fr) 300px;
    gap:16px;
    align-items:center;
  }
  .profile-avatar img{
    width:76px;
    height:76px;
  }
  .profile-main h1{
    font-size:30px;
    margin-bottom:8px;
    line-height:1.1;
  }
  .profile-meta{
    gap:6px;
    margin-bottom:10px;
  }
  .profile-meta span{
    padding:5px 9px;
    font-size:12px;
  }
  .profile-review-summary{
    padding:7px 12px;
    border-radius:16px;
  }
  .profile-review-summary strong{
    font-size:24px;
  }
  .profile-message-form textarea{
    min-height:58px;
    padding:10px 12px;
    margin-bottom:8px;
  }
  .profile-message-form .primary-btn,
  .review-form .primary-btn{
    padding:12px 16px;
    min-height:44px;
  }
  .profile-grid-section{
    gap:12px;
  }
  .profile-card h2{
    font-size:23px;
    margin-bottom:10px;
  }
  .profile-ads-grid{
    grid-template-columns:repeat(auto-fill,minmax(125px,1fr));
    gap:10px;
  }
  .profile-ad-card img{
    height:82px;
  }
  .profile-ad-card b{
    padding:8px 10px 2px;
    font-size:14px;
    line-height:1.2;
  }
  .profile-ad-card span{
    padding:0 10px 9px;
    font-size:11px;
    line-height:1.25;
  }
  .review-form{
    padding:12px;
    border-radius:18px;
    margin-bottom:10px;
  }
  .review-form label{
    margin:6px 0 5px;
    font-size:14px;
  }
  .review-form select,
  .review-form textarea{
    padding:10px 12px;
    font-size:14px;
    border-radius:12px;
  }
  .review-form textarea{
    min-height:62px;
  }
  .reviews-list{
    gap:8px;
  }
  .review-item{
    padding:10px 12px;
    border-radius:16px;
  }
  .review-top{
    margin-bottom:5px;
  }
  .review-item p{
    margin-bottom:5px;
    line-height:1.35;
  }
}

/* v11k: понятный блок связи для гостей в карточке объявления */
#announcementModal .contact-box.contact-box--guest,
.modal-window-v11b .contact-box.contact-box--guest{
  grid-template-columns:46px minmax(0,1fr) !important;
  align-items:flex-start !important;
  gap:14px !important;
}
#announcementModal .modal-contact-guest,
.modal-window-v11b .modal-contact-guest{
  display:block !important;
}
#announcementModal .modal-contact-guest span,
.modal-window-v11b .modal-contact-guest span{
  display:block;
  margin-bottom:6px;
  font-size:16px;
  font-weight:900;
  color:#172033;
}
#announcementModal .modal-contact-guest em,
.modal-window-v11b .modal-contact-guest em{
  display:block;
  margin-bottom:10px;
  font-size:14px;
  line-height:1.45;
  color:#556174;
  font-style:normal;
}
#announcementModal .guest-benefits-title,
.modal-window-v11b .guest-benefits-title{
  margin:0 0 6px;
  font-size:14px;
  font-weight:800;
  color:#172033;
}
#announcementModal .guest-benefits,
.modal-window-v11b .guest-benefits{
  margin:0 0 12px;
  padding:0;
  list-style:none;
  display:grid;
  gap:4px;
  font-size:14px;
  line-height:1.35;
  color:#344054;
}
#announcementModal .guest-benefits li::before,
.modal-window-v11b .guest-benefits li::before{
  content:'✓';
  display:inline-block;
  margin-right:7px;
  color:#2f8f16;
  font-weight:900;
}
#announcementModal .guest-auth-actions,
.modal-window-v11b .guest-auth-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
#announcementModal .guest-register-btn,
.modal-window-v11b .guest-register-btn{
  border:1px solid var(--green-dark);
  border-radius:14px;
  background:#fff;
  color:var(--green-dark);
  font-weight:900;
  padding:12px 16px;
  cursor:pointer;
  white-space:nowrap;
}
#announcementModal .guest-register-btn:hover,
.modal-window-v11b .guest-register-btn:hover{
  background:#f2faed;
}
#announcementModal .modal-author-name,
#announcementModal .modal-author-rating,
#announcementModal .modal-author-reviews,
.modal-window-v11b .modal-author-name,
.modal-window-v11b .modal-author-rating,
.modal-window-v11b .modal-author-reviews{
  line-height:1.35;
}
#announcementModal .modal-author-rating,
#announcementModal .modal-author-reviews,
.modal-window-v11b .modal-author-rating,
.modal-window-v11b .modal-author-reviews{
  margin-top:3px;
  color:#526071;
}

@media(max-width:760px){
  #announcementModal .guest-auth-actions,
  .modal-window-v11b .guest-auth-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  #announcementModal .guest-auth-actions .show-phone-btn,
  #announcementModal .guest-register-btn,
  .modal-window-v11b .guest-auth-actions .show-phone-btn,
  .modal-window-v11b .guest-register-btn{
    width:100%;
  }
}


/* v11l: аккуратный блок для гостя в объявлении */
#announcementModal .contact-box.contact-box--guest,
.modal-window-v11b .contact-box.contact-box--guest{
  display:grid !important;
  grid-template-columns:42px minmax(0,1fr) !important;
  align-items:flex-start !important;
  gap:12px !important;
  padding:14px 16px !important;
  margin-top:10px !important;
}
#announcementModal .modal-contact-guest span,
.modal-window-v11b .modal-contact-guest span{
  display:block !important;
  margin:0 0 5px !important;
  font-size:15px !important;
  font-weight:900 !important;
  color:#172033 !important;
}
#announcementModal .modal-contact-guest em,
.modal-window-v11b .modal-contact-guest em{
  display:block !important;
  margin:0 0 8px !important;
  font-size:13px !important;
  line-height:1.35 !important;
  color:#586276 !important;
  font-style:normal !important;
}
#announcementModal .guest-benefits-title,
.modal-window-v11b .guest-benefits-title{
  margin:0 0 5px !important;
  font-size:13px !important;
  font-weight:900 !important;
  color:#172033 !important;
}
#announcementModal .guest-benefits,
.modal-window-v11b .guest-benefits{
  margin:0 0 10px !important;
  padding:0 !important;
  list-style:none !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:4px 12px !important;
  font-size:13px !important;
  line-height:1.25 !important;
  color:#344054 !important;
}
#announcementModal .guest-benefits li::before,
.modal-window-v11b .guest-benefits li::before{
  content:'✓' !important;
  display:inline-block !important;
  margin-right:6px !important;
  color:#2f8f16 !important;
  font-weight:900 !important;
}
#announcementModal .guest-auth-actions,
.modal-window-v11b .guest-auth-actions{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:10px !important;
}
#announcementModal .guest-auth-actions .show-phone-btn,
#announcementModal .guest-register-btn,
.modal-window-v11b .guest-auth-actions .show-phone-btn,
.modal-window-v11b .guest-register-btn{
  width:100% !important;
  min-width:0 !important;
  height:40px !important;
  padding:0 12px !important;
  border-radius:12px !important;
  font-size:14px !important;
  font-weight:900 !important;
  cursor:pointer !important;
}
#announcementModal .guest-register-btn,
.modal-window-v11b .guest-register-btn{
  border:1px solid var(--green-dark) !important;
  background:#fff !important;
  color:var(--green-dark) !important;
}
#announcementModal .guest-message-btn,
.modal-window-v11b .guest-message-btn{
  background:#fff !important;
  color:var(--green-dark) !important;
  border:1px solid #9fd18d !important;
  box-shadow:none !important;
}
#announcementModal .help-offer-btn[data-open-auth],
.modal-window-v11b .help-offer-btn[data-open-auth]{
  opacity:1 !important;
  filter:none !important;
  background:linear-gradient(180deg,#2fc516,#159700) !important;
  color:#fff !important;
}
@media(max-width:760px){
  #announcementModal .guest-benefits,
  .modal-window-v11b .guest-benefits,
  #announcementModal .guest-auth-actions,
  .modal-window-v11b .guest-auth-actions{
    grid-template-columns:1fr !important;
  }
}


/* v11m: регистрация — главное действие для нового гостя */
#announcementModal .guest-auth-actions,
.modal-window-v11b .guest-auth-actions{
  grid-template-columns:1fr 1fr !important;
}
#announcementModal .guest-register-btn,
.modal-window-v11b .guest-register-btn{
  background:linear-gradient(180deg,#2fc516,#159700) !important;
  color:#fff !important;
  border:1px solid #159700 !important;
  box-shadow:0 10px 22px rgba(36,166,17,.18) !important;
}
#announcementModal .guest-register-btn:hover,
.modal-window-v11b .guest-register-btn:hover{
  background:linear-gradient(180deg,#31cf18,#148f00) !important;
}
#announcementModal .guest-login-btn,
.modal-window-v11b .guest-login-btn{
  background:#fff !important;
  color:var(--green-dark) !important;
  border:1px solid #9fd18d !important;
  box-shadow:none !important;
}
#announcementModal .guest-fast-note,
.modal-window-v11b .guest-fast-note{
  margin-top:8px !important;
  text-align:center !important;
  font-size:12px !important;
  line-height:1.3 !important;
  color:#6b7280 !important;
}
@media(max-width:760px){
  #announcementModal .guest-auth-actions,
  .modal-window-v11b .guest-auth-actions{
    grid-template-columns:1fr !important;
  }
}


/* v11p: финальная верстка кнопок гостя в одну строку */
#announcementModal .contact-box--guest .guest-auth-actions,
#announcementModal .modal-contact-guest .guest-auth-actions,
.modal-window-v11b .contact-box--guest .guest-auth-actions,
.modal-window-v11b .modal-contact-guest .guest-auth-actions{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:stretch !important;
  width:100% !important;
  gap:10px !important;
}
#announcementModal .contact-box--guest .guest-auth-actions .guest-login-btn,
#announcementModal .contact-box--guest .guest-auth-actions .guest-register-btn,
#announcementModal .modal-contact-guest .guest-auth-actions .guest-login-btn,
#announcementModal .modal-contact-guest .guest-auth-actions .guest-register-btn,
.modal-window-v11b .contact-box--guest .guest-auth-actions .guest-login-btn,
.modal-window-v11b .contact-box--guest .guest-auth-actions .guest-register-btn,
.modal-window-v11b .modal-contact-guest .guest-auth-actions .guest-login-btn,
.modal-window-v11b .modal-contact-guest .guest-auth-actions .guest-register-btn{
  flex:1 1 0 !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  grid-column:auto !important;
  margin:0 !important;
  height:42px !important;
  padding:0 10px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  line-height:1.15 !important;
}
#announcementModal .contact-box--guest .guest-auth-actions .guest-login-btn,
#announcementModal .modal-contact-guest .guest-auth-actions .guest-login-btn,
.modal-window-v11b .contact-box--guest .guest-auth-actions .guest-login-btn,
.modal-window-v11b .modal-contact-guest .guest-auth-actions .guest-login-btn{
  background:#fff !important;
  color:var(--green-dark) !important;
  border:1px solid #9fd18d !important;
  box-shadow:none !important;
}
#announcementModal .contact-box--guest .guest-auth-actions .guest-register-btn,
#announcementModal .modal-contact-guest .guest-auth-actions .guest-register-btn,
.modal-window-v11b .contact-box--guest .guest-auth-actions .guest-register-btn,
.modal-window-v11b .modal-contact-guest .guest-auth-actions .guest-register-btn{
  background:linear-gradient(180deg,#2fc516,#159700) !important;
  color:#fff !important;
  border:1px solid #159700 !important;
  box-shadow:0 10px 22px rgba(36,166,17,.18) !important;
}
@media(max-width:520px){
  #announcementModal .contact-box--guest .guest-auth-actions,
  #announcementModal .modal-contact-guest .guest-auth-actions,
  .modal-window-v11b .contact-box--guest .guest-auth-actions,
  .modal-window-v11b .modal-contact-guest .guest-auth-actions{
    flex-direction:column !important;
  }
}

/* v11r: аккуратный блок согласия в регистрации */
.auth-register-form .auth-policy-check{
  display:flex !important;
  align-items:flex-start !important;
  gap:10px !important;
  padding:12px 14px !important;
  margin:10px 0 14px !important;
  border-radius:14px !important;
  background:#f8fcf4 !important;
  border:1px solid #dceccc !important;
  font-size:12px !important;
  line-height:1.45 !important;
  color:#334155 !important;
  font-weight:600 !important;
}
.auth-register-form .auth-policy-check input[type="checkbox"]{
  flex:0 0 18px !important;
  width:18px !important;
  min-width:18px !important;
  height:18px !important;
  margin:2px 0 0 !important;
  accent-color:#2aa10f;
}
.auth-register-form .auth-policy-text{
  display:block !important;
  flex:1 1 auto !important;
  min-width:0 !important;
}
.auth-register-form .auth-policy-text a{
  color:#2f730f !important;
  font-weight:800 !important;
  text-decoration:underline !important;
  text-underline-offset:2px;
}


.modal-description-box{margin:12px 18px;padding:14px 16px;background:#f8fcf4;border:1px solid #dbeccc;border-radius:14px;grid-column:1/-1}
.modal-description-title{font-weight:700;margin-bottom:8px;color:#376d09}
.modal-description{line-height:1.6;color:#30384a;white-space:pre-line;min-height:24px}


/* v1.2 modal description */
.modal-description-box{
 margin:12px 0;
 padding:12px 14px;
 background:#f8fcf4;
 border:1px solid #dbeccc;
 border-radius:16px;
}
.modal-description-title{
 font-weight:800;
 margin-bottom:8px;
 color:#376d09;
}
.modal-window-v11b{
 max-height:88vh;
}


/* Modal description improved */
.modal-details .modal-description-box{margin:14px 0 18px;padding:16px;background:#f8fcf4;border:1px solid #dbeccc;border-radius:14px;}
.modal-details .modal-description-title{font-size:16px;font-weight:800;color:#376d09;margin-bottom:8px;}
.modal-details .modal-description{font-size:15px;line-height:1.7;max-height:none!important;}

/* ===== FIX 1.3.1: карточка объявления — правильный порядок и без наложения ===== */
#announcementModal .modal-window.modal-window-v11b{
  max-width: 920px !important;
  width: calc(100% - 36px) !important;
  max-height: 84vh !important;
  margin: 6vh auto !important;
  padding: 22px 24px 22px !important;
  display: grid !important;
  grid-template-columns: minmax(280px, 390px) minmax(320px, 1fr) !important;
  grid-template-areas:
    "gallery details"
    "info info"
    "owner owner" !important;
  gap: 14px 26px !important;
  align-items: start !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  scroll-behavior: auto !important;
}

#announcementModal .modal-gallery{
  grid-area: gallery !important;
  grid-row: auto !important;
  margin: 0 !important;
}

#announcementModal .modal-details{
  grid-area: details !important;
  min-width: 0 !important;
  border-left: 1px solid #edf3e8 !important;
  padding-left: 28px !important;
  padding-right: 4px !important;
}

#announcementModal .modal-category{
  display: inline-flex !important;
  margin: 0 44px 6px 0 !important;
  padding: 7px 11px !important;
  font-size: 12.5px !important;
  line-height: 1.2 !important;
  max-width: calc(100% - 48px) !important;
}

#announcementModal .modal-title{
  display: block !important;
  margin: 0 44px 6px 0 !important;
  font-size: 30px !important;
  line-height: 1.1 !important;
  color: #172033 !important;
}

#announcementModal .modal-status{
  display: inline-flex !important;
  width: max-content !important;
  margin: 0 0 8px !important;
  padding: 7px 13px !important;
  border-radius: 999px !important;
  font-size: 15px !important;
  font-weight: 900 !important;
}

#announcementModal .modal-author{
  display: block !important;
  margin: 0 0 10px !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  color: #344054 !important;
}

#announcementModal .modal-description-box{
  grid-column: auto !important;
  margin: 10px 0 12px !important;
  padding: 13px 15px !important;
  background: #f8fcf4 !important;
  border: 1px solid #dbeccc !important;
  border-radius: 16px !important;
}

#announcementModal .modal-description-title{
  margin: 0 0 7px !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  color: #376d09 !important;
}

#announcementModal .modal-description{
  min-height: 0 !important;
  max-height: 110px !important;
  overflow: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #30384a !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  white-space: pre-line !important;
}

#announcementModal .contact-box{
  margin: 10px 0 0 !important;
  padding: 10px 12px !important;
  border-radius: 16px !important;
  grid-template-columns: 40px minmax(0,1fr) auto !important;
  gap: 10px !important;
}

#announcementModal .message-author-form{
  margin-top: 9px !important;
}

#announcementModal .message-author-form textarea{
  min-height: 54px !important;
  height: 54px !important;
  margin-bottom: 8px !important;
  padding: 10px 12px !important;
  font-size: 14px !important;
}

#announcementModal .modal-action-box{
  display: grid !important;
  gap: 8px !important;
  margin-top: 8px !important;
}

#announcementModal .modal-info-box{
  grid-area: info !important;
  margin: 4px 0 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 0 !important;
  border: 1px solid #e2eadb !important;
  border-radius: 18px !important;
  background: #fff !important;
  overflow: hidden !important;
}

#announcementModal .modal-info-box div{
  min-height: 76px !important;
  padding: 14px 18px !important;
  border-right: 1px solid #edf1ea !important;
}

#announcementModal .modal-info-box div:last-child{
  border-right: 0 !important;
}

#announcementModal .modal-owner-box{
  grid-area: owner !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
}

#announcementModal .modal-owner-box .mark-announcement-found-form,
#announcementModal .modal-owner-box .helper-form{
  grid-column: 1 / -1 !important;
}

#announcementModal .modal-image{
  height: 320px !important;
  max-height: 320px !important;
}

@media(max-width: 820px){
  #announcementModal .modal-window.modal-window-v11b{
    width: calc(100% - 18px) !important;
    max-height: 90vh !important;
    margin: 4vh auto !important;
    padding: 16px !important;
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "gallery"
      "details"
      "info"
      "owner" !important;
    gap: 14px !important;
  }
  #announcementModal .modal-details{
    border-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  #announcementModal .modal-info-box,
  #announcementModal .modal-owner-box{
    grid-template-columns: 1fr !important;
  }
  #announcementModal .modal-info-box div{
    border-right: 0 !important;
    border-bottom: 1px solid #edf1ea !important;
  }
  #announcementModal .modal-info-box div:last-child{
    border-bottom: 0 !important;
  }
  #announcementModal .modal-image{
    height: 270px !important;
    max-height: 270px !important;
  }
}


/* ===== v1.3.2: Вариант Б — компактная карточка объявления ===== */
@media (min-width: 821px){
  #announcementModal .modal-window.modal-window-v11b{
    max-width: 920px !important;
    width: min(920px, calc(100% - 36px)) !important;
    max-height: calc(100vh - 92px) !important;
    margin: 46px auto !important;
    padding: 18px 24px 18px !important;
    grid-template-columns: minmax(270px, 370px) minmax(320px, 1fr) !important;
    gap: 12px 24px !important;
  }

  #announcementModal .modal-image,
  #announcementModal .modal-image[src=""],
  #announcementModal .modal-image:not([src]){
    height: 275px !important;
    min-height: 275px !important;
    max-height: 275px !important;
  }

  #announcementModal .modal-thumbs{
    margin-top: 9px !important;
    gap: 9px !important;
  }

  #announcementModal .modal-thumb{
    width: 68px !important;
    height: 56px !important;
  }

  #announcementModal .modal-details{
    padding-left: 24px !important;
  }

  #announcementModal .modal-description-box{
    margin: 9px 0 10px !important;
    padding: 12px 14px !important;
  }

  #announcementModal .contact-box{
    margin: 8px 0 0 !important;
    padding: 9px 11px !important;
    min-height: 58px !important;
  }

  #announcementModal .modal-info-box{
    margin-top: 0 !important;
    border-radius: 16px !important;
  }

  #announcementModal .modal-info-box div{
    min-height: 58px !important;
    padding: 10px 14px !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 6px 10px !important;
  }

  #announcementModal .modal-info-box b{
    font-size: 14px !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
  }

  #announcementModal .modal-info-box span,
  #announcementModal .modal-place-link span{
    font-size: 14px !important;
    line-height: 1.25 !important;
  }

  #announcementModal .modal-info-box div:nth-child(2) span{
    white-space: nowrap !important;
  }

  #announcementModal .modal-place-link em{
    font-size: 13px !important;
    line-height: 1.2 !important;
  }

  #announcementModal .modal-owner-box{
    gap: 10px 12px !important;
  }

  #announcementModal .modal-owner-box .modal-action-btn{
    min-height: 42px !important;
  }
}

/* Для чужого объявления: помощь — главное действие, сообщение — вторичное */
#announcementModal .modal-action-box{
  display: grid !important;
  gap: 9px !important;
}

#announcementModal .modal-action-box .help-offer-btn{
  order: 1 !important;
  width: 100% !important;
  min-height: 48px !important;
  border-radius: 14px !important;
  background: linear-gradient(180deg,#28c615,#149700) !important;
  color: #fff !important;
  border: 1px solid #149700 !important;
  box-shadow: 0 10px 22px rgba(36,166,17,.20) !important;
  font-size: 16px !important;
  font-weight: 900 !important;
}

#announcementModal .modal-action-box .help-offer-btn:hover{
  background: linear-gradient(180deg,#30cf18,#128f00) !important;
}

#announcementModal .modal-action-box .message-author-form{
  order: 2 !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

#announcementModal .modal-message-title{
  display: block !important;
  margin: 0 0 7px !important;
  color: #376d09 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
}

#announcementModal .modal-message-send-btn,
#announcementModal .modal-action-box .message-author-form .secondary-btn{
  background: #f5fbf1 !important;
  color: #376d09 !important;
  border: 1px solid #cfe6c3 !important;
  box-shadow: none !important;
}

#announcementModal .modal-action-box .message-author-form textarea{
  height: 48px !important;
  min-height: 48px !important;
  margin-bottom: 8px !important;
}

@media(max-width: 820px){
  #announcementModal .modal-image,
  #announcementModal .modal-image[src=""],
  #announcementModal .modal-image:not([src]){
    height: 235px !important;
    min-height: 235px !important;
    max-height: 235px !important;
  }

  #announcementModal .modal-info-box div{
    min-height: auto !important;
    padding: 10px 12px !important;
  }
}


/* ===== КНОПКА ЗАКРЫТИЯ ОБЪЯВЛЕНИЯ: ПОМОЩЬ ПОЛУЧЕНА ===== */
#announcementModal .modal-close-ad-btn{
  background:#169b0b !important;
  color:#fff !important;
  min-height:48px !important;
  font-weight:900 !important;
  letter-spacing:.1px;
}

#announcementModal .modal-close-ad-btn:hover{
  background:#0f8507 !important;
}

/* ===== ПОМОЩНИКИ: ВЫБОР ПРИ ЗАКРЫТИИ И ЗАПРОС ПОДТВЕРЖДЕНИЯ ===== */
.helper-close-form{
  margin-top:14px;
  padding:14px;
  border-radius:18px;
  background:#f8fcf4;
  border:1px solid #dbeccc;
}
.helper-close-title{
  font-weight:900;
  color:#172033;
  font-size:17px;
  margin-bottom:4px;
}
.helper-close-note{
  color:#657083;
  font-size:13px;
  line-height:1.35;
  margin-bottom:10px;
}
.helper-select-list{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:12px;
}
.helper-select-item{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:9px;
  align-items:start;
  padding:10px;
  border:1px solid #e2eadb;
  border-radius:14px;
  background:#fff;
}
.helper-select-item input[type="checkbox"]{
  width:18px;
  height:18px;
  margin-top:3px;
  accent-color:var(--green);
}
.helper-select-main{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
  min-width:0;
}
.helper-select-main a{
  font-weight:900;
  color:#376d09;
  text-decoration:none;
}
.helper-select-main a:hover{text-decoration:underline}
.helper-select-main em{
  font-style:normal;
  color:#657083;
  font-size:12px;
  font-weight:800;
}
.helper-select-main strong{
  display:inline-flex;
  padding:3px 8px;
  border-radius:999px;
  background:#fff4d6;
  color:#8a5a00;
  font-size:11px;
  font-weight:900;
}
.helper-chat-link{
  white-space:nowrap;
  color:#376d09;
  font-weight:900;
  font-size:12px;
  text-decoration:none;
}
.helper-select-item textarea{
  grid-column:2 / -1;
  width:100%;
  min-height:52px;
  border:1px solid #d8e2d0;
  border-radius:12px;
  padding:9px 10px;
  font-family:inherit;
  font-size:13px;
  resize:vertical;
}
.helper-select-empty{
  padding:12px;
  border-radius:14px;
  background:#fff;
  border:1px dashed #dbeccc;
  color:#657083;
  font-weight:700;
  line-height:1.35;
  margin-bottom:12px;
}
.help-request-confirm-btn{
  margin-top:8px;
  width:100%;
}
.help-request-confirm-btn.is-requested{
  background:#eef8e8 !important;
  color:#376d09 !important;
  border:1px solid #dbeccc !important;
}
.helper-confirmed-box{
  margin-top:12px;
  padding:12px;
  border-radius:16px;
  background:#f8fcf4;
  border:1px solid #dbeccc;
  color:#30384a;
  line-height:1.45;
}
.helper-confirmed-box b{display:block;margin-bottom:6px;color:#172033}
.helper-confirmed-box a{font-weight:900;color:#376d09;text-decoration:none}
.helper-confirmed-box a:hover{text-decoration:underline}
@media(max-width:700px){
  .helper-select-item{grid-template-columns:auto minmax(0,1fr)}
  .helper-chat-link{grid-column:2 / -1}
  .helper-select-item textarea{grid-column:1 / -1}
}


/* ===== ПРОФИЛЬ: ИМЯ, РЕПУТАЦИЯ И ИСТОРИЯ ПОМОЩИ ===== */
.profile-name-row{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.profile-name-row h1{
  margin-bottom:0;
}

.profile-name-edit-toggle{
  width:36px;
  height:36px;
  border:1px solid #dbeccc;
  border-radius:50%;
  background:#f8fcf4;
  color:#376d09;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:16px;
  box-shadow:0 6px 14px rgba(23,32,51,.06);
}

.profile-name-edit-toggle:hover{
  background:#eef8e8;
  transform:translateY(-1px);
}

.profile-name-edit-form{
  display:none;
  align-items:center;
  gap:8px;
  margin:12px 0 4px;
  max-width:430px;
}

.profile-name-edit-form.is-open{
  display:flex;
}

.profile-name-edit-form input{
  flex:1;
  min-width:180px;
  border:1px solid #d8e2d0;
  border-radius:14px;
  padding:11px 13px;
  font-size:16px;
  font-weight:800;
}

.profile-name-edit-form button{
  width:42px;
  height:42px;
  border:0;
  border-radius:50%;
  cursor:pointer;
  font-weight:900;
}

.profile-name-edit-form button[type="submit"]{
  background:#62b80f;
  color:#fff;
}

.profile-name-edit-cancel{
  background:#fff0f0;
  color:#a31212;
}

.profile-meta-trust{
  margin-top:14px;
}

.profile-meta-trust a,
.profile-meta-trust span{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  padding:8px 11px;
  border-radius:999px;
  background:#f3fbef;
  color:#2f6c22;
  font-size:13px;
  font-weight:900;
  border:1px solid #dbeccc;
}

.profile-meta-trust a:hover{
  background:#eaf8e2;
  transform:translateY(-1px);
}

.profile-helped-card,
.profile-rating-history{
  margin-bottom:18px;
}

.profile-card-headline{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-end;
  flex-wrap:wrap;
  margin-bottom:14px;
}

.profile-card-headline h2{
  margin:0;
}

.profile-help-categories{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
  gap:10px;
  margin:14px 0 16px;
}

.profile-help-categories a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 14px;
  border-radius:18px;
  background:#f8fcf4;
  border:1px solid #dbeccc;
  color:#172033;
  text-decoration:none;
  font-weight:900;
  transition:.18s;
}

.profile-help-categories a:hover,
.profile-help-categories a.active{
  background:#eef8e8;
  border-color:#79c96b;
  transform:translateY(-1px);
}

.profile-help-categories strong{
  min-width:28px;
  height:28px;
  border-radius:999px;
  background:#62b80f;
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:13px;
}

.profile-helped-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.profile-helped-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:14px;
  border-radius:18px;
  background:#fff;
  border:1px solid #edf3e8;
  box-shadow:0 8px 18px rgba(23,32,51,.05);
}

.profile-helped-item b{
  display:block;
  font-size:17px;
  margin-bottom:5px;
}

.profile-helped-item span,
.profile-helped-item small{
  display:block;
  color:#657083;
  font-weight:700;
  margin-top:3px;
}

.profile-helped-item small a{
  color:#376d09;
  font-weight:900;
  text-decoration:none;
}

.rating-log-list{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.rating-log-item{
  display:grid;
  grid-template-columns:60px minmax(0,1fr) auto auto;
  gap:10px;
  align-items:center;
  padding:11px 12px;
  border-radius:16px;
  background:#f8fcf4;
  border:1px solid #dbeccc;
}

.rating-log-item strong{
  color:#376d09;
  font-size:18px;
}

.rating-log-item span{
  font-weight:800;
}

.rating-log-item a{
  color:#376d09;
  font-weight:900;
  text-decoration:none;
}

.rating-log-item small{
  color:#657083;
  font-weight:700;
}

@media(max-width:700px){
  .profile-name-edit-form{
    flex-wrap:wrap;
  }

  .profile-helped-item{
    grid-template-columns:1fr;
  }

  .profile-helped-item .secondary-btn{
    width:100%;
  }

  .rating-log-item{
    grid-template-columns:1fr;
  }
}

/* ===== v1.3.9: автор и короткая категория в мини-карточках ===== */
.visible-dog-badge{
  max-width:150px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

.visible-announcement-card small{
  color:#657083 !important;
  font-weight:700 !important;
}

.map-balloon-author{
  margin:0 0 6px;
  color:#657083;
  font-size:13px;
  line-height:1.3;
  font-weight:800;
}

.map-balloon-meta{
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}


/* ===== v1.3.11 + v1.3.12: компактный умный поиск ===== */
.home-search-panel.home-search-panel-smart{
  padding:14px 16px !important;
  border-radius:18px !important;
  box-shadow:0 12px 28px rgba(23,32,51,.06) !important;
}

.home-search-panel-smart .home-main-search{
  position:relative;
  grid-template-columns:46px minmax(0,1fr)116px 92px !important;
  height:50px !important;
  margin-bottom:10px !important;
  border-radius:16px !important;
  overflow:visible !important;
}

.home-search-panel-smart .home-main-search > *{
  min-width:0;
}

.home-search-panel-smart .home-main-search-icon{
  font-size:22px !important;
}

.home-search-panel-smart .home-main-search input[type="search"]{
  font-size:15px !important;
  padding:0 12px !important;
}

.home-search-panel-smart .home-main-search button{
  font-size:14px !important;
  border-radius:0 !important;
}

.home-search-panel-smart .home-filter-open{
  background:#fff !important;
  color:#376d09 !important;
  border-left:1px solid #edf1e8 !important;
  border-right:1px solid #edf1e8 !important;
}

.home-search-panel-smart .home-main-search button[type="submit"]{
  border-radius:0 15px 15px 0 !important;
}

.home-quick-tags{
  gap:8px !important;
  margin-bottom:8px;
}

.home-quick-tags button{
  padding:8px 12px !important;
  border-radius:999px !important;
  font-size:13px !important;
  font-weight:850 !important;
  background:#fff !important;
  white-space:nowrap;
}

.home-popular-searches{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-top:8px;
  color:#6b7280;
  font-size:12.5px;
}

.home-popular-searches span{
  font-weight:800;
  color:#586174;
}

.home-popular-searches button{
  border:0;
  border-radius:999px;
  background:#f6fbf2;
  color:#376d09;
  padding:6px 10px;
  font-size:12.5px;
  font-weight:800;
  cursor:pointer;
}

.home-popular-searches button:hover{
  background:#eaf7e4;
}

.home-search-suggestions{
  position:absolute;
  left:46px;
  right:208px;
  top:56px;
  z-index:20;
  background:#fff;
  border:1px solid #dfead7;
  border-radius:14px;
  box-shadow:0 16px 36px rgba(23,32,51,.14);
  padding:8px;
}

.home-search-suggestions button{
  width:100%;
  display:block;
  text-align:left;
  border:0 !important;
  border-radius:10px !important;
  background:#fff !important;
  color:#172033 !important;
  padding:10px 12px !important;
  font-size:14px !important;
  font-weight:800 !important;
  cursor:pointer;
}

.home-search-suggestions button:hover{
  background:#f3fbef !important;
  color:#276f13 !important;
}

@media(max-width:900px){
  .home-search-panel-smart .home-main-search{
    grid-template-columns:42px minmax(0,1fr)92px 78px !important;
  }
  .home-search-suggestions{
    left:0;
    right:0;
    top:56px;
  }
}

@media(max-width:620px){
  .home-search-panel.home-search-panel-smart{
    padding:12px !important;
  }
  .home-search-panel-smart .home-main-search{
    grid-template-columns:38px minmax(0,1fr);
    height:auto !important;
    overflow:visible !important;
  }
  .home-search-panel-smart .home-main-search-icon,
  .home-search-panel-smart .home-main-search input[type="search"]{
    height:48px !important;
  }
  .home-search-panel-smart .home-filter-open,
  .home-search-panel-smart .home-main-search button[type="submit"]{
    height:42px !important;
    border-top:1px solid #edf1e8 !important;
    border-radius:0 !important;
  }
  .home-search-panel-smart .home-filter-open{
    grid-column:1 / 2;
  }
  .home-search-panel-smart .home-main-search button[type="submit"]{
    grid-column:2 / 3;
    border-radius:0 0 14px 0 !important;
  }
  .home-search-suggestions{
    top:52px;
  }
  .home-popular-searches span{
    width:100%;
  }
}


/* ===== v1.3.13: выравнивание строки умного поиска ===== */
.home-search-panel-smart .home-main-search{
  height:50px !important;
  align-items:stretch !important;
}

.home-search-panel-smart .home-main-search-icon,
.home-search-panel-smart .home-filter-open,
.home-search-panel-smart .home-main-search button[type="submit"]{
  height:50px !important;
  min-height:50px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
  margin:0 !important;
}

.home-search-panel-smart .home-main-search input[type="search"]{
  height:50px !important;
  min-height:50px !important;
  line-height:50px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  margin:0 !important;
  display:block !important;
  align-self:stretch !important;
  font-family:inherit !important;
  vertical-align:middle !important;
  -webkit-appearance:none;
  appearance:none;
}

.home-search-panel-smart .home-main-search input[type="search"]::-webkit-search-decoration,
.home-search-panel-smart .home-main-search input[type="search"]::-webkit-search-cancel-button,
.home-search-panel-smart .home-main-search input[type="search"]::-webkit-search-results-button,
.home-search-panel-smart .home-main-search input[type="search"]::-webkit-search-results-decoration{
  -webkit-appearance:none;
}

.home-search-panel-smart .home-main-search input[type="search"]::placeholder{
  line-height:50px !important;
}

@media(max-width:620px){
  .home-search-panel-smart .home-main-search{
    align-items:stretch !important;
  }

  .home-search-panel-smart .home-main-search-icon,
  .home-search-panel-smart .home-main-search input[type="search"]{
    height:48px !important;
    min-height:48px !important;
    line-height:48px !important;
  }

  .home-search-panel-smart .home-filter-open,
  .home-search-panel-smart .home-main-search button[type="submit"]{
    height:42px !important;
    min-height:42px !important;
  }
}


/* legacy search layout v1.3.15 удалён в v6.4.0: заменён модулем home-search-context.css */
/* ===== АВАТАР ПРОФИЛЯ ===== */
.profile-avatar-editable{
  position:relative;
  width:96px;
  height:96px;
  flex:0 0 96px;
}

.profile-avatar-editable img{
  width:96px !important;
  height:96px !important;
  border-radius:50%;
  object-fit:cover;
  display:block;
}

.profile-avatar-form{
  position:absolute;
  right:-2px;
  bottom:-2px;
  margin:0;
}

.profile-avatar-upload{
  width:34px;
  height:34px;
  border-radius:50%;
  background:#fff;
  border:1px solid #dbeccc;
  color:#376d09;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 8px 22px rgba(23,32,51,.16);
  font-size:16px;
  line-height:1;
}

.profile-avatar-upload:hover{
  background:#f3fbef;
  transform:translateY(-1px);
}

.profile-avatar-upload input{
  display:none;
}

@media(max-width:700px){
  .profile-avatar-editable{
    width:86px;
    height:86px;
    flex-basis:86px;
  }
  .profile-avatar-editable img{
    width:86px !important;
    height:86px !important;
  }
}

/* ===== ПРОФИЛЬ: аккуратная кнопка аватара и бейджи уровней ===== */
.profile-avatar-editable{
  position:relative !important;
  width:96px !important;
  height:96px !important;
  flex:0 0 96px !important;
}

.profile-avatar-editable img,
.profile-avatar .avatar{
  width:96px !important;
  height:96px !important;
  border-radius:50% !important;
  object-fit:cover !important;
  display:block !important;
}

.profile-avatar-form{
  position:absolute !important;
  right:2px !important;
  bottom:2px !important;
  width:auto !important;
  height:auto !important;
  margin:0 !important;
  z-index:4 !important;
}

.profile-avatar-upload{
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  min-height:26px !important;
  max-width:26px !important;
  max-height:26px !important;
  padding:0 !important;
  border-radius:50% !important;
  background:#62b80f !important;
  border:2px solid #fff !important;
  color:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  box-shadow:0 6px 16px rgba(23,32,51,.22) !important;
  font-size:0 !important;
  line-height:1 !important;
  overflow:hidden !important;
}

.profile-avatar-camera::before{
  content:'📷';
  display:block;
  font-size:13px !important;
  line-height:1 !important;
  transform:translateY(0);
}

.profile-avatar-upload:hover{
  background:#4d9708 !important;
  transform:translateY(-1px);
}

.profile-avatar-upload input{
  display:none !important;
}

.profile-level-badge{
  background:linear-gradient(135deg,#f3fbef,#ffffff) !important;
  border-color:#cfe8c0 !important;
  color:#2f6c22 !important;
}

.profile-level-new-participant,
.profile-level-novyy-uchastnik{
  background:#f3fbef !important;
  border-color:#dbeccc !important;
  color:#2f6c22 !important;
}

.profile-level-helper,
.profile-level-pomoshchnik,
.profile-level-proverennyy-pomoshchnik{
  background:#fff9e8 !important;
  border-color:#f3d98b !important;
  color:#8a5a00 !important;
}

.profile-level-aktivnyy-uchastnik,
.profile-level-volontyor,
.profile-level-khranitel-soobshchestva{
  background:#eef8ff !important;
  border-color:#b9ddff !important;
  color:#0b5b8f !important;
}

@media(max-width:700px){
  .profile-avatar-editable,
  .profile-avatar-editable img,
  .profile-avatar .avatar{
    width:86px !important;
    height:86px !important;
    flex-basis:86px !important;
  }
  .profile-avatar-upload{
    width:24px !important;
    height:24px !important;
    min-width:24px !important;
    min-height:24px !important;
    max-width:24px !important;
    max-height:24px !important;
  }
  .profile-avatar-camera::before{font-size:12px !important;}
}


/* ===== v1.3.19: аватар автора в объявлениях ===== */
.visible-announcement-card > .visible-dog-photo{
  width:92px !important;
  height:76px !important;
  object-fit:cover !important;
  border-radius:14px !important;
  background:#edf7e8 !important;
  display:block !important;
}

.visible-dog-author,
.map-balloon-author,
.modal-author-card{
  display:flex;
  align-items:center;
  gap:7px;
}

.visible-dog-author{
  margin:4px 0 3px;
  color:#657083;
  font-size:13px;
  line-height:1.25;
  font-weight:800;
}

.author-avatar-mini{
  width:24px;
  height:24px;
  min-width:24px;
  border-radius:50%;
  overflow:hidden;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#eef8e8;
  border:1px solid #dbeccc;
  color:#376d09;
  font-size:12px;
  font-weight:900;
  line-height:1;
}

.author-avatar-mini img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:50% !important;
  display:block !important;
  background:#eef8e8 !important;
}

.map-balloon-author{
  margin:5px 0 6px;
  color:#657083;
  font-size:13px;
  line-height:1.3;
  font-weight:800;
}

.map-balloon-author .author-avatar-mini{
  width:22px;
  height:22px;
  min-width:22px;
}

.modal-author-card{
  margin:8px 0 10px;
}

.modal-author-avatar{
  width:42px;
  height:42px;
  min-width:42px;
  border-radius:50%;
  overflow:hidden;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#eef8e8;
  border:1px solid #dbeccc;
  color:#376d09;
  font-size:18px;
  font-weight:900;
}

.modal-author-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:50%;
  display:block;
}

.modal-author-info{
  min-width:0;
}

.modal-author-info .modal-author-name,
.modal-author-info .modal-author-rating,
.modal-author-info .modal-author-reviews{
  line-height:1.35;
}


/* ===== КЛИКАБЕЛЬНЫЙ АВТОР И СТАТУС В МИНИ-КАРТОЧКАХ/БАЛУНЕ ===== */
.visible-dog-author.is-clickable,
.map-balloon-author-link{
  cursor:pointer;
  text-decoration:none;
  color:#657083;
  transition:.15s ease;
}

.visible-dog-author.is-clickable:hover,
.map-balloon-author-link:hover{
  color:#376d09;
  text-decoration:underline;
}

.map-balloon-status-btn{
  cursor:pointer;
  font-family:inherit;
}

.map-balloon-status-btn:hover{
  background:#fff0d8;
  border-color:#ffb84d;
  transform:translateY(-1px);
}


/* ===== v1.3.22: аватарки в чате, отзывах, помощниках и истории помощи ===== */
.dialog-item-with-avatar{
  display:grid !important;
  grid-template-columns:38px minmax(0,1fr) !important;
  gap:10px !important;
  align-items:center !important;
}
.dialog-avatar,
.dialog-avatar img,
.chat-head-avatar,
.chat-head-avatar img,
.chat-message-avatar,
.chat-message-avatar img,
.review-author img,
.profile-helped-author-avatar,
.profile-helped-author-avatar img{
  border-radius:50% !important;
  object-fit:cover !important;
  flex:0 0 auto;
}
.dialog-avatar img{width:38px!important;height:38px!important;display:block}
.dialog-content{min-width:0;display:block}
.dialog-content b{display:flex!important;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}
.dialog-content > span{display:block}

.chat-head-with-avatar{
  display:flex;
  align-items:center;
  gap:12px;
}
.chat-head-avatar img{
  width:46px!important;
  height:46px!important;
  display:block;
  box-shadow:0 6px 16px rgba(23,32,51,.10);
}
.chat-message-row{
  display:flex;
  align-items:flex-end;
  gap:8px;
}
.chat-message-row.me{
  justify-content:flex-end;
}
.chat-message-row.other{
  justify-content:flex-start;
}
.chat-message-row.me .chat-message-avatar{
  order:2;
}
.chat-message-avatar img{
  width:32px!important;
  height:32px!important;
  display:block;
}
.chat-message-row .chat-bubble{
  max-width:78%;
}
@media(max-width:700px){
  .chat-message-row .chat-bubble{max-width:84%}
  .chat-message-avatar img{width:28px!important;height:28px!important}
}

.review-top-with-avatar{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
}
.review-author{
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-width:0;
}
.review-author img{
  width:34px!important;
  height:34px!important;
  display:block;
}
.review-author span{
  font-weight:900;
  color:#172033;
}

.profile-helped-item-with-avatar{
  grid-template-columns:42px minmax(0,1fr) auto !important;
}
.profile-helped-author-avatar img{
  width:42px!important;
  height:42px!important;
  display:block;
}
@media(max-width:650px){
  .profile-helped-item-with-avatar{
    grid-template-columns:42px minmax(0,1fr) !important;
  }
  .profile-helped-item-with-avatar .secondary-btn{
    grid-column:1 / -1;
    width:100%;
  }
}

.user-mini-avatar,
.modal-helper-avatar,
.helper-select-avatar{
  width:28px;
  height:28px;
  border-radius:50%;
  overflow:hidden;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#eef8e8;
  color:#376d09;
  font-weight:900;
  flex:0 0 28px;
  box-shadow:0 3px 10px rgba(23,32,51,.08);
}
.user-mini-avatar img,
.modal-helper-avatar img,
.helper-select-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.user-mini-avatar--letter{
  font-size:13px;
}
.modal-helpers{
  margin-top:12px;
}
.modal-helpers > b{
  display:block;
  margin-bottom:8px;
  color:#2f3a4f;
}
.modal-helpers-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.modal-helper-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:6px 9px 6px 6px;
  border:1px solid #dbeccc;
  background:#f8fcf4;
  border-radius:999px;
  text-decoration:none !important;
}
.modal-helper-chip span{
  font-weight:900;
  color:#376d09;
}
.modal-helper-chip em{
  font-style:normal;
  font-size:11px;
  color:#657083;
  font-weight:800;
}

.helper-select-item-with-avatar{
  grid-template-columns:auto 30px minmax(0,1fr) auto !important;
  align-items:center !important;
}
.helper-select-avatar-link{
  display:inline-flex;
  text-decoration:none;
}
.helper-select-item-with-avatar textarea{
  grid-column:1 / -1;
}
@media(max-width:700px){
  .helper-select-item-with-avatar{
    grid-template-columns:auto 30px minmax(0,1fr) !important;
  }
  .helper-select-item-with-avatar .helper-chat-link{
    grid-column:3;
  }
}


/* ===== v1.4.6: живые уведомления ===== */
.notifications-nav-link{
  position:relative;
  display:inline-flex !important;
  align-items:center;
  gap:6px;
}
.notifications-nav-link.has-unread{
  background:#fff4f4;
  color:#172033 !important;
}
.pomogite-live-toast{
  position:fixed;
  right:22px;
  top:96px;
  z-index:12000;
  width:min(360px, calc(100% - 28px));
  background:#fff;
  border:1px solid #dbeccc;
  border-left:5px solid var(--green);
  border-radius:18px;
  padding:14px 16px;
  box-shadow:0 18px 45px rgba(23,32,51,.18);
  color:#172033;
  text-decoration:none;
  opacity:0;
  transform:translateY(-8px);
  transition:.22s ease;
}
.pomogite-live-toast.is-visible{
  opacity:1;
  transform:translateY(0);
}
.pomogite-live-toast b{
  display:block;
  font-size:15px;
  font-weight:900;
  margin-bottom:5px;
}
.pomogite-live-toast span{
  display:block;
  color:#526078;
  font-size:13px;
  line-height:1.35;
}
.pomogite-live-toast em{
  display:inline-flex;
  margin-top:9px;
  color:#376d09;
  font-style:normal;
  font-weight:900;
  font-size:13px;
}
@media(max-width:700px){
  .pomogite-live-toast{
    top:82px;
    right:14px;
  }
}


/* v1.4.6 notifications/subscriptions split */
.notifications-page .subscriptions-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;}
.subscription-note{margin:0 0 14px;color:#566174;line-height:1.5;}
.nav .notifications-nav-link.has-unread{background:#fff4f4;border-radius:14px;}


/* v1.4.6 — понятная кнопка помощи */
#announcementModal .modal-action-box .help-offer-btn.is-helping,
#announcementModal .help-offer-btn.is-helping,
.modal-window-v11b .help-offer-btn.is-helping{
  background:#eef8e8 !important;
  color:#24760d !important;
  border:1px solid #bfe7b5 !important;
  box-shadow:none !important;
}
.help-offer-notice{
  margin:8px 0 0;
  padding:10px 12px;
  border-radius:14px;
  background:#eef9e9;
  border:1px solid #cfeac2;
  color:#2f7808;
  font-weight:800;
  font-size:13px;
  line-height:1.35;
}


/* === v1.4.8: map moved up polish + correct filter scroll target === */
.home-big-categories{
  margin-bottom:12px !important;
}
.map-title-section{
  margin-top:8px !important;
  margin-bottom:8px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
}
.map-title-section h1{
  font-size:34px !important;
  line-height:1.12 !important;
  margin-bottom:6px !important;
}
.map-title-section p{
  font-size:16px !important;
  line-height:1.35 !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
}
.map-area-layout{
  margin-top:8px !important;
}
.urgent-announcements-bar,
.home-urgent-row{
  margin-bottom:18px !important;
}
@media(max-width:760px){
  .map-title-section{
    margin-top:4px !important;
  }
  .map-title-section h1{
    font-size:27px !important;
  }
}

/* v1.4.9 — блок "Сейчас ищут помощь": активные объявления + горизонтальная прокрутка */
.home-latest-help{
  overflow:hidden;
}

.home-latest-grid{
  display:flex !important;
  grid-template-columns:none !important;
  gap:16px !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  padding:4px 4px 12px !important;
  scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;
}

.home-latest-grid::-webkit-scrollbar{
  height:8px;
}

.home-latest-grid::-webkit-scrollbar-track{
  background:#eef7e9;
  border-radius:999px;
}

.home-latest-grid::-webkit-scrollbar-thumb{
  background:#8bd36b;
  border-radius:999px;
}

.home-latest-card{
  flex:0 0 210px !important;
  width:210px !important;
  min-height:250px !important;
  scroll-snap-align:start;
}

.home-latest-card:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 26px rgba(23,32,51,.08);
}

.home-latest-grid .empty.mini{
  width:100%;
  flex:1 1 auto;
}

@media(max-width:760px){
  .home-latest-card{
    flex-basis:190px !important;
    width:190px !important;
  }
}


/* v1.5.7 — "Сейчас ищут помощь": 6 карточек на главной без длинной горизонтальной прокрутки */
.home-latest-help{
  overflow:visible !important;
}

.home-latest-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:14px !important;
  overflow:visible !important;
  padding:0 !important;
  scroll-snap-type:none !important;
}

.home-latest-grid::-webkit-scrollbar{
  display:none !important;
}

.home-latest-card{
  width:auto !important;
  flex:initial !important;
  min-height:238px !important;
  scroll-snap-align:initial !important;
}

@media(max-width:1100px){
  .home-latest-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

@media(max-width:760px){
  .home-latest-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:12px !important;
  }
  .home-latest-card{
    width:auto !important;
    flex:initial !important;
    min-height:220px !important;
  }
}

@media(max-width:430px){
  .home-latest-grid{
    grid-template-columns:1fr !important;
  }
}


/* v1.5.1 — компактные карточки "Сейчас ищут помощь" + время публикации */
.home-content-row{
  grid-template-columns:minmax(0, 1fr) 260px !important;
  align-items:start !important;
}

.home-trust-card{
  max-width:260px !important;
  padding:22px 20px !important;
}

.home-trust-card h2{
  font-size:22px !important;
  line-height:1.18 !important;
}

.home-trust-card li{
  gap:10px !important;
  margin-bottom:13px !important;
}

.home-latest-grid{
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:12px !important;
}

.home-latest-card{
  min-height:190px !important;
  border-radius:18px !important;
  overflow:hidden !important;
  padding-bottom:10px !important;
}

.home-latest-photo{
  height:104px !important;
  min-height:104px !important;
  border-radius:0 !important;
}

.home-latest-photo img{
  height:104px !important;
  object-fit:cover !important;
}

.home-latest-badge{
  margin:10px 10px 6px !important;
  font-size:12px !important;
  line-height:1.2 !important;
  max-width:calc(100% - 20px) !important;
}

.home-latest-card strong{
  display:block !important;
  margin:0 10px 8px !important;
  font-size:15px !important;
  line-height:1.25 !important;
  min-height:38px !important;
  max-height:38px !important;
  overflow:hidden !important;
}

.home-latest-card small,
.home-latest-time{
  display:block !important;
  margin:0 10px 10px !important;
  color:#6b7585 !important;
  font-size:13px !important;
  line-height:1.25 !important;
}

.home-latest-more{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:32px !important;
  margin:0 10px !important;
  border-radius:12px !important;
  font-size:13px !important;
}

@media(max-width:1100px){
  .home-content-row{
    grid-template-columns:1fr !important;
  }
  .home-trust-card{
    max-width:none !important;
  }
}

@media(max-width:760px){
  .home-latest-card{
    min-height:178px !important;
  }
  .home-latest-photo,
  .home-latest-photo img{
    height:92px !important;
    min-height:92px !important;
  }
}


/* v1.6 cards */
.home-latest-grid{
display:grid;
grid-template-columns:repeat(4,minmax(0,1fr));
gap:16px;
}
.home-latest-card{
cursor:pointer;
transition:.2s ease;
}
.home-latest-card:hover{
transform:translateY(-2px);
box-shadow:0 6px 18px rgba(0,0,0,.08);
}
.home-latest-photo span{
font-size:42px;
display:flex;
align-items:center;
justify-content:center;
height:100%;
}
@media (max-width:1200px){
.home-latest-grid{grid-template-columns:repeat(3,1fr);}
}
@media (max-width:900px){
.home-latest-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:600px){
.home-latest-grid{grid-template-columns:1fr;}
}


/* v1.5.7: latest announcements polishing */
.home-latest-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
}
.home-latest-card{
  min-height:0;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.home-latest-card:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(23,32,51,.08);
  border-color:#b9dfaa;
}
.home-latest-card:focus-visible{
  outline:3px solid rgba(31,162,10,.28);
  outline-offset:3px;
}
.home-latest-photo{
  height:92px !important;
  background:linear-gradient(180deg,#eef8e8,#f7fcf4) !important;
}
.home-latest-photo > span{
  width:54px;
  height:54px;
  border-radius:50%;
  background:#d9f1c8;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:30px;
  line-height:1;
  box-shadow:inset 0 0 0 1px rgba(41,122,16,.08);
}
.home-latest-badge{
  font-size:11px !important;
  padding:4px 7px !important;
  margin:8px 8px 0 !important;
}
.home-latest-card strong{
  font-size:15px !important;
  padding:7px 8px 0 !important;
  min-height:38px;
}
.home-latest-time{
  padding:6px 8px !important;
  font-size:12px;
}
.home-latest-more{
  margin:0 8px 10px !important;
  width:calc(100% - 16px) !important;
  padding:7px 8px !important;
  font-size:13px;
}
.home-trust-card{
  max-width:270px;
}
@media (max-width:1280px){
  .home-latest-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media (max-width:900px){
  .home-latest-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .home-trust-card{max-width:none;}
}
@media (max-width:560px){
  .home-latest-grid{grid-template-columns:1fr !important;}
}


/* v1.5.7 — последние объявления: фото показываем, заглушки убираем */
.home-latest-card.no-photo{
  padding-top:0 !important;
}

.home-latest-card.no-photo .home-latest-photo{
  display:none !important;
}

.home-latest-card.no-photo .home-latest-badge{
  display:block !important;
  width:calc(100% - 20px) !important;
  margin:10px 10px 0 !important;
  padding:12px 12px !important;
  border-radius:12px !important;
  background:#eef8e8 !important;
  color:#236c0e !important;
  font-size:13px !important;
  font-weight:900 !important;
  text-align:left !important;
}

.home-latest-card.has-photo .home-latest-photo{
  display:flex !important;
}

.home-latest-card.has-photo .home-latest-badge{
  margin-top:10px !important;
}

.home-latest-card.no-photo{
  min-height:172px !important;
}

.home-latest-card.has-photo{
  min-height:240px !important;
}

.home-latest-card{
  cursor:pointer !important;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease !important;
}

.home-latest-card:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 12px 26px rgba(23,32,51,.08) !important;
  border-color:#bfe6b1 !important;
}

/* v1.6.1 — аккуратное отображение фото в блоке последних объявлений */
.home-latest-card.has-photo{
  min-height:250px !important;
}

.home-latest-card.has-photo .home-latest-photo{
  height:142px !important;
  min-height:142px !important;
  padding:8px !important;
  box-sizing:border-box !important;
  background:#f5fbf1 !important;
  border-bottom:1px solid #e8eee3 !important;
}

.home-latest-card.has-photo .home-latest-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  border-radius:12px !important;
  background:#eef8e8 !important;
  display:block !important;
}

@media(max-width:760px){
  .home-latest-card.has-photo .home-latest-photo{
    height:130px !important;
    min-height:130px !important;
  }
}

/* ===== FIX: аккуратный блок "Объявления рядом" ===== */
.visible-announcements-panel{
  padding:16px !important;
}
.visible-announcements-list{
  gap:10px !important;
}
.visible-announcement-card{
  grid-template-columns:58px minmax(0,1fr) !important;
  align-items:start !important;
  gap:10px !important;
  padding:10px !important;
  border-radius:18px !important;
  cursor:pointer !important;
  text-align:left !important;
}
.visible-dog-thumb{
  width:58px !important;
  height:58px !important;
  border-radius:14px !important;
  overflow:hidden !important;
  background:#eef8e8 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#3e8a22 !important;
  font-size:18px !important;
  box-shadow:inset 0 0 0 1px rgba(47,122,20,.08) !important;
}
.visible-announcement-card img,
.visible-dog-photo{
  width:100% !important;
  height:100% !important;
  border-radius:0 !important;
  object-fit:cover !important;
  display:block !important;
}
.visible-dog-content{
  gap:5px !important;
  min-width:0 !important;
}
.visible-dog-meta-row{
  gap:5px !important;
  overflow:hidden !important;
}
.visible-dog-badge,
.visible-dog-status{
  font-size:10px !important;
  padding:4px 7px !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.visible-dog-badge{
  max-width:145px !important;
}
.visible-announcement-card b{
  font-size:15px !important;
  line-height:1.18 !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}
.visible-announcement-card small{
  font-size:12px !important;
  line-height:1.25 !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}
.visible-dog-author{
  font-size:12px !important;
  min-width:0 !important;
}
.visible-dog-author span:last-child{
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.visible-announcement-card .mini-edit{
  grid-column:auto !important;
  width:100% !important;
  box-sizing:border-box !important;
  margin:4px 0 0 !important;
  padding:8px 10px !important;
  border-radius:14px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-decoration:none !important;
  font-size:13px !important;
  line-height:1 !important;
  min-height:34px !important;
}
.visible-announcement-card:focus-visible{
  outline:3px solid rgba(80,185,20,.25) !important;
  outline-offset:2px !important;
}
@media(max-width:700px){
  .visible-announcement-card{
    grid-template-columns:54px minmax(0,1fr) !important;
  }
  .visible-dog-thumb{
    width:54px !important;
    height:54px !important;
  }
}

/* ===== IMPROVE: компактнее карточки "Объявления рядом" без описания ===== */
.visible-announcement-card{
  grid-template-columns:64px minmax(0,1fr) !important;
  gap:11px !important;
  padding:11px !important;
  border:1px solid #dcefd4 !important;
  background:#fff !important;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease !important;
}
.visible-announcement-card:hover{
  transform:translateY(-1px) !important;
  border-color:#bfe4b3 !important;
  box-shadow:0 8px 18px rgba(31,82,18,.08) !important;
}
.visible-dog-thumb{
  width:64px !important;
  height:64px !important;
  border-radius:16px !important;
  align-self:start !important;
}
.visible-dog-content{
  display:flex !important;
  flex-direction:column !important;
  gap:5px !important;
}
.visible-dog-meta-row{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  min-width:0 !important;
}
.visible-dog-badge{
  max-width:118px !important;
  white-space:nowrap !important;
}
.visible-dog-status{
  flex:0 0 auto !important;
  font-size:10px !important;
  padding:3px 7px !important;
}
.visible-announcement-card b{
  font-size:15px !important;
  line-height:1.16 !important;
  margin-top:1px !important;
}
.visible-announcement-card small{
  display:none !important;
}
.visible-dog-author{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  font-size:12px !important;
  line-height:1.15 !important;
}
.visible-dog-time{
  display:block !important;
  color:#667085 !important;
  font-size:12px !important;
  line-height:1.1 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.visible-announcement-card .mini-edit{
  margin-top:5px !important;
  min-height:32px !important;
  padding:7px 10px !important;
  border-radius:999px !important;
  font-size:13px !important;
}
@media(max-width:700px){
  .visible-announcement-card{grid-template-columns:58px minmax(0,1fr) !important;}
  .visible-dog-thumb{width:58px !important;height:58px !important;border-radius:14px !important;}
}

/* Edit announcement actions */
.edit-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:18px;
}
.edit-delete-box{
  margin-top:22px;
  padding:18px;
  border:1px solid #ffd6d6;
  border-radius:18px;
  background:#fff8f8;
  text-align:center;
}
.edit-delete-box h3{
  margin:0 0 8px;
  color:#9f1f17;
  font-size:18px;
  font-weight:800;
}
.edit-delete-box p{
  max-width:560px;
  margin:0 auto 14px;
  color:#7a4b4b;
  font-size:14px;
  line-height:1.45;
}
.edit-delete-form{
  margin:0;
  display:flex;
  justify-content:center;
}
.edit-delete-form .delete-announcement-btn,
.delete-announcement-btn{
  border:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:12px 22px;
  border-radius:999px;
  background:#dc3545;
  color:#fff;
  font-weight:800;
  text-decoration:none;
  cursor:pointer;
  box-shadow:0 10px 22px rgba(220,53,69,.18);
}
.edit-delete-form .delete-announcement-btn:hover,
.delete-announcement-btn:hover{
  background:#b42318;
  color:#fff;
}
@media(max-width:700px){
  .edit-actions{flex-direction:column;align-items:stretch}
  .edit-actions .primary-btn,.edit-actions .secondary-btn,.edit-delete-form .delete-announcement-btn{width:100%}
  .edit-delete-box{text-align:left}
  .edit-delete-form{justify-content:stretch}
}


/* Улучшенный сценарий помощи и закрытия объявления */
.owner-responders-box{
  grid-column:1 / -1;
  background:#f4faef;
  border:1px solid #d9efcf;
  border-radius:18px;
  padding:14px;
  margin:12px 0;
}
.owner-responders-title{font-weight:900;font-size:17px;color:#172033;margin-bottom:4px;}
.owner-responders-note{color:#687286;font-weight:700;font-size:13px;line-height:1.35;margin-bottom:12px;}
.owner-responders-list{display:flex;flex-direction:column;gap:10px;}
.owner-responder-card{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:10px;align-items:center;background:#fff;border:1px solid #e1efd8;border-radius:16px;padding:10px;}
.owner-responder-avatar,.owner-responder-avatar:hover{text-decoration:none;}
.owner-responder-avatar-inner{width:46px;height:46px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#e8f7dc;color:#376d09;font-weight:900;overflow:hidden;}
.owner-responder-avatar-inner img{width:100%;height:100%;object-fit:cover;display:block;}
.owner-responder-info{display:flex;flex-direction:column;gap:3px;min-width:0;}
.owner-responder-name{font-weight:900;color:#376d09;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.owner-responder-name:hover{text-decoration:underline;}
.owner-responder-rating{font-weight:800;color:#172033;font-size:13px;}
.owner-responder-source{font-weight:700;color:#687286;font-size:12px;}
.owner-responder-actions{display:flex;flex-direction:column;gap:6px;align-items:stretch;}
.owner-responder-chat,.owner-responder-profile{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:8px 12px;font-weight:900;text-decoration:none;font-size:13px;white-space:nowrap;}
.owner-responder-chat{background:#17a80e;color:#fff;box-shadow:0 8px 18px rgba(23,168,14,.16);}
.owner-responder-chat:hover{background:#12870b;color:#fff;text-decoration:none;}
.owner-responder-profile{background:#eef8e8;color:#376d09;border:1px solid #d8edcc;}
.owner-responder-profile:hover{text-decoration:none;background:#e3f5d9;}
.helper-close-warning{margin:12px 0;padding:14px;border:1px solid #ffd4a8;background:#fff8ef;border-radius:16px;color:#172033;}
.helper-close-warning b{display:block;font-size:16px;margin-bottom:6px;}
.helper-close-warning span{display:block;color:#687286;font-weight:700;line-height:1.4;}
.helper-close-warning-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px;}
.helper-close-warning-actions .primary-btn,.helper-close-warning-actions .secondary-btn{width:auto;min-width:170px;}
@media (max-width:640px){.owner-responder-card{grid-template-columns:42px minmax(0,1fr);}.owner-responder-actions{grid-column:1 / -1;flex-direction:row;}.owner-responder-chat,.owner-responder-profile{flex:1;}}

/* Help rating in close announcement flow */
.helper-rating-row{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:8px;
  flex-wrap:wrap;
  font-size:13px;
  color:#4b5f45;
}
.helper-rating-row span{font-weight:700;}
/* Улучшенные уведомления: ссылка на профиль помощника и акцент нужного блока */
.notification-item{display:block;}
.notification-main-link{display:block;color:inherit;text-decoration:none;}
.notification-user-link{font-weight:800;color:#1f8f1f;text-decoration:none;border-bottom:1px dashed rgba(31,143,31,.35);}
.notification-user-link:hover{color:#116b11;border-bottom-color:#116b11;}
.focus-highlight{animation:pomogiteFocusPulse 1.8s ease-in-out;}
@keyframes pomogiteFocusPulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.45);}45%{box-shadow:0 0 0 8px rgba(34,197,94,.16);}100%{box-shadow:0 0 0 0 rgba(34,197,94,0);}}

/* Финальная логика уведомлений по подпискам */
.notification-item.is-clickable .notification-main-link{cursor:pointer;}
.notification-item.is-disabled .notification-main-link{cursor:default;}
.notification-line{display:block;margin-top:5px;color:#4b5563;line-height:1.45;}
.notification-subscription-link,
.notification-announcement-link{color:#168800;font-weight:900;text-decoration:none;border-bottom:1px dashed rgba(22,136,0,.35);}
.notification-subscription-link:hover,
.notification-announcement-link:hover{color:#0f6f00;border-bottom-color:#0f6f00;}
.notification-muted-title{font-weight:900;color:#6b7280;}
.notification-status{display:block;margin-top:7px;color:#6b7280;font-weight:900;}


.subscription-ads-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  margin:10px 0 8px;
  width:100%;
  text-decoration:none;
  cursor:pointer;
}
.subscription-ads-btn:hover{
  transform:translateY(-1px);
}

/* Предзапуск: жалобы и модерация */
.report-announcement-btn{
  border-color:#f1b7b7!important;
  color:#9f2a2a!important;
  background:#fff7f7!important;
}
.report-announcement-btn:hover{
  background:#ffecec!important;
  border-color:#df8d8d!important;
}
.moderation-hidden-note{
  background:#fff7e6;
  border:1px solid #f0c36d;
  border-radius:12px;
  padding:10px 12px;
  color:#6b4b00;
  margin:10px 0;
}

/* ===== Подробная админ-статистика ===== */
.stats-item{ text-decoration:none; color:inherit; cursor:pointer; transition:all .18s ease; }
.stats-item:hover{ transform:translateY(-2px); box-shadow:0 8px 24px rgba(44,116,28,.12); border-color:#8bd06c; }
.admin-detail-section{ margin-top:26px; padding:22px; border:1px solid #e0efd5; border-radius:22px; background:#fbfff8; scroll-margin-top:110px; }
.admin-detail-section h2{ margin:0 0 14px; font-size:22px; color:#172033; }
.admin-detail-section h3{ margin:18px 0 10px; font-size:17px; }
.admin-mini-grid{ display:grid; grid-template-columns:repeat(4,minmax(140px,1fr)); gap:12px; margin-bottom:12px; }
.admin-mini-grid>div{ background:#fff; border:1px solid #e1efd6; border-radius:16px; padding:14px; }
.admin-mini-grid b{ display:block; font-size:26px; line-height:1; color:#376d09; }
.admin-mini-grid span{ display:block; margin-top:7px; color:#657083; font-size:13px; }
.admin-detail-list{ display:flex; flex-direction:column; gap:10px; }
.admin-detail-row{ display:grid; grid-template-columns:1fr auto; gap:14px; align-items:center; background:#fff; border:1px solid #e5efd9; border-radius:16px; padding:14px; }
.admin-detail-row b{ display:block; margin-bottom:4px; color:#172033; }
.admin-detail-row small{ display:block; color:#657083; line-height:1.35; }
.admin-detail-row p{ margin:8px 0; color:#344154; }
.admin-detail-actions{ display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; align-items:center; }
.admin-detail-actions form{ margin:0; }
.secondary-btn.small{ min-height:32px; padding:7px 12px; border-radius:12px; font-size:13px; }
.secondary-btn.danger{ background:#fff0f0; color:#b32626; border-color:#ffd1d1; }
.admin-detail-list.compact .admin-detail-row{ grid-template-columns:1fr; }
@media(max-width:900px){ .admin-mini-grid{ grid-template-columns:repeat(2,1fr); } .admin-detail-row{ grid-template-columns:1fr; } .admin-detail-actions{ justify-content:flex-start; } }
@media(max-width:520px){ .admin-mini-grid{ grid-template-columns:1fr; } }

/* ===== Компактная админ-статистика перед запуском ===== */
.pomogite-stats-page-compact .stats-card-compact{
  max-width: 1060px;
  padding: 24px;
}
.pomogite-stats-page-compact .stats-headline{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}
.pomogite-stats-page-compact .stats-headline h1{
  margin:0 0 6px;
  font-size:30px;
  line-height:1.15;
}
.pomogite-stats-page-compact .stats-cache-note{
  flex:0 0 auto;
  padding:7px 11px;
  border-radius:999px;
  background:#eef9e9;
  color:#256a12;
  font-weight:700;
  font-size:12px;
}
.pomogite-stats-page-compact .stats-grid-compact{
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap:10px;
  margin:14px 0 18px;
}
.pomogite-stats-page-compact .stats-item{
  min-height:82px;
  padding:13px 14px;
  border-radius:14px;
}
.pomogite-stats-page-compact .stats-item b{
  font-size:14px;
  line-height:1.2;
}
.pomogite-stats-page-compact .stats-item strong{
  margin:7px 0 2px;
  font-size:28px;
  line-height:1;
}
.pomogite-stats-page-compact .stats-item small{
  font-size:12px;
  line-height:1.2;
}
.pomogite-stats-page-compact .admin-accordion{
  display:grid;
  gap:10px;
}
.pomogite-stats-page-compact .admin-detail-section{
  margin:0;
  padding:0;
  border-radius:16px;
  overflow:hidden;
  background:#fbfff8;
  scroll-margin-top:110px;
}
.pomogite-stats-page-compact .admin-detail-section summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:13px 16px;
  font-weight:800;
  color:#172033;
}
.pomogite-stats-page-compact .admin-detail-section summary::-webkit-details-marker{display:none;}
.pomogite-stats-page-compact .admin-detail-section summary::after{
  content:'▾';
  color:#2d8a15;
  font-size:14px;
  transition:transform .18s ease;
}
.pomogite-stats-page-compact .admin-detail-section[open] summary::after{
  transform:rotate(180deg);
}
.pomogite-stats-page-compact .admin-detail-section summary b{
  margin-left:auto;
  min-width:34px;
  text-align:center;
  color:#0b7b00;
  font-size:20px;
}
.pomogite-stats-page-compact .admin-detail-body{
  padding:0 16px 16px;
}
.pomogite-stats-page-compact .admin-mini-grid{
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap:9px;
}
.pomogite-stats-page-compact .admin-mini-grid > div{
  min-height:58px;
  padding:10px 12px;
  border-radius:13px;
}
.pomogite-stats-page-compact .admin-mini-grid b{
  font-size:24px;
  line-height:1;
}
.pomogite-stats-page-compact .admin-mini-grid span{
  font-size:12px;
  line-height:1.25;
}
.pomogite-stats-page-compact .admin-detail-row{
  padding:10px 12px;
  border-radius:12px;
  min-height:auto;
}
.pomogite-stats-page-compact .admin-detail-row p{
  margin:5px 0;
}
.pomogite-stats-page-compact .admin-detail-actions{
  gap:6px;
}
.pomogite-stats-page-compact .secondary-btn.small,
.pomogite-stats-page-compact button.secondary-btn.small{
  padding:7px 10px;
  border-radius:10px;
  font-size:12px;
}
.pomogite-stats-page-compact h3{
  font-size:15px;
  margin:14px 0 8px;
}
@media (max-width: 900px){
  .pomogite-stats-page-compact .stats-grid-compact,
  .pomogite-stats-page-compact .admin-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .pomogite-stats-page-compact .stats-headline{display:block;}
  .pomogite-stats-page-compact .stats-cache-note{display:inline-block;margin-top:8px;}
}
@media (max-width: 560px){
  .pomogite-stats-page-compact .stats-grid-compact,
  .pomogite-stats-page-compact .admin-mini-grid{grid-template-columns:1fr;}
}

/* === Pre-launch admin compact v2 + report screenshots === */
.pomogite-stats-page-compact .stats-card-compact{
  max-width: 940px !important;
  padding: 18px !important;
  border-radius: 20px !important;
}
.pomogite-stats-page-compact .stats-headline{margin-bottom:12px !important; gap:10px !important;}
.pomogite-stats-page-compact .stats-headline h1{font-size:24px !important; margin:0 0 4px !important;}
.pomogite-stats-page-compact .stats-note{font-size:13px !important; margin:0 !important; line-height:1.35 !important;}
.pomogite-stats-page-compact .stats-cache-note{font-size:11px !important; padding:5px 9px !important;}
.pomogite-stats-page-compact .stats-grid-compact{
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  gap:8px !important;
  margin-bottom:10px !important;
}
.pomogite-stats-page-compact .stats-item{
  min-height:56px !important;
  padding:9px 10px !important;
  border-radius:12px !important;
}
.pomogite-stats-page-compact .stats-item b{font-size:12px !important; margin:0 !important;}
.pomogite-stats-page-compact .stats-item strong{font-size:24px !important; line-height:1 !important; margin:3px 0 !important;}
.pomogite-stats-page-compact .stats-item small{font-size:11px !important; line-height:1.2 !important;}
.pomogite-stats-page-compact .admin-detail-section{
  margin-top:8px !important;
  padding:0 !important;
  border-radius:14px !important;
}
.pomogite-stats-page-compact .admin-detail-section summary{
  min-height:38px !important;
  padding:8px 12px !important;
  font-size:14px !important;
}
.pomogite-stats-page-compact .admin-detail-section summary b{
  min-width:28px !important;
  height:24px !important;
  font-size:15px !important;
}
.pomogite-stats-page-compact .admin-detail-body{padding:9px 12px 12px !important;}
.pomogite-stats-page-compact .admin-mini-grid{grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap:7px !important; margin:0 0 9px !important;}
.pomogite-stats-page-compact .admin-mini-grid>div{padding:8px 9px !important; border-radius:11px !important; min-height:44px !important;}
.pomogite-stats-page-compact .admin-mini-grid b{font-size:19px !important; line-height:1 !important;}
.pomogite-stats-page-compact .admin-mini-grid span{font-size:11px !important; line-height:1.15 !important;}
.pomogite-stats-page-compact .admin-detail-list{gap:6px !important;}
.pomogite-stats-page-compact .admin-detail-row{
  padding:8px 10px !important;
  border-radius:11px !important;
  gap:8px !important;
  min-height:44px !important;
}
.pomogite-stats-page-compact .admin-detail-row b{font-size:13px !important; margin-bottom:2px !important;}
.pomogite-stats-page-compact .admin-detail-row small{font-size:11px !important; line-height:1.2 !important;}
.pomogite-stats-page-compact .admin-detail-row p{font-size:12px !important; margin:4px 0 !important; line-height:1.25 !important;}
.pomogite-stats-page-compact .admin-detail-actions{gap:5px !important;}
.pomogite-stats-page-compact .secondary-btn.small,
.pomogite-stats-page-compact .primary-btn.small,
.pomogite-stats-page-compact button.small{
  padding:6px 9px !important;
  min-height:28px !important;
  border-radius:9px !important;
  font-size:12px !important;
}
.report-screenshots{display:flex; gap:6px; flex-wrap:wrap; margin:5px 0 4px;}
.report-screenshots a{display:block; width:48px; height:48px; border-radius:10px; overflow:hidden; border:1px solid #dcefd2; background:#f6fff2;}
.report-screenshots img{width:100%; height:100%; object-fit:cover; display:block;}
.pomogite-report-modal{position:fixed; inset:0; z-index:999999; display:flex; align-items:center; justify-content:center; padding:16px;}
.pomogite-report-backdrop{position:absolute; inset:0; background:rgba(16,24,40,.55); backdrop-filter:blur(2px);}
.pomogite-report-box{position:relative; z-index:1; width:min(480px, 100%); background:#fff; border-radius:20px; padding:20px; box-shadow:0 24px 80px rgba(16,24,40,.25); border:1px solid #dcefd2;}
.pomogite-report-box h3{margin:0 0 8px; font-size:22px; color:#172033;}
.pomogite-report-box p{margin:0 0 12px; color:#657083; font-size:14px; line-height:1.35;}
.pomogite-report-box textarea{width:100%; min-height:110px; border:1px solid #cfe5c4; border-radius:14px; padding:12px; resize:vertical; font:inherit;}
.pomogite-report-file{display:block; margin:12px 0 4px; padding:10px 12px; border:1px dashed #9cd58b; border-radius:14px; background:#f6fff2; color:#246b13; font-weight:700; cursor:pointer;}
.pomogite-report-file input{display:block; margin-top:8px; font-weight:400; color:#344154;}
.pomogite-report-box small{display:block; color:#657083; font-size:12px;}
.pomogite-report-actions{display:flex; justify-content:flex-end; gap:8px; margin-top:14px;}
.pomogite-report-close{position:absolute; top:10px; right:12px; border:0; background:#f3faef; border-radius:50%; width:30px; height:30px; cursor:pointer; font-size:20px; line-height:30px; color:#344154;}
@media(max-width:760px){
  .pomogite-stats-page-compact .stats-grid-compact{grid-template-columns: repeat(2, minmax(0,1fr)) !important;}
  .pomogite-stats-page-compact .admin-mini-grid{grid-template-columns: repeat(2,minmax(0,1fr)) !important;}
}

/* === Reports: user complaints + clearer reason/photo fields === */
.profile-report-user-btn{width:100%; margin-top:10px; background:#fff4f4!important; color:#b42318!important; border:1px solid #ffd1d1!important;}
.profile-report-user-btn:hover{background:#ffe7e7!important;}
.pomogite-report-label{display:block; font-weight:700; color:#172033; margin:10px 0 6px; font-size:13px;}
.pomogite-report-select{width:100%; border:1px solid #cfe5c4; border-radius:12px; padding:10px 12px; margin:0 0 10px; background:#fff; font:inherit; color:#172033;}
.report-row small{display:block;}

/* Compact security dashboard details */
.security-event-row small { display:block; line-height:1.35; }
.security-event-more { margin-top:4px; }
.security-event-more summary { cursor:pointer; color:#2f7d1f; font-size:12px; font-weight:700; list-style:none; }
.security-event-more summary::-webkit-details-marker { display:none; }
.security-event-more[open] { background:#f7fff3; border:1px solid #d9efcf; border-radius:10px; padding:6px 8px; }
.security-event-more[open] summary { margin-bottom:4px; }
.security-events-list .admin-detail-row { padding-top:8px; padding-bottom:8px; }


/* =====================================================
   MOBILE FIX 2026-06-04: Xiaomi/Chrome main page layout
   Только мобильные правила. Десктопную версию не трогаем.
   Исправляет:
   - пустой высокий блок в первом экране;
   - налезание меню на логотип;
   - горизонтальный скролл и обрезанные кнопки;
   - карту/кнопку добавления на мобильном;
   - ширину блоков "Объявления рядом" и последних объявлений.
===================================================== */
@media (max-width: 760px){

  html,
  body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  body{
    -webkit-text-size-adjust:100%;
  }

  .site-header{
    position:sticky !important;
    top:0 !important;
    z-index:100 !important;
  }

  .header-inner{
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    padding:8px 12px 10px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
  }

  .logo,
  .logo-full{
    width:100% !important;
    max-width:100% !important;
    justify-content:center !important;
    align-items:center !important;
    margin:0 !important;
    overflow:visible !important;
  }

  .logo-full img,
  .logo img,
  .custom-logo,
  .custom-logo-link img{
    height:58px !important;
    max-height:58px !important;
    width:auto !important;
    max-width:92vw !important;
    object-fit:contain !important;
    display:block !important;
  }

  .nav{
    width:100% !important;
    max-width:100% !important;
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    overflow:visible !important;
  }

  .nav a,
  .nav button,
  .auth-open-btn,
  .profile-menu-toggle,
  .nav .primary-btn{
    min-height:34px !important;
    height:auto !important;
    max-width:100% !important;
    padding:7px 9px !important;
    border-radius:11px !important;
    font-size:13px !important;
    line-height:1.15 !important;
    white-space:normal !important;
  }

  .profile-menu{
    max-width:100% !important;
  }

  .profile-dropdown{
    right:auto !important;
    left:50% !important;
    transform:translateX(-50%) !important;
    max-width:calc(100vw - 24px) !important;
  }

  main,
  .home-redesign,
  .wrap,
  .hero,
  .home-content-row,
  .home-latest-help,
  .home-trust-card,
  .home-how-project{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  .home-redesign{
    margin:12px auto 0 !important;
    padding:0 14px !important;
  }

  .home-hero-shell{
    display:block !important;
    grid-template-columns:1fr !important;
    gap:0 !important;
    min-height:0 !important;
    margin:0 0 18px !important;
  }

  .home-hero-copy{
    display:block !important;
    min-height:0 !important;
    padding:16px 0 14px !important;
  }

  .home-hero-text{
    max-width:100% !important;
    margin:0 0 14px !important;
    font-size:18px !important;
    line-height:1.38 !important;
    font-weight:500 !important;
  }

  .home-hero-actions{
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
    align-items:stretch !important;
    overflow:hidden !important;
  }

  .home-hero-actions .hero-btn{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:48px !important;
    padding:0 8px !important;
    border-radius:14px !important;
    font-size:14px !important;
    line-height:1.15 !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .home-search-panel,
  .home-search-panel.home-search-panel-smart{
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:12px !important;
    border-radius:18px !important;
  }

  .home-search-panel-smart .home-main-search,
  .home-main-search{
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    display:grid !important;
    grid-template-columns:36px minmax(0,1fr) !important;
    border-radius:15px !important;
    overflow:hidden !important;
    margin-bottom:10px !important;
  }

  .home-main-search-icon{
    height:46px !important;
    line-height:46px !important;
    font-size:20px !important;
  }

  .home-main-search input[type="search"]{
    height:46px !important;
    min-width:0 !important;
    font-size:14px !important;
    padding:0 10px !important;
  }

  .home-main-search .home-filter-open,
  .home-main-search button[type="submit"],
  .home-main-search button{
    grid-column:auto !important;
    height:42px !important;
    min-width:0 !important;
    border-top:1px solid #edf1e8 !important;
    font-size:13px !important;
    padding:0 8px !important;
  }

  .home-main-search .home-filter-open{
    grid-column:1 / 2 !important;
    border-radius:0 !important;
  }

  .home-main-search button[type="submit"]{
    grid-column:2 / 3 !important;
    border-radius:0 !important;
  }

  .home-quick-filters,
  .home-popular-searches{
    width:100% !important;
    max-width:100% !important;
    display:flex !important;
    flex-wrap:wrap !important;
    gap:6px !important;
  }

  .home-quick-filters button,
  .home-popular-searches button{
    max-width:100% !important;
    padding:8px 10px !important;
    font-size:12px !important;
    line-height:1.15 !important;
    white-space:normal !important;
  }

  .home-urgent-row{
    margin:14px 0 16px !important;
    padding:0 14px !important;
  }

  .home-urgent-row .urgent-filter-btn{
    min-height:44px !important;
    font-size:16px !important;
    border-radius:14px !important;
  }

  .home-big-categories{
    width:100% !important;
    max-width:100% !important;
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:12px !important;
    margin:0 0 22px !important;
    padding:0 14px !important;
    justify-content:stretch !important;
    overflow:visible !important;
  }

  .home-category-wrap{
    width:100% !important;
    min-width:0 !important;
    min-height:0 !important;
  }

  .home-category-wrap .home-big-category,
  .home-big-category{
    width:100% !important;
    min-width:0 !important;
    height:168px !important;
    min-height:168px !important;
    max-height:168px !important;
    padding:14px 10px !important;
    border-radius:18px !important;
  }

  .home-big-icon{
    width:52px !important;
    height:52px !important;
    flex:0 0 52px !important;
    font-size:26px !important;
  }

  .home-big-category strong{
    font-size:17px !important;
    line-height:1.15 !important;
    min-height:34px !important;
  }

  .home-big-category small{
    display:block !important;
    font-size:13px !important;
    line-height:1.25 !important;
    max-height:42px !important;
    min-height:0 !important;
  }

  .map-title-section{
    margin:10px auto 10px !important;
    padding:0 14px !important;
    text-align:center !important;
  }

  .map-title-section h1{
    font-size:30px !important;
    line-height:1.12 !important;
    margin:0 0 8px !important;
  }

  .map-title-section p{
    font-size:16px !important;
    line-height:1.35 !important;
    margin:0 auto !important;
    max-width:100% !important;
  }

  .wrap{
    padding:0 14px 28px !important;
  }

  .map-area-layout{
    width:100% !important;
    max-width:100% !important;
    display:flex !important;
    flex-direction:column !important;
    gap:12px !important;
    margin:12px auto 24px !important;
    overflow:visible !important;
  }

  .map-area-layout .map-card,
  .map-card{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    display:block !important;
    padding:10px !important;
    border-radius:22px !important;
    overflow:hidden !important;
  }

  .map-card .map-help,
  .map-card .map-help.map-help-button,
  .map-card button.map-help,
  .map-card .primary-btn.map-help,
  .map-card .map-help-link{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    transform:none !important;
    display:flex !important;
    width:100% !important;
    max-width:100% !important;
    min-height:42px !important;
    margin:0 0 10px !important;
    padding:10px 12px !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:14px !important;
    font-size:13px !important;
    line-height:1.15 !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .map-help b{
    font-size:18px !important;
    margin-right:4px !important;
  }

  #map{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-height:330px !important;
    height:330px !important;
    border-radius:18px !important;
    overflow:hidden !important;
  }

  .visible-announcements-panel{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    max-height:none !important;
    overflow:visible !important;
    padding:16px !important;
    border-radius:22px !important;
    margin:0 !important;
  }

  .visible-announcements-head{
    position:relative !important;
    top:auto !important;
    padding-bottom:12px !important;
    margin-bottom:12px !important;
  }

  .visible-announcements-head h2{
    font-size:24px !important;
    line-height:1.1 !important;
  }

  .visible-announcements-list{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
  }

  .visible-announcement-card{
    width:100% !important;
    max-width:100% !important;
    grid-template-columns:58px minmax(0,1fr) !important;
    padding:10px !important;
    border-radius:18px !important;
  }

  .home-content-row{
    display:block !important;
    margin:18px 0 24px !important;
  }

  .home-latest-help,
  .home-trust-card{
    width:100% !important;
    max-width:100% !important;
    border-radius:22px !important;
    padding:16px !important;
    margin:0 0 16px !important;
  }

  .home-section-head{
    align-items:flex-start !important;
    gap:12px !important;
  }

  .home-section-head h2,
  .home-trust-card h2{
    font-size:24px !important;
    line-height:1.18 !important;
  }

  .home-latest-grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .home-latest-card{
    min-height:0 !important;
    border-radius:18px !important;
    padding-bottom:10px !important;
  }

  .home-latest-photo{
    height:0 !important;
    min-height:0 !important;
    max-height:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    display:none !important;
  }

  .home-latest-badge{
    width:calc(100% - 20px) !important;
    margin:10px 10px 0 !important;
    padding:9px 12px !important;
    font-size:15px !important;
  }

  .home-latest-card strong{
    min-height:0 !important;
    font-size:18px !important;
    line-height:1.25 !important;
    padding:12px 12px 0 !important;
  }

  .home-latest-card small{
    font-size:14px !important;
    padding:12px !important;
  }

  .home-latest-more{
    min-height:42px !important;
    padding:10px 12px !important;
    border-radius:14px !important;
    font-size:16px !important;
  }

  .home-trust-card li{
    grid-template-columns:46px 1fr !important;
    gap:12px !important;
  }

  .home-trust-card li span{
    width:46px !important;
    height:46px !important;
  }

  .home-trust-card b{
    font-size:18px !important;
  }

  .home-trust-card small{
    font-size:16px !important;
    line-height:1.35 !important;
  }

  .home-how-project{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    padding:16px !important;
    border-radius:22px !important;
    margin:0 14px 24px !important;
  }

  .home-how-card{
    border-radius:18px !important;
    padding:16px !important;
  }

  .home-how-card b{
    font-size:18px !important;
  }

  .home-how-card span{
    font-size:16px !important;
    line-height:1.35 !important;
  }
}

@media (max-width: 390px){
  .home-hero-actions{
    grid-template-columns:1fr !important;
  }

  .home-category-wrap .home-big-category,
  .home-big-category{
    height:158px !important;
    min-height:158px !important;
  }

  .home-big-category strong{
    font-size:16px !important;
  }

  .home-big-category small{
    font-size:12px !important;
  }
}

/* ===== v1.5.9: MOBILE HOME POLISH — поиск, карта, карточки (только мобильные) ===== */
@media (max-width: 760px){
  .home-redesign{
    max-width:100% !important;
    margin:14px auto 0 !important;
    padding:0 14px !important;
    overflow:hidden !important;
  }

  .home-hero-shell{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    margin:0 0 18px !important;
    padding:0 !important;
  }

  .home-hero-copy{
    padding:14px 0 8px !important;
  }

  .home-hero-text{
    font-size:18px !important;
    line-height:1.42 !important;
    margin:0 0 14px !important;
  }

  .home-hero-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    width:100% !important;
    overflow:visible !important;
  }

  .home-hero-actions .hero-btn{
    width:100% !important;
    height:56px !important;
    min-height:56px !important;
    border-radius:16px !important;
    font-size:17px !important;
    padding:0 14px !important;
    white-space:nowrap !important;
  }

  .home-search-panel,
  .home-search-panel.home-search-panel-smart{
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:18px !important;
    border-radius:22px !important;
    overflow:hidden !important;
  }

  /* Форма единого поиска оформляется в assets/css/home-search-context.css */

  .home-quick-filters,
  .home-quick-tags,
  .home-popular-searches{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    width:100% !important;
    max-width:100% !important;
  }

  .home-quick-filters button,
  .home-quick-tags button,
  .home-popular-searches button{
    flex:0 1 auto !important;
    max-width:100% !important;
    min-height:38px !important;
    padding:9px 12px !important;
    border-radius:999px !important;
    font-size:13px !important;
    line-height:1.15 !important;
    white-space:normal !important;
  }

  .home-popular-searches span{
    width:100% !important;
    margin-top:2px !important;
    font-size:14px !important;
  }

  .home-big-categories{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
    padding:0 !important;
    margin:0 0 24px !important;
  }

  .home-big-category{
    min-height:172px !important;
    height:172px !important;
    padding:14px 10px !important;
    border-radius:20px !important;
  }

  .home-big-icon{
    width:58px !important;
    height:58px !important;
    font-size:29px !important;
  }

  .home-big-category strong{
    font-size:19px !important;
    line-height:1.15 !important;
  }

  .home-big-category small{
    font-size:14px !important;
    line-height:1.25 !important;
  }

  .map-title-section{
    margin:18px auto 12px !important;
    padding:0 6px !important;
  }

  .map-title-section h1{
    font-size:34px !important;
    line-height:1.08 !important;
  }

  .map-title-section p{
    font-size:17px !important;
    line-height:1.35 !important;
  }

  #map{
    height:315px !important;
    min-height:315px !important;
  }

  .visible-announcement-card{
    grid-template-columns:64px minmax(0,1fr) !important;
    gap:10px !important;
    align-items:center !important;
  }

  .visible-announcement-card img,
  .visible-announcement-photo,
  .visible-announcement-thumb{
    width:64px !important;
    height:64px !important;
    min-width:64px !important;
    border-radius:14px !important;
  }

  .visible-announcement-card .modal-category,
  .visible-announcement-card .announcement-category,
  .visible-announcement-card .card-category{
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .home-latest-help,
  .home-trust-card,
  .home-how-project{
    margin-left:0 !important;
    margin-right:0 !important;
  }
}

@media (max-width: 390px){
  .home-redesign{padding:0 12px !important;}
  .home-search-panel,.home-search-panel.home-search-panel-smart{padding:14px !important;}
  .home-big-category{height:162px !important;min-height:162px !important;}
  .home-big-category strong{font-size:17px !important;}
  .home-big-category small{font-size:12.5px !important;}
  .map-title-section h1{font-size:30px !important;}
  #map{height:300px !important;min-height:300px !important;}
}

/* ===== MOBILE POLISH: категории без обрезки + ровные поля входа ===== */
@media (max-width: 760px){
  /* Карточки разделов на главной: текст не должен обрезаться */
  .home-big-categories{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:14px !important;
    align-items:stretch !important;
  }

  .home-category-wrap,
  .home-category-wrap .home-big-category,
  .home-big-category{
    width:100% !important;
    min-height:176px !important;
    height:auto !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    overflow:visible !important;
  }

  .home-big-category{
    padding:16px 10px 14px !important;
    justify-content:center !important;
    gap:10px !important;
  }

  .home-big-icon{
    width:54px !important;
    height:54px !important;
    flex:0 0 54px !important;
    font-size:26px !important;
    margin-bottom:2px !important;
  }

  .home-big-category strong{
    min-height:0 !important;
    max-height:none !important;
    font-size:17px !important;
    line-height:1.15 !important;
    overflow:visible !important;
    word-break:normal !important;
  }

  .home-big-category small{
    display:block !important;
    min-height:0 !important;
    max-height:none !important;
    height:auto !important;
    max-width:100% !important;
    overflow:visible !important;
    font-size:13px !important;
    line-height:1.24 !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    text-align:center !important;
  }

  /* Модальное окно входа/регистрации: убираем эмодзи-иконки из полей, чтобы не налезали на текст */
  .auth-modal .auth-user-field:before,
  .auth-modal .auth-lock-field:before,
  .auth-modal .auth-lock-field:after{
    content:none !important;
    display:none !important;
  }

  .auth-modal .auth-icon-field input,
  .auth-modal .field input{
    height:56px !important;
    padding:0 16px !important;
    font-size:16px !important;
    line-height:56px !important;
    border-radius:12px !important;
  }
}

@media (max-width: 420px){
  .home-category-wrap,
  .home-category-wrap .home-big-category,
  .home-big-category{
    min-height:168px !important;
  }

  .home-big-category small{
    font-size:12.5px !important;
    line-height:1.23 !important;
  }
}


/* Phone validation UX for announcement forms */
.phone-field input.is-invalid,
.field.has-error input[name="announcement_phone"]{
  border-color:#ef4444 !important;
  background:#fff7f7 !important;
  box-shadow:0 0 0 3px rgba(239,68,68,.12) !important;
}
.field-hint.phone-hint{
  margin-top:6px;
  font-size:13px;
  line-height:1.35;
  color:#6b7280;
}
.field-error-message.phone-error-message{
  margin-top:7px;
  font-size:13px;
  line-height:1.35;
  color:#b91c1c;
  font-weight:700;
}
.field.has-error .phone-hint{display:none;}
@media (max-width: 640px){
  .field-hint.phone-hint,
  .field-error-message.phone-error-message{font-size:12px;}
}

/* Report modal: accumulated files, previews and upload progress */
.pomogite-report-filebox{
  margin:12px 0 4px;
}
.pomogite-report-filebox .pomogite-report-file{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:0;
  padding:12px 14px;
  border:1px dashed #9cd58b;
  border-radius:14px;
  background:#f6fff2;
  color:#246b13;
  font-weight:800;
  cursor:pointer;
  text-align:center;
}
.pomogite-report-filebox .pomogite-report-file input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.pomogite-report-selected{
  display:none;
  flex-direction:column;
  gap:8px;
  margin-top:10px;
}
.pomogite-report-selected.has-files{
  display:flex;
}
.pomogite-report-file-item{
  display:grid;
  grid-template-columns:46px minmax(0, 1fr) 30px;
  align-items:center;
  gap:10px;
  padding:8px;
  border:1px solid #dcefd2;
  border-radius:13px;
  background:#fff;
}
.pomogite-report-file-thumb{
  width:46px;
  height:46px;
  border-radius:10px;
  overflow:hidden;
  background:#f0faeb;
  display:flex;
  align-items:center;
  justify-content:center;
}
.pomogite-report-file-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.pomogite-report-file-info{
  min-width:0;
}
.pomogite-report-file-name{
  color:#172033;
  font-size:13px;
  font-weight:800;
  line-height:1.25;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.pomogite-report-file-size{
  margin-top:2px;
  color:#657083;
  font-size:12px;
  line-height:1.2;
}
.pomogite-report-file-remove{
  width:30px;
  height:30px;
  border:0;
  border-radius:50%;
  background:#fff1f1;
  color:#b42318;
  cursor:pointer;
  font-size:20px;
  line-height:30px;
  font-weight:800;
}
.pomogite-report-file-summary{
  margin-top:8px;
  color:#657083;
  font-size:12px;
  line-height:1.3;
}
.pomogite-report-upload-state{
  margin-top:12px;
  padding:10px 12px;
  border:1px solid #dcefd2;
  border-radius:14px;
  background:#f6fff2;
}
.pomogite-report-upload-text{
  color:#246b13;
  font-size:13px;
  font-weight:800;
  margin-bottom:8px;
}
.pomogite-report-progress{
  height:8px;
  border-radius:999px;
  background:#e5f3de;
  overflow:hidden;
}
.pomogite-report-progress span{
  display:block;
  height:100%;
  width:0%;
  border-radius:999px;
  background:#21a30f;
  transition:width .18s ease;
}
.pomogite-report-actions button:disabled{
  opacity:.72;
  cursor:not-allowed;
}
@media (max-width:640px){
  .pomogite-report-file-item{
    grid-template-columns:42px minmax(0, 1fr) 30px;
    gap:8px;
  }
  .pomogite-report-file-thumb{
    width:42px;
    height:42px;
  }
  .pomogite-report-file-name{
    font-size:12px;
  }
}

/* === Announcement photo picker: add/remove multiple photos === */
.photo-preview-item .photo-preview-remove{
  position:absolute;
  top:5px;
  right:5px;
  width:24px;
  height:24px;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.95);
  color:#b42318;
  font-size:18px;
  font-weight:900;
  line-height:24px;
  padding:0;
  cursor:pointer;
  box-shadow:0 3px 10px rgba(23,32,51,.18);
}
.photo-preview-item .photo-preview-remove:hover{background:#ffecec;color:#8f1111}
@media(max-width:700px){
  .photo-preview-item .photo-preview-remove{width:28px;height:28px;line-height:28px;font-size:20px}
}

/* === Fix 2026-06-05: admin users table + mobile modal long text wrapping === */
.admin-users-table-wrap{
  width:100%;
  overflow-x:auto;
  border:1px solid #e1efd6;
  border-radius:12px;
  background:#fff;
  margin:8px 0 12px;
}
.admin-users-table{
  width:100%;
  border-collapse:collapse;
  min-width:860px;
  font-size:12px;
}
.admin-users-table th,
.admin-users-table td{
  padding:9px 10px;
  border-bottom:1px solid #edf5e7;
  text-align:left;
  vertical-align:top;
}
.admin-users-table th{
  color:#4b5b70;
  font-weight:800;
  background:#f7fbf3;
}
.admin-users-table td strong{display:block;color:#172033;line-height:1.2;}
.admin-users-table td small{display:block;color:#718095;margin-top:2px;}
.admin-users-table code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:11px;
  background:#f5f8f1;
  padding:2px 5px;
  border-radius:6px;
  white-space:nowrap;
}
.admin-user-email{overflow-wrap:anywhere;word-break:break-word;}

.modal-title,
.modal-description,
.modal-contact-text,
.modal-info-box,
.map-list-card,
.map-list-card *{
  overflow-wrap:anywhere;
  word-break:break-word;
}
.modal-description{
  white-space:pre-wrap;
}
@media(max-width:700px){
  .modal-title{
    font-size:26px;
    line-height:1.15;
    max-width:100%;
  }
  .modal-description{
    display:block;
    max-width:100%;
    font-size:16px;
    line-height:1.45;
  }
  .admin-users-table{min-width:760px;font-size:11px;}
  .admin-users-table th,.admin-users-table td{padding:8px;}
}

/* Multi-category filters */
.home-active-filters{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin-top:12px;
  padding:10px 12px;
  border:1px solid #dcebd4;
  border-radius:18px;
  background:#f7fcf3;
}
.home-active-filters[hidden]{display:none!important}
.home-active-filters span{
  font-weight:900;
  color:#3f5b39;
  font-size:13px;
}
.home-active-filters button{
  border:1px solid #cfe8c5;
  background:#fff;
  color:#25650a;
  border-radius:999px;
  padding:7px 11px;
  font-weight:850;
  cursor:pointer;
}
.home-active-filters button:hover{background:#eaf8e3;border-color:#62b80f}
.home-active-filters .home-active-filters-clear{
  background:#f3f7ef;
  color:#536050;
}
.home-filter-chips button.active::before,
.home-subcats button.active::before{
  content:'✓ ';
  font-weight:900;
}
.home-filter-head span::after{
  content:' Можно отмечать несколько пунктов из разных разделов.';
}
@media (max-width:760px){
  .home-active-filters{margin-top:10px;border-radius:16px;padding:9px;gap:7px}
  .home-active-filters span{flex-basis:100%}
  .home-active-filters button{font-size:13px;padding:7px 10px}
}


/* ===== MOBILE FIX: меню профиля не выезжает за экран ===== */
@media (max-width: 760px){
  .site-header,
  .header-inner,
  .nav{
    overflow:visible !important;
  }

  .nav .profile-menu,
  .profile-menu{
    position:relative !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    z-index:250 !important;
  }

  .profile-menu::after{
    display:none !important;
  }

  .profile-menu-toggle{
    width:calc(100vw - 28px) !important;
    max-width:420px !important;
    justify-content:center !important;
    box-sizing:border-box !important;
  }

  .profile-dropdown{
    position:absolute !important;
    left:50% !important;
    right:auto !important;
    top:calc(100% + 10px) !important;
    transform:translateX(-50%) !important;
    width:calc(100vw - 28px) !important;
    min-width:0 !important;
    max-width:420px !important;
    box-sizing:border-box !important;
    max-height:70vh !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    z-index:10000 !important;
    padding:10px !important;
  }

  .profile-dropdown:before{
    left:50% !important;
    right:auto !important;
    transform:translateX(-50%) rotate(45deg) !important;
  }

  .profile-dropdown a,
  .profile-dropdown-title{
    width:100% !important;
    box-sizing:border-box !important;
    white-space:normal !important;
    word-break:normal !important;
  }
}

/* =========================================================
   MOBILE UX COMPACT FIX 2026-06-07
   - компактнее категории на главной
   - компактнее профиль / мои объявления / история рейтинга
   Только мобильная версия, десктоп не затрагиваем.
========================================================= */
@media (max-width: 700px){
  /* Главная: категории ближе к формату компактных плиток */
  .home-categories{
    margin:14px auto 16px !important;
    padding:0 12px !important;
    max-width:100% !important;
  }

  .home-categories .category-grid,
  .category-grid{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    gap:10px !important;
    overflow:visible !important;
    padding:0 !important;
    scroll-snap-type:none !important;
  }

  .home-categories .category-card,
  .category-grid .category-card,
  .category-card{
    min-height:118px !important;
    height:auto !important;
    flex:initial !important;
    padding:12px 8px 10px !important;
    border-radius:18px !important;
    gap:6px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    box-shadow:0 6px 16px rgba(15,23,42,.045) !important;
  }

  .category-card .category-icon,
  .category-icon,
  .home-category-card .category-icon{
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    min-height:48px !important;
    font-size:22px !important;
    margin:0 auto 4px !important;
  }

  .category-card b{
    font-size:17px !important;
    line-height:1.12 !important;
    margin:0 !important;
  }

  .category-card span,
  .category-card p,
  .category-card .category-desc{
    font-size:12px !important;
    line-height:1.22 !important;
    font-weight:700 !important;
    opacity:.76 !important;
    margin:0 !important;
    max-width:100% !important;
  }

  .category-card em{
    font-size:10px !important;
    line-height:1.15 !important;
  }

  /* Профиль: меньше воздуха на телефоне */
  .profile-page{
    padding-top:14px !important;
    padding-bottom:18px !important;
  }

  .profile-page .profile-card,
  .profile-card{
    padding:18px 16px !important;
    border-radius:22px !important;
    margin-bottom:14px !important;
  }

  .profile-head{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .profile-avatar img{
    width:92px !important;
    height:92px !important;
  }

  .profile-main h1{
    font-size:34px !important;
    line-height:1.08 !important;
    margin:6px 0 10px !important;
  }

  .profile-meta{
    gap:7px !important;
    margin-bottom:10px !important;
  }

  .profile-meta span{
    padding:7px 10px !important;
    font-size:13px !important;
    line-height:1.15 !important;
  }

  .profile-card h2{
    font-size:28px !important;
    line-height:1.12 !important;
    margin:0 0 14px !important;
  }

  /* История помощи: карточки ниже и плотнее */
  .profile-helped-list{
    gap:10px !important;
  }

  .profile-helped-item,
  .profile-helped-item-with-avatar{
    display:grid !important;
    grid-template-columns:54px minmax(0, 1fr) !important;
    gap:10px !important;
    align-items:center !important;
    padding:12px !important;
    border-radius:18px !important;
  }

  .profile-helped-author-avatar,
  .profile-helped-author-avatar img{
    width:46px !important;
    height:46px !important;
  }

  .profile-helped-item b{
    font-size:16px !important;
    line-height:1.25 !important;
    margin-bottom:4px !important;
  }

  .profile-helped-item span,
  .profile-helped-item small{
    font-size:12px !important;
    line-height:1.25 !important;
    margin-top:2px !important;
  }

  .profile-helped-item .secondary-btn{
    grid-column:1 / -1 !important;
    width:100% !important;
    min-height:42px !important;
    padding:10px 12px !important;
    border-radius:999px !important;
    font-size:14px !important;
  }

  /* История репутации: вместо высоких карточек — компактные строки */
  .rating-log-list{
    gap:8px !important;
  }

  .rating-log-item{
    display:grid !important;
    grid-template-columns:42px minmax(0, 1fr) !important;
    grid-template-areas:
      "points reason"
      "points link"
      "points date" !important;
    gap:3px 10px !important;
    padding:12px 14px !important;
    border-radius:17px !important;
    min-height:0 !important;
  }

  .rating-log-item strong{
    grid-area:points !important;
    font-size:18px !important;
    align-self:start !important;
    line-height:1.2 !important;
  }

  .rating-log-item span{
    grid-area:reason !important;
    font-size:15px !important;
    line-height:1.25 !important;
  }

  .rating-log-item a{
    grid-area:link !important;
    font-size:14px !important;
    line-height:1.25 !important;
  }

  .rating-log-item small{
    grid-area:date !important;
    font-size:12px !important;
    line-height:1.2 !important;
  }

  /* Мои объявления / объявления пользователя: компактный список */
  .profile-ads-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .profile-ad-card{
    border-radius:18px !important;
    min-height:0 !important;
  }

  .profile-ad-link{
    display:grid !important;
    grid-template-columns:96px minmax(0, 1fr) !important;
    gap:12px !important;
    align-items:center !important;
    min-height:86px !important;
    padding:8px 44px 8px 8px !important;
  }

  .profile-ad-card img{
    width:96px !important;
    height:72px !important;
    border-radius:14px !important;
    object-fit:cover !important;
  }

  .profile-ad-card b{
    padding:0 !important;
    font-size:16px !important;
    line-height:1.2 !important;
    margin-bottom:4px !important;
  }

  .profile-ad-card span{
    padding:0 !important;
    font-size:12px !important;
    line-height:1.25 !important;
  }

  .profile-delete-ad-form{
    top:10px !important;
    right:10px !important;
  }

  .profile-delete-ad-form button{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
    border-radius:50% !important;
    font-size:16px !important;
    line-height:1 !important;
  }

  .reviews-list{
    gap:10px !important;
  }

  .review-item{
    padding:12px !important;
    border-radius:18px !important;
  }
}

@media (max-width: 480px){
  .home-categories .category-grid,
  .category-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:10px !important;
  }

  .home-categories .category-card,
  .category-grid .category-card,
  .category-card{
    min-height:112px !important;
    padding:11px 8px 9px !important;
  }

  .category-card .category-icon,
  .category-icon,
  .home-category-card .category-icon{
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    min-height:46px !important;
  }

  .category-card b{
    font-size:16px !important;
  }

  .category-card span,
  .category-card p,
  .category-card .category-desc{
    font-size:11.5px !important;
  }
}

@media (max-width: 380px){
  .profile-ad-link{
    grid-template-columns:84px minmax(0, 1fr) !important;
    gap:10px !important;
  }

  .profile-ad-card img{
    width:84px !important;
    height:66px !important;
  }
}

/* Profile scalable sections: compact desktop + collapsible mobile */
.profile-fold-section{
  overflow:hidden;
}
.profile-fold-toggle{
  width:100%;
  border:0;
  background:transparent;
  padding:0 0 14px;
  margin:0 0 8px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  color:#07152d;
  text-align:left;
  font:inherit;
}
.profile-fold-toggle span{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:24px;
  font-weight:900;
  line-height:1.15;
}
.profile-fold-toggle span b{
  min-width:28px;
  height:28px;
  padding:0 8px;
  border-radius:999px;
  background:#56bd16;
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:15px;
  font-weight:900;
}
.profile-fold-toggle em{
  font-style:normal;
  color:#2d7a10;
  background:#eef9e9;
  border-radius:999px;
  padding:8px 13px;
  font-size:13px;
  font-weight:800;
  white-space:nowrap;
}
.profile-fold-content{display:none;}
.profile-fold-section.is-open .profile-fold-content{display:block;}
.profile-card-headline-inner{margin-top:-4px;}
.profile-extra-item.is-hidden{display:none!important;}
.profile-show-more{
  margin:14px auto 0;
  min-height:42px;
  padding:0 20px;
  border:0;
  border-radius:999px;
  background:#eef9e9;
  color:#2d7a10;
  font-weight:900;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}
.profile-show-more:hover{background:#e2f4da;}
.profile-rating-history .rating-log-list,
.profile-helped-card .profile-helped-list,
.profile-grid-section .reviews-list{
  max-height:none;
}

@media (min-width: 901px){
  .profile-grid-section{
    grid-template-columns:minmax(0,1.05fr) minmax(340px,.8fr);
  }
  .profile-ads-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .profile-ad-card img{
    height:92px;
  }
  .profile-ad-card b{
    font-size:14px;
    line-height:1.18;
  }
  .profile-ad-card span{
    font-size:12px;
    line-height:1.18;
  }
  .rating-log-item{
    min-height:42px;
    padding:9px 12px;
  }
}

@media (max-width: 760px){
  .profile-fold-toggle{
    padding:0 0 10px;
    margin:0;
  }
  .profile-fold-toggle span{
    font-size:26px;
  }
  .profile-fold-toggle span b{
    min-width:30px;
    height:30px;
    font-size:15px;
  }
  .profile-fold-toggle em{
    font-size:0;
    width:34px;
    height:34px;
    padding:0;
    position:relative;
    flex:0 0 34px;
  }
  .profile-fold-toggle em:after{
    content:'⌄';
    font-size:22px;
    line-height:34px;
    display:block;
    text-align:center;
  }
  .profile-fold-section.is-open .profile-fold-toggle em:after{content:'⌃';}
  .profile-fold-section:not(.is-open){
    padding-bottom:18px!important;
  }
  .profile-show-more{
    width:100%;
    min-height:48px;
    font-size:16px;
  }
}


/* 2026-06-07: Profile sections final compact collapsed state */
.profile-fold-section{
  transition: box-shadow .15s ease, transform .15s ease;
}
.profile-fold-section:not(.is-open){
  padding-top:24px;
  padding-bottom:24px;
}
.profile-fold-section:not(.is-open) .profile-fold-toggle{
  padding-bottom:0;
  margin-bottom:0;
}
.profile-fold-section:not(.is-open) .profile-fold-content{
  display:none!important;
}
.profile-fold-toggle{
  padding:0;
  margin:0 0 16px;
}
.profile-fold-toggle span{
  gap:10px;
  flex-wrap:wrap;
}
.profile-fold-toggle em{
  min-width:94px;
  text-align:center;
}
.profile-fold-section.is-open .profile-fold-toggle{
  padding-bottom:10px;
  border-bottom:1px solid rgba(91,188,32,.12);
}

@media (min-width: 761px){
  .profile-fold-section:not(.is-open){
    min-height:88px;
    display:flex;
    align-items:center;
  }
  .profile-fold-section:not(.is-open) .profile-fold-toggle{
    align-self:center;
  }
  .profile-fold-toggle span{
    font-size:24px;
  }
}

@media (max-width: 760px){
  .profile-wrap{
    gap:16px;
  }
  .profile-fold-section{
    border-radius:24px!important;
  }
  .profile-fold-section:not(.is-open){
    padding:18px 20px!important;
    min-height:76px;
    display:flex;
    align-items:center;
  }
  .profile-fold-section.is-open{
    padding:22px 20px!important;
  }
  .profile-fold-toggle{
    gap:10px;
    width:100%;
  }
  .profile-fold-toggle span{
    font-size:23px!important;
    line-height:1.12;
    gap:8px;
    max-width:calc(100% - 46px);
  }
  .profile-fold-toggle span b{
    min-width:28px!important;
    height:28px!important;
    padding:0 8px!important;
    font-size:14px!important;
  }
  .profile-fold-toggle em{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    flex:0 0 34px!important;
    border-radius:999px;
    background:#eef9e9;
  }
  .profile-fold-toggle em:after{
    font-size:20px!important;
    line-height:34px!important;
  }
  .profile-fold-section.is-open .profile-fold-toggle{
    margin-bottom:14px;
  }
  .profile-card-headline-inner .note,
  .profile-helped-card .note{
    font-size:16px!important;
    line-height:1.45!important;
  }
  .profile-help-categories{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .profile-help-categories a{
    min-height:66px!important;
    padding:12px!important;
    font-size:16px!important;
    border-radius:16px!important;
  }
  .profile-help-categories a strong{
    width:30px!important;
    height:30px!important;
    font-size:15px!important;
  }
  .profile-helped-item{
    padding:14px!important;
    gap:12px!important;
  }
  .profile-helped-item .secondary-btn{
    min-height:44px!important;
    font-size:15px!important;
  }
  .rating-log-item{
    padding:14px!important;
    min-height:auto!important;
    display:grid!important;
    grid-template-columns:auto 1fr!important;
    gap:6px 12px!important;
  }
  .rating-log-item strong{
    grid-row:1 / span 3;
    font-size:19px!important;
  }
  .profile-grid-section{
    gap:16px!important;
  }
  .profile-ads-grid{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .profile-ad-card{
    min-height:auto!important;
  }
  .profile-ad-link{
    grid-template-columns:92px minmax(0,1fr)!important;
    gap:12px!important;
    align-items:center!important;
  }
  .profile-ad-card img{
    width:92px!important;
    height:72px!important;
    border-radius:14px!important;
  }
  .profile-ad-card b{
    font-size:17px!important;
    line-height:1.15!important;
  }
  .profile-ad-card span{
    font-size:13px!important;
    line-height:1.25!important;
  }
  .review-item{
    padding:14px!important;
  }
  .review-top-with-avatar{
    gap:10px!important;
  }
}

@media (max-width: 390px){
  .profile-fold-toggle span{
    font-size:21px!important;
  }
  .profile-fold-section:not(.is-open){
    padding:16px 18px!important;
    min-height:72px;
  }
}

/* 2026-06-07 final polish: profile sections + mobile homepage */
.profile-fold-toggle em{min-width:112px;}

@media (max-width: 760px){
  /* Общий мобильный профиль: меньше воздуха, аккуратнее карточка пользователя */
  .profile-page{padding:12px 12px 20px!important;}
  .profile-wrap{gap:12px!important;}
  .profile-page > .profile-card:first-child,
  .profile-card.profile-head-card{
    padding:18px 18px!important;
    border-radius:26px!important;
    margin-bottom:12px!important;
  }
  .profile-head{gap:10px!important;}
  .profile-avatar{display:flex!important;justify-content:flex-start!important;}
  .profile-avatar img{width:82px!important;height:82px!important;box-shadow:0 10px 22px rgba(23,32,51,.10)!important;}
  .profile-main h1{font-size:31px!important;line-height:1.05!important;margin:8px 0 12px!important;letter-spacing:-.02em!important;}
  .profile-meta{gap:6px!important;margin-bottom:8px!important;}
  .profile-meta span{padding:7px 9px!important;border-radius:999px!important;font-size:12.5px!important;font-weight:850!important;}
  .profile-side .empty,
  .profile-card .empty.mini{font-size:14px!important;line-height:1.38!important;padding:14px!important;border-radius:18px!important;}

  /* Свернутые секции профиля: профессиональные компактные плитки */
  .profile-fold-section:not(.is-open){
    padding:15px 17px!important;
    min-height:64px!important;
    border-radius:22px!important;
    box-shadow:0 10px 22px rgba(23,32,51,.055)!important;
  }
  .profile-fold-section.is-open{padding:18px 17px!important;border-radius:24px!important;}
  .profile-fold-toggle{display:grid!important;grid-template-columns:minmax(0,1fr) 34px!important;align-items:center!important;gap:10px!important;}
  .profile-fold-toggle span{
    max-width:none!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    flex-wrap:wrap!important;
    font-size:21px!important;
    line-height:1.08!important;
    letter-spacing:-.02em!important;
  }
  .profile-fold-toggle span b{
    width:auto!important;
    min-width:27px!important;
    height:27px!important;
    padding:0 8px!important;
    font-size:13.5px!important;
    order:2;
  }
  .profile-fold-toggle em{width:34px!important;height:34px!important;min-width:34px!important;}
  .profile-fold-toggle em:after{font-size:18px!important;line-height:34px!important;}
  .profile-fold-section.is-open .profile-fold-toggle{margin-bottom:12px!important;padding-bottom:10px!important;}

  /* Раскрытое содержимое профиля */
  .profile-card-headline-inner .note,.profile-helped-card .note{font-size:14px!important;line-height:1.35!important;margin:0 0 12px!important;}
  .profile-help-categories{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:10px 0 12px!important;}
  .profile-help-categories a{min-height:54px!important;padding:10px 11px!important;border-radius:15px!important;font-size:14px!important;line-height:1.12!important;}
  .profile-help-categories a strong{width:26px!important;height:26px!important;font-size:13px!important;}
  .profile-helped-item,.profile-helped-item-with-avatar{padding:12px!important;border-radius:17px!important;grid-template-columns:46px minmax(0,1fr)!important;}
  .profile-helped-author-avatar,.profile-helped-author-avatar img{width:40px!important;height:40px!important;}
  .profile-helped-item b{font-size:15px!important;}
  .profile-helped-item span,.profile-helped-item small{font-size:11.5px!important;}
  .profile-helped-item .secondary-btn{min-height:40px!important;font-size:13px!important;}
  .rating-log-item{padding:11px 12px!important;border-radius:15px!important;}
  .rating-log-item strong{font-size:17px!important;}
  .rating-log-item span{font-size:14px!important;}
  .rating-log-item a{font-size:13px!important;}
  .rating-log-item small{font-size:11.5px!important;}
  .profile-show-more{min-height:42px!important;font-size:14px!important;margin-top:12px!important;}
}

@media (max-width: 420px){
  .profile-fold-toggle span{font-size:20px!important;}
  .profile-fold-section:not(.is-open){padding:14px 15px!important;}
  .profile-page > .profile-card:first-child{padding:16px!important;}
  .profile-main h1{font-size:29px!important;}
}

/* Главная мобильная версия: компактнее и ближе к интерфейсу приложения */
@media (max-width: 760px){
  .home-redesign{padding:0 12px!important;margin-top:12px!important;}
  .home-hero-shell{gap:12px!important;margin-bottom:14px!important;}
  .home-hero-copy{padding:12px 0 4px!important;}
  .home-hero-text{font-size:20px!important;line-height:1.35!important;margin:0 0 14px!important;max-width:none!important;letter-spacing:-.01em!important;}
  .home-hero-actions{gap:10px!important;}
  .home-hero-actions .hero-btn{width:100%!important;min-height:54px!important;border-radius:18px!important;font-size:18px!important;padding:12px 18px!important;box-shadow:0 8px 20px rgba(23,32,51,.10)!important;}

  .home-search-panel{padding:14px!important;border-radius:24px!important;box-shadow:0 12px 28px rgba(23,32,51,.07)!important;}
  .home-main-search{gap:9px!important;border:0!important;background:transparent!important;overflow:visible!important;display:grid!important;grid-template-columns:1fr!important;height:auto!important;margin-bottom:12px!important;}
  .home-main-search-icon{display:none!important;}
  .home-main-search input{height:50px!important;border:1px solid #e1eadb!important;border-radius:16px!important;padding:0 16px 0 44px!important;font-size:15px!important;background:#fff!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.4)!important;}
  .home-filter-open{height:48px!important;border:1px solid #e1eadb!important;border-radius:16px!important;background:#fff!important;color:#286f12!important;font-weight:900!important;font-size:16px!important;}
  .home-main-search button[type="submit"]{height:52px!important;border-radius:17px!important;font-size:18px!important;box-shadow:0 10px 22px rgba(31,139,29,.18)!important;}
  .home-quick-filters{justify-content:center!important;gap:8px!important;}
  .home-quick-filters button{padding:9px 12px!important;border-radius:999px!important;font-size:13.5px!important;background:#fff!important;box-shadow:0 5px 14px rgba(23,32,51,.04)!important;}
  .home-quick-tags{margin-top:6px!important;}
  .home-quick-tags:before{content:'Популярное:';width:100%;font-weight:800;color:#596273;font-size:14px;margin:2px 0 -2px!important;}

  .home-urgent-row{margin:12px 0 14px!important;}
  .home-urgent-row .urgent-filter-btn{min-height:44px!important;border-radius:16px!important;font-size:16px!important;}

  /* Категории: меньше плитки, больше информации на одном экране */
  .home-big-categories{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:0 0 16px!important;}
  .home-category-wrap{min-width:0!important;}
  .home-big-category{min-height:106px!important;padding:11px 9px!important;border-radius:18px!important;gap:5px!important;box-shadow:0 8px 18px rgba(23,32,51,.045)!important;}
  .home-big-icon{width:42px!important;height:42px!important;font-size:22px!important;}
  .home-big-category strong{font-size:18px!important;line-height:1.1!important;}
  .home-big-category small{display:block!important;font-size:11.5px!important;line-height:1.18!important;min-height:28px!important;max-width:135px!important;color:#6b7280!important;}
  .home-category-wrap .home-subcats{max-height:60vh!important;overflow:auto!important;border-radius:18px!important;padding:10px!important;box-shadow:0 14px 38px rgba(23,32,51,.14)!important;}
  .home-subcat-title{font-size:11px!important;padding:8px 10px!important;border-radius:11px!important;}
  .home-subcats button{font-size:13px!important;padding:9px 10px!important;border-radius:10px!important;}

  .map-title-section{padding:6px 10px!important;margin-top:10px!important;}
  .map-title-section h1{font-size:30px!important;line-height:1.08!important;letter-spacing:-.03em!important;margin-bottom:8px!important;}
  .map-title-section p{font-size:16px!important;line-height:1.38!important;max-width:330px!important;margin-left:auto!important;margin-right:auto!important;}
  .map-area-layout{gap:12px!important;}
  .map-card{border-radius:22px!important;padding:10px!important;}
  .map-help-button{min-height:46px!important;border-radius:16px!important;font-size:15px!important;}
  #map{height:340px!important;border-radius:18px!important;}

  .visible-announcements-panel{padding:16px!important;border-radius:24px!important;}
  .visible-announcements-head h2{font-size:26px!important;line-height:1.1!important;margin-bottom:4px!important;}
  .visible-announcements-head p{font-size:14px!important;}
  .visible-announcements-list{gap:10px!important;max-height:none!important;}
  .nearby-card,.visible-announcements-list .announcement-card{border-radius:18px!important;padding:10px!important;}
  .nearby-card img,.visible-announcements-list img{width:74px!important;height:74px!important;border-radius:14px!important;}

  /* Последние объявления — компактные карточки без лишней высоты */
  .home-content-row{margin:14px 0 16px!important;}
  .home-latest-help,.home-trust-card,.home-how-project{border-radius:24px!important;padding:16px!important;}
  .home-section-head h2,.home-trust-card h2{font-size:26px!important;line-height:1.08!important;letter-spacing:-.02em!important;}
  .home-section-head a{font-size:16px!important;}
  .home-latest-grid{grid-template-columns:1fr!important;gap:10px!important;}
  .home-latest-card{border-radius:18px!important;padding:12px!important;display:grid!important;grid-template-columns:1fr!important;gap:9px!important;}
  .home-latest-photo{display:none!important;}
  .home-latest-badge{margin:0!important;padding:8px 12px!important;border-radius:12px!important;font-size:14px!important;}
  .home-latest-card strong{padding:0!important;font-size:20px!important;line-height:1.15!important;}
  .home-latest-card small{padding:0!important;font-size:14px!important;}
  .home-latest-more{margin:4px 0 0!important;width:100%!important;min-height:46px!important;border-radius:14px!important;font-size:16px!important;}

  .home-trust-card ul{gap:12px!important;}
  .home-trust-card li{grid-template-columns:46px 1fr!important;gap:10px!important;}
  .home-trust-card li span{width:46px!important;height:46px!important;font-size:22px!important;}
  .home-trust-card b{font-size:18px!important;line-height:1.16!important;}
  .home-trust-card small{font-size:15px!important;line-height:1.25!important;}
  .home-how-project{gap:10px!important;}
  .home-how-card{padding:14px!important;border-radius:16px!important;}
  .home-how-card b{font-size:19px!important;}
  .home-how-card span{font-size:15px!important;}
}

@media (max-width: 390px){
  .home-hero-text{font-size:18px!important;}
  .home-big-category{min-height:100px!important;}
  .home-big-category strong{font-size:17px!important;}
  .home-big-category small{font-size:10.8px!important;}
  .map-title-section h1{font-size:28px!important;}
  #map{height:315px!important;}
}

/* 2026-06-07: финальная мобильная главная + отдельная страница Мои объявления */
@media (max-width: 760px){
  /* Убираем дублирующий заголовок над быстрыми категориями */
  .home-quick-tags:before{content:none!important;display:none!important;}
  .home-popular-searches{margin-top:12px!important;}
  .home-popular-searches span{display:block!important;width:100%!important;font-size:14px!important;font-weight:850!important;color:#596273!important;margin:2px 0!important;}

  /* Категории главной — компактнее, ближе к мобильному приложению */
  .home-big-categories{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:0 0 14px!important;}
  .home-big-category{min-height:86px!important;height:auto!important;padding:10px 8px!important;border-radius:16px!important;gap:4px!important;}
  .home-big-icon{width:34px!important;height:34px!important;font-size:18px!important;margin-bottom:1px!important;}
  .home-big-category strong{font-size:15.5px!important;line-height:1.08!important;}
  .home-big-category small{font-size:10.2px!important;line-height:1.13!important;min-height:23px!important;max-width:120px!important;}
  .home-category-wrap .home-subcats{left:0!important;right:auto!important;min-width:210px!important;max-width:calc(100vw - 32px)!important;}

  /* Рядом и последние объявления — показываем компактные первые элементы */
  .visible-announcements-list .visible-announcement-card:nth-of-type(n+4){display:none!important;}
  .visible-announcements-list.is-expanded .visible-announcement-card:nth-of-type(n+4){display:grid!important;}
  .visible-show-all{display:flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;border-radius:14px!important;background:#eef9e9!important;color:#287316!important;text-decoration:none!important;font-weight:900!important;margin-top:6px!important;}

  .home-latest-grid .home-latest-card:nth-of-type(n+4){display:none!important;}
  .home-latest-help{margin-top:14px!important;}

  /* Карточки в списках — немного плотнее */
  .visible-announcement-card{padding:9px!important;border-radius:16px!important;gap:10px!important;}
  .visible-dog-thumb{width:64px!important;height:64px!important;border-radius:14px!important;}
  .visible-dog-content b{font-size:17px!important;line-height:1.12!important;}
  .visible-dog-badge,.visible-dog-status{font-size:11px!important;max-width:145px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
  .visible-dog-author,.visible-dog-time{font-size:12.5px!important;}

  .home-trust-card,.home-how-project{margin-top:14px!important;}
}

/* Страница Мои объявления */
.my-ads-page{padding-top:28px;padding-bottom:36px;}
.my-ads-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px;}
.my-ads-head h1{margin:0 0 6px;font-size:32px;line-height:1.1;}
.my-ads-head p{margin:0;color:#667085;}
.my-ads-tabs{display:flex;gap:10px;margin:0 0 14px;flex-wrap:wrap;}
.my-ads-tabs a{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #d8edcf;border-radius:999px;background:#fff;color:#286f12;text-decoration:none;font-weight:850;}
.my-ads-tabs a.active{background:#eaf8e6;box-shadow:0 8px 18px rgba(38,126,16,.08);}
.my-ads-tabs b{display:inline-flex;min-width:24px;height:24px;border-radius:999px;align-items:center;justify-content:center;background:#42bf18;color:#fff;font-size:13px;}
.my-ads-list{display:grid;gap:10px;}
.my-ad-row{display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px;padding:12px;border:1px solid #dcefd6;border-radius:18px;background:#fff;}
.my-ad-thumb img{width:112px;height:88px;object-fit:cover;border-radius:14px;background:#eef9e9;display:block;}
.my-ad-body h2{font-size:18px;line-height:1.15;margin:6px 0 4px;}
.my-ad-body small{color:#667085;}
.my-ad-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.my-ad-meta span{padding:5px 9px;border-radius:999px;background:#eef9e9;color:#286f12;font-weight:850;font-size:12px;}
.my-ad-meta em{font-style:normal;padding:5px 9px;border-radius:999px;background:#fff4df;color:#b66b00;font-weight:850;font-size:12px;}
.my-ad-row.is-active .my-ad-meta em{background:#eaf8e6;color:#287316;}
.my-ad-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;}

@media (max-width:760px){
  .my-ads-page{padding:14px 12px 24px!important;}
  .my-ads-head{display:grid!important;gap:12px!important;padding:18px!important;border-radius:24px!important;}
  .my-ads-head h1{font-size:28px!important;}
  .my-ads-tabs{gap:8px!important;overflow:auto!important;flex-wrap:nowrap!important;padding-bottom:2px!important;}
  .my-ads-tabs a{white-space:nowrap!important;padding:9px 12px!important;font-size:14px!important;}
  .my-ads-list-card{padding:12px!important;border-radius:24px!important;}
  .my-ad-row{grid-template-columns:82px minmax(0,1fr)!important;gap:10px!important;padding:10px!important;border-radius:17px!important;}
  .my-ad-thumb img{width:82px!important;height:72px!important;border-radius:13px!important;}
  .my-ad-body h2{font-size:17px!important;margin:4px 0!important;}
  .my-ad-meta span,.my-ad-meta em{font-size:11px!important;padding:4px 7px!important;max-width:145px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
  .my-ad-actions .secondary-btn{min-height:36px!important;font-size:13px!important;padding:8px 11px!important;}
}

/* 2026-06-07: mobile final cleanup — category tiles as compact app chips, shorter lists */
@media (max-width: 760px){
  /* Главные категории больше не занимают несколько экранов */
  .home-big-categories{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    margin:8px 0 18px!important;
    align-items:stretch!important;
  }
  .home-category-wrap{position:relative!important;min-width:0!important;}
  .home-big-category{
    min-height:72px!important;
    height:72px!important;
    padding:9px 6px!important;
    border-radius:18px!important;
    gap:4px!important;
    box-shadow:0 6px 16px rgba(23,32,51,.055)!important;
    border:1px solid #e4edde!important;
  }
  .home-big-category.active{border-color:#65c84d!important;background:#fbfffa!important;}
  .home-big-icon{width:30px!important;height:30px!important;font-size:17px!important;margin:0!important;}
  .home-big-category strong{font-size:13.5px!important;line-height:1.05!important;letter-spacing:-.01em!important;}
  .home-big-category small{display:none!important;}
  .home-category-wrap .home-subcats{
    top:78px!important;
    left:0!important;
    min-width:230px!important;
    max-width:calc(100vw - 28px)!important;
    z-index:30!important;
  }
  .home-category-wrap:nth-child(3n) .home-subcats,
  .home-category-wrap:nth-child(3n-1) .home-subcats{left:auto!important;right:0!important;}

  /* Красная плашка срочности — компактнее, чтобы не съедала место */
  .home-urgent-row{margin:10px 0 10px!important;}
  .home-urgent-row .urgent-filter-btn{min-height:40px!important;border-radius:15px!important;font-size:15px!important;padding:8px 12px!important;}

  /* Карта — компактнее на первом просмотре */
  .map-title-section{padding:3px 8px!important;margin:10px 0 8px!important;}
  .map-title-section h1{font-size:25px!important;line-height:1.08!important;margin-bottom:6px!important;}
  .map-title-section p{font-size:14px!important;line-height:1.32!important;max-width:320px!important;}
  .map-card{padding:8px!important;border-radius:20px!important;}
  .map-help-button{min-height:42px!important;font-size:14px!important;border-radius:14px!important;}
  #map{height:285px!important;border-radius:16px!important;}

  /* Объявления рядом: 3 карточки, более плотная карточка */
  .visible-announcements-panel{padding:14px!important;border-radius:22px!important;}
  .visible-announcements-head h2{font-size:24px!important;line-height:1.08!important;}
  .visible-announcements-head p{font-size:13px!important;}
  .visible-announcement-card{
    grid-template-columns:58px minmax(0,1fr)!important;
    gap:9px!important;
    padding:9px!important;
    border-radius:15px!important;
  }
  .visible-dog-thumb{width:58px!important;height:58px!important;border-radius:13px!important;}
  .visible-dog-content{gap:3px!important;}
  .visible-dog-content b{font-size:16px!important;line-height:1.08!important;}
  .visible-dog-badge,.visible-dog-status{font-size:10.5px!important;padding:4px 7px!important;max-width:130px!important;}
  .visible-dog-author,.visible-dog-time{font-size:12px!important;line-height:1.1!important;}
  .visible-dog-content .mini-edit{min-height:34px!important;border-radius:12px!important;font-size:13px!important;margin-top:3px!important;}
  .visible-show-all{min-height:40px!important;font-size:15px!important;border-radius:13px!important;}

  /* Последние объявления: не карточки на полэкрана, а короткий список */
  .home-content-row{margin:16px 0!important;gap:14px!important;}
  .home-latest-help{padding:14px!important;border-radius:22px!important;}
  .home-section-head{align-items:center!important;margin-bottom:10px!important;}
  .home-section-head h2{font-size:24px!important;line-height:1.08!important;}
  .home-section-head a{font-size:15px!important;line-height:1.15!important;}
  .home-latest-grid{gap:8px!important;}
  .home-latest-card{
    display:grid!important;
    grid-template-columns:1fr auto!important;
    grid-template-areas:'badge badge' 'title more' 'time more'!important;
    align-items:center!important;
    gap:5px 10px!important;
    padding:10px!important;
    border-radius:16px!important;
    min-height:0!important;
  }
  .home-latest-badge{grid-area:badge!important;margin:0!important;padding:7px 10px!important;font-size:12.5px!important;border-radius:11px!important;width:100%!important;}
  .home-latest-card strong{grid-area:title!important;font-size:17px!important;line-height:1.12!important;margin:0!important;padding:0!important;}
  .home-latest-time{grid-area:time!important;font-size:12.5px!important;margin:0!important;padding:0!important;}
  .home-latest-more{grid-area:more!important;width:auto!important;min-width:92px!important;min-height:38px!important;padding:0 12px!important;margin:0!important;border-radius:12px!important;font-size:14px!important;}

  /* Информационные блоки внизу — плотнее */
  .home-trust-card,.home-how-project{padding:14px!important;border-radius:22px!important;}
  .home-trust-card h2{font-size:23px!important;line-height:1.08!important;margin-bottom:12px!important;}
  .home-trust-card ul{gap:10px!important;}
  .home-trust-card li{grid-template-columns:38px 1fr!important;gap:9px!important;}
  .home-trust-card li span{width:38px!important;height:38px!important;font-size:19px!important;}
  .home-trust-card b{font-size:16px!important;line-height:1.12!important;}
  .home-trust-card small{font-size:13.5px!important;line-height:1.22!important;}
  .home-how-card{padding:12px!important;border-radius:15px!important;}
  .home-how-card b{font-size:17px!important;}
  .home-how-card span{font-size:13.5px!important;}
}

@media (max-width: 380px){
  .home-big-categories{gap:7px!important;}
  .home-big-category{height:68px!important;min-height:68px!important;padding:8px 5px!important;}
  .home-big-icon{width:28px!important;height:28px!important;font-size:16px!important;}
  .home-big-category strong{font-size:12.5px!important;}
  .home-section-head h2,.visible-announcements-head h2{font-size:22px!important;}
}


/* 2026-06-07: фильтры без автопрыжка + исправление клика по пунктам мобильных категорий */
@media (max-width: 760px){
  .home-category-wrap::after{
    display:none!important;
    pointer-events:none!important;
  }
  .home-category-wrap:hover,
  .home-category-wrap:focus-within{
    z-index:9999!important;
  }
  .home-category-wrap .home-subcats{
    z-index:10000!important;
    pointer-events:auto!important;
    max-height:62vh!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .home-subcats button{
    position:relative!important;
    z-index:10001!important;
    touch-action:manipulation!important;
  }
  .home-active-filters{
    max-height:178px!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding:10px!important;
    gap:7px!important;
  }
  .home-active-filters span{
    position:sticky!important;
    top:0!important;
    z-index:2!important;
    background:#f7fcf3!important;
    padding:4px 0!important;
  }
  .home-active-filters .home-active-filters-map{
    width:100%!important;
    justify-content:center!important;
    background:linear-gradient(180deg,#38b51e,#18820d)!important;
    color:#fff!important;
    border-color:#18820d!important;
    min-height:42px!important;
    font-size:15px!important;
  }
  .home-active-filters .home-active-filters-clear{
    width:100%!important;
    min-height:38px!important;
  }
}

/* ===== 2026-06-07 mobile quick category dropdowns + compact home ===== */
.home-mobile-category-filter{position:relative;z-index:60;}
.home-quick-filter-wrap{position:relative;display:inline-flex;}
.home-quick-filter-wrap > button{white-space:nowrap;}
.home-quick-subcats{display:none;position:absolute;left:0;top:calc(100% + 8px);width:min(330px, calc(100vw - 36px));max-height:58vh;overflow:auto;background:#fff;border:1px solid #e2eadb;border-radius:18px;box-shadow:0 18px 44px rgba(23,32,51,.18);padding:12px;z-index:120;text-align:left;}
.home-quick-filter-wrap.dropdown-open .home-quick-subcats{display:block;}
.home-quick-subcat-title{display:block;margin:5px 0 6px;padding:9px 12px;border-radius:10px;background:#e7f6ec;color:#238052;font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.02em;}
.home-quick-subcats button{display:block;width:100%;text-align:left;border:0!important;background:#fff!important;color:#172033!important;box-shadow:none!important;border-radius:10px!important;padding:10px 12px!important;margin:2px 0!important;font-size:15px!important;font-weight:800!important;line-height:1.25!important;}
.home-quick-subcats button:hover,.home-quick-subcats button.active{background:#f1faec!important;color:#236c0e!important;}
.home-quick-subcats button.active::before{content:"✓ ";font-weight:900;color:#258118;}
.home-quick-subcats .home-quick-subcats-map{margin-top:10px!important;text-align:center!important;background:#eaf8e3!important;color:#287316!important;border:1px solid #cfeac6!important;}
.visible-show-all{border:0;cursor:pointer;font-family:inherit;}

@media (max-width: 760px){
  .home-quick-tags{overflow:visible!important;}
  .home-quick-filter-wrap{display:inline-flex!important;}
  .home-quick-filter-wrap:nth-child(3n) .home-quick-subcats,
  .home-quick-filter-wrap:nth-child(3n+2) .home-quick-subcats{left:50%;transform:translateX(-50%);}
  .home-quick-filter-wrap:nth-child(3n+1) .home-quick-subcats{left:0;transform:none;}
  .home-quick-subcats{max-height:54vh;}
  .home-quick-filter-all{order:-1;}
  /* На мобильной большие карточки дублировали верхний фильтр и растягивали главную страницу. */
  .home-big-categories{display:none!important;}
  .map-title-section{margin-top:18px!important;}
}
@media (max-width: 760px){
  .home-quick-tags:before{content:'Категории:'!important;display:block!important;width:100%!important;font-weight:900!important;color:#596273!important;font-size:15px!important;margin:2px 0 0!important;}
}


/* ===== 2026-06-07 fix mobile multi-category dropdown behavior ===== */
@media (max-width: 760px){
  .home-mobile-category-filter{
    position:relative!important;
    overflow:visible!important;
    z-index:200!important;
  }
  .home-mobile-category-filter .home-quick-filter-wrap{
    position:static!important;
  }
  .home-mobile-category-filter .home-quick-subcats{
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:calc(100% + 10px)!important;
    width:100%!important;
    max-width:none!important;
    transform:none!important;
    box-sizing:border-box!important;
    max-height:50vh!important;
    overflow:auto!important;
    z-index:999!important;
  }
  .home-mobile-category-filter .home-quick-filter-wrap:nth-child(n) .home-quick-subcats{
    left:0!important;
    right:0!important;
    transform:none!important;
  }
  .home-mobile-category-filter .home-quick-subcats button.active{
    background:#f1faec!important;
    color:#236c0e!important;
  }
}


/* ===== 2026-06-07 mobile subcategory panel final fix ===== */
@media (max-width: 760px){
  .home-mobile-category-filter .home-quick-filter-wrap.dropdown-open .home-quick-subcats{
    display:none!important;
  }
  .home-mobile-subcat-panel{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:10px 0 6px!important;
    padding:14px!important;
    box-sizing:border-box!important;
    background:#fff!important;
    border:1px solid #e2eadb!important;
    border-radius:20px!important;
    box-shadow:0 14px 34px rgba(23,32,51,.13)!important;
    text-align:left!important;
    max-height:none!important;
    overflow:visible!important;
    order:50!important;
  }
  .home-mobile-subcat-panel .home-quick-subcat-title{
    display:block!important;
    margin:6px 0 8px!important;
    padding:11px 12px!important;
    border-radius:12px!important;
    background:#e7f6ec!important;
    color:#238052!important;
    font-size:13px!important;
    font-weight:900!important;
    text-transform:uppercase!important;
    letter-spacing:.02em!important;
  }
  .home-mobile-subcat-panel button{
    display:block!important;
    width:100%!important;
    text-align:left!important;
    border:0!important;
    background:#fff!important;
    color:#172033!important;
    box-shadow:none!important;
    border-radius:12px!important;
    padding:12px 14px!important;
    margin:3px 0!important;
    font-size:17px!important;
    font-weight:850!important;
    line-height:1.25!important;
  }
  .home-mobile-subcat-panel button.active{
    background:#f1faec!important;
    color:#236c0e!important;
  }
  .home-mobile-subcat-panel button.active::before{
    content:"✓ "!important;
    font-weight:900!important;
    color:#258118!important;
  }
  .home-mobile-subcat-panel .home-quick-subcats-map{
    margin-top:12px!important;
    text-align:center!important;
    background:linear-gradient(180deg,#38b51e,#18820d)!important;
    color:#fff!important;
    border-radius:14px!important;
  }
}


/* ===== compact mobile subcategories ===== */
@media (max-width:760px){
 .home-mobile-subcat-panel{padding:10px!important;border-radius:16px!important;}
 .home-mobile-subcat-panel .home-quick-subcat-title{
   margin:4px 0 6px!important;
   padding:8px 10px!important;
   font-size:12px!important;
   border-radius:10px!important;
 }
 .home-mobile-subcat-panel button{
   padding:8px 10px!important;
   margin:1px 0!important;
   font-size:14px!important;
   line-height:1.15!important;
   border-radius:8px!important;
 }
 .home-mobile-subcat-panel .home-quick-subcats-map{
   margin-top:8px!important;
   padding:10px!important;
 }
}

/* 2026-06-07: fix header dropdown layer + mobile notifications/profile polish */
.site-header,
.header,
.main-header,
.top-nav,
.nav,
.user-menu,
.profile-menu,
.header-user,
.account-menu{
  position:relative;
  z-index:10000!important;
}
.user-dropdown,
.profile-dropdown,
.account-dropdown,
.user-menu-dropdown,
.header-user-menu,
.dropdown-menu,
.user-menu .dropdown,
.profile-menu .dropdown{
  z-index:100000!important;
}

@media (max-width:760px){
  /* Notifications page: make hero and cards proportional on phones */
  .notifications-page{
    padding:14px 12px 22px!important;
  }
  .notifications-page .subscriptions-hero,
  .notifications-hero{
    display:block!important;
    padding:22px 20px!important;
    border-radius:26px!important;
    margin:0 0 14px!important;
    min-height:auto!important;
  }
  .notifications-page .subscriptions-hero h1,
  .notifications-hero h1{
    font-size:34px!important;
    line-height:1.08!important;
    margin:0 0 10px!important;
    letter-spacing:-.03em!important;
  }
  .notifications-page .subscriptions-hero h1:before,
  .notifications-hero h1:before{
    display:block!important;
    font-size:36px!important;
    margin-bottom:8px!important;
  }
  .notifications-page .subscriptions-hero p,
  .notifications-hero p{
    font-size:18px!important;
    line-height:1.38!important;
    margin:0 0 16px!important;
    max-width:100%!important;
  }
  .notifications-page .subscriptions-hero .secondary-btn,
  .notifications-hero .secondary-btn{
    width:100%!important;
    min-height:48px!important;
    border-radius:18px!important;
    font-size:16px!important;
    padding:12px 16px!important;
  }
  .notifications-card,
  .notifications-page .subscription-card{
    padding:18px 16px!important;
    border-radius:24px!important;
    margin-bottom:14px!important;
  }
  .notifications-card .subscription-card-head,
  .notifications-page .subscription-card-head{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    align-items:start!important;
  }
  .notifications-card h2,
  .notifications-page .subscription-card-head h2{
    font-size:31px!important;
    line-height:1.08!important;
    margin:0!important;
    letter-spacing:-.03em!important;
  }
  .notifications-card .secondary-btn,
  .notifications-page .subscription-card-head .secondary-btn{
    width:100%!important;
    min-height:44px!important;
    border-radius:16px!important;
    font-size:15px!important;
    white-space:normal!important;
  }
  .notification-list{
    gap:10px!important;
  }
  .notification-item{
    padding:13px 14px!important;
    border-radius:18px!important;
    font-size:15px!important;
    line-height:1.36!important;
  }
  .notification-item b{
    font-size:16px!important;
    line-height:1.25!important;
  }
  .notification-item span,
  .notification-line{
    font-size:14px!important;
    line-height:1.38!important;
  }
  .notification-item small{
    font-size:13px!important;
    line-height:1.32!important;
  }
  .notification-user-link,
  .notification-announcement-link,
  .notification-subscription-link{
    font-size:inherit!important;
  }

  /* Profile mobile: more balanced first card and section headers */
  .profile-page{
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .profile-card.profile-head-card{
    padding:20px 18px!important;
    border-radius:28px!important;
  }
  .profile-head{
    display:grid!important;
    grid-template-columns:96px minmax(0,1fr)!important;
    gap:14px!important;
    align-items:start!important;
  }
  .profile-avatar,
  .profile-avatar-editable{
    grid-column:1!important;
    grid-row:1!important;
    justify-content:center!important;
  }
  .profile-avatar img{
    width:90px!important;
    height:90px!important;
  }
  .profile-main{
    grid-column:2!important;
    grid-row:1!important;
    min-width:0!important;
    padding-top:2px!important;
  }
  .profile-name-row{
    justify-content:flex-start!important;
    align-items:center!important;
    gap:8px!important;
    margin-bottom:10px!important;
  }
  .profile-main h1{
    font-size:30px!important;
    line-height:1.05!important;
    margin:0!important;
    word-break:break-word!important;
  }
  .profile-name-edit-toggle{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    border-radius:999px!important;
    font-size:17px!important;
  }
  .profile-meta,
  .profile-meta-trust{
    grid-column:1 / -1!important;
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:flex-start!important;
    gap:7px!important;
    margin-top:8px!important;
  }
  .profile-meta a,
  .profile-meta span{
    font-size:13px!important;
    line-height:1.15!important;
    padding:8px 10px!important;
    border-radius:999px!important;
  }
  .profile-actions,
  .profile-side{
    grid-column:1 / -1!important;
    width:100%!important;
    margin-top:12px!important;
  }
  .profile-side .empty,
  .profile-card.profile-head-card .empty{
    font-size:15px!important;
    line-height:1.4!important;
    padding:14px 16px!important;
    border-radius:20px!important;
    text-align:center!important;
  }
  .profile-fold-section:not(.is-open){
    padding:16px!important;
    min-height:64px!important;
  }
  .profile-fold-toggle span{
    font-size:21px!important;
    line-height:1.12!important;
  }
}

@media (max-width:420px){
  .profile-head{
    grid-template-columns:84px minmax(0,1fr)!important;
    gap:12px!important;
  }
  .profile-avatar img{
    width:80px!important;
    height:80px!important;
  }
  .profile-main h1{
    font-size:27px!important;
  }
  .profile-meta a,
  .profile-meta span{
    font-size:12.5px!important;
    padding:7px 9px!important;
  }
  .notifications-card h2,
  .notifications-page .subscription-card-head h2{
    font-size:28px!important;
  }
  .notifications-page .subscriptions-hero h1,
  .notifications-hero h1{
    font-size:31px!important;
  }
}

/* 2026-06-07: Profile mobile premium layout v2 */
.profile-user-id-mobile{display:none;}
.profile-trust-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0 8px;}
.profile-stat-row{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap;margin:8px 0 8px;}
.profile-stat-row a{text-decoration:none;background:#f3fbef;border:1px solid #dbeccc;border-radius:16px;color:#2f6c22;padding:9px 12px;display:inline-flex;align-items:center;gap:6px;font-weight:900;min-height:42px;}
.profile-stat-row a span{font-size:16px;line-height:1;}
.profile-stat-row a b{font-size:17px;line-height:1;}
.profile-stat-row a em{font-style:normal;font-size:12px;color:#5c7654;font-weight:800;}
.profile-subline{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#6b7280;font-size:13px;font-weight:700;margin-top:6px;}
.profile-subline span{display:inline-flex;align-items:center;gap:4px;}
.profile-subline span + span:before{content:'•';opacity:.45;margin-right:2px;}

@media (max-width:760px){
  .profile-card.profile-head-card{padding:18px 18px 20px!important;border-radius:26px!important;}
  .profile-head{display:grid!important;grid-template-columns:86px minmax(0,1fr)!important;gap:14px!important;align-items:start!important;}
  .profile-avatar,.profile-avatar-editable{grid-column:1!important;grid-row:1!important;justify-content:center!important;padding-top:2px!important;}
  .profile-avatar img{width:78px!important;height:78px!important;box-shadow:0 10px 22px rgba(23,32,51,.10)!important;}
  .profile-avatar-camera{width:26px!important;height:26px!important;right:0!important;bottom:2px!important;}
  .profile-main{grid-column:2!important;grid-row:1!important;min-width:0!important;padding-top:0!important;}
  .profile-name-row{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;margin:0 0 2px!important;}
  .profile-main h1{font-size:30px!important;line-height:1.05!important;margin:0!important;letter-spacing:-.025em!important;word-break:break-word!important;}
  .profile-name-edit-toggle{width:34px!important;height:34px!important;min-width:34px!important;font-size:16px!important;}
  .profile-user-id-mobile{display:block!important;color:#6b7280;font-size:13px;font-weight:800;margin:2px 0 9px!important;}
  .profile-trust-line{margin:0 0 9px!important;}
  .profile-trust-line .profile-level-badge{font-size:12.5px!important;padding:7px 10px!important;border-radius:999px!important;line-height:1.15!important;background:#f3fbef!important;border:1px solid #dbeccc!important;max-width:100%!important;}
  .profile-stat-row{grid-column:1 / -1!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;width:100%!important;margin:14px 0 8px!important;}
  .profile-stat-row a{min-height:58px!important;border-radius:18px!important;padding:8px 6px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;gap:3px!important;}
  .profile-stat-row a span{font-size:18px!important;}
  .profile-stat-row a b{font-size:19px!important;}
  .profile-stat-row a em{font-size:11px!important;line-height:1.05!important;}
  .profile-subline{grid-column:1 / -1!important;justify-content:center!important;width:100%!important;font-size:13px!important;margin:8px 0 4px!important;color:#6b7280!important;}
  .profile-subline span:first-child{display:none!important;}
  .profile-subline span + span:before{display:none!important;}
  .profile-actions,.profile-side{grid-column:1 / -1!important;width:100%!important;margin-top:10px!important;}
  .profile-card.profile-head-card .empty{font-size:14px!important;line-height:1.36!important;padding:14px!important;border-radius:18px!important;margin-top:4px!important;}

  .profile-fold-section:not(.is-open){padding:0!important;min-height:0!important;border-radius:22px!important;overflow:hidden!important;box-shadow:0 10px 24px rgba(23,32,51,.055)!important;}
  .profile-fold-section:not(.is-open) .profile-fold-toggle{min-height:68px!important;padding:0 15px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 30px!important;gap:8px!important;align-items:center!important;}
  .profile-fold-toggle span{font-size:20px!important;line-height:1.08!important;gap:7px!important;flex-wrap:nowrap!important;min-width:0!important;}
  .profile-fold-toggle span b{order:0!important;margin-left:4px!important;min-width:26px!important;height:26px!important;padding:0 7px!important;font-size:13px!important;flex:0 0 auto!important;}
  .profile-fold-toggle em{width:30px!important;height:30px!important;min-width:30px!important;flex:0 0 30px!important;}
  .profile-fold-toggle em:after{font-size:17px!important;line-height:30px!important;}
  .profile-grid-section{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;}
  .profile-grid-section .profile-fold-section{width:100%!important;}
}

@media (max-width:420px){
  .profile-card.profile-head-card{padding:17px 16px 19px!important;}
  .profile-head{grid-template-columns:78px minmax(0,1fr)!important;gap:12px!important;}
  .profile-avatar img{width:72px!important;height:72px!important;}
  .profile-main h1{font-size:27px!important;}
  .profile-stat-row{gap:7px!important;}
  .profile-stat-row a{min-height:54px!important;border-radius:16px!important;}
  .profile-fold-toggle span{font-size:19px!important;}
  .profile-fold-section:not(.is-open) .profile-fold-toggle{min-height:64px!important;padding:0 14px!important;}
}


/* === Pomogi-Pomogu: mobile profile final polish === */
@media (max-width: 760px){
  .profile-page{padding-top:18px!important;}
  .profile-card.profile-head-card{
    padding:18px 16px 18px!important;
    border-radius:24px!important;
  }
  .profile-head{
    grid-template-columns:82px minmax(0,1fr)!important;
    gap:12px!important;
    align-items:start!important;
  }
  .profile-avatar img,
  .profile-avatar .avatar{
    width:78px!important;
    height:78px!important;
  }
  .profile-main{min-width:0!important;}
  .profile-name-row{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    margin:0 0 2px!important;
  }
  .profile-name-row h1{
    font-size:31px!important;
    line-height:1.05!important;
    margin:0!important;
    letter-spacing:-0.03em!important;
    max-width:calc(100% - 44px)!important;
    overflow-wrap:anywhere!important;
  }
  .profile-name-edit-toggle{
    position:static!important;
    transform:none!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    padding:0!important;
    border-radius:50%!important;
    font-size:16px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
  }
  .profile-user-id-mobile{
    display:block!important;
    margin:1px 0 8px!important;
    font-size:14px!important;
    line-height:1.2!important;
    font-weight:800!important;
    color:#697386!important;
  }
  .profile-subline span:first-child{display:none!important;}
  .profile-trust-line{margin:0 0 9px!important;}
  .profile-level-badge{
    min-height:0!important;
    padding:8px 12px!important;
    border-radius:999px!important;
    font-size:14px!important;
    line-height:1.15!important;
    font-weight:800!important;
    max-width:100%!important;
  }
  .profile-stat-row{
    grid-column:1 / -1!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    width:100%!important;
    margin:10px 0 6px!important;
    flex-wrap:nowrap!important;
  }
  .profile-stat-row a{
    flex:0 1 auto!important;
    min-height:0!important;
    height:36px!important;
    padding:0 10px!important;
    border-radius:999px!important;
    display:inline-flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    gap:4px!important;
    font-size:13px!important;
    white-space:nowrap!important;
  }
  .profile-stat-row a span{font-size:14px!important;line-height:1!important;}
  .profile-stat-row a b{font-size:15px!important;line-height:1!important;}
  .profile-stat-row a em{font-size:12px!important;line-height:1!important;font-weight:800!important;}
  .profile-subline{
    grid-column:1 / -1!important;
    justify-content:center!important;
    margin:4px 0 0!important;
    font-size:14px!important;
    line-height:1.25!important;
    color:#6b7280!important;
    font-weight:700!important;
  }
  .profile-subline span{background:transparent!important;border:0!important;padding:0!important;color:#6b7280!important;}
  .profile-actions{grid-column:1 / -1!important;margin-top:10px!important;}
  .profile-card.profile-head-card .empty,
  .profile-actions .empty.mini{
    font-size:14px!important;
    line-height:1.32!important;
    padding:11px 14px!important;
    border-radius:18px!important;
    margin:0!important;
    min-height:0!important;
  }
  .profile-fold-section{
    margin-top:14px!important;
    border-radius:20px!important;
  }
  .profile-fold-section:not(.is-open) .profile-fold-toggle{
    min-height:54px!important;
    padding:0 13px!important;
    border-radius:20px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 28px!important;
    gap:8px!important;
    align-items:center!important;
  }
  .profile-fold-toggle span{
    font-size:18px!important;
    line-height:1.1!important;
    gap:6px!important;
    flex-wrap:nowrap!important;
    white-space:nowrap!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .profile-fold-toggle span b{
    min-width:24px!important;
    height:24px!important;
    padding:0 7px!important;
    font-size:12px!important;
    margin-left:4px!important;
    flex:0 0 auto!important;
  }
  .profile-fold-toggle em{
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
  }
  .profile-fold-toggle em:after{
    font-size:16px!important;
    line-height:28px!important;
  }
  .profile-grid-section{
    gap:14px!important;
  }
}
@media (max-width: 390px){
  .profile-name-row h1{font-size:28px!important;}
  .profile-head{grid-template-columns:74px minmax(0,1fr)!important;gap:10px!important;}
  .profile-avatar img,.profile-avatar .avatar{width:72px!important;height:72px!important;}
  .profile-stat-row{gap:6px!important;}
  .profile-stat-row a{height:34px!important;padding:0 8px!important;font-size:12px!important;}
  .profile-stat-row a em{font-size:11px!important;}
  .profile-fold-toggle span{font-size:17px!important;}
}

/* === Pomogi-Pomogu: mobile profile stats overflow fix === */
@media (max-width: 640px){
  .profile-card.profile-head-card{
    overflow:hidden!important;
    padding:18px 16px!important;
  }
  .profile-head{
    grid-template-columns:72px minmax(0,1fr)!important;
    gap:12px!important;
    align-items:start!important;
  }
  .profile-avatar img,
  .profile-avatar .avatar{
    width:68px!important;
    height:68px!important;
  }
  .profile-avatar-camera{
    width:23px!important;
    height:23px!important;
    right:-1px!important;
    bottom:0!important;
  }
  .profile-name-row{
    display:inline-flex!important;
    width:auto!important;
    max-width:100%!important;
    gap:7px!important;
    align-items:center!important;
    justify-content:flex-start!important;
  }
  .profile-name-row h1{
    font-size:30px!important;
    line-height:1.08!important;
    max-width:calc(100vw - 165px)!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .profile-name-edit-toggle{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    font-size:15px!important;
    margin-left:0!important;
  }
  .profile-user-id-mobile{
    margin-top:2px!important;
    margin-bottom:8px!important;
    font-size:13px!important;
  }
  .profile-level-badge{
    padding:7px 10px!important;
    font-size:13px!important;
  }
  .profile-stat-row{
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:100%!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    margin:10px 0 7px!important;
    padding:0!important;
    overflow:hidden!important;
  }
  .profile-stat-row a{
    flex:0 1 auto!important;
    min-width:0!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    display:inline-flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    white-space:nowrap!important;
    color:#2f6f1d!important;
    font-size:13px!important;
    line-height:1.1!important;
  }
  .profile-stat-row a span{font-size:15px!important;line-height:1!important;}
  .profile-stat-row a b{font-size:15px!important;line-height:1!important;font-weight:900!important;}
  .profile-stat-row a em{font-size:12px!important;line-height:1!important;font-weight:800!important;color:#5f744f!important;}
  .profile-subline{
    margin:5px 0 0!important;
    font-size:13px!important;
  }
  .profile-card.profile-head-card .empty,
  .profile-actions .empty.mini{
    padding:10px 12px!important;
    font-size:13px!important;
    line-height:1.3!important;
    margin-top:0!important;
  }
  .profile-fold-section{
    margin-top:11px!important;
  }
  .profile-fold-section:not(.is-open) .profile-fold-toggle{
    min-height:50px!important;
    padding:0 12px!important;
  }
  .profile-fold-toggle span{
    font-size:17px!important;
  }
  .profile-fold-toggle span b{
    min-width:23px!important;
    height:23px!important;
    font-size:12px!important;
  }
  .site-footer,
  footer{
    padding-bottom:calc(22px + env(safe-area-inset-bottom))!important;
  }
}
@media (max-width: 390px){
  .profile-head{grid-template-columns:66px minmax(0,1fr)!important;gap:10px!important;}
  .profile-avatar img,.profile-avatar .avatar{width:62px!important;height:62px!important;}
  .profile-name-row h1{font-size:27px!important;max-width:calc(100vw - 150px)!important;}
  .profile-stat-row{gap:7px!important;}
  .profile-stat-row a{font-size:12px!important;gap:2px!important;}
  .profile-stat-row a span{font-size:13px!important;}
  .profile-stat-row a b{font-size:13px!important;}
  .profile-stat-row a em{font-size:11px!important;}
}


/* === Mobile profile premium list + compact footer polish === */
@media (max-width: 640px) {
  body .profile-page,
  body .profile-wrap {
    padding-bottom: 12px;
  }

  body .profile-card.profile-fold-section {
    border-radius: 18px !important;
    padding: 0 !important;
    margin: 0 0 10px !important;
    border: 1px solid rgba(214, 233, 204, .85) !important;
    box-shadow: 0 8px 22px rgba(23, 32, 51, .055) !important;
    overflow: hidden;
  }

  body .profile-grid-section {
    display: block !important;
    gap: 0 !important;
    margin-top: 0 !important;
  }

  body .profile-fold-toggle {
    min-height: 58px !important;
    padding: 12px 14px !important;
    margin: 0 !important;
    align-items: center !important;
    border-radius: 18px !important;
  }

  body .profile-fold-toggle span {
    min-width: 0 !important;
    flex: 1 1 auto !important;
    gap: 7px !important;
    font-size: 19px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body .profile-fold-toggle span b {
    flex: 0 0 auto !important;
    min-width: 25px !important;
    height: 25px !important;
    padding: 0 7px !important;
    font-size: 13px !important;
    margin-left: 2px !important;
  }

  body .profile-fold-toggle em {
    flex: 0 0 auto !important;
    width: 34px !important;
    height: 34px !important;
    padding: 0 !important;
    border-radius: 50% !important;
    font-size: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #f0faec !important;
    color: #2d7a10 !important;
  }

  body .profile-fold-toggle em::before {
    content: "›";
    display: block;
    font-size: 24px;
    line-height: 1;
    font-weight: 900;
    transform: rotate(90deg);
    margin-top: -1px;
  }

  body .profile-fold-section.is-open .profile-fold-toggle em::before {
    transform: rotate(-90deg);
  }

  body .profile-fold-content {
    padding: 0 14px 14px !important;
  }

  body .profile-fold-section.is-open .profile-fold-toggle {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
  }

  body .profile-helped-card,
  body .profile-rating-history {
    margin-bottom: 10px !important;
  }

  body .site-footer {
    margin-top: 14px !important;
  }

  body .footer-inner {
    padding: 18px 18px calc(22px + env(safe-area-inset-bottom)) !important;
    gap: 10px !important;
    align-items: center !important;
    text-align: center !important;
  }

  body .footer-inner p {
    width: 100% !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
  }

  body .footer-links {
    width: 100% !important;
    justify-content: center !important;
    gap: 8px 14px !important;
  }

  body .footer-links a {
    font-size: 14px !important;
    line-height: 1.25 !important;
  }
}

@media (max-width: 380px) {
  body .profile-fold-toggle span {
    font-size: 18px !important;
  }

  body .profile-fold-toggle {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}

/* =========================================================
   2026-06-08: filter action buttons polish
   Задача: отдельно улучшить ПК и мобильную версию.
   - ПК: заметнее кнопки "Показать на карте" и "Сбросить".
   - Мобильная: выбранные категории больше не обрезают кнопки снизу.
========================================================= */

/* ПК и планшеты шире мобильной версии */
@media (min-width: 761px){
  .home-active-filters{
    align-items:center!important;
    gap:9px!important;
  }

  .home-active-filters .home-active-filters-map,
  .home-quick-subcats .home-quick-subcats-map{
    background:linear-gradient(180deg,#36b91d,#16830b)!important;
    color:#fff!important;
    border:2px solid #16830b!important;
    border-radius:12px!important;
    padding:9px 16px!important;
    font-size:14px!important;
    font-weight:900!important;
    box-shadow:0 8px 18px rgba(22,131,11,.18)!important;
  }

  .home-active-filters .home-active-filters-map:hover,
  .home-quick-subcats .home-quick-subcats-map:hover{
    background:linear-gradient(180deg,#40c925,#127407)!important;
    transform:translateY(-1px);
  }

  .home-active-filters .home-active-filters-clear{
    background:#fff!important;
    color:#49613f!important;
    border:2px solid #d6e8cf!important;
    border-radius:12px!important;
    padding:9px 16px!important;
    font-size:14px!important;
    font-weight:900!important;
  }

  .home-active-filters .home-active-filters-clear:hover{
    background:#f3f8ef!important;
    border-color:#b9dcae!important;
  }
}

/* Только мобильная версия */
@media (max-width: 760px){
  .home-active-filters{
    max-height:none!important;
    overflow:visible!important;
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:flex-start!important;
    padding:12px!important;
    gap:8px!important;
    border-radius:20px!important;
  }

  .home-active-filters span{
    position:static!important;
    flex-basis:100%!important;
    width:100%!important;
    background:transparent!important;
    padding:0 0 2px!important;
    font-size:16px!important;
  }

  .home-active-filters button[data-remove-filter]{
    max-width:100%!important;
    white-space:normal!important;
    line-height:1.2!important;
    padding:9px 12px!important;
    font-size:15px!important;
  }

  .home-active-filters .home-active-filters-map{
    order:90!important;
    width:100%!important;
    min-height:52px!important;
    margin-top:2px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:linear-gradient(180deg,#39bd20,#13820a)!important;
    color:#fff!important;
    border:2px solid #13820a!important;
    border-radius:18px!important;
    font-size:18px!important;
    font-weight:900!important;
    box-shadow:0 10px 22px rgba(19,130,10,.20)!important;
  }

  .home-active-filters .home-active-filters-clear{
    order:91!important;
    width:100%!important;
    min-height:48px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#fff!important;
    color:#5c6657!important;
    border:2px solid #dcebd4!important;
    border-radius:18px!important;
    font-size:17px!important;
    font-weight:900!important;
  }
}

/* =========================================================
   2026-06-08: mobile selected filters premium polish
   Только мобильная версия. ПК не затрагивается.
========================================================= */
@media (max-width: 760px){
  .home-active-filters{
    margin:18px 0 18px!important;
    padding:16px 14px 18px!important;
    border-radius:24px!important;
    border:1px solid #d7ead0!important;
    background:linear-gradient(180deg,#fbfff8 0%,#f3fbef 100%)!important;
    box-shadow:0 10px 24px rgba(28,62,18,.08)!important;
    display:flex!important;
    flex-wrap:wrap!important;
    gap:9px!important;
    overflow:visible!important;
    max-height:none!important;
  }

  .home-active-filters span{
    flex:0 0 100%!important;
    width:100%!important;
    margin:0 0 2px!important;
    padding:0!important;
    background:transparent!important;
    color:#40543b!important;
    font-size:18px!important;
    line-height:1.25!important;
    font-weight:900!important;
    letter-spacing:-.02em!important;
    position:static!important;
  }

  .home-active-filters button[data-remove-filter]{
    flex:0 1 auto!important;
    width:auto!important;
    max-width:100%!important;
    min-height:38px!important;
    padding:8px 13px!important;
    border-radius:999px!important;
    border:1px solid #d4e8cc!important;
    background:#fff!important;
    color:#23710c!important;
    box-shadow:0 4px 12px rgba(28,62,18,.04)!important;
    font-size:15.5px!important;
    line-height:1.18!important;
    font-weight:850!important;
    text-align:left!important;
    white-space:normal!important;
  }

  .home-active-filters button[data-remove-filter]:active{
    transform:scale(.98)!important;
  }

  .home-active-filters .home-active-filters-map{
    order:90!important;
    flex:0 0 100%!important;
    width:100%!important;
    min-height:48px!important;
    margin-top:8px!important;
    padding:12px 18px!important;
    border-radius:17px!important;
    border:0!important;
    background:linear-gradient(180deg,#31ba19 0%,#168b0b 100%)!important;
    color:#fff!important;
    box-shadow:0 9px 18px rgba(23,142,10,.22), inset 0 1px 0 rgba(255,255,255,.22)!important;
    font-size:18px!important;
    line-height:1.1!important;
    font-weight:900!important;
    letter-spacing:-.01em!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  .home-active-filters .home-active-filters-clear{
    order:91!important;
    flex:0 0 100%!important;
    width:100%!important;
    min-height:44px!important;
    padding:11px 16px!important;
    border-radius:16px!important;
    border:1px solid #dfeadc!important;
    background:#fff!important;
    color:#687463!important;
    box-shadow:0 5px 14px rgba(28,62,18,.04)!important;
    font-size:16px!important;
    line-height:1.1!important;
    font-weight:850!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
}

/* legacy mobile search icon fixes удалён в v6.4.0: заменён модулем home-search-context.css */
/* Mobile search placeholder improvement */
@media (max-width: 768px){
    .hero-search input::placeholder,
    .search-input::placeholder,
    input[type="search"]::placeholder{
        font-size: 16px !important;
    }
}


/* Mobile search placeholder final tuning */
@media (max-width: 768px){
.search-input,
.hero-search input,
input[type="search"]{
    padding-left: 42px !important;
}
.search-input::placeholder,
.hero-search input::placeholder,
input[type="search"]::placeholder{
    font-size: 15px !important;
}
}



/* REAL FINAL mobile search field polish — buttons are untouched */
@media (max-width: 768px) {
  .hero-search,
  .hp-search-box,
  .search-box,
  .filter-search,
  .search-wrap,
  .search-field-wrap,
  .search-input-wrap {
    position: relative !important;
  }

  /* выключаем старые варианты лупы, чтобы не было съездов и дублей */
  .hero-search::before,
  .hp-search-box::before,
  .search-box::before,
  .filter-search::before,
  .search-wrap::before,
  .search-field-wrap::before,
  .search-input-wrap::before,
  .hero-search svg,
  .hp-search-box svg,
  .search-box svg,
  .filter-search svg,
  .search-wrap svg,
  .search-field-wrap svg,
  .search-input-wrap svg,
  .search-icon {
    display: none !important;
    content: none !important;
  }

  .hero-search input,
  .hp-search-box input,
  .search-box input,
  .filter-search input,
  .search-wrap input,
  .search-field-wrap input,
  .search-input-wrap input,
  input[type="search"] {
    padding-left: 40px !important;
    padding-right: 14px !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.8 18.1C14.8317 18.1 18.1 14.8317 18.1 10.8C18.1 6.76832 14.8317 3.5 10.8 3.5C6.76832 3.5 3.5 6.76832 3.5 10.8C3.5 14.8317 6.76832 18.1 10.8 18.1Z' stroke='%236b7280' stroke-width='2.4' stroke-linecap='round'/%3E%3Cpath d='M16.2 16.2L21 21' stroke='%236b7280' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-size: 18px 18px !important;
    background-position: 15px 50% !important;
  }

  .hero-search input::placeholder,
  .hp-search-box input::placeholder,
  .search-box input::placeholder,
  .filter-search input::placeholder,
  .search-wrap input::placeholder,
  .search-field-wrap input::placeholder,
  .search-input-wrap input::placeholder,
  input[type="search"]::placeholder {
    font-size: 14px !important;
    letter-spacing: -0.25px !important;
    color: #8b8f9a !important;
    opacity: 1 !important;
  }
}



/* PC premium layout for "Последние объявления" + right help card */
@media (min-width: 1025px) {
  .home-latest-section,
  .latest-section,
  .recent-section,
  .latest-with-sidebar,
  .home-bottom-grid {
    align-items: stretch !important;
  }

  .latest-announcements,
  .recent-announcements,
  .latest-posts,
  .latest-card,
  .home-latest-card {
    height: 100% !important;
  }

  .latest-announcements .section-head,
  .recent-announcements .section-head,
  .latest-posts .section-head,
  .home-latest-card .section-head {
    margin-bottom: 18px !important;
  }

  .latest-announcements-grid,
  .recent-announcements-grid,
  .latest-grid,
  .latest-posts-grid,
  .announcements-latest-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;
    align-items: stretch !important;
  }

  .latest-announcements-grid > *,
  .recent-announcements-grid > *,
  .latest-grid > *,
  .latest-posts-grid > *,
  .announcements-latest-grid > * {
    min-height: 150px !important;
    height: 100% !important;
  }

  .latest-announcements article,
  .recent-announcements article,
  .latest-posts article,
  .latest-announcements .announcement-card,
  .recent-announcements .announcement-card,
  .latest-posts .announcement-card,
  .latest-announcements .post-card,
  .recent-announcements .post-card,
  .latest-posts .post-card {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    height: 100% !important;
    min-height: 150px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(45, 93, 38, 0.12) !important;
    box-shadow: 0 8px 24px rgba(18, 45, 22, 0.06) !important;
    background: #fff !important;
  }

  .latest-announcements .announcement-card:hover,
  .recent-announcements .announcement-card:hover,
  .latest-posts .announcement-card:hover,
  .latest-announcements .post-card:hover,
  .recent-announcements .post-card:hover,
  .latest-posts .post-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(18, 45, 22, 0.10) !important;
  }

  .latest-announcements .announcement-card a,
  .recent-announcements .announcement-card a,
  .latest-posts .announcement-card a,
  .latest-announcements .post-card a,
  .recent-announcements .post-card a,
  .latest-posts .post-card a {
    margin-top: auto !important;
  }

  .how-help-card,
  .how-it-helps,
  .help-info-card,
  .home-help-card,
  .side-help-card {
    height: 100% !important;
    border-radius: 18px !important;
    border: 1px solid rgba(45, 93, 38, 0.12) !important;
    box-shadow: 0 10px 30px rgba(18, 45, 22, 0.07) !important;
    background: linear-gradient(180deg, #ffffff 0%, #fbfff8 100%) !important;
  }

  .how-help-card h2,
  .how-it-helps h2,
  .help-info-card h2,
  .home-help-card h2,
  .side-help-card h2 {
    line-height: 1.12 !important;
    margin-bottom: 20px !important;
  }

  .how-help-card li,
  .how-it-helps li,
  .help-info-card li,
  .home-help-card li,
  .side-help-card li,
  .how-help-card .help-item,
  .how-it-helps .help-item,
  .help-info-card .help-item,
  .home-help-card .help-item,
  .side-help-card .help-item {
    display: grid !important;
    grid-template-columns: 36px 1fr !important;
    gap: 12px !important;
    align-items: start !important;
    margin-bottom: 18px !important;
  }
}


/* PREMIUM FINAL: desktop latest announcements + help card */
@media (min-width: 1025px) {
  .home-content-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 300px !important;
    gap: 22px !important;
    align-items: stretch !important;
    margin-top: 36px !important;
    margin-bottom: 30px !important;
  }

  .home-latest-help,
  .home-trust-card {
    border: 1px solid rgba(43, 93, 42, .10) !important;
    border-radius: 26px !important;
    background: rgba(255,255,255,.96) !important;
    box-shadow: 0 22px 60px rgba(21, 43, 24, .08) !important;
  }

  .home-latest-help {
    padding: 22px !important;
  }

  .home-section-head {
    margin-bottom: 18px !important;
    padding: 0 2px !important;
  }

  .home-section-head h2 {
    font-size: 23px !important;
    line-height: 1.1 !important;
    letter-spacing: -0.02em !important;
  }

  .home-section-head a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 34px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    background: #f2faee !important;
    border: 1px solid #dcefd5 !important;
    color: #24720f !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    text-decoration: none !important;
  }

  .home-latest-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }

  .home-latest-card {
    position: relative !important;
    min-height: 172px !important;
    padding: 14px !important;
    border-radius: 20px !important;
    border: 1px solid rgba(46, 94, 45, .12) !important;
    background: linear-gradient(180deg, #ffffff 0%, #fbfff8 100%) !important;
    box-shadow: 0 10px 26px rgba(29, 53, 31, .055) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    overflow: hidden !important;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
  }

  .home-latest-card::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
    background: radial-gradient(circle at 100% 0%, rgba(91, 185, 52, .08), transparent 38%) !important;
  }

  .home-latest-card:hover {
    transform: translateY(-3px) !important;
    border-color: rgba(68, 166, 35, .32) !important;
    box-shadow: 0 18px 38px rgba(29, 53, 31, .10) !important;
  }

  .home-latest-photo { display: none !important; }

  .home-latest-badge {
    position: relative !important;
    z-index: 1 !important;
    width: fit-content !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 7px 11px !important;
    border-radius: 999px !important;
    background: #eef9e9 !important;
    color: #216b12 !important;
    border: 1px solid #dcefd5 !important;
    font-size: 12px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .home-latest-card strong {
    position: relative !important;
    z-index: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 17px !important;
    line-height: 1.22 !important;
    letter-spacing: -0.01em !important;
    color: #111827 !important;
    min-height: 42px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  .home-latest-time {
    position: relative !important;
    z-index: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    color: #7a8594 !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
  }

  .home-latest-more {
    position: relative !important;
    z-index: 1 !important;
    margin: auto 0 0 !important;
    width: 100% !important;
    min-height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    border-radius: 13px !important;
    background: linear-gradient(180deg, #36ad23 0%, #18860d 100%) !important;
    color: #fff !important;
    box-shadow: 0 8px 18px rgba(27, 133, 13, .18) !important;
    font-size: 14px !important;
    font-weight: 900 !important;
  }

  .home-trust-card {
    height: 100% !important;
    padding: 22px 20px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fff4 100%) !important;
  }

  .home-trust-card h2 {
    margin: 0 0 18px !important;
    font-size: 23px !important;
    line-height: 1.08 !important;
    letter-spacing: -0.03em !important;
    color: #111827 !important;
  }

  .home-trust-card ul {
    margin: 0 !important;
    padding: 0 !important;
    gap: 13px !important;
    display: flex !important;
    flex-direction: column !important;
  }

  .home-trust-card li {
    display: grid !important;
    grid-template-columns: 42px 1fr !important;
    column-gap: 12px !important;
    row-gap: 2px !important;
    align-items: center !important;
    padding: 12px !important;
    border-radius: 18px !important;
    background: rgba(245, 252, 241, .92) !important;
    border: 1px solid rgba(61, 134, 40, .08) !important;
  }

  .home-trust-card li span {
    grid-row: 1 / 3 !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 14px !important;
    background: #eef9e9 !important;
    box-shadow: inset 0 0 0 1px #dcefd5 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 19px !important;
  }

  .home-trust-card b {
    font-size: 15px !important;
    line-height: 1.15 !important;
    color: #111827 !important;
    font-weight: 900 !important;
  }

  .home-trust-card small {
    margin: 0 !important;
    display: block !important;
    color: #6b7280 !important;
    font-size: 13px !important;
    line-height: 1.32 !important;
  }

  .home-how-project {
    margin-top: 6px !important;
    border-radius: 24px !important;
    border: 1px solid rgba(43, 93, 42, .10) !important;
    box-shadow: 0 18px 50px rgba(21, 43, 24, .07) !important;
  }
}

/* Final mobile search readability */
@media (max-width: 768px) {
  .home-main-search input[type="search"],
  .hero-search input,
  .hp-search-box input,
  .search-box input,
  .filter-search input,
  input[type="search"] {
    padding-left: 40px !important;
    padding-right: 12px !important;
    font-size: 15px !important;
    background-position: 15px 50% !important;
  }
  .home-main-search input[type="search"]::placeholder,
  .hero-search input::placeholder,
  .hp-search-box input::placeholder,
  .search-box input::placeholder,
  .filter-search input::placeholder,
  input[type="search"]::placeholder {
    color: #737b88 !important;
    opacity: 1 !important;
    font-size: 14.5px !important;
    letter-spacing: -0.2px !important;
  }
}


/* Edit announcement photo manager */
.edit-photo-manager{margin:16px 0 18px}
.edit-current-photos{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 12px}
.edit-current-photo{transition:.18s ease;overflow:visible!important}
.edit-current-photo.is-removed{opacity:.45;filter:grayscale(1);transform:scale(.98)}
.edit-current-photo.is-removed::after{content:'Будет удалено';position:absolute;left:6px;right:6px;top:28px;padding:4px 5px;border-radius:10px;background:rgba(217,48,62,.92);color:#fff;font-size:10px;font-weight:900;text-align:center;z-index:3}
.edit-photo-remove{position:absolute;right:-7px;top:-7px;width:26px;height:26px;border-radius:50%;background:#fff;border:1px solid #ffd1d1;box-shadow:0 4px 12px rgba(217,48,62,.22);display:flex!important;align-items:center;justify-content:center;cursor:pointer;z-index:4}
.edit-photo-remove input{position:absolute;opacity:0;pointer-events:none}
.edit-photo-remove b{font-size:18px;line-height:1;color:#cf2938;font-weight:900;margin-top:-1px}
.edit-photo-remove:hover{background:#fff0f0;border-color:#ef9a9a}
.edit-photo-drop-zone{margin-top:6px}
.edit-new-photo{overflow:visible!important}
.edit-no-photos{margin:8px 0 10px}
@media(max-width:700px){.edit-current-photos{gap:9px}.edit-photo-remove{width:28px;height:28px;right:-8px;top:-8px}.edit-photo-remove b{font-size:20px}}


/* Кнопка На карте */
.home-map-btn,
.nearby-map-btn{
position:absolute;
top:8px;
right:8px;
z-index:5;
background:rgba(255,255,255,.95);
border:1px solid #dfe8d8;
border-radius:16px;
padding:4px 8px;
font-size:12px;
font-weight:600;
color:#2f6f1f;
text-decoration:none;
box-shadow:0 2px 6px rgba(0,0,0,.08);
}



/* FINAL: ПК — 8 последних объявлений 4x2, без кнопки "Подробнее", с кнопкой "На карте" */
@media (min-width: 1025px) {
  .home-latest-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;
    align-items: stretch !important;
  }

  .home-latest-card {
    min-height: 218px !important;
    height: auto !important;
    padding: 0 0 12px !important;
    border-radius: 16px !important;
    cursor: pointer !important;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
  }

  .home-latest-card:hover {
    transform: translateY(-3px) !important;
    border-color: rgba(30, 160, 18, 0.28) !important;
    box-shadow: 0 16px 34px rgba(20, 45, 24, 0.12) !important;
  }

  .home-latest-photo {
    position: relative !important;
    width: calc(100% - 18px) !important;
    height: 104px !important;
    margin: 9px 9px 0 !important;
    border-radius: 13px !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #eef9e9, #f8fff6) !important;
  }

  .home-latest-photo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  .home-latest-placeholder {
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 28px !important;
  }

  .home-map-btn {
    position: absolute !important;
    right: 7px !important;
    top: 7px !important;
    z-index: 5 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.94) !important;
    border: 1px solid rgba(45, 93, 38, .16) !important;
    box-shadow: 0 6px 16px rgba(20,45,24,.14) !important;
    color: #236c0e !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
  }

  .home-map-btn:hover {
    background: #fff !important;
    box-shadow: 0 10px 22px rgba(20,45,24,.20) !important;
  }

  .home-latest-badge {
    max-width: calc(100% - 20px) !important;
    margin: 10px 10px 0 !important;
    padding: 5px 9px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .home-latest-card strong {
    padding: 8px 10px 0 !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    font-weight: 900 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  .home-latest-time,
  .home-latest-card small {
    margin-top: auto !important;
    padding: 8px 10px 0 !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  .home-latest-more {
    display: none !important;
  }
}

/* Кнопка карты в блоке "Объявления рядом" */
.visible-dog-thumb {
  position: relative !important;
}

.visible-map-btn {
  position: absolute !important;
  right: 4px !important;
  top: 4px !important;
  width: 25px !important;
  height: 25px !important;
  border: 1px solid rgba(45, 93, 38, .16) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.95) !important;
  box-shadow: 0 6px 14px rgba(20,45,24,.15) !important;
  color: #236c0e !important;
  font-size: 13px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 6 !important;
  padding: 0 !important;
}

.visible-map-btn:hover {
  transform: translateY(-1px) !important;
}



/* FINAL polish: latest cards + map pills */
@media (min-width: 1025px) {
  .home-latest-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }

  .home-latest-card {
    min-height: 232px !important;
    padding: 0 0 10px !important;
    display: flex !important;
    flex-direction: column !important;
    border-radius: 16px !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  .home-latest-photo {
    position: relative !important;
    width: calc(100% - 18px) !important;
    height: 106px !important;
    margin: 9px 9px 0 !important;
    border-radius: 13px !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #eef9e9, #f8fff6) !important;
  }

  .home-latest-badge {
    max-width: calc(100% - 20px) !important;
    margin: 10px 10px 0 !important;
    padding: 5px 9px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .home-latest-card strong {
    min-height: 38px !important;
    padding: 8px 10px 0 !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    font-weight: 900 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  .home-latest-bottom {
    margin-top: auto !important;
    padding: 8px 10px 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    width: 100% !important;
  }

  .home-latest-bottom .home-latest-time {
    padding: 0 !important;
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    color: #6b7280 !important;
    min-width: 0 !important;
  }

  .home-latest-bottom .home-map-btn {
    position: static !important;
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 5px 9px !important;
    border-radius: 999px !important;
    background: #eff9ea !important;
    border: 1px solid #d9efcf !important;
    box-shadow: none !important;
    color: #24720f !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
  }

  .home-latest-bottom .home-map-btn:hover {
    background: #e5f6dc !important;
  }

  .home-latest-more {
    display: none !important;
  }
}

/* "На карте" in nearby announcements as a pill, not an overlay */
.visible-dog-thumb .visible-map-btn {
  display: none !important;
}

.visible-map-pill {
  border: 1px solid #d9efcf !important;
  border-radius: 999px !important;
  background: #eff9ea !important;
  color: #24720f !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  padding: 4px 7px !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}

.visible-map-pill:hover {
  background: #e5f6dc !important;
}

.visible-dog-meta-row {
  flex-wrap: wrap !important;
}



/* FINAL polish: latest announcements alignment and map pill */
@media (min-width: 1025px) {
  .home-latest-card {
    min-height: 238px !important;
    height: 238px !important;
    display: flex !important;
    flex-direction: column !important;
    padding-bottom: 10px !important;
  }

  .home-latest-photo {
    height: 106px !important;
    flex: 0 0 auto !important;
  }

  .home-latest-badge {
    margin-top: 11px !important;
    margin-bottom: 0 !important;
    font-size: 12px !important;
    padding: 5px 10px !important;
    line-height: 1.15 !important;
  }

  .home-latest-card strong {
    min-height: 40px !important;
    max-height: 40px !important;
    padding-top: 10px !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    font-weight: 900 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  .home-latest-bottom {
    margin-top: auto !important;
    padding-top: 8px !important;
  }

  .home-latest-bottom .home-map-btn {
    font-size: 12px !important;
    padding: 6px 10px !important;
    min-height: 25px !important;
    border-radius: 999px !important;
    background: #e9f8e2 !important;
    border-color: #cfeac5 !important;
    color: #1f6f12 !important;
  }

  .home-latest-bottom .home-map-btn:hover {
    background: #dcf2d3 !important;
  }
}

/* Nearby announcements: make "На карте" the same visual level as other pills */
.visible-map-pill {
  font-size: 11px !important;
  padding: 5px 8px !important;
  min-height: 23px !important;
  border-radius: 999px !important;
  background: #e9f8e2 !important;
  border: 1px solid #cfeac5 !important;
  color: #1f6f12 !important;
  font-weight: 850 !important;
}

.visible-map-pill:hover {
  background: #dcf2d3 !important;
}



/* FINAL: latest announcements - fix long titles on PC and rebuild mobile cards */
@media (min-width: 1025px) {
  .home-latest-card strong {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-height: 40px !important;
    max-height: 40px !important;
  }
}

@media (max-width: 768px) {
  .home-latest-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .home-latest-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 14px !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  .home-latest-badge {
    order: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 12px !important;
    padding: 9px 12px !important;
    border-radius: 12px !important;
    font-size: 15px !important;
    line-height: 1.15 !important;
    font-weight: 850 !important;
  }

  .home-latest-photo {
    order: 2 !important;
    width: 100% !important;
    height: 190px !important;
    margin: 0 !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #eef9e9, #f8fff6) !important;
  }

  .home-latest-photo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  .home-latest-card strong {
    order: 3 !important;
    padding: 14px 0 0 !important;
    font-size: 22px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    color: #111827 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  .home-latest-bottom {
    order: 4 !important;
    width: 100% !important;
    margin-top: 14px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
  }

  .home-latest-bottom .home-latest-time,
  .home-latest-time,
  .home-latest-card small {
    padding: 0 !important;
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    color: #6b7280 !important;
  }

  .home-latest-bottom .home-map-btn {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    padding: 7px 10px !important;
    border-radius: 999px !important;
    background: #eff9ea !important;
    border: 1px solid #d9efcf !important;
    box-shadow: none !important;
    color: #24720f !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
  }

  .home-latest-more {
    display: none !important;
  }
}



/* FINAL v2: ПК — аккуратные карточки, Мобильная — как "Объявления рядом" */
@media (min-width: 1025px) {
  .home-latest-card {
    height: 248px !important;
    min-height: 248px !important;
    padding: 0 0 12px !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }

  .home-latest-photo {
    height: 104px !important;
    flex: 0 0 104px !important;
    margin: 9px 9px 0 !important;
  }

  .home-latest-badge {
    display: inline-flex !important;
    align-items: center !important;
    align-self: flex-start !important;
    max-width: calc(100% - 20px) !important;
    margin: 10px 10px 0 !important;
    padding: 5px 10px !important;
    min-height: 24px !important;
    font-size: 11px !important;
    line-height: 1 !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    flex: 0 0 auto !important;
  }

  .home-latest-card strong {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-height: 38px !important;
    max-height: 38px !important;
    padding: 9px 10px 0 !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    flex: 0 0 auto !important;
  }

  .home-latest-bottom {
    margin-top: auto !important;
    padding: 8px 10px 0 !important;
  }
}

@media (max-width: 768px) {
  .home-latest-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .home-latest-card {
    display: grid !important;
    grid-template-columns: 96px minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
    column-gap: 13px !important;
    row-gap: 6px !important;
    align-items: start !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 14px !important;
    border-radius: 18px !important;
    background: #fff !important;
  }

  .home-latest-photo {
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;
    width: 96px !important;
    height: 96px !important;
    margin: 0 !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    background: #eff9ea !important;
  }

  .home-latest-photo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  .home-latest-badge {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    font-size: 13px !important;
    line-height: 1.1 !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .home-latest-card strong {
    grid-column: 2 !important;
    grid-row: 2 !important;
    padding: 0 !important;
    margin: 1px 0 0 !important;
    font-size: 19px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    color: #111827 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-height: 0 !important;
    max-height: 44px !important;
  }

  .home-latest-bottom {
    grid-column: 2 !important;
    grid-row: 3 !important;
    width: 100% !important;
    margin: 4px 0 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
  }

  .home-latest-bottom .home-latest-time,
  .home-latest-time,
  .home-latest-card small {
    padding: 0 !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    color: #6b7280 !important;
  }

  .home-latest-bottom .home-map-btn {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    padding: 6px 9px !important;
    border-radius: 999px !important;
    background: #eff9ea !important;
    border: 1px solid #d9efcf !important;
    box-shadow: none !important;
    color: #24720f !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
  }

  .home-latest-more {
    display: none !important;
  }
}



/* FINAL v3: compact mobile latest cards + cleaner PC titles */
@media (min-width: 1025px) {
  .home-latest-card {
    height: 236px !important;
    min-height: 236px !important;
    padding-bottom: 10px !important;
  }

  .home-latest-photo {
    height: 100px !important;
    flex-basis: 100px !important;
  }

  .home-latest-card strong {
    min-height: 36px !important;
    max-height: 36px !important;
    padding-top: 8px !important;
    font-size: 14px !important;
    line-height: 1.22 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .home-latest-badge {
    margin-top: 9px !important;
    min-height: 22px !important;
    font-size: 10.5px !important;
  }

  .home-latest-bottom {
    padding-top: 6px !important;
  }
}

@media (max-width: 768px) {
  .home-latest-grid {
    gap: 10px !important;
  }

  .home-latest-card {
    grid-template-columns: 82px minmax(0, 1fr) !important;
    column-gap: 11px !important;
    row-gap: 4px !important;
    padding: 11px !important;
    border-radius: 16px !important;
  }

  .home-latest-photo {
    width: 82px !important;
    height: 82px !important;
    border-radius: 13px !important;
  }

  .home-latest-badge {
    padding: 5px 9px !important;
    font-size: 12px !important;
    min-height: 24px !important;
  }

  .home-latest-card strong {
    font-size: 17px !important;
    line-height: 1.15 !important;
    max-height: 40px !important;
    margin-top: 0 !important;
  }

  .home-latest-bottom {
    margin-top: 2px !important;
    gap: 6px !important;
  }

  .home-latest-bottom .home-latest-time,
  .home-latest-time,
  .home-latest-card small {
    font-size: 12px !important;
  }

  .home-latest-bottom .home-map-btn {
    font-size: 11px !important;
    padding: 5px 8px !important;
  }
}



/* FINAL try: Latest announcements - PC title safety + compact mobile */
@media (min-width: 1025px) {
  .home-latest-card {
    height: 246px !important;
    min-height: 246px !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    padding-bottom: 10px !important;
  }

  .home-latest-photo {
    height: 100px !important;
    flex: 0 0 100px !important;
  }

  .home-latest-badge {
    flex: 0 0 auto !important;
    margin-top: 9px !important;
  }

  .home-latest-card strong {
    flex: 0 0 38px !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    padding: 7px 10px 0 !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.18 !important;
    font-weight: 900 !important;
    display: block !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .home-latest-bottom {
    flex: 0 0 auto !important;
    margin-top: auto !important;
    padding: 5px 10px 0 !important;
  }
}

@media (max-width: 768px) {
  .home-latest-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .home-latest-card {
    display: grid !important;
    grid-template-columns: 76px minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
    column-gap: 10px !important;
    row-gap: 4px !important;
    align-items: start !important;
    padding: 11px !important;
    min-height: 112px !important;
    height: auto !important;
    border-radius: 16px !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  .home-latest-photo {
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;
    width: 76px !important;
    height: 76px !important;
    margin: 0 !important;
    border-radius: 13px !important;
    background: #eff9ea !important;
    overflow: hidden !important;
    align-self: center !important;
  }

  .home-latest-photo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  .home-latest-badge {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 5px 9px !important;
    min-height: 23px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    line-height: 1.1 !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .home-latest-card strong {
    grid-column: 2 !important;
    grid-row: 2 !important;
    padding: 3px 0 0 !important;
    margin: 0 !important;
    font-size: 17px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    color: #111827 !important;
    display: block !important;
    max-height: 40px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .home-latest-bottom {
    grid-column: 2 !important;
    grid-row: 3 !important;
    width: 100% !important;
    margin: 3px 0 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 7px !important;
  }

  .home-latest-bottom .home-latest-time,
  .home-latest-time,
  .home-latest-card small {
    padding: 0 !important;
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    color: #6b7280 !important;
  }

  .home-latest-bottom .home-map-btn {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    padding: 5px 8px !important;
    border-radius: 999px !important;
    background: #eff9ea !important;
    border: 1px solid #d9efcf !important;
    box-shadow: none !important;
    color: #24720f !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
  }

  .home-latest-more {
    display: none !important;
  }
}


/* 20.06.2026: адрес и время в карточках "Последние объявления" */
.home-latest-address{
  display:block !important;
  width:calc(100% - 20px) !important;
  margin:6px 10px 0 !important;
  padding:0 !important;
  font-size:13px !important;
  line-height:1.25 !important;
  color:#4b5563 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.home-latest-time{
  white-space:nowrap !important;
}
@media(max-width:760px){
  .home-latest-address{
    grid-column:2 !important;
    grid-row:3 !important;
    width:100% !important;
    margin:2px 0 0 !important;
    font-size:12px !important;
    line-height:1.2 !important;
  }
  .home-latest-bottom{
    grid-row:4 !important;
    margin-top:4px !important;
  }
}

/* 21.06.2026: FIX - ПК карточки последних объявлений + убрать верхние дубли категорий на ПК */
@media (min-width: 769px){
  /* Верхние быстрые категории дублируют большой блок ниже: на ПК скрываем, на мобильном оставляем */
  .home-search-panel .home-quick-filters,
  .home-search-panel-smart .home-quick-filters,
  .home-quick-filters{
    display:none !important;
  }
}

@media (min-width: 1025px){
  .home-latest-grid{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:14px !important;
    align-items:stretch !important;
  }

  .home-latest-card{
    display:flex !important;
    flex-direction:column !important;
    height:268px !important;
    min-height:268px !important;
    padding:0 0 11px !important;
    overflow:hidden !important;
  }

  .home-latest-photo{
    flex:0 0 100px !important;
    height:100px !important;
  }

  .home-latest-badge{
    flex:0 0 auto !important;
    margin:9px 10px 0 !important;
  }

  .home-latest-card strong{
    flex:0 0 38px !important;
    height:38px !important;
    min-height:38px !important;
    max-height:38px !important;
    margin:0 !important;
    padding:7px 10px 0 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    font-size:14px !important;
    line-height:1.18 !important;
  }

  .home-latest-address{
    display:block !important;
    flex:0 0 34px !important;
    height:34px !important;
    min-height:34px !important;
    max-height:34px !important;
    width:calc(100% - 20px) !important;
    margin:5px 10px 0 !important;
    padding:0 !important;
    color:#5f6877 !important;
    font-size:12px !important;
    line-height:1.25 !important;
    white-space:normal !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
  }

  .home-latest-bottom{
    flex:0 0 auto !important;
    margin-top:auto !important;
    padding:7px 10px 0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:8px !important;
    width:100% !important;
  }

  .home-latest-bottom .home-latest-time,
  .home-latest-time{
    display:block !important;
    padding:0 !important;
    margin:0 !important;
    color:#6b7280 !important;
    font-size:12px !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-bottom .home-map-btn{
    position:static !important;
    flex:0 0 auto !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:5px 8px !important;
    border-radius:999px !important;
    background:#eff9ea !important;
    border:1px solid #d9efcf !important;
    box-shadow:none !important;
    color:#24720f !important;
    font-size:11px !important;
    line-height:1 !important;
    font-weight:850 !important;
    white-space:nowrap !important;
  }
}

@media (max-width:768px){
  .home-search-panel .home-quick-filters,
  .home-search-panel-smart .home-quick-filters,
  .home-quick-filters{
    display:flex !important;
  }
}

/* 21.06.2026 final: latest cards address/time polish */
.home-latest-address-icon{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:15px !important;
  height:15px !important;
  flex:0 0 15px !important;
  border-radius:999px !important;
  background:#eef8e9 !important;
  color:#248a16 !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:900 !important;
}
.home-latest-address-text-mobile{display:none !important;}
.home-latest-address[data-show-announcement-on-map]{cursor:pointer !important;}
.home-latest-address[data-show-announcement-on-map]:hover .home-latest-address-text{text-decoration:underline !important;}
.home-latest-address[data-show-announcement-on-map]:hover .home-latest-address-icon{background:#dff2d7 !important;}

@media (min-width:1025px){
  .home-latest-card{
    height:315px !important;
    min-height:315px !important;
    padding-bottom:13px !important;
  }
  .home-latest-photo{
    flex:0 0 104px !important;
    height:104px !important;
  }
  .home-latest-card strong{
    flex:0 0 42px !important;
    height:42px !important;
    min-height:42px !important;
    max-height:42px !important;
    padding-top:8px !important;
  }
  .home-latest-address{
    display:flex !important;
    align-items:flex-start !important;
    gap:6px !important;
    flex:0 0 43px !important;
    height:43px !important;
    min-height:43px !important;
    max-height:43px !important;
    margin:7px 10px 0 !important;
    color:#4b5563 !important;
    font-size:12.5px !important;
    line-height:1.25 !important;
    white-space:normal !important;
    overflow:hidden !important;
    text-align:left !important;
  }
  .home-latest-address-text-desktop{
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  .home-latest-bottom{
    padding:8px 10px 0 !important;
    justify-content:flex-start !important;
  }
  .home-latest-bottom .home-map-btn{
    display:none !important;
  }
  .home-latest-time{
    font-size:12px !important;
    color:#667085 !important;
  }
}

@media (max-width:768px){
  .home-latest-address{
    display:flex !important;
    align-items:center !important;
    gap:6px !important;
    color:#4b5563 !important;
    cursor:pointer !important;
  }
  .home-latest-address-icon{
    display:none !important;
  }
  .home-latest-address-text-desktop{display:none !important;}
  .home-latest-address-text-mobile{
    display:block !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
  .home-latest-time{
    font-size:12px !important;
    white-space:nowrap !important;
  }
  .home-latest-bottom .home-map-btn{
    display:inline-flex !important;
  }
}


/* Edit announcement: coordinates helper */
.coords-box .coords-hint{
  display:block;
  margin-top:6px;
  font-size:13px;
  font-weight:500;
  color:#55705a;
}
.coords-box.coords-box-updated{
  box-shadow:0 0 0 3px rgba(37,160,32,.15);
  border-color:#25a020;
}

/* 21.06.2026 hotfix: latest cards — always show short time on desktop */
@media (min-width:1025px){
  .home-latest-grid{
    align-items:stretch !important;
  }
  .home-latest-card{
    position:relative !important;
    display:flex !important;
    flex-direction:column !important;
    height:292px !important;
    min-height:292px !important;
    max-height:292px !important;
    padding-bottom:34px !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }
  .home-latest-card.no-photo{
    height:292px !important;
    min-height:292px !important;
    max-height:292px !important;
  }
  .home-latest-card.has-photo .home-latest-photo,
  .home-latest-photo{
    flex:0 0 120px !important;
    height:120px !important;
    min-height:120px !important;
    max-height:120px !important;
  }
  .home-latest-card.no-photo .home-latest-photo{
    display:none !important;
  }
  .home-latest-badge{
    flex:0 0 auto !important;
    margin:9px 10px 0 !important;
  }
  .home-latest-card strong{
    flex:0 0 auto !important;
    height:auto !important;
    min-height:34px !important;
    max-height:38px !important;
    padding:7px 10px 0 !important;
    margin:0 !important;
    font-size:14px !important;
    line-height:1.18 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }
  .home-latest-address{
    flex:0 0 auto !important;
    display:flex !important;
    align-items:flex-start !important;
    gap:6px !important;
    width:calc(100% - 20px) !important;
    height:auto !important;
    min-height:30px !important;
    max-height:34px !important;
    margin:6px 10px 0 !important;
    font-size:12px !important;
    line-height:1.22 !important;
    color:#596273 !important;
    overflow:hidden !important;
  }
  .home-latest-address-text-desktop{
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  .home-latest-bottom{
    position:absolute !important;
    left:10px !important;
    right:10px !important;
    bottom:10px !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    z-index:2 !important;
  }
  .home-latest-bottom .home-latest-time,
  .home-latest-time{
    display:inline-flex !important;
    align-items:center !important;
    width:auto !important;
    max-width:100% !important;
    padding:0 !important;
    margin:0 !important;
    font-size:12px !important;
    line-height:1.2 !important;
    color:#667085 !important;
    white-space:nowrap !important;
    overflow:visible !important;
    text-overflow:clip !important;
  }
  .home-latest-bottom .home-map-btn{
    display:none !important;
  }
}

/* v2.8: держим заголовок блока "Помогать просто" в одну строку */
.home-trust-card h2{
  white-space: nowrap;
  font-size: 19px;
  line-height: 1.12;
}

/* v2.9: эталонная карточка последних объявлений */
@media (min-width:1025px){
  .home-latest-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:16px !important;
    align-items:stretch !important;
  }

  .home-latest-card{
    position:relative !important;
    display:flex !important;
    flex-direction:column !important;
    height:336px !important;
    min-height:336px !important;
    max-height:336px !important;
    padding:0 0 34px !important;
    border:1px solid #e7eee2 !important;
    border-radius:18px !important;
    background:#fff !important;
    overflow:hidden !important;
    box-shadow:0 8px 20px rgba(23,32,51,.045) !important;
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
  }

  .home-latest-card:hover{
    transform:translateY(-3px) !important;
    box-shadow:0 16px 34px rgba(23,32,51,.11) !important;
    border-color:#cfe9c4 !important;
  }

  .home-latest-card.has-photo .home-latest-photo,
  .home-latest-photo{
    order:1 !important;
    flex:0 0 158px !important;
    width:100% !important;
    height:158px !important;
    min-height:158px !important;
    max-height:158px !important;
    padding:0 !important;
    background:#f4f6f4 !important;
    border-bottom:1px solid #edf2e9 !important;
    overflow:hidden !important;
  }

  .home-latest-card.has-photo .home-latest-photo img,
  .home-latest-photo img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:0 !important;
    background:#f4f6f4 !important;
    display:block !important;
    transition:transform .22s ease !important;
  }

  .home-latest-card:hover .home-latest-photo img{
    transform:scale(1.025) !important;
  }

  .home-latest-card.no-photo .home-latest-photo{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#f5f7f5 !important;
  }

  .home-latest-card.no-photo .home-latest-photo .home-latest-placeholder,
  .home-latest-placeholder{
    width:58px !important;
    height:58px !important;
    border-radius:18px !important;
    background:#fff !important;
    border:1px solid #e3eadf !important;
    color:#6d7b6f !important;
    font-size:28px !important;
    box-shadow:0 8px 18px rgba(23,32,51,.05) !important;
  }

  .home-latest-card strong{
    order:2 !important;
    flex:0 0 auto !important;
    width:calc(100% - 24px) !important;
    min-height:44px !important;
    max-height:44px !important;
    margin:12px 12px 0 !important;
    padding:0 !important;
    font-size:17px !important;
    line-height:1.28 !important;
    font-weight:850 !important;
    color:#172033 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-badge{
    order:3 !important;
    flex:0 0 auto !important;
    width:auto !important;
    max-width:calc(100% - 24px) !important;
    margin:9px 12px 0 !important;
    padding:4px 8px !important;
    border-radius:999px !important;
    background:#f0f8ed !important;
    border:1px solid #dcefd5 !important;
    color:#2f7f18 !important;
    font-size:11px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-address{
    order:4 !important;
    flex:0 0 auto !important;
    display:flex !important;
    align-items:center !important;
    gap:6px !important;
    width:calc(100% - 24px) !important;
    min-height:20px !important;
    max-height:20px !important;
    margin:9px 12px 0 !important;
    padding:0 !important;
    font-size:12.5px !important;
    line-height:1.2 !important;
    color:#667085 !important;
    overflow:hidden !important;
    white-space:nowrap !important;
  }

  .home-latest-address-icon{
    width:15px !important;
    height:15px !important;
    flex:0 0 15px !important;
    background:#f1f7ee !important;
    color:#4d8a38 !important;
    font-size:10px !important;
  }

  .home-latest-address-text-desktop{
    display:block !important;
    min-width:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom{
    order:5 !important;
    position:absolute !important;
    left:12px !important;
    right:12px !important;
    bottom:11px !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
  }

  .home-latest-bottom .home-latest-time,
  .home-latest-time{
    display:inline-flex !important;
    align-items:center !important;
    padding:0 !important;
    margin:0 !important;
    font-size:12.5px !important;
    line-height:1.2 !important;
    font-weight:650 !important;
    color:#7a8594 !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom .home-map-btn{
    display:none !important;
  }
}

@media (max-width:760px){
  .home-latest-card.has-photo .home-latest-photo,
  .home-latest-photo{
    background:#f5f7f5 !important;
  }
  .home-latest-card strong{
    font-weight:850 !important;
  }
}

/* v2.10: stable latest cards on desktop + mobile, no overlaps */
@media (min-width: 1025px){
  .home-latest-help{
    padding:18px !important;
  }
  .home-latest-grid{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:16px !important;
    align-items:stretch !important;
  }
  .home-latest-card{
    position:relative !important;
    display:grid !important;
    grid-template-rows:148px auto auto minmax(22px,1fr) auto !important;
    row-gap:0 !important;
    height:328px !important;
    min-height:328px !important;
    max-height:328px !important;
    padding:0 !important;
    border:1px solid #e5eee0 !important;
    border-radius:18px !important;
    background:#fff !important;
    overflow:hidden !important;
    text-align:left !important;
    box-shadow:0 8px 20px rgba(23,32,51,.045) !important;
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
  }
  .home-latest-card:hover{
    transform:translateY(-3px) !important;
    box-shadow:0 16px 32px rgba(23,32,51,.10) !important;
    border-color:#cfe9c4 !important;
  }
  .home-latest-photo,
  .home-latest-card.has-photo .home-latest-photo,
  .home-latest-card.no-photo .home-latest-photo{
    grid-row:1 !important;
    order:initial !important;
    position:static !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    height:148px !important;
    min-height:148px !important;
    max-height:148px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    border:0 !important;
    border-bottom:1px solid #edf2e9 !important;
    background:#f6f8f5 !important;
    overflow:hidden !important;
  }
  .home-latest-photo img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center !important;
    border-radius:0 !important;
    display:block !important;
    transition:transform .22s ease !important;
  }
  .home-latest-card:hover .home-latest-photo img{
    transform:scale(1.025) !important;
  }
  .home-latest-placeholder,
  .home-latest-card.no-photo .home-latest-photo .home-latest-placeholder{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:58px !important;
    height:58px !important;
    border-radius:18px !important;
    background:#fff !important;
    border:1px solid #e2eadf !important;
    box-shadow:0 8px 18px rgba(23,32,51,.05) !important;
    font-size:26px !important;
  }
  .home-latest-card strong{
    grid-row:2 !important;
    order:initial !important;
    position:static !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    width:auto !important;
    min-height:43px !important;
    max-height:43px !important;
    margin:13px 12px 0 !important;
    padding:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    color:#172033 !important;
    font-size:17px !important;
    line-height:1.25 !important;
    font-weight:850 !important;
  }
  .home-latest-badge{
    grid-row:3 !important;
    order:initial !important;
    position:static !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    align-self:start !important;
    justify-self:start !important;
    width:auto !important;
    max-width:calc(100% - 24px) !important;
    min-height:0 !important;
    margin:10px 12px 0 !important;
    padding:4px 8px !important;
    border-radius:999px !important;
    background:#f0f8ed !important;
    border:1px solid #dcefd5 !important;
    color:#2f7f18 !important;
    font-size:11px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  .home-latest-address{
    grid-row:4 !important;
    order:initial !important;
    position:static !important;
    display:flex !important;
    align-items:center !important;
    gap:6px !important;
    width:auto !important;
    min-height:20px !important;
    max-height:34px !important;
    margin:10px 12px 0 !important;
    padding:0 !important;
    overflow:hidden !important;
    color:#667085 !important;
    font-size:12.5px !important;
    line-height:1.25 !important;
  }
  .home-latest-address-icon{
    width:15px !important;
    height:15px !important;
    flex:0 0 15px !important;
    font-size:10px !important;
    background:#f1f7ee !important;
    color:#4d8a38 !important;
  }
  .home-latest-address-text-desktop{
    display:block !important;
    min-width:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
  .home-latest-address-text-mobile{
    display:none !important;
  }
  .home-latest-bottom{
    grid-row:5 !important;
    order:initial !important;
    position:static !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    width:auto !important;
    min-height:18px !important;
    margin:0 12px 12px !important;
    padding:0 !important;
  }
  .home-latest-time,
  .home-latest-bottom .home-latest-time{
    display:inline-flex !important;
    align-items:center !important;
    width:auto !important;
    padding:0 !important;
    margin:0 !important;
    font-size:12.5px !important;
    line-height:1.2 !important;
    font-weight:650 !important;
    color:#7a8594 !important;
    white-space:nowrap !important;
  }
  .home-latest-bottom .home-map-btn{
    display:none !important;
  }
}

@media (max-width: 760px){
  .home-latest-help{
    padding:14px !important;
  }
  .home-section-head{
    gap:10px !important;
    align-items:center !important;
  }
  .home-section-head h2{
    font-size:21px !important;
    line-height:1.15 !important;
  }
  .home-latest-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .home-latest-card{
    position:relative !important;
    display:grid !important;
    grid-template-columns:108px minmax(0,1fr) !important;
    grid-template-rows:auto auto auto auto !important;
    column-gap:12px !important;
    row-gap:6px !important;
    height:auto !important;
    min-height:132px !important;
    max-height:none !important;
    padding:12px !important;
    border:1px solid #e5eee0 !important;
    border-radius:18px !important;
    background:#fff !important;
    overflow:hidden !important;
    text-align:left !important;
    box-shadow:0 6px 16px rgba(23,32,51,.045) !important;
  }
  .home-latest-photo,
  .home-latest-card.has-photo .home-latest-photo,
  .home-latest-card.no-photo .home-latest-photo{
    grid-column:1 !important;
    grid-row:1 / span 4 !important;
    order:initial !important;
    position:static !important;
    width:108px !important;
    height:108px !important;
    min-height:108px !important;
    max-height:108px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:14px !important;
    background:#f6f8f5 !important;
    overflow:hidden !important;
  }
  .home-latest-photo img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    border-radius:14px !important;
    display:block !important;
  }
  .home-latest-placeholder{
    width:46px !important;
    height:46px !important;
    border-radius:15px !important;
    font-size:22px !important;
  }
  .home-latest-card strong{
    grid-column:2 !important;
    grid-row:1 !important;
    order:initial !important;
    position:static !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    color:#172033 !important;
    font-size:16px !important;
    line-height:1.2 !important;
    font-weight:850 !important;
  }
  .home-latest-badge{
    grid-column:2 !important;
    grid-row:2 !important;
    order:initial !important;
    position:static !important;
    justify-self:start !important;
    align-self:start !important;
    display:inline-flex !important;
    width:auto !important;
    max-width:100% !important;
    min-height:0 !important;
    margin:2px 0 0 !important;
    padding:4px 8px !important;
    border-radius:999px !important;
    font-size:11px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  .home-latest-address{
    grid-column:2 !important;
    grid-row:3 !important;
    order:initial !important;
    position:static !important;
    display:flex !important;
    align-items:center !important;
    gap:5px !important;
    min-width:0 !important;
    width:100% !important;
    min-height:0 !important;
    max-height:none !important;
    margin:2px 0 0 !important;
    padding:0 !important;
    overflow:hidden !important;
    color:#667085 !important;
    font-size:12px !important;
    line-height:1.2 !important;
  }
  .home-latest-address-icon{
    width:14px !important;
    height:14px !important;
    flex:0 0 14px !important;
    font-size:9px !important;
  }
  .home-latest-address-text-desktop{
    display:none !important;
  }
  .home-latest-address-text-mobile{
    display:block !important;
    min-width:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
  .home-latest-bottom{
    grid-column:2 !important;
    grid-row:4 !important;
    order:initial !important;
    position:static !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    width:auto !important;
    margin:2px 0 0 !important;
    padding:0 !important;
  }
  .home-latest-time,
  .home-latest-bottom .home-latest-time{
    padding:0 !important;
    margin:0 !important;
    font-size:12px !important;
    line-height:1.2 !important;
    color:#7a8594 !important;
    white-space:nowrap !important;
  }
  .home-latest-bottom .home-map-btn{
    display:none !important;
  }
}

/* v2.12: final polish for latest announcement cards (desktop + mobile safe) */
.home-latest-card{
  text-decoration:none !important;
}

@media (min-width: 1025px){
  .home-latest-grid{
    gap:12px !important;
  }

  .home-latest-card{
    height:248px !important;
    min-height:248px !important;
    border-radius:17px !important;
    border-color:#e4ecdf !important;
    background:#fff !important;
    padding:0 0 10px !important;
    overflow:hidden !important;
    box-shadow:0 10px 22px rgba(20,45,24,.055) !important;
    transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
    will-change:transform !important;
  }

  .home-latest-card:hover{
    transform:translateY(-4px) !important;
    border-color:rgba(36,125,21,.26) !important;
    box-shadow:0 18px 38px rgba(20,45,24,.13) !important;
  }

  .home-latest-photo{
    order:1 !important;
    width:100% !important;
    height:122px !important;
    margin:0 !important;
    border-radius:17px 17px 0 0 !important;
    background:#f3f8f1 !important;
    overflow:hidden !important;
  }

  .home-latest-photo img{
    transform:scale(1.001) !important;
    transition:transform .28s ease !important;
  }

  .home-latest-card:hover .home-latest-photo img{
    transform:scale(1.035) !important;
  }

  .home-latest-placeholder{
    font-size:28px !important;
    background:linear-gradient(135deg,#f6faf4,#eef7ea) !important;
  }

  .home-latest-card strong{
    order:2 !important;
    padding:12px 12px 0 !important;
    min-height:42px !important;
    max-height:42px !important;
    font-size:16px !important;
    line-height:1.22 !important;
    font-weight:920 !important;
    color:#0f172a !important;
    letter-spacing:-.15px !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }

  .home-latest-badge{
    order:3 !important;
    max-width:calc(100% - 24px) !important;
    margin:9px 12px 0 !important;
    padding:4px 9px !important;
    border-radius:999px !important;
    font-size:10.5px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    color:#277314 !important;
    background:#eef8e9 !important;
    border:1px solid #dcefd5 !important;
    box-shadow:none !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-address{
    order:4 !important;
    margin:8px 12px 0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    gap:5px !important;
    max-width:calc(100% - 24px) !important;
    color:#64748b !important;
    font-size:12px !important;
    line-height:1.22 !important;
    font-weight:650 !important;
    min-height:15px !important;
  }

  .home-latest-address-icon{
    width:13px !important;
    height:13px !important;
    min-width:13px !important;
    border-radius:50% !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#edf7e8 !important;
    color:#3f8a2a !important;
    font-size:8px !important;
    line-height:1 !important;
  }

  .home-latest-address-text{
    min-width:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom{
    order:5 !important;
    margin-top:auto !important;
    padding:8px 12px 0 !important;
    min-height:20px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:8px !important;
    width:100% !important;
  }

  .home-latest-bottom .home-latest-time{
    padding:0 !important;
    margin:0 !important;
    font-size:12px !important;
    line-height:1.15 !important;
    color:#697386 !important;
    font-weight:650 !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom .home-map-btn{
    display:none !important;
  }
}

@media (min-width: 1025px) and (max-width: 1180px){
  .home-latest-grid{gap:10px !important;}
  .home-latest-card{height:244px !important;min-height:244px !important;}
  .home-latest-photo{height:116px !important;}
  .home-latest-card strong{font-size:15.5px !important;}
}

@media (max-width: 1024px){
  .home-latest-card{
    box-shadow:0 8px 20px rgba(20,45,24,.055) !important;
    transition:transform .18s ease, box-shadow .18s ease !important;
  }
  .home-latest-card:hover{
    transform:none !important;
  }
}

@media (max-width: 760px){
  .home-latest-grid{
    gap:10px !important;
  }

  .home-latest-card{
    min-height:0 !important;
    height:auto !important;
    padding:10px !important;
    border-radius:18px !important;
    display:grid !important;
    grid-template-columns:96px minmax(0,1fr) !important;
    grid-template-areas:
      "photo title"
      "photo badge"
      "photo address"
      "photo time" !important;
    column-gap:10px !important;
    row-gap:5px !important;
    align-items:start !important;
  }

  .home-latest-photo{
    grid-area:photo !important;
    display:flex !important;
    width:96px !important;
    height:96px !important;
    margin:0 !important;
    border-radius:14px !important;
    overflow:hidden !important;
  }

  .home-latest-card strong{
    grid-area:title !important;
    padding:0 !important;
    margin:0 !important;
    min-height:0 !important;
    max-height:none !important;
    font-size:16px !important;
    line-height:1.18 !important;
    font-weight:900 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }

  .home-latest-badge{
    grid-area:badge !important;
    margin:0 !important;
    padding:4px 8px !important;
    width:max-content !important;
    max-width:100% !important;
    border-radius:999px !important;
    font-size:11px !important;
    line-height:1.1 !important;
    background:#eef8e9 !important;
    border:1px solid #dcefd5 !important;
    color:#277314 !important;
  }

  .home-latest-address{
    grid-area:address !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    gap:4px !important;
    align-items:center !important;
    min-width:0 !important;
    color:#64748b !important;
    font-size:12.5px !important;
    line-height:1.2 !important;
  }

  .home-latest-address-icon{
    display:none !important;
  }

  .home-latest-address-text{
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom{
    grid-area:time !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
  }

  .home-latest-bottom .home-latest-time{
    padding:0 !important;
    margin:0 !important;
    font-size:12px !important;
    color:#697386 !important;
  }

  .home-latest-bottom .home-map-btn{
    display:none !important;
  }
}


/* Final polish for desktop latest announcements */
@media (min-width: 992px){
.latest-announcements .announcement-card,
.announcement-card{
  border-radius:20px;
  overflow:hidden;
}
.latest-announcements .announcement-card img,
.announcement-card img{
  height:185px;
}
.latest-announcements .announcement-card h3,
.announcement-card h3{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  min-height:2.8em;
  line-height:1.4;
}
.latest-announcements .announcement-card .address,
.latest-announcements .announcement-card .announcement-address{
  color:#5f6f61;
}
.latest-announcements .announcement-card:hover,
.announcement-card:hover{
  transform:translateY(-4px);
}
}

/* v1.6.3 — stable final polish for "Последние объявления" cards */
@media (min-width: 761px){
  .home-latest-grid{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:14px !important;
    align-items:stretch !important;
  }

  .home-latest-card{
    position:relative !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    min-height:302px !important;
    height:302px !important;
    padding:0 0 12px !important;
    border-radius:18px !important;
    overflow:hidden !important;
    background:#fff !important;
    border:1px solid #e5eedf !important;
    box-shadow:0 8px 20px rgba(23,32,51,.055) !important;
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
  }

  .home-latest-card:hover{
    transform:translateY(-3px) !important;
    box-shadow:0 14px 30px rgba(23,32,51,.10) !important;
    border-color:#bee7b0 !important;
  }

  .home-latest-photo{
    order:1 !important;
    width:100% !important;
    height:152px !important;
    min-height:152px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    overflow:hidden !important;
    background:#f3faf0 !important;
    border-bottom:1px solid #e8eee3 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .home-latest-photo img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:0 !important;
    display:block !important;
  }

  .home-latest-photo > span,
  .home-latest-placeholder{
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    border-radius:16px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#fff !important;
    box-shadow:0 8px 18px rgba(23,32,51,.08), inset 0 0 0 1px #e5eedf !important;
    font-size:26px !important;
    line-height:1 !important;
  }

  .home-latest-card strong{
    order:2 !important;
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
    margin:14px 12px 0 !important;
    padding:0 !important;
    min-height:42px !important;
    max-height:42px !important;
    font-size:16px !important;
    line-height:1.28 !important;
    font-weight:900 !important;
    color:#07142b !important;
  }

  .home-latest-badge{
    order:3 !important;
    display:inline-flex !important;
    align-items:center !important;
    width:max-content !important;
    max-width:calc(100% - 24px) !important;
    margin:10px 12px 0 !important;
    padding:4px 8px !important;
    border-radius:999px !important;
    background:#eff8eb !important;
    border:1px solid #dbeed3 !important;
    color:#267415 !important;
    font-size:11px !important;
    line-height:1.1 !important;
    font-weight:850 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-address{
    order:4 !important;
    display:flex !important;
    align-items:center !important;
    gap:5px !important;
    min-width:0 !important;
    max-width:calc(100% - 24px) !important;
    margin:9px 12px 0 !important;
    padding:0 !important;
    color:#566579 !important;
    font-size:12px !important;
    line-height:1.2 !important;
    font-weight:650 !important;
  }

  .home-latest-address-icon{
    width:13px !important;
    height:13px !important;
    min-width:13px !important;
    border-radius:50% !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#edf7e8 !important;
    color:#3f8a2a !important;
    font-size:8px !important;
    line-height:1 !important;
  }

  .home-latest-address-text{
    min-width:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom{
    order:5 !important;
    margin-top:auto !important;
    padding:8px 12px 0 !important;
    min-height:20px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    width:100% !important;
  }

  .home-latest-bottom .home-latest-time,
  .home-latest-time{
    padding:0 !important;
    margin:0 !important;
    font-size:12px !important;
    line-height:1.15 !important;
    color:#697386 !important;
    font-weight:650 !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom .home-map-btn,
  .home-latest-more{
    display:none !important;
  }
}

@media (min-width: 761px) and (max-width: 1180px){
  .home-latest-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}

@media (max-width: 760px){
  .home-latest-grid{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .home-latest-card{
    min-height:0 !important;
    height:auto !important;
    padding:10px !important;
    border-radius:18px !important;
    display:grid !important;
    grid-template-columns:100px minmax(0,1fr) !important;
    grid-template-areas:
      "photo title"
      "photo badge"
      "photo address"
      "photo time" !important;
    column-gap:10px !important;
    row-gap:5px !important;
    align-items:start !important;
  }

  .home-latest-photo{
    grid-area:photo !important;
    display:flex !important;
    width:100px !important;
    height:100px !important;
    min-height:100px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:14px !important;
    overflow:hidden !important;
    border:0 !important;
  }

  .home-latest-photo img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }

  .home-latest-card strong{
    grid-area:title !important;
    padding:0 !important;
    margin:0 !important;
    min-height:0 !important;
    max-height:none !important;
    font-size:16px !important;
    line-height:1.18 !important;
    font-weight:900 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }

  .home-latest-badge{
    grid-area:badge !important;
    margin:0 !important;
    padding:4px 8px !important;
    width:max-content !important;
    max-width:100% !important;
    border-radius:999px !important;
    font-size:11px !important;
    line-height:1.1 !important;
  }

  .home-latest-address{
    grid-area:address !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    gap:4px !important;
    align-items:center !important;
    min-width:0 !important;
    color:#64748b !important;
    font-size:12.5px !important;
    line-height:1.2 !important;
  }

  .home-latest-address-icon{display:none !important;}
  .home-latest-address-text{overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;}

  .home-latest-bottom{
    grid-area:time !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
  }
}

/* v1.6.4 — fix no-photo latest card badge consistency */
@media (min-width: 761px){
  .home-latest-card.no-photo .home-latest-photo{
    order:1 !important;
    display:flex !important;
    width:100% !important;
    height:152px !important;
    min-height:152px !important;
    max-height:152px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    overflow:hidden !important;
    background:#f6faf4 !important;
    border-bottom:1px solid #e8eee3 !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .home-latest-card.no-photo .home-latest-badge,
  .home-latest-badge{
    order:3 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    width:auto !important;
    max-width:calc(100% - 24px) !important;
    margin:10px 12px 0 !important;
    padding:4px 8px !important;
    border-radius:999px !important;
    background:#eff8eb !important;
    border:1px solid #dbeed3 !important;
    color:#267415 !important;
    font-size:11px !important;
    line-height:1.1 !important;
    font-weight:850 !important;
    text-align:left !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    box-sizing:border-box !important;
  }

  .home-latest-card.no-photo .home-latest-placeholder,
  .home-latest-card.no-photo .home-latest-photo > span{
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    border-radius:16px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#fff !important;
    box-shadow:0 8px 18px rgba(23,32,51,.08), inset 0 0 0 1px #e5eedf !important;
    font-size:26px !important;
    line-height:1 !important;
  }
}

@media (max-width: 760px){
  .home-latest-card.no-photo .home-latest-photo{
    grid-area:photo !important;
    display:flex !important;
    width:100px !important;
    height:100px !important;
    min-height:100px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:14px !important;
    overflow:hidden !important;
    background:#f6faf4 !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .home-latest-card.no-photo .home-latest-badge,
  .home-latest-badge{
    display:inline-flex !important;
    width:auto !important;
    max-width:100% !important;
    margin:0 !important;
    padding:4px 8px !important;
    border-radius:999px !important;
    font-size:11px !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
}

/* v1.6.1: final desktop card polish + safe mobile rhythm */
.home-latest-help .home-section-head a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:32px !important;
  padding:7px 14px !important;
  border:1px solid #d9ecd2 !important;
  border-radius:999px !important;
  background:#f3faef !important;
  color:#23750f !important;
  font-weight:850 !important;
  line-height:1 !important;
  box-shadow:0 4px 12px rgba(31,120,15,.05) !important;
}

.home-latest-grid{
  gap:13px !important;
}

.home-latest-card{
  position:relative !important;
  min-height:238px !important;
  border:1px solid #e3ebdc !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 5px 16px rgba(23,32,51,.045) !important;
  cursor:pointer !important;
  overflow:hidden !important;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

.home-latest-card:hover{
  transform:translateY(-3px) !important;
  border-color:#b8dea8 !important;
  box-shadow:0 12px 28px rgba(23,32,51,.09) !important;
}

.home-latest-photo{
  height:104px !important;
  min-height:104px !important;
  width:100% !important;
  border-radius:0 !important;
  background:linear-gradient(180deg,#eef8e8,#f8fcf5) !important;
  overflow:hidden !important;
}

.home-latest-photo img{
  width:100% !important;
  height:104px !important;
  min-height:104px !important;
  object-fit:cover !important;
  display:block !important;
}

.home-latest-photo > span{
  width:54px !important;
  height:54px !important;
  border-radius:16px !important;
  background:#dff3d5 !important;
  font-size:28px !important;
}

.home-latest-card strong{
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
  min-height:38px !important;
  max-height:38px !important;
  margin:0 !important;
  padding:10px 10px 0 !important;
  font-size:15px !important;
  line-height:1.24 !important;
  font-weight:850 !important;
  color:#121827 !important;
}

.home-latest-badge{
  display:inline-flex !important;
  align-items:center !important;
  align-self:flex-start !important;
  width:auto !important;
  max-width:calc(100% - 20px) !important;
  margin:9px 10px 0 !important;
  padding:4px 8px !important;
  border-radius:999px !important;
  font-size:11px !important;
  line-height:1.15 !important;
  font-weight:850 !important;
  white-space:nowrap !important;
}

.home-latest-card small,
.home-latest-time{
  display:block !important;
  width:calc(100% - 20px) !important;
  margin:7px 10px 0 !important;
  padding:0 !important;
  color:#667085 !important;
  font-size:12px !important;
  line-height:1.25 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

.home-latest-time{
  margin-top:6px !important;
  padding-bottom:10px !important;
  color:#7a8594 !important;
}

.home-latest-card small::before{
  content:"📍 ";
  font-size:11px;
}
.home-latest-time::before{
  content:"◷ ";
  font-size:11px;
}

@media (min-width:901px){
  .home-latest-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
}

@media (max-width:760px){
  .home-latest-help{
    padding:18px 14px !important;
    border-radius:24px !important;
  }
  .home-latest-help .home-section-head{
    gap:12px !important;
    align-items:flex-start !important;
  }
  .home-latest-help .home-section-head h2{
    font-size:28px !important;
    line-height:1.05 !important;
  }
  .home-latest-help .home-section-head a{
    flex:0 0 auto !important;
    min-height:34px !important;
    padding:8px 12px !important;
    font-size:15px !important;
  }
  .home-latest-grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .home-latest-card{
    min-height:0 !important;
    border-radius:20px !important;
    padding-bottom:14px !important;
  }
  .home-latest-photo,
  .home-latest-photo img{
    height:142px !important;
    min-height:142px !important;
  }
  .home-latest-card strong{
    font-size:21px !important;
    line-height:1.14 !important;
    min-height:auto !important;
    max-height:48px !important;
    padding:14px 16px 0 !important;
  }
  .home-latest-badge{
    margin:12px 16px 0 !important;
    font-size:13px !important;
    padding:6px 10px !important;
  }
  .home-latest-card small,
  .home-latest-time{
    width:calc(100% - 32px) !important;
    margin:10px 16px 0 !important;
    font-size:15px !important;
  }
}

/* v1.6.5 — latest cards title clamp: desktop + mobile */
.home-latest-card strong{
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
}

@media (min-width:761px){
  .home-latest-card strong{
    min-height:37px !important;
    max-height:37px !important;
    padding-top:9px !important;
    font-size:15px !important;
    line-height:1.22 !important;
  }
}

@media (max-width:760px){
  .home-latest-card strong{
    font-size:19px !important;
    line-height:1.12 !important;
    min-height:42px !important;
    max-height:42px !important;
    padding:12px 16px 0 !important;
    text-align:left !important;
  }
  .home-latest-badge{
    margin-top:10px !important;
  }
  .home-latest-card small,
  .home-latest-time{
    margin-top:8px !important;
  }
}


/* Final polish for latest announcement titles */
.home-latest-card strong{
  font-size:15px !important;
  line-height:1.25 !important;
  font-weight:800 !important;
  letter-spacing:-0.1px !important;
  min-height:37px !important;
  max-height:37px !important;
  margin-top:8px !important;
}
@media (max-width:768px){
  .home-latest-card strong{
    font-size:17px !important;
    line-height:1.18 !important;
    min-height:40px !important;
    max-height:40px !important;
  }
}

/* v1.6.6 — final latest cards space balance: title area fixed on desktop and mobile */
@media (min-width: 761px){
  .home-latest-grid{
    gap:13px !important;
  }

  .home-latest-card{
    height:302px !important;
    min-height:302px !important;
    padding:0 0 12px !important;
    display:flex !important;
    flex-direction:column !important;
    overflow:hidden !important;
  }

  .home-latest-photo,
  .home-latest-card.no-photo .home-latest-photo{
    height:138px !important;
    min-height:138px !important;
    max-height:138px !important;
  }

  .home-latest-photo img{
    height:138px !important;
    min-height:138px !important;
    object-fit:cover !important;
  }

  .home-latest-card strong{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    line-clamp:2 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    min-height:42px !important;
    max-height:42px !important;
    margin:10px 12px 0 !important;
    padding:0 !important;
    font-size:15px !important;
    line-height:1.32 !important;
    font-weight:850 !important;
    letter-spacing:-.05px !important;
  }

  .home-latest-badge,
  .home-latest-card.no-photo .home-latest-badge{
    margin:8px 12px 0 !important;
    padding:4px 8px !important;
    font-size:11px !important;
    line-height:1.1 !important;
  }

  .home-latest-address{
    margin:8px 12px 0 !important;
    font-size:12px !important;
    line-height:1.2 !important;
  }

  .home-latest-bottom{
    margin-top:auto !important;
    padding:7px 12px 0 !important;
    min-height:18px !important;
  }

  .home-latest-time{
    margin:0 !important;
    padding:0 !important;
    font-size:12px !important;
    line-height:1.15 !important;
  }

  .home-latest-time::before,
  .home-latest-card small::before{
    content:none !important;
  }
}

@media (max-width: 760px){
  .home-latest-help{
    padding:18px 14px !important;
  }

  .home-latest-grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .home-latest-card{
    display:grid !important;
    grid-template-columns:112px minmax(0,1fr) !important;
    grid-template-areas:
      "photo title"
      "photo badge"
      "photo address"
      "photo time" !important;
    column-gap:14px !important;
    row-gap:7px !important;
    align-items:center !important;
    min-height:150px !important;
    height:auto !important;
    padding:14px !important;
    border-radius:20px !important;
    overflow:hidden !important;
  }

  .home-latest-photo,
  .home-latest-card.no-photo .home-latest-photo{
    grid-area:photo !important;
    width:112px !important;
    height:112px !important;
    min-width:112px !important;
    min-height:112px !important;
    max-height:112px !important;
    margin:0 !important;
    border-radius:16px !important;
    overflow:hidden !important;
  }

  .home-latest-photo img{
    width:112px !important;
    height:112px !important;
    min-height:112px !important;
    object-fit:cover !important;
    border-radius:16px !important;
  }

  .home-latest-card.no-photo .home-latest-placeholder,
  .home-latest-card.no-photo .home-latest-photo > span{
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
    border-radius:16px !important;
    font-size:26px !important;
  }

  .home-latest-card strong{
    grid-area:title !important;
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    line-clamp:2 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    min-height:0 !important;
    max-height:46px !important;
    margin:0 !important;
    padding:0 !important;
    font-size:18px !important;
    line-height:1.25 !important;
    font-weight:850 !important;
    text-align:left !important;
    letter-spacing:-.05px !important;
  }

  .home-latest-badge,
  .home-latest-card.no-photo .home-latest-badge{
    grid-area:badge !important;
    justify-self:start !important;
    width:auto !important;
    max-width:100% !important;
    margin:0 !important;
    padding:5px 9px !important;
    font-size:12px !important;
    line-height:1.1 !important;
  }

  .home-latest-address{
    grid-area:address !important;
    margin:0 !important;
    padding:0 !important;
    font-size:13px !important;
    line-height:1.25 !important;
  }

  .home-latest-address-icon{display:none !important;}

  .home-latest-address-text{
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom{
    grid-area:time !important;
    margin:0 !important;
    padding:0 !important;
    min-height:0 !important;
    display:flex !important;
    align-items:center !important;
  }

  .home-latest-time{
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    font-size:13px !important;
    line-height:1.2 !important;
  }

  .home-latest-time::before,
  .home-latest-card small::before{
    content:none !important;
  }
}


/* Final polish: latest announcements spacing */
.latest-announcements .announcement-card .announcement-title,
.latest-announcements .card-title{
  margin-bottom:10px !important;
}
.latest-announcements .announcement-card .card-body,
.latest-announcements .announcement-content{
  padding-top:8px !important;
}
@media (max-width:768px){
.latest-announcements .announcement-card .announcement-title,
.latest-announcements .card-title{
  margin-bottom:8px !important;
}
.latest-announcements .announcement-card .card-body,
.latest-announcements .announcement-content{
  padding-top:4px !important;
}
}

/* v1.6.7 — mobile latest cards: компактнее карточки без изменения ПК */
@media (max-width: 760px){
  .home-latest-grid{
    gap:10px !important;
  }

  .home-latest-card{
    grid-template-columns:88px minmax(0,1fr) !important;
    grid-template-areas:
      "photo title"
      "photo badge"
      "photo address"
      "photo time" !important;
    column-gap:12px !important;
    row-gap:3px !important;
    align-items:center !important;
    min-height:126px !important;
    padding:12px !important;
    border-radius:18px !important;
  }

  .home-latest-photo,
  .home-latest-card.no-photo .home-latest-photo{
    width:88px !important;
    height:88px !important;
    min-width:88px !important;
    min-height:88px !important;
    max-width:88px !important;
    max-height:88px !important;
    border-radius:15px !important;
  }

  .home-latest-photo img{
    width:88px !important;
    height:88px !important;
    min-height:88px !important;
    border-radius:15px !important;
  }

  .home-latest-card.no-photo .home-latest-placeholder,
  .home-latest-card.no-photo .home-latest-photo > span{
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    min-height:46px !important;
    border-radius:14px !important;
    font-size:24px !important;
  }

  .home-latest-card strong{
    align-self:end !important;
    max-height:42px !important;
    font-size:17px !important;
    line-height:1.22 !important;
    margin:0 !important;
  }

  .home-latest-badge,
  .home-latest-card.no-photo .home-latest-badge{
    align-self:center !important;
    padding:4px 8px !important;
    font-size:12px !important;
    line-height:1.08 !important;
    margin:0 !important;
  }

  .home-latest-address{
    align-self:center !important;
    font-size:12px !important;
    line-height:1.15 !important;
    margin:0 !important;
    max-width:100% !important;
  }

  .home-latest-bottom{
    align-self:start !important;
    margin:0 !important;
    padding:0 !important;
    min-height:0 !important;
    height:auto !important;
  }

  .home-latest-time{
    display:inline-flex !important;
    align-items:center !important;
    font-size:12px !important;
    line-height:1.1 !important;
    margin:0 !important;
    padding:0 !important;
  }
}

/* v1.6.8 — mobile latest announcements: layout like nearby list */
@media (max-width: 760px){
  .home-latest-help .home-section-head{
    align-items:flex-start !important;
    gap:10px !important;
  }

  .home-latest-grid{
    gap:10px !important;
  }

  .home-latest-card{
    display:grid !important;
    grid-template-columns:76px minmax(0,1fr) !important;
    grid-template-areas:
      "photo badge"
      "photo title"
      "photo address"
      "photo time" !important;
    column-gap:12px !important;
    row-gap:4px !important;
    align-items:start !important;
    min-height:0 !important;
    height:auto !important;
    padding:12px !important;
    border-radius:16px !important;
    text-align:left !important;
  }

  .home-latest-photo,
  .home-latest-card.no-photo .home-latest-photo{
    grid-area:photo !important;
    width:72px !important;
    height:72px !important;
    min-width:72px !important;
    min-height:72px !important;
    max-width:72px !important;
    max-height:72px !important;
    align-self:start !important;
    margin:0 !important;
    border-radius:13px !important;
    overflow:hidden !important;
  }

  .home-latest-photo img{
    width:72px !important;
    height:72px !important;
    min-height:72px !important;
    border-radius:13px !important;
    object-fit:cover !important;
  }

  .home-latest-card.no-photo .home-latest-placeholder,
  .home-latest-card.no-photo .home-latest-photo > span{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
    border-radius:12px !important;
    font-size:20px !important;
  }

  .home-latest-badge,
  .home-latest-card.no-photo .home-latest-badge{
    grid-area:badge !important;
    justify-self:start !important;
    align-self:start !important;
    width:auto !important;
    max-width:100% !important;
    margin:0 !important;
    padding:4px 8px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-card strong{
    grid-area:title !important;
    align-self:start !important;
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    line-clamp:2 !important;
    min-height:0 !important;
    max-height:40px !important;
    margin:0 !important;
    padding:0 !important;
    font-size:18px !important;
    line-height:1.14 !important;
    font-weight:850 !important;
    text-align:left !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-address{
    grid-area:address !important;
    align-self:start !important;
    display:flex !important;
    align-items:center !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    font-size:12.5px !important;
    line-height:1.18 !important;
    color:#64748b !important;
  }

  .home-latest-address-icon{
    display:none !important;
  }

  .home-latest-address-text{
    min-width:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom{
    grid-area:time !important;
    align-self:start !important;
    display:flex !important;
    align-items:center !important;
    width:auto !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
  }

  .home-latest-time{
    display:inline-flex !important;
    align-items:center !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    font-size:12px !important;
    line-height:1.1 !important;
    color:#697386 !important;
    white-space:nowrap !important;
  }

  .home-latest-time::before,
  .home-latest-card small::before{
    content:none !important;
  }
}

/* v1.6.9 — mobile latest announcements: unified with nearby cards */
.home-latest-action-help,
.home-latest-action-map{
  display:none;
}

@media (max-width:760px){
  .home-latest-help .home-section-head{
    align-items:flex-start !important;
  }

  .home-latest-grid{
    gap:10px !important;
  }

  .home-latest-card{
    display:grid !important;
    grid-template-columns:72px minmax(0,1fr) auto !important;
    grid-template-areas:
      "photo badge help"
      "photo map map"
      "photo title title"
      "photo address address"
      "photo time time" !important;
    column-gap:10px !important;
    row-gap:4px !important;
    align-items:start !important;
    min-height:0 !important;
    height:auto !important;
    padding:10px !important;
    border-radius:16px !important;
    text-align:left !important;
  }

  .home-latest-photo,
  .home-latest-card.no-photo .home-latest-photo{
    grid-area:photo !important;
    display:flex !important;
    width:62px !important;
    height:62px !important;
    min-width:62px !important;
    min-height:62px !important;
    max-width:62px !important;
    max-height:62px !important;
    align-self:start !important;
    margin:0 !important;
    border-radius:13px !important;
    overflow:hidden !important;
    background:#eef8e8 !important;
  }

  .home-latest-photo img{
    width:62px !important;
    height:62px !important;
    min-height:62px !important;
    border-radius:13px !important;
    object-fit:cover !important;
  }

  .home-latest-card.no-photo .home-latest-placeholder,
  .home-latest-card.no-photo .home-latest-photo > span{
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
    min-height:36px !important;
    border-radius:12px !important;
    font-size:19px !important;
  }

  .home-latest-badge,
  .home-latest-card.no-photo .home-latest-badge{
    grid-area:badge !important;
    justify-self:start !important;
    align-self:start !important;
    width:auto !important;
    max-width:100% !important;
    margin:0 !important;
    padding:4px 8px !important;
    border-radius:999px !important;
    font-size:11px !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-action-help{
    grid-area:help !important;
    display:inline-flex !important;
    justify-self:end !important;
    align-self:start !important;
    margin:0 !important;
    padding:4px 8px !important;
    border:1px solid #f0c98b !important;
    border-radius:999px !important;
    background:#fff8ed !important;
    color:#c26a00 !important;
    font-size:11px !important;
    line-height:1.1 !important;
    font-weight:850 !important;
    white-space:nowrap !important;
  }

  .home-latest-action-map{
    grid-area:map !important;
    display:inline-flex !important;
    justify-self:start !important;
    align-self:start !important;
    margin:0 !important;
    padding:4px 8px !important;
    border:1px solid #d8efcc !important;
    border-radius:999px !important;
    background:#eef8e8 !important;
    color:#26720f !important;
    font-size:11px !important;
    line-height:1.1 !important;
    font-weight:850 !important;
    white-space:nowrap !important;
  }

  .home-latest-card strong{
    grid-area:title !important;
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    line-clamp:2 !important;
    min-height:0 !important;
    max-height:38px !important;
    margin:1px 0 0 !important;
    padding:0 !important;
    font-size:17px !important;
    line-height:1.12 !important;
    font-weight:850 !important;
    text-align:left !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-address{
    grid-area:address !important;
    display:flex !important;
    align-items:center !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    font-size:12px !important;
    line-height:1.15 !important;
    color:#64748b !important;
  }

  .home-latest-address-icon{
    display:none !important;
  }

  .home-latest-address-text{
    min-width:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom{
    grid-area:time !important;
    display:flex !important;
    align-items:center !important;
    width:auto !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
  }

  .home-latest-bottom .home-map-btn{
    display:none !important;
  }

  .home-latest-time{
    display:inline-flex !important;
    align-items:center !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    font-size:12px !important;
    line-height:1.1 !important;
    color:#697386 !important;
    white-space:nowrap !important;
  }

  .home-latest-time::before,
  .home-latest-card small::before{
    content:none !important;
  }
}

/* v1.7.0 — mobile latest announcements final compact rhythm */
@media (max-width:760px){
  .home-latest-grid{
    gap:10px !important;
  }

  .home-latest-card{
    display:grid !important;
    grid-template-columns:86px minmax(0,1fr) auto !important;
    grid-template-areas:
      "photo badge help"
      "photo map map"
      "photo title title"
      "photo address address"
      "photo time time" !important;
    column-gap:10px !important;
    row-gap:5px !important;
    align-items:start !important;
    align-content:start !important;
    grid-auto-rows:max-content !important;
    min-height:142px !important;
    height:auto !important;
    padding:12px !important;
    border-radius:16px !important;
    text-align:left !important;
    overflow:hidden !important;
  }

  .home-latest-photo,
  .home-latest-card.no-photo .home-latest-photo{
    grid-area:photo !important;
    width:82px !important;
    height:82px !important;
    min-width:82px !important;
    min-height:82px !important;
    max-width:82px !important;
    max-height:82px !important;
    align-self:start !important;
    margin:0 !important;
    border-radius:14px !important;
    overflow:hidden !important;
    background:#eef8e8 !important;
  }

  .home-latest-photo img{
    width:82px !important;
    height:82px !important;
    min-height:82px !important;
    border-radius:14px !important;
    object-fit:cover !important;
    display:block !important;
  }

  .home-latest-card.no-photo .home-latest-placeholder,
  .home-latest-card.no-photo .home-latest-photo > span{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    min-height:42px !important;
    border-radius:13px !important;
    font-size:21px !important;
  }

  .home-latest-badge,
  .home-latest-card.no-photo .home-latest-badge{
    grid-area:badge !important;
    justify-self:start !important;
    align-self:start !important;
    width:auto !important;
    max-width:100% !important;
    margin:0 !important;
    padding:4px 8px !important;
    border-radius:999px !important;
    font-size:11.5px !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-action-help{
    grid-area:help !important;
    display:inline-flex !important;
    justify-self:end !important;
    align-self:start !important;
    margin:0 !important;
    padding:4px 8px !important;
    border:1px solid #f0c98b !important;
    border-radius:999px !important;
    background:#fff8ed !important;
    color:#c26a00 !important;
    font-size:11.5px !important;
    line-height:1.1 !important;
    font-weight:850 !important;
    white-space:nowrap !important;
  }

  .home-latest-action-map{
    grid-area:map !important;
    display:inline-flex !important;
    justify-self:start !important;
    align-self:start !important;
    margin:0 !important;
    padding:4px 8px !important;
    border:1px solid #d8efcc !important;
    border-radius:999px !important;
    background:#eef8e8 !important;
    color:#26720f !important;
    font-size:11.5px !important;
    line-height:1.1 !important;
    font-weight:850 !important;
    white-space:nowrap !important;
  }

  .home-latest-card strong{
    grid-area:title !important;
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    line-clamp:2 !important;
    min-height:0 !important;
    max-height:40px !important;
    margin:2px 0 0 !important;
    padding:0 !important;
    font-size:17px !important;
    line-height:1.14 !important;
    font-weight:850 !important;
    text-align:left !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-address{
    grid-area:address !important;
    display:flex !important;
    align-items:center !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    font-size:13px !important;
    line-height:1.16 !important;
    color:#5f6b7a !important;
  }

  .home-latest-address-icon{
    display:none !important;
  }

  .home-latest-address-text{
    min-width:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom{
    grid-area:time !important;
    display:flex !important;
    align-items:center !important;
    width:auto !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
  }

  .home-latest-bottom .home-map-btn{
    display:none !important;
  }

  .home-latest-time{
    display:inline-flex !important;
    align-items:center !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    font-size:12.5px !important;
    line-height:1.1 !important;
    color:#667085 !important;
    white-space:nowrap !important;
  }

  .home-latest-time::before,
  .home-latest-card small::before{
    content:none !important;
  }
}

/* ===== Финальная полировка модального окна: телефон и сообщение автору ===== */
#announcementModal .message-author-form textarea{
  min-height:92px !important;
  max-height:190px !important;
  padding:12px 14px !important;
  line-height:1.5 !important;
  resize:vertical !important;
  overflow-y:auto !important;
  box-sizing:border-box !important;
  font-family:inherit !important;
  display:block !important;
}

#announcementModal .modal-message-compact{
  display:grid !important;
  gap:10px !important;
}

#announcementModal .modal-message-compact .modal-message-title{
  margin:0 !important;
  font-weight:900 !important;
  color:#347109 !important;
}

#announcementModal .contact-box--shown{
  grid-template-columns:46px minmax(0,1fr) auto !important;
  min-height:74px !important;
}

#announcementModal .contact-box--shown .modal-contact-text{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}

#announcementModal .contact-box--shown .contact-phone{
  display:inline-block !important;
  color:#1b7f08 !important;
  font-size:18px !important;
  line-height:1.15 !important;
  font-weight:950 !important;
  letter-spacing:.01em !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}

#announcementModal .contact-box--shown .phone-open-note{
  display:block !important;
  margin-top:4px !important;
  color:#667085 !important;
  font-size:12px !important;
  line-height:1.25 !important;
  font-style:normal !important;
  font-weight:600 !important;
}

#announcementModal .modal-phone-actions{
  display:flex !important;
  gap:8px !important;
  align-items:center !important;
  justify-content:flex-end !important;
  min-width:0 !important;
}

#announcementModal .modal-call-phone,
#announcementModal .modal-copy-phone{
  height:38px !important;
  min-width:auto !important;
  width:auto !important;
  padding:0 12px !important;
  border-radius:12px !important;
  border:1px solid #d7e9cd !important;
  background:#fff !important;
  color:#347109 !important;
  font-size:13px !important;
  font-weight:900 !important;
  text-decoration:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  white-space:nowrap !important;
  box-shadow:none !important;
}

#announcementModal .modal-call-phone{
  background:#1fa20b !important;
  color:#fff !important;
  border-color:#1fa20b !important;
}

#announcementModal .modal-copy-phone.is-copied{
  background:#eef8e8 !important;
  color:#1b7f08 !important;
}

@media(max-width:760px){
  #announcementModal .contact-box--shown{
    grid-template-columns:42px minmax(0,1fr) !important;
  }
  #announcementModal .modal-phone-actions{
    grid-column:1 / -1 !important;
    justify-content:stretch !important;
  }
  #announcementModal .modal-call-phone,
  #announcementModal .modal-copy-phone{
    flex:1 1 0 !important;
  }
  #announcementModal .contact-box--shown .contact-phone{
    font-size:17px !important;
    white-space:normal !important;
  }
}

/* ===== Финальная правка блока телефона: без кнопки скрытия, легче на ПК ===== */
#announcementModal .contact-box--shown{
  grid-template-columns:46px minmax(0,1fr) auto !important;
  align-items:center !important;
  min-height:74px !important;
  padding:12px 12px !important;
}

#announcementModal .contact-box--shown .modal-contact-text{
  min-width:0 !important;
  justify-content:center !important;
}

#announcementModal .contact-box--shown .contact-phone{
  font-size:18px !important;
  line-height:1.15 !important;
  color:#168207 !important;
  font-weight:950 !important;
  white-space:nowrap !important;
}

#announcementModal .contact-box--shown .phone-open-note{
  margin-top:3px !important;
  font-size:12px !important;
  line-height:1.2 !important;
  color:#667085 !important;
  font-weight:600 !important;
}

#announcementModal .modal-phone-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
}

#announcementModal .modal-call-phone{
  display:none !important;
}

#announcementModal .modal-copy-phone{
  height:38px !important;
  padding:0 14px !important;
  border-radius:12px !important;
  border:1px solid #d7e9cd !important;
  background:#fff !important;
  color:#347109 !important;
  font-size:13px !important;
  font-weight:900 !important;
  white-space:nowrap !important;
  box-shadow:none !important;
}

#announcementModal .modal-copy-phone.is-copied{
  background:#eef8e8 !important;
  color:#1b7f08 !important;
}

@media(max-width:760px){
  #announcementModal .contact-box--shown{
    grid-template-columns:42px minmax(0,1fr) !important;
    min-height:86px !important;
    row-gap:10px !important;
  }
  #announcementModal .modal-phone-actions{
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }
  #announcementModal .modal-call-phone{
    display:flex !important;
    height:40px !important;
    border-radius:12px !important;
    background:#1fa20b !important;
    color:#fff !important;
    border:1px solid #1fa20b !important;
    align-items:center !important;
    justify-content:center !important;
    text-decoration:none !important;
    font-size:13px !important;
    font-weight:900 !important;
  }
  #announcementModal .modal-copy-phone{
    height:40px !important;
    width:100% !important;
  }
  #announcementModal .contact-box--shown .contact-phone{
    font-size:17px !important;
    white-space:normal !important;
  }
}

/* ===== Mobile phone block final compact fix: no jump feeling, buttons in one row ===== */
@media(max-width:900px){
  #announcementModal .contact-box--shown{
    grid-template-columns:44px minmax(0,1fr) !important;
    row-gap:8px !important;
    min-height:auto !important;
    padding:14px 14px !important;
    align-items:center !important;
  }

  #announcementModal .contact-box--shown .modal-contact-text{
    grid-column:2 !important;
    min-width:0 !important;
  }

  #announcementModal .contact-box--shown .contact-phone{
    font-size:20px !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
  }

  #announcementModal .contact-box--shown .phone-open-note{
    margin-top:4px !important;
    font-size:13px !important;
  }

  #announcementModal .modal-phone-actions{
    grid-column:1 / -1 !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:stretch !important;
    gap:10px !important;
    width:100% !important;
    margin-top:2px !important;
  }

  #announcementModal .modal-call-phone,
  #announcementModal .modal-copy-phone{
    flex:1 1 0 !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    height:44px !important;
    padding:0 10px !important;
    border-radius:14px !important;
    font-size:15px !important;
    line-height:1 !important;
  }

  #announcementModal .modal-call-phone{
    display:flex !important;
  }
}

@media(max-width:420px){
  #announcementModal .contact-box--shown .contact-phone{
    font-size:18px !important;
  }
  #announcementModal .modal-call-phone,
  #announcementModal .modal-copy-phone{
    height:42px !important;
    font-size:14px !important;
  }
}


/* ===== Финальная правка поля "Сообщение автору": текст не обрезается ===== */
#announcementModal .modal-action-box .message-author-form textarea,
#announcementModal .message-author-form textarea{
  height:108px !important;
  min-height:108px !important;
  max-height:220px !important;
  padding:13px 14px !important;
  line-height:1.45 !important;
  overflow-y:auto !important;
  resize:vertical !important;
  box-sizing:border-box !important;
  white-space:pre-wrap !important;
  word-break:normal !important;
}

#announcementModal .modal-action-box .message-author-form{
  gap:9px !important;
}

@media(max-width:760px){
  #announcementModal .modal-action-box .message-author-form textarea,
  #announcementModal .message-author-form textarea{
    height:112px !important;
    min-height:112px !important;
    max-height:240px !important;
    font-size:16px !important;
    line-height:1.45 !important;
  }
}


/* 2026-06-28: clean single arrow for profile accordion sections */
.profile-fold-toggle em,
.profile-fold-toggle .profile-fold-arrow{
  font-size:0 !important;
  color:transparent !important;
  overflow:hidden !important;
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:34px !important;
  height:34px !important;
  min-width:34px !important;
  padding:0 !important;
  border-radius:999px !important;
  background:#eef9e9 !important;
  line-height:1 !important;
  transition:transform .18s ease, background .18s ease !important;
}
.profile-fold-toggle em:after,
.profile-fold-toggle .profile-fold-arrow:after{
  content:'' !important;
  display:none !important;
}
.profile-fold-toggle em:before,
.profile-fold-toggle .profile-fold-arrow:before{
  content:'⌄' !important;
  display:block !important;
  color:#2d7a10 !important;
  font-size:22px !important;
  font-weight:900 !important;
  line-height:1 !important;
  transform:translateY(-1px) !important;
}
.profile-fold-section.is-open .profile-fold-toggle em,
.profile-fold-section.is-open .profile-fold-toggle .profile-fold-arrow{
  transform:rotate(180deg) !important;
  background:#e9f8e2 !important;
}
.profile-fold-section.is-open .profile-fold-toggle em:before,
.profile-fold-section.is-open .profile-fold-toggle .profile-fold-arrow:before{
  transform:translateY(-1px) !important;
}
@media (max-width:760px){
  .profile-fold-toggle em,
  .profile-fold-toggle .profile-fold-arrow{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    flex:0 0 34px !important;
  }
  .profile-fold-toggle em:before,
  .profile-fold-toggle .profile-fold-arrow:before{
    font-size:22px !important;
  }
}
@media (max-width:390px){
  .profile-fold-toggle em,
  .profile-fold-toggle .profile-fold-arrow{
    width:32px !important;
    height:32px !important;
    min-width:32px !important;
    flex:0 0 32px !important;
  }
  .profile-fold-toggle em:before,
  .profile-fold-toggle .profile-fold-arrow:before{
    font-size:21px !important;
  }
}


/* =========================================================
   2026-06-28: profile accordion final polish
   - One centered arrow for desktop and mobile
   - Smooth arrow rotation
   - Better gap between title and counter
   - Better breathing room for opened content
   - Whole accordion header remains clickable
========================================================= */
body .profile-fold-toggle{
  cursor:pointer!important;
}

body .profile-fold-toggle span{
  gap:12px!important;
}

body .profile-fold-toggle span b{
  margin-left:0!important;
}

body .profile-fold-toggle em,
body .profile-fold-arrow{
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  flex:0 0 32px!important;
  padding:0!important;
  border-radius:999px!important;
  background:#f0faec!important;
  color:#2d7a10!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:0!important;
  line-height:1!important;
  position:relative!important;
  text-align:center!important;
}

body .profile-fold-toggle em::after,
body .profile-fold-arrow::after{
  content:none!important;
  display:none!important;
}

body .profile-fold-toggle em::before,
body .profile-fold-arrow::before{
  content:"›"!important;
  display:block!important;
  font-size:21px!important;
  line-height:1!important;
  font-weight:900!important;
  transform:rotate(90deg)!important;
  margin:0!important;
  transition:transform .22s ease!important;
  transform-origin:center center!important;
}

body .profile-fold-section.is-open .profile-fold-toggle em::before,
body .profile-fold-section.is-open .profile-fold-arrow::before{
  transform:rotate(-90deg)!important;
}

body .profile-fold-section.is-open .profile-fold-toggle{
  margin-bottom:14px!important;
  padding-bottom:10px!important;
}

body .profile-fold-section.is-open .profile-fold-content{
  padding-top:8px!important;
}

@media (max-width:640px){
  body .profile-fold-toggle{
    min-height:58px!important;
    grid-template-columns:minmax(0,1fr) 32px!important;
    gap:10px!important;
  }
  body .profile-fold-toggle span{
    gap:9px!important;
  }
  body .profile-fold-toggle span b{
    margin-left:0!important;
  }
  body .profile-fold-toggle em,
  body .profile-fold-arrow{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    flex-basis:32px!important;
  }
  body .profile-fold-toggle em::before,
  body .profile-fold-arrow::before{
    font-size:20px!important;
  }
  body .profile-fold-section.is-open .profile-fold-content{
    padding:8px 14px 14px!important;
  }
}

/* 2026-06-28: My Ads polish — unified cards for desktop and mobile */
.my-ads-page{
  max-width: 1160px;
}
.my-ads-list-card{
  padding: 18px;
}
.my-ads-list{
  gap: 14px;
}
@media (min-width: 900px){
  .my-ads-list{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
  }
  .my-ad-row{
    grid-template-columns: 128px minmax(0, 1fr);
    gap: 16px;
    padding: 14px;
    min-height: 152px;
    align-items: start;
    border-radius: 20px;
    box-shadow: 0 8px 20px rgba(26, 80, 24, .035);
  }
  .my-ad-thumb img{
    width: 128px;
    height: 104px;
    border-radius: 16px;
  }
  .my-ad-body{
    min-width: 0;
  }
  .my-ad-body h2{
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    max-width: 100%;
    font-size: 19px;
    line-height: 1.18;
    margin: 7px 0 5px;
  }
  .my-ad-meta{
    gap: 7px;
  }
  .my-ad-meta span{
    max-width: 190px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .my-ad-actions{
    margin-top: 12px;
  }
  .my-ad-actions .secondary-btn{
    min-height: 34px;
    padding: 8px 14px;
  }
}
@media (min-width: 1200px){
  .my-ads-list{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .my-ad-row{
    grid-template-columns: 112px minmax(0, 1fr);
  }
  .my-ad-thumb img{
    width: 112px;
    height: 94px;
  }
  .my-ad-meta span{
    max-width: 160px;
  }
}
@media (max-width: 760px){
  .my-ads-list{
    gap: 12px!important;
  }
  .my-ad-row{
    grid-template-columns: 92px minmax(0,1fr)!important;
    gap: 12px!important;
    padding: 12px!important;
    border-radius: 20px!important;
  }
  .my-ad-thumb img{
    width: 92px!important;
    height: 82px!important;
    border-radius: 15px!important;
  }
  .my-ad-body{
    min-width: 0!important;
  }
  .my-ad-body h2{
    display: -webkit-box!important;
    -webkit-line-clamp: 3!important;
    -webkit-box-orient: vertical!important;
    overflow: hidden!important;
    font-size: 18px!important;
    line-height: 1.12!important;
    margin: 6px 0 4px!important;
  }
  .my-ad-meta{
    display: grid!important;
    grid-template-columns: minmax(0,1fr) auto!important;
    gap: 7px!important;
    align-items: start!important;
  }
  .my-ad-meta span,
  .my-ad-meta em{
    font-size: 11.5px!important;
    line-height: 1.15!important;
    padding: 5px 8px!important;
  }
  .my-ad-meta span{
    max-width: 100%!important;
    min-width: 0!important;
    overflow: hidden!important;
    text-overflow: ellipsis!important;
    white-space: nowrap!important;
  }
  .my-ad-meta em{
    white-space: nowrap!important;
  }
  .my-ad-actions{
    gap: 9px!important;
    margin-top: 11px!important;
  }
  .my-ad-actions .secondary-btn{
    min-height: 38px!important;
    font-size: 14px!important;
    padding: 9px 13px!important;
  }
}

/* ===== 2026-06-28: финальная полировка страницы "Мои объявления" ===== */
.my-ads-list{
  grid-template-columns:repeat(3,minmax(260px,1fr))!important;
  gap:14px!important;
  align-items:stretch!important;
}
.my-ad-row{
  display:grid!important;
  grid-template-columns:124px minmax(0,1fr)!important;
  grid-template-rows:auto auto auto 1fr auto!important;
  gap:10px 14px!important;
  padding:14px!important;
  min-height:210px!important;
  height:100%!important;
  align-items:start!important;
}
.my-ad-thumb{
  grid-column:1!important;
  grid-row:1 / span 3!important;
  display:block!important;
}
.my-ad-thumb img{
  width:124px!important;
  height:98px!important;
  border-radius:15px!important;
}
.my-ad-body{
  display:contents!important;
}
.my-ad-meta{
  grid-column:2!important;
  grid-row:1!important;
  display:flex!important;
  gap:7px!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  min-width:0!important;
}
.my-ad-meta span,
.my-ad-meta em{
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  line-height:1.15!important;
}
.my-ad-body h2{
  grid-column:2!important;
  grid-row:2!important;
  font-size:19px!important;
  line-height:1.15!important;
  margin:0!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
.my-ad-body small{
  grid-column:2!important;
  grid-row:3!important;
  display:block!important;
  line-height:1.2!important;
}
.my-ad-actions{
  grid-column:1 / -1!important;
  grid-row:5!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:8px!important;
  margin-top:8px!important;
  align-self:end!important;
}
.my-ad-actions .secondary-btn{
  width:100%!important;
  min-height:40px!important;
  padding:9px 10px!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:nowrap!important;
  font-size:14px!important;
  border-radius:13px!important;
}
.my-ad-actions .secondary-btn:only-child{
  grid-column:1 / -1!important;
}

@media (max-width:980px) and (min-width:761px){
  .my-ads-list{grid-template-columns:repeat(2,minmax(260px,1fr))!important;}
}

@media (max-width:760px){
  .my-ads-list{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .my-ad-row{
    grid-template-columns:118px minmax(0,1fr)!important;
    grid-template-rows:auto auto auto 1fr auto!important;
    gap:9px 12px!important;
    padding:13px!important;
    min-height:0!important;
    border-radius:19px!important;
  }
  .my-ad-thumb img{
    width:118px!important;
    height:96px!important;
    border-radius:15px!important;
  }
  .my-ad-meta{
    gap:7px!important;
    align-items:flex-start!important;
  }
  .my-ad-meta span,
  .my-ad-meta em{
    font-size:12px!important;
    padding:5px 8px!important;
    max-width:145px!important;
  }
  .my-ad-meta em{
    max-width:82px!important;
  }
  .my-ad-body h2{
    font-size:21px!important;
    line-height:1.12!important;
    -webkit-line-clamp:2!important;
  }
  .my-ad-body small{
    font-size:14px!important;
  }
  .my-ad-actions{
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    margin-top:10px!important;
  }
  .my-ad-actions .secondary-btn{
    min-height:42px!important;
    font-size:15px!important;
    padding:9px 8px!important;
    border-radius:14px!important;
  }
}

@media (max-width:390px){
  .my-ad-row{
    grid-template-columns:104px minmax(0,1fr)!important;
    gap:8px 10px!important;
    padding:12px!important;
  }
  .my-ad-thumb img{
    width:104px!important;
    height:88px!important;
  }
  .my-ad-meta span{max-width:128px!important;}
  .my-ad-body h2{font-size:19px!important;}
  .my-ad-actions .secondary-btn{font-size:14px!important;}
}


/* ===== v1.5.9: полировка полного окна объявления ===== */
#announcementModal .modal-author-card--polished{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  padding:8px 10px !important;
  margin:8px 0 10px !important;
  border:1px solid #e2efd7 !important;
  border-radius:16px !important;
  background:#fbfff8 !important;
  text-decoration:none !important;
  color:inherit !important;
}
#announcementModal .modal-author-card--polished:hover{
  border-color:#b9e2a6 !important;
  background:#f4fbef !important;
}
#announcementModal .modal-author-card--polished .modal-author-name{
  display:flex !important;
  align-items:baseline !important;
  gap:6px !important;
  margin:0 0 3px !important;
  line-height:1.2 !important;
}
#announcementModal .modal-author-label{
  color:#657083 !important;
  font-size:12px !important;
  font-weight:800 !important;
}
#announcementModal .modal-author-card--polished .modal-author-name strong{
  color:#2f7c0e !important;
  font-size:15px !important;
  font-weight:900 !important;
}
#announcementModal .modal-author-card--polished .modal-author-rating,
#announcementModal .modal-author-card--polished .modal-author-reviews{
  color:#657083 !important;
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:800 !important;
}
#announcementModal .report-announcement-btn{
  min-height:40px !important;
  padding:8px 12px !important;
  border:0 !important;
  background:transparent !important;
  color:#b04444 !important;
  box-shadow:none !important;
  font-size:14px !important;
  justify-self:center !important;
}
#announcementModal .report-announcement-btn:hover{
  background:#fff4f4 !important;
  color:#8d2424 !important;
}
#announcementModal .contact-box .modal-contact-text em{
  line-height:1.25 !important;
}
#announcementModal .modal-description-box{
  padding:15px 17px !important;
}
#announcementModal .modal-info-box b{
  color:#657083 !important;
}
#announcementModal .modal-info-id{
  display:block !important;
  margin-top:4px !important;
  color:#8a94a6 !important;
  font-size:13px !important;
  font-style:normal !important;
  font-weight:800 !important;
}
#announcementModal .modal-info-box .modal-place-link span{
  max-height:38px !important;
  overflow:hidden !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
}
@media (max-width: 700px){
  #announcementModal .modal-author-card--polished{
    padding:10px 12px !important;
    border-radius:18px !important;
  }
  #announcementModal .modal-author-card--polished .modal-author-name{
    flex-wrap:wrap !important;
  }
  #announcementModal .modal-author-card--polished .modal-author-name strong{
    font-size:16px !important;
  }
  #announcementModal .report-announcement-btn{
    min-height:44px !important;
    width:auto !important;
    margin:0 auto !important;
  }
  #announcementModal .modal-info-id{
    grid-column:2 !important;
    margin-top:1px !important;
  }
}


/* =====================================================
   2026-06: Главная — правая колонка + блок "Объявления рядом"
   - убрана визуальная полупрозрачность у "Объявления рядом"
   - обновлён блок преимуществ "Помоги-Помогу"
===================================================== */

.visible-announcements-panel{
  opacity:1 !important;
  background:#ffffff !important;
  background-image:none !important;
  border:1px solid #e6f0df !important;
  box-shadow:0 16px 38px rgba(23,32,51,.075) !important;
}

.visible-announcements-head{
  background:#ffffff !important;
  background-image:none !important;
}

.visible-announcements-list,
.visible-announcement-card,
.visible-announcement-card *{
  opacity:1 !important;
}

.home-project-card{
  background:#ffffff !important;
  border:1px solid #e6f0df !important;
  box-shadow:0 12px 28px rgba(23,32,51,.055) !important;
}

.home-project-card h2{
  white-space:normal !important;
  font-size:22px !important;
  line-height:1.12 !important;
  letter-spacing:-.02em !important;
}

.home-project-card ul{
  gap:13px !important;
}

.home-project-card li{
  align-items:start !important;
}

.home-project-card li span{
  background:#eef8e8 !important;
  color:#26750f !important;
  box-shadow:none !important;
}

.home-project-card b{
  color:#162033 !important;
  font-weight:900 !important;
}

.home-project-card small{
  color:#667085 !important;
  line-height:1.35 !important;
}

@media (max-width:760px){
  .home-project-card h2{
    font-size:26px !important;
  }
  .home-project-card ul{
    gap:12px !important;
  }
}


/* =====================================================
   FINAL FIX: clean top of "Объявления рядом" feed
   Убирает наложение/полупрозрачную "шапку" и торчащие карточки сверху
===================================================== */
.map-area-layout .visible-announcements-panel{
  background:#ffffff !important;
  opacity:1 !important;
  padding:18px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
}

/* В этом блоке sticky-шапка давала визуальное наложение карточек под заголовком */
.map-area-layout .visible-announcements-head{
  position:relative !important;
  top:auto !important;
  z-index:auto !important;
  background:#ffffff !important;
  opacity:1 !important;
  margin:0 0 14px 0 !important;
  padding:0 0 14px 0 !important;
  border-bottom:1px solid #edf3e8 !important;
  box-shadow:none !important;
}

.map-area-layout .visible-announcements-head h2{
  margin:0 0 10px 0 !important;
}

.map-area-layout .visible-announcements-head p.is-help-mode-hint{
  margin:0 !important;
  background:#f1faeb !important;
  opacity:1 !important;
}

/* Первый элемент списка всегда начинается ниже информационного блока */
.map-area-layout .visible-announcements-list{
  padding-top:0 !important;
  margin-top:0 !important;
}

/* На случай старых браузеров/кэша — запрещаем декоративные наложения */
.map-area-layout .visible-announcements-panel::before,
.map-area-layout .visible-announcements-panel::after,
.map-area-layout .visible-announcements-head::before,
.map-area-layout .visible-announcements-head::after{
  content:none !important;
  display:none !important;
}



/* Compact spacing: Nearby section */
.nearby-section .nearby-intro,
#nearby-list .nearby-intro{
    margin-bottom:16px !important;
}
.nearby-section .nearby-card:first-of-type,
#nearby-list .nearby-card:first-of-type{
    margin-top:0 !important;
}

/* ===== Notifications redesign — v1.5.8 ===== */
.notifications-page .notification-list{
  gap:12px!important;
}
.notifications-page .notification-item{
  padding:0!important;
  border-radius:20px!important;
  border:1px solid #dcefd4!important;
  background:#fff!important;
  color:#172033!important;
  box-shadow:0 5px 18px rgba(23,32,51,.035)!important;
  overflow:hidden!important;
}
.notifications-page .notification-item.unread{
  background:#f5fbf1!important;
  border-color:#80ca70!important;
  box-shadow:0 8px 24px rgba(51,170,27,.08)!important;
}
.notifications-page .notification-main-link{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
  padding:15px 16px!important;
  text-decoration:none!important;
  color:inherit!important;
}
.notifications-page .notification-icon{
  width:38px!important;
  height:38px!important;
  border-radius:999px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#eef9e8!important;
  border:1px solid #cfeec5!important;
  font-size:18px!important;
  line-height:1!important;
  margin-top:1px!important;
}
.notifications-page .notification-item.unread .notification-icon{
  background:#4fc12b!important;
  border-color:#45af25!important;
  box-shadow:0 4px 12px rgba(79,193,43,.24)!important;
}
.notifications-page .notification-content{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}
.notifications-page .notification-topline{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
}
.notifications-page .notification-topline b{
  font-size:17px!important;
  line-height:1.25!important;
  color:#172033!important;
  letter-spacing:-.01em!important;
}
.notifications-page .notification-time{
  flex:0 0 auto!important;
  color:#8a94a6!important;
  font-size:13px!important;
  font-weight:800!important;
  white-space:nowrap!important;
  margin-top:2px!important;
}
.notifications-page .notification-primary{
  color:#30394a!important;
  font-size:15px!important;
  line-height:1.38!important;
  font-weight:700!important;
}
.notifications-page .notification-secondary,
.notifications-page .notification-meta,
.notifications-page .notification-status{
  color:#687286!important;
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:700!important;
}
.notifications-page .notification-secondary a,
.notifications-page .notification-subscription-link,
.notifications-page .notification-announcement-link,
.notifications-page .notification-user-link{
  color:#2f8b1f!important;
  text-decoration:none!important;
  font-weight:900!important;
}
.notifications-page .notification-secondary a:hover,
.notifications-page .notification-subscription-link:hover,
.notifications-page .notification-announcement-link:hover,
.notifications-page .notification-user-link:hover{
  text-decoration:underline!important;
}
.notifications-page .notification-type-message .notification-icon{background:#eef6ff!important;border-color:#cfe4ff!important;}
.notifications-page .notification-type-review .notification-icon,
.notifications-page .notification-type-rating .notification-icon{background:#fff8df!important;border-color:#f3dfa1!important;}
.notifications-page .notification-type-confirmed .notification-icon{background:#effbf2!important;border-color:#c7edcf!important;}
.notifications-page .notification-type-subscription_new_ad .notification-icon{background:#eef9e8!important;border-color:#cfeec5!important;}
.notifications-page .notification-item.is-clickable .notification-main-link:hover{
  background:rgba(239,248,232,.45)!important;
}

@media (min-width:761px){
  .notifications-page .subscription-card.notifications-card{
    padding:24px 22px!important;
  }
  .notifications-page .notification-item{
    border-radius:18px!important;
  }
  .notifications-page .notification-main-link{
    grid-template-columns:40px minmax(0,1fr)!important;
    padding:14px 16px!important;
  }
  .notifications-page .notification-icon{
    width:34px!important;
    height:34px!important;
    font-size:16px!important;
  }
}

@media (max-width:760px){
  .notifications-page .notification-list{
    gap:12px!important;
  }
  .notifications-page .notification-item{
    border-radius:20px!important;
  }
  .notifications-page .notification-main-link{
    grid-template-columns:38px minmax(0,1fr)!important;
    gap:10px!important;
    padding:14px 13px!important;
  }
  .notifications-page .notification-icon{
    width:34px!important;
    height:34px!important;
    font-size:16px!important;
  }
  .notifications-page .notification-topline{
    display:block!important;
  }
  .notifications-page .notification-topline b{
    display:block!important;
    font-size:19px!important;
    line-height:1.18!important;
    margin-bottom:4px!important;
  }
  .notifications-page .notification-time{
    display:block!important;
    font-size:13px!important;
    margin:0 0 4px!important;
  }
  .notifications-page .notification-primary{
    font-size:16px!important;
    line-height:1.38!important;
  }
  .notifications-page .notification-secondary,
  .notifications-page .notification-meta,
  .notifications-page .notification-status{
    font-size:15px!important;
    line-height:1.35!important;
  }
}


/* 2026-06-29: Cabinet pages separation — public profile vs personal workspace */
.cabinet-page{max-width:1160px;padding-top:28px;padding-bottom:44px;}
.cabinet-hero h1{display:flex;align-items:center;gap:10px;}
.cabinet-stats-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px;}
.cabinet-stats-row>div{background:#fff;border:1px solid #dcefd6;border-radius:22px;padding:18px 20px;box-shadow:0 10px 28px rgba(26,80,24,.05);}
.cabinet-stats-row b{display:block;color:#2f8f16;font-size:30px;line-height:1;font-weight:900;margin-bottom:6px;}
.cabinet-stats-row span{display:block;color:#667085;font-weight:750;}
.cabinet-section-card{padding:18px;margin-bottom:16px;border-radius:26px;}
.cabinet-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 14px;}
.cabinet-section-head h2{margin:0;font-size:24px;line-height:1.15;}
.cabinet-section-head p{margin:0;color:#667085;}
.cabinet-help-list,.cabinet-favorites-list{grid-template-columns:repeat(2,minmax(0,1fr));}
.cabinet-log-list{display:grid;gap:10px;}
.cabinet-log-item{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:center;border:1px solid #dcefd6;border-radius:18px;background:#fbfff9;padding:12px 14px;}
.cabinet-log-item>strong{font-size:20px;color:#2f8f16;font-weight:900;text-align:center;}
.cabinet-log-item b{display:block;margin-bottom:4px;}
.cabinet-log-item a{display:inline-block;color:#2f7d13;font-weight:850;text-decoration:none;margin-right:8px;}
.cabinet-log-item small{display:block;color:#667085;margin-top:4px;}
.cabinet-empty{display:grid!important;gap:6px!important;text-align:left!important;}
.cabinet-empty b{font-size:18px;color:#172033;}
.cabinet-empty span{color:#667085;}
@media (min-width:1200px){
  .cabinet-help-list,.cabinet-favorites-list{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:760px){
  .cabinet-page{padding:14px 12px 28px!important;}
  .cabinet-stats-row{grid-template-columns:1fr!important;gap:10px!important;}
  .cabinet-stats-row>div{padding:15px 16px!important;border-radius:20px!important;}
  .cabinet-stats-row b{font-size:26px!important;}
  .cabinet-section-card{padding:14px!important;border-radius:24px!important;}
  .cabinet-section-head{display:grid!important;gap:4px!important;margin-bottom:12px!important;}
  .cabinet-section-head h2{font-size:23px!important;}
  .cabinet-help-list,.cabinet-favorites-list{grid-template-columns:1fr!important;}
  .cabinet-log-item{grid-template-columns:52px minmax(0,1fr)!important;border-radius:18px!important;padding:12px!important;}
}

/* 2026-06-29: публичный профиль — рейтинг как статичный бейдж, без перехода в личный журнал */
.profile-stat-row .profile-stat-static{
  text-decoration:none;
  background:#f3fbef;
  border:1px solid #dbeccc;
  border-radius:16px;
  color:#2f6c22;
  padding:9px 12px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-weight:900;
  min-height:42px;
}
.profile-stat-row .profile-stat-static > span{font-size:16px;line-height:1;}
.profile-stat-row .profile-stat-static b{font-size:17px;line-height:1;}
.profile-stat-row .profile-stat-static em{font-style:normal;font-size:12px;color:#5c7654;font-weight:800;}
@media (max-width: 720px){
  .profile-stat-row .profile-stat-static{
    min-height:58px!important;
    border-radius:18px!important;
    padding:8px 6px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    gap:3px!important;
  }
  .profile-stat-row .profile-stat-static > span{font-size:18px!important;}
  .profile-stat-row .profile-stat-static b{font-size:19px!important;}
  .profile-stat-row .profile-stat-static em{font-size:11px!important;line-height:1.05!important;}
}
@media (max-width: 520px){
  .profile-stat-row .profile-stat-static{height:34px!important;min-height:34px!important;padding:0 8px!important;font-size:12px!important;}
  .profile-stat-row .profile-stat-static em{font-size:11px!important;}
}

/* ===== v1.6.2: compact rating history on My Help page ===== */
.my-help-page .cabinet-log-list{
  gap:8px;
}
.my-help-page .cabinet-log-item{
  min-height:0;
  grid-template-columns:52px minmax(0,1fr);
  gap:12px;
  padding:9px 12px;
  border-radius:16px;
}
.my-help-page .cabinet-log-item>strong{
  font-size:18px;
  line-height:1;
}
.my-help-page .cabinet-log-item b{
  margin:0 0 2px;
  font-size:15px;
  line-height:1.25;
}
.my-help-page .cabinet-log-item a{
  margin:0;
  font-size:15px;
  line-height:1.25;
}
.my-help-page .cabinet-log-item small{
  margin-top:2px;
  font-size:13px;
  line-height:1.25;
}
.my-help-page .cabinet-show-more{
  display:flex;
  align-items:center;
  justify-content:center;
  margin:12px auto 0;
  min-height:42px;
  padding:0 22px;
}
@media(max-width:700px){
  .my-help-page .cabinet-log-list{
    gap:10px!important;
  }
  .my-help-page .cabinet-log-item{
    grid-template-columns:44px minmax(0,1fr)!important;
    gap:10px!important;
    padding:12px!important;
    border-radius:18px!important;
  }
  .my-help-page .cabinet-log-item>strong{
    font-size:18px!important;
    text-align:left!important;
  }
  .my-help-page .cabinet-log-item b{
    font-size:18px!important;
    line-height:1.22!important;
  }
  .my-help-page .cabinet-log-item a{
    display:block!important;
    font-size:18px!important;
    line-height:1.22!important;
    margin-top:4px!important;
  }
  .my-help-page .cabinet-log-item small{
    font-size:15px!important;
    margin-top:4px!important;
  }
}

/* ===== v1.6.3: история рейтинга как журнал событий помощника ===== */
.my-help-page .cabinet-log-event{
  position:relative;
  background:linear-gradient(180deg,#fbfff9 0%,#f7fcf4 100%);
  border-color:#d6ebce;
}
.my-help-page .cabinet-log-points{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:42px;
  border-radius:999px;
  background:#eef9e9;
  box-shadow:inset 0 0 0 1px rgba(47,143,22,.12);
  font-weight:950!important;
  letter-spacing:-.02em;
}
.my-help-page .cabinet-log-body b{
  display:flex;
  align-items:center;
  gap:7px;
  color:#172033;
}
.my-help-page .cabinet-log-icon{
  width:24px;
  height:24px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  border-radius:999px;
  background:#eef9e9;
  font-size:15px;
  line-height:1;
}
.my-help-page .cabinet-log-event a{
  display:block;
  color:#257a10;
  font-weight:900;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.my-help-page .cabinet-log-help_confirmed .cabinet-log-icon,
.my-help-page .cabinet-log-announcement_closed .cabinet-log-icon{
  background:#e9f8e8;
}
.my-help-page .cabinet-log-review_received .cabinet-log-icon,
.my-help-page .cabinet-log-status_awarded .cabinet-log-icon{
  background:#fff7d6;
}
.my-help-page .cabinet-log-activity_bonus .cabinet-log-icon{
  background:#f2ecff;
}
.my-help-page .cabinet-log-rating_decrease .cabinet-log-points{
  color:#b42318!important;
  background:#fff1f0;
}
.my-help-page .cabinet-log-rating_decrease .cabinet-log-icon{
  background:#fff1f0;
}
@media(max-width:700px){
  .my-help-page .cabinet-log-points{
    min-width:38px!important;
    min-height:38px!important;
    font-size:17px!important;
    justify-content:center!important;
    text-align:center!important;
  }
  .my-help-page .cabinet-log-body b{
    gap:6px!important;
  }
  .my-help-page .cabinet-log-icon{
    width:22px!important;
    height:22px!important;
    font-size:14px!important;
  }
  .my-help-page .cabinet-log-event a{
    white-space:normal!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
}

/* REP: Reputation settings admin page */
.pomogite-reputation-settings-page .reputation-settings-form input,
.pomogite-reputation-settings-page .reputation-settings-form select{
  width:100%; margin-top:10px; border:1px solid #dbeccd; border-radius:12px; padding:10px 12px; background:#fff; font:inherit; color:#172033;
}
.pomogite-reputation-settings-page .reputation-settings-grid label{display:block;}
.pomogite-reputation-settings-page .reputation-settings-actions{margin-top:16px; justify-content:flex-start;}
.pomogite-reputation-settings-page .secondary-btn{border:1px solid #dbeccd; border-radius:14px; padding:12px 18px; background:#f6fff0; color:#2f6b07; font-weight:800; cursor:pointer;}
.pomogite-reputation-settings-page .secondary-btn:hover{background:#edfbe5;}

/* Admin Panel v2: карточки как навигация, один открытый раздел */
.pomogite-stats-page-compact .stats-item.is-active{
  transform: translateY(-2px);
  box-shadow: 0 12px 30px rgba(15, 23, 42, .12);
  border-color: rgba(34, 197, 94, .45);
}
.pomogite-stats-page-compact .admin-detail-section[open]{
  scroll-margin-top: 18px;
}

/* Admin Panel v2 — performance/UX helpers */
.admin-filter-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0 14px}
.admin-filter-form input{min-width:260px;max-width:420px;flex:1;border:1px solid #d6ebce;border-radius:12px;padding:10px 12px;background:#fff;color:#102040;font-weight:600}
.admin-filter-form input:focus{outline:none;border-color:#79c65b;box-shadow:0 0 0 3px rgba(58,174,26,.12)}
.admin-limit-note{margin-top:10px!important;font-size:13px!important}
.admin-architecture-note{margin-top:8px;margin-bottom:16px;background:#f4fbef;border:1px solid #dff2d6;border-radius:14px;padding:10px 12px;color:#4d5d72}

/* Admin Panel v2.1 — filters for limited admin lists */
.admin-inline-filters{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin:0 0 12px;
  color:#607080;
  font-size:13px;
}
.admin-inline-filters .secondary-btn.is-active{
  background:#dff5d8;
  border-color:#70c45c;
  color:#1f7a13;
  font-weight:800;
}

/* Admin Panel v2.1 — moderation grouping and status badges */
.pomogite-stats-page-compact .admin-subsection{
  border:1px solid #dff0d6;
  border-radius:14px;
  background:#fbfff8;
  margin:10px 0;
  overflow:hidden;
}
.pomogite-stats-page-compact .admin-subsection > summary{
  cursor:pointer;
  list-style:none;
  padding:10px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-weight:800;
  color:#102044;
}
.pomogite-stats-page-compact .admin-subsection > summary::-webkit-details-marker{display:none;}
.pomogite-stats-page-compact .admin-subsection > summary b{
  min-width:28px;
  min-height:24px;
  padding:2px 8px;
  border-radius:999px;
  background:#eaf8df;
  color:#188000;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.pomogite-stats-page-compact .admin-subsection[open] > summary{
  border-bottom:1px solid #e6f3df;
}
.pomogite-stats-page-compact .admin-status-badge{
  display:inline-flex;
  align-items:center;
  gap:3px;
  margin-left:6px;
  padding:2px 8px;
  border-radius:999px;
  font-size:11px;
  line-height:1.2;
  font-weight:800;
  vertical-align:middle;
  background:#eef7e8;
  color:#216b12;
  border:1px solid #d7efcb;
}
.pomogite-stats-page-compact .admin-status-badge.status-hidden,
.pomogite-stats-page-compact .admin-status-badge.status-deleted{
  background:#fff0f0;
  color:#b3261e;
  border-color:#ffd5d5;
}
.pomogite-stats-page-compact .admin-status-badge.status-closed{
  background:#eef7ff;
  color:#155c9d;
  border-color:#d8ebff;
}
.pomogite-stats-page-compact .admin-status-badge.status-pending{
  background:#fff7e6;
  color:#9b5d00;
  border-color:#ffe4b8;
}
.pomogite-stats-page-compact .admin-report-groups,
.pomogite-stats-page-compact .admin-security-groups{
  display:block;
}
.pomogite-stats-page-compact .admin-filter-form-ads{
  margin-top:8px;
  margin-bottom:10px;
}


/* Security levels in admin panel */
.pomogite-stats-page-compact .security-level{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:2px 7px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  background:#eef7e8;
  color:#216b12;
  border:1px solid #d7efcb;
}
.pomogite-stats-page-compact .security-level-warning{
  background:#fff7e6;
  color:#9b5d00;
  border-color:#ffe4b8;
}
.pomogite-stats-page-compact .security-level-danger{
  background:#fff4e8;
  color:#a64b00;
  border-color:#ffd9b0;
}
.pomogite-stats-page-compact .security-level-critical{
  background:#fff0f0;
  color:#b3261e;
  border-color:#ffd5d5;
}

/* Admin Panel v2.2 — top attention panel */
.pomogite-stats-page-compact .admin-attention-panel{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:12px 0 16px;
  padding:13px 14px;
  border:1px solid #dff0d6;
  border-radius:16px;
  background:#fbfff8;
}
.pomogite-stats-page-compact .admin-attention-title b{
  display:block;
  color:#172033;
  font-size:15px;
  line-height:1.2;
}
.pomogite-stats-page-compact .admin-attention-title small{
  display:block;
  margin-top:3px;
  color:#657083;
  font-size:12px;
}
.pomogite-stats-page-compact .admin-attention-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:8px;
}
.pomogite-stats-page-compact .admin-attention-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:32px;
  padding:6px 10px;
  border:1px solid #d7efcb;
  border-radius:999px;
  background:#fff;
  color:#1f5d12;
  text-decoration:none;
  font-size:12px;
  font-weight:800;
}
.pomogite-stats-page-compact .admin-attention-link:hover{
  background:#eef9e9;
  border-color:#8bd06c;
}
.pomogite-stats-page-compact .admin-attention-link b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:22px;
  height:22px;
  padding:0 7px;
  border-radius:999px;
  background:#eaf8df;
  color:#188000;
}
.pomogite-stats-page-compact .admin-attention-empty{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:6px 10px;
  border-radius:999px;
  background:#eef9e9;
  color:#1f7a13;
  font-size:12px;
  font-weight:800;
}
.pomogite-stats-page-compact .security-subsection:not([open]) .admin-detail-list,
.pomogite-stats-page-compact .security-subsection:not([open]) .empty{
  display:none;
}
@media(max-width:760px){
  .pomogite-stats-page-compact .admin-attention-panel{align-items:flex-start;flex-direction:column;}
  .pomogite-stats-page-compact .admin-attention-actions{justify-content:flex-start;}
}

/* Admin Panel v3 — компактный стартовый экран и защита от длинных простыней */
.pomogite-stats-page-compact .admin-architecture-note{
  border-color:#d9edce;
  background:#f7fff2;
}
.pomogite-stats-page-compact .admin-detail-section:not([open]){
  padding-top:0;
  padding-bottom:0;
  background:#fbfff8;
}
.pomogite-stats-page-compact .admin-detail-section:not([open]) summary{
  min-height:44px;
}
.pomogite-stats-page-compact .admin-detail-section[open]{
  box-shadow:0 14px 38px rgba(38,106,22,.08);
}
.pomogite-stats-page-compact .admin-security-groups{
  display:grid;
  gap:10px;
}
.pomogite-stats-page-compact .admin-security-groups .admin-subsection:not([open]){
  padding:0;
  background:#fffefa;
}
.pomogite-stats-page-compact .admin-security-groups .admin-subsection:not([open]) > summary{
  min-height:38px;
}
.pomogite-stats-page-compact .admin-attention-link{
  scroll-margin-top:110px;
}
.pomogite-stats-page-compact .admin-attention-link:hover,
.pomogite-stats-page-compact .stats-item:hover{
  transform:translateY(-1px);
}
.pomogite-stats-page-compact .admin-detail-body > .stats-note:last-child{
  margin-bottom:0;
}
@media (max-width: 720px){
  .pomogite-stats-page-compact .admin-detail-section:not([open]) summary{min-height:42px;}
}


/* Admin Panel v4 — dashboard -> one workspace, ready for very large traffic */
.pomogite-stats-page-compact .admin-architecture-note{
  margin-bottom:10px !important;
}
.pomogite-stats-page-compact .admin-workspace-empty{
  margin:10px 0 0;
  padding:12px 14px;
  border:1px dashed #cfe9c5;
  border-radius:14px;
  background:#fbfff8;
  color:#607080;
  font-size:13px;
  line-height:1.35;
  text-align:center;
}
.pomogite-stats-page-compact .admin-workspace-empty[hidden]{display:none!important;}
.pomogite-stats-page-compact .admin-accordion{
  margin-top:10px;
  display:block !important;
}
.pomogite-stats-page-compact .admin-detail-section{
  display:none !important;
  margin-top:0 !important;
}
.pomogite-stats-page-compact .admin-detail-section.is-work-visible{
  display:block !important;
}
.pomogite-stats-page-compact .admin-detail-section.is-work-visible summary{
  border-bottom:1px solid #e2f0db;
  background:#fbfff8;
}
.pomogite-stats-page-compact .admin-detail-section.is-work-visible summary span::before{
  content:'Рабочий раздел · ';
  color:#718096;
  font-weight:700;
}
.pomogite-stats-page-compact .admin-detail-section:not(.is-work-visible){
  visibility:hidden;
  height:0;
  overflow:hidden;
}
.pomogite-stats-page-compact .stats-grid-compact{
  margin-bottom:0 !important;
}
.pomogite-stats-page-compact .stats-item,
.pomogite-stats-page-compact .admin-attention-link{
  cursor:pointer;
}
.pomogite-stats-page-compact .admin-security-groups .admin-subsection:not([open]) .admin-detail-list,
.pomogite-stats-page-compact .admin-security-groups .admin-subsection:not([open]) .empty,
.pomogite-stats-page-compact .admin-report-groups .admin-subsection:not([open]) .admin-detail-list,
.pomogite-stats-page-compact .admin-report-groups .admin-subsection:not([open]) .empty{
  display:none !important;
}
@media(max-width:900px){
  .pomogite-stats-page-compact .admin-detail-section.is-work-visible summary span::before{content:'';}
}

/* Admin Panel v5 — обзор отдельно, рабочая зона отдельно */
.pomogite-stats-page-compact .admin-architecture-note{
  font-size:12px !important;
  line-height:1.45 !important;
  padding:10px 12px !important;
}
.pomogite-stats-page-compact .stats-grid-compact{
  gap:8px !important;
}
.pomogite-stats-page-compact .stats-grid-compact .stats-item{
  min-height:78px !important;
  padding:12px 14px !important;
  border-radius:13px !important;
}
.pomogite-stats-page-compact .stats-grid-compact .stats-item strong{
  font-size:24px !important;
  line-height:1 !important;
}
.pomogite-stats-page-compact .stats-grid-compact .stats-item small{
  font-size:11px !important;
}
.pomogite-stats-page-compact .admin-attention-panel{
  margin:8px 0 12px !important;
  padding:10px 12px !important;
  border-radius:14px !important;
}
.pomogite-stats-page-compact .admin-workspace-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:12px 0 8px;
  padding:9px 10px;
  border:1px solid #ddecce;
  border-radius:14px;
  background:#fbfff8;
}
.pomogite-stats-page-compact .admin-workspace-toolbar[hidden]{display:none!important;}
.pomogite-stats-page-compact .admin-workspace-title{
  color:#172033;
  font-size:13px;
  font-weight:900;
}
.pomogite-stats-page-compact .admin-detail-section.is-work-visible{
  border-radius:16px !important;
  padding:0 !important;
  overflow:hidden;
}
.pomogite-stats-page-compact .admin-detail-section.is-work-visible > summary{
  min-height:44px !important;
  padding:12px 14px !important;
}
.pomogite-stats-page-compact .admin-detail-section.is-work-visible .admin-detail-body{
  padding:12px !important;
}
.pomogite-stats-page-compact .admin-detail-list{
  gap:7px !important;
}
.pomogite-stats-page-compact .admin-detail-row{
  padding:9px 10px !important;
  border-radius:12px !important;
}
.pomogite-stats-page-compact .admin-subsection{
  border-radius:13px !important;
  margin:0 0 7px !important;
}
.pomogite-stats-page-compact .admin-subsection > summary{
  min-height:36px !important;
  padding:9px 11px !important;
}
.pomogite-stats-page-compact .admin-security-groups .admin-subsection,
.pomogite-stats-page-compact .admin-report-groups .admin-subsection{
  box-shadow:none !important;
}
@media(max-width:760px){
  .pomogite-stats-page-compact .admin-workspace-toolbar{align-items:flex-start;flex-direction:column;}
  .pomogite-stats-page-compact .stats-grid-compact .stats-item{min-height:70px!important;}
}

/* ACP: контекстный выбор получателя помощи в форме объявления */
.help-recipient-box{
  margin:12px 0 14px;
  padding:14px;
  border:1px solid #d9eccd;
  border-radius:16px;
  background:#f8fcf4;
}
.help-recipient-box[hidden]{display:none!important;}
.help-recipient-title{
  font-weight:900;
  color:#172033;
  margin-bottom:10px;
}
.help-recipient-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.help-recipient-options label{
  display:flex;
  align-items:center;
  gap:9px;
  min-height:46px;
  padding:10px 12px;
  border:1px solid #d8e8ce;
  border-radius:14px;
  background:#fff;
  font-weight:800;
  color:#273044;
  cursor:pointer;
}
.help-recipient-options input{
  width:18px;
  height:18px;
  accent-color:var(--green);
}
@media(max-width:700px){
  .help-recipient-options{grid-template-columns:1fr;}
}

/* =====================================================
   REP Mobile UI Polish v1.0 — финальная шлифовка мобильной главной
   Область влияния: только мобильная версия, ПК не меняется.
===================================================== */
.home-latest-title-mobile,
.home-latest-bottom-link{
  display:none;
}

@media (max-width:760px){
  /* Поиск: аккуратное центрирование лупы и текста */
  .home-main-search,
  .home-search-panel .home-main-search-modern{
    align-items:center !important;
  }
  .home-main-search-icon,
  .home-search-panel .home-main-search-modern .home-main-search-icon,
  .home-search-panel-smart .home-main-search-icon{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    height:48px !important;
    min-height:48px !important;
    line-height:1 !important;
    transform:translateY(1px) !important;
  }
  .home-main-search input,
  .home-search-panel .home-main-search-modern input{
    height:48px !important;
    line-height:48px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
  }

  /* Заголовок мобильного блока последних объявлений */
  .home-latest-title-desktop,
  .home-latest-top-link{
    display:none !important;
  }
  .home-latest-title-mobile{
    display:inline !important;
  }
  .home-latest-help .home-section-head{
    display:block !important;
    margin-bottom:16px !important;
  }
  .home-latest-help .home-section-head h2{
    font-size:32px !important;
    line-height:1.08 !important;
    letter-spacing:-.03em !important;
    margin:0 !important;
  }

  /* Нижняя кнопка вместо кнопки в заголовке */
  .home-latest-bottom-link{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-height:46px !important;
    margin:18px 0 0 !important;
    border:1px solid #dcefd4 !important;
    border-radius:18px !important;
    background:#f1faeb !important;
    color:#24710e !important;
    font-size:17px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
    text-decoration:none !important;
    box-shadow:none !important;
  }
  .home-latest-bottom-link:active{
    transform:scale(.99);
  }

  /* Чуть больше воздуха между крупными мобильными секциями */
  .home-content-row{
    margin-top:18px !important;
  }
  .map-area-layout + .home-content-row,
  .visible-announcements-panel + .home-content-row{
    margin-top:22px !important;
  }

  /* Блок шагов внизу: компактнее и спокойнее */
  .home-how-project{
    gap:10px !important;
    padding:14px !important;
    margin-top:14px !important;
    margin-bottom:22px !important;
  }
  .home-how-card{
    padding:13px 14px !important;
    border-radius:18px !important;
    gap:3px !important;
  }
  .home-how-card b{
    font-size:20px !important;
    line-height:1.15 !important;
  }
  .home-how-card span{
    font-size:15px !important;
    line-height:1.28 !important;
  }

  /* Объявления рядом: спокойнее верхняя информационная плашка */
  .map-area-layout .visible-announcements-head p.is-help-mode-hint{
    padding:14px 16px !important;
    border-radius:18px !important;
    line-height:1.32 !important;
  }
  .map-area-layout .visible-announcements-head p.is-help-mode-hint strong{
    line-height:1.22 !important;
  }
  .visible-announcements-list{
    gap:12px !important;
  }

  /* Карточки рядом: ближе к ритму "Недавно добавили" */
  .visible-announcement-card{
    padding:12px !important;
    border-radius:20px !important;
  }
  .visible-dog-meta-row{
    margin-bottom:1px !important;
  }
  .visible-announcement-card b{
    margin-top:2px !important;
  }

  /* Визуальная иерархия бейджей: действие "Помоги" чуть заметнее, карта спокойнее */
  .home-latest-action-help,
  .visible-dog-status{
    border-color:#f1c46f !important;
    background:#fff7e6 !important;
    color:#b06a00 !important;
    font-weight:900 !important;
  }
  .home-latest-action-map,
  .home-map-btn{
    border-color:#dcefd4 !important;
    background:#f1faeb !important;
    color:#24710e !important;
  }
}

@media (min-width:761px){
  .home-latest-title-desktop{
    display:inline !important;
  }
  .home-latest-title-mobile,
  .home-latest-bottom-link{
    display:none !important;
  }
}

/* =====================================================
   REP Mobile UI Polish v1.1 — исправление поиска и заголовка
   Область влияния: только мобильная версия.
===================================================== */
@media (max-width:760px){
  /* Поиск главной управляется модулем home-search-context.css */

  /* Недавно добавили: на мобильном оставляем только нижнюю кнопку */
  .home-latest-help .home-section-head .home-latest-top-link,
  .home-latest-top-link{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    height:0 !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
  }

  .home-latest-help .home-section-head{
    margin-bottom:18px !important;
  }

  .home-latest-help .home-section-head h2{
    font-size:30px !important;
    line-height:1.06 !important;
  }

  .home-latest-bottom-link{
    margin-top:20px !important;
  }

  /* Мелкий ритм карточек: чуть больше воздуха между бейджами и заголовком */
  .home-latest-card strong,
  .visible-announcement-card b{
    margin-top:4px !important;
  }
}

/* =====================================================
   REP Mobile UI Polish v1.2 — финальная мобильная сетка
   Область влияния: только мобильная версия. ПК не затрагивается.
===================================================== */
@media (max-width:760px){
  /* Единый вертикальный ритм крупных блоков */
  .home-redesign{
    padding-left:12px !important;
    padding-right:12px !important;
  }

  .home-urgent-row,
  .map-title-section,
  .map-area-layout,
  .home-content-row,
  .home-latest-help,
  .home-trust-card,
  .home-how-project{
    margin-left:0 !important;
    margin-right:0 !important;
  }

  .map-area-layout{
    margin-bottom:24px !important;
  }

  .home-content-row{
    margin-top:24px !important;
    margin-bottom:24px !important;
  }

  .map-area-layout + .home-content-row,
  .visible-announcements-panel + .home-content-row{
    margin-top:24px !important;
  }

  .home-latest-help{
    padding:22px 16px 16px !important;
    border-radius:24px !important;
  }

  .home-latest-help .home-section-head{
    margin-bottom:16px !important;
  }

  /* Единый стиль заголовков мобильных секций */
  .map-title-section h1,
  .visible-announcements-panel h2,
  .home-latest-help .home-section-head h2,
  .home-trust-card h2{
    font-size:30px !important;
    line-height:1.08 !important;
    letter-spacing:-.035em !important;
    font-weight:950 !important;
    color:#151b2d !important;
  }

  .home-latest-help .home-section-head h2{
    font-size:29px !important;
    white-space:nowrap !important;
  }

  /* Карточки объявлений: единый ритм, чуть более заметное фото */
  .home-latest-grid{
    gap:16px !important;
  }

  .home-latest-card{
    grid-template-columns:92px minmax(0,1fr) auto !important;
    column-gap:12px !important;
    row-gap:5px !important;
    min-height:148px !important;
    padding:13px !important;
    border-radius:18px !important;
  }

  .home-latest-photo,
  .home-latest-card.no-photo .home-latest-photo{
    width:88px !important;
    height:88px !important;
    min-width:88px !important;
    min-height:88px !important;
    max-width:88px !important;
    max-height:88px !important;
    border-radius:15px !important;
  }

  .home-latest-photo img{
    width:88px !important;
    height:88px !important;
    min-height:88px !important;
    border-radius:15px !important;
  }

  .home-latest-card.no-photo .home-latest-placeholder,
  .home-latest-card.no-photo .home-latest-photo > span{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    min-height:44px !important;
  }

  .home-latest-card strong{
    font-size:17px !important;
    line-height:1.14 !important;
    margin-top:4px !important;
  }

  .home-latest-address{
    color:#6b7280 !important;
    font-size:13px !important;
  }

  .home-latest-time{
    color:#7a8493 !important;
    font-size:12.5px !important;
  }

  /* Единые бейджи в карточках */
  .home-latest-badge,
  .home-latest-action-map,
  .home-latest-action-help,
  .visible-dog-chip,
  .visible-dog-status,
  .home-map-btn{
    min-height:25px !important;
    padding:5px 9px !important;
    border-radius:999px !important;
    font-size:11.5px !important;
    line-height:1.05 !important;
    font-weight:850 !important;
    box-sizing:border-box !important;
  }

  .home-latest-action-help,
  .visible-dog-status{
    background:#fff8ed !important;
    border-color:#f0c98b !important;
    color:#b66a00 !important;
  }

  .home-latest-action-map,
  .home-map-btn{
    background:#eef8e8 !important;
    border-color:#d8efcc !important;
    color:#26720f !important;
  }

  /* Кнопки просмотра: единый стиль */
  .home-latest-bottom-link,
  .visible-announcements-more{
    width:100% !important;
    min-height:48px !important;
    border-radius:18px !important;
    padding:12px 16px !important;
    background:#f1faeb !important;
    border:1px solid #dcefd4 !important;
    color:#24710e !important;
    font-size:17px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
    text-align:center !important;
    justify-content:center !important;
    box-shadow:none !important;
  }

  .home-latest-bottom-link{
    margin-top:18px !important;
  }

  .visible-announcements-more{
    margin-top:16px !important;
  }

  /* Объявления рядом: легче информационная плашка и ровнее карточки */
  .visible-announcements-panel{
    border-radius:24px !important;
    padding:20px 16px 16px !important;
  }

  .map-area-layout .visible-announcements-head p.is-help-mode-hint{
    padding:12px 15px !important;
    border-radius:18px !important;
    margin-top:12px !important;
    margin-bottom:14px !important;
  }

  .visible-announcements-list{
    gap:16px !important;
  }

  .visible-announcement-card{
    padding:13px !important;
    border-radius:18px !important;
  }

  .visible-announcement-card b{
    margin-top:4px !important;
  }

  /* Блок «Помоги-Помогу»: чуть легче */
  .home-trust-card{
    padding:22px 18px !important;
    border-radius:24px !important;
    margin-top:24px !important;
  }

  .home-trust-card h2{
    font-size:29px !important;
    margin-bottom:14px !important;
  }

  .home-trust-card ul{
    gap:20px !important;
    margin-top:0 !important;
  }

  .home-trust-card li{
    gap:11px !important;
  }

  .home-trust-card b{
    font-size:20px !important;
    line-height:1.18 !important;
  }

  .home-trust-card small{
    font-size:16px !important;
    line-height:1.32 !important;
  }

  /* Блок 3 шагов: единая высота и спокойные отступы */
  .home-how-project{
    gap:14px !important;
    padding:18px !important;
    margin-top:24px !important;
    margin-bottom:24px !important;
    border-radius:24px !important;
  }

  .home-how-card{
    min-height:92px !important;
    padding:16px 18px !important;
    border-radius:18px !important;
    gap:5px !important;
    justify-content:center !important;
  }

  .home-how-card b{
    font-size:21px !important;
    line-height:1.15 !important;
  }

  .home-how-card span{
    font-size:15.5px !important;
    line-height:1.3 !important;
  }

  /* Карта: только внешний ритм, без изменения самой карты */
  .map-card{
    margin-bottom:24px !important;
  }

  /* Футер: лёгкая финальная полировка */
  .site-footer{
    padding-top:24px !important;
    padding-bottom:24px !important;
  }

  .footer-inner{
    gap:10px !important;
    line-height:1.35 !important;
  }
}

/* legacy mobile search final fix удалён в v6.4.0: заменён модулем home-search-context.css */
/* =====================================================
   REP Mobile Hero Buttons Polish v1.0 — мягкие CTA-кнопки
   Область влияния: только мобильная версия. ПК не затрагивается.
===================================================== */
@media (max-width:760px){
  .home-hero-actions .hero-btn,
  .hero-btn.hero-btn-need,
  .hero-btn.hero-btn-help{
    border-radius:20px !important;
    padding-top:16px !important;
    padding-bottom:16px !important;
    box-shadow:0 10px 22px rgba(23,32,51,.11) !important;
    transition:transform .16s ease, box-shadow .16s ease, filter .16s ease !important;
    -webkit-tap-highlight-color:transparent !important;
  }

  .home-hero-actions .hero-btn:active,
  .hero-btn.hero-btn-need:active,
  .hero-btn.hero-btn-help:active{
    transform:translateY(1px) scale(.992) !important;
    box-shadow:0 6px 15px rgba(23,32,51,.10) !important;
  }

  .home-hero-actions .hero-btn-need,
  .hero-btn-need{
    background:linear-gradient(180deg,#ff9f18 0%,#ff8a00 52%,#ef7800 100%) !important;
    color:#fff !important;
  }

  .home-hero-actions .hero-btn-help,
  .hero-btn-help{
    background:linear-gradient(180deg,#32b72b 0%,#239a1f 52%,#177a14 100%) !important;
    color:#fff !important;
  }
}


/* =====================================================
   REP Mobile UI Final Micro Polish v1.0 — финальный UX-аудит
   Область влияния: только мобильная версия. ПК не затрагивается.
===================================================== */
@media (max-width:760px){
  /* Блок «Помоги-Помогу»: чуть легче, без изменения структуры */
  .home-trust-card h2{
    font-size:28px !important;
    line-height:1.08 !important;
    margin-bottom:12px !important;
  }
  .home-trust-card ul{
    gap:22px !important;
  }
  .home-trust-card small{
    color:#6f7786 !important;
  }

  /* Блок «3 шага»: фирменный акцент на номерах */
  .home-how-card .home-how-num{
    color:#24710e !important;
    font-weight:950 !important;
  }

  /* Кнопка рядом: более короткий текст уже в JS, стиль оставляем единым */
  .visible-show-all,
  .visible-announcements-more{
    letter-spacing:-.01em !important;
  }
}

/* =====================================================
   REP Mobile UI Polish v1.4 — "Недавно добавили" ближе к "Объявления рядом"
   Область влияния: только мобильная версия. ПК не затрагивается.
===================================================== */
@media (max-width:760px){
  /* Секция "Недавно добавили" получает тот же спокойный контейнерный ритм,
     что и блок "Объявления рядом" */
  .home-latest-help{
    padding:20px 16px 16px !important;
    border-radius:24px !important;
    background:#fff !important;
    border:1px solid #eef3eb !important;
    box-shadow:0 18px 42px rgba(31,82,18,.06) !important;
    margin-top:24px !important;
  }

  .home-latest-help .home-section-head{
    display:block !important;
    margin:0 0 14px !important;
  }

  .home-latest-help .home-section-head h2{
    font-size:30px !important;
    line-height:1.08 !important;
    letter-spacing:-.035em !important;
    font-weight:950 !important;
    color:#151b2d !important;
    margin:0 !important;
    white-space:normal !important;
  }

  .home-latest-title-mobile{
    display:inline !important;
  }

  /* Карточки "Недавно добавили" приводим к мобильной модели "Объявления рядом":
     фото слева, справа бейджи, заголовок, адрес и время */
  .home-latest-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .home-latest-card{
    display:grid !important;
    grid-template-columns:64px minmax(0,1fr) auto !important;
    grid-template-rows:auto auto auto auto !important;
    column-gap:12px !important;
    row-gap:5px !important;
    align-items:start !important;
    width:100% !important;
    min-height:0 !important;
    height:auto !important;
    padding:12px !important;
    border:1px solid #dcefd4 !important;
    border-radius:18px !important;
    background:#fff !important;
    box-shadow:none !important;
    overflow:hidden !important;
    text-align:left !important;
  }

  .home-latest-card:hover{
    transform:none !important;
    box-shadow:none !important;
  }

  .home-latest-photo,
  .home-latest-card.no-photo .home-latest-photo{
    grid-column:1 !important;
    grid-row:1 / span 5 !important;
    width:64px !important;
    height:64px !important;
    min-width:64px !important;
    min-height:64px !important;
    max-width:64px !important;
    max-height:64px !important;
    margin:0 !important;
    border-radius:14px !important;
    overflow:hidden !important;
    background:#eff9ea !important;
    align-self:start !important;
  }

  .home-latest-photo img{
    width:64px !important;
    height:64px !important;
    min-width:64px !important;
    min-height:64px !important;
    border-radius:14px !important;
    object-fit:cover !important;
    display:block !important;
  }

  .home-latest-card.no-photo .home-latest-placeholder,
  .home-latest-card.no-photo .home-latest-photo > span{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
    font-size:20px !important;
  }

  .home-latest-badge{
    grid-column:2 !important;
    grid-row:1 !important;
    width:auto !important;
    max-width:100% !important;
    min-height:24px !important;
    margin:0 !important;
    padding:5px 8px !important;
    border-radius:999px !important;
    font-size:11.5px !important;
    line-height:1.05 !important;
    font-weight:850 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-action-help{
    grid-column:3 !important;
    grid-row:1 !important;
    align-self:start !important;
    justify-self:end !important;
    min-height:24px !important;
    margin:0 !important;
    padding:5px 8px !important;
    border-radius:999px !important;
    font-size:11.5px !important;
    line-height:1.05 !important;
    white-space:nowrap !important;
  }

  .home-latest-action-map{
    grid-column:2 / 4 !important;
    grid-row:2 !important;
    justify-self:start !important;
    min-height:24px !important;
    margin:0 !important;
    padding:5px 8px !important;
    border-radius:999px !important;
    font-size:11.5px !important;
    line-height:1.05 !important;
    white-space:nowrap !important;
  }

  .home-latest-card strong{
    grid-column:2 / 4 !important;
    grid-row:3 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    min-height:0 !important;
    max-height:42px !important;
    margin:1px 0 0 !important;
    padding:0 !important;
    font-size:17px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
    color:#111827 !important;
  }

  .home-latest-address{
    grid-column:2 / 4 !important;
    grid-row:4 !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    color:#6b7280 !important;
    font-size:12px !important;
    line-height:1.18 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-address-icon{
    display:none !important;
  }

  .home-latest-bottom{
    grid-column:2 / 4 !important;
    grid-row:5 !important;
    width:100% !important;
    margin:1px 0 0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
  }

  .home-latest-bottom .home-latest-time,
  .home-latest-time,
  .home-latest-card small{
    margin:0 !important;
    padding:0 !important;
    color:#7a8493 !important;
    font-size:12px !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom .home-map-btn{
    display:none !important;
  }

  .home-latest-bottom-link{
    min-height:44px !important;
    margin-top:14px !important;
    border-radius:18px !important;
    font-size:17px !important;
  }
}

/* =====================================================
   REP Mobile UI Polish v1.5 — "Недавно добавили" отдельный блок, но в едином стиле
   Область влияния: только мобильная версия. ПК не затрагивается.
   Цель: сохранить смысловую разницу между "Объявления рядом" и "Недавно добавили",
   убрать зеленый фон под реальными фотографиями.
===================================================== */
@media (max-width:760px){
  /* "Недавно добавили" остается самостоятельным блоком, а не копией "Объявления рядом" */
  .home-latest-help{
    padding:20px 16px 18px !important;
    border-radius:24px !important;
    background:#fff !important;
    border:1px solid #eef3eb !important;
    box-shadow:0 18px 42px rgba(31,82,18,.06) !important;
  }

  .home-latest-help .home-section-head{
    display:block !important;
    margin:0 0 14px !important;
  }

  .home-latest-help .home-section-head h2{
    font-size:30px !important;
    line-height:1.08 !important;
    letter-spacing:-.035em !important;
    font-weight:950 !important;
    color:#151b2d !important;
    margin:0 !important;
  }

  .home-latest-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:13px !important;
  }

  /* Карточка чуть крупнее, чем "Объявления рядом", потому что это общая лента новых объявлений */
  .home-latest-card{
    display:grid !important;
    grid-template-columns:78px minmax(0,1fr) auto !important;
    grid-template-rows:auto auto auto auto !important;
    column-gap:13px !important;
    row-gap:6px !important;
    align-items:start !important;
    width:100% !important;
    min-height:138px !important;
    height:auto !important;
    padding:14px !important;
    border:1px solid #e2efdc !important;
    border-radius:20px !important;
    background:#fff !important;
    box-shadow:none !important;
    overflow:hidden !important;
    text-align:left !important;
  }

  .home-latest-card:hover{
    transform:none !important;
    box-shadow:none !important;
  }

  /* Реальное фото без зеленой подложки */
  .home-latest-card.has-photo .home-latest-photo,
  .home-latest-card.has-photo .home-latest-photo:hover,
  .home-latest-card.has-photo .home-latest-photo:focus{
    grid-column:1 !important;
    grid-row:1 / span 5 !important;
    width:78px !important;
    height:78px !important;
    min-width:78px !important;
    min-height:78px !important;
    max-width:78px !important;
    max-height:78px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:16px !important;
    overflow:hidden !important;
    background:#fff !important;
    align-self:start !important;
  }

  .home-latest-card.has-photo .home-latest-photo img{
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    max-width:none !important;
    max-height:none !important;
    display:block !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:16px !important;
    background:#fff !important;
  }

  /* Зеленая подложка остается только у объявлений без фото */
  .home-latest-card.no-photo .home-latest-photo{
    grid-column:1 !important;
    grid-row:1 / span 5 !important;
    width:78px !important;
    height:78px !important;
    min-width:78px !important;
    min-height:78px !important;
    max-width:78px !important;
    max-height:78px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:16px !important;
    overflow:hidden !important;
    background:#eff9ea !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .home-latest-card.no-photo .home-latest-placeholder,
  .home-latest-card.no-photo .home-latest-photo > span{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    min-height:42px !important;
    border-radius:14px !important;
    font-size:22px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .home-latest-badge{
    grid-column:2 !important;
    grid-row:1 !important;
    width:auto !important;
    max-width:100% !important;
    min-height:25px !important;
    margin:0 !important;
    padding:6px 9px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.05 !important;
    font-weight:850 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-action-help{
    grid-column:3 !important;
    grid-row:1 !important;
    align-self:start !important;
    justify-self:end !important;
    min-height:25px !important;
    margin:0 !important;
    padding:6px 9px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.05 !important;
    white-space:nowrap !important;
  }

  .home-latest-action-map{
    grid-column:2 / 4 !important;
    grid-row:2 !important;
    justify-self:start !important;
    min-height:25px !important;
    margin:0 !important;
    padding:6px 9px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.05 !important;
    white-space:nowrap !important;
  }

  .home-latest-card strong{
    grid-column:2 / 4 !important;
    grid-row:3 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    min-height:0 !important;
    max-height:46px !important;
    margin:2px 0 0 !important;
    padding:0 !important;
    font-size:18px !important;
    line-height:1.18 !important;
    font-weight:900 !important;
    color:#111827 !important;
  }

  .home-latest-address{
    grid-column:2 / 4 !important;
    grid-row:4 !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    color:#6b7280 !important;
    font-size:13px !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-address-icon{
    display:none !important;
  }

  .home-latest-bottom{
    grid-column:2 / 4 !important;
    grid-row:5 !important;
    width:100% !important;
    margin:2px 0 0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
  }

  .home-latest-bottom .home-latest-time,
  .home-latest-time,
  .home-latest-card small{
    margin:0 !important;
    padding:0 !important;
    color:#7a8493 !important;
    font-size:12.5px !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom .home-map-btn{
    display:none !important;
  }

  .home-latest-bottom-link{
    min-height:44px !important;
    margin-top:14px !important;
    border-radius:18px !important;
    font-size:17px !important;
  }
}

/* =====================================================
   REP Mobile UI Polish v1.6 — компактный блок "Недавно добавили"
   Область влияния: только мобильная версия. ПК не затрагивается.
   Цель: сохранить смысловую разницу с "Объявления рядом", но убрать
   избыточную высоту карточек и привести блок к общему мобильному ритму.
===================================================== */
@media (max-width:760px){
  .home-latest-help{
    padding:18px 14px 16px !important;
    border-radius:24px !important;
  }

  .home-latest-help .home-section-head{
    margin:0 0 12px !important;
  }

  .home-latest-help .home-section-head h2{
    font-size:28px !important;
    line-height:1.08 !important;
    letter-spacing:-.035em !important;
  }

  .home-latest-grid{
    gap:12px !important;
  }

  /* Карточка остается самостоятельной, но больше не растягивается пустотой вниз */
  .home-latest-card{
    grid-template-columns:76px minmax(0,1fr) auto !important;
    grid-template-rows:auto auto auto auto auto !important;
    column-gap:12px !important;
    row-gap:4px !important;
    min-height:0 !important;
    height:158px !important;
    max-height:158px !important;
    padding:12px !important;
    border-radius:20px !important;
    align-content:start !important;
    overflow:hidden !important;
  }

  .home-latest-card.has-photo .home-latest-photo,
  .home-latest-card.no-photo .home-latest-photo{
    width:76px !important;
    height:76px !important;
    min-width:76px !important;
    min-height:76px !important;
    max-width:76px !important;
    max-height:76px !important;
    border-radius:15px !important;
  }

  .home-latest-card.has-photo .home-latest-photo{
    background:transparent !important;
  }

  .home-latest-card.has-photo .home-latest-photo img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:15px !important;
    background:transparent !important;
  }

  .home-latest-card.no-photo .home-latest-photo{
    background:#eff9ea !important;
  }

  .home-latest-card.no-photo .home-latest-placeholder,
  .home-latest-card.no-photo .home-latest-photo > span{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
    border-radius:13px !important;
    font-size:21px !important;
  }

  .home-latest-badge,
  .home-latest-action-help,
  .home-latest-action-map{
    min-height:23px !important;
    padding:5px 8px !important;
    font-size:11.5px !important;
    line-height:1.05 !important;
  }

  .home-latest-card strong{
    max-height:40px !important;
    margin:2px 0 0 !important;
    font-size:17px !important;
    line-height:1.16 !important;
  }

  .home-latest-address{
    font-size:12.5px !important;
    line-height:1.18 !important;
  }

  .home-latest-bottom{
    margin:1px 0 0 !important;
  }

  .home-latest-bottom .home-latest-time,
  .home-latest-time,
  .home-latest-card small{
    font-size:12px !important;
    line-height:1.15 !important;
  }

  .home-latest-bottom-link{
    min-height:42px !important;
    margin-top:12px !important;
    border-radius:17px !important;
    font-size:16.5px !important;
  }
}

/* =====================================================
   REP Mobile UX — Latest announcements show-more flow
   Область влияния: только мобильная версия. ПК не затрагивается.
   Решение: блок "Недавно добавили" показывает 3 карточки и раскрывает остальные по кнопке.
===================================================== */
@media (max-width:760px){
  .map-area-layout + .home-content-row,
  .visible-announcements-panel + .home-content-row,
  .home-content-row{
    margin-top:12px !important;
  }

  .home-latest-help{
    margin-top:0 !important;
  }

  .home-latest-card.is-mobile-extra{
    display:none !important;
  }

  .home-latest-card.is-mobile-extra.is-visible{
    display:grid !important;
  }

  .home-latest-bottom-link{
    appearance:none !important;
    -webkit-appearance:none !important;
    cursor:pointer !important;
  }
}

@media (min-width:761px){
  .home-latest-card.is-mobile-extra{
    display:flex !important;
  }
}


/* =====================================================
   REP Mobile UI Polish v1.7 — restore preferred "Недавно добавили" cards
   Область влияния: только мобильная версия. ПК не затрагивается.
   Решение: возвращаем крупную карточку/фото из удачного варианта
   и уменьшаем только внешний зазор между блоками.
===================================================== */
@media (max-width:760px){
  /* Уменьшаем только внешний разрыв после блока "Объявления рядом" */
  .map-area-layout + .home-content-row,
  .visible-announcements-panel + .home-content-row,
  .home-content-row{
    margin-top:-8px !important;
  }

  .home-latest-help{
    margin-top:0 !important;
    padding:20px 16px 18px !important;
    border-radius:24px !important;
    background:#fff !important;
    border:1px solid #eef3eb !important;
    box-shadow:0 18px 42px rgba(31,82,18,.06) !important;
  }

  .home-latest-help .home-section-head{
    display:block !important;
    margin:0 0 14px !important;
  }

  .home-latest-help .home-section-head h2{
    font-size:30px !important;
    line-height:1.08 !important;
    letter-spacing:-.035em !important;
    font-weight:950 !important;
    color:#151b2d !important;
    margin:0 !important;
  }

  .home-latest-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:13px !important;
  }

  /* Возвращаем удачную крупную карточку: без фиксированной маленькой высоты */
  .home-latest-card{
    display:grid !important;
    grid-template-columns:78px minmax(0,1fr) auto !important;
    grid-template-rows:auto auto auto auto auto !important;
    column-gap:13px !important;
    row-gap:6px !important;
    align-items:start !important;
    width:100% !important;
    min-height:138px !important;
    height:auto !important;
    max-height:none !important;
    padding:14px !important;
    border:1px solid #e2efdc !important;
    border-radius:20px !important;
    background:#fff !important;
    box-shadow:none !important;
    overflow:hidden !important;
    text-align:left !important;
    align-content:start !important;
  }

  .home-latest-card:hover{
    transform:none !important;
    box-shadow:none !important;
  }

  .home-latest-card.has-photo .home-latest-photo,
  .home-latest-card.has-photo .home-latest-photo:hover,
  .home-latest-card.has-photo .home-latest-photo:focus{
    grid-column:1 !important;
    grid-row:1 / span 5 !important;
    width:78px !important;
    height:78px !important;
    min-width:78px !important;
    min-height:78px !important;
    max-width:78px !important;
    max-height:78px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:16px !important;
    overflow:hidden !important;
    background:#fff !important;
    align-self:start !important;
  }

  .home-latest-card.has-photo .home-latest-photo img{
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    max-width:none !important;
    max-height:none !important;
    display:block !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:16px !important;
    background:#fff !important;
  }

  .home-latest-card.no-photo .home-latest-photo{
    grid-column:1 !important;
    grid-row:1 / span 5 !important;
    width:78px !important;
    height:78px !important;
    min-width:78px !important;
    min-height:78px !important;
    max-width:78px !important;
    max-height:78px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:16px !important;
    overflow:hidden !important;
    background:#eff9ea !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .home-latest-card.no-photo .home-latest-placeholder,
  .home-latest-card.no-photo .home-latest-photo > span{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    min-height:42px !important;
    border-radius:14px !important;
    font-size:22px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .home-latest-badge{
    grid-column:2 !important;
    grid-row:1 !important;
    width:auto !important;
    max-width:100% !important;
    min-height:25px !important;
    margin:0 !important;
    padding:6px 9px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.05 !important;
    font-weight:850 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-action-help{
    grid-column:3 !important;
    grid-row:1 !important;
    align-self:start !important;
    justify-self:end !important;
    min-height:25px !important;
    margin:0 !important;
    padding:6px 9px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.05 !important;
    white-space:nowrap !important;
  }

  .home-latest-action-map{
    grid-column:2 / 4 !important;
    grid-row:2 !important;
    justify-self:start !important;
    min-height:25px !important;
    margin:0 !important;
    padding:6px 9px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.05 !important;
    white-space:nowrap !important;
  }

  .home-latest-card strong{
    grid-column:2 / 4 !important;
    grid-row:3 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    min-height:0 !important;
    max-height:46px !important;
    margin:2px 0 0 !important;
    padding:0 !important;
    font-size:18px !important;
    line-height:1.18 !important;
    font-weight:900 !important;
    color:#111827 !important;
  }

  .home-latest-address{
    grid-column:2 / 4 !important;
    grid-row:4 !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    color:#6b7280 !important;
    font-size:13px !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-address-icon{
    display:none !important;
  }

  .home-latest-bottom{
    grid-column:2 / 4 !important;
    grid-row:5 !important;
    width:100% !important;
    margin:2px 0 0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
  }

  .home-latest-bottom .home-latest-time,
  .home-latest-time,
  .home-latest-card small{
    margin:0 !important;
    padding:0 !important;
    color:#7a8493 !important;
    font-size:12.5px !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom .home-map-btn{
    display:none !important;
  }

  .home-latest-bottom-link{
    min-height:44px !important;
    margin-top:14px !important;
    border-radius:18px !important;
    font-size:17px !important;
  }

  .home-latest-card.is-mobile-extra{
    display:none !important;
  }

  .home-latest-card.is-mobile-extra.is-visible{
    display:grid !important;
  }
}

/* =====================================================
   REP Mobile Latest Final Restore v1.6
   Цель: вернуть удачную компактную высоту карточек "Недавно добавили",
   сохранить крупное фото и уменьшить только внешний зазор между блоками.
   Область влияния: только мобильная версия. ПК не затрагивается.
===================================================== */
@media (max-width:760px){
  /* Убираем лишний внешний разрыв между "Объявления рядом" и "Недавно добавили" */
  .map-area-layout{
    margin-bottom:12px !important;
  }

  .home-content-row,
  .map-area-layout + .home-content-row,
  .visible-announcements-panel + .home-content-row{
    margin-top:10px !important;
    margin-bottom:22px !important;
  }

  .home-latest-help{
    margin-top:0 !important;
    padding:20px 16px 16px !important;
    border-radius:24px !important;
    background:#fff !important;
  }

  .home-latest-help .home-section-head{
    margin:0 0 14px !important;
  }

  .home-latest-help .home-section-head h2{
    font-size:30px !important;
    line-height:1.08 !important;
    letter-spacing:-.035em !important;
    white-space:nowrap !important;
  }

  .home-latest-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  /* Главный фикс: карточка больше не имеет фиксированной высоты */
  .home-latest-card{
    display:grid !important;
    grid-template-columns:88px minmax(0,1fr) auto !important;
    grid-template-rows:auto auto auto auto auto !important;
    column-gap:12px !important;
    row-gap:6px !important;
    align-items:start !important;
    align-content:start !important;
    width:100% !important;
    min-height:0 !important;
    height:auto !important;
    max-height:none !important;
    padding:14px !important;
    border:1px solid #e2efdc !important;
    border-radius:20px !important;
    background:#fff !important;
    box-shadow:none !important;
    overflow:hidden !important;
    text-align:left !important;
    transform:none !important;
  }

  .home-latest-card:hover,
  .home-latest-card:active,
  .home-latest-card:focus{
    transform:none !important;
    box-shadow:none !important;
  }

  .home-latest-card.has-photo .home-latest-photo,
  .home-latest-card.no-photo .home-latest-photo,
  .home-latest-photo{
    grid-column:1 !important;
    grid-row:1 / span 5 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:88px !important;
    height:88px !important;
    min-width:88px !important;
    min-height:88px !important;
    max-width:88px !important;
    max-height:88px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:16px !important;
    overflow:hidden !important;
    align-self:start !important;
  }

  .home-latest-card.has-photo .home-latest-photo{
    background:#fff !important;
  }

  .home-latest-card.no-photo .home-latest-photo{
    background:#eff9ea !important;
  }

  .home-latest-card.has-photo .home-latest-photo img,
  .home-latest-photo img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:16px !important;
    background:#fff !important;
  }

  .home-latest-card.no-photo .home-latest-placeholder,
  .home-latest-card.no-photo .home-latest-photo > span{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    min-height:44px !important;
    border-radius:14px !important;
    font-size:22px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .home-latest-badge{
    grid-column:2 !important;
    grid-row:1 !important;
    width:auto !important;
    max-width:100% !important;
    min-height:25px !important;
    margin:0 !important;
    padding:6px 9px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.05 !important;
    font-weight:850 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-action-help{
    grid-column:3 !important;
    grid-row:1 !important;
    align-self:start !important;
    justify-self:end !important;
    min-height:25px !important;
    margin:0 !important;
    padding:6px 9px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.05 !important;
    white-space:nowrap !important;
  }

  .home-latest-action-map{
    grid-column:2 / 4 !important;
    grid-row:2 !important;
    justify-self:start !important;
    min-height:25px !important;
    margin:0 !important;
    padding:6px 9px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.05 !important;
    white-space:nowrap !important;
  }

  .home-latest-card strong{
    grid-column:2 / 4 !important;
    grid-row:3 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    min-height:0 !important;
    max-height:48px !important;
    margin:2px 0 0 !important;
    padding:0 !important;
    font-size:18px !important;
    line-height:1.18 !important;
    font-weight:900 !important;
    color:#111827 !important;
  }

  .home-latest-address{
    grid-column:2 / 4 !important;
    grid-row:4 !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    color:#6b7280 !important;
    font-size:13px !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .home-latest-address-icon{
    display:none !important;
  }

  .home-latest-bottom{
    grid-column:2 / 4 !important;
    grid-row:5 !important;
    width:100% !important;
    margin:1px 0 0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
  }

  .home-latest-bottom .home-latest-time,
  .home-latest-time,
  .home-latest-card small{
    margin:0 !important;
    padding:0 !important;
    color:#7a8493 !important;
    font-size:12.5px !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
  }

  .home-latest-bottom .home-map-btn{
    display:none !important;
  }

  .home-latest-bottom-link{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-height:44px !important;
    margin:14px 0 0 !important;
    border-radius:18px !important;
    font-size:17px !important;
  }

  .home-latest-card.is-mobile-extra{
    display:none !important;
  }

  .home-latest-card.is-mobile-extra.is-visible{
    display:grid !important;
  }
}

/* 2026-07-05 FINAL CLEAN MOBILE LATEST: один финальный слой для блока "Недавно добавили" */
@media (max-width: 760px){
  /* расстояние между секциями — только внешний ритм, без изменения карточек */
  .home-content-row{
    margin-top: 18px !important;
  }

  .home-content-row > .home-latest-help{
    margin-top: 0 !important;
  }

  /* сетка не должна растягивать карточки до одинаковой высоты */
  .home-latest-help .home-latest-grid{
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-auto-rows: auto !important;
    align-items: start !important;
    align-content: start !important;
    gap: 14px !important;
  }

  /* карточка должна занимать ровно столько места, сколько занимает контент */
  .home-latest-help .home-latest-grid > .home-latest-card,
  .home-latest-help .home-latest-card{
    display: grid !important;
    grid-template-columns: 104px minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto auto auto auto !important;
    grid-auto-rows: auto !important;
    column-gap: 12px !important;
    row-gap: 6px !important;
    align-items: start !important;
    align-content: start !important;
    align-self: start !important;
    justify-self: stretch !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    block-size: auto !important;
    min-block-size: 0 !important;
    max-block-size: none !important;
    padding: 14px !important;
    margin: 0 !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    background: #fff !important;
  }

  .home-latest-help .home-latest-card::after{
    display: none !important;
    content: none !important;
  }

  .home-latest-help .home-latest-photo{
    grid-column: 1 !important;
    grid-row: 1 / 6 !important;
    width: 104px !important;
    height: 104px !important;
    min-width: 104px !important;
    min-height: 104px !important;
    max-width: 104px !important;
    max-height: 104px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 17px !important;
    align-self: start !important;
    display: flex !important;
    overflow: hidden !important;
    background: #eff9ea !important;
  }

  .home-latest-help .home-latest-card.has-photo .home-latest-photo{
    background: #fff !important;
  }

  .home-latest-help .home-latest-photo img{
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 17px !important;
    background: #fff !important;
  }

  .home-latest-help .home-latest-badge{
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 26px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    font-size: 12.5px !important;
    line-height: 1.05 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .home-latest-help .home-latest-action-help{
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    align-self: start !important;
    min-height: 26px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    font-size: 12.5px !important;
    line-height: 1.05 !important;
    white-space: nowrap !important;
  }

  .home-latest-help .home-latest-action-map{
    grid-column: 2 / 4 !important;
    grid-row: 2 !important;
    justify-self: start !important;
    min-height: 26px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    font-size: 12.5px !important;
    line-height: 1.05 !important;
    white-space: nowrap !important;
  }

  .home-latest-help .home-latest-card strong{
    grid-column: 2 / 4 !important;
    grid-row: 3 !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: 48px !important;
    margin: 2px 0 0 !important;
    padding: 0 !important;
    font-size: 19px !important;
    line-height: 1.16 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .home-latest-help .home-latest-address{
    grid-column: 2 / 4 !important;
    grid-row: 4 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 13.5px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .home-latest-help .home-latest-bottom{
    grid-column: 2 / 4 !important;
    grid-row: 5 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 1px 0 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  .home-latest-help .home-latest-time{
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 12.5px !important;
    line-height: 1.2 !important;
  }

  .home-latest-help .home-latest-bottom .home-map-btn,
  .home-latest-help .home-latest-address-icon{
    display: none !important;
  }

  .home-latest-help .home-latest-card.is-mobile-extra{
    display: none !important;
  }

  .home-latest-help .home-latest-card.is-mobile-extra.is-visible{
    display: grid !important;
  }

  .home-latest-help .home-latest-bottom-link{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 44px !important;
    margin: 14px 0 0 !important;
    border-radius: 18px !important;
    font-size: 17px !important;
  }
}

/* 2026-07-05 FINAL: mobile latest badges + show-more stability */
.home-latest-meta{display:contents;}
@media (max-width:760px){
  .home-latest-help .home-latest-grid{
    grid-auto-rows:auto !important;
    align-items:start !important;
  }

  .home-latest-help .home-latest-card{
    grid-template-columns:104px minmax(0,1fr) !important;
    grid-template-rows:auto auto auto auto !important;
    column-gap:12px !important;
    row-gap:7px !important;
    min-height:0 !important;
    height:auto !important;
    align-content:start !important;
  }

  .home-latest-help .home-latest-photo{
    grid-column:1 !important;
    grid-row:1 / 5 !important;
  }

  .home-latest-help .home-latest-meta{
    grid-column:2 !important;
    grid-row:1 !important;
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:flex-start !important;
    gap:6px 7px !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
  }

  .home-latest-help .home-latest-meta > .home-latest-badge,
  .home-latest-help .home-latest-meta > .home-latest-action-help,
  .home-latest-help .home-latest-meta > .home-latest-action-map{
    grid-column:auto !important;
    grid-row:auto !important;
    justify-self:auto !important;
    align-self:auto !important;
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:25px !important;
    height:auto !important;
    margin:0 !important;
    padding:6px 9px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1.05 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    box-sizing:border-box !important;
  }

  .home-latest-help .home-latest-meta > .home-latest-badge{
    flex:0 1 auto !important;
    max-width:100% !important;
  }

  .home-latest-help .home-latest-meta > .home-latest-action-help,
  .home-latest-help .home-latest-meta > .home-latest-action-map{
    flex:0 0 auto !important;
  }

  .home-latest-help .home-latest-card strong{
    grid-column:2 !important;
    grid-row:2 !important;
    margin:1px 0 0 !important;
    max-height:48px !important;
  }

  .home-latest-help .home-latest-address{
    grid-column:2 !important;
    grid-row:3 !important;
  }

  .home-latest-help .home-latest-bottom{
    grid-column:2 !important;
    grid-row:4 !important;
  }

  .home-latest-help .home-latest-card.is-mobile-extra{
    display:none !important;
  }

  .home-latest-help .home-latest-card.is-mobile-extra.is-visible{
    display:grid !important;
  }
}


/* Mobile: latest cards actions in one row */
@media (max-width:768px){
.home .recent-posts .announcement-card .card-actions,
.home .recent-announcements .announcement-card .card-actions,
.home .recent-posts .card-actions,
.home .recent-announcements .card-actions{
 display:flex!important;
 flex-wrap:nowrap!important;
 gap:8px!important;
 align-items:center!important;
}
.home .recent-posts .card-actions .btn-help,
.home .recent-posts .card-actions .btn-map,
.home .recent-announcements .card-actions .btn-help,
.home .recent-announcements .card-actions .btn-map{
 flex:0 0 auto!important;
 white-space:nowrap!important;
}
}


/* 2026-07-05 FINAL FIX: mobile latest badges semantic rows */
@media (max-width: 760px){
  .home-latest-help .home-latest-meta{
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .home-latest-help .home-latest-action-row{
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 7px !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .home-latest-help .home-latest-meta > .home-latest-badge{
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 25px !important;
    margin: 0 !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    line-height: 1.05 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    box-sizing: border-box !important;
  }

  .home-latest-help .home-latest-action-row > .home-latest-action-help,
  .home-latest-help .home-latest-action-row > .home-latest-action-map{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 25px !important;
    margin: 0 !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    line-height: 1.05 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    box-sizing: border-box !important;
    grid-column: auto !important;
    grid-row: auto !important;
    justify-self: auto !important;
    align-self: auto !important;
  }

  .home-latest-help .home-latest-card strong{
    grid-column: 2 !important;
    grid-row: 2 !important;
  }

  .home-latest-help .home-latest-address{
    grid-column: 2 !important;
    grid-row: 3 !important;
  }

  .home-latest-help .home-latest-bottom{
    grid-column: 2 !important;
    grid-row: 4 !important;
  }
}

/* v1.4.7 subscriptions UX: list first + edit mode */
.subscriptions-list-card{margin-bottom:18px;}
.subscription-card-head .primary-btn.small{width:auto;min-width:0;padding:11px 16px;border-radius:14px;font-size:14px;line-height:1;text-decoration:none;}
.subscription-list-wide{gap:14px;}
.subscription-item-wide{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:16px;align-items:start;padding:18px;background:#f8fcf4;border-color:#cfe9c6;}
.subscription-item-wide .subscription-item-main{display:flex;flex-direction:column;gap:8px;min-width:0;}
.subscription-item-wide .subscription-item-main b{font-size:20px;color:#172033;}
.subscription-item-wide .subscription-item-main span{font-size:15px;line-height:1.35;}
.subscription-item-actions{display:flex;flex-direction:column;gap:8px;}
.subscription-item-actions form{margin:0;}
.subscription-item-actions .secondary-btn{width:100%;text-align:center;text-decoration:none;}
.secondary-btn.danger-soft{background:#fff6f6;border-color:#ffd4d4;color:#a73434;}
.subscription-form-card{margin-bottom:18px;}
.subscription-form-card .subscription-card-head .secondary-btn{width:auto;text-decoration:none;}
@media(max-width:900px){
  .subscription-card-head{align-items:flex-start;}
  .subscription-card-head .primary-btn.small{width:100%;text-align:center;margin-top:8px;}
  .subscription-item-wide{grid-template-columns:1fr;}
  .subscription-item-actions{gap:10px;}
}

/* v1.4.8 subscriptions dashboard: map + activity toggles */
.subscriptions-dashboard-page{padding-top:28px;padding-bottom:56px;}
.subscriptions-hero-modern{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(520px,1.5fr);gap:28px;align-items:center;background:transparent;border:0;box-shadow:none;padding:8px 4px 18px;margin-bottom:10px;}
.subscriptions-hero-modern h1{font-size:40px;letter-spacing:-.03em;margin:0 0 12px;color:#172033;}
.subscriptions-hero-modern p{font-size:18px;line-height:1.5;color:#566074;max-width:600px;margin:0;}
.subscriptions-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.sub-benefit-card{display:grid;grid-template-columns:44px 1fr;column-gap:14px;align-items:start;background:#fff;border:1px solid #e4eedc;border-radius:18px;padding:18px 20px;box-shadow:0 8px 26px rgba(20,36,58,.06);}
.sub-benefit-card span{grid-row:1 / span 2;width:42px;height:42px;border-radius:14px;background:#effbea;display:flex;align-items:center;justify-content:center;font-size:25px;}
.sub-benefit-card b{font-size:17px;color:#172033;margin-top:1px;}
.sub-benefit-card p{font-size:14px;line-height:1.45;margin:5px 0 0;color:#566074;}
.subscriptions-workspace{display:grid;grid-template-columns:minmax(420px,.82fr) minmax(560px,1.18fr);gap:18px;align-items:stretch;}
.subscriptions-panel-main,.subscriptions-map-card{background:#fff;border:1px solid #edf3e8;border-radius:22px;box-shadow:0 14px 40px rgba(23,32,51,.08);padding:20px;}
.subscriptions-panel-head{margin-bottom:12px;}
.subscriptions-panel-head h2,.subscription-map-head h2{font-size:24px;margin:0;color:#172033;}
.subscription-list-modern{display:flex;flex-direction:column;gap:14px;}
.subscription-item-modern{position:relative;grid-template-columns:minmax(0,1fr) 150px;border:1px solid #e3efe0;border-radius:18px;background:#fff;box-shadow:0 6px 22px rgba(20,36,58,.04);overflow:hidden;padding:18px 16px 16px 20px;}
.subscription-item-modern:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#18a84a;}
.subscription-item-modern.subscription-kind-orange:before{background:#f59f00;}.subscription-item-modern.subscription-kind-blue:before{background:#2f80ed;}.subscription-item-modern.subscription-kind-violet:before{background:#7c3aed;}.subscription-item-modern.subscription-kind-yellow:before{background:#fab005;}.subscription-item-modern.subscription-kind-brown:before{background:#9a6b3c;}
.subscription-item-modern.is-muted{opacity:.72;background:#fbfbfb;}
.subscription-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.subscription-kind-icon{width:42px;height:42px;border-radius:50%;background:#eaf8e6;display:inline-flex;align-items:center;justify-content:center;font-size:24px;}
.subscription-title-row b{font-size:19px!important;}
.subscription-title-row em{font-style:normal;background:#eaf8e6;color:#1b7b2b;border-radius:999px;padding:4px 10px;font-weight:800;font-size:12px;}
.is-muted .subscription-title-row em{background:#f0f2f4;color:#687381;}
.subscription-chip-label{font-size:13px;font-weight:800;color:#172033;margin-top:4px;}
.subscription-tag-list{display:flex;gap:7px;flex-wrap:wrap;}
.subscription-tag-list span{font-size:12px!important;line-height:1.2!important;border:1px solid #e7ebee;background:#f5f7f8;border-radius:8px;padding:6px 9px;color:#394353;}
.subscription-actions-modern{display:flex;flex-direction:column;align-items:stretch;gap:9px;}
.subscription-count-pill{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-decoration:none;color:#172033;background:#f9fcf6;border:1px solid #eef5e9;border-radius:999px;min-height:72px;box-shadow:0 4px 16px rgba(20,36,58,.04);}
.subscription-count-pill span{font-size:11px;color:#566074;}.subscription-count-pill b{font-size:28px;color:#15a332;line-height:1;}
.subscription-toggle-form{display:flex;flex-direction:column;align-items:center;gap:5px;margin:0;}.subscription-toggle-form small{font-size:11px;color:#566074;font-weight:700;}
.subscription-toggle{position:relative;width:48px;height:28px;border:0;border-radius:999px;background:#cfd6dd;cursor:pointer;padding:3px;transition:.2s;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08);}
.subscription-toggle span{display:block;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 7px rgba(0,0,0,.2);transition:.2s;}.subscription-toggle.on{background:#19aa43;}.subscription-toggle.on span{transform:translateX(20px);}
.edit-soft{background:#eff9eb!important;color:#16802c!important;border-color:#e2f3dc!important;font-weight:800;}.danger-soft{font-weight:800;}
.subscription-add-hint{display:block;text-align:center;border:1px dashed #cdd8cf;border-radius:13px;padding:10px 12px;color:#607084;text-decoration:none;background:#fff;}
.subscription-map-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;}
.subscription-map-legend{display:flex;gap:24px;align-items:center;flex-wrap:wrap;color:#253047;font-size:15px;}.subscription-map-legend span{display:inline-flex;align-items:center;gap:8px}.subscription-map-legend .dot{width:12px;height:12px;border-radius:50%;display:inline-block}.dot.green{background:#19a64a}.dot.orange{background:#f59f00}.dot.blue{background:#2f80ed}
.subscription-overview-map{height:565px;border-radius:16px;overflow:hidden;border:1px solid #e1edd9;background:#eef6e9;}
.subscriptions-map-card{position:relative;padding:20px;}
.subscription-map-summary{position:absolute;left:38px;bottom:38px;background:rgba(255,255,255,.94);border:1px solid #e5ece2;border-radius:14px;padding:14px 17px;box-shadow:0 10px 26px rgba(20,36,58,.12);display:flex;flex-direction:column;gap:5px;color:#172033;}
.subscription-map-summary b{font-size:18px}.subscription-map-summary span{font-size:14px;color:#4b5666;}
.subscription-center-me{position:absolute;right:38px;bottom:38px;border:0;background:#fff;color:#167a2a;font-weight:900;border-radius:12px;padding:14px 20px;box-shadow:0 10px 26px rgba(20,36,58,.13);cursor:pointer;}
.subscriptions-bottom-row{display:grid;grid-template-columns:minmax(360px,.82fr) minmax(560px,1.18fr);gap:18px;margin-top:18px;}
.subscription-info-note,.subscription-human-note{background:#fff;border:1px solid #e4eedc;border-radius:18px;padding:18px 20px;box-shadow:0 10px 28px rgba(20,36,58,.06);display:flex;align-items:center;gap:18px;min-height:82px;}
.subscription-info-note>span{width:42px;height:42px;border-radius:50%;background:#eaf8e6;display:flex;align-items:center;justify-content:center;font-size:24px;}.subscription-info-note b,.subscription-human-note b{display:block;margin-bottom:6px;color:#172033;font-size:16px}.subscription-info-note p,.subscription-human-note p{margin:0;color:#566074;line-height:1.45;}
.hands-heart{width:72px;height:64px;position:relative;flex:0 0 72px;display:flex;align-items:center;justify-content:center}.hands-heart svg{display:block;width:100%;height:100%;overflow:visible}.help-hand-main,.help-hand-cuff,.help-hand-ray{fill:none;stroke:#2aa958;stroke-linecap:round;stroke-linejoin:round}.help-hand-main{stroke-width:3.4}.help-hand-cuff{stroke-width:3.2;fill:#eef9ed}.help-hand-ray{stroke-width:3;opacity:.78}.subscription-human-note{justify-content:space-between}.subscription-human-note>div{flex:1}.people-heart{display:flex;align-items:center;min-width:150px;justify-content:flex-end}.people-heart svg{display:block;width:160px;height:auto;overflow:visible}.people-heart .person{fill:none;stroke-linecap:round;stroke-linejoin:round}.people-heart .person-side{stroke:#9abfa2;stroke-width:3;opacity:.72}.people-heart .person-main{stroke:#16a34a;stroke-width:4}.people-heart .community-line{fill:none;stroke:#c9decf;stroke-width:2.5;stroke-linecap:round}
.subscription-form-card{margin-top:18px;}.subscription-edit-map{height:360px;}
.active-subscription{box-shadow:0 0 0 2px rgba(25,166,74,.22),0 10px 30px rgba(20,36,58,.08)!important;}
@media(max-width:1120px){.subscriptions-hero-modern,.subscriptions-workspace,.subscriptions-bottom-row{grid-template-columns:1fr}.subscription-overview-map{height:430px}.subscriptions-benefits{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:760px){.subscriptions-dashboard-page{padding-top:16px}.subscriptions-hero-modern h1{font-size:34px}.subscriptions-hero-modern p{font-size:16px}.subscriptions-benefits{grid-template-columns:1fr}.subscriptions-panel-main,.subscriptions-map-card{padding:16px;border-radius:20px}.subscription-item-modern{grid-template-columns:1fr;padding:16px}.subscription-actions-modern{display:grid;grid-template-columns:1fr 1fr;align-items:center}.subscription-count-pill{grid-column:1 / -1;min-height:58px}.subscription-toggle-form{align-self:center}.subscription-map-head{align-items:flex-start;flex-direction:column}.subscription-overview-map{height:330px}.subscription-map-summary{left:26px;bottom:26px}.subscription-center-me{right:26px;bottom:26px;padding:12px}.subscriptions-bottom-row{grid-template-columns:1fr}.subscription-human-note{align-items:flex-start}.people-heart{min-width:110px}}

/* v1.4.9 subscriptions calm UX polish */
.subscriptions-dashboard-page{padding-top:18px!important;}
.subscriptions-hero-compact{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:22px!important;
  padding:4px 2px 18px!important;
  margin-bottom:6px!important;
}
.subscriptions-hero-compact .subscriptions-hero-copy{max-width:620px;}
.subscriptions-hero-compact h1{font-size:36px!important;margin:0 0 8px!important;letter-spacing:-.025em;}
.subscriptions-hero-compact p{font-size:17px!important;line-height:1.45!important;max-width:560px!important;}
.subscriptions-hero-add{flex:0 0 auto;text-decoration:none;border-radius:16px;padding:14px 20px;box-shadow:0 10px 24px rgba(22,150,40,.18);}
.subscriptions-benefits,.sub-benefit-card{display:none!important;}
.subscription-map-head{align-items:flex-start!important;margin-bottom:10px!important;}
.subscription-map-head p{margin:3px 0 0;color:#6a7485;font-size:14px;line-height:1.35;text-align:right;}
.subscription-map-legend,.subscription-center-me{display:none!important;}
.subscription-overview-map{height:545px!important;}
.subscription-item-modern{padding:18px 16px 16px 22px!important;}
.subscription-item-modern:before{width:7px!important;}
.subscription-tag-list-compact{max-height:none;}
.subscription-hidden-tag{display:none!important;}
.subscription-tag-list.is-open .subscription-hidden-tag{display:inline-flex!important;}
.subscription-more-tags{border:1px solid #dbe8d8;background:#eef8ea;color:#167a2a;border-radius:8px;padding:6px 9px;font-size:12px;font-weight:800;line-height:1.2;cursor:pointer;}
.subscription-tag-list.is-open .subscription-more-tags{background:#fff;color:#5b6675;}
.edit-soft{background:#edf8e9!important;color:#146f28!important;border-color:#dbeed4!important;border-radius:14px!important;}
.danger-soft{background:transparent!important;border-color:transparent!important;color:#ad3a3a!important;box-shadow:none!important;}
.subscription-count-pill span{font-size:12px!important;max-width:88px;text-align:center;}
.subscription-info-note,.subscription-human-note{padding:18px 22px!important;}
.subscription-info-note>span,.hands-heart{flex-shrink:0;}
@media(max-width:760px){
  .subscriptions-hero-compact{display:block!important;padding:0 2px 14px!important;}
  .subscriptions-hero-compact h1{font-size:32px!important;}
  .subscriptions-hero-add{display:block;text-align:center;margin-top:14px;}
  .subscription-map-head p{text-align:left;}
  .subscription-overview-map{height:330px!important;}
}

/* Subscriptions modal refinement */
.subscriptions-hero-compact{
  grid-template-columns:1fr!important;
  max-width:1220px;
}
.subscriptions-hero-compact .subscriptions-hero-copy{max-width:620px;}
.subscription-card-head .primary-btn.small{border:0;cursor:pointer;}
.subscription-add-note{cursor:default;text-align:left;color:#657287;background:#fbfdf9;}
.subscription-modal{
  position:fixed;
  inset:0;
  z-index:99999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .22s ease, visibility .22s ease;
}
.subscription-modal.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.subscription-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(17,24,39,.54);
  backdrop-filter:blur(2px);
}
.subscription-modal-dialog{
  position:relative;
  width:min(1040px, calc(100vw - 36px));
  max-height:calc(100vh - 48px);
  overflow:auto;
  margin:0!important;
  border-radius:26px;
  box-shadow:0 28px 80px rgba(17,24,39,.25);
}
.subscription-modal-dialog .subscription-card-head{
  position:sticky;
  top:0;
  z-index:3;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(8px);
  border-bottom:1px solid #edf3e8;
  margin:-2px -2px 18px;
  padding:4px 2px 14px;
}
.subscription-modal-dialog .subscription-edit-map{height:320px;}
body.subscription-modal-open{overflow:hidden;}
.secondary-btn.edit-soft{border:0;cursor:pointer;}
.subscription-form-card .secondary-btn[data-sub-modal-close]{border:0;cursor:pointer;}
@media(max-width:760px){
  .subscription-modal{padding:10px;align-items:flex-start;}
  .subscription-modal-dialog{width:100%;max-height:calc(100vh - 20px);border-radius:22px;padding:16px!important;}
  .subscription-modal-dialog .subscription-edit-map{height:280px;}
  .subscription-modal-dialog .subscription-card-head{padding:0 0 12px;margin:0 0 14px;}
}

/* Подписки: создание/настройка как отдельная страница, без крупного модального сценария */
.subscription-form-page{max-width:1180px;}
.subscription-form-page .subscription-form-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px;}
.subscription-form-page-card{max-width:100%;padding:22px!important;}
.subscription-form-page-card .subscription-edit-map{height:360px;border-radius:18px;overflow:hidden;}
.subscription-form-actions{display:flex;gap:12px;align-items:center;margin-top:14px;}
.subscription-back-btn{white-space:nowrap;text-decoration:none;}
.subscription-card-head .secondary-btn{text-decoration:none;}

@media(max-width:760px){
  .subscription-form-page{padding-top:16px;}
  .subscription-form-page .subscription-form-hero{display:block;padding:18px!important;}
  .subscription-form-page .subscription-form-hero h1{font-size:32px;line-height:1.12;margin-bottom:8px;}
  .subscription-form-page .subscription-form-hero p{font-size:16px;line-height:1.45;}
  .subscription-back-btn{display:inline-flex;margin-top:14px;}
  .subscription-form-page-card{padding:16px!important;border-radius:22px;}
  .subscription-form-page-card .subscription-card-head{align-items:flex-start;gap:12px;}
  .subscription-form-page-card .subscription-card-head h2{font-size:28px;line-height:1.12;}
  .subscription-form-page-card .subscription-edit-map{height:300px;}
  .subscription-category-section summary{display:grid;grid-template-columns:1fr;gap:12px;align-items:start;}
  .subscription-section-all{width:max-content;}
  .subscription-form-actions{display:grid;grid-template-columns:1fr;}
  .subscription-form-actions .primary-btn,.subscription-form-actions .secondary-btn{width:100%;justify-content:center;}

  .subscription-human-note{display:grid!important;grid-template-columns:64px 1fr;gap:14px;align-items:center!important;}
  .subscription-human-note .hands-heart{grid-row:1 / span 2;align-self:start;}
  .subscription-human-note>div{min-width:0;}
  .subscription-human-note b{font-size:22px;line-height:1.15;margin-bottom:8px;}
  .subscription-human-note p{font-size:17px;line-height:1.38;}
  .subscription-human-note .people-heart{grid-column:1 / -1;justify-content:center;min-width:0;margin-top:18px;gap:16px;}
}

/* Подписки: состояние быстрого переключателя и вложенные категории */
.subscription-toggle.is-saving{opacity:.72;cursor:wait;}
.subscription-toggle.is-saving span{position:relative;}
.subscription-toggle.is-saving span:after{content:"";position:absolute;inset:5px;border:2px solid rgba(25,166,74,.28);border-top-color:#19a64a;border-radius:50%;animation:pomogite-sub-spin .7s linear infinite;}
.subscription-toggle.off.is-saving span:after{border-color:rgba(120,130,145,.28);border-top-color:#7b8493;}
@keyframes pomogite-sub-spin{to{transform:rotate(360deg)}}
.subscription-category-chip.is-disabled{opacity:.48;cursor:not-allowed;transform:none;}
.subscription-category-chip.is-disabled:hover{background:#fff;border-color:#e1ecd9;transform:none;}
.subscription-category-chip.is-disabled input{cursor:not-allowed;}

/* Subscriptions unified center tabs */
.subscriptions-tabs{display:flex;gap:10px;margin:0 0 18px;padding:6px;background:#fff;border:1px solid #edf3e8;border-radius:18px;box-shadow:0 10px 28px rgba(23,32,51,.06);width:max-content;max-width:100%;}
.subscriptions-tabs a{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:14px;text-decoration:none;color:#31512f;font-weight:800;transition:.18s ease;background:#f6fbf2;}
.subscriptions-tabs a.is-active{background:#159600;color:#fff;box-shadow:0 8px 18px rgba(22,150,40,.2);}
.subscriptions-feed-card{background:#fff;border:1px solid #edf3e8;border-radius:22px;box-shadow:0 14px 40px rgba(23,32,51,.08);padding:20px;margin-bottom:18px;}
.subscriptions-feed-card .subscriptions-panel-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px;}
.subscriptions-feed-card .subscriptions-panel-head p{margin:6px 0 0;color:var(--muted);}
.subscriptions-feed-layout{margin:0 0 18px;}
.subscriptions-feed-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.subscriptions-feed-grid .cabinet-ad-row{margin:0;}
@media(max-width:900px){.subscriptions-tabs{width:100%;}.subscriptions-tabs a{flex:1}.subscriptions-feed-card .subscriptions-panel-head{display:block}.subscriptions-feed-card .subscriptions-panel-head .secondary-btn{margin-top:12px}.subscriptions-feed-grid{grid-template-columns:1fr}}

/* Subscriptions UX iteration: readable 35+ interface + scalable blocks */
.subscriptions-tabs{
  width:100%!important;
  max-width:620px!important;
  gap:8px!important;
  padding:8px!important;
  margin-bottom:14px!important;
}
.subscriptions-tabs a{
  flex:1;
  min-height:54px;
  font-size:16px!important;
  border:1px solid transparent;
}
.subscriptions-tabs a span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:26px;
  height:24px;
  padding:0 8px;
  border-radius:999px;
  background:rgba(255,255,255,.22);
  font-size:13px;
  line-height:1;
}
.subscriptions-tabs a:not(.is-active) span{background:#eaf5e5;color:#168a2c;}
.subscriptions-summary-panel{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:0 0 18px;
  max-width:920px;
}
.subscriptions-summary-panel div{
  background:#fff;
  border:1px solid #e8f2e2;
  border-radius:18px;
  padding:16px 18px;
  box-shadow:0 10px 28px rgba(23,32,51,.055);
}
.subscriptions-summary-panel span{display:block;color:#657084;font-weight:700;font-size:13px;margin-bottom:6px;}
.subscriptions-summary-panel b{font-size:30px;line-height:1;color:#159600;}
.subscriptions-workspace{align-items:start!important;}
.subscriptions-list-card,.subscriptions-map-card{background:#fff!important;}
.subscription-item-modern{background:#fff!important;}
.subscription-item-modern.is-active{background:#fff!important;}
.subscription-title-row em{font-style:normal!important;}
.subscription-count-pill{
  border-radius:16px!important;
  min-height:66px!important;
  background:#f7fcf4!important;
}
.subscription-count-pill span{font-size:12px!important;max-width:110px!important;line-height:1.25!important;}
.subscription-toggle-form small{max-width:112px;text-align:center;line-height:1.2;font-size:11px!important;}
.subscriptions-map-card .subscription-overview-map{height:440px!important;}
.subscriptions-feed-card{padding:24px!important;}
.subscriptions-feed-titlebar{align-items:center!important;}
.subscription-feed-count{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-width:92px;
  min-height:70px;
  border-radius:18px;
  background:#f6fbf2;
  border:1px solid #e5f0df;
}
.subscription-feed-count span{font-size:12px;color:#657084;font-weight:800;}
.subscription-feed-count b{font-size:30px;line-height:1;color:#159600;}
.subscriptions-feed-list{
  display:grid;
  gap:12px;
  margin-top:18px;
}
.subscriptions-feed-list-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  padding:4px 2px 2px;
}
.subscriptions-feed-list-head b{font-size:20px;}
.subscriptions-feed-list-head span{font-size:13px;color:#657084;max-width:620px;text-align:right;}
.subscription-feed-item{
  display:grid;
  grid-template-columns:108px minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  background:#fff;
  border:1px solid #dfeedd;
  border-radius:18px;
  padding:12px;
  box-shadow:0 8px 24px rgba(23,32,51,.045);
}
.subscription-feed-thumb{
  width:108px;
  height:82px;
  border-radius:14px;
  overflow:hidden;
  background:#f4faef;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#159600;
  font-size:28px;
}
.subscription-feed-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.subscription-feed-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:5px;}
.subscription-feed-meta span{background:#eef9e9;color:#2b7630;border:1px solid #d8efd2;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800;}
.subscription-feed-meta em{font-style:normal;color:#768093;font-size:12px;font-weight:700;}
.subscription-feed-body h3{margin:0 0 6px;font-size:18px;line-height:1.25;color:#172033;}
.subscription-feed-body p{margin:0;color:#556277;font-size:14px;}
.subscription-feed-open{white-space:nowrap;border:none;cursor:pointer;}
.subscription-feed-item{cursor:pointer;}
.subscription-feed-item:hover{border-color:#bfe6b8;box-shadow:0 10px 28px rgba(23,32,51,.07);}
.subscriptions-empty-state{padding:28px!important;line-height:1.6!important;}
@media(max-width:900px){
  .subscriptions-summary-panel{grid-template-columns:1fr;}
  .subscriptions-feed-titlebar{display:block!important;}
  .subscription-feed-count{margin-top:12px;align-items:flex-start;padding-left:16px;}
  .subscription-feed-item{grid-template-columns:92px minmax(0,1fr);}
  .subscription-feed-open{grid-column:1 / -1;text-align:center;}
  .subscriptions-feed-list-head{display:block;}
  .subscriptions-feed-list-head span{display:block;text-align:left;margin-top:6px;}
}
@media(max-width:760px){
  .subscriptions-tabs a{font-size:15px!important;min-height:50px;}
  .subscription-feed-item{grid-template-columns:1fr;}
  .subscription-feed-thumb{width:100%;height:170px;}
  .subscriptions-map-card .subscription-overview-map{height:320px!important;}
}


/* Favorites actions in announcement modal */
.modal-utility-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin-top:10px;
}
.modal-utility-actions .modal-action-btn{
  flex:1 1 160px;
}

.share-announcement-wrap{
  position:relative;
  flex:1 1 160px;
  min-width:160px;
}
.modal-utility-actions .share-announcement-wrap .modal-action-btn{
  width:100%;
  flex:0 0 auto;
}
.share-announcement-menu{
  position:absolute;
  top:calc(100% + 8px);
  right:0;
  z-index:10020;
  min-width:230px;
  padding:8px;
  border-radius:16px;
  background:#fff;
  border:1px solid #dcefd2;
  box-shadow:0 18px 46px rgba(23,32,51,.18);
}
.share-announcement-menu[hidden]{display:none!important;}
.share-announcement-menu button,
.share-announcement-menu a{
  display:flex;
  align-items:center;
  gap:8px;
  width:100%;
  min-height:38px;
  padding:9px 10px;
  border:0;
  border-radius:11px;
  background:transparent;
  color:#172033;
  font:inherit;
  font-weight:800;
  text-decoration:none;
  cursor:pointer;
  text-align:left;
}
.share-announcement-menu button:hover,
.share-announcement-menu a:hover{
  background:#f3faef;
  color:#168800;
}
@media (max-width:760px){
  .share-announcement-wrap{flex:1 1 100%;width:100%;}
  .share-announcement-menu{left:0;right:0;min-width:0;}
}

.favorite-announcement-btn.is-favorite{
  background:#fff8db!important;
  border-color:#f4d35e!important;
  color:#5f4a00!important;
}
.favorite-announcement-btn.is-loading{
  opacity:.75;
  pointer-events:none;
}
@media (max-width: 760px){
  .modal-utility-actions{gap:8px;}
  .modal-utility-actions .modal-action-btn{flex:1 1 100%;}
}

/* === Notifications UX v2: tabs, grouping, complaints history, share action === */
.notification-tabs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:14px 0 18px;
  background:#f3faef;
  border:1px solid #dcefd2;
  border-radius:18px;
  padding:8px;
  max-width:960px;
}
.notification-tab{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  padding:10px 12px;
  border-radius:14px;
  text-decoration:none;
  color:#172033;
  font-weight:900;
  background:#fff;
  border:1px solid transparent;
}
.notification-tab b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:22px;
  height:22px;
  padding:0 7px;
  border-radius:999px;
  background:#e8f8df;
  color:#168800;
  font-size:12px;
}
.notification-tab.is-active{
  background:#139600;
  color:#fff;
  box-shadow:0 8px 22px rgba(19,150,0,.18);
}
.notification-tab.is-active b{background:rgba(255,255,255,.22);color:#fff;}
.notification-date-title{
  margin:18px 0 8px;
  font-size:15px;
  color:#657083;
  font-weight:900;
}
.notification-date-title:first-child{margin-top:0;}
.notification-limit-note{
  margin-top:12px;
  color:#657083;
  font-size:13px;
  text-align:right;
}
.complaint-history-item .notification-icon{background:#fff4f4;color:#c63838;}
.share-announcement-btn.is-copied,
.modal-copy-phone.is-copied{
  background:#e8f8df!important;
  color:#168800!important;
  border-color:#bfe5b1!important;
}
@media (max-width:760px){
  .notification-tabs{grid-template-columns:1fr;}
  .notification-tab{justify-content:space-between;}
  .notification-limit-note{text-align:left;}
}

/* Friendly password recovery pages */
.pomogite-auth-page{
  width:min(1040px, calc(100% - 32px));
  margin:34px auto 70px;
}
.pomogite-auth-card{
  background:#fff;
  border:1px solid #e3efd9;
  border-radius:24px;
  box-shadow:0 18px 42px rgba(22,74,29,.08);
  padding:28px;
}
.pomogite-auth-card__brand{
  display:flex;
  gap:16px;
  align-items:center;
  padding-bottom:20px;
  border-bottom:1px solid #edf5e9;
  margin-bottom:22px;
}
.pomogite-auth-card__icon{
  width:54px;
  height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:18px;
  background:#f0faeb;
  font-size:30px;
}
.pomogite-auth-card h1{
  margin:0 0 6px;
  color:#10213f;
  font-size:32px;
}
.pomogite-auth-card__brand p,
.pomogite-auth-text{
  margin:0;
  color:#5b6680;
  line-height:1.55;
}
.pomogite-auth-note,
.pomogite-auth-success{
  background:#f6fff1;
  border:1px dashed #b9e2a9;
  border-radius:16px;
  padding:16px 18px;
  color:#33415c;
  line-height:1.55;
  margin-bottom:18px;
}
.pomogite-auth-success{
  border-style:solid;
  color:#168000;
  font-weight:800;
}
.pomogite-auth-form{
  display:grid;
  gap:12px;
  max-width:620px;
}
.pomogite-auth-form label{
  color:#25324d;
  font-weight:800;
}
.pomogite-auth-form input{
  width:100%;
  border:1px solid #d8e6d1;
  border-radius:14px;
  min-height:48px;
  padding:0 14px;
  font-size:16px;
  outline:none;
}
.pomogite-auth-form input:focus{
  border-color:#19a300;
  box-shadow:0 0 0 3px rgba(25,163,0,.12);
}
.pomogite-auth-actions,
.pomogite-auth-links{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:center;
  margin-top:20px;
}
.pomogite-auth-links a{
  color:#238000;
  font-weight:800;
}
.pomogite-auth-links--buttons a{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
}
.pomogite-auth-help{
  background:#fbfff8;
  border:1px solid #dcefd3;
  border-radius:16px;
  padding:16px 18px;
  margin:16px 0;
  color:#33415c;
}
.pomogite-auth-help strong{
  display:block;
  margin-bottom:8px;
  color:#10213f;
  font-size:16px;
}
.pomogite-auth-help ul{
  margin:0;
  padding-left:20px;
  line-height:1.65;
}
.pomogite-auth-actions .primary-btn,
.pomogite-auth-actions .secondary-btn{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
}
@media (max-width:640px){
  .pomogite-auth-page{width:calc(100% - 20px); margin-top:18px;}
  .pomogite-auth-card{padding:18px; border-radius:18px;}
  .pomogite-auth-card__brand{align-items:flex-start;}
  .pomogite-auth-card h1{font-size:25px;}
}

/* === Pomogi-Pomogu: simplified registration + profile name prompt === */
.auth-register-fields.auth-register-fields-simple{
  grid-template-columns:1fr 1fr;
}
@media(max-width:760px){
  .auth-register-fields.auth-register-fields-simple{grid-template-columns:1fr;}
}
.profile-name-prompt{
  margin:0 0 20px;
  padding:18px;
  border:1px solid #dcefd1;
  border-radius:22px;
  background:linear-gradient(135deg,#f4fbef,#ffffff);
  box-shadow:0 10px 26px rgba(76,125,55,.08);
  display:grid;
  grid-template-columns:minmax(220px,1fr) auto auto;
  gap:14px;
  align-items:center;
}
.profile-name-prompt-text strong{
  display:block;
  font-size:18px;
  line-height:1.25;
  margin-bottom:5px;
  color:#20321d;
}
.profile-name-prompt-text span{
  display:block;
  font-size:14px;
  line-height:1.45;
  color:#60715a;
}
.profile-name-prompt-form{
  display:flex;
  gap:10px;
  align-items:center;
}
.profile-name-prompt-form input{
  width:220px;
  height:44px;
  border-radius:12px;
  border:1px solid #dbe8d4;
  padding:0 14px;
  font-size:15px;
  background:#fff;
}
.profile-name-prompt-form .primary-btn{
  height:44px;
  padding:0 18px;
  border-radius:12px;
  white-space:nowrap;
}
.profile-name-prompt-later button{
  height:44px;
  border:1px solid #dbe8d4;
  background:#fff;
  color:#52624d;
  border-radius:12px;
  padding:0 16px;
  font-weight:800;
  cursor:pointer;
  white-space:nowrap;
}
.profile-name-prompt-later button:hover{
  background:#f6fbf1;
  color:#284a20;
}
@media(max-width:900px){
  .profile-name-prompt{grid-template-columns:1fr;align-items:stretch;}
  .profile-name-prompt-form{flex-direction:column;align-items:stretch;}
  .profile-name-prompt-form input{width:100%;}
  .profile-name-prompt-form .primary-btn,.profile-name-prompt-later button{width:100%;}
}

/* Pomogi-Pomogu patch: unified password visibility controls */
.auth-password-field{
  position:relative;
}
.auth-password-field input[type="password"],
.auth-password-field input[type="text"]{
  padding-right:46px!important;
}
.auth-password-toggle{
  position:absolute;
  right:4px;
  top:50%;
  transform:translateY(-50%);
  width:36px;
  height:32px;
  border:0;
  border-radius:10px;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:15px;
  line-height:1;
  color:#314226;
  opacity:.75;
  z-index:3;
}
.auth-password-toggle:hover,
.auth-password-toggle:focus{
  background:#eef8e8;
  opacity:1;
  outline:none;
}
.auth-lock-field:after{
  content:none!important;
}

/* Pomogi-Pomogu patch: admin online status split from last login */
.admin-online-badge{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:4px 8px;
  border-radius:999px;
  background:#f4faef;
  border:1px solid #dfead8;
  color:#39552d;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}
.admin-online-badge.is-online{
  background:#effbea;
  border-color:#bfe6af;
  color:#168000;
}
.admin-online-badge.is-recent{
  background:#fbfff6;
  color:#52624d;
}
.admin-online-badge.is-away,
.admin-online-badge.is-unknown{
  background:#f8fbf5;
  color:#6b7665;
}

/* Pomogi-Pomogu patch: real auth input shells, no clickable fake padding zones */
.auth-modal .auth-field-shell,
.pomogite-auth-page .auth-field-shell{
  display:flex!important;
  align-items:center!important;
  height:38px!important;
  border:1px solid #dfe6d8!important;
  border-radius:7px!important;
  background:#fff!important;
  overflow:hidden!important;
  padding:0!important;
  box-sizing:border-box!important;
}
.auth-modal .auth-field-shell:focus-within,
.pomogite-auth-page .auth-field-shell:focus-within{
  border-color:#a8d892!important;
  box-shadow:0 0 0 3px rgba(39,168,0,.08)!important;
}
.auth-modal .auth-field-shell .auth-field-icon,
.pomogite-auth-page .auth-field-shell .auth-field-icon{
  flex:0 0 34px!important;
  width:34px!important;
  height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:13px!important;
  opacity:.58!important;
  user-select:none!important;
  pointer-events:none!important;
  line-height:1!important;
}
.auth-modal .auth-field-shell input,
.pomogite-auth-page .auth-field-shell input,
.auth-modal .auth-field-shell input[type="text"],
.auth-modal .auth-field-shell input[type="email"],
.auth-modal .auth-field-shell input[type="password"],
.pomogite-auth-page .auth-field-shell input[type="text"],
.pomogite-auth-page .auth-field-shell input[type="email"],
.pomogite-auth-page .auth-field-shell input[type="password"]{
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
  height:100%!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:none!important;
  padding:0 8px!important;
  margin:0!important;
}
.auth-modal .auth-field-shell .auth-password-toggle,
.pomogite-auth-page .auth-field-shell .auth-password-toggle{
  position:static!important;
  transform:none!important;
  flex:0 0 38px!important;
  width:38px!important;
  height:100%!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
  font-size:14px!important;
  line-height:1!important;
  color:#314226!important;
  opacity:.8!important;
  z-index:auto!important;
  padding:0!important;
  margin:0!important;
  user-select:none!important;
}
.auth-modal .auth-field-shell .auth-password-toggle:hover,
.auth-modal .auth-field-shell .auth-password-toggle:focus,
.pomogite-auth-page .auth-field-shell .auth-password-toggle:hover,
.pomogite-auth-page .auth-field-shell .auth-password-toggle:focus{
  background:#eef8e8!important;
  opacity:1!important;
  outline:none!important;
}
.auth-modal .auth-icon-field:before,
.auth-modal .auth-icon-field:after,
.auth-modal .auth-lock-field:before,
.auth-modal .auth-lock-field:after{
  content:none!important;
  display:none!important;
}


/* Pomogi-Pomogu patch: auth password toggle final fix */
.auth-modal .auth-field-shell .auth-field-icon,
.pomogite-auth-page .auth-field-shell .auth-field-icon{
  cursor:default!important;
  pointer-events:none!important;
}
.auth-modal .auth-field-shell .auth-password-toggle,
.pomogite-auth-page .auth-field-shell .auth-password-toggle{
  -webkit-appearance:none!important;
  appearance:none!important;
  cursor:pointer!important;
}
.auth-modal .auth-field-shell .auth-password-toggle:active,
.pomogite-auth-page .auth-field-shell .auth-password-toggle:active{
  transform:none!important;
}

/* Pomogi-Pomogu patch: scalable admin users UX for 10k online */
.admin-users-table th,
.admin-users-table td{
  padding:7px 9px;
}
.admin-users-table td strong{
  line-height:1.15;
}
.admin-users-table td small{
  margin-top:1px;
}
.admin-users-table code{
  cursor:help;
}
.admin-online-badge{
  padding:3px 8px;
  font-size:11px;
  line-height:1.2;
}
.admin-online-badge.is-online{
  box-shadow:0 0 0 2px rgba(32,174,16,.08);
}
.admin-filter-form{
  align-items:center;
}
.admin-filter-form input[type="text"]{
  min-height:38px;
}
.admin-activity-compact{
  display:grid;
  gap:7px;
  margin:8px 0 6px;
}
.admin-activity-line{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 11px;
  border:1px solid #e5efd9;
  border-radius:12px;
  background:#fff;
}
.admin-activity-line .activity-name{
  color:#172033;
  font-weight:800;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.admin-activity-line .activity-time{
  color:#657083;
  font-size:12px;
  white-space:nowrap;
}
@media(max-width:700px){
  .admin-activity-line{
    align-items:flex-start;
    flex-direction:column;
    gap:3px;
  }
}

/* Pomogi-Pomogu patch: admin users UX v3, compact for 10k online */
.admin-users-table-v2{
  min-width:820px;
  table-layout:fixed;
}
.admin-users-table-v2 th:nth-child(1){width:13%;}
.admin-users-table-v2 th:nth-child(2){width:17%;}
.admin-users-table-v2 th:nth-child(3){width:13%;}
.admin-users-table-v2 th:nth-child(4){width:17%;}
.admin-users-table-v2 th:nth-child(5){width:14%;}
.admin-users-table-v2 th:nth-child(6){width:12%;}
.admin-users-table-v2 th:nth-child(7){width:7%;}
.admin-users-table-v2 th:nth-child(8){width:7%;}
.admin-users-table-v2 th,
.admin-users-table-v2 td{
  padding:6px 8px!important;
  vertical-align:middle!important;
}
.admin-users-table-v2 td strong{
  line-height:1.1!important;
  margin-bottom:1px;
}
.admin-users-table-v2 td small{
  font-size:10.5px;
  line-height:1.15;
}
.admin-user-email{
  display:inline-block;
  max-width:100%;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  vertical-align:middle;
  cursor:help;
}
.admin-date-compact{
  display:inline-block;
  line-height:1.2;
  white-space:normal;
}
.admin-last-login{
  display:flex;
  flex-direction:column;
  gap:1px;
  line-height:1.15;
}
.admin-last-login b{
  color:#172033;
  font-size:11.5px;
  font-weight:800;
}
.admin-last-login small{
  color:#718095;
  font-size:10.5px;
}
.admin-online-badge{
  position:relative;
  gap:6px!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  font-size:11px!important;
  line-height:1.1!important;
  max-width:100%;
}
.admin-online-badge i{
  flex:0 0 8px;
  width:8px;
  height:8px;
  border-radius:999px;
  background:#9aa4b2;
  box-shadow:0 0 0 2px rgba(154,164,178,.12);
}
.admin-online-badge.is-online{
  background:#effbea!important;
  border-color:#bfe6af!important;
  color:#168000!important;
}
.admin-online-badge.is-online i{
  background:#20b000;
  box-shadow:0 0 0 3px rgba(32,176,0,.14);
}
.admin-online-badge.is-recent{
  background:#fffbea!important;
  border-color:#eadf9f!important;
  color:#806800!important;
}
.admin-online-badge.is-recent i{
  background:#e4b400;
  box-shadow:0 0 0 3px rgba(228,180,0,.14);
}
.admin-online-badge.is-away{
  background:#f8fbf5!important;
  border-color:#dfead8!important;
  color:#64705d!important;
}
.admin-online-badge.is-away i{
  background:#a7b3a0;
}
.admin-online-badge.is-old,
.admin-online-badge.is-unknown{
  background:#f4f5f2!important;
  border-color:#e1e5dc!important;
  color:#73796e!important;
}
.admin-online-badge.is-old i,
.admin-online-badge.is-unknown i{
  background:#b8beb2;
}
.admin-activity-journal{
  display:grid;
  gap:6px;
  margin:8px 0 6px;
}
.admin-activity-entry{
  display:grid;
  grid-template-columns:10px minmax(120px, 1fr) minmax(150px, 1.3fr) auto;
  align-items:center;
  gap:10px;
  padding:7px 10px;
  border:1px solid #e5efd9;
  border-radius:12px;
  background:#fff;
  min-height:36px;
}
.admin-activity-entry .activity-dot{
  width:8px;
  height:8px;
  border-radius:999px;
  background:#a7b3a0;
}
.admin-activity-entry.is-online .activity-dot{background:#20b000;box-shadow:0 0 0 3px rgba(32,176,0,.12);}
.admin-activity-entry.is-recent .activity-dot{background:#e4b400;box-shadow:0 0 0 3px rgba(228,180,0,.12);}
.admin-activity-entry strong,
.admin-activity-entry .activity-action{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.admin-activity-entry strong{
  color:#172033;
  font-size:13px;
}
.admin-activity-entry .activity-action{
  color:#4b5b70;
  font-size:12px;
}
.admin-activity-entry time{
  color:#657083;
  font-size:12px;
  white-space:nowrap;
  justify-self:end;
}
@media(max-width:700px){
  .admin-users-table-v2{min-width:780px;}
  .admin-activity-entry{
    grid-template-columns:10px 1fr auto;
    gap:8px;
  }
  .admin-activity-entry .activity-action{
    grid-column:2 / 4;
  }
}

/* Security interpretation v2.3 */
.pomogite-stats-page-compact .security-risk-grid{
  margin-top:4px !important;
  margin-bottom:8px !important;
}
.pomogite-stats-page-compact .security-status-note{
  margin:4px 0 10px !important;
  padding:8px 10px;
  border:1px dashed #d6edca;
  border-radius:12px;
  background:#fbfff8;
}
.pomogite-stats-page-compact .security-badge{
  background:#f8fbf4;
  color:#50623f;
  border-color:#e3efd8;
}
.pomogite-stats-page-compact .security-event-row small + small{
  margin-top:3px;
}
.pomogite-stats-page-compact .security-event-more small{
  display:block;
  margin-top:4px;
}


/* v1.4.9 Subscriptions polish: clearer 35+ UX, scalable lists for 10k online */
.subscriptions-dashboard-page{max-width:1240px!important;}
.subscriptions-hero-compact{padding-top:4px!important;margin-bottom:8px!important;}
.subscriptions-hero-compact h1{font-size:34px!important;}
.subscriptions-hero-compact p{font-size:16px!important;max-width:620px!important;}
.subscriptions-tabs{max-width:640px!important;margin-top:4px!important;}
.subscriptions-summary-panel{max-width:900px!important;gap:10px!important;margin-bottom:16px!important;}
.subscriptions-summary-panel div{padding:14px 18px!important;border-radius:16px!important;}
.subscriptions-summary-panel b{font-size:28px!important;}
.subscriptions-workspace{grid-template-columns:minmax(430px,.88fr) minmax(480px,1.12fr)!important;gap:16px!important;align-items:start!important;}
.subscriptions-panel-main,.subscriptions-map-card{border-radius:20px!important;box-shadow:0 12px 34px rgba(23,32,51,.065)!important;}
.subscriptions-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px!important;}
.subscriptions-panel-head>div{min-width:0;}
.subscriptions-panel-subtitle{margin:4px 0 0;color:#657084;font-size:13px;line-height:1.35;}
.subscriptions-list-card{padding:18px!important;}
.subscription-list-modern{gap:12px!important;}
.subscription-item-modern{grid-template-columns:minmax(0,1fr) 142px!important;padding:16px 14px 14px 18px!important;border-radius:18px!important;}
.subscription-kind-icon{width:36px!important;height:36px!important;font-size:20px!important;}
.subscription-title-row{gap:8px!important;}
.subscription-title-row b{font-size:18px!important;line-height:1.18!important;}
.subscription-item-wide .subscription-item-main span{font-size:14px!important;}
.subscription-tag-list span{padding:5px 8px!important;font-size:11.5px!important;}
.subscription-count-pill{min-height:58px!important;border-radius:14px!important;}
.subscription-count-pill b{font-size:25px!important;}
.subscription-actions-modern{gap:8px!important;}
.subscription-actions-modern .secondary-btn{padding:9px 10px!important;border-radius:13px!important;font-size:13px!important;}
.subscription-toggle{width:44px!important;height:26px!important;}
.subscription-toggle span{width:20px!important;height:20px!important;}
.subscription-toggle.on span{transform:translateX(18px)!important;}
.subscription-add-note{font-size:14px!important;line-height:1.4!important;padding:12px!important;}
.subscriptions-map-card-compact{position:sticky!important;top:92px!important;padding:18px!important;}
.subscriptions-map-card-compact .subscription-overview-map{height:390px!important;border-radius:18px!important;}
.subscription-map-head{display:grid!important;grid-template-columns:1fr;gap:4px!important;margin-bottom:12px!important;}
.subscription-map-head h2{font-size:23px!important;line-height:1.15!important;}
.subscription-map-head p{margin:0;color:#657084;font-size:13px;line-height:1.35;text-align:left!important;}
.subscription-map-summary{left:28px!important;bottom:28px!important;border-radius:13px!important;padding:11px 14px!important;gap:4px!important;}
.subscription-map-summary b{font-size:16px!important;}
.subscription-map-summary span{font-size:13px!important;}
.subscriptions-bottom-row{grid-template-columns:1fr 1.45fr!important;margin-top:16px!important;}
.subscription-info-note,.subscription-human-note{min-height:76px!important;padding:16px 18px!important;border-radius:18px!important;}
.subscription-human-note .people-heart{transform:scale(.82);transform-origin:right center;}

.subscriptions-feed-card{padding:22px!important;border-radius:22px!important;}
.subscriptions-feed-titlebar h2{font-size:26px!important;line-height:1.15;margin-bottom:7px!important;}
.subscriptions-feed-titlebar p{font-size:15px!important;line-height:1.42!important;max-width:820px!important;}
.subscriptions-feed-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 300px!important;gap:16px!important;align-items:stretch!important;}
.subscriptions-feed-layout .map-card{border-radius:20px!important;overflow:hidden!important;}
.subscriptions-feed-layout #map{height:390px!important;}
.subscriptions-feed-layout .visible-announcements-panel{border-radius:20px!important;box-shadow:none!important;max-height:390px!important;}
.subscription-feed-count{min-width:86px!important;min-height:66px!important;}
.subscriptions-feed-list{gap:10px!important;}
.subscriptions-feed-list-head b{font-size:21px!important;color:#172033;}
.subscriptions-feed-list-head span{font-size:13px!important;line-height:1.35!important;}
.subscription-feed-item{grid-template-columns:112px minmax(0,1fr) 118px!important;padding:12px!important;border-radius:18px!important;}
.subscription-feed-thumb{width:112px!important;height:86px!important;border-radius:14px!important;}
.subscription-feed-body h3{font-size:18px!important;line-height:1.22!important;margin-bottom:7px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.subscription-feed-body p{font-size:13.5px!important;line-height:1.35!important;}
.subscription-feed-author{color:#6b7485!important;margin-top:4px!important;}
.subscription-feed-actions{display:grid;grid-template-columns:1fr;gap:8px;align-items:center;}
.subscription-feed-actions .secondary-btn{width:100%;border:0;cursor:pointer;border-radius:13px!important;padding:10px 12px!important;font-weight:900!important;text-align:center;}
.subscription-feed-actions .subscription-feed-open{background:#eff9eb!important;color:#167a2a!important;}
.subscription-feed-actions .subscription-feed-map{background:#f6fbf2!important;color:#2f7e28!important;}
.subscription-feed-item:hover .subscription-feed-actions .subscription-feed-open{background:#159600!important;color:#fff!important;}
.visible-announcements-panel .secondary-btn,.visible-announcements-panel .primary-btn{border-radius:12px!important;}

@media(max-width:1120px){
  .subscriptions-workspace,.subscriptions-bottom-row{grid-template-columns:1fr!important;}
  .subscriptions-map-card-compact{position:relative!important;top:auto!important;}
  .subscriptions-map-card-compact .subscription-overview-map{height:360px!important;}
  .subscriptions-feed-layout{grid-template-columns:1fr!important;}
  .subscriptions-feed-layout #map{height:360px!important;}
}
@media(max-width:760px){
  .subscriptions-page{padding-left:14px!important;padding-right:14px!important;}
  .subscriptions-hero-compact h1{font-size:30px!important;}
  .subscriptions-tabs{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;}
  .subscriptions-tabs a{min-height:48px!important;padding:10px!important;}
  .subscriptions-summary-panel{grid-template-columns:1fr!important;}
  .subscriptions-panel-head{display:grid!important;grid-template-columns:1fr!important;}
  .subscription-item-modern{grid-template-columns:1fr!important;}
  .subscription-actions-modern{grid-template-columns:1fr 1fr!important;display:grid!important;}
  .subscription-count-pill{grid-column:1 / -1!important;}
  .subscriptions-map-card-compact .subscription-overview-map,.subscriptions-feed-layout #map{height:310px!important;}
  .subscriptions-feed-layout .visible-announcements-panel{max-height:none!important;}
  .subscription-feed-item{grid-template-columns:86px minmax(0,1fr)!important;}
  .subscription-feed-thumb{width:86px!important;height:72px!important;}
  .subscription-feed-actions{grid-column:1 / -1;grid-template-columns:1fr 1fr!important;}
  .subscriptions-feed-list-head span{text-align:left!important;}
}

/* Subscription feed map: independent light renderer for matched announcements */
.subscription-feed-map{width:100%;height:390px;min-height:390px;border-radius:22px;overflow:hidden;background:#eef7ea;}
.subscriptions-feed-side-list{display:flex;flex-direction:column;gap:12px;}
.subscription-side-card{display:grid;grid-template-columns:58px 1fr;gap:12px;padding:12px;border:1px solid #d8efcf;border-radius:18px;background:#fff;}
.subscription-side-thumb{width:58px;height:58px;border-radius:14px;overflow:hidden;background:#edf7e9;display:flex;align-items:center;justify-content:center;}
.subscription-side-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.subscription-side-body{min-width:0;display:flex;flex-direction:column;gap:6px;}
.subscription-side-body b{font-size:15px;line-height:1.25;color:#10213f;}
.subscription-side-body small{color:#607089;font-size:12px;}
.subscription-side-tags{display:flex;gap:6px;flex-wrap:wrap;align-items:center;}
.subscription-side-tags span,.subscription-side-tags em{font-style:normal;font-weight:700;font-size:11px;border-radius:999px;padding:4px 7px;background:#edf8e9;color:#2d7b1f;}
.subscription-side-tags em{background:#fff4e8;color:#d66d00;}
.secondary-btn.tiny{font-size:12px;padding:7px 10px;border-radius:999px;align-self:flex-start;}
@media (max-width: 860px){.subscription-feed-map{height:320px;min-height:320px}.subscription-side-card{grid-template-columns:52px 1fr}.subscription-side-thumb{width:52px;height:52px}}

/* Subscriptions feed architecture cleanup: clear map empty state */
.subscription-map-empty{
  display:flex;
  align-items:center;
  justify-content:center;
  height:100%;
  min-height:320px;
  padding:24px;
  text-align:center;
  color:#5b6678;
  background:#eef7ea;
  border-radius:22px;
  font-weight:700;
}

/* Subscriptions UI Polish v3 — local page polish, map remains key */
body .subscriptions-page{
  --sub-green:#159600;
  --sub-green-dark:#0f7f00;
  --sub-green-soft:#eef9eb;
  --sub-border:#d8efcf;
  --sub-text:#10213f;
  --sub-muted:#657084;
}
.subscriptions-hero-compact{margin-bottom:18px!important;}
.subscriptions-hero-compact h1{letter-spacing:-.02em!important;}
.subscriptions-hero-compact p{max-width:620px!important;line-height:1.45!important;}
.subscriptions-tabs{padding:7px!important;border-radius:20px!important;box-shadow:0 16px 38px rgba(31,76,22,.08)!important;}
.subscriptions-tabs a{border-radius:15px!important;font-weight:900!important;transition:background .18s ease, color .18s ease, transform .18s ease!important;}
.subscriptions-tabs a:hover{transform:translateY(-1px);}
.subscriptions-summary-panel{gap:12px!important;margin-bottom:18px!important;}
.subscriptions-summary-panel>div{border-radius:18px!important;box-shadow:0 12px 32px rgba(31,76,22,.06)!important;min-height:76px!important;}
.subscriptions-workspace{grid-template-columns:minmax(390px,.9fr) minmax(520px,1.1fr)!important;gap:18px!important;align-items:start!important;}
.subscriptions-list-card,.subscriptions-map-card-compact,.subscriptions-feed-card{box-shadow:0 22px 58px rgba(31,76,22,.09)!important;border-color:#e0f2da!important;}
.subscriptions-panel-head{align-items:center!important;margin-bottom:14px!important;}
.subscriptions-panel-head h2{letter-spacing:-.02em!important;}
.subscription-list-modern{gap:14px!important;}
.subscription-item-modern{border-left-width:7px!important;box-shadow:0 12px 30px rgba(31,76,22,.06)!important;}
.subscription-item-modern:hover{box-shadow:0 18px 42px rgba(31,76,22,.11)!important;transform:translateY(-1px);}
.subscription-kind-icon{box-shadow:inset 0 0 0 1px rgba(255,255,255,.8)!important;}
.subscription-title-row em{font-weight:900!important;}
.subscription-item-main>span{margin-top:4px!important;}
.subscription-chip-label{margin-top:12px!important;color:#283852!important;}
.subscription-count-pill{border:1px solid #dff2d8!important;background:linear-gradient(180deg,#fbfff8,#f2faee)!important;box-shadow:0 12px 24px rgba(31,76,22,.06)!important;}
.subscription-count-pill:hover{border-color:#9fdd91!important;}
.subscription-actions-modern small{font-size:12px!important;line-height:1.2!important;color:#657084!important;}
.subscription-add-note{border-radius:18px!important;background:#fbfff7!important;border-color:#d7edcf!important;color:#52637a!important;}
.subscriptions-map-card-compact{padding:20px!important;}
.subscription-map-head{margin-bottom:14px!important;}
.subscription-map-head h2:before{content:'🗺 ';}
.subscription-map-head h2{font-size:25px!important;letter-spacing:-.02em!important;}
.subscription-map-head p{font-size:14px!important;line-height:1.45!important;max-width:620px!important;}
.subscriptions-map-card-compact .subscription-overview-map{height:440px!important;border-radius:22px!important;border:1px solid #d7efcf!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.75)!important;}
.subscription-map-summary{box-shadow:0 12px 30px rgba(0,0,0,.12)!important;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(6px);}
.subscriptions-bottom-row{grid-template-columns:1fr 1.25fr!important;gap:16px!important;}
.subscription-info-note,.subscription-human-note{box-shadow:0 16px 40px rgba(31,76,22,.08)!important;border-color:#e2f1db!important;align-items:center!important;}
.subscription-info-note b,.subscription-human-note b{letter-spacing:-.02em!important;}
.subscription-info-note p,.subscription-human-note p{line-height:1.48!important;}
.subscriptions-feed-card{padding:24px!important;}
.subscriptions-feed-titlebar{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important;gap:16px!important;}
.subscriptions-feed-titlebar h2{letter-spacing:-.025em!important;}
.subscription-feed-count{border-radius:18px!important;box-shadow:0 12px 26px rgba(31,76,22,.07)!important;}
.subscriptions-feed-layout{grid-template-columns:minmax(0,1fr) 310px!important;gap:18px!important;margin-top:14px!important;}
.subscriptions-feed-layout .map-card{box-shadow:0 14px 36px rgba(31,76,22,.08)!important;border:1px solid #d9efcf!important;}
.subscriptions-feed-layout #map{height:430px!important;min-height:430px!important;}
.subscriptions-feed-layout .visible-announcements-panel{max-height:430px!important;border-color:#d9efcf!important;box-shadow:0 14px 36px rgba(31,76,22,.06)!important;}
.subscriptions-feed-list{margin-top:18px!important;}
.subscription-feed-item{box-shadow:0 10px 24px rgba(31,76,22,.05)!important;transition:box-shadow .18s ease, transform .18s ease!important;}
.subscription-feed-item:hover{box-shadow:0 16px 36px rgba(31,76,22,.10)!important;transform:translateY(-1px)!important;}

@media (max-width: 860px){
  .subscriptions-page{padding-left:18px!important;padding-right:18px!important;}
  .subscriptions-hero-compact{padding-top:10px!important;margin-bottom:16px!important;}
  .subscriptions-hero-compact h1{font-size:34px!important;line-height:1.08!important;margin-bottom:10px!important;}
  .subscriptions-hero-compact p{font-size:18px!important;line-height:1.42!important;color:#5d6b80!important;}
  .subscriptions-tabs{gap:6px!important;border-radius:20px!important;margin-bottom:16px!important;}
  .subscriptions-tabs a{min-height:58px!important;font-size:18px!important;border-radius:16px!important;display:flex!important;justify-content:center!important;align-items:center!important;gap:8px!important;}
  .subscriptions-tabs a .badge,.subscriptions-tabs a span:last-child{font-size:15px!important;}
  .subscriptions-summary-panel{grid-template-columns:1fr!important;gap:12px!important;}
  .subscriptions-summary-panel>div{min-height:104px!important;padding:18px 22px!important;border-radius:22px!important;}
  .subscriptions-summary-panel span{font-size:16px!important;}
  .subscriptions-summary-panel b{font-size:32px!important;}
  .subscriptions-workspace{grid-template-columns:1fr!important;gap:16px!important;}
  .subscriptions-panel-head{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;}
  .subscriptions-panel-head h2{font-size:30px!important;}
  .subscriptions-panel-head .primary-btn{width:100%!important;min-height:56px!important;border-radius:18px!important;font-size:17px!important;}
  .subscription-item-modern{padding:22px!important;border-radius:24px!important;border-left-width:8px!important;}
  .subscription-title-row{display:grid!important;grid-template-columns:46px 1fr auto!important;align-items:center!important;}
  .subscription-kind-icon{width:46px!important;height:46px!important;font-size:23px!important;}
  .subscription-title-row b{font-size:24px!important;line-height:1.1!important;}
  .subscription-title-row em{font-size:14px!important;padding:7px 10px!important;}
  .subscription-item-main>span{font-size:17px!important;line-height:1.4!important;}
  .subscription-tag-list span{font-size:15px!important;padding:9px 12px!important;border-radius:12px!important;}
  .subscription-actions-modern{grid-template-columns:1fr 1fr!important;gap:12px!important;margin-top:16px!important;}
  .subscription-count-pill{grid-column:1 / -1!important;min-height:88px!important;border-radius:18px!important;}
  .subscription-count-pill span{font-size:16px!important;}
  .subscription-count-pill b{font-size:34px!important;}
  .subscription-toggle-form{align-items:center!important;justify-content:center!important;padding:10px 0!important;}
  .subscription-toggle{width:58px!important;height:34px!important;}
  .subscription-toggle span{width:28px!important;height:28px!important;}
  .subscription-toggle.on span{transform:translateX(24px)!important;}
  .subscription-actions-modern .secondary-btn{min-height:50px!important;border-radius:16px!important;font-size:16px!important;}
  .subscription-add-note{font-size:17px!important;line-height:1.45!important;padding:16px 18px!important;border-radius:20px!important;}
  .subscriptions-map-card-compact{padding:20px!important;border-radius:24px!important;}
  .subscription-map-head h2{font-size:30px!important;}
  .subscription-map-head p{font-size:17px!important;line-height:1.42!important;}
  .subscriptions-map-card-compact .subscription-overview-map{height:380px!important;min-height:380px!important;border-radius:22px!important;}
  .subscription-map-summary{left:24px!important;bottom:24px!important;padding:14px 16px!important;border-radius:18px!important;}
  .subscription-map-summary b{font-size:20px!important;}
  .subscription-map-summary span{font-size:16px!important;}
  .subscriptions-bottom-row{grid-template-columns:1fr!important;gap:14px!important;}
  .subscription-info-note,.subscription-human-note{padding:24px!important;border-radius:24px!important;min-height:auto!important;}
  .subscription-info-note>span{width:64px!important;height:64px!important;font-size:28px!important;}
  .subscription-info-note b,.subscription-human-note b{font-size:25px!important;line-height:1.15!important;}
  .subscription-info-note p,.subscription-human-note p{font-size:20px!important;line-height:1.42!important;}
  .subscription-human-note .people-heart{transform:scale(.72)!important;transform-origin:center!important;}
  .subscriptions-feed-card{padding:20px!important;border-radius:24px!important;}
  .subscriptions-feed-titlebar{grid-template-columns:1fr!important;}
  .subscriptions-feed-titlebar h2{font-size:29px!important;line-height:1.14!important;}
  .subscriptions-feed-titlebar p{font-size:17px!important;line-height:1.42!important;}
  .subscription-feed-count{justify-self:start!important;min-width:94px!important;min-height:74px!important;}
  .subscriptions-feed-layout{grid-template-columns:1fr!important;gap:16px!important;}
  .subscriptions-feed-layout #map{height:380px!important;min-height:380px!important;}
  .subscriptions-feed-layout .visible-announcements-panel{max-height:none!important;}
  .subscriptions-feed-list-head b{font-size:28px!important;}
  .subscriptions-feed-list-head span{font-size:17px!important;line-height:1.4!important;}
}

@media (max-width: 520px){
  .subscriptions-page{padding-left:14px!important;padding-right:14px!important;}
  .subscriptions-hero-compact h1{font-size:32px!important;}
  .subscriptions-hero-compact p{font-size:17px!important;}
  .subscriptions-tabs a{font-size:17px!important;min-height:56px!important;}
  .subscriptions-map-card-compact .subscription-overview-map,.subscriptions-feed-layout #map{height:360px!important;min-height:360px!important;}
  .subscription-feed-item{grid-template-columns:96px minmax(0,1fr)!important;padding:16px!important;border-radius:22px!important;}
  .subscription-feed-thumb{width:96px!important;height:86px!important;border-radius:16px!important;}
  .subscription-feed-body h3{font-size:22px!important;line-height:1.16!important;}
  .subscription-feed-meta{align-items:flex-start!important;gap:8px!important;}
  .subscription-feed-meta span{font-size:14px!important;line-height:1.2!important;padding:7px 10px!important;}
  .subscription-feed-meta em{font-size:15px!important;}
  .subscription-feed-body p{font-size:18px!important;line-height:1.35!important;}
  .subscription-feed-actions,.subscription-feed-open{grid-column:1 / -1!important;}
  .subscription-feed-open{min-height:54px!important;border-radius:18px!important;font-size:18px!important;background:#eff9eb!important;}
}

/* Subscriptions UI Polish v4 — mobile compact, map remains important */
@media (max-width: 860px){
  body .subscriptions-page{padding-left:14px!important;padding-right:14px!important;}
  .subscriptions-hero-compact{padding-top:6px!important;margin-bottom:12px!important;}
  .subscriptions-hero-compact h1{font-size:30px!important;line-height:1.1!important;margin-bottom:8px!important;}
  .subscriptions-hero-compact p{font-size:16px!important;line-height:1.38!important;}

  .subscriptions-tabs{margin-bottom:12px!important;padding:5px!important;border-radius:18px!important;}
  .subscriptions-tabs a{min-height:50px!important;font-size:16px!important;border-radius:14px!important;padding:8px 10px!important;}
  .subscriptions-tabs a span{min-width:26px!important;height:26px!important;font-size:13px!important;}

  .subscriptions-summary-panel{gap:10px!important;margin-bottom:14px!important;}
  .subscriptions-summary-panel>div{min-height:78px!important;padding:14px 18px!important;border-radius:18px!important;}
  .subscriptions-summary-panel span{font-size:14px!important;line-height:1.25!important;}
  .subscriptions-summary-panel b{font-size:28px!important;line-height:1!important;}

  .subscriptions-list-card,
  .subscriptions-map-card-compact,
  .subscriptions-feed-card{border-radius:22px!important;padding:16px!important;}
  .subscriptions-panel-head{gap:10px!important;margin-bottom:12px!important;}
  .subscriptions-panel-head h2{font-size:26px!important;line-height:1.15!important;}
  .subscriptions-panel-head .primary-btn{min-height:50px!important;border-radius:16px!important;font-size:16px!important;}

  .subscription-list-modern{gap:12px!important;}
  .subscription-item-modern{padding:17px!important;border-radius:20px!important;border-left-width:7px!important;}
  .subscription-title-row{display:grid!important;grid-template-columns:38px minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;}
  .subscription-kind-icon{width:38px!important;height:38px!important;font-size:20px!important;}
  .subscription-title-row b{font-size:22px!important;line-height:1.12!important;overflow-wrap:anywhere!important;}
  .subscription-title-row em{font-size:13px!important;padding:6px 9px!important;border-radius:999px!important;white-space:nowrap!important;}
  .subscription-item-main>span{font-size:15px!important;line-height:1.32!important;margin-top:5px!important;}
  .subscription-chip-label{margin-top:10px!important;font-size:14px!important;}
  .subscription-tag-list{gap:7px!important;margin-top:6px!important;}
  .subscription-tag-list span{font-size:14px!important;padding:7px 10px!important;border-radius:11px!important;}
  .subscription-more-tags{font-size:14px!important;padding:7px 10px!important;border-radius:11px!important;}

  .subscription-actions-modern{grid-template-columns:1fr 1fr!important;gap:10px!important;margin-top:12px!important;align-items:center!important;}
  .subscription-count-pill{grid-column:1 / -1!important;min-height:66px!important;border-radius:16px!important;padding:10px 12px!important;}
  .subscription-count-pill span{font-size:14px!important;line-height:1.15!important;}
  .subscription-count-pill b{font-size:28px!important;line-height:1!important;}
  .subscription-toggle-form{padding:6px 0!important;gap:6px!important;align-items:center!important;justify-content:center!important;}
  .subscription-toggle-form small{font-size:13px!important;line-height:1.15!important;max-width:110px!important;}
  .subscription-toggle{width:52px!important;height:30px!important;}
  .subscription-toggle span{width:24px!important;height:24px!important;}
  .subscription-toggle.on span{transform:translateX(22px)!important;}
  .subscription-actions-modern .secondary-btn{min-height:44px!important;border-radius:14px!important;font-size:15px!important;padding:9px 10px!important;}
  .subscription-actions-modern form:last-child{grid-column:1 / -1!important;}
  .subscription-actions-modern form:last-child .secondary-btn{width:100%!important;background:#fff!important;}
  .subscription-add-note{font-size:15px!important;line-height:1.35!important;padding:13px 15px!important;border-radius:16px!important;}

  .subscription-map-head{margin-bottom:10px!important;}
  .subscription-map-head h2{font-size:26px!important;line-height:1.15!important;}
  .subscription-map-head p{font-size:15px!important;line-height:1.36!important;}
  .subscriptions-map-card-compact .subscription-overview-map{height:340px!important;min-height:340px!important;border-radius:20px!important;}
  .subscription-map-summary{left:18px!important;bottom:18px!important;padding:11px 13px!important;border-radius:16px!important;}
  .subscription-map-summary b{font-size:18px!important;}
  .subscription-map-summary span{font-size:14px!important;}

  .subscriptions-bottom-row{gap:12px!important;margin-top:14px!important;}
  .subscription-info-note,
  .subscription-human-note{padding:17px!important;border-radius:20px!important;gap:12px!important;align-items:flex-start!important;}
  .subscription-info-note>span{width:46px!important;height:46px!important;font-size:22px!important;flex:0 0 46px!important;}
  .subscription-info-note b,
  .subscription-human-note b{font-size:22px!important;line-height:1.15!important;}
  .subscription-info-note p,
  .subscription-human-note p{font-size:16px!important;line-height:1.36!important;margin-top:5px!important;}
  .subscription-human-note .hands-heart{transform:scale(.72)!important;transform-origin:top left!important;flex:0 0 54px!important;}
  .subscription-human-note .people-heart{transform:scale(.55)!important;transform-origin:bottom center!important;align-self:center!important;}

  .subscriptions-feed-card{padding:17px!important;}
  .subscriptions-feed-titlebar{gap:10px!important;margin-bottom:10px!important;}
  .subscriptions-feed-titlebar h2{font-size:26px!important;line-height:1.16!important;}
  .subscriptions-feed-titlebar p{font-size:15px!important;line-height:1.36!important;}
  .subscription-feed-count{min-width:88px!important;min-height:62px!important;border-radius:16px!important;padding:10px 12px!important;justify-self:start!important;}
  .subscription-feed-count span{font-size:13px!important;}
  .subscription-feed-count b{font-size:28px!important;}
  .subscriptions-feed-layout{gap:12px!important;margin-top:10px!important;}
  .subscriptions-feed-layout #map{height:340px!important;min-height:340px!important;}
  .subscriptions-feed-list{gap:10px!important;margin-top:14px!important;}
  .subscriptions-feed-list-head{display:block!important;margin-bottom:8px!important;}
  .subscriptions-feed-list-head b{display:block!important;font-size:25px!important;line-height:1.15!important;margin-bottom:5px!important;}
  .subscriptions-feed-list-head span{display:block!important;font-size:15px!important;line-height:1.34!important;text-align:left!important;}
}

@media (max-width: 520px){
  body .subscriptions-page{padding-left:12px!important;padding-right:12px!important;}
  .subscriptions-hero-compact h1{font-size:29px!important;}
  .subscriptions-hero-compact p{font-size:16px!important;}
  .subscriptions-tabs a{min-height:50px!important;font-size:15px!important;}
  .subscriptions-summary-panel>div{min-height:72px!important;padding:13px 16px!important;}

  .subscription-item-modern{padding:15px!important;border-radius:19px!important;}
  .subscription-title-row{grid-template-columns:34px minmax(0,1fr) auto!important;gap:9px!important;}
  .subscription-kind-icon{width:34px!important;height:34px!important;font-size:18px!important;}
  .subscription-title-row b{font-size:20px!important;}
  .subscription-title-row em{font-size:12px!important;padding:5px 8px!important;}
  .subscription-item-main>span{font-size:14px!important;}
  .subscription-actions-modern .secondary-btn{font-size:14px!important;}

  .subscriptions-map-card-compact .subscription-overview-map,
  .subscriptions-feed-layout #map{height:330px!important;min-height:330px!important;}

  .subscription-info-note,
  .subscription-human-note{padding:16px!important;}
  .subscription-info-note b,
  .subscription-human-note b{font-size:21px!important;}
  .subscription-info-note p,
  .subscription-human-note p{font-size:15px!important;}
  .subscription-human-note .people-heart{display:none!important;}

  .subscription-feed-item{display:grid!important;grid-template-columns:86px minmax(0,1fr)!important;gap:11px!important;padding:13px!important;border-radius:20px!important;align-items:start!important;}
  .subscription-feed-thumb{width:86px!important;height:76px!important;border-radius:15px!important;}
  .subscription-feed-meta{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin-bottom:5px!important;}
  .subscription-feed-meta span{font-size:12px!important;line-height:1.15!important;padding:6px 9px!important;border-radius:999px!important;max-width:100%!important;}
  .subscription-feed-meta em{font-size:13px!important;line-height:1.2!important;}
  .subscription-feed-body h3{font-size:20px!important;line-height:1.13!important;margin:5px 0!important;}
  .subscription-feed-body p{font-size:15px!important;line-height:1.28!important;margin:4px 0 0!important;}
  .subscription-feed-open{grid-column:1 / -1!important;min-height:46px!important;border-radius:15px!important;font-size:16px!important;margin-top:4px!important;}
  .subscriptions-feed-list-head b{font-size:24px!important;}
  .subscriptions-feed-list-head span{font-size:15px!important;}
}

/* Subscriptions professional mobile header + announcement wording cleanup */
.subscriptions-tabs a span{display:none!important;}
.subscriptions-show-all-btn{
  width:100%;
  min-height:48px;
  border-radius:16px;
  margin-top:2px;
}
.is-extra-subscription-feed-item{display:none!important;}
.subscriptions-feed-list.is-expanded .is-extra-subscription-feed-item{display:grid!important;}

@media (max-width: 860px){
  .subscriptions-tabs{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:100%!important;
    max-width:100%!important;
    gap:6px!important;
  }
  .subscriptions-tabs a{
    min-width:0!important;
    text-align:center!important;
    white-space:normal!important;
  }
  .subscriptions-summary-compact{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:0!important;
    background:#fff!important;
    border:1px solid #e3f1dd!important;
    border-radius:22px!important;
    padding:6px!important;
    box-shadow:0 16px 38px rgba(31,76,22,.08)!important;
    margin-bottom:16px!important;
  }
  .subscriptions-summary-compact>div{
    min-height:72px!important;
    padding:12px 10px!important;
    border:0!important;
    border-radius:16px!important;
    box-shadow:none!important;
    background:transparent!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
  }
  .subscriptions-summary-compact>div + div{
    border-left:1px solid #e8f2e2!important;
  }
  .subscriptions-summary-compact span{
    font-size:13px!important;
    line-height:1.15!important;
    margin-bottom:5px!important;
    color:#657084!important;
  }
  .subscriptions-summary-compact b{
    font-size:28px!important;
    line-height:1!important;
    color:#149000!important;
  }
  .subscriptions-feed-titlebar{
    display:block!important;
  }
  .subscription-feed-count{
    margin-top:14px!important;
    width:100%!important;
    min-height:66px!important;
    align-items:flex-start!important;
    padding-left:18px!important;
  }
  .subscriptions-feed-layout .visible-announcements-head h3{
    font-size:23px!important;
    line-height:1.15!important;
  }
  .subscriptions-feed-list-head span{
    max-width:none!important;
  }
}

@media (max-width: 520px){
  .subscriptions-tabs a{
    font-size:15px!important;
    line-height:1.15!important;
    padding:8px 6px!important;
  }
  .subscriptions-summary-compact{
    border-radius:20px!important;
    padding:5px!important;
  }
  .subscriptions-summary-compact>div{
    min-height:66px!important;
    padding:10px 6px!important;
  }
  .subscriptions-summary-compact span{font-size:12.5px!important;}
  .subscriptions-summary-compact b{font-size:27px!important;}
  .subscriptions-feed-titlebar h2{font-size:25px!important;}
  .subscriptions-feed-titlebar p{font-size:15px!important;}
  .subscriptions-feed-layout .visible-announcements-head h3{font-size:22px!important;}
  .subscriptions-show-all-btn{min-height:50px!important;font-size:16px!important;}
}

/* v1.4.12 subscriptions mobile management: compact professional two-column cards */
@media (max-width: 760px){
  .subscriptions-list-card .subscription-list-modern{
    gap:12px!important;
  }
  .subscriptions-list-card .subscription-item-modern{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 124px!important;
    column-gap:12px!important;
    row-gap:10px!important;
    align-items:start!important;
    padding:16px 14px 14px 18px!important;
    border-radius:20px!important;
    min-height:0!important;
  }
  .subscriptions-list-card .subscription-item-modern:before{
    width:6px!important;
  }
  .subscriptions-list-card .subscription-item-main{
    min-width:0!important;
    gap:6px!important;
  }
  .subscriptions-list-card .subscription-title-row{
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
    padding-right:0!important;
    margin-bottom:4px!important;
  }
  .subscriptions-list-card .subscription-kind-icon{
    width:34px!important;
    height:34px!important;
    font-size:18px!important;
  }
  .subscriptions-list-card .subscription-title-row b{
    font-size:24px!important;
    line-height:1.08!important;
    overflow:hidden!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
  }
  .subscriptions-list-card .subscription-title-row em{
    grid-column:1 / -1!important;
    width:max-content!important;
    max-width:100%!important;
    padding:4px 9px!important;
    font-size:12px!important;
    line-height:1.1!important;
    margin-top:2px!important;
  }
  .subscriptions-list-card .subscription-item-main>span{
    font-size:16px!important;
    line-height:1.28!important;
  }
  .subscriptions-list-card .subscription-chip-label{
    font-size:15px!important;
    margin-top:6px!important;
  }
  .subscriptions-list-card .subscription-tag-list{
    gap:6px!important;
  }
  .subscriptions-list-card .subscription-tag-list span,
  .subscriptions-list-card .subscription-more-tags{
    font-size:13px!important;
    padding:6px 9px!important;
    border-radius:10px!important;
  }
  .subscriptions-list-card .subscription-actions-modern{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:8px!important;
    min-width:0!important;
  }
  .subscriptions-list-card .subscription-count-pill{
    min-height:58px!important;
    border-radius:16px!important;
    gap:2px!important;
  }
  .subscriptions-list-card .subscription-count-pill span{
    font-size:11px!important;
    line-height:1.15!important;
    max-width:100%!important;
  }
  .subscriptions-list-card .subscription-count-pill b{
    font-size:25px!important;
  }
  .subscriptions-list-card .subscription-toggle-form{
    gap:4px!important;
  }
  .subscriptions-list-card .subscription-toggle-form small{
    font-size:11px!important;
    line-height:1.12!important;
    max-width:100%!important;
  }
  .subscriptions-list-card .subscription-toggle{
    width:48px!important;
    height:28px!important;
    align-self:center!important;
  }
  .subscriptions-list-card .edit-soft,
  .subscriptions-list-card .danger-soft{
    width:100%!important;
    min-height:42px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:10px 8px!important;
    border-radius:14px!important;
    font-size:14px!important;
    line-height:1.15!important;
    text-align:center!important;
    white-space:normal!important;
  }
  .subscriptions-list-card .danger-soft{
    min-height:34px!important;
    padding:6px 4px!important;
  }
}

@media (max-width: 390px){
  .subscriptions-list-card .subscription-item-modern{
    grid-template-columns:minmax(0,1fr) 112px!important;
    column-gap:10px!important;
    padding-right:12px!important;
  }
  .subscriptions-list-card .subscription-title-row b{
    font-size:22px!important;
  }
  .subscriptions-list-card .subscription-item-main>span{
    font-size:15px!important;
  }
  .subscriptions-list-card .edit-soft,
  .subscriptions-list-card .danger-soft{
    font-size:13px!important;
  }
}


/* v1.4.13 subscriptions mobile management: cleaner compact 2-column layout */
@media (max-width: 760px){
  .subscriptions-list-card .subscription-item-modern{
    grid-template-columns:minmax(0, 1fr) 116px!important;
    column-gap:10px!important;
    padding:14px 12px 14px 18px!important;
    border-radius:18px!important;
    align-items:start!important;
  }
  .subscriptions-list-card .subscription-title-row{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    flex-wrap:wrap!important;
    margin:0 0 6px!important;
  }
  .subscriptions-list-card .subscription-kind-icon{
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    font-size:17px!important;
  }
  .subscriptions-list-card .subscription-title-row b{
    flex:1 1 92px!important;
    min-width:0!important;
    font-size:21px!important;
    line-height:1.08!important;
    -webkit-line-clamp:2!important;
  }
  .subscriptions-list-card .subscription-title-row em{
    grid-column:auto!important;
    width:auto!important;
    margin:0!important;
    padding:4px 8px!important;
    font-size:11.5px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  .subscriptions-list-card .subscription-item-main{
    gap:5px!important;
  }
  .subscriptions-list-card .subscription-item-main>span{
    font-size:14.5px!important;
    line-height:1.22!important;
  }
  .subscriptions-list-card .subscription-chip-label{
    font-size:14px!important;
    margin-top:6px!important;
  }
  .subscriptions-list-card .subscription-tag-list span,
  .subscriptions-list-card .subscription-more-tags{
    font-size:12.5px!important;
    padding:5px 8px!important;
    border-radius:10px!important;
  }
  .subscriptions-list-card .subscription-actions-modern{
    gap:7px!important;
  }
  .subscriptions-list-card .subscription-count-pill{
    min-height:52px!important;
    border-radius:15px!important;
    padding:7px 6px!important;
  }
  .subscriptions-list-card .subscription-count-pill span{
    font-size:11px!important;
    line-height:1.05!important;
  }
  .subscriptions-list-card .subscription-count-pill b{
    font-size:24px!important;
    line-height:1!important;
  }
  .subscriptions-list-card .subscription-toggle-form{
    display:grid!important;
    grid-template-columns:48px 1fr!important;
    align-items:center!important;
    column-gap:5px!important;
    padding:2px 0!important;
  }
  .subscriptions-list-card .subscription-toggle-form small{
    font-size:11px!important;
    line-height:1.05!important;
    text-align:left!important;
    max-width:none!important;
  }
  .subscriptions-list-card .subscription-toggle{
    width:46px!important;
    height:27px!important;
  }
  .subscriptions-list-card .subscription-toggle span{
    width:21px!important;
    height:21px!important;
  }
  .subscriptions-list-card .subscription-toggle.on span{
    transform:translateX(19px)!important;
  }
  .subscriptions-list-card .edit-soft,
  .subscriptions-list-card .danger-soft{
    min-height:38px!important;
    padding:8px 6px!important;
    border-radius:13px!important;
    font-size:13px!important;
  }
  .subscriptions-list-card .danger-soft{
    min-height:30px!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
}

@media (max-width: 390px){
  .subscriptions-list-card .subscription-item-modern{
    grid-template-columns:minmax(0,1fr) 108px!important;
    column-gap:8px!important;
    padding-left:16px!important;
    padding-right:10px!important;
  }
  .subscriptions-list-card .subscription-title-row b{font-size:20px!important;}
  .subscriptions-list-card .subscription-item-main>span{font-size:14px!important;}
  .subscriptions-list-card .subscription-toggle-form{grid-template-columns:44px 1fr!important;}
  .subscriptions-list-card .subscription-toggle{width:42px!important;height:25px!important;}
  .subscriptions-list-card .subscription-toggle span{width:19px!important;height:19px!important;}
  .subscriptions-list-card .subscription-toggle.on span{transform:translateX(17px)!important;}
}


/* v1.4.14 subscriptions: canonical category colours and compact address */
.subscription-location-line{
  display:block;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.subscription-item-modern.is-muted:before{opacity:.38!important;}
.subscription-item-modern.is-muted .subscription-kind-icon{filter:saturate(.45);opacity:.72;}
@media (max-width:760px){
  .subscriptions-list-card .subscription-location-line{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

/* Subscription human note illustrations: clean helping-hand and community symbols */
.subscription-human-note .hands-heart:before,.subscription-human-note .hands-heart:after{content:none!important;display:none!important}
.subscription-human-note .people-heart i{display:none!important}
@media (max-width:760px){
  .subscription-human-note .hands-heart{width:58px!important;height:54px!important;flex-basis:58px!important;transform:none!important}
  .subscription-human-note .people-heart{display:flex!important;min-width:0!important;margin-top:14px!important;transform:none!important}
  .subscription-human-note .people-heart svg{width:138px!important}
}
@media (max-width:420px){
  .subscription-human-note .hands-heart{width:52px!important;height:48px!important;flex-basis:52px!important}
  .subscription-human-note .people-heart svg{width:126px!important}
}

/* Subscriptions: final unified illustrations (desktop + mobile) */
.subscription-note-icon{display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 46px!important;width:46px!important;height:46px!important;border-radius:50%!important;background:#eef9eb!important;color:#2ca85a!important;font-size:0!important}
.subscription-note-icon svg{display:block;width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.subscription-note-icon .icon-soft-line{opacity:.42}
.subscription-human-note .hands-heart{width:64px!important;height:58px!important;flex:0 0 64px!important;transform:none!important;margin:0!important}
.subscription-human-note .hands-heart svg{width:64px!important;height:58px!important}
.subscription-human-note .help-hand-main,.subscription-human-note .help-hand-cuff,.subscription-human-note .help-hand-ray{fill:none;stroke:#20a957;stroke-linecap:round;stroke-linejoin:round}
.subscription-human-note .help-hand-main{stroke-width:3.2}
.subscription-human-note .help-hand-cuff{stroke-width:3;fill:#f1faef}
.subscription-human-note .help-hand-ray{stroke-width:2.8;opacity:.72}
.subscription-human-note .people-heart{display:flex!important;align-items:center!important;justify-content:flex-end!important;min-width:164px!important;margin:0!important;transform:none!important}
.subscription-human-note .people-heart svg{display:block!important;width:166px!important;height:auto!important;overflow:visible!important}
.subscription-human-note .people-heart .person{fill:none;stroke-linecap:round;stroke-linejoin:round}
.subscription-human-note .people-heart .person-side{stroke:#a9cdb1;stroke-width:3;opacity:.78}
.subscription-human-note .people-heart .person-main{stroke:#18a64b;stroke-width:4.2}
.subscription-human-note .people-heart .community-line{fill:none;stroke:#c7dfcd;stroke-width:2.4;stroke-linecap:round}
@media (max-width:760px){
  .subscription-info-note{display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;gap:14px!important;align-items:start!important}
  .subscription-info-note .subscription-note-icon{width:50px!important;height:50px!important;flex-basis:50px!important}
  .subscription-info-note .subscription-note-icon svg{width:31px!important;height:31px!important}
  .subscription-human-note{display:grid!important;grid-template-columns:66px minmax(0,1fr)!important;gap:14px!important;align-items:start!important}
  .subscription-human-note .hands-heart{width:60px!important;height:54px!important;flex-basis:60px!important}
  .subscription-human-note .hands-heart svg{width:60px!important;height:54px!important}
  .subscription-human-note .people-heart{grid-column:1/-1!important;justify-content:center!important;min-width:0!important;margin-top:15px!important}
  .subscription-human-note .people-heart svg{width:148px!important}
}
@media (max-width:420px){
  .subscription-info-note,.subscription-human-note{grid-template-columns:54px minmax(0,1fr)!important;gap:12px!important}
  .subscription-human-note .hands-heart{width:52px!important;height:48px!important;flex-basis:52px!important}
  .subscription-human-note .hands-heart svg{width:52px!important;height:48px!important}
  .subscription-human-note .people-heart svg{width:136px!important}
}


/* Unified time icon for announcement cards — 2026-07-12 */
.pomogite-time-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  width:1em;
  height:1em;
  color:#7b8794;
}
.pomogite-time-icon svg{
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
  fill:none;
  stroke:currentColor;
  stroke-width:1.85;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.visible-dog-time,
.home-latest-time{
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  white-space:nowrap !important;
  font-variant-numeric:tabular-nums;
}
.visible-dog-time .pomogite-time-icon{
  width:13px;
  height:13px;
}
.home-latest-time .pomogite-time-icon{
  width:14px;
  height:14px;
}
@media (min-width:701px){
  .visible-dog-time .pomogite-time-icon{width:12px;height:12px;}
  .home-latest-time .pomogite-time-icon{width:13px;height:13px;}
}


/* =====================================================
   2026-07-12 — единая кнопка «Показать ещё» для блока «Недавно добавили»
   ПК: 12 карточек за порцию. Телефон: 6 карточек за порцию.
===================================================== */
.home-latest-help .home-latest-bottom-link{
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
  border:1px solid #dcefd4;
  background:#f1faeb;
  color:#24710e;
  font-weight:800;
  transition:background-color .18s ease, transform .18s ease, opacity .18s ease;
}
.home-latest-help .home-latest-bottom-link:hover{
  background:#e7f7df;
}
.home-latest-help .home-latest-bottom-link:active{
  transform:translateY(1px);
}
.home-latest-help .home-latest-bottom-link:disabled{
  cursor:wait;
  opacity:.72;
}
@media (min-width:761px){
  .home-latest-help .home-latest-bottom-link{
    display:flex !important;
    align-items:center;
    justify-content:center;
    width:max-content;
    min-width:180px;
    min-height:42px;
    margin:18px auto 0;
    padding:10px 24px;
    border-radius:16px;
    font-size:15px;
    line-height:1.2;
  }
}

/* Live announcement preview: keep the urgent badge hidden until the checkbox is selected. */
.preview-urgent[hidden]{
  display:none !important;
}

/* =====================================================
   REP v2 — подтверждённая помощь и оценка 1–5 звёзд
   ===================================================== */
.helper-select-item{
  transition:border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}
.helper-select-item.is-selected{
  border-color:#9fd78c;
  background:#fbfff9;
  box-shadow:0 8px 22px rgba(37,122,16,.08);
}
.helper-select-item.has-rating-error{
  border-color:#e24c4b !important;
  box-shadow:0 0 0 3px rgba(226,76,75,.12) !important;
}
.helper-select-head{
  display:contents;
}
.helper-select-check{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.helper-evaluation{
  grid-column:1 / -1;
  display:none;
  padding:11px 12px 12px;
  border-radius:14px;
  background:#f5fbf1;
  border:1px solid #deedd6;
}
.helper-select-item.is-selected .helper-evaluation,
.helper-evaluation[aria-hidden="false"]{
  display:block;
}
.helper-star-rating{
  display:inline-flex;
  align-items:center;
  gap:2px;
  padding:2px 5px;
  border-radius:12px;
  background:#fff;
  border:1px solid #e2eadb;
}
.helper-star{
  appearance:none;
  -webkit-appearance:none;
  width:34px;
  height:34px;
  padding:0;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#b7bea9;
  font:900 27px/1 Arial,sans-serif;
  cursor:pointer;
  transition:transform .12s ease, color .12s ease, background-color .12s ease;
}
.helper-star:hover,
.helper-star:focus-visible{
  color:#e5a600;
  background:#fff8d9;
  outline:2px solid rgba(229,166,0,.28);
  outline-offset:1px;
  transform:translateY(-1px);
}
.helper-star.is-filled{
  color:#e2a000;
}
.helper-star-caption{
  display:inline-block;
  min-width:130px;
  color:#5f6f58;
  font-size:12px;
  font-weight:800;
}
.helper-select-item.has-rating-error .helper-star-caption{
  color:#b42318;
}
.helper-evaluation textarea{
  margin-top:9px;
}
.profile-trust-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
}
.profile-organizer-badge{
  background:#eef8ff !important;
  border-color:#cde5f4 !important;
  color:#236482 !important;
}
.profile-stat-row-reputation{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  width:100% !important;
}
.profile-stat-row-reputation > a,
.profile-stat-row-reputation > .profile-stat-static{
  min-width:0;
  justify-content:center;
}
.cabinet-stats-row-reputation{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}
.cabinet-stats-row-reputation span small{
  display:block;
  margin-top:4px;
  color:#6c7b68;
  font-size:11px;
  font-weight:700;
}
.my-help-page .cabinet-log-symbol{
  color:#287c16;
}
@media(max-width:720px){
  .helper-select-head{display:contents;}
  .helper-rating-row{
    align-items:flex-start;
    flex-direction:column;
    gap:7px;
  }
  .helper-star-rating{width:max-content;max-width:100%;}
  .helper-star{width:40px;height:40px;font-size:30px;}
  .profile-stat-row-reputation{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .profile-stat-row-reputation > a,
  .profile-stat-row-reputation > .profile-stat-static{
    height:auto !important;
    min-height:58px !important;
  }
  .cabinet-stats-row-reputation{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:420px){
  .helper-star{width:38px;height:38px;font-size:28px;}
  .cabinet-stats-row-reputation{
    grid-template-columns:1fr !important;
  }
}
.profile-verified-mark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:5px;
  width:22px;
  height:22px;
  border-radius:999px;
  background:#fff6cf;
  box-shadow:inset 0 0 0 1px rgba(184,133,0,.18);
  cursor:help;
}
.rep-pending-count{
  display:inline-flex;
  min-width:28px;
  height:28px;
  align-items:center;
  justify-content:center;
  margin-left:7px;
  padding:0 8px;
  border-radius:999px;
  background:#fff2cf;
  color:#8a5a00;
  font-size:14px;
}
.rep-review-list{display:grid;gap:10px;margin-top:12px;}
.rep-review-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:14px;
  border:1px solid #e5dfc8;
  border-radius:16px;
  background:#fffdf6;
}
.rep-review-item>div:first-child{display:grid;gap:4px;min-width:0;}
.rep-review-item b{color:#172033;}
.rep-review-item span{color:#5b684f;font-weight:800;}
.rep-review-item small{color:#7a7463;line-height:1.35;}
.rep-review-item p{margin:4px 0 0;color:#3f4858;}
.rep-review-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.rep-review-actions form{margin:0;}
.rep-review-actions .primary-btn,.rep-review-actions .secondary-btn{min-height:38px;padding:8px 14px;}
@media(max-width:720px){
  .rep-review-item{grid-template-columns:1fr;}
  .rep-review-actions{width:100%;}
  .rep-review-actions form{flex:1;}
  .rep-review-actions button{width:100%;}
}

.profile-history-limit-note{
  margin:10px 0 0;
  color:#6c7b68;
  font-size:12px;
  font-weight:700;
  text-align:center;
}

/* =====================================================
   REP v3 — сценарии объявлений и возврат найденного
   ===================================================== */
.found-return-pending{
  display:flex;
  flex-direction:column;
  gap:8px;
  background:#fffaf0;
  border-color:#f0d59a;
}
.found-return-pending span{
  color:#6d5830;
  font-size:13px;
  line-height:1.45;
}
.found-owner-select-list .found-owner-option{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
}
.found-owner-choice{
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-width:0;
  cursor:pointer;
}
.found-owner-option input[type="radio"]{
  width:19px;
  height:19px;
  margin:0;
  accent-color:var(--green);
}
.found-owner-option:has(input[type="radio"]:checked){
  border-color:#9fd78c;
  background:#fbfff9;
  box-shadow:0 8px 22px rgba(37,122,16,.08);
}
.special-close-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:10px;
}
.special-close-actions form,
.special-close-actions button{
  width:100%;
}
.found-return-confirm-form{
  border-color:#b9dda8;
  background:#fbfff9;
}
.found-return-confirm-form textarea{
  width:100%;
  min-height:74px;
  margin-top:10px;
  padding:10px 12px;
  border:1px solid #d8e2d0;
  border-radius:12px;
  font:inherit;
  resize:vertical;
}
.found-return-confirm-form.has-rating-error{
  border-color:#e24c4b !important;
  box-shadow:0 0 0 3px rgba(226,76,75,.12) !important;
}
.found-return-cancel-beneficiary{
  margin-top:8px;
}
.return-star-rating{
  margin-top:2px;
}
@media(max-width:700px){
  .found-owner-select-list .found-owner-option{
    grid-template-columns:1fr;
  }
  .found-owner-option .helper-chat-link{
    width:100%;
    text-align:center;
  }
  .special-close-actions{
    grid-template-columns:1fr;
  }
}

/* ===== v4.0: профессиональный центр сообщений и контекст объявления ===== */
.messages-v4{padding-top:24px;padding-bottom:42px}
.messages-v4 .messages-shell{padding:0;background:transparent;border:0;box-shadow:none}
.messages-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}
.messages-page-head h1{margin:0 0 6px;font-size:34px;line-height:1.1;letter-spacing:-.02em;color:#172033}
.messages-page-head p{margin:0;color:#748096;font-size:15px}
.messages-page-summary{display:inline-flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid #dcebd6;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(23,32,51,.06);color:#627086;font-size:13px;font-weight:800;white-space:nowrap}
.messages-page-summary b{display:grid;place-items:center;min-width:27px;height:27px;padding:0 7px;border-radius:999px;background:#4fb40b;color:#fff;font-size:13px}
.messages-v4 .messages-layout{display:grid;grid-template-columns:minmax(300px,350px) minmax(0,1fr);gap:20px;align-items:stretch;min-height:650px}
.messages-v4 .dialogs-list,.messages-v4 .chat-panel{padding:0;border:1px solid #e5ede1;border-radius:24px;background:#fff;box-shadow:0 14px 38px rgba(23,32,51,.08);overflow:hidden}
.messages-v4 .dialogs-list{display:flex;flex-direction:column;min-height:650px}
.dialogs-head{padding:18px 18px 12px;border-bottom:1px solid #edf2ea;background:linear-gradient(180deg,#fff 0%,#fbfdf9 100%)}
.dialogs-head>div:first-child{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.dialogs-head h2{margin:0;font-size:21px;color:#172033}
.dialogs-head>div:first-child>span{display:grid;place-items:center;min-width:25px;height:25px;padding:0 7px;border-radius:999px;background:#eef7e9;color:#397a0d;font-size:12px;font-weight:900}
.dialogs-search{display:flex;align-items:center;gap:8px;height:42px;padding:0 12px;border:1px solid #dfe9db;border-radius:14px;background:#fff;transition:.18s}
.dialogs-search:focus-within{border-color:#70bd4a;box-shadow:0 0 0 3px rgba(80,180,20,.10)}
.dialogs-search span{font-size:19px;color:#839087;line-height:1}
.dialogs-search input{width:100%;border:0;outline:0;background:transparent;font:inherit;font-size:14px;color:#172033}
.dialogs-filters{display:flex;gap:6px;margin-top:10px}
.dialogs-filters a{padding:7px 10px;border-radius:10px;text-decoration:none;color:#6d788c;font-size:12px;font-weight:900;transition:.18s}
.dialogs-filters a:hover,.dialogs-filters a.active{background:#edf8e8;color:#317506}
.dialogs-scroll{flex:1;overflow:auto;padding:9px 9px 12px;scrollbar-width:thin;scrollbar-color:#cad8c4 transparent}
.dialog-card{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr);gap:11px;align-items:center;min-height:79px;padding:10px 12px 10px 10px;border:1px solid transparent;border-radius:17px;text-decoration:none;color:#172033;transition:border-color .18s,background .18s,box-shadow .18s,transform .18s}
.dialog-card+.dialog-card{margin-top:4px}
.dialog-card:hover{background:#f8fcf5;border-color:#dcebd4;transform:translateY(-1px)}
.dialog-card.active{background:#f0faeb;border-color:#86c96b;box-shadow:0 7px 18px rgba(61,133,24,.10)}
.dialog-card.unread:not(.active){background:#fbfff8}
.dialog-media{position:relative;display:block;width:58px;height:58px}
.dialog-announcement-thumb,.dialog-announcement-placeholder{display:block;width:56px;height:56px;border-radius:14px;object-fit:cover;background:#eaf4e5;border:1px solid #dce9d6}
.dialog-announcement-placeholder{display:grid;place-items:center;font-size:22px}
.dialog-user-avatar{position:absolute;right:-2px;bottom:-3px;display:block;width:30px;height:30px;border:3px solid #fff;border-radius:50%;background:#fff;box-shadow:0 3px 9px rgba(23,32,51,.14)}
.dialog-user-avatar img{display:block!important;width:24px!important;height:24px!important;border-radius:50%!important;object-fit:cover!important}
.dialog-main{display:block;min-width:0}
.dialog-topline{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:3px}
.dialog-topline b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;color:#172033}
.dialog-topline time{flex:0 0 auto;color:#919aa8;font-size:11px;font-weight:800}
.dialog-ad-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;color:#397a0d;font-size:12px;font-weight:900}
.dialog-last-message{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:1;color:#788396;font-size:12px;line-height:1.35}
.dialog-card.unread .dialog-last-message{color:#4d596c;font-weight:800}
.dialog-unread-badge{position:absolute;right:11px;bottom:10px;display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#56b90e;color:#fff;font-size:10px;font-style:normal;font-weight:900;box-shadow:0 3px 9px rgba(68,158,18,.22)}
.dialogs-search-empty{padding:22px 16px;text-align:center;color:#7f8998;font-size:13px}
.dialogs-pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:11px;border-top:1px solid #edf2ea;background:#fbfdf9}
.dialogs-pagination a{display:grid;place-items:center;width:31px;height:31px;border:1px solid #dce8d7;border-radius:10px;background:#fff;color:#3d7e13;text-decoration:none;font-weight:900}
.dialogs-pagination span{color:#7d8796;font-size:12px;font-weight:800}
.messages-v4 .chat-panel{display:flex;flex-direction:column;min-width:0;min-height:650px}
.chat-empty-state{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;min-height:620px;padding:40px;text-align:center}
.chat-empty-icon{display:grid;place-items:center;width:72px;height:72px;margin-bottom:16px;border-radius:22px;background:#eef8e9;font-size:30px;box-shadow:0 12px 30px rgba(51,128,15,.10)}
.chat-empty-state h2{margin:0 0 8px;font-size:23px;color:#172033}
.chat-empty-state p{max-width:390px;margin:0;color:#7b8698;line-height:1.55}
.chat-mobile-back{display:none}
.chat-person-head{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center;padding:16px 18px;border-bottom:1px solid #edf2ea;background:#fff}
.chat-head-avatar,.chat-head-avatar img{display:block;width:48px!important;height:48px!important;border-radius:50%!important;object-fit:cover!important}
.chat-head-avatar img{box-shadow:0 7px 18px rgba(23,32,51,.10)}
.chat-person-copy{min-width:0}
.chat-person-copy>span{display:block;margin-bottom:2px;color:#8a94a4;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.chat-person-copy h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:19px}
.chat-person-copy h2 a{color:#286f07;text-decoration:none}
.chat-profile-btn{padding:9px 13px;border:1px solid #dce9d7;border-radius:12px;background:#f8fcf5;color:#3b7617;text-decoration:none;font-size:12px;font-weight:900;transition:.18s}
.chat-profile-btn:hover{border-color:#8aca6c;background:#f0f9eb}
.chat-announcement-card{display:grid;grid-template-columns:104px minmax(0,1fr) auto;gap:14px;align-items:center;margin:14px 16px 6px;padding:12px;border:1px solid #dce9d6;border-radius:18px;background:linear-gradient(135deg,#f7fcf4 0%,#fff 75%);box-shadow:0 8px 22px rgba(41,105,12,.06)}
.chat-announcement-media,.chat-announcement-media img{display:block;width:104px;height:82px;border-radius:13px;object-fit:cover}
.chat-announcement-media{display:grid;place-items:center;overflow:hidden;background:#eaf4e5;color:#46831c;font-size:25px}
.chat-announcement-copy{min-width:0}
.chat-announcement-badges{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:5px}
.chat-announcement-badges span,.chat-announcement-badges em{display:inline-flex;align-items:center;min-height:23px;padding:4px 8px;border-radius:999px;font-size:10px;font-style:normal;font-weight:900;line-height:1.2}
.chat-announcement-badges span{background:#eaf6e4;color:#3a7715}
.chat-announcement-badges em{background:#fff3dc;color:#9a6100}
.chat-announcement-copy h3{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0 0 4px;color:#172033;font-size:17px}
.chat-announcement-copy p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:0 0 7px;color:#6e798c;font-size:12px;line-height:1.4}
.chat-announcement-meta{display:flex;gap:10px;flex-wrap:wrap;color:#86909f;font-size:10px;font-weight:800}
.chat-open-announcement{align-self:center;padding:10px 13px;border-radius:12px;background:#50b40d;color:#fff;text-decoration:none;font-size:12px;font-weight:900;white-space:nowrap;box-shadow:0 8px 18px rgba(65,155,15,.20);transition:.18s}
.chat-open-announcement:hover{background:#45a406;transform:translateY(-1px)}
.chat-announcement-card.is-unavailable{opacity:.75}
.chat-messages-wrap{display:flex;flex:1;min-height:0;flex-direction:column;padding:4px 16px 0}
.chat-load-older{align-self:center;margin:8px 0 3px;padding:7px 12px;border:1px solid #dce7d8;border-radius:999px;background:#fff;color:#59704c;font:inherit;font-size:11px;font-weight:900;cursor:pointer;transition:.18s}
.chat-load-older:hover{border-color:#8bc971;background:#f5fbf1}
.chat-load-older:disabled{opacity:.65;cursor:wait}
.messages-v4 .chat-messages{flex:1;min-height:280px;max-height:480px;overflow:auto;padding:10px 5px 18px;scrollbar-width:thin;scrollbar-color:#c9d8c3 transparent}
.chat-date-separator{display:flex;align-items:center;justify-content:center;margin:7px 0 12px}
.chat-date-separator span{padding:5px 10px;border-radius:999px;background:#f1f5ee;color:#879183;font-size:10px;font-weight:900}
.messages-v4 .chat-message-row{display:flex;align-items:flex-end;gap:8px;margin-bottom:9px}
.messages-v4 .chat-message-row.me{justify-content:flex-end}
.messages-v4 .chat-message-row.me .chat-message-avatar{order:2}
.messages-v4 .chat-message-avatar,.messages-v4 .chat-message-avatar img{display:block;width:30px!important;height:30px!important;border-radius:50%!important;object-fit:cover!important}
.messages-v4 .chat-message-avatar{flex:0 0 30px}
.messages-v4 .chat-bubble{max-width:min(76%,620px);padding:10px 12px 7px;border-radius:16px;box-shadow:none;font-size:14px;line-height:1.45}
.messages-v4 .chat-bubble.me{border-bottom-right-radius:5px;background:#55b80e;color:#fff}
.messages-v4 .chat-bubble.other{border:1px solid #edf1eb;border-bottom-left-radius:5px;background:#f3f6f1;color:#172033}
.chat-message-text{overflow-wrap:anywhere}
.chat-message-meta{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:5px;font-size:9px;line-height:1;opacity:.72}
.chat-delivery-state{font-weight:800}
.messages-v4 .chat-form{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin:0;padding:13px 16px 16px;border-top:1px solid #edf2ea;background:#fff}
.chat-compose-field{position:relative}
.messages-v4 .chat-form textarea{display:block;width:100%;min-height:58px;max-height:150px;margin:0;padding:11px 13px 22px;border:1px solid #d9e5d5;border-radius:15px;background:#fff;color:#172033;font:inherit;font-size:14px;line-height:1.4;resize:vertical;transition:.18s}
.messages-v4 .chat-form textarea:focus{outline:0;border-color:#70bd4a;box-shadow:0 0 0 3px rgba(80,180,20,.10)}
.chat-compose-hint{position:absolute;right:11px;bottom:7px;color:#a0a8b2;font-size:9px;pointer-events:none}
.chat-send-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-width:126px;height:58px;padding:0 17px!important;border-radius:15px!important}
.chat-send-btn b{font-size:17px}
.chat-send-btn:disabled{opacity:.65;cursor:wait;transform:none!important}
.chat-form-error{grid-column:1/-1;margin-top:-3px;padding:8px 10px;border-radius:10px;background:#fff0f0;color:#b42a2a;font-size:12px;font-weight:800}
.messages-v4 .empty.mini{margin:12px;padding:20px 14px;border:1px dashed #dce7d7;border-radius:15px;background:#fbfdf9;color:#7b8797;text-align:center;font-size:13px;line-height:1.5}
@media(max-width:980px){
  .messages-v4 .messages-layout{grid-template-columns:300px minmax(0,1fr);gap:14px}
  .chat-announcement-card{grid-template-columns:84px minmax(0,1fr)}
  .chat-announcement-media,.chat-announcement-media img{width:84px;height:72px}
  .chat-open-announcement{grid-column:1/-1;text-align:center}
  .chat-announcement-copy p{-webkit-line-clamp:1}
}
@media(max-width:760px){
  .messages-v4{padding-top:12px;padding-bottom:18px}
  .messages-page-head{align-items:center;margin-bottom:12px}
  .messages-page-head h1{font-size:27px}
  .messages-page-head p{font-size:13px}
  .messages-page-summary span{display:none}
  .messages-v4 .messages-layout{display:block;min-height:0}
  .messages-v4 .dialogs-list,.messages-v4 .chat-panel{min-height:calc(100vh - 210px);border-radius:20px}
  .messages-v4.has-active-chat .dialogs-list{display:none}
  .messages-v4.show-dialog-list .chat-panel{display:none}
  .chat-mobile-back{display:block;padding:11px 15px;border-bottom:1px solid #edf2ea;background:#fbfdf9;color:#397b12;text-decoration:none;font-size:12px;font-weight:900}
  .chat-person-head{grid-template-columns:42px minmax(0,1fr) auto;padding:12px 14px}
  .chat-head-avatar,.chat-head-avatar img{width:42px!important;height:42px!important}
  .chat-person-copy>span{display:none}
  .chat-person-copy h2{font-size:17px}
  .chat-profile-btn{padding:8px 10px;font-size:11px}
  .chat-announcement-card{grid-template-columns:68px minmax(0,1fr);gap:10px;margin:10px 11px 3px;padding:9px;border-radius:15px}
  .chat-announcement-media,.chat-announcement-media img{width:68px;height:62px;border-radius:11px}
  .chat-announcement-badges{gap:4px;margin-bottom:3px}
  .chat-announcement-badges span,.chat-announcement-badges em{padding:3px 6px;font-size:8px}
  .chat-announcement-copy h3{font-size:14px}
  .chat-announcement-copy p{display:none}
  .chat-announcement-meta{gap:7px;font-size:8px}
  .chat-open-announcement{grid-column:1/-1;padding:9px;font-size:11px}
  .chat-messages-wrap{padding:2px 9px 0}
  .messages-v4 .chat-messages{max-height:none;min-height:330px;padding-left:1px;padding-right:1px}
  .messages-v4 .chat-bubble{max-width:83%;font-size:13px}
  .messages-v4 .chat-message-avatar,.messages-v4 .chat-message-avatar img{width:26px!important;height:26px!important}
  .messages-v4 .chat-message-avatar{flex-basis:26px}
  .messages-v4 .chat-form{grid-template-columns:minmax(0,1fr) 50px;gap:7px;padding:10px}
  .messages-v4 .chat-form textarea{min-height:54px;padding-bottom:11px}
  .chat-compose-hint{display:none}
  .chat-send-btn{min-width:50px;width:50px;height:54px;padding:0!important}
  .chat-send-btn span{display:none}
  .chat-send-btn b{font-size:19px}
}
@media(max-width:420px){
  .messages-page-head p{display:none}
  .dialog-card{grid-template-columns:52px minmax(0,1fr);padding-left:8px;padding-right:9px}
  .dialog-media{width:52px;height:52px}
  .dialog-announcement-thumb,.dialog-announcement-placeholder{width:50px;height:50px}
  .dialog-user-avatar{width:27px;height:27px}
  .dialog-user-avatar img{width:21px!important;height:21px!important}
  .chat-announcement-meta span:nth-child(2){display:none}
}

/* ===== v4.1: фиксированная рабочая область сообщений ===== */
@media (min-width:761px){
  .messages-v4{
    width:min(1240px,calc(100% - 32px));
    max-width:1240px;
    margin-left:auto;
    margin-right:auto;
  }
  .messages-v4 .messages-layout{
    height:clamp(560px,calc(100vh - 250px),820px);
    height:clamp(560px,calc(100dvh - 250px),820px);
    min-height:0;
    align-items:stretch;
  }
  .messages-v4 .dialogs-list,
  .messages-v4 .chat-panel{
    height:100%;
    min-height:0;
  }
  .messages-v4 .dialogs-scroll{
    min-height:0;
    overscroll-behavior:contain;
  }
  .messages-v4 .chat-person-head,
  .messages-v4 .chat-announcement-card,
  .messages-v4 .chat-form{
    flex:0 0 auto;
  }
  .messages-v4 .chat-messages-wrap{
    flex:1 1 auto;
    min-height:0;
    overflow:hidden;
  }
  .messages-v4 .chat-messages{
    flex:1 1 auto;
    min-height:0;
    max-height:none;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
  }
  .messages-v4 .chat-form{
    z-index:2;
    box-shadow:0 -10px 24px rgba(23,32,51,.035);
  }
}
@media (min-width:981px){
  .messages-v4 .messages-layout{
    grid-template-columns:minmax(320px,360px) minmax(0,1fr);
  }
  .messages-v4 .chat-announcement-card{
    grid-template-columns:112px minmax(0,1fr) auto;
  }
  .messages-v4 .chat-announcement-media,
  .messages-v4 .chat-announcement-media img{
    width:112px;
    height:88px;
  }
}


/* Messages v4.2: подсказка о безопасном общении */
.chat-safety-hint{position:absolute;left:13px;bottom:7px;color:#84917f;font-size:9px;font-weight:700;pointer-events:none}
@media(max-width:760px){.chat-safety-hint{display:none}}

/* =====================================================
   v4.5 — Profile and My Help: production adaptive layout
   ===================================================== */
.profile-page,
.my-help-page{
  width:100%;
  max-width:1260px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* ---------- Public profile ---------- */
.profile-card.profile-head-card{
  overflow:visible!important;
  padding:28px 30px!important;
  border-radius:28px!important;
}
.profile-head{
  display:grid!important;
  grid-template-columns:112px minmax(0,1fr) 320px!important;
  grid-template-rows:auto auto!important;
  column-gap:24px!important;
  row-gap:18px!important;
  align-items:start!important;
}
.profile-avatar{
  grid-column:1!important;
  grid-row:1!important;
}
.profile-avatar img,
.profile-avatar .avatar{
  width:104px!important;
  height:104px!important;
  object-fit:cover!important;
}
.profile-main{
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
  align-self:center!important;
}
.profile-main h1,
.profile-name-row h1{
  max-width:none!important;
  margin:0!important;
  font-size:34px!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
}
.profile-name-row{
  align-items:center!important;
  gap:9px!important;
}
.profile-trust-line{
  margin:8px 0 9px!important;
}
.profile-level-badge{
  min-height:34px!important;
  padding:7px 11px!important;
  font-size:14px!important;
}
.profile-subline{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px 14px!important;
  margin:0!important;
  color:#697487!important;
  font-size:13px!important;
  font-weight:750!important;
}
.profile-subline span+span::before{
  content:'•';
  margin-right:14px;
  color:#a7b0bd;
}
.profile-user-id-mobile{display:none!important;}

.profile-actions{
  grid-column:3!important;
  grid-row:1!important;
  width:100%!important;
  margin:0!important;
  align-self:start!important;
}
.profile-contact-panel,
.profile-self-panel{
  width:100%!important;
  box-sizing:border-box!important;
  padding:15px!important;
  border:1px solid #dbe8d5!important;
  border-radius:19px!important;
  background:linear-gradient(180deg,#fcfff9 0%,#f6fbf2 100%)!important;
  box-shadow:0 8px 22px rgba(35,84,27,.045)!important;
}
.profile-contact-head{
  display:grid!important;
  gap:3px!important;
  margin:0 0 10px!important;
}
.profile-contact-head b{
  color:#1d2a3d!important;
  font-size:15px!important;
  line-height:1.2!important;
}
.profile-contact-head span{
  color:#758094!important;
  font-size:11.5px!important;
  line-height:1.35!important;
}
.profile-message-form{
  display:grid!important;
  gap:9px!important;
  margin:0!important;
}
.profile-message-form textarea{
  box-sizing:border-box!important;
  width:100%!important;
  min-height:72px!important;
  max-height:150px!important;
  margin:0!important;
  padding:11px 12px!important;
  border:1px solid #d5e2cf!important;
  border-radius:13px!important;
  background:#fff!important;
  color:#1f2937!important;
  font:500 14px/1.42 inherit!important;
  resize:vertical!important;
}
.profile-message-form textarea:focus{
  border-color:#68b94b!important;
  outline:0!important;
  box-shadow:0 0 0 3px rgba(76,175,38,.12)!important;
}
.profile-message-form .primary-btn{
  width:100%!important;
  min-height:42px!important;
  margin:0!important;
  border-radius:13px!important;
  font-size:14px!important;
}
.profile-report-user-btn{
  display:block!important;
  width:auto!important;
  min-height:0!important;
  margin:10px auto 0!important;
  padding:3px 5px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#b33a32!important;
  box-shadow:none!important;
  font:800 12px/1.35 inherit!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
.profile-report-user-btn:hover,
.profile-report-user-btn:focus-visible{
  background:transparent!important;
  color:#8f1f19!important;
  text-decoration:underline!important;
  outline:0!important;
}
.profile-self-panel{
  display:grid!important;
  gap:11px!important;
  text-align:center!important;
}
.profile-self-panel p{
  margin:0!important;
  color:#687487!important;
  font-size:13px!important;
  line-height:1.45!important;
}
.profile-self-panel .secondary-btn{
  min-height:42px!important;
  padding:9px 12px!important;
  border-radius:13px!important;
  font-size:13px!important;
}

/* Profile summary occupies the full card width instead of being squeezed. */
body .profile-page .profile-stat-row-reputation{
  grid-column:1 / -1!important;
  grid-row:2!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  width:100%!important;
  margin:0!important;
  overflow:visible!important;
}
body .profile-page .profile-stat-row-reputation.profile-stat-count-4{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
body .profile-page .profile-stat-row-reputation > .profile-stat-card{
  position:relative!important;
  min-width:0!important;
  min-height:86px!important;
  height:auto!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:14px 16px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:12px!important;
  border:1px solid #dbeacd!important;
  border-radius:19px!important;
  background:linear-gradient(180deg,#fff 0%,#f6fbf2 100%)!important;
  color:#244f1c!important;
  box-shadow:0 7px 18px rgba(35,82,28,.04)!important;
  text-align:left!important;
  text-decoration:none!important;
  white-space:normal!important;
}
body .profile-page .profile-stat-row-reputation > a.profile-stat-card:hover{
  border-color:#94c77d!important;
  box-shadow:0 10px 23px rgba(48,119,25,.085)!important;
  transform:translateY(-1px)!important;
}
.profile-stat-icon{
  display:grid!important;
  place-items:center!important;
  flex:0 0 42px!important;
  width:42px!important;
  height:42px!important;
  border-radius:14px!important;
  background:#f0f8eb!important;
  box-shadow:inset 0 0 0 1px rgba(61,126,37,.09)!important;
  font-size:21px!important;
  line-height:1!important;
}
.profile-stat-copy{
  display:grid!important;
  min-width:0!important;
  gap:2px!important;
  text-align:left!important;
}
body .profile-page .profile-stat-copy b{
  display:block!important;
  color:#218c15!important;
  font-size:27px!important;
  line-height:1!important;
  font-weight:950!important;
}
body .profile-page .profile-stat-copy em{
  display:block!important;
  overflow:visible!important;
  color:#253349!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-style:normal!important;
  font-weight:900!important;
  text-overflow:clip!important;
  white-space:normal!important;
}
body .profile-page .profile-stat-copy small{
  display:block!important;
  overflow:visible!important;
  color:#788397!important;
  font-size:11px!important;
  line-height:1.25!important;
  font-weight:750!important;
  text-overflow:clip!important;
  white-space:normal!important;
}
.profile-stat-label-mobile,
.cabinet-stat-label-mobile{display:none!important;}
.profile-stat-for-others{padding-right:42px!important;}

/* Accessible desktop-hover / mobile-tap information tips */
.rep-info-wrap{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
}
.rep-info-button{
  display:inline-grid!important;
  place-items:center!important;
  width:23px!important;
  height:23px!important;
  min-width:23px!important;
  padding:0!important;
  border:1px solid #bcd7ae!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#34751c!important;
  font:900 12px/1 Arial,sans-serif!important;
  cursor:pointer!important;
  box-shadow:0 4px 10px rgba(34,94,18,.08)!important;
}
.profile-stat-for-others > .rep-info-wrap,
.cabinet-stat-for-others > .rep-info-wrap{
  position:absolute!important;
  top:10px!important;
  right:10px!important;
}
.rep-info-button:hover,
.rep-info-button:focus-visible{
  border-color:#6fb64e!important;
  outline:0!important;
  box-shadow:0 0 0 3px rgba(82,178,28,.13)!important;
}
.rep-info-tooltip{
  position:absolute!important;
  left:50%!important;
  bottom:calc(100% + 10px)!important;
  z-index:120!important;
  width:300px!important;
  max-width:calc(100vw - 32px)!important;
  box-sizing:border-box!important;
  padding:12px 14px!important;
  border:1px solid #d7e5d0!important;
  border-radius:14px!important;
  background:#172033!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1.45!important;
  font-weight:700!important;
  text-align:left!important;
  box-shadow:0 14px 34px rgba(17,27,44,.22)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translate(-50%,5px)!important;
  transition:.16s ease!important;
}
.rep-info-wrap:hover .rep-info-tooltip,
.rep-info-wrap:focus-within .rep-info-tooltip,
.rep-info-wrap.is-open .rep-info-tooltip{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translate(-50%,0)!important;
}

/* Profile accordions */
body .profile-page .profile-fold-section{
  border-radius:24px!important;
}
body .profile-page .profile-fold-toggle{
  min-height:68px!important;
  padding:0 22px!important;
}
body .profile-page .profile-fold-toggle span{
  font-size:22px!important;
  line-height:1.2!important;
}
.profile-rating-history .rating-log-list{display:grid!important;gap:9px!important;}
.profile-rating-history .rating-log-item{border-radius:16px!important;}

/* ---------- My Help dashboard ---------- */
.my-help-page{
  max-width:1280px!important;
  padding-top:28px!important;
  padding-bottom:44px!important;
}
.my-help-hero{
  min-height:112px!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
  padding:26px 30px!important;
  border-radius:27px!important;
}
.my-help-hero h1{
  margin:0 0 7px!important;
  font-size:35px!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
}
.my-help-hero p{
  max-width:730px!important;
  margin:0!important;
  color:#687487!important;
  font-size:16px!important;
  line-height:1.45!important;
}
.my-help-hero .secondary-btn{
  flex:0 0 auto!important;
  min-height:46px!important;
  padding:11px 17px!important;
  border-radius:14px!important;
  font-size:14px!important;
}
body .my-help-page .my-help-stats,
body .my-help-page .cabinet-stats-row-reputation{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  margin:0 0 18px!important;
}
body .my-help-page .my-help-stats > .cabinet-stat-card{
  position:relative!important;
  min-width:0!important;
  min-height:132px!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  gap:15px!important;
  padding:21px 19px!important;
  border:1px solid #dbeacd!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,#fff 0%,#f8fcf5 100%)!important;
  box-shadow:0 10px 25px rgba(32,83,25,.055)!important;
}
.cabinet-stat-icon{
  display:grid!important;
  place-items:center!important;
  flex:0 0 50px!important;
  width:50px!important;
  height:50px!important;
  border-radius:16px!important;
  background:#eef8e9!important;
  font-size:24px!important;
  box-shadow:inset 0 0 0 1px rgba(54,130,31,.09)!important;
}
.cabinet-stat-copy{
  display:grid!important;
  min-width:0!important;
  gap:3px!important;
}
body .my-help-page .cabinet-stat-copy b{
  margin:0!important;
  color:#218c15!important;
  font-size:36px!important;
  line-height:1!important;
  font-weight:950!important;
}
body .my-help-page .cabinet-stat-copy em{
  display:block!important;
  color:#263448!important;
  font-size:16px!important;
  line-height:1.22!important;
  font-style:normal!important;
  font-weight:900!important;
  white-space:normal!important;
}
body .my-help-page .cabinet-stat-copy small{
  display:block!important;
  margin:0!important;
  color:#778294!important;
  font-size:12px!important;
  line-height:1.3!important;
  font-weight:750!important;
}
.cabinet-stat-for-others{padding-right:45px!important;}
body .my-help-page .cabinet-section-card{
  padding:24px 26px!important;
  margin-bottom:18px!important;
  border-radius:26px!important;
}
body .my-help-page .cabinet-section-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:22px!important;
  margin-bottom:15px!important;
}
body .my-help-page .cabinet-section-head h2{
  margin:0!important;
  font-size:27px!important;
  line-height:1.15!important;
  letter-spacing:-.015em!important;
}
body .my-help-page .cabinet-section-head p{
  max-width:680px!important;
  margin:1px 0 0!important;
  color:#687487!important;
  font-size:15px!important;
  line-height:1.45!important;
  text-align:right!important;
}
body .my-help-page .empty.mini{
  min-height:62px!important;
  box-sizing:border-box!important;
  display:grid!important;
  place-items:center!important;
  padding:15px 18px!important;
  border-radius:17px!important;
  color:#7a8494!important;
  font-size:14px!important;
}
.my-help-page .cabinet-log-list{display:grid!important;gap:10px!important;}
.my-help-page .cabinet-log-item{border-radius:17px!important;}

@media (max-width:1050px){
  .profile-head{
    grid-template-columns:100px minmax(0,1fr) 285px!important;
    column-gap:18px!important;
  }
  .profile-avatar img,
  .profile-avatar .avatar{
    width:94px!important;
    height:94px!important;
  }
  .profile-main h1,
  .profile-name-row h1{font-size:31px!important;}
  body .my-help-page .my-help-stats > .cabinet-stat-card{
    padding:18px 16px!important;
    gap:11px!important;
  }
  .cabinet-stat-icon{
    width:44px!important;
    height:44px!important;
    flex-basis:44px!important;
    font-size:21px!important;
  }
  body .my-help-page .cabinet-stat-copy b{font-size:32px!important;}
  body .my-help-page .cabinet-stat-copy em{font-size:14px!important;}
}

@media (max-width:900px){
  .profile-head{
    grid-template-columns:92px minmax(0,1fr)!important;
    grid-template-rows:auto auto auto!important;
  }
  .profile-avatar{grid-column:1!important;grid-row:1!important;}
  .profile-main{grid-column:2!important;grid-row:1!important;}
  body .profile-page .profile-stat-row-reputation{
    grid-column:1/-1!important;
    grid-row:2!important;
  }
  .profile-actions{
    grid-column:1/-1!important;
    grid-row:3!important;
  }
  body .profile-page .profile-stat-row-reputation.profile-stat-count-4{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body .my-help-page .my-help-stats,
  body .my-help-page .cabinet-stats-row-reputation{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media (max-width:760px){
  .profile-page,
  .my-help-page{
    width:100%!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .profile-page{padding-top:14px!important;}
  .profile-card.profile-head-card{
    padding:18px 16px!important;
    border-radius:24px!important;
  }
  .profile-head{
    grid-template-columns:76px minmax(0,1fr)!important;
    grid-template-rows:auto auto auto!important;
    column-gap:12px!important;
    row-gap:14px!important;
    align-items:start!important;
  }
  .profile-avatar img,
  .profile-avatar .avatar{
    width:72px!important;
    height:72px!important;
  }
  .profile-main{align-self:start!important;}
  .profile-main h1,
  .profile-name-row h1{
    max-width:calc(100vw - 145px)!important;
    font-size:28px!important;
    line-height:1.08!important;
  }
  .profile-user-id-mobile{
    display:block!important;
    margin:2px 0 7px!important;
    color:#6e788a!important;
    font-size:13px!important;
    font-weight:800!important;
  }
  .profile-subline{display:none!important;}
  .profile-level-badge{
    min-height:31px!important;
    padding:6px 9px!important;
    font-size:12.5px!important;
  }
  body .profile-page .profile-stat-row-reputation,
  body .profile-page .profile-stat-row-reputation.profile-stat-count-3{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body .profile-page .profile-stat-row-reputation.profile-stat-count-4{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body .profile-page .profile-stat-row-reputation > .profile-stat-card{
    min-height:96px!important;
    padding:10px 7px!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    border-radius:17px!important;
    text-align:center!important;
  }
  .profile-stat-icon{
    width:31px!important;
    height:31px!important;
    flex-basis:31px!important;
    border-radius:10px!important;
    font-size:17px!important;
  }
  .profile-stat-copy{
    gap:1px!important;
    text-align:center!important;
  }
  body .profile-page .profile-stat-copy b{font-size:22px!important;}
  body .profile-page .profile-stat-copy em{
    font-size:12px!important;
    line-height:1.1!important;
    white-space:normal!important;
  }
  body .profile-page .profile-stat-copy small{
    max-width:100%!important;
    font-size:9.5px!important;
    line-height:1.16!important;
    white-space:normal!important;
  }
  .profile-stat-label-desktop,
  .cabinet-stat-label-desktop{display:none!important;}
  .profile-stat-label-mobile,
  .cabinet-stat-label-mobile{display:block!important;}
  .profile-stat-for-others{padding-right:7px!important;}
  .profile-stat-for-others > .rep-info-wrap{top:7px!important;right:7px!important;}
  .profile-actions{margin:0!important;}
  .profile-contact-panel,
  .profile-self-panel{
    padding:14px!important;
    border-radius:18px!important;
  }
  .profile-contact-head{margin-bottom:9px!important;}
  .profile-contact-head b{font-size:16px!important;}
  .profile-contact-head span{font-size:12px!important;}
  .profile-message-form textarea{
    min-height:78px!important;
    font-size:15px!important;
  }
  .profile-message-form .primary-btn{
    min-height:45px!important;
    font-size:15px!important;
  }
  .profile-report-user-btn{
    margin-top:11px!important;
    font-size:12.5px!important;
  }
  .profile-self-panel{
    display:grid!important;
    text-align:center!important;
  }
  .profile-self-panel .secondary-btn{width:100%!important;}
  body .profile-page .profile-fold-section{margin-bottom:10px!important;}
  body .profile-page .profile-fold-toggle{
    min-height:60px!important;
    padding:0 15px!important;
  }
  body .profile-page .profile-fold-toggle span{font-size:19px!important;}

  .rep-info-button{
    width:21px!important;
    height:21px!important;
    min-width:21px!important;
    font-size:11px!important;
  }
  .rep-info-tooltip{
    position:fixed!important;
    left:16px!important;
    right:16px!important;
    bottom:calc(18px + env(safe-area-inset-bottom))!important;
    width:auto!important;
    max-width:none!important;
    padding:14px 15px!important;
    border-radius:16px!important;
    font-size:13px!important;
    line-height:1.45!important;
    transform:translateY(8px)!important;
  }
  .rep-info-wrap:hover .rep-info-tooltip,
  .rep-info-wrap:focus-within .rep-info-tooltip{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  .rep-info-wrap.is-open .rep-info-tooltip{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }

  .my-help-page{
    padding-top:14px!important;
    padding-bottom:28px!important;
  }
  .my-help-hero{
    min-height:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    padding:20px 18px!important;
    border-radius:24px!important;
  }
  .my-help-hero h1{
    margin-bottom:7px!important;
    font-size:30px!important;
  }
  .my-help-hero p{
    font-size:14.5px!important;
    line-height:1.45!important;
  }
  .my-help-hero .secondary-btn{
    width:100%!important;
    min-height:45px!important;
    font-size:14px!important;
  }
  body .my-help-page .my-help-stats,
  body .my-help-page .cabinet-stats-row-reputation{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    margin-bottom:13px!important;
  }
  body .my-help-page .my-help-stats > .cabinet-stat-card{
    min-height:126px!important;
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:9px!important;
    padding:14px!important;
    border-radius:19px!important;
  }
  .cabinet-stat-icon{
    width:37px!important;
    height:37px!important;
    flex-basis:37px!important;
    border-radius:12px!important;
    font-size:19px!important;
  }
  body .my-help-page .cabinet-stat-copy b{font-size:30px!important;}
  body .my-help-page .cabinet-stat-copy em{
    font-size:14px!important;
    line-height:1.18!important;
  }
  body .my-help-page .cabinet-stat-copy small{
    font-size:10.8px!important;
    line-height:1.23!important;
  }
  .cabinet-stat-for-others{padding-right:38px!important;}
  .cabinet-stat-for-others > .rep-info-wrap{top:11px!important;right:11px!important;}
  body .my-help-page .cabinet-section-card{
    padding:18px 17px!important;
    margin-bottom:12px!important;
    border-radius:22px!important;
  }
  body .my-help-page .cabinet-section-head{
    display:grid!important;
    gap:7px!important;
    margin-bottom:13px!important;
  }
  body .my-help-page .cabinet-section-head h2{font-size:24px!important;}
  body .my-help-page .cabinet-section-head p{
    font-size:13.5px!important;
    line-height:1.45!important;
    text-align:left!important;
  }
  body .my-help-page .empty.mini{
    min-height:52px!important;
    padding:12px 13px!important;
    font-size:13px!important;
  }
}

@media (max-width:390px){
  .profile-head{
    grid-template-columns:68px minmax(0,1fr)!important;
    column-gap:10px!important;
  }
  .profile-avatar img,
  .profile-avatar .avatar{
    width:64px!important;
    height:64px!important;
  }
  .profile-main h1,
  .profile-name-row h1{
    max-width:calc(100vw - 135px)!important;
    font-size:25px!important;
  }
  body .profile-page .profile-stat-row-reputation{gap:6px!important;}
  body .profile-page .profile-stat-row-reputation > .profile-stat-card{
    min-height:92px!important;
    padding:9px 5px!important;
  }
  body .profile-page .profile-stat-copy em{font-size:11px!important;}
  body .profile-page .profile-stat-copy small{font-size:9px!important;}
  body .my-help-page .my-help-stats > .cabinet-stat-card{
    min-height:121px!important;
    padding:13px!important;
  }
}

/* =====================================================
   v4.7 — Profile accordion mobile label fix
   ===================================================== */
.profile-fold-title{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
}
.profile-fold-label{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.profile-fold-count{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  margin-left:0!important;
}
.profile-fold-label-mobile{display:none!important;}
.profile-fold-label-desktop{display:inline!important;}

/* Desktop: statistics sit under the identity area while the contact panel
   occupies the right column. This removes the large empty gap in profiles. */
@media (min-width:901px){
  .profile-head{
    align-content:start!important;
  }
  .profile-actions{
    grid-column:3!important;
    grid-row:1 / span 2!important;
  }
  body .profile-page .profile-stat-row-reputation,
  body .profile-page .profile-stat-row-reputation.profile-stat-count-4{
    grid-column:1 / 3!important;
    grid-row:2!important;
  }
  body .profile-page .profile-stat-row-reputation > .profile-stat-card{
    min-height:82px!important;
  }
  body .my-help-page .cabinet-stat-label-desktop{display:block!important;}
  body .my-help-page .cabinet-stat-label-mobile{display:none!important;}
}

@media (max-width:760px){
  .profile-fold-title{
    width:100%!important;
    gap:7px!important;
    overflow:hidden!important;
  }
  .profile-fold-label{
    flex:1 1 auto!important;
  }
  .profile-fold-count{
    flex:0 0 auto!important;
    min-width:25px!important;
    height:25px!important;
    padding:0 7px!important;
  }
  .profile-fold-label-desktop{display:none!important;}
  .profile-fold-label-mobile{display:inline!important;}

  /* Only the short mobile title is shown in the fourth My Help card. */
  body .my-help-page .cabinet-stat-label-desktop{display:none!important;}
  body .my-help-page .cabinet-stat-label-mobile{display:block!important;}

  /* Keep all accordion badges visible even on narrow Android screens. */
  body .profile-page .profile-fold-toggle{
    grid-template-columns:minmax(0,1fr) 34px!important;
    column-gap:9px!important;
  }
  body .profile-page .profile-fold-toggle > .profile-fold-title{
    font-size:19px!important;
    line-height:1.12!important;
  }
}

@media (max-width:390px){
  body .profile-page .profile-fold-toggle > .profile-fold-title{
    font-size:17px!important;
    gap:6px!important;
  }
  .profile-fold-count{
    min-width:23px!important;
    height:23px!important;
    padding:0 6px!important;
    font-size:12px!important;
  }
}


/* =====================================================
   v4.7 — definitive responsive label visibility
   The broad legacy rule `.profile-fold-toggle span` applies display:flex
   to every nested span on mobile. These more specific selectors ensure
   that only one advertisements title is rendered at a time.
   ===================================================== */
body .profile-page .profile-fold-toggle .profile-fold-label-mobile{
  display:none!important;
}
body .profile-page .profile-fold-toggle .profile-fold-label-desktop{
  display:block!important;
}

@media (max-width:760px){
  body .profile-page .profile-fold-toggle .profile-fold-label-desktop{
    display:none!important;
  }
  body .profile-page .profile-fold-toggle .profile-fold-label-mobile{
    display:block!important;
    flex:1 1 auto!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
}


/* 2026-07-20 — Favorites v4.8: профессиональный каталог сохранённых объявлений */
.favorites-page{max-width:1160px;}
.favorites-hero{align-items:center;}
.favorites-hero-copy p{margin-bottom:0;}
.favorites-total-badge{
  display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 15px;
  border:1px solid #dcefd6;border-radius:999px;background:#f3fbef;color:#2f7d13;
  font-size:14px;font-weight:900;white-space:nowrap;
}
.favorites-content-card{padding:18px 18px 20px;}
.favorites-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px;}
.favorites-filters{display:flex;align-items:center;gap:8px;min-width:0;}
.favorites-filter{
  appearance:none;border:1px solid #dcefd6;background:#fff;color:#486044;border-radius:999px;
  min-height:40px;padding:8px 13px;font:inherit;font-size:14px;font-weight:850;cursor:pointer;
  display:inline-flex;align-items:center;gap:7px;transition:.18s ease;
}
.favorites-filter span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:#edf7e8;color:#2f7d13;font-size:12px;font-weight:900;}
.favorites-filter:hover{border-color:#b9dea9;background:#f8fff5;}
.favorites-filter.is-active{border-color:#69bf45;background:#edf9e8;color:#246d12;box-shadow:0 6px 16px rgba(67,142,35,.09);}
.favorites-filter.is-active span{background:#56b829;color:#fff;}
.favorites-filter:disabled{opacity:.48;cursor:default;box-shadow:none;}
.favorites-toolbar-note{margin:0;color:#667085;font-size:13px;white-space:nowrap;}
.favorites-feedback{min-height:0;color:#2f7d13;font-size:13px;font-weight:800;text-align:center;}
.favorites-feedback:not(:empty){min-height:28px;padding:4px 0 10px;}
.favorites-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch;}
.favorite-card{
  position:relative;min-width:0;border:1px solid #dcefd6;border-radius:20px;background:#fff;
  box-shadow:0 8px 22px rgba(23,32,51,.045);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,opacity .18s ease;
}
.favorite-card:hover{transform:translateY(-2px);border-color:#b9dea9;box-shadow:0 13px 28px rgba(23,32,51,.085);}
.favorite-card-closed{background:#fbfcfa;}
.favorite-card-closed .favorite-card-media img{filter:saturate(.72);opacity:.88;}
.favorite-card.is-removing{opacity:0;transform:scale(.97);}
.favorite-card-link{display:grid;grid-template-columns:112px minmax(0,1fr);gap:13px;min-height:156px;padding:12px;color:inherit;text-decoration:none;}
.favorite-card-media{display:block;width:112px;height:112px;border-radius:15px;overflow:hidden;background:#eef9e9;align-self:start;}
.favorite-card-media img{display:block;width:100%;height:100%;object-fit:cover;}
.favorite-card-content{display:flex;flex-direction:column;min-width:0;padding-right:28px;}
.favorite-card-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:8px;min-width:0;}
.favorite-card-category,.favorite-card-status{display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;border-radius:999px;font-size:11px;line-height:1.1;font-weight:900;}
.favorite-card-category{max-width:100%;background:#eff8eb;color:#287316;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.favorite-card-status-active{background:#eaf8e6;color:#287316;}
.favorite-card-status-closed{background:#fff4df;color:#a76200;}
.favorite-card-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:0 0 7px;color:#172033;font-size:17px;line-height:1.22;font-weight:900;}
.favorite-card-location,.favorite-card-date{display:block;min-width:0;color:#667085;font-size:12px;line-height:1.3;}
.favorite-card-location{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;}
.favorite-card-open{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:10px;color:#2f7d13;font-size:13px;font-weight:900;}
.favorite-card-remove{
  position:absolute;z-index:3;top:10px;right:10px;width:34px;height:34px;border:1px solid #e8d98f;border-radius:50%;
  background:#fffbea;color:#e7ad00;font-size:19px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;
  box-shadow:0 5px 14px rgba(71,62,18,.10);transition:.18s ease;
}
.favorite-card-remove:hover{transform:scale(1.06);background:#fff5c9;color:#c68d00;}
.favorite-card-remove.is-loading{opacity:.55;cursor:wait;animation:favorites-spin 1s linear infinite;}
@keyframes favorites-spin{to{transform:rotate(360deg)}}
.favorites-load-more{display:flex;margin:18px auto 0;min-width:190px;justify-content:center;}
.favorites-load-more[hidden]{display:none!important;}
/* hidden должен иметь приоритет над display:flex/grid из правил темы. */
.favorites-filter-empty[hidden],.favorites-grid[hidden]{display:none!important;}
.favorites-filter-empty,.favorites-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:260px;padding:28px 20px;}
.favorites-empty-icon{font-size:46px;line-height:1;margin-bottom:14px;}
.favorites-empty h2{margin:0 0 8px;font-size:25px;}
.favorites-empty p{max-width:560px;margin:0 0 20px;color:#667085;line-height:1.5;}
.favorites-empty .primary-btn{min-width:190px;text-decoration:none;}
.favorites-filter-empty{min-height:220px;color:#667085;gap:7px;}
.favorites-filter-empty>span{font-size:34px;}
.favorites-filter-empty b{color:#172033;font-size:19px;}
.favorites-filter-empty button{border:0;background:transparent;color:#2f7d13;font:inherit;font-weight:900;cursor:pointer;padding:7px;}
.favorites-page.is-loading .favorites-grid{opacity:.64;pointer-events:none;}

@media (max-width:1040px){
  .favorites-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:760px){
  .favorites-hero{display:block!important;}
  .favorites-total-badge{margin-top:14px;min-height:38px;padding:7px 13px;font-size:13px;}
  .favorites-content-card{padding:14px!important;}
  .favorites-toolbar{display:block;margin-bottom:13px;}
  .favorites-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;overflow:visible;padding:1px 0 7px;}
  .favorites-filter{width:100%;min-width:0;min-height:38px;padding:7px 6px;font-size:12px;justify-content:center;white-space:nowrap;}
  .favorites-filter span{min-width:22px;height:22px;padding:0 6px;font-size:11px;}
  .favorites-toolbar-note{display:none;}
  .favorites-grid{grid-template-columns:1fr!important;gap:11px;}
  .favorite-card{border-radius:20px;}
  .favorite-card-link{grid-template-columns:116px minmax(0,1fr);gap:12px;min-height:140px;padding:11px;}
  .favorite-card-media{width:116px;height:116px;border-radius:15px;}
  .favorite-card-content{padding-right:30px;}
  .favorite-card-badges{display:grid;justify-items:start;gap:5px;margin-bottom:7px;}
  .favorite-card-category{max-width:100%;}
  .favorite-card-title{font-size:18px;line-height:1.2;margin-bottom:6px;}
  .favorite-card-location{font-size:12px;}
  .favorite-card-date{font-size:12px;}
  .favorite-card-open{font-size:13px;padding-top:7px;}
  .favorite-card-remove{top:9px;right:9px;width:32px;height:32px;font-size:18px;}
  .favorites-empty,.favorites-filter-empty{min-height:250px;padding:24px 12px;}
  .favorites-empty h2{font-size:23px;}
}
@media (max-width:390px){
  .favorite-card-link{grid-template-columns:104px minmax(0,1fr);}
  .favorite-card-media{width:104px;height:108px;}
  .favorite-card-title{font-size:17px;}
}

/* ===== Notifications v5.0: compact professional inbox ===== */
.notifications-page{
  max-width:1040px!important;
  padding-top:20px!important;
}
.notifications-hero{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  padding:24px 28px!important;
  margin:0 0 14px!important;
  border-radius:24px!important;
}
.notifications-hero h1{
  margin:0 0 7px!important;
  font-size:34px!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
}
.notifications-hero p{
  margin:0!important;
  max-width:650px!important;
  color:#657083!important;
  font-size:16px!important;
  line-height:1.45!important;
}
.notifications-unread-chip{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:42px;
  padding:9px 15px;
  border:1px solid #d5eacb;
  border-radius:999px;
  background:#f2faed;
  color:#376d09;
  font-size:14px;
  font-weight:800;
  white-space:nowrap;
}
.notifications-unread-chip b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:24px;
  height:24px;
  padding:0 7px;
  border-radius:999px;
  background:#40b91b;
  color:#fff;
}
.notifications-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.notification-view-tabs{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:5px;
  border:1px solid #dcefd2;
  border-radius:16px;
  background:#f3faef;
}
.notification-view-tab{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:38px;
  padding:8px 15px;
  border-radius:12px;
  color:#526070;
  font-size:14px;
  font-weight:900;
  text-decoration:none;
}
.notification-view-tab:hover{color:#168800;background:#fff;}
.notification-view-tab.is-active{
  color:#fff;
  background:#159d00;
  box-shadow:0 6px 16px rgba(21,157,0,.16);
}
.notification-view-tab b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:21px;
  height:21px;
  padding:0 6px;
  border-radius:999px;
  background:#e8f8df;
  color:#168800;
  font-size:11px;
}
.notification-view-tab.is-active b{background:rgba(255,255,255,.24);color:#fff;}
.notification-filter-menu{display:none;}
.notification-tabs.notification-tabs-desktop{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  width:100%!important;
  max-width:none!important;
  margin:0 0 14px!important;
  padding:7px!important;
  gap:7px!important;
  border-radius:18px!important;
}
.notification-tabs-desktop .notification-tab{
  min-height:42px!important;
  padding:9px 11px!important;
  font-size:14px!important;
  border-radius:12px!important;
}
.notifications-card{
  padding:22px!important;
  border-radius:24px!important;
}
.notifications-card-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-bottom:16px!important;
}
.notifications-card-head h2{
  margin:0!important;
  font-size:25px!important;
  line-height:1.15!important;
}
.notifications-card-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.notifications-card-actions form{margin:0;}
.notifications-context-link,
.notifications-mark-all{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 13px;
  border-radius:12px;
  border:1px solid #d7eacb;
  background:#f3faef;
  color:#376d09;
  font:inherit;
  font-size:13px;
  font-weight:900;
  text-decoration:none;
  cursor:pointer;
}
.notifications-context-link:hover,
.notifications-mark-all:hover{background:#e8f7df;color:#216406;}
.notifications-page .notification-item{
  position:relative!important;
}
.notifications-page .notification-item.is-clickable{
  cursor:pointer!important;
}
.notifications-page .notification-item.is-clickable:focus-visible{
  outline:3px solid rgba(79,193,43,.28)!important;
  outline-offset:2px!important;
}
.notifications-page .notification-item.unread{
  background:#f7fcf4!important;
  border-color:#83ce73!important;
}
.notifications-page .notification-item.unread .notification-topline b{
  font-weight:900!important;
}
.notification-unread-dot{
  position:absolute;
  top:17px;
  right:16px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#42bd20;
  box-shadow:0 0 0 4px rgba(66,189,32,.12);
}
.notifications-page .notification-main-link{
  min-height:86px!important;
}
.notifications-page .notification-content{
  padding-right:10px!important;
}
.notifications-page .notification-secondary a{
  border-bottom:1px dashed rgba(47,139,31,.35)!important;
}
.notifications-pagination{
  display:flex;
  justify-content:center;
  padding-top:18px;
}
.notifications-load-more{
  min-width:170px;
  min-height:44px;
  padding:10px 18px;
  border:0;
  border-radius:14px;
  background:#159d00;
  color:#fff;
  font-size:15px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(21,157,0,.16);
}
.notifications-load-more:hover{background:#118700;}
.notifications-load-more:disabled{opacity:.65;cursor:wait;}
.notifications-end-note{
  color:#7b8596;
  font-size:13px;
  font-weight:700;
}
.notifications-empty{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:230px;
  padding:34px 20px;
  text-align:center;
  border:1px dashed #d3e6ca;
  border-radius:20px;
  background:#fbfdf9;
}
.notifications-empty > span{font-size:40px;line-height:1;margin-bottom:14px;}
.notifications-empty h3{margin:0 0 8px;font-size:22px;line-height:1.2;}
.notifications-empty p{max-width:520px;margin:0 0 18px;color:#6a7485;font-size:15px;line-height:1.45;}
.complaint-history-list .notification-item{min-height:0!important;}

@media (min-width:761px){
  .notification-tabs.notification-tabs-desktop{display:grid!important;}
  .notification-filter-menu{display:none!important;}
}

@media (max-width:760px){
  .notifications-page{
    padding:14px 14px 28px!important;
  }
  .notifications-hero{
    display:block!important;
    padding:22px 20px!important;
    margin-bottom:12px!important;
    border-radius:26px!important;
  }
  .notifications-hero h1{
    font-size:31px!important;
    margin-bottom:8px!important;
  }
  .notifications-hero p{
    font-size:17px!important;
    line-height:1.4!important;
  }
  .notifications-unread-chip{
    margin-top:16px;
    min-height:40px;
  }
  .notifications-toolbar{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px;
    margin-bottom:12px;
  }
  .notification-view-tabs{
    width:100%;
    min-width:0;
    display:grid;
    grid-template-columns:1fr 1.35fr;
  }
  .notification-view-tab{
    min-width:0;
    padding:8px 9px;
    font-size:13px;
    white-space:nowrap;
  }
  .notification-tabs.notification-tabs-desktop{display:none!important;}
  .notification-filter-menu{
    display:block;
    position:relative;
  }
  .notification-filter-menu summary{
    list-style:none;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:8px 13px;
    border:1px solid #dcefd2;
    border-radius:14px;
    background:#fff;
    color:#376d09;
    font-size:14px;
    font-weight:900;
    cursor:pointer;
  }
  .notification-filter-menu summary::-webkit-details-marker{display:none;}
  .notification-filter-menu summary span{display:none;}
  .notification-filter-menu[open] summary{background:#f3faef;}
  .notification-filter-options{
    position:absolute;
    z-index:80;
    top:calc(100% + 7px);
    right:0;
    width:min(330px,calc(100vw - 28px));
    padding:8px;
    border:1px solid #dcefd2;
    border-radius:18px;
    background:#fff;
    box-shadow:0 18px 45px rgba(23,32,51,.18);
  }
  .notification-filter-options a{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    min-height:44px;
    padding:10px 12px;
    border-radius:12px;
    color:#263142;
    font-size:14px;
    font-weight:850;
    text-decoration:none;
  }
  .notification-filter-options a:hover,
  .notification-filter-options a.is-active{background:#eef8e8;color:#237307;}
  .notification-filter-options b{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:22px;
    height:22px;
    padding:0 6px;
    border-radius:999px;
    background:#e8f8df;
    color:#168800;
    font-size:11px;
  }
  .notifications-card{
    padding:18px 14px!important;
    border-radius:24px!important;
  }
  .notifications-card-head{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    align-items:start!important;
  }
  .notifications-card-head h2{
    font-size:29px!important;
    line-height:1.1!important;
  }
  .notifications-card-actions{
    justify-content:flex-start;
    width:100%;
  }
  .notifications-card-actions form{width:100%;}
  .notifications-context-link,
  .notifications-mark-all{
    width:100%;
    min-height:44px;
    font-size:14px;
  }
  .notifications-page .notification-main-link{
    grid-template-columns:38px minmax(0,1fr)!important;
    gap:10px!important;
    min-height:0!important;
    padding:14px 13px!important;
  }
  .notifications-page .notification-topline b{
    font-size:18px!important;
    line-height:1.2!important;
    padding-right:12px!important;
  }
  .notifications-page .notification-time{
    font-size:12px!important;
    margin-top:2px!important;
  }
  .notifications-page .notification-primary{
    font-size:16px!important;
    line-height:1.36!important;
  }
  .notifications-page .notification-secondary,
  .notifications-page .notification-meta,
  .notifications-page .notification-status{
    font-size:14px!important;
    line-height:1.38!important;
  }
  .notification-unread-dot{
    top:17px;
    right:13px;
  }
  .notification-date-title{
    margin:18px 0 9px!important;
    font-size:14px!important;
  }
  .notifications-empty{
    min-height:210px;
    padding:30px 16px;
  }
  .notifications-empty h3{font-size:21px;}
  .notifications-empty p{font-size:15px;}
}


/* =====================================================
   My Ads v5.2 — final My Ads and Favorites header/card polish
===================================================== */
.my-ads-page{
  max-width:1240px!important;
}
.my-ads-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  padding:24px 28px!important;
  margin-bottom:14px!important;
  border-radius:24px!important;
}
.my-ads-head-copy{min-width:0!important;}
.my-ads-head h1{
  margin:0 0 7px!important;
  font-size:32px!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
}
.my-ads-head p{
  margin:0!important;
  max-width:720px!important;
  color:#667085!important;
  font-size:16px!important;
  line-height:1.45!important;
}
.my-ads-total{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:baseline!important;
  gap:7px!important;
  padding:11px 16px!important;
  border:1px solid #d8edcf!important;
  border-radius:16px!important;
  background:#f5fbf1!important;
  color:#286f12!important;
  white-space:nowrap!important;
}
.my-ads-total strong{font-size:22px!important;line-height:1!important;}
.my-ads-total span{font-size:14px!important;font-weight:850!important;}
.my-ads-tabs{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  margin:0 0 14px!important;
  padding:0!important;
  overflow:visible!important;
}
.my-ads-tabs a{
  width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  padding:10px 14px!important;
  border:1px solid #d8edcf!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#286f12!important;
  text-decoration:none!important;
  font-size:15px!important;
  font-weight:900!important;
  box-shadow:0 5px 14px rgba(31,83,18,.035)!important;
}
.my-ads-tabs a:hover{background:#f5fbf1!important;border-color:#bfe2b1!important;}
.my-ads-tabs a.active{
  background:#eaf8e6!important;
  border-color:#b9dfa9!important;
  box-shadow:0 8px 20px rgba(38,126,16,.08)!important;
}
.my-ads-tabs b{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:25px!important;
  height:25px!important;
  padding:0 7px!important;
  border-radius:999px!important;
  background:#42bf18!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1!important;
}
.my-ads-list-card{
  padding:16px!important;
  border-radius:24px!important;
}
.my-ad-row{
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}
.my-ad-row:hover{
  transform:translateY(-1px)!important;
  border-color:#c6e3ba!important;
  box-shadow:0 12px 26px rgba(24,67,14,.075)!important;
}
.my-ad-row.is-closed{
  background:#fbfbfa!important;
  border-color:#e4e6e1!important;
}
.my-ad-row.is-closed .my-ad-thumb img{filter:saturate(.78)!important;opacity:.88!important;}
.my-ad-body h2{min-height:44px!important;}
.my-ad-body small{color:#737d8e!important;font-weight:700!important;}
.my-ads-empty{
  min-height:280px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  padding:34px 20px!important;
}
.my-ads-empty-icon{
  width:58px!important;
  height:58px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0 0 14px!important;
  border-radius:18px!important;
  background:#eef8e8!important;
  font-size:28px!important;
}
.my-ads-empty h2{margin:0 0 8px!important;font-size:23px!important;line-height:1.2!important;}
.my-ads-empty p{max-width:520px!important;margin:0 0 18px!important;color:#667085!important;line-height:1.5!important;}

@media (max-width:760px){
  .my-ads-page{padding-left:12px!important;padding-right:12px!important;}
  .my-ads-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
    gap:12px!important;
    padding:18px!important;
    border-radius:22px!important;
  }
  .my-ads-head h1{font-size:28px!important;}
  .my-ads-head p{font-size:14px!important;line-height:1.4!important;}
  .my-ads-total{
    align-self:start!important;
    display:grid!important;
    gap:1px!important;
    min-width:64px!important;
    padding:9px 10px!important;
    text-align:center!important;
    border-radius:14px!important;
  }
  .my-ads-total strong{font-size:20px!important;}
  .my-ads-total span{font-size:10px!important;}
  .my-ads-tabs{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    overflow:visible!important;
    padding:0!important;
  }
  .my-ads-tabs a{
    min-height:45px!important;
    gap:5px!important;
    padding:8px 5px!important;
    border-radius:14px!important;
    font-size:13px!important;
    white-space:nowrap!important;
  }
  .my-ads-tabs b{
    min-width:22px!important;
    height:22px!important;
    padding:0 5px!important;
    font-size:11px!important;
  }
  .my-ads-list-card{padding:10px!important;border-radius:22px!important;}
  .my-ad-row{min-height:0!important;}
  .my-ad-body h2{min-height:40px!important;-webkit-line-clamp:2!important;}
  .my-ads-empty{min-height:240px!important;padding:28px 15px!important;}
  .my-ads-empty h2{font-size:21px!important;}
}

@media (max-width:390px){
  .my-ads-head{grid-template-columns:minmax(0,1fr) 58px!important;padding:16px!important;}
  .my-ads-head h1{font-size:26px!important;}
  .my-ads-tabs{gap:5px!important;}
  .my-ads-tabs a{font-size:12px!important;padding:7px 3px!important;gap:4px!important;}
  .my-ads-tabs b{min-width:20px!important;height:20px!important;font-size:10px!important;}
}

/* =====================================================
   My Ads & Favorites v5.2 — final agreed polish
   - duplicate total counters removed from both headers;
   - category and status stay in one stable row;
   - mobile cards are slightly denser without shrinking actions or image.
===================================================== */
.my-ads-head,
.favorites-hero{
  justify-content:flex-start!important;
}
.my-ad-meta{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:7px!important;
  flex-wrap:nowrap!important;
  min-width:0!important;
}
.my-ad-meta span{
  min-width:0!important;
  max-width:none!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.my-ad-meta em{
  min-width:max-content!important;
  max-width:none!important;
  white-space:nowrap!important;
}

@media (max-width:760px){
  .my-ad-row{
    gap:7px 10px!important;
    padding:11px!important;
  }
  .my-ad-meta{
    gap:6px!important;
    align-items:center!important;
  }
  .my-ad-meta span,
  .my-ad-meta em{
    max-width:none!important;
  }
  .my-ad-actions{
    gap:7px!important;
    margin-top:6px!important;
  }
}



/* v5.3 — точный статус присутствия и идентификация входов */
.admin-presence-cell{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
  min-width:138px;
}
.admin-presence-note{
  display:block;
  color:#687266;
  font-size:10px;
  line-height:1.25;
  white-space:nowrap;
}
.admin-presence-note.is-self{
  color:#2f7a13;
  font-weight:800;
}
.security-event-actor{
  display:flex!important;
  align-items:center;
  flex-wrap:wrap;
  gap:5px;
  color:#26384a!important;
  margin-top:3px;
}
.security-event-actor a{
  color:#184f9b;
  font-weight:800;
  text-decoration:none;
}
.security-event-actor a:hover,
.security-event-actor a:focus{
  text-decoration:underline;
}
.security-actor-self{
  display:inline-flex;
  align-items:center;
  padding:2px 7px;
  border-radius:999px;
  background:#e9f8df;
  border:1px solid #c9e8b4;
  color:#2f7a13;
  font-size:10px;
  font-weight:900;
}


/* ===== REP settings v5.4: clarity, audit and scalable review queue ===== */
.pomogite-reputation-settings-page .rep-last-change{margin:0 0 14px;padding:10px 14px;border:1px solid #dcebd1;border-radius:12px;background:#fbfff8;color:#52616f;font-size:14px;}
.pomogite-reputation-settings-page .rep-settings-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px;position:sticky;top:42px;z-index:8;padding:10px;background:rgba(255,255,255,.96);border:1px solid #e2eed9;border-radius:14px;backdrop-filter:blur(8px);}
.pomogite-reputation-settings-page .rep-settings-nav a{padding:8px 11px;border-radius:10px;background:#f4faef;color:#2f6b07;text-decoration:none;font-weight:700;font-size:13px;}
.pomogite-reputation-settings-page .rep-settings-nav a:hover{background:#eaf6e2;}
.pomogite-reputation-settings-page .rep-form-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:-2px 0 18px;padding:12px 14px;border-radius:14px;background:#f7fbf4;border:1px solid #dcebd1;}
.pomogite-reputation-settings-page #rep-unsaved-state{font-size:14px;color:#65717d;font-weight:700;}
.pomogite-reputation-settings-page #rep-unsaved-state.is-dirty{color:#a25c00;}
.pomogite-reputation-settings-page .rep-heading-row{display:flex;align-items:center;justify-content:space-between;gap:12px;scroll-margin-top:110px;margin-top:18px;}
.pomogite-reputation-settings-page .rep-heading-row h2{margin:0;}
.pomogite-reputation-settings-page .rep-state{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;}
.pomogite-reputation-settings-page .rep-state.is-on{background:#eaf7e4;color:#2e7000;}
.pomogite-reputation-settings-page .rep-state.is-off{background:#f2f3f4;color:#6c737a;}
.pomogite-reputation-settings-page .reputation-action-grid{grid-template-columns:minmax(0,1fr);}
.pomogite-reputation-settings-page .reputation-action-grid label,.pomogite-reputation-settings-page .reputation-action-grid select{width:100%;max-width:none;}
.pomogite-reputation-settings-page .reputation-review-queue{scroll-margin-top:110px;}
.pomogite-reputation-settings-page .rep-review-item a{color:#2f6b07;text-decoration:none;}
.pomogite-reputation-settings-page .rep-review-item a:hover{text-decoration:underline;}
.pomogite-reputation-settings-page .rep-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:16px;}
.pomogite-reputation-settings-page .rep-pagination a,.pomogite-reputation-settings-page .rep-pagination span{padding:8px 11px;border:1px solid #dcebd1;border-radius:10px;background:#fff;text-decoration:none;color:#2f6b07;font-weight:700;font-size:13px;}
.pomogite-reputation-settings-page .rep-settings-history summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;}
.pomogite-reputation-settings-page .rep-history-list{display:grid;gap:8px;margin-top:14px;}
.pomogite-reputation-settings-page .rep-history-list>div{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #e1edd9;border-radius:10px;background:#fff;}
.pomogite-reputation-settings-page .rep-history-list span{color:#66717c;font-size:13px;text-align:right;}
@media(max-width:760px){
 .pomogite-reputation-settings-page .rep-settings-nav{top:0;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;}
 .pomogite-reputation-settings-page .rep-settings-nav a{white-space:nowrap;}
 .pomogite-reputation-settings-page .rep-form-toolbar,.pomogite-reputation-settings-page .rep-heading-row,.pomogite-reputation-settings-page .rep-history-list>div{align-items:stretch;flex-direction:column;}
 .pomogite-reputation-settings-page .rep-form-toolbar .primary-btn{width:100%;}
 .pomogite-reputation-settings-page .rep-history-list span{text-align:left;}
}


/* ===== v5.5: понятная блокировка запрещённого текста без потери формы ===== */
.announcement-form-alert{
  display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  margin:0 0 18px;padding:14px 16px;border:1px solid #f2b8b8;border-radius:14px;
  background:#fff0f0;color:#8f1717;font-weight:750;line-height:1.45;
}
.announcement-form-alert[hidden]{display:none!important}
.announcement-form-alert button{
  flex:0 0 auto;width:30px;height:30px;border:0;border-radius:50%;background:#fff;
  color:#8f1717;font-size:22px;line-height:1;cursor:pointer;box-shadow:0 1px 5px rgba(80,0,0,.12);
}
.field.has-validation-error label{color:#9d1717}
.field.has-validation-error input,.field.has-validation-error textarea{
  border-color:#d93636!important;background:#fff8f8!important;box-shadow:0 0 0 3px rgba(217,54,54,.10)!important;
}
.field-validation-message{margin-top:7px;color:#9d1717;font-size:13px;font-weight:700;line-height:1.35}
.field-validation-message[hidden]{display:none!important}
@media(max-width:700px){
  .announcement-form-alert{font-size:14px;padding:12px 13px}
}

/* ===== Admin Operations Center v5.6 ===== */
.pomogite-stats-page-compact .admin-ops-headline{
  align-items:flex-start!important;
}
.pomogite-stats-page-compact .admin-head-actions{
  display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;
}
.pomogite-stats-page-compact .admin-ops-nav{
  display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 12px;padding:8px;
  background:#fbfdf8;border:1px solid #dcebd2;border-radius:14px;
}
.pomogite-stats-page-compact .admin-ops-nav a{
  display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;border-radius:10px;
  text-decoration:none;font-size:12px;font-weight:800;color:#31531a;background:#eef7e8;
  border:1px solid transparent;transition:.18s ease;
}
.pomogite-stats-page-compact .admin-ops-nav a:hover{
  background:#fff;border-color:#92ca6a;transform:translateY(-1px);
}
.pomogite-stats-page-compact .admin-attention-actions-v2{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:min(680px,100%);
}
.pomogite-stats-page-compact .admin-attention-link-v2{
  align-items:center;justify-content:space-between;min-width:0;padding:10px 12px;
}
.pomogite-stats-page-compact .admin-attention-main{
  display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;
}
.pomogite-stats-page-compact .admin-attention-main>span{font-weight:850;}
.pomogite-stats-page-compact .admin-attention-main small{
  color:#71806c;font-size:10px;line-height:1.25;font-weight:600;
}
.pomogite-stats-page-compact .stats-grid-operations{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.pomogite-stats-page-compact .stats-grid-operations .stats-item{
  min-height:82px!important;justify-content:center;
}
.pomogite-stats-page-compact .stats-item.has-action{
  border-color:#f3b7a8!important;background:#fff8f5!important;
}
.pomogite-stats-page-compact .stats-item-mission{
  border-color:#9bd979!important;background:#f7fff2!important;
}
.pomogite-stats-page-compact .stats-item-health .health-label{
  font-size:16px!important;line-height:1.1!important;white-space:normal;
}
.pomogite-stats-page-compact .stats-item-health.status-ok{border-color:#9bd979!important;background:#f7fff2!important;}
.pomogite-stats-page-compact .stats-item-health.status-warning{border-color:#efd27b!important;background:#fffdf4!important;}
.pomogite-stats-page-compact .stats-item-health.status-critical{border-color:#f0a5a5!important;background:#fff5f5!important;}
.pomogite-stats-page-compact .admin-moderation-summary>a,
.pomogite-stats-page-compact .admin-moderation-summary>div{
  padding:8px 9px!important;border:1px solid #dfead7;border-radius:11px;background:#fbfdf9;
  text-decoration:none;display:flex;flex-direction:column;justify-content:center;min-height:56px;
}
.pomogite-stats-page-compact .admin-moderation-summary>a:hover{border-color:#82c559;background:#f6fff0;}
.pomogite-stats-page-compact .admin-moderation-summary b{font-size:19px!important;color:#387200;}
.pomogite-stats-page-compact .admin-moderation-summary span{font-size:11px;color:#687465;}
.pomogite-stats-page-compact .admin-ops-block{
  margin:12px 0;padding:12px;border:1px solid #dcebd3;border-radius:14px;background:#fcfefa;
}
.pomogite-stats-page-compact .admin-ops-block-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px;
}
.pomogite-stats-page-compact .admin-ops-block-head>div{display:flex;flex-direction:column;gap:3px;}
.pomogite-stats-page-compact .admin-ops-block-head b{font-size:15px;}
.pomogite-stats-page-compact .admin-ops-block-head small{font-size:11px;color:#6c7867;}
.pomogite-stats-page-compact .admin-count-badge{
  display:inline-flex;align-items:center;justify-content:center;min-width:31px;height:31px;padding:0 9px;
  border-radius:999px;background:#e9f7df;color:#397606;font-weight:900;
}
.pomogite-stats-page-compact .admin-count-badge.neutral{background:#edf1e9;color:#596653;}
.pomogite-stats-page-compact .admin-task-row{border-left:3px solid #dba12a!important;}
.pomogite-stats-page-compact .rep-journal-row{border-left:3px solid #8ac85d!important;}
.pomogite-stats-page-compact .admin-ops-links{margin-top:10px;flex-wrap:wrap;}
.pomogite-stats-page-compact .system-health-grid>div{align-items:flex-start;}
.pomogite-stats-page-compact .system-status-badge,
.pomogite-stats-page-compact .security-summary-status{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:auto!important;padding:5px 10px!important;border-radius:999px!important;font-size:11px!important;
}
.pomogite-stats-page-compact .system-status-badge.status-ok,
.pomogite-stats-page-compact .security-summary-status.status-ok{background:#e9f7df!important;color:#347000!important;}
.pomogite-stats-page-compact .system-status-badge.status-warning,
.pomogite-stats-page-compact .security-summary-status.status-warning{background:#fff2c8!important;color:#7a5900!important;}
.pomogite-stats-page-compact .system-status-badge.status-critical,
.pomogite-stats-page-compact .security-summary-status.status-critical{background:#ffe0e0!important;color:#a21c1c!important;}
.pomogite-stats-page-compact .security-overall-state{
  display:flex;flex-direction:column;gap:3px;margin:10px 0;padding:11px 13px;border-radius:12px;border:1px solid #dce8d5;
}
.pomogite-stats-page-compact .security-overall-state b{font-size:14px;}
.pomogite-stats-page-compact .security-overall-state span{font-size:11px;line-height:1.35;color:#667163;}
.pomogite-stats-page-compact .security-overall-state.status-ok{background:#f5fff0;border-color:#b8df9d;}
.pomogite-stats-page-compact .security-overall-state.status-warning{background:#fffaf0;border-color:#efd287;}
.pomogite-stats-page-compact .security-overall-state.status-critical{background:#fff3f3;border-color:#efaaaa;}
.pomogite-stats-page-compact .security-result{
  display:inline-flex!important;width:max-content;max-width:100%;padding:4px 7px;border-radius:8px;font-weight:800!important;
}
.pomogite-stats-page-compact .security-result-safe{background:#e9f7df;color:#397100;}
.pomogite-stats-page-compact .security-result-review{background:#ffe1e1;color:#a11d1d;}
.pomogite-stats-page-compact .security-result-watch{background:#fff0c8;color:#805d00;}
.pomogite-stats-page-compact .security-result-unknown{background:#eef1eb;color:#5e6959;}
.pomogite-stats-page-compact .security-group-row{border-left:3px solid #d6b24c!important;}
.pomogite-stats-page-compact .admin-audit-row{border-left:3px solid #8aa8c7!important;}

@media (max-width:900px){
  .pomogite-stats-page-compact .admin-attention-actions-v2{grid-template-columns:1fr;}
  .pomogite-stats-page-compact .stats-grid-operations{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .pomogite-stats-page-compact .admin-head-actions{justify-content:flex-start;}
}
@media (max-width:560px){
  .pomogite-stats-page-compact .admin-ops-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
  .pomogite-stats-page-compact .admin-ops-nav a{justify-content:center;text-align:center;}
  .pomogite-stats-page-compact .stats-grid-operations{grid-template-columns:1fr 1fr!important;}
  .pomogite-stats-page-compact .admin-ops-block-head{align-items:flex-start;}
}

/* ===== Complaint Decisions & User Moderation v5.7 ===== */
.admin-account-badge{
  display:inline-flex;align-items:center;max-width:220px;padding:4px 9px;border-radius:999px;
  font-size:12px;font-weight:800;line-height:1.25;border:1px solid #dce9d4;background:#f5faF1;color:#376d09;
}
.admin-account-badge.status-warning{background:#fff8df;border-color:#f0d886;color:#805d00}
.admin-account-badge.status-danger{background:#fff0f0;border-color:#f2b8b8;color:#a31212}
.report-row .admin-detail-actions.report-actions{align-items:flex-end;min-width:300px}
.report-row small a{font-weight:800;color:#376d09;text-decoration:none}
.report-row small a:hover{text-decoration:underline}
.admin-user-moderation-actions{width:min(560px,100%);margin-top:4px;border:1px solid #dce9d4;border-radius:14px;background:#fbfdf9;text-align:left}
.admin-user-moderation-actions>summary{cursor:pointer;list-style:none;padding:10px 12px;font-weight:900;color:#376d09}
.admin-user-moderation-actions>summary::-webkit-details-marker{display:none}
.admin-user-moderation-actions>summary::after{content:'▾';float:right}
.admin-user-moderation-actions[open]>summary::after{content:'▴'}
.admin-user-moderation-panel{padding:0 12px 12px;border-top:1px solid #e6eee0}
.admin-user-moderation-current{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 0}
.admin-user-moderation-current small{flex-basis:100%;color:#657083}
.admin-user-moderation-form{display:grid;grid-template-columns:1.35fr .65fr;gap:10px}
.admin-user-moderation-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:800;color:#394455}
.admin-user-moderation-form label.wide,.admin-user-moderation-check.wide{grid-column:1/-1}
.admin-user-moderation-form select,.admin-user-moderation-form input[type=number],.admin-user-moderation-form textarea{
  width:100%;border:1px solid #d7e5cf;border-radius:10px;background:#fff;padding:9px 10px;font:inherit;color:#172033
}
.admin-user-moderation-form textarea{resize:vertical;min-height:76px}
.admin-user-moderation-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important;font-weight:700!important}
.admin-user-moderation-form button{justify-self:start}
.admin-user-moderation-clear{margin-top:10px;padding-top:10px;border-top:1px dashed #dce9d4}
.admin-audit-row small{display:block;margin-top:3px}
.admin-users-table-v2 .admin-account-badge{white-space:normal;text-align:center;justify-content:center}
@media (max-width:820px){
  .report-row .admin-detail-actions.report-actions{min-width:0;width:100%;align-items:stretch}
  .report-row .admin-detail-actions.report-actions>a,.report-row .admin-detail-actions.report-actions form>button{width:100%}
  .admin-user-moderation-actions{width:100%}
  .admin-user-moderation-form{grid-template-columns:1fr}
  .admin-user-moderation-form label.wide,.admin-user-moderation-check.wide{grid-column:auto}
}


/* ===== v5.8: административный предпросмотр и редактирование без потери контекста ===== */
.report-row{grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important}
.report-row .report-summary{min-width:0}
.report-row .admin-detail-actions.report-actions{width:100%;min-width:0;align-items:stretch;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;padding-top:8px;border-top:1px dashed #e1eadb}
.report-row .admin-detail-actions.report-actions>a,
.report-row .admin-detail-actions.report-actions>form>button{white-space:normal;text-align:center}
.report-row.is-context-focus{outline:3px solid rgba(98,184,15,.24);box-shadow:0 0 0 6px rgba(98,184,15,.08)}
.admin-user-moderation-actions{width:100%;max-width:none}
.admin-user-moderation-form{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-user-moderation-form .wide{grid-column:1/-1}
.admin-user-moderation-form button:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.35)}
.admin-moderation-form-hint{color:#657083;font-weight:600!important}
.admin-context-notice{margin:10px 0;padding:12px 14px;border-radius:14px;font-weight:800}
.admin-context-notice.success{background:#eef9e7;border:1px solid #cfe7be;color:#376d09}

.admin-preview-modal{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;padding:22px}
.admin-preview-modal.is-open{display:flex}
.admin-preview-backdrop{position:absolute;inset:0;border:0;background:rgba(16,28,22,.64);backdrop-filter:blur(4px);cursor:default}
.admin-preview-window{position:relative;z-index:1;width:min(980px,100%);max-height:min(90vh,900px);display:flex;flex-direction:column;background:#fff;border-radius:24px;box-shadow:0 28px 100px rgba(0,0,0,.38);overflow:hidden}
.admin-preview-window-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 18px;border-bottom:1px solid #e4ecdF;background:#f8fbf5}
.admin-preview-window-head div{display:flex;flex-direction:column;gap:2px;min-width:0}
.admin-preview-window-head small{color:#657083;font-weight:700}
.admin-preview-window-head b{font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-preview-close{width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#172033;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.12)}
.admin-preview-content{padding:18px;overflow:auto}
.admin-preview-loading,.admin-preview-error{padding:54px 20px;text-align:center;color:#657083;font-weight:800}
.admin-preview-error{color:#a31212}
body.admin-preview-open{overflow:hidden}
.admin-announcement-preview-card{display:flex;flex-direction:column;gap:16px}
.admin-announcement-preview-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}
.admin-announcement-preview-head h2{margin:6px 0 8px;font-size:28px;line-height:1.15}
.admin-preview-category,.admin-preview-urgent{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef8e8;color:#376d09;font-size:12px;font-weight:900;margin-right:6px}
.admin-preview-urgent{background:#fff0ef;color:#b01818}
.admin-preview-badges{display:flex;flex-wrap:wrap;gap:7px;align-items:center;color:#657083;font-size:12px;font-weight:800}
.admin-preview-author{display:flex;flex-direction:column;align-items:flex-end;text-decoration:none;padding:10px 12px;border:1px solid #dfead7;border-radius:14px;background:#fbfdf9;min-width:180px}
.admin-preview-author b{color:#376d09}.admin-preview-author small{color:#657083}
.admin-preview-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;max-height:420px}
.admin-preview-gallery img{width:100%;height:100%;min-height:180px;object-fit:cover;border-radius:18px;background:#edf5e8}
.admin-preview-gallery img:first-child{min-height:320px}
.admin-preview-no-photo{min-height:220px;display:grid;place-items:center;border-radius:18px;background:#edf5e8;color:#657083;font-weight:900}
.admin-preview-description{padding:14px;border:1px solid #e1eadb;border-radius:16px;background:#fbfdf9}
.admin-preview-description h3{margin:0 0 8px}.admin-preview-description p{margin:0;line-height:1.55;white-space:normal}
.admin-preview-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.admin-preview-meta>div{padding:12px;border:1px solid #e1eadb;border-radius:14px;background:#fff}
.admin-preview-meta dt{font-size:12px;font-weight:900;color:#657083;margin-bottom:4px}.admin-preview-meta dd{margin:0;font-weight:800;color:#172033;overflow-wrap:anywhere}
.admin-preview-actions{display:flex;flex-wrap:wrap;gap:10px;padding-top:4px}
.admin-preview-actions .small{font-size:13px}

.admin-edit-context-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;margin-bottom:16px;border:1px solid #cfe6be;border-radius:16px;background:#f1faeb}
.admin-edit-context-banner>div{display:flex;flex-direction:column;gap:3px}.admin-edit-context-banner b{color:#376d09}.admin-edit-context-banner span{color:#536174;line-height:1.4}

@media(max-width:760px){
  .admin-preview-modal{padding:8px}.admin-preview-window{max-height:96vh;border-radius:18px}.admin-preview-content{padding:12px}
  .admin-announcement-preview-head{flex-direction:column}.admin-preview-author{align-items:flex-start;width:100%}
  .admin-preview-gallery{grid-template-columns:1fr 1fr;max-height:none}.admin-preview-gallery img:first-child{grid-column:1/-1;min-height:240px}.admin-preview-gallery img{min-height:130px}
  .admin-preview-meta{grid-template-columns:1fr}.admin-preview-actions>*{width:100%}
  .admin-edit-context-banner{align-items:stretch;flex-direction:column}.admin-edit-context-banner a{width:100%}
  .admin-user-moderation-form{grid-template-columns:1fr}.admin-user-moderation-form .wide{grid-column:auto}
}


/* ===== v5.9: меры к пользователю и объявления без выхода в WordPress ===== */
.admin-user-moderation-actions>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f6fbf2;border-radius:13px}
.admin-user-moderation-actions>summary span{font-weight:900;color:#2f6804}
.admin-user-moderation-actions>summary:hover{background:#eff9e8}
.admin-custom-days[hidden],.admin-user-announcements-inline[hidden]{display:none!important}
.admin-user-announcements-toggle[aria-expanded="true"]{background:#e9f7df!important;border-color:#92c96b!important;color:#2f6804!important}
.admin-user-announcements-inline{width:100%;flex-basis:100%;margin-top:4px;padding:12px;border:1px solid #d8e8cf;border-radius:15px;background:#f9fcf7}
.admin-user-ads-loading,.admin-user-ads-error{padding:24px;text-align:center;font-weight:800;color:#657083}
.admin-user-ads-error{color:#a31212;background:#fff3f3;border-radius:12px}
.admin-user-ads-panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:10px}
.admin-user-ads-panel-head>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.admin-user-ads-panel-head b{font-size:14px;color:#172033}
.admin-user-ads-panel-head small{font-size:11px;color:#657083}
.admin-user-ads-panel-head label{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:800;color:#566153}
.admin-user-ads-panel-head select{min-width:135px;border:1px solid #d4e4cb;border-radius:10px;background:#fff;padding:8px 10px;color:#172033}
.admin-user-ads-list{display:flex;flex-direction:column;gap:8px}
.admin-user-ad-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 11px;border:1px solid #e0ebd9;border-radius:12px;background:#fff}
.admin-user-ad-main{display:flex;flex-direction:column;gap:4px;min-width:0}
.admin-user-ad-main b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-user-ad-main small{font-size:11px;line-height:1.35;color:#657083}
.admin-user-ad-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}
.admin-user-ad-actions form{margin:0}
.admin-user-ads-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding-top:10px;border-top:1px dashed #dce8d5}
.admin-user-ads-pagination{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.admin-user-ads-pagination span{font-size:11px;color:#657083;font-weight:700}
.admin-user-ads-wp-link{font-size:11px;color:#657083;text-decoration:none;border-bottom:1px dashed #9aa895}
.admin-user-ads-wp-link:hover{color:#376d09}
@media(max-width:760px){
  .admin-user-ads-panel-head,.admin-user-ads-footer{align-items:stretch;flex-direction:column}
  .admin-user-ads-panel-head label{justify-content:space-between}.admin-user-ads-panel-head select{flex:1}
  .admin-user-ad-row{grid-template-columns:1fr}.admin-user-ad-actions{justify-content:flex-start}.admin-user-ad-actions>*{flex:1 1 auto}
}


/* === v6.0: жалобы в сообщениях и доказуемая модерация === */
.chat-person-actions{display:flex;align-items:center;gap:7px;justify-self:end}
.chat-head-more{position:relative}
.chat-head-more>summary{display:grid;place-items:center;width:36px;height:36px;border:1px solid #dce9d7;border-radius:12px;background:#f8fcf5;color:#447522;font-size:20px;font-weight:900;line-height:1;cursor:pointer;list-style:none}
.chat-head-more>summary::-webkit-details-marker{display:none}
.chat-head-more[open]>summary{border-color:#8aca6c;background:#eef8e9}
.chat-head-more>div{position:absolute;z-index:40;right:0;top:43px;min-width:230px;padding:7px;border:1px solid #dfe9da;border-radius:14px;background:#fff;box-shadow:0 16px 34px rgba(23,32,51,.16)}
.chat-head-more button{display:flex;align-items:center;gap:8px;width:100%;padding:10px 11px;border:0;border-radius:10px;background:#fff;color:#a33b3b;font:inherit;font-size:12px;font-weight:800;text-align:left;cursor:pointer}
.chat-head-more button:hover{background:#fff3f2}
.messages-v4 .chat-message-row{position:relative}
.chat-message-report{align-self:center;display:grid;place-items:center;width:27px;height:27px;padding:0;border:0;border-radius:9px;background:transparent;color:#b36b6b;font-size:12px;opacity:0;cursor:pointer;transition:.16s}
.chat-message-row.other:hover .chat-message-report,.chat-message-report:focus-visible{opacity:1;background:#fff0ef}
.chat-message-row.is-moderated .chat-bubble{border-style:dashed!important;background:#f3f4f2!important;color:#7b8377!important}
.chat-hidden-message{font-size:12px;font-weight:800}
.report-user-comment{margin:5px 0!important;padding:8px 10px;border-radius:10px;background:#f7faf5;color:#34422f!important;line-height:1.45!important}
.report-attachments-label{margin-top:3px!important}
.report-message-quote{margin:7px 0;padding:10px 12px;border-left:3px solid #78be53;border-radius:0 12px 12px 0;background:#f4faef;color:#23321c;font-size:13px;line-height:1.45}
.admin-message-context-inline{width:100%;margin-top:8px;padding:10px;border:1px dashed #cfe2c5;border-radius:14px;background:#fbfef9}
.admin-message-context-list{display:grid;gap:7px}
.admin-message-context-row{padding:9px 10px;border:1px solid #e5ede1;border-radius:12px;background:#fff}
.admin-message-context-row.is-target{border-color:#83c968;background:#f1faec;box-shadow:0 0 0 2px rgba(79,180,11,.08)}
.admin-message-context-row>div{display:flex;align-items:center;justify-content:space-between;gap:10px}
.admin-message-context-row b{font-size:12px;color:#284c18}.admin-message-context-row time{font-size:10px;color:#879183}
.admin-message-context-row p{margin:5px 0 0!important;color:#253121!important;font-size:12px!important;line-height:1.45!important}
.admin-message-context-row span{display:inline-flex;margin-top:6px;padding:3px 7px;border-radius:999px;background:#dff2d5;color:#39731a;font-size:9px;font-weight:900}
.admin-message-context-loading,.admin-message-context-error{padding:12px;text-align:center;color:#72806e;font-size:12px}
.admin-user-report-history{display:flex;gap:7px;flex-wrap:wrap;margin-top:7px}
.admin-user-report-history span{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border-radius:999px;background:#f3f8ef;color:#627158;font-size:10px}
.admin-moderation-consequence{padding:9px 10px;border:1px solid #f0d9b9;border-radius:11px;background:#fff8ed;color:#80520e;font-size:11px;font-weight:800}
@media(max-width:760px){
  .chat-message-report{opacity:.72;width:25px;height:25px}
  .chat-person-head{grid-template-columns:42px minmax(0,1fr) auto}
  .chat-person-actions{gap:4px}.chat-profile-btn{padding:8px 9px}.chat-head-more>summary{width:34px;height:34px}
  .admin-message-context-row>div{align-items:flex-start;flex-direction:column;gap:2px}
}

/* =====================================================
 * Карта и местоположение v6.2
 * Одна координата: выбранная пользователем точка.
 * ===================================================== */
.location-address-field label small{
  margin-left:6px;
  color:#71806b;
  font-size:12px;
  font-weight:700;
}
.location-address-field .field-hint{
  margin-top:7px;
  color:#71806b;
  font-size:13px;
  line-height:1.4;
}
.location-selection-note{
  margin:0 0 14px;
  padding:11px 13px;
  border:1px solid #dbeccc;
  border-radius:14px;
  background:#f4faef;
  color:#42652e;
  font-size:14px;
  line-height:1.4;
}
.coords-box #selected_coords{color:#2e6f18;}
@media(max-width:600px){
  .location-selection-note{font-size:13px;padding:10px 12px;}
  .use-location-btn{width:100%;justify-content:center;}
}


/* ===== v6.3: местоположение, журнал контактов, ответы на отзывы ===== */
.map-help.is-selecting-place{background:#1f7a2f;box-shadow:0 10px 28px rgba(31,122,47,.28)}
.coords-box{justify-content:flex-start}
.coords-box .coords-change-button{margin-left:auto;border:1px solid #cfe4c1;background:#fff;color:#356b0b;border-radius:999px;padding:8px 13px;font-weight:800;cursor:pointer}
.coords-box .coords-change-button:hover{background:#eef8e8}
.phone-view-warning{display:block;margin-top:5px;color:#7a6540;font-size:12px;line-height:1.35}
.owner-phone-audit-btn{width:100%;margin-top:10px}
.review-reply{margin-top:12px;padding:12px 14px;border-radius:14px;background:#f4faef;border:1px solid #dbeccc}
.review-reply-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}
.review-reply-head b{color:#356b0b}.review-reply p{margin:0 0 6px}.review-reply small{color:var(--muted)}
.review-reply-form{margin-top:12px;padding-top:12px;border-top:1px solid #e3eadf}
.review-reply-form textarea{width:100%;min-height:88px;border:1px solid #d8e2d0;border-radius:12px;padding:11px 12px;font:inherit;resize:vertical}
.review-reply-actions{display:flex;align-items:center;gap:10px;margin-top:8px;flex-wrap:wrap}
.review-reply-actions small{color:var(--muted)}
@media(max-width:700px){.coords-box .coords-change-button{width:100%;margin-left:0}.map-help.is-selecting-place{max-width:calc(100% - 24px)}}
.review-inline-report{border:0;background:transparent;color:#8a5a30;text-decoration:underline;cursor:pointer;padding:0;font:inherit;font-size:12px}

/* v6.4.0: единый поиск вынесен в assets/css/home-search-context.css */
@media (max-width:760px){
  .site-header .header-inner{padding:9px 14px 10px!important;gap:7px!important;align-items:center!important}
  .site-header .logo-full{width:100%;display:flex;justify-content:center}
  .site-header .logo-full img,.site-header .logo img{height:56px!important;max-height:56px!important;width:auto!important}
  .site-header .nav{width:100%;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 8px!important;align-items:center!important}
  .site-header .nav>a:not(.primary-btn),.site-header .nav>.messages-nav-link,.site-header .nav>.notifications-nav-link{
    min-height:36px!important;padding:6px 4px!important;display:flex!important;align-items:center!important;justify-content:center!important;
    text-align:center!important;font-size:14px!important;line-height:1.15!important;
  }
  .site-header .profile-menu,.site-header .nav>.primary-btn{grid-column:1/-1;width:100%!important}
  .site-header .profile-menu-toggle{min-height:38px!important;padding:7px 12px!important;font-size:14px!important}
  .site-header .nav>.primary-btn{min-height:42px!important;margin-top:2px!important;padding:9px 14px!important;font-size:14px!important;border-radius:13px!important}

  .map-title-section{padding-left:10px!important;padding-right:10px!important;margin-top:20px!important}
  .map-title-section h1{font-size:29px!important;line-height:1.12!important;margin-bottom:8px!important}
  .map-title-section p{font-size:15px!important;line-height:1.45!important;max-width:34ch!important;margin-left:auto!important;margin-right:auto!important}
  .map-area-layout .map-card{padding:8px!important;border-radius:20px!important}
  .map-area-layout #map{height:360px!important;border-radius:15px!important}

  .visible-dog-meta-row{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:5px!important}
  .visible-dog-badge{max-width:100%!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.15!important;font-size:11px!important}
  .visible-map-pill,.visible-dog-status{flex:0 0 auto!important}
  .visible-announcement-card{padding:8px!important;gap:9px!important;min-height:0!important}
  .visible-announcement-card b{font-size:16px!important;line-height:1.25!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .visible-announcement-card .mini-edit{width:auto!important;min-width:0!important;padding:8px 14px!important;justify-self:start!important}
  .visible-dog-content{gap:4px!important}

  .home-section-head h2,.home-trust-card h2{font-size:25px!important;line-height:1.12!important}
  .home-project-card{padding:15px!important}
  .home-project-card ul{gap:12px!important}
  .home-project-card li{padding:8px 7px!important}
  .home-how-project{gap:9px!important;padding:14px!important}
  .home-how-card{padding:12px!important}
}

@media (max-width:390px){
  .site-header .logo-full img,.site-header .logo img{height:51px!important;max-height:51px!important}
  .site-header .nav>a:not(.primary-btn){font-size:13px!important}
  .map-title-section h1{font-size:27px!important}
}

/* =========================================================
   v6.4.6 — selected filters and search results context
   - compact mobile summary after filters are applied;
   - full filter details remain available on demand;
   - desktop layout stays horizontal and readable.
========================================================= */
.home-active-filters-summary{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:38px;
  padding:7px 11px;
  border:0!important;
  background:transparent!important;
  color:#3f5b39!important;
  box-shadow:none!important;
  cursor:default;
}
.home-active-filters-summary b{
  font-size:14px;
  line-height:1.2;
  font-weight:900;
}
.home-active-filters-summary i{
  display:none;
  font-style:normal;
  font-size:20px;
  line-height:1;
}
.home-active-filters-details{
  flex:1 1 auto;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  min-width:0;
}
.map-context-copy [data-map-results-summary]{
  white-space:normal;
  overflow-wrap:anywhere;
}

@media (min-width:761px){
  .home-active-filters-summary{
    pointer-events:none;
  }
}

@media (max-width:760px){
  .home-active-filters{
    display:block!important;
    margin:12px 0 14px!important;
    padding:0!important;
    border:1px solid #d7ead0!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 8px 20px rgba(28,62,18,.07)!important;
    overflow:hidden!important;
    max-height:none!important;
  }
  .home-active-filters-summary{
    width:100%!important;
    min-height:52px!important;
    padding:13px 16px!important;
    border:0!important;
    border-radius:0!important;
    background:#f7fcf3!important;
    color:#286f12!important;
    cursor:pointer!important;
    box-shadow:none!important;
    touch-action:manipulation;
  }
  .home-active-filters-summary b{
    font-size:17px!important;
  }
  .home-active-filters-summary i{
    display:block!important;
    transform:rotate(180deg);
    transition:transform .18s ease;
  }
  .home-active-filters.is-collapsed .home-active-filters-summary i{
    transform:rotate(0deg);
  }
  .home-active-filters-details{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:9px!important;
    padding:12px 14px 14px!important;
    border-top:1px solid #e5efe0;
    background:linear-gradient(180deg,#fbfff8 0%,#f5fbf2 100%);
  }
  .home-active-filters.is-collapsed .home-active-filters-details{
    display:none!important;
  }
  .home-active-filters-details button[data-remove-filter]{
    flex:0 1 auto!important;
    width:auto!important;
    max-width:100%!important;
    min-height:38px!important;
    padding:8px 13px!important;
    border:1px solid #d4e8cc!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#23710c!important;
    box-shadow:0 3px 10px rgba(28,62,18,.04)!important;
    font-size:15px!important;
    line-height:1.18!important;
    font-weight:850!important;
    white-space:normal!important;
    text-align:left!important;
  }
  .home-active-filters-details .home-active-filters-map{
    order:90!important;
    flex:0 0 100%!important;
    width:100%!important;
    min-height:48px!important;
    margin-top:5px!important;
    padding:12px 18px!important;
    border:0!important;
    border-radius:16px!important;
    background:linear-gradient(180deg,#31ba19 0%,#168b0b 100%)!important;
    color:#fff!important;
    box-shadow:0 8px 17px rgba(23,142,10,.20)!important;
    font-size:17px!important;
    font-weight:900!important;
  }
  .home-active-filters-details .home-active-filters-clear{
    order:91!important;
    flex:0 0 100%!important;
    width:100%!important;
    min-height:44px!important;
    padding:11px 16px!important;
    border:1px solid #dfeadc!important;
    border-radius:15px!important;
    background:#fff!important;
    color:#687463!important;
    box-shadow:none!important;
    font-size:16px!important;
    font-weight:850!important;
  }
}
