/* Страница города: рейтинг, карточки ТЦ, фильтры. Общие стили — shops-tc-page.css (.tcp-*). */
.tcc-hero{background:#fff;border-radius:16px;padding:24px}
.tcc-facts{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));max-width:640px;margin-top:14px}
.tcc-tag{display:inline-flex;align-items:center;gap:5px;font-size:12px;line-height:1;border-radius:999px;padding:5px 9px;background:var(--tcp-soft);color:var(--tcp-ink)}
.tcc-tag .tcp-ico{width:14px;height:14px}
.tcc-tag--main{background:#fdeceb;color:var(--tcp-acc-d)}
.tcc-tags{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0 0}
.tcc-rank{position:absolute;left:10px;top:10px;background:rgba(51,51,51,.82);color:#fff;font-family:CeraRoundProBold,sans-serif;font-size:13px;border-radius:999px;padding:4px 10px}
.tcc-rank--big{background:var(--tcp-acc)}
.tcc-open{position:absolute;right:10px;top:10px;font-family:CeraRoundProBold,sans-serif;font-size:12px;border-radius:999px;padding:4px 10px;background:var(--tcp-ok-bg);color:var(--tcp-ok)}
.tcc-open.is-closed{background:var(--tcp-off-bg);color:var(--tcp-off)}

/* топ-3 */
.tcc-top3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.tcc-big{display:block;border:1px solid var(--tcp-line);border-radius:14px;overflow:hidden;text-decoration:none;color:var(--tcp-ink);background:#fff;transition:box-shadow .15s,transform .15s}
.tcc-big:hover{box-shadow:0 6px 18px rgba(0,0,0,.09);transform:translateY(-2px)}
.tcc-big__img{display:block;position:relative;aspect-ratio:16/10;background:var(--tcp-soft)}
.tcc-big__img img{display:block;width:100%;height:100%;object-fit:cover}
.tcc-big__body{display:block;padding:14px 16px 16px}
.tcc-big__body b{display:block;font-family:CeraRoundProBold,sans-serif;font-size:18px;line-height:1.25;margin-bottom:4px}
.tcc-big__num{display:block;font-family:CeraRoundProBold,sans-serif;color:var(--tcp-acc-d);font-size:15px;margin-bottom:4px}
.tcc-addr{display:block;margin:0;color:var(--tcp-mut);font-size:13px;line-height:1.35}
.tcc-bars{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:4px}
.tcc-bars a{display:grid;grid-template-columns:54px minmax(120px,1.1fr) minmax(0,2fr) 44px;gap:10px;align-items:center;padding:8px 10px;border-radius:10px;color:var(--tcp-ink);text-decoration:none;font-size:14px}
.tcc-bars a:hover{background:var(--tcp-soft)}
.tcc-bars__n{color:var(--tcp-mut);font-variant-numeric:tabular-nums}
.tcc-bars__name{font-family:CeraRoundProMedium,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tcc-bars__bar{display:block;height:8px;border-radius:99px;background:var(--tcp-soft);overflow:hidden}
.tcc-bars__bar i{display:block;height:100%;border-radius:99px;background:var(--tcp-acc)}
.tcc-bars__v{text-align:right;font-family:CeraRoundProBold,sans-serif;font-variant-numeric:tabular-nums}

/* фильтры и сетка */
.tcc-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.tcc-chip{font:inherit;font-size:14px;border:1px solid var(--tcp-line);border-radius:999px;padding:6px 14px;background:#fff;color:var(--tcp-ink);cursor:pointer}
.tcc-chip:hover{border-color:var(--tcp-acc)}
.tcc-chip.is-on{background:var(--tcp-acc);border-color:var(--tcp-acc);color:#fff}
.tcc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.tcc-card{display:flex;flex-direction:column;border:1px solid var(--tcp-line);border-radius:14px;overflow:hidden;background:#fff}
.tcc-card.is-hidden{display:none}
.tcc-card__img{display:block;position:relative;aspect-ratio:16/10;background:var(--tcp-soft)}
.tcc-card__img img{display:block;width:100%;height:100%;object-fit:cover}
.tcc-card__body{display:flex;flex-direction:column;flex:1;padding:14px 16px 16px}
.tcc-card__title{margin:0 0 4px;font-family:CeraRoundProBold,sans-serif;font-size:17px;line-height:1.25}
.tcc-card__title a{color:var(--tcp-ink);text-decoration:none;font-size:inherit}
.tcc-card__title a:hover{color:var(--tcp-acc-d)}
.tcc-metro,.tcc-hours{display:flex;align-items:center;gap:6px;margin:6px 0 0;font-size:13px;color:var(--tcp-ink)}
.tcc-metro .tcp-ico,.tcc-hours .tcp-ico{width:15px;height:15px;color:var(--tcp-mut);flex:none}
.tcc-links{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:auto;padding-top:14px}
.tcc-btn{font-family:CeraRoundProBold,sans-serif;font-size:13px;border-radius:10px;padding:9px 14px;background:var(--tcp-acc);color:#fff;text-decoration:none}
.tcc-btn:hover{filter:brightness(.95)}
.tcc-onmap{font-size:13px;color:var(--tcp-acc-d);text-decoration:none}
.tcc-onmap:hover{text-decoration:underline}
.tcc-empty{margin-top:12px}
.tcc-pager{margin-bottom:18px}
.tcc-cities{display:flex;flex-wrap:wrap;gap:8px}
.tcc-cities a{font-size:14px;border:1px solid var(--tcp-line);border-radius:999px;padding:6px 14px;color:var(--tcp-ink);text-decoration:none}
.tcc-cities a:hover{background:var(--tcp-acc);border-color:var(--tcp-acc);color:#fff}

@media (max-width:900px){
  .tcc-top3{grid-template-columns:1fr}
  .tcc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  .tcc-hero{padding:16px}
  .tcc-grid{grid-template-columns:1fr}
  .tcc-bars a{grid-template-columns:40px minmax(0,1fr) 36px;gap:8px}
  .tcc-bars__bar{display:none}
  .tcc-big{display:grid;grid-template-columns:120px minmax(0,1fr)}
  .tcc-big__img{aspect-ratio:auto;height:100%;min-height:110px}
  .tcc-big__body{padding:10px 12px}
  .tcc-big__body b{font-size:16px}
  .tcc-big .tcc-tags{display:none}
  .tcc-chips{flex-wrap:wrap}
}

/* QA 18.10.2026: глобальное .container (css2/style.css) на узких экранах жмётся до 300/460px с полями по 11–20% — на страницах ТЦ тянем на всю ширину */
@media (max-width:900px){
  body .container{max-width:none;width:100%;padding-left:12px;padding-right:12px;box-sizing:border-box}
  body .container .container{padding-left:0;padding-right:0}
}

.tc-more{display:inline-flex;align-items:center;min-height:40px;margin:0 0 14px;padding:0 16px;border:1px dashed var(--tcp-mut);border-radius:999px;background:#fff;color:var(--tcp-ink);font:inherit;font-size:14px;cursor:pointer}
.tc-more:hover{border-color:var(--tcp-acc);color:var(--tcp-acc-d)}
.tcc-chips [hidden],.tcp-chips [hidden]{display:none}
@media (min-width:901px){#yandex_rtb{min-height:180px}}
@media (max-width:900px){.tcc-bars a{min-height:44px}.tcc-card__links a,.tcc-big__body a{min-height:40px;display:inline-flex;align-items:center}}
@media (max-width:900px){.tcc-card__title a,.tcc-links a,.tcc-btn,.tcc-cities a,.point-name.tcc-onmap{display:inline-flex;align-items:center;min-height:40px}}
