/* TASK-1075: визуализации интерьеров.
   .ent-pf--fit — блок «фото + товары + миниатюры» в один экран (главная heavytop; в окне интерьера на странице);
   .viz-grid / .viz-card / .viz-modal — страница «Интерьеры кафе и ресторанов»: сетка карточек и окно интерьера. */

/* общее: кадр 3:2 вместо кадра портфолио 1400x790, пометка о нейросети */
.ent-pf.ent-pf--viz .ent-pf__stage { aspect-ratio: 3 / 2; }
.ent-pf.ent-pf--viz .ent-pf__note { margin: 6px 0 0; font-size: 13px; line-height: 18px; color: var(--ent-muted, #5B6673); }
.ent-pf__note .viz-more { color: inherit; text-decoration: underline; }

/* стили главной примагничивают прокрутку к блокам (scroll-snap) — на странице это прячет заголовок под шапку */
html:has(.viz-grid) { scroll-snap-type: none !important; }

/* блок в один экран: высоту тела блока на ПК задаёт скрипт (--viz-h) по месту под шапкой сайта */
/* правило главной (home-screens-task1070.css) тянет секцию ровно на экран под шапкой — блоку нужен запас, см. idei-filter.js */
section.ent-pf.ent-pf--fit { min-height: 0 !important; }
.ent-pf.ent-pf--fit .ent-pf__body { max-width: none; }
body:has(.viz-grid) section.text .title-wrapper { margin: 10px 0 10px; }
body:has(.viz-grid) section.text .title-wrapper h1 { margin-bottom: 0; }
/* вложенная .page внутри section.text даёт второй отступ 15 px — выравниваем по заголовку и крошкам */
section.text .viz-page > .page, section.text .viz-seo > .page { padding-left: 0; padding-right: 0; }
@media (min-width: 1025px) {
  .ent-pf.ent-pf--fit .ent-pf__body { height: var(--viz-h, calc(100vh - 410px)); min-height: 340px; max-height: 760px; }
  .ent-pf.ent-pf--fit .ent-pf__main { width: auto; flex: 0 0 auto; max-width: 66%; height: 100%; }
  .ent-pf.ent-pf--fit .ent-pf__stage { height: 100%; width: auto; max-width: 100%; aspect-ratio: 3 / 2; }
  .ent-pf.ent-pf--fit .ent-pf__side { flex: 1 1 0; min-width: 0; padding: 16px 20px; overflow: hidden; }
  .ent-pf.ent-pf--fit .ent-pf__side-look { flex: none; gap: 8px; }
  .ent-pf.ent-pf--fit .ent-pf__items { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 8px; }
  /* нечётное число товаров: последний — на всю ширину, без дыры справа */
  .ent-pf.ent-pf--fit .ent-pf__items > li:last-child:nth-child(odd) { grid-column: 1 / -1; }
}
/* правая колонка: компактный список товаров и кнопка КП */
.ent-pf.ent-pf--fit .ent-pf__side-title { font-size: 18px; line-height: 24px; }
.ent-pf.ent-pf--fit .ent-pf__item { padding: 6px; gap: 10px; }
.ent-pf.ent-pf--fit .ent-pf__actions { margin-top: 2px; }
.ent-pf.ent-pf--fit .ent-pf__actions .ent-btn.ent-pf__kp { width: auto; height: 40px; padding: 0 20px; font-size: 15px; white-space: nowrap; }
@media (max-width: 1024px) { .ent-pf.ent-pf--fit .ent-pf__actions .ent-btn.ent-pf__kp { width: 100%; height: auto; min-height: 44px; padding: 8px 16px; line-height: 1.25; white-space: normal; } }
/* кнопка КП — в строке заголовка «В этом интерьере», справа; список товаров — под ними на всю ширину */
@media (min-width: 1025px) {
.ent-pf.ent-pf--fit .ent-pf__side-look:not([hidden]) { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px 12px; }
.ent-pf.ent-pf--fit .ent-pf__side-look > div:first-child { grid-column: 1; grid-row: 1; }
.ent-pf.ent-pf--fit .ent-pf__side-look > .ent-pf__items { grid-column: 1 / -1; grid-row: 2; }
.ent-pf.ent-pf--fit .ent-pf__side-look > .ent-pf__actions { grid-column: 2; grid-row: 1; margin-top: 0; }
}
/* миниатюры интерьеров — сеткой в правой колонке, листаются страницами, со счётчиком */
.viz-gallery { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--ent-line, #D5DAE0); }
.viz-gallery__head { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
.viz-gallery__title { font-weight: 700; font-size: 16px; line-height: 22px; margin-right: auto; }
.viz-gallery__count { font-size: 14px; color: var(--ent-muted, #5B6673); font-variant-numeric: tabular-nums; }
.viz-gallery .ent-pf__thumbs { display: grid; grid-template-columns: repeat(var(--viz-cols, 4), minmax(0, 1fr)); gap: 8px; overflow: hidden; padding: 0; flex: none; }
.viz-gallery .ent-pf__thumb { width: auto; height: auto; flex: none; aspect-ratio: 3 / 2; }
.viz-gallery .ent-pf__thumb.viz-off { display: none; }
/* на ПК высоту строк миниатюр задаёт скрипт — сетка заполняет колонку до низа */
@media (min-width: 1025px) { .viz-gallery .ent-pf__thumb { aspect-ratio: auto; height: 100%; } .viz-gallery .ent-pf__thumbs { flex: 1 1 auto; min-height: 0; } }
.viz-nav { width: 32px; height: 32px; border-radius: 50%; border: 1px solid var(--ent-line, #D5DAE0); background: #fff; color: var(--ent-ink, #1F2B38); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; flex: none; }
.viz-nav:hover:not(:disabled) { background: var(--ent-accent, #EF7A17); border-color: var(--ent-accent, #EF7A17); color: #fff; }
.viz-nav:disabled { opacity: .35; cursor: default; }
.viz-nav:focus-visible { outline: 2px solid var(--ent-accent, #EF7A17); outline-offset: 2px; }
/* стрелки и счётчик на большой картинке */
.ent-pf__stage > .viz-nav { position: absolute; top: 50%; transform: translateY(-50%); z-index: 4; width: 44px; height: 44px; border: 0; background: rgba(255, 255, 255, .9); box-shadow: 0 2px 10px rgba(31, 43, 56, .25); }
.ent-pf__stage > .viz-nav--prev { left: 14px; }
.ent-pf__stage > .viz-nav--next { right: 14px; }
.viz-stage-count { position: absolute; right: 14px; bottom: 14px; z-index: 4; padding: 4px 10px; border-radius: 14px; background: rgba(31, 43, 56, .7); color: #fff; font-size: 13px; line-height: 18px; font-variant-numeric: tabular-nums; }

/* фильтр по типу заведения */
.ent-pf__tags { justify-content: flex-start !important;  display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 16px; }
.ent-pf__tags .ent-pf__tag { height: 40px; padding: 0 16px; border: 1px solid var(--ent-line, #D5DAE0); border-radius: 20px; background: #fff; color: var(--ent-ink, #1F2B38); font: inherit; font-size: 15px; font-weight: 500; cursor: pointer; }
.ent-pf__tags .ent-pf__tag span { color: var(--ent-muted, #5B6673); font-weight: 400; margin-left: 2px; }
.ent-pf__tags .ent-pf__tag:hover { border-color: var(--ent-accent, #EF7A17); }
.ent-pf__tags .ent-pf__tag:focus-visible { outline: 2px solid var(--ent-accent, #EF7A17); outline-offset: 2px; }
.ent-pf__tags .ent-pf__tag[aria-pressed="true"] { background: var(--ent-accent, #EF7A17); border-color: var(--ent-accent, #EF7A17); color: #fff; }
.ent-pf__tags .ent-pf__tag[aria-pressed="true"] span { color: #fff; }
.ent-pf .ent-pf__thumb[hidden] { display: none; }

/* текст под блоком — как текст каталога; вопросы — штатный блок .faq сайта (faq.css / faq.js) */
.viz-seo { padding: 24px 0 40px; color: var(--ent-ink, #1F2B38); }
.viz-seo__text { display: block !important; box-sizing: border-box; width: 100%; background: #fff; border: 1px solid var(--ent-line, #D5DAE0); border-radius: 18px; padding: 28px 32px; }
.viz-seo__text h2 { font-size: 26px; line-height: 32px; font-weight: 700; margin: 0 0 16px; text-align: left; }
.viz-seo__text p { font-size: 16px; line-height: 24px; margin: 0 0 16px; text-align: left; }
.viz-seo__text a { color: var(--ent-accent-dark, #CF5F08); text-decoration: underline; text-underline-offset: 2px; }
.viz-seo__faq { display: block !important; box-sizing: border-box; width: 100%; margin-top: 16px; background: #fff; border: 1px solid var(--ent-line, #D5DAE0); border-radius: 18px; padding: 24px 32px 12px; }
.viz-seo__faq .faq { max-width: none; }
.viz-details { margin-top: 16px; }
.viz-details summary { cursor: pointer; font-size: 14px; line-height: 20px; color: var(--ent-muted, #5B6673); padding: 4px 0; }
.viz-details p { font-size: 14px; line-height: 20px; color: var(--ent-muted, #5B6673); margin: 8px 0 0; }
@media (max-width: 600px) {
  .ent-pf__tags .ent-pf__tag { height: 36px; padding: 0 12px; font-size: 14px; white-space: nowrap; flex: none; }
  .viz-seo__text { padding: 20px 16px; }
  .viz-seo__faq { padding: 16px 16px 8px; }
  .viz-seo__text h2 { font-size: 22px; line-height: 28px; }
  .ent-pf__stage > .viz-nav { width: 40px; height: 40px; }
  .ent-pf__stage > .viz-nav--prev { left: 8px; }
  .ent-pf__stage > .viz-nav--next { right: 8px; }
}

/* ===== страница: шапка (лид, пометка, фильтр) ===== */
/* справа от текста — кнопка подбора, кнопки фильтра растянуты на всю строку: без пустоты справа (Дмитрий 24.10) */
.viz-head { display: flex !important; align-items: center; justify-content: space-between !important; gap: 24px; margin: 0 0 16px; }
.viz-head__text { display: block !important; flex: 1 1 auto; min-width: 0; }
.viz-head .viz-note { margin-bottom: 0; }
@media (min-width: 1025px) { .viz-page .ent-pf__tags { flex-wrap: wrap; } .viz-page .ent-pf__tags .ent-pf__tag { flex: 1 1 auto; } }  /* 14 типов не влезают в строку — две строки, обе растянуты на всю ширину */
.viz-page { padding: 0 0 8px; }
.viz-lead { margin: 0; font-size: 17px; line-height: 26px; color: var(--ent-ink, #1F2B38); text-align: left; }
.viz-note { margin: 4px 0 16px; font-size: 13px; line-height: 18px; color: var(--ent-muted, #5B6673); text-align: left; }
.viz-note .viz-more { color: inherit; text-decoration: underline; }

/* ===== сетка карточек: 4 колонки на широком экране, 3 — на ноутбуке, 2 — на планшете, 1 — на телефоне ===== */
.viz-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 1600px) { .viz-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 1024px) { .viz-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; } }
@media (max-width: 600px) { .viz-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; } }
.viz-grid > li { display: block !important; margin: 0; padding: 0; min-width: 0; }
.viz-grid > li[hidden] { display: none !important; }
.viz-grid > li::before { content: none !important; }

.viz-card__btn { display: flex !important; flex-direction: column; width: 100%; height: 100%; padding: 0; border: 1px solid var(--ent-line, #D5DAE0); border-radius: 18px; background: #fff; color: var(--ent-ink, #1F2B38); font: inherit; text-align: left; cursor: pointer; overflow: hidden; position: relative; transition: box-shadow .2s, border-color .2s, transform .2s; }
.viz-card__btn:hover { border-color: transparent; box-shadow: 0 10px 30px rgba(31, 43, 56, .16); transform: translateY(-2px); }
.viz-card__btn:focus-visible { outline: 3px solid var(--ent-accent, #EF7A17); outline-offset: 2px; }
.viz-card__img { display: block !important; position: relative; aspect-ratio: 3 / 2; overflow: hidden; background: #EEF1F4; }
.viz-card__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.viz-card__btn:hover .viz-card__img img { transform: scale(1.04); }
.viz-card__tag { position: absolute; left: 12px; top: 12px; z-index: 1; padding: 4px 10px; border-radius: 14px; background: rgba(255, 255, 255, .92); font-size: 13px; line-height: 18px; font-weight: 600; }
.viz-card__dots { position: absolute; right: 12px; top: 12px; z-index: 1; padding: 4px 10px 4px 8px; border-radius: 14px; background: rgba(31, 43, 56, .72); color: #fff; font-size: 13px; line-height: 18px; display: inline-flex !important; align-items: center; gap: 6px; }
.viz-card__dots::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--ent-accent, #EF7A17); box-shadow: 0 0 0 3px rgba(239, 122, 23, .35); }
.viz-card__body { display: flex !important; flex-direction: column; gap: 10px; padding: 14px 16px 16px; flex: 1 1 auto; justify-content: space-between; }
.viz-card__title { display: block !important; font-size: 17px; line-height: 23px; font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.viz-card__row { display: flex !important; align-items: center; gap: 6px; }
.viz-card__prod { display: block !important; width: 44px; height: 44px; flex: none; border: 1px solid var(--ent-line, #D5DAE0); border-radius: 10px; background: #fff; overflow: hidden; }
.viz-card__prod img { display: block; width: 100%; height: 100%; object-fit: contain; }
.viz-card__more { display: flex !important; align-items: center; justify-content: center; width: 44px; height: 44px; flex: none; border-radius: 10px; background: #F2F4F6; font-size: 14px; font-weight: 600; color: var(--ent-muted, #5B6673); }
.viz-card__go { margin-left: auto; display: inline-flex !important; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; color: var(--ent-accent-dark, #CF5F08); white-space: nowrap; }
.viz-card__btn:hover .viz-card__go { color: var(--ent-accent, #EF7A17); }

/* плитка КП дополняет неполный последний ряд (ширину задаёт скрипт); вид — как карточки сайта: белая с серой рамкой
   (Дмитрий 24.10: не оранжевая), всё по центру — без пустот при любой ширине */
.viz-grid > .viz-cta { display: flex !important; flex-direction: column; justify-content: center !important; align-items: center; gap: 12px; padding: 28px 32px; border: 1px solid var(--ent-line, #D5DAE0); border-radius: 18px; background: #fff; color: var(--ent-ink, #1F2B38); text-align: center; }
.viz-cta__title { display: block !important; font-size: 22px; line-height: 28px; font-weight: 700; }
.viz-cta__text { display: block !important; font-size: 15px; line-height: 22px; color: var(--ent-muted, #5B6673); max-width: 560px; text-align: center; }
.viz-cta .ent-btn { height: 44px; padding: 0 28px; }
.viz-cta__cats { display: flex !important; flex-wrap: wrap; justify-content: center !important; align-items: center; gap: 8px; margin-top: 8px; max-width: 620px; }
.viz-cta__cats span { width: 100%; font-size: 14px; line-height: 20px; color: var(--ent-muted, #5B6673); }
.viz-cta__cats a { display: inline-flex; align-items: center; height: 34px; padding: 0 14px; border: 1px solid var(--ent-line, #D5DAE0); border-radius: 17px; background: #fff; color: var(--ent-ink, #1F2B38); font-size: 14px; font-weight: 500; text-decoration: none; }
.viz-cta__cats a:hover { border-color: var(--ent-accent, #EF7A17); color: var(--ent-accent-dark, #CF5F08); }
/* плитка на весь ряд — одной строкой по центру: заголовок, текст, кнопка */
@media (min-width: 1025px) {
  .viz-grid > .viz-cta.viz-cta--row { flex-direction: row; gap: 32px; padding: 28px 40px; }
  .viz-cta--row .viz-cta__text { text-align: left; max-width: 520px; }
  .viz-cta--row .viz-cta__cats { display: none !important; }
}

/* ===== окно интерьера: тот же блок «фото + товары + другие интерьеры» во весь экран ===== */
.viz-modal { position: fixed; inset: 0; box-sizing: border-box; width: 100%; height: 100%; z-index: 100000; display: flex !important; align-items: center; justify-content: center; padding: 24px; }
.viz-modal[hidden] { display: none !important; }
.viz-modal__backdrop { position: absolute; inset: 0; background: rgba(17, 24, 32, .78); }
.viz-modal__box { position: relative; display: block !important; flex: 0 1 auto; min-width: 0; width: min(1800px, 100%); max-height: 100%; overflow: auto; background: #fff; border-radius: 20px; padding: 16px; box-sizing: border-box; }
.viz-modal__close { position: fixed; top: 4px; right: 4px; z-index: 2; width: 40px; height: 40px; min-width: 0; padding: 0; box-sizing: border-box; border: 0; border-radius: 50%; background: #fff; color: var(--ent-ink, #1F2B38); display: flex !important; align-items: center; justify-content: center; cursor: pointer; box-shadow: 0 2px 10px rgba(0, 0, 0, .25); }
.viz-modal__close svg { display: block; width: 20px; height: 20px; flex: none; }
.viz-modal__close:hover { background: var(--ent-accent, #EF7A17); color: #fff; }
.viz-modal .ent-pf { display: block !important; margin: 0; padding: 0; min-height: 0; background: none; }
.viz-modal .ent-pf > .page { padding: 0; margin: 0; max-width: none; width: auto; }
.viz-modal .ent-pf .ent-pf__side { border-radius: 16px; }
@media (min-width: 1025px) {
  .viz-modal .ent-pf.ent-pf--fit .ent-pf__body { min-height: 0; max-height: none; }
  .viz-modal .ent-pf.ent-pf--fit .ent-pf__main { max-width: none; }
  /* все миниатюры, крупнее, прокрутка внутри колонки */
  .viz-modal .viz-gallery .ent-pf__thumbs { overflow-y: auto; grid-auto-rows: auto; align-content: start; scrollbar-width: thin; padding-right: 4px; }
  .viz-modal .viz-gallery .ent-pf__thumb { aspect-ratio: 3 / 2; height: auto; }
  /* в окне правая колонка уже — кнопка КП встаёт под список товаров на всю ширину */
  .viz-modal .ent-pf.ent-pf--fit .ent-pf__side-look > .ent-pf__actions { grid-column: 1 / -1; grid-row: 3; }
  .viz-modal .ent-pf.ent-pf--fit .ent-pf__actions .ent-btn.ent-pf__kp { width: 100%; }
  /* узкая колонка окна: цена — под названием, слова не рвутся */
  .viz-modal .ent-pf .ent-pf__item { display: grid; grid-template-columns: 56px minmax(0, 1fr); column-gap: 10px; align-items: center; }
  .viz-modal .ent-pf .ent-pf__item-img { grid-row: 1 / 3; }
  .viz-modal .ent-pf .ent-pf__item-text { grid-column: 2; }
  .viz-modal .ent-pf .ent-pf__item-price { grid-column: 2; text-align: left; font-size: 14px; }
  .viz-modal .ent-pf .ent-pf__model, .viz-modal .ent-pf .ent-pf__cat { overflow-wrap: normal; word-break: normal; }
}
html.viz-lock, html.viz-lock body { overflow: hidden; }
/* чат-помощник сайта (z-index выше окна) закрывал товары — пока окно открыто, прячем */
html.viz-lock #ht-chatbot { display: none !important; }
@media (max-width: 1024px) {
  /* в окне на телефоне и планшете — все интерьеры одной лентой с прокруткой вбок */
  .viz-modal .viz-gallery .ent-pf__thumbs { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: calc((100% - 16px) / 3.3); overflow-x: auto; overflow-y: hidden; scroll-snap-type: x proximity; padding-bottom: 6px; }
  .viz-modal .viz-gallery .ent-pf__thumb { scroll-snap-align: start; }
  .viz-modal { padding: 0; align-items: stretch; }
  .viz-modal__box { width: 100%; height: 100%; max-height: none; border-radius: 0; padding: 60px 16px 24px; }
  .viz-modal__close { top: 8px; right: 8px; }
}
@media (max-width: 600px) {
  .viz-card__title { font-size: 16px; }
  .viz-grid > .viz-cta { padding: 24px 20px; }
  .viz-cta__title { font-size: 20px; line-height: 26px; }
}

/* ===== главная: заглушка блока до догрузки (высоту на ПК задаёт скрипт, как у самого блока) ===== */
.ent-pf .viz-lazy__body { display: block !important; border-radius: 18px; background: linear-gradient(100deg, #EEF1F4 30%, #F6F8FA 50%, #EEF1F4 70%); background-size: 200% 100%; animation: viz-shimmer 1.6s linear infinite; }
.ent-pf .viz-lazy__body:not([aria-busy]) { animation: none; }
@keyframes viz-shimmer { from { background-position: 100% 0; } to { background-position: -100% 0; } }
@media (max-width: 1024px) { .ent-pf .viz-lazy__body { height: 850px; } }
/* 24.10: 14 кнопок фильтра — ровная сетка 7×2 без пустот (на 1025–1279 остаётся перенос с растяжкой) */
@media (min-width: 1280px) {
  .viz-page .ent-pf__tags { display: grid !important; grid-template-columns: repeat(7, minmax(0, 1fr)); }
  .viz-page .ent-pf__tags .ent-pf__tag { padding: 0 8px; white-space: nowrap; font-size: 14px; }
}
@media (min-width: 1440px) { .viz-page .ent-pf__tags .ent-pf__tag { font-size: 15px; } }
/* 24.10: окно интерьера догружается при первом открытии — пока грузится, на его месте серая полоса загрузки */
.viz-modal__load { display: block !important; height: min(calc(100vh - 96px), 760px); border-radius: 18px; background: linear-gradient(100deg, #EEF1F4 30%, #F6F8FA 50%, #EEF1F4 70%); background-size: 200% 100%; animation: viz-shimmer 1.6s linear infinite; }
.viz-modal__load:not([aria-busy]) { animation: none; display: flex !important; align-items: center; justify-content: center; padding: 24px; text-align: center; color: var(--ent-muted, #5B6673); }
.viz-modal__load:not([aria-busy])::after { content: "Не удалось загрузить интерьер. Закройте окно и откройте его снова."; }
/* 24.10: телефон/планшет — 14 кнопок типов в одну строку с прокруткой вбок (переносом вставали лесенкой в 7 рядов) */
@media (max-width: 1024px) {
  .viz-page .ent-pf__tags { flex-wrap: nowrap !important; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; margin-right: -16px; padding-right: 16px; }
  .viz-page .ent-pf__tags::-webkit-scrollbar { display: none; }
  .viz-page .ent-pf__tags .ent-pf__tag { flex: none; }
}
/* 24.10 (Дмитрий, телефон): «Смотреть мебель» не помещалась рядом с 4 эскизами и обрезалась — отдельной строкой;
   точки на картинке были 26 px с кольцом 36 px на кадре высотой ~220 px — уменьшены (зона нажатия 36 px осталась) */
@media (max-width: 600px) {
  .viz-card__row { flex-wrap: wrap; row-gap: 12px; }
  .viz-card__go { flex-basis: 100%; margin-left: 0; }
  .ent-pf.ent-pf--viz .ent-pf__spot { width: 36px; height: 36px; }
  .ent-pf.ent-pf--viz .ent-pf__spot::before { width: 22px; height: 22px; }
  .ent-pf.ent-pf--viz .ent-pf__spot-dot { width: 16px; height: 16px; box-shadow: 0 1px 5px rgba(18,24,31,.35); }
  .ent-pf.ent-pf--viz .ent-pf__spot-dot::after { width: 6px; height: 6px; }
}
