/* Превью карт / колёс / бодиграфа на карточках каталога */
.mv-card-visual{
  margin:-18px -18px 14px;
  height:148px;
  border-radius:18px 18px 0 0;
  overflow:hidden;
  background:#120c24;
}
.mv-card--featured .mv-card-visual{height:176px}
.mv-card-visual svg{width:100%;height:100%;display:block;transform:scale(1.02);transition:transform .35s ease}
.mv-card:hover .mv-card-visual svg{transform:scale(1.08)}
.mv-card-visual--cover img,
.mv-core-thumb img,
.mv-app-thumb-cover{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.mv-card-visual--cover img{transition:transform .4s ease}
.mv-card:hover .mv-card-visual--cover img{transform:scale(1.06)}
.mv-card-visual-photos{
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:8px;
  height:100%;
  padding:14px 12px 10px;
  background:
    radial-gradient(120px 60px at 50% 0%, rgba(196,181,253,.28), transparent 70%),
    linear-gradient(180deg,#2a2158 0%,#17122f 100%);
}
.mv-card-visual-photos img{
  height:92%;
  width:auto;
  max-width:30%;
  object-fit:cover;
  border-radius:7px;
  box-shadow:0 10px 22px rgba(0,0,0,.42);
  background:#fff;
}
.mv-card-visual-photos img:nth-child(1){transform:rotate(-9deg) translateY(8px)}
.mv-card-visual-photos img:nth-child(2){transform:translateY(-2px);z-index:1;max-width:34%}
.mv-card-visual-photos img:nth-child(3){transform:rotate(9deg) translateY(8px)}
.mv-card:has(.mv-card-visual) .mv-card-icon{display:none}
.mv-card:has(.mv-card-visual) .mv-card-head{margin-bottom:8px}

.mv-rec-thumb{
  flex:0 0 auto;
  width:88px;
  height:68px;
  border-radius:12px;
  overflow:hidden;
  background:#120c24;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
.mv-rec-thumb svg,
.mv-rec-thumb img{width:100%;height:100%;object-fit:cover;display:block}

.mv-core-thumb{
  flex:0 0 auto;
  width:112px;
  height:84px;
  border-radius:16px;
  overflow:hidden;
  background:rgba(0,0,0,.22);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
}
.mv-core-thumb svg{width:100%;height:100%;display:block}
.mv-core-card .mv-core-card-icon{display:none}

.mv-app-thumb{
  margin:0 0 16px;
  border-radius:18px;
  overflow:hidden;
  background:#120c24;
  min-height:188px;
}
.mv-app-thumb svg{width:100%;height:200px;display:block}
.mv-card-visual-photos--app{height:180px;padding:18px}
.mv-demo-thumb-wrap{margin:0 0 22px}
.mv-tarot-fan{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:center;
  padding:12px;
  background:linear-gradient(180deg,#2a2158,#17122f);
  border-radius:18px;
}
.mv-tarot-fan-card{margin:0;width:110px;text-align:center;color:#f5f3ff}
.mv-tarot-fan-card img{
  width:100%;
  border-radius:8px;
  box-shadow:0 10px 22px rgba(0,0,0,.4);
  background:#fff;
}
.mv-tarot-fan-card.is-rev img{transform:rotate(180deg)}
.mv-tarot-fan-card figcaption{margin-top:8px}
.mv-tarot-fan-card small{display:block;opacity:.7;font-size:.7rem}
.mv-tarot-fan-card b{display:block;font-size:.82rem}
.mv-tarot-fan-card em{display:block;font-size:.7rem;opacity:.75}

@media (max-width:560px){
  .mv-card-visual{height:124px}
  .mv-card--featured .mv-card-visual{height:148px}
}

/* ui-6.9 задаёт .mv-tier-legend { display:flex !important } — [hidden] без !important не срабатывает */
.mv-tier-legend[hidden],
#mvTierLegend[hidden]{
  display:none!important;
}

.mv-tier-legend{
  row-gap:10px;
}
.mv-tier-legend-item{
  display:inline-flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px 8px;
  min-width:0;
  max-width:100%;
}
.mv-tier-legend-hint{
  font-size:.82rem;
  line-height:1.35;
  color:#5c5470;
}

/* «Мои сервисы»: бейдж поверх превью, не отдельной строкой над картинкой */
.mv-card--owned{
  overflow:hidden;
}
.mv-card--owned > .mv-card-owned-badge{
  position:absolute;
  top:12px;
  left:12px;
  z-index:4;
  margin:0;
  box-shadow:0 4px 14px rgba(15,110,86,.12);
}
.mv-card--owned:not(:has(.mv-card-visual)) > .mv-card-owned-badge{
  position:static;
  margin:0 0 10px;
  box-shadow:none;
}
.mv-card--owned > .mv-card-visual{
  margin-top:0;
}
.mv-card--owned .mv-card-foot{
  align-items:center;
  justify-content:space-between;
  gap:8px 12px;
}
.mv-mine-grid{
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  align-items:stretch;
}
.mv-mine-grid > .mv-card{
  height:100%;
}

/* Популярное: бейджи не наезжают на превью и сердечко */
.mv-card--featured:has(.mv-card-visual) .mv-card-head{
  margin-top:0;
  min-height:0;
  padding-right:0;
}
.mv-card--featured:has(.mv-card-visual) .mv-card-badges{
  margin-top:10px;
}
.mv-card--featured .mv-card-foot{
  align-items:flex-end;
}

/* Единая сетка и высота карточек: «С чего начать», популярное, рубрики */
.mv-featured-grid,
.mv-grid{
  align-items:stretch;
}
.mv-featured-grid > .mv-card,
.mv-grid > .mv-card{
  height:100%;
}
.mv-rec-block .mv-featured-grid{
  margin-top:4px;
}
.mv-rec-block--hero .mv-featured-grid{
  margin-top:8px;
}

.mv-catalog-price-legend{
  margin:-4px 0 18px;
  padding:12px 14px;
  border-radius:14px;
  background:#f6f4ff;
  border:1px solid #e8e4f5;
  font-size:.84rem;
  line-height:1.45;
  color:#5c5570;
  display:flex;
  flex-wrap:wrap;
  gap:8px 16px;
}
.mv-catalog-price-legend strong{color:#3d3558;font-weight:800}
.mv-price-legend-item{white-space:normal}
.mv-card-price-wrap{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
  min-width:0;
}
.mv-card-price{
  font-size:.82rem;
  font-weight:800;
  color:#4f46a8;
  line-height:1.25;
}
.mv-card-price--included{color:#0f766e}
.mv-card-price--solo{color:#1d4ed8}
.mv-card-price-note{
  display:block;
  font-size:.72rem;
  line-height:1.35;
  color:#8b839c;
  font-weight:600;
}
.mv-card-price-note--included{color:#0d9488}

/* Рубрики: одна сетка карточек, как «Популярное» (stack/rail/dense ломали вёрстку) */
.mv-category-block .mv-grid,
.mv-category-block .mv-grid--mosaic,
.mv-category-block .mv-grid--split,
.mv-category-block .mv-grid--dense,
.mv-category-block .mv-grid--wave,
.mv-category-block .mv-grid--stack,
.mv-category-block .mv-grid--rail{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(240px,1fr))!important;
  gap:16px!important;
  align-items:stretch!important;
  overflow:visible!important;
  padding-bottom:0!important;
  scroll-snap-type:none!important;
}
.mv-category-block .mv-grid .mv-card,
.mv-category-block [class*="mv-grid--"] .mv-card{
  display:flex!important;
  flex-direction:column!important;
  grid-template-columns:unset!important;
  align-items:stretch!important;
  min-width:0!important;
  max-width:none!important;
  width:auto!important;
  flex:none!important;
  height:100%!important;
  transform:none!important;
}
.mv-category-block .mv-grid--dense .mv-card p{
  display:-webkit-box!important;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.mv-category-block .mv-card:has(.mv-card-visual) .mv-card-head{
  margin-top:0;
  min-height:0;
}
.mv-category-block .mv-card:has(.mv-card-visual) .mv-card-badges{
  margin-top:10px;
}
.mv-category-block .mv-card h3{
  overflow-wrap:break-word;
  word-break:normal;
  hyphens:auto;
}
