/* ==========================================================================
   ЗДРАВЕН ПОРТАЛ — UX слой (28.08.2026)

   ⛔⛔ Мерено преди преработката: началната страница беше 6 744 px на телефон,
   тоест ОСЕМ екрана скролване. Целта е под два екрана.

   Правилото на целия слой: „един екран = една задача“.
   Данните не са махнати — махната е нуждата да ги виждаш всичките наведнъж.
   ========================================================================== */

/* ---------------------------------------------------------------- компактен герой */
.hero.hero-lite .hero-main{padding-top:26px;padding-bottom:14px;
  grid-template-columns:minmax(0,132px) minmax(0,1fr);gap:22px;align-items:center}
.hero.hero-lite .hero-logo img{max-width:132px}
.hero.hero-lite h1{font-size:clamp(27px,3.6vw,52px);line-height:1.02}
.hero.hero-lite .lede{margin-top:8px;font-size:clamp(12.5px,1.05vw,16px);letter-spacing:.01em}
.hero.hero-lite .find{margin-top:18px}
.hero.hero-lite .hero-figure{display:none}

/* търсачката: поле + микрофон + „Близо до мен“ */
.find .field{position:relative;padding-right:10px}
.mic{flex:0 0 auto;width:40px;height:40px;border:0;border-radius:50%;background:var(--sky);
  display:grid;place-items:center;cursor:pointer;color:var(--blue)}
.mic:hover{background:#DCEEFB}
.mic[aria-pressed="true"]{background:var(--red);color:#fff;animation:mic-on 1.1s ease-in-out infinite}
.mic svg{width:19px;height:19px;fill:currentColor}
@keyframes mic-on{0%,100%{box-shadow:0 0 0 0 rgba(211,43,43,.45)}
  70%{box-shadow:0 0 0 9px rgba(211,43,43,0)}}
.mic-off{display:none}

/* ---------------------------------------------------------------- бързи действия */
.quick{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:18px 0 0}
.quick a{display:grid;justify-items:center;gap:8px;padding:14px 8px;background:#fff;
  border:1px solid var(--line);border-radius:16px;text-align:center;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.quick a:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#BCDCF0}
.quick img{width:34px;height:34px;object-fit:contain}
.quick span{font:700 12px/1.2 var(--display);letter-spacing:.01em;color:var(--navy)}
.more-cats{display:flex;justify-content:center;margin-top:12px}
.more-cats button{display:inline-flex;align-items:center;gap:8px;background:none;border:0;
  padding:9px 16px;border-radius:999px;cursor:pointer;font:600 14.5px/1 var(--body);color:var(--blue)}
.more-cats button:hover{background:var(--sky)}
.more-cats svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2.4;
  transition:transform .2s ease}
.more-cats button[aria-expanded="true"] svg{transform:rotate(180deg)}
.allcats{display:none;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}
.allcats.on{display:grid}
.allcats a{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#fff;
  border:1px solid var(--line);border-radius:14px;font-weight:600;font-size:14px;color:#22405C}
.allcats a:hover{background:var(--sky);border-color:#B9D8EC;color:var(--navy)}
.allcats img{width:24px;height:24px;flex:0 0 auto;object-fit:contain}

/* ---------------------------------------------------------------- резултати под търсачката */
.results{margin:20px 0 0;display:none}
.results.on{display:block}
.res-group+.res-group{margin-top:18px}
.res-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--line-2, #EDF4F9)}
.res-h h3{margin:0;font:700 15.5px/1.2 var(--display);color:var(--navy)}
.res-h .cnt{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.cards{display:grid;gap:10px}

/* компактната карта — сърцето на новия UX */
.rc{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 15px}
.rc:hover{border-color:#BCDCF0;box-shadow:0 6px 18px rgba(9,50,90,.06)}
.rc-ic{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;flex:0 0 auto}
.rc-ic img{width:22px;height:22px}
.rc-b{min-width:0}
.rc-b b{display:block;font:600 15px/1.3 var(--body);color:var(--ink);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rc-b span{display:block;font-size:13px;color:var(--muted);margin-top:2px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rc-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.tag{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;
  font:600 11.5px/1.35 var(--body)}
.t-rx{background:#FDECEC;color:#C22B2B}
.t-otc{background:#E9F7EE;color:#0F8A3C}
.t-nzok{background:#F1EBFB;color:#6B3FA0}
.t-geo{background:var(--sky);color:var(--blue)}
.t-info{background:#EEF3F7;color:#5C7189}
.rc-go{flex:0 0 auto;display:grid;place-items:center;width:30px;height:30px;border-radius:9px;
  background:var(--soft);color:var(--blue)}
.rc-go svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2.4}

.more-btn{margin-top:12px;width:100%;padding:13px;border:1px dashed #BFD7E8;background:#fff;
  border-radius:13px;cursor:pointer;font:600 14.5px/1 var(--body);color:var(--blue)}
.more-btn:hover{background:var(--sky);border-style:solid}
.res-none{padding:22px 20px;background:var(--soft);border:1px dashed #C8DCEA;border-radius:14px;
  color:var(--muted);font-size:14.8px;line-height:1.6}
.res-none b{display:block;color:var(--ink);margin-bottom:5px}

/* ---------------------------------------------------------------- филтри в долен лист */
.fbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:14px 0 0}
.fbtn{display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border-radius:999px;
  border:1px solid var(--line);background:#fff;cursor:pointer;font:600 14px/1 var(--body);color:#2C4A68}
.fbtn:hover{border-color:#9FC8E6;background:var(--sky)}
.fbtn[data-on="1"]{background:var(--blue);border-color:var(--blue);color:#fff}
.fbtn .n{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;
  border-radius:999px;background:var(--blue);color:#fff;font-size:11.5px;font-variant-numeric:tabular-nums}
.fbtn[data-on="1"] .n{background:#fff;color:var(--blue)}
.fbtn svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2.2}

.sheet-bg{position:fixed;inset:0;z-index:60;background:rgba(8,28,48,.45);
  opacity:0;pointer-events:none;transition:opacity .22s ease}
.sheet-bg.on{opacity:1;pointer-events:auto}
.sheet{position:fixed;left:0;right:0;bottom:0;z-index:61;background:#fff;
  border-radius:22px 22px 0 0;max-height:82vh;overflow-y:auto;
  transform:translateY(102%);transition:transform .26s cubic-bezier(.22,.7,.3,1);
  box-shadow:0 -14px 40px rgba(8,28,48,.22)}
.sheet.on{transform:translateY(0)}
.sheet-in{padding:8px 20px 22px}
.sheet-grip{width:42px;height:4px;border-radius:99px;background:#D3E1EC;margin:8px auto 14px}
.sheet h3{margin:0 0 14px;font:700 18px/1.2 var(--display);color:var(--navy)}
.fgroup{padding:14px 0;border-top:1px solid var(--line-2, #EDF4F9)}
.fgroup:first-of-type{border-top:0;padding-top:0}
.fgroup>b{display:block;font:600 13px/1 var(--body);letter-spacing:.02em;
  text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.fopts{display:flex;flex-wrap:wrap;gap:8px}
.fopt{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;
  border:1px solid var(--line);background:#fff;cursor:pointer;font-size:14.5px}
.fopt input{accent-color:var(--blue);width:16px;height:16px}
.fopt:has(input:checked){background:var(--sky);border-color:#9FC8E6;color:var(--navy);font-weight:600}
.sheet-do{position:sticky;bottom:0;padding:14px 0 0;background:#fff;display:flex;gap:10px}
.sheet-do button{flex:1;padding:14px;border-radius:13px;border:0;cursor:pointer;
  font:600 15.5px/1 var(--body)}
.sheet-do .go{background:var(--blue);color:#fff}
.sheet-do .clr{background:var(--soft);color:var(--ink-2, #41576E);border:1px solid var(--line)}

/* ---------------------------------------------------------------- карта / списък */
.viewtabs{display:inline-flex;padding:3px;background:var(--soft);border-radius:999px;
  border:1px solid var(--line)}
.viewtabs button{padding:8px 16px;border:0;background:none;border-radius:999px;cursor:pointer;
  font:600 14px/1 var(--body);color:var(--muted)}
.viewtabs button[aria-selected="true"]{background:#fff;color:var(--navy);
  box-shadow:0 1px 4px rgba(9,50,90,.1)}

/* ---------------------------------------------------------------- спешно */

/* ---------------------------------------------------------------- сгъваеми блокове */
.acc{border:1px solid var(--line);border-radius:14px;background:#fff;margin-top:10px;
  overflow:hidden}
.acc>summary{list-style:none;cursor:pointer;padding:15px 17px;display:flex;align-items:center;
  justify-content:space-between;gap:12px;font:600 15px/1.3 var(--body);color:var(--ink)}
.acc>summary::-webkit-details-marker{display:none}
.acc>summary::after{content:"";width:9px;height:9px;flex:0 0 auto;
  border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);
  transform:rotate(45deg) translateY(-2px);transition:transform .2s ease}
.acc[open]>summary::after{transform:rotate(-135deg) translateY(-2px)}
.acc>summary:hover{background:var(--soft)}
.acc-in{padding:0 17px 17px;border-top:1px solid var(--line-2, #EDF4F9)}
.acc-in>*:first-child{margin-top:14px}

/* ---------------------------------------------------------------- адаптиране */
@media (max-width:1000px){
  .quick{grid-template-columns:repeat(3,1fr)}
  .allcats{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:860px){
  .hero.hero-lite .hero-main{grid-template-columns:1fr;text-align:center;
    padding-top:18px;padding-bottom:10px;gap:12px}
  .hero.hero-lite .hero-logo img{max-width:96px}
  .hero.hero-lite h1{font-size:clamp(26px,7.4vw,36px)}
  .hero.hero-lite .lede{font-size:12.5px}
  .quick{grid-template-columns:repeat(3,1fr);gap:8px}
  .quick a{padding:12px 6px}
  .quick img{width:30px;height:30px}
  .quick span{font-size:11px}
  .rc{grid-template-columns:auto 1fr;gap:11px}
  .rc-go{display:none}
}
@media (max-width:560px){
  .allcats{grid-template-columns:1fr}
  .fbar{gap:7px}
}
@media (prefers-reduced-motion:reduce){
  .sheet{transition:none}
  .mic[aria-pressed="true"]{animation:none}
}

/* ⛔ Geroyat e centriran na telefon, no REZULTATITE se chetat samo lyavo podravneni. */
.results,.results *{text-align:left}
.res-h{align-items:center}
.hero.hero-lite .find-hint{text-align:center}
@media (max-width:860px){
  .results{margin-left:-2px;margin-right:-2px}
}

/* ==========================================================================
   28.08 vecher — gradat, tabloto i kartata.
   ⛔ Plavashtoto chervено kopche 112 e MAHNATO (sledeshe skrola).
      112 ostava v hedara, v mobilnoto menyu i v dolnata lenta.
   ⛔ Vsyako pravilo tuk ima stoynost I IZVUN media query — pravilo, opisano
      samo v neya, na desktop raste bez ogranichenie.
   ========================================================================== */

/* ---------------------------------------------------------------- редът с града */
.cityline{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:12px 0 0}
.citybtn{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;cursor:pointer;
  border:1px solid var(--line);border-radius:var(--r-pill);background:#fff;
  font:600 14.5px/1 var(--body);color:var(--ink)}
.citybtn:hover{border-color:#BCDCF0;background:var(--soft)}
.citybtn svg{width:17px;height:17px;fill:none;stroke:var(--blue);stroke-width:1.9}
.citybtn svg:last-child{width:13px;height:13px;stroke:var(--muted);stroke-width:2.4}
.cityline[data-on="1"] .citybtn{border-color:var(--blue);background:var(--sky);color:var(--navy)}
.geoask{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;cursor:pointer;
  border:1px solid transparent;border-radius:var(--r-pill);background:var(--sky);
  font:600 14px/1 var(--body);color:var(--blue)}
.geoask:hover{background:var(--deep-sky)}
.geoask svg{width:16px;height:16px;fill:currentColor}
.geoask.pulse{animation:geo-p 2.4s ease-in-out infinite}
@keyframes geo-p{0%,100%{box-shadow:0 0 0 0 rgba(2,94,187,.30)}
  60%{box-shadow:0 0 0 8px rgba(2,94,187,0)}}
.cityhint{font-size:13px;color:var(--muted)}

/* листът с градовете */
.citysearch{position:relative;display:flex;align-items:center;gap:10px;padding:0 14px;
  border:1px solid var(--line);border-radius:var(--r);background:#fff;margin-bottom:10px}
.citysearch svg{width:18px;height:18px;fill:none;stroke:var(--muted);stroke-width:2;flex:0 0 auto}
.citysearch input{flex:1;min-width:0;border:0;outline:0;background:none;padding:13px 0;
  font:400 15.5px/1.3 var(--body);color:var(--ink)}
.cityme{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;cursor:pointer;
  padding:12px;border:1px solid var(--line);border-radius:var(--r);background:var(--sky);
  font:600 15px/1 var(--body);color:var(--blue);margin-bottom:12px}
.cityme svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9}
.citylist{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:7px;
  max-height:52vh;overflow-y:auto;overscroll-behavior:contain}
.citylist button{display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;
  cursor:pointer;font:600 14.5px/1.2 var(--body);color:var(--ink);text-align:left}
.citylist button:hover{border-color:var(--blue);background:var(--sky)}
.citylist button span{font:400 12.5px/1 var(--body);color:var(--muted);
  font-variant-numeric:tabular-nums;flex:0 0 auto}

/* ---------------------------------------------------------------- списъкът на града */
.cityres{margin-top:16px}
.cityres:not(.on){display:none}
.rc-flat{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;
  padding:13px 15px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
/* ⛔⛔ `.rc-b span` (0,1,1) удря и вложените `.tag`, и бие `.tag{display:inline-flex}`
   (0,1,0) по специфичност → етикетът става блок и се разстила на цялата ширина.
   Същият закон като `.hero .wrap`: селектор по ПОТОМСТВО удря ВСИЧКИ потомци. */
.rc-b .rc-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;
  white-space:normal;overflow:visible}
.rc-b .rc-tags .tag{display:inline-flex;flex:0 0 auto;width:auto;
  white-space:nowrap;overflow:visible}
.rc-flat .rc-b{min-width:0}
.rc-tel{display:inline-flex;align-items:center;gap:6px;margin-top:7px;padding:5px 11px;
  border-radius:999px;background:var(--sky);color:var(--blue);
  font:600 13px/1.2 var(--body)}
.rc-tel:hover{background:var(--deep-sky)}
.rc-tel svg{width:13px;height:13px;fill:currentColor;flex:0 0 auto}
.rc-tags .tag{flex:0 0 auto}
.res-note{margin:12px 2px 0;font-size:12.5px;line-height:1.55;color:var(--muted)}

/* ---------------------------------------------------------------- видовете в списъка */
.kinds{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}
.kinds button{display:inline-flex;align-items:center;gap:6px;padding:8px 13px;cursor:pointer;
  border:1px solid var(--line);border-radius:var(--r-pill);background:#fff;
  font:600 13.5px/1 var(--body);color:var(--ink)}
.kinds button:hover{border-color:#BCDCF0;background:var(--soft)}
.kinds button[aria-pressed="true"]{background:var(--blue);border-color:var(--blue);color:#fff}
.kinds button i{font-style:normal;font-size:12.5px;opacity:.7;font-variant-numeric:tabular-nums}

/* ---------------------------------------------------------------- картата */
.mappane{margin-top:16px}
.mapbox{height:clamp(300px,52vh,520px);border-radius:var(--r-lg);overflow:hidden;
  border:1px solid var(--line);background:var(--soft)}
.mapnote{margin:10px 2px 0;font-size:12.5px;line-height:1.55;color:var(--muted)}
.leaflet-container{font:400 13px/1.4 var(--body)}

/* ---------------------------------------------------------------- таблото с числата */
.sec-h{margin-bottom:16px}
.sec-h h2{margin:0;font:700 clamp(20px,2.2vw,28px)/1.15 var(--display);color:var(--navy)}
.sec-h p{margin:7px 0 0;font-size:14.5px;line-height:1.6;color:var(--muted);max-width:70ch}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.tile{display:grid;gap:3px;padding:18px 18px 16px;background:#fff;border-radius:var(--r-lg);
  border:1px solid var(--line);transition:transform .16s ease,box-shadow .16s ease}
.tile:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#BCDCF0}
.tile img{width:30px;height:30px;object-fit:contain;margin-bottom:6px}
.tile b{font:700 clamp(24px,2.6vw,32px)/1 var(--display);color:var(--blue);
  font-variant-numeric:tabular-nums}
.tile span{font:600 14.5px/1.3 var(--body);color:var(--ink)}
.tile em{font:400 12.5px/1.4 var(--body);font-style:normal;color:var(--muted)}

.sub-h{margin:16px 0 8px;font:700 14px/1 var(--display);color:var(--navy);
  text-transform:uppercase;letter-spacing:.05em}

.howto{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.howto>div{padding:18px;background:var(--soft);border-radius:var(--r-lg);
  border:1px solid var(--line)}
.howto b{display:block;font:700 15.5px/1.3 var(--display);color:var(--navy);margin-bottom:6px}
.howto p{margin:0;font-size:14px;line-height:1.65;color:var(--muted)}

.srcs{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;
  margin:0;padding:0;list-style:none}
.srcs li{display:grid;gap:2px;padding:14px 16px;background:#fff;border:1px solid var(--line);
  border-radius:var(--r)}
.srcs b{font:600 14.5px/1.35 var(--body);color:var(--ink)}
.srcs span{font-size:13px;color:var(--muted)}
.srcs em{font-style:normal;font-size:12.5px;color:var(--blue);font-weight:600}

@media (max-width:640px){
  .tiles{grid-template-columns:repeat(2,1fr)}
  .tile{padding:14px 14px 12px}
  .citylist{grid-template-columns:repeat(2,1fr)}
  .cityline{gap:7px}
}
