/* «Мой вкус» — отметки, полка, подбор (site-agent, 04.11.2026; v2 — 09.11.2026).
   Описание: site/docs/FEATURE-taste-recommendations-2026-11-04.md, решения v2 — site/docs/DECISIONS-taste-v2-2026-11-09.md.
   Дизайн-ревью 09.11 (site/docs/design-review-taste-v2-2026-11-09.md): одна система кнопок и чипов как у Aspro,
   плитки как в каталоге, отмеченное — тоном, а не заливкой. Размеры и цвета замерены на сайте. */
:root {
    --dpt-accent: var(--theme-base-color, #620a84);    /* белый на нём 11:1 */
    --dpt-accent-hover: #4d0868;
    --dpt-accent-tint: #f3ebf6;                         /* = --card_bg_active, фон чипов Aspro */
    --dpt-bad: #b3261e;                                 /* 6,5:1 */
    --dpt-bad-tint: #fbeeed;
    --dpt-text: #222228;                                /* заголовки сайта */
    --dpt-text-2: #555558;                              /* основной текст сайта, 7,4:1 */
    --dpt-muted: #6b6b70;                               /* мелкие подписи, 5,3:1 */
    --dpt-caption: #6b6b70;                             /* подпись; #8d8d8d сайта даёт 3,3:1 — ниже AA (ревью 2) */
    --dpt-line: #ebecef;
    --dpt-outline: rgba(34, 34, 40, .32);               /* контурная кнопка Aspro — 32 % цвета текста */
    --dpt-bg: #f6f6f8;
    --dpt-radius: 12px;                                 /* плитка каталога */
    --dpt-radius-btn: var(--theme-button-border-radius, 6px);
}

/* ── кнопки: как .btn Aspro (sm 36/14 w500, xs 30/13, lg 44/15, рамка 1px) ─────────────────── */
.dpt-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 6px; box-sizing: border-box;
    min-height: 36px; padding: 0 16px;
    border: 1px solid var(--dpt-outline); border-radius: var(--dpt-radius-btn); background: #fff;
    font: inherit; font-size: 14px; font-weight: 500; line-height: 20px; color: var(--dpt-text);
    cursor: pointer; text-decoration: none !important; white-space: nowrap;
    transition: border-color .15s, background .15s, color .15s;
}
.dpt-btn svg { width: 16px; height: 16px; flex: none; }
.dpt-btn:hover { border-color: var(--dpt-accent); color: var(--dpt-accent); background: #fff; }
.dpt-btn.is-on { border-color: var(--dpt-accent); background: var(--dpt-accent-tint); color: var(--dpt-accent); }
.dpt-btn.is-on svg path { fill: currentColor; fill-opacity: .18; }
/* «Нравится» — цвет темы; отмеченное — тон (не заливка: заливка в блоке покупки — только у «Купить») */
.dpt-btn--like { border-color: rgba(98, 10, 132, .45); color: var(--dpt-accent); }
.dpt-btn--like:hover { background: var(--dpt-accent-tint); }
/* «Не моё» — красный значок, отмеченное — красный тон */
.dpt-btn.is-bad { border-color: rgba(179, 38, 30, .38); color: var(--dpt-text); }
.dpt-btn.is-bad svg { color: var(--dpt-bad); }
.dpt-btn.is-bad:hover { border-color: var(--dpt-bad); background: var(--dpt-bad-tint); color: var(--dpt-bad); }
.dpt-btn.is-bad.is-on { border-color: var(--dpt-bad); background: var(--dpt-bad-tint); color: var(--dpt-bad); }
.dpt-btn--lg { min-height: 44px; padding: 0 20px; font-size: 15px; }
.dpt-btn--small { min-height: 30px; padding: 0 12px; font-size: 13px; }
.dpt-btn--primary, .dpt-btn--primary:link, .dpt-btn--primary:visited { background: var(--dpt-accent); border-color: var(--dpt-accent); color: #fff !important; }
.dpt-btn--primary:hover { background: var(--dpt-accent-hover); border-color: var(--dpt-accent-hover); color: #fff !important; }
.dpt-btn--danger, .dpt-btn--danger:hover { background: var(--dpt-bad); border-color: var(--dpt-bad); color: #fff; }
.dpt-btn--link { border: 0; background: none; padding: 0; min-height: 0; color: var(--dpt-accent); font-weight: 500; }
.dpt-btn--link:hover { background: none; text-decoration: underline !important; }
.dpt-btn--ghost { border-color: transparent; background: none; color: var(--dpt-text-2); padding-inline: 6px; }
.dpt-btn--ghost:hover { background: none; border-color: transparent; }
.dpt-btn--block { width: 100%; }
.dpt-btn[disabled] { opacity: .5; cursor: default; }
/* фокус: Aspro снимает outline у кнопок — возвращаем */
.dp-taste-row .dpt-btn:focus-visible, .dpt-app .dpt-btn:focus-visible, .dpt-app .dpt-chipbtn:focus-visible,
.note-popup .dpt-btn:focus-visible, .dpt-ent-box .dpt-btn:focus-visible, .dpt-entlink:focus-visible {
    outline: 2px solid var(--dpt-accent) !important; outline-offset: 2px;
}
.dpt-btn.is-bad:focus-visible { outline-color: var(--dpt-bad) !important; }
@media (prefers-reduced-motion: reduce) { .dpt-btn, .dpt-chipbtn { transition: none; } }

/* ── чипы: как .chip Aspro (фон #f3ebf6, радиус 6, без рамки, 36px, 15 w400); активный — заливка темы ── */
.dpt-chipbtn {
    display: inline-flex; align-items: center; gap: 6px; box-sizing: border-box; flex: none;
    min-height: 36px; padding: 0 14px; border: 0; border-radius: 6px; background: var(--dpt-accent-tint);
    font: inherit; font-size: 15px; font-weight: 400; line-height: 20px; color: var(--dpt-text);
    cursor: pointer; white-space: nowrap; text-decoration: none !important; transition: background .15s, color .15s;
}
.dpt-chipbtn:hover { color: var(--dpt-accent); }
.dpt-chipbtn.is-on { background: var(--dpt-accent); color: #fff; }
.dpt-chipbtn .dpt-n { font-size: 13px; color: rgba(34, 34, 40, .5); }
.dpt-chipbtn.is-on .dpt-n { color: rgba(255, 255, 255, .72); }
.dpt-chips-sep { width: 1px; align-self: stretch; margin: 6px 4px; background: var(--dpt-line); flex: none; }

.dpt-status { font-size: 14px; line-height: 20px; color: var(--dpt-text-2); }
.dpt-status:empty { display: none; }
.dpt-status a { color: var(--dpt-accent); }

/* ── строка «Оцените аромат» в карточке ──────────────────────────────────────────────────────── */
.dp-taste-row { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--dpt-line); }
.dp-taste-row__head { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; margin-bottom: 8px; }
.dp-taste-row__label { font-size: 15px; line-height: 21px; color: var(--dpt-caption); }
.dp-taste-row__link { font-size: 14px; font-weight: 500; color: var(--dpt-accent); text-decoration: none !important; }
.dp-taste-row__link:hover { text-decoration: underline !important; }
.dp-taste-row__btns { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.dp-taste-row__btns.is-ask .dpt-btn { animation: dpt-ask 1s ease 1; }
@keyframes dpt-ask { 0%, 100% { box-shadow: none; } 40% { box-shadow: 0 0 0 4px var(--dpt-accent-tint); } }
.dp-taste-row__more { display: flex; align-items: center; gap: 4px 12px; margin-top: 8px; position: relative; flex-wrap: wrap; }
.dp-taste-row__more .dpt-btn--ghost { padding-inline: 0; min-height: 36px; }
.dp-taste-row .dpt-status { margin-top: 8px; }
.dpt-menu {
    position: absolute; z-index: 30; top: calc(100% + 4px); left: 0;
    min-width: 220px; max-width: min(320px, calc(100vw - 32px)); padding: 6px; background: #fff; line-height: 1.35;
    border: 1px solid var(--dpt-line); border-radius: 8px; box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
}
.dpt-menu button {
    display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; min-height: 40px; padding: 8px 12px;
    border: 0; border-radius: 6px; background: none; font: inherit; font-size: 14px; line-height: 1.35; text-align: left;
    white-space: normal; cursor: pointer; color: var(--dpt-text);
}
.dpt-menu button:hover, .dpt-menu button:focus-visible { background: var(--dpt-accent-tint); color: var(--dpt-accent); outline: none; }
.dpt-menu button.is-on { color: var(--dpt-accent); font-weight: 500; }
.dpt-menu button.is-on::after { content: "✓"; }
/* после «Не моё» — что именно не понравилось */
.dpt-why { margin-top: 10px; display: flex; flex-direction: column; gap: 8px; }
.dpt-why__q { font-size: 14px; color: var(--dpt-text); }
.dpt-why__row { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.dpt-why__k { font-size: 13px; color: var(--dpt-caption); min-width: 72px; }
.dpt-why .dpt-chipbtn { min-height: 32px; font-size: 14px; padding: 0 12px; }
.dpt-why .dpt-chipbtn.is-on { background: var(--dpt-bad-tint); color: var(--dpt-bad); box-shadow: inset 0 0 0 1px var(--dpt-bad); }
/* бренд и парфюмер с ♥ — простые ссылки (на телефоне они ниже в карточке — здесь убираем) */
.dp-taste-row__ent { display: flex; flex-wrap: wrap; gap: 4px 16px; margin-top: 10px; }
.dpt-ent-item { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; min-width: 0; }
.dpt-ent-item__k { color: var(--dpt-caption); font-size: 13px; }
.dpt-entlink {
    display: inline-flex; align-items: center; gap: 5px; min-height: 32px; padding: 0; border: 0; background: none;
    font: inherit; font-size: 14px; font-weight: 500; color: var(--dpt-text); cursor: pointer; max-width: 240px;
}
.dpt-entlink span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dpt-entlink svg { width: 16px; height: 16px; flex: none; color: var(--dpt-caption); }
.dpt-entlink:hover, .dpt-entlink:hover svg { color: var(--dpt-accent); }
.dpt-entlink.is-on svg { color: var(--dpt-accent); }
.dpt-entlink.is-on svg path { fill: currentColor; }
@media (max-width: 600px) {
    .dp-taste-row__ent { display: none; }
    .catalog-detail__cart .btn-elg { min-height: 48px; font-size: 16px; }  /* «Купить» выше кнопок вкуса */
}

/* ── полоски аккордов ────────────────────────────────────────────────────────────────────────── */
.accords-wrap .accord-bar { cursor: pointer; position: relative; }
.accords-wrap .accord-bar:focus-visible { outline: 2px solid var(--dpt-accent); outline-offset: 2px; }
.accords-wrap .accord-bar:hover { filter: brightness(1.06); }
.accords-wrap .accord.dpt-acc-like .accord-bar::after,
.accords-wrap .accord.dpt-acc-dislike .accord-bar::after {
    content: ""; position: absolute; right: 4px; top: 50%; transform: translateY(-50%);
    width: 18px; height: 18px; border-radius: 50%; background: #fff center / 12px no-repeat;
}
.accords-wrap .accord.dpt-acc-like .accord-bar::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23620a84' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 10v11H3V10h4zm0 0 4-8a3 3 0 0 1 3 3v4h5.5a2 2 0 0 1 2 2.3l-1.4 8A2 2 0 0 1 18 21H7'/%3E%3C/svg%3E");
}
.accords-wrap .accord.dpt-acc-dislike .accord-bar::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b3261e' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 14V3h4v11h-4zm0 0-4 8a3 3 0 0 1-3-3v-4H4.5a2 2 0 0 1-2-2.3l1.4-8A2 2 0 0 1 6 3h11'/%3E%3C/svg%3E");
}
.accords-wrap .accord.dpt-acc-dislike .accord-bar { opacity: .55; }
.dpt-acc-hint { font-size: 13px; color: var(--dpt-caption); margin: 0 0 8px; }
/* контраст подписи: белый текст на этих цветах < 4,5:1 — делаем чёрный */
.accord-bar.cinnamon, .accord-bar.tobacco, .accord-bar.rose, .accord-bar.sweet,
.accord-bar.meat, .accord-bar.cannabis, .accord-bar.green, .accord-bar.smoky { color: #000; }

/* шторка «Аккорды этого аромата» (телефон) */
.dpt-acc-sub { font-size: 13px; color: var(--dpt-muted); margin: -4px 0 8px; }
.dpt-acc-rows { display: flex; flex-direction: column; }
.dpt-acc-row { display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 6px 0; border-bottom: 1px solid var(--dpt-line); }
.dpt-acc-row:last-child { border-bottom: 0; }
.dpt-acc-row.is-current { background: linear-gradient(90deg, var(--dpt-accent-tint), transparent 70%); margin-inline: -8px; padding-inline: 8px; border-radius: 8px; }
.dpt-acc-row__dot { width: 12px; height: 12px; border-radius: 50%; flex: none; }
.dpt-acc-row__main { flex: 1; min-width: 0; }
.dpt-acc-row__name { font-size: 15px; font-weight: 600; color: var(--dpt-text); }
.dpt-acc-row__meta { font-size: 13px; color: var(--dpt-muted); overflow-wrap: anywhere; }
.dpt-acc-row__btns { display: flex; gap: 8px; flex: none; }
.dpt-icon-btn { width: 44px; height: 44px; min-height: 44px; padding: 0; border-radius: 50%; border-color: transparent; background: var(--dpt-bg); }
.dpt-icon-btn.dpt-btn--like { border-color: transparent; }
.dpt-icon-btn.is-bad { border-color: transparent; }
.dpt-icon-btn.is-on { border-color: var(--dpt-accent); }
.dpt-icon-btn.is-bad.is-on { border-color: var(--dpt-bad); }
.dpt-icon-btn svg { width: 18px; height: 18px; }
.dpt-sheet-done { position: sticky; bottom: 0; padding-top: 10px; background: #fff; }
.dpt-sheet-done .dpt-btn { width: 100%; min-height: 48px; font-size: 16px; }

/* ── отметка ноты (страница ноты: кнопки на тёмной фотографии — «стекло», как таблетка группы) ── */
.dp-taste-note { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
.dp-taste-note .dpt-btn {
    background: rgba(255, 255, 255, .16); border-color: rgba(255, 255, 255, .28); color: #fff;
    -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
}
.dp-taste-note .dpt-btn svg, .dp-taste-note .dpt-btn.is-bad svg { color: #fff; }
.dp-taste-note .dpt-btn:hover { background: rgba(255, 255, 255, .26); border-color: rgba(255, 255, 255, .5); color: #fff; }
.dp-taste-note .dpt-btn.is-on { background: #fff; border-color: #fff; color: var(--dpt-accent); }
.dp-taste-note .dpt-btn.is-on svg { color: var(--dpt-accent); }
.dp-taste-note .dpt-btn.is-bad.is-on { color: var(--dpt-bad); }
.dp-taste-note .dpt-btn.is-bad.is-on svg { color: var(--dpt-bad); }

/* ── всплывающее сообщение: по центру, над чат-кнопкой ──────────────────────────────────────── */
.dpt-toast {
    position: fixed; z-index: 10000; left: 16px; right: 16px; margin-inline: auto; width: fit-content; max-width: 460px;
    bottom: calc(88px + env(safe-area-inset-bottom, 0px)); box-sizing: border-box;
    display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px;
    padding: 12px 16px; border-radius: 8px; background: #222228; color: #fff;
    font-size: 14px; line-height: 20px; box-shadow: 0 8px 24px rgba(0, 0, 0, .25);
}
.dpt-toast a, .dpt-toast button {
    color: #fff !important; text-decoration: underline !important; white-space: nowrap; font: inherit; font-weight: 600;
    background: none; border: 0; padding: 0; cursor: pointer;
}

/* ── плитки: как плитка каталога (радиус 12, отступ 16, inset-рамка; фото → цена → название → «Купить») ── */
.dpt-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(212px, 1fr)); gap: 16px; }
.dpt-tile {
    position: relative; display: flex; flex-direction: column; min-width: 0;
    padding: 16px; background: #fff; border-radius: var(--dpt-radius); box-shadow: inset 0 0 0 1px var(--dpt-line);
    transition: box-shadow .15s;
}
.dpt-tile:hover { box-shadow: inset 0 0 0 1px var(--dpt-accent); }
.dpt-tile__media { position: relative; margin-bottom: 12px; }
.dpt-tile__img { display: block; aspect-ratio: 1 / 1; max-width: 100%; }
.dpt-tile__img img { width: 100%; height: 100%; object-fit: contain; }
.dpt-tile__fav { position: absolute; top: 0; right: 0; }
.dpt-tile__fav .dpt-fav__btn {
    width: 36px; height: 36px; min-height: 36px; padding: 0; border: 0; border-radius: 50%;
    background: rgba(255, 255, 255, .88); color: var(--dpt-muted);
}
.dpt-tile__fav .dpt-fav__btn:hover, .dpt-tile__fav .dpt-fav__btn.active { color: var(--dpt-accent); background: #fff; }
.dpt-tile__fav .dpt-fav__btn svg { width: 20px; height: 20px; }
.dpt-tile__price { font-size: 20px; line-height: 28px; font-weight: 600; color: var(--dpt-text); }
.dpt-tile__price.is-none { font-size: 15px; line-height: 21px; font-weight: 400; color: var(--dpt-muted); }
.dpt-tile__brand { font-size: 13px; line-height: 18px; color: var(--dpt-caption); margin-top: 4px; }
.dpt-tile__name, .dpt-tile__name:link, .dpt-tile__name:visited {
    display: block; margin-top: 4px; font-size: 15px; line-height: 21px; font-weight: 500; color: var(--dpt-text);
    text-decoration: none !important; overflow-wrap: anywhere;
}
.dpt-tile__name:hover { color: var(--dpt-accent); }
.dpt-tile__why {
    margin-top: 8px; font-size: 13px; line-height: 18px; color: var(--dpt-text-2);
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; overflow: hidden;
}
.dpt-tile__why b { font-weight: 600; color: var(--dpt-text); }
.dpt-tile__why .dpt-fav-why { color: var(--dpt-accent); }
.dpt-tile__acts { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: auto; padding-top: 12px; position: relative; }
.dpt-tile__acts > .dpt-btn--primary, .dpt-tile__acts > .dpt-btn--block { flex: 1 1 100%; }
.dpt-tile__acts .dpt-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; flex: 1 1 100%; }
.dpt-tile__acts .dpt-pair .dpt-btn { padding: 0 8px; }
.dpt-tile.is-gone { opacity: .4; pointer-events: none; }
@media (max-width: 600px) {
    .dpt-grid { grid-template-columns: 1fr 1fr; gap: 24px 12px; }
    .dpt-tile { padding: 0; box-shadow: none; }
    .dpt-tile:hover { box-shadow: none; }
    .dpt-tile__price { font-size: 17px; line-height: 24px; }
    .dpt-tile__name { font-size: 14px; line-height: 20px; }
    .dpt-tile__acts .dpt-btn--primary { min-height: 40px; }
}

/* лента похожих v1 (запасной путь, если серверного блока нет) */
.dp-taste-similar { margin: 32px 0; }
.dp-taste-similar__title { font-size: 24px; line-height: 32px; color: var(--dpt-text); margin-bottom: 24px; }
.dp-taste-similar__row { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(180px, 220px); gap: 16px; overflow-x: auto; padding-bottom: 6px; scroll-snap-type: x mandatory; align-items: stretch; }
.dp-taste-similar__row .dpt-tile { scroll-snap-align: start; }
@media (max-width: 600px) { .dp-taste-similar__row { grid-auto-columns: calc((100% - 12px) / 2.25); } }

/* ── раздел /my-taste/ ───────────────────────────────────────────────────────────────────────── */
.dpt-app { padding-block: 0 96px; color: var(--dpt-text-2); font-size: 16px; line-height: 24px; }  /* 96 — под чат-кнопку */
.dpt-app h2 { font-size: 24px; line-height: 32px; font-weight: 400; color: var(--dpt-text); margin: 0 0 24px; text-wrap: balance; }
.dpt-app h3 { font-size: 15px; line-height: 23px; font-weight: 600; color: var(--dpt-text); margin: 0 0 12px; }
.dpt-lead { color: var(--dpt-text-2); font-size: 16px; line-height: 24px; max-width: 65ch; margin: 0 0 16px; }
.dpt-small { font-size: 14px; line-height: 20px; color: var(--dpt-muted); }
.dpt-small a { color: var(--dpt-accent); }
.dpt-note { font-size: 14px; line-height: 20px; color: var(--dpt-text-2); background: var(--dpt-bg); border-radius: 8px; padding: 12px 16px; margin-bottom: 16px; }
.dpt-note a { color: var(--dpt-accent); }
.dpt-tabs { display: flex; gap: 8px; border-bottom: 1px solid var(--dpt-line); margin-bottom: 12px; overflow-x: auto; scrollbar-width: none; }
.dpt-tab {
    padding: 12px 4px; margin-right: 16px; border: 0; border-bottom: 2px solid transparent; background: none;
    font: inherit; font-size: 16px; line-height: 24px; color: var(--dpt-text-2); cursor: pointer; white-space: nowrap;
}
.dpt-tab:hover { color: var(--dpt-accent); }
.dpt-tab.is-on { color: var(--dpt-text); border-bottom-color: var(--dpt-accent); }
.dpt-tab__n { font-size: 13px; color: var(--dpt-caption); margin-left: 6px; }
.dpt-guest { margin-bottom: 24px; }
.dpt-guest:empty { display: none; }
.dpt-section { display: flex; flex-direction: column; gap: 32px; }
.dpt-filters { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.dpt-filters select, .dpt-select {
    min-height: 36px; border: 1px solid var(--dpt-outline); border-radius: 6px; padding: 0 32px 0 14px; font: inherit; font-size: 14px;
    color: var(--dpt-text); background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23555558' stroke-width='1.5'/%3E%3C/svg%3E") right 12px center / 10px no-repeat;
    -webkit-appearance: none; appearance: none; cursor: pointer;
}
.dpt-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.dpt-chip { display: inline-flex; align-items: center; gap: 4px; min-height: 36px; box-sizing: border-box; padding: 0 4px 0 14px; border-radius: 6px; background: var(--dpt-accent-tint); font-size: 15px; color: var(--dpt-text); }
.dpt-chip.is-bad { background: var(--dpt-bad-tint); }
.dpt-chip button { width: 32px; height: 32px; border: 0; background: none; cursor: pointer; font-size: 18px; line-height: 1; padding: 0; color: var(--dpt-muted); border-radius: 4px; }
.dpt-chip button:hover { color: var(--dpt-accent); }
.dpt-chip .dpt-dot { margin-right: 4px; }
.dpt-dot { display: inline-block; width: 12px; height: 12px; border-radius: 50%; flex: none; }
.dpt-search { position: relative; max-width: 560px; }
.dpt-search input { width: 100%; min-height: 44px; padding: 0 16px; border: 1px solid var(--dpt-outline); border-radius: 6px; font: inherit; font-size: 15px; box-sizing: border-box; color: var(--dpt-text); }
.dpt-search input:focus { border-color: var(--dpt-accent); outline: none; }
.dpt-search__res { margin-top: 8px; }
.dpt-row-item { display: flex; gap: 12px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--dpt-line); }
.dpt-row-item img { width: 56px; height: 56px; object-fit: contain; flex: none; }
.dpt-row-item__main { flex: 1; min-width: 0; color: var(--dpt-text); }
.dpt-row-item__name, .dpt-row-item__name:link, .dpt-row-item__name:visited { font-size: 15px; line-height: 21px; color: var(--dpt-text); text-decoration: none !important; overflow-wrap: anywhere; }
.dpt-row-item__name:hover { color: var(--dpt-accent); }
.dpt-row-item__acts { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
.dpt-empty { color: var(--dpt-muted); font-size: 15px; line-height: 22px; padding: 8px 0; }
.dpt-empty a { color: var(--dpt-accent); }
.dpt-confirm { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 12px 16px; border: 1px solid var(--dpt-bad); border-radius: 8px; font-size: 15px; }
.dpt-loading { color: var(--dpt-muted); font-size: 15px; padding: 24px 0; }
.dpt-more { display: flex; justify-content: center; margin-top: 24px; }
.dpt-more .dpt-btn { width: 100%; min-height: 44px; font-size: 15px; }
.dpt-foot { margin-top: 48px; padding-top: 16px; border-top: 1px solid var(--dpt-line); }
.dpt-foot .dpt-btn--link { font-size: 14px; color: var(--dpt-muted); }

/* подбор: строка вкуса, сезоны, фильтры, полки */
.dpt-recs-head { display: flex; flex-direction: column; gap: 12px; }
.dpt-portrait-strip:empty { display: none; }
.dpt-portrait-strip { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; font-size: 14px; color: var(--dpt-muted); }
.dpt-portrait-strip .dpt-chip { min-height: 30px; padding: 0 10px; font-size: 14px; }
.dpt-filters--season { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
.dpt-filters--season::-webkit-scrollbar { display: none; }
.dpt-filters--tog { display: none; }
.dpt-shelf-season h2 { display: flex; align-items: center; gap: 12px; }
.dpt-now {
    display: inline-flex; align-items: center; height: 24px; padding: 0 8px; border-radius: 4px;
    background: var(--dpt-accent); color: #fff; font-size: 12px; font-weight: 500; line-height: 1;
}
.dpt-shelf-season + .dpt-shelf-season { margin-top: 48px; }
.dpt-nope { position: relative; display: inline-flex; }
.dpt-nope .dpt-menu { left: 0; top: auto; bottom: calc(100% + 4px); min-width: 240px; }
.dpt-tile__acts .dpt-nope { flex: 1 1 100%; }
.dpt-tile__acts .dpt-nope > .dpt-btn--link { font-size: 14px; color: var(--dpt-muted); min-height: 30px; }
.dpt-tile__acts .dpt-nope > .dpt-btn--link:hover { color: var(--dpt-accent); }
.dpt-oos-sim { display: flex; flex-direction: column; gap: 4px; margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--dpt-line); font-size: 13px; line-height: 18px; }
.dpt-oos-sim__item, .dpt-oos-sim__item:link, .dpt-oos-sim__item:visited { color: var(--dpt-text); text-decoration: none !important; }
.dpt-oos-sim__item span { color: var(--dpt-muted); white-space: nowrap; }
.dpt-oos-sim__item:hover { color: var(--dpt-accent); }
@media (max-width: 600px) {
    .dpt-app h2 { font-size: 20px; line-height: 28px; margin-bottom: 16px; }
    .dpt-chipbtn { font-size: 14px; }
    .dpt-filters--season { margin-inline: -16px; padding-inline: 16px;
        -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 32px), transparent);
        mask-image: linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 32px), transparent); }
    .dpt-filters--tog { display: flex; }
    .dpt-filters--more:not(.is-open) { display: none; }
    .dpt-segs { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-inline: -16px; padding-inline: 16px; }
    .dpt-shelf-season + .dpt-shelf-season { margin-top: 40px; }
}

/* анкета */
.dpt-onb-intro h2 { margin-bottom: 8px; }
.dpt-steps { display: flex; flex-direction: column; gap: 40px; }
.dpt-acc-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.dpt-accchip {
    display: inline-flex; align-items: center; gap: 8px; min-height: 44px; box-sizing: border-box; padding: 0 14px 0 12px;
    border: 1px solid transparent; border-radius: 6px; background: var(--dpt-accent-tint);
    font: inherit; font-size: 15px; color: var(--dpt-text); cursor: pointer;
}
.dpt-accchip:hover { border-color: var(--dpt-accent); }
.dpt-accchip.is-like { background: #fff; border-color: var(--dpt-accent); color: var(--dpt-accent); }
.dpt-accchip.is-dislike { background: var(--dpt-bad-tint); border-color: var(--dpt-bad); color: var(--dpt-bad); }
.dpt-accchip.is-dislike .dpt-dot { opacity: .55; }
.dpt-accchip__m { width: 16px; height: 16px; display: none; }
.dpt-accchip.is-like .dpt-accchip__m, .dpt-accchip.is-dislike .dpt-accchip__m { display: inline-block; }
.dpt-accchip:focus-visible { outline: 2px solid var(--dpt-accent); outline-offset: 2px; }
.dpt-onb-bar {
    position: sticky; bottom: 0; z-index: 20; display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
    margin-top: 8px; padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)); background: #fff;
    border-top: 1px solid var(--dpt-line); box-shadow: 0 -8px 24px rgba(0, 0, 0, .06);
}
.dpt-onb-bar__n { font-size: 15px; color: var(--dpt-text); }
@media (max-width: 600px) { .dpt-onb-bar { margin-inline: -16px; } .dpt-onb-bar .dpt-btn { flex: 1; } }

/* вкус: портрет, отметки, скрытое */
.dpt-taste-cols { display: grid; grid-template-columns: 1fr; gap: 48px; }
@media (min-width: 992px) { .dpt-taste-cols { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } }
.dpt-portrait__acc { display: flex; flex-direction: column; gap: 8px; max-width: 560px; }
.dpt-portrait__row { display: grid; grid-template-columns: minmax(120px, 180px) 1fr; align-items: center; gap: 12px; font-size: 15px; color: var(--dpt-text); }
.dpt-portrait__name { display: inline-flex; align-items: center; gap: 6px; }
.dpt-portrait__name svg { width: 14px; height: 14px; color: var(--dpt-accent); flex: none; }
.dpt-portrait__bar { display: block; height: 12px; border-radius: 999px !important; min-width: 8px; }
.dpt-legend { display: flex; align-items: center; gap: 6px; font-size: 13px; color: var(--dpt-muted); margin-top: 12px; }
.dpt-legend svg { width: 14px; height: 14px; color: var(--dpt-accent); }
.dpt-portrait__facts { margin: 16px 0 0; padding-left: 20px; font-size: 15px; line-height: 24px; color: var(--dpt-text-2); }
.dpt-portrait__facts b { color: var(--dpt-text); font-weight: 600; }
.dpt-marks-block + .dpt-marks-block { margin-top: 32px; }
.dpt-marks-block h3 + .dpt-chips { margin-bottom: 16px; }
.dpt-add-acc { margin-top: 8px; }
.dpt-add-acc .dpt-acc-chips { max-height: 196px; overflow-y: auto; padding: 2px; }
.dpt-add-acc input { margin-bottom: 8px; }
.dpt-muted { color: var(--dpt-muted); font-size: 13px; }
.dpt-hidden-list .dpt-row-item__acts { margin-top: 0; }
.dpt-hidden-list .dpt-row-item { padding: 8px 0; }
@media (max-width: 600px) { .dpt-portrait__row { grid-template-columns: 110px 1fr; font-size: 14px; } }

/* ── v2 Ф3: серверный блок «Похожие ароматы» (#associated[data-dp-similar]) ───────────────────── */
.dp-similar__sub { margin: -16px 0 20px; font-size: 15px; line-height: 21px; color: var(--dpt-caption); }
.dp-similar__lines { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 0 0 24px; }
.dp-similar__lines-title { font-size: 15px; color: var(--dpt-caption); }
.dp-similar__lines-list { display: flex; flex-wrap: wrap; gap: 8px; }
.dp-similar__line, .dp-similar__line:link, .dp-similar__line:visited {
    display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 0 14px; box-sizing: border-box;
    border-radius: 6px; background: var(--dpt-accent-tint); color: var(--dpt-text); text-decoration: none !important; font-size: 15px; white-space: nowrap;
}
.dp-similar__line:hover { color: var(--dpt-accent); }
.dp-similar__line-price { color: var(--dpt-muted); font-size: 14px; }
@media (max-width: 600px) {
    .dp-similar__lines { display: block; }
    .dp-similar__lines-title { display: block; margin-bottom: 8px; }
    .dp-similar__lines-list { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-inline: -16px; padding-inline: 16px; }
    .dp-similar__line { min-height: 44px; flex: none; }
}
.dp-sim-why { font-size: 13px; line-height: 18px; color: var(--dpt-text-2); margin-top: 4px; }
.dp-sim-clone {
    position: absolute; left: 8px; bottom: 8px; top: auto; z-index: 6;
    display: inline-flex; align-items: center; gap: 4px; height: 24px; padding: 0 8px; box-sizing: border-box; border-radius: 4px;
    background: #fff; box-shadow: inset 0 0 0 1px var(--dpt-outline); color: var(--dpt-text);
    font-size: 12px; font-weight: 500; line-height: 1; cursor: help;
}
.dp-sim-clone b { font-weight: 600; color: var(--dpt-accent); }
.dp-sim-clone:focus-visible { outline: 2px solid var(--dpt-accent); outline-offset: 2px; }
.dp-sim-clone::after {
    content: attr(data-tip); position: absolute; left: 0; bottom: calc(100% + 6px); width: max-content; max-width: 220px;
    padding: 8px 10px; border-radius: 6px; background: #222228; color: #fff; font-size: 13px; font-weight: 400; line-height: 18px;
    white-space: normal; opacity: 0; pointer-events: none; transition: opacity .12s; box-shadow: 0 6px 18px rgba(0, 0, 0, .2);
}
.dp-sim-clone:hover::after, .dp-sim-clone:focus-visible::after { opacity: 1; }
@media (prefers-reduced-motion: reduce) { .dp-sim-clone::after { transition: none; } }
@media (max-width: 600px) { .dp-sim-clone::after { max-width: 160px; } }

/* ── v2 Ф2: сердце аромата (узел Aspro; активное состояние — класс .active) ────────────────────── */
.dpt-fav { display: inline-flex; }
.dpt-fav__btn .dpt-fav__on { display: none; }
.dpt-fav__btn.active .dpt-fav__off { display: none; }
.dpt-fav__btn.active .dpt-fav__on { display: inline; }
.dpt-fav__btn.active, .dpt-fav__btn.active svg { color: var(--dpt-accent); }
.dpt-fav__btn.active svg path { fill: currentColor; }

/* ── v2 Ф5: бренды и парфюмеры ───────────────────────────────────────────────────────────────── */
/* страница бренда/парфюмера: блок в .topic__heading (flex nowrap, line-height 0 у Aspro) */
.topic__heading:has(> .dpt-ent-page) { flex-wrap: wrap; align-items: center; column-gap: 16px; row-gap: 8px; }
.dpt-ent-page { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; flex: none; line-height: 1.35; position: relative; }
.dpt-ent-page .dpt-menu, .dpt-ent-page .dpt-menu button { line-height: 1.35; }
.dpt-ent-page .dpt-nope .dpt-menu { top: calc(100% + 4px); bottom: auto; right: 0; left: auto; }
.dpt-ent.is-on { background: var(--dpt-accent-tint); color: var(--dpt-accent); border-color: var(--dpt-accent); }
.dpt-ent.is-on svg path { fill: currentColor; }
.dpt-more-btn { width: 36px; padding: 0; font-size: 18px; letter-spacing: 1px; }
@media (pointer: coarse) { .dpt-ent-page .dpt-btn { min-height: 44px; } .dpt-more-btn { width: 44px; } }
@media (max-width: 600px) { .topic__heading > .dpt-ent-page { flex: 1 0 100%; order: 3; } }
.dpt-ent-chips { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 32px; }
.dpt-ent-chip { display: inline-flex; align-items: center; gap: 4px; padding: 4px 4px 4px 4px; border-radius: 6px; background: var(--dpt-accent-tint); }
.dpt-ent-chip a, .dpt-ent-chip a:link, .dpt-ent-chip a:visited { display: inline-flex; align-items: center; gap: 8px; color: var(--dpt-text); text-decoration: none !important; font-size: 15px; padding-right: 4px; }
.dpt-ent-chip a:hover { color: var(--dpt-accent); }
.dpt-ent-chip img { width: 32px; height: 32px; border-radius: 4px; object-fit: contain; background: #fff; }
.dpt-ent-chip .dpt-ent-item__k { display: block; font-size: 12px; line-height: 14px; }
.dpt-ent-chip button { width: 32px; height: 32px; border: 0; background: none; border-radius: 4px; color: var(--dpt-accent); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.dpt-ent-chip button svg { width: 18px; height: 18px; }
.dpt-ent-chip button svg path { fill: currentColor; }
.dpt-ent-chip button:hover { color: var(--dpt-bad); }
.dpt-chip .dpt-chip__act { width: auto; height: 32px; padding: 0 10px; font-size: 14px; font-weight: 500; color: var(--dpt-accent); }
.dpt-chip .dpt-chip__act:hover { text-decoration: underline; }
/* [hidden] перебивается display:flex — возвращаем */
.dpt-toast[hidden], .dpt-tabs[hidden], .dpt-filters[hidden] { display: none !important; }
.dpt-onb-bar { padding-right: 88px; }   /* кнопка не под чат-кнопкой */
@media (max-width: 600px) {
    .dpt-tile__acts .dpt-pair { gap: 6px; }
    .dpt-tile__acts .dpt-pair .dpt-btn { padding: 0 4px; font-size: 13px; gap: 4px; }
    .dpt-tile__acts .dpt-pair .dpt-btn svg { width: 14px; height: 14px; }
}
@media (max-width: 420px) { .dpt-tile__acts .dpt-pair .dpt-btn svg { display: none; } }
.dp-taste-note .dpt-btn { border-radius: 999px; }   /* как таблетка «Группа» на фото */
.image-list-wrapper > .dp-sim-clone { visibility: visible !important; }  /* Aspro прячет детей контейнера фото */

/* ══ второй круг дизайн-ревью (09.11.2026): стиль + удобство ══════════════════════════════════════ */
.dpt-chev {
    display: inline-block; width: 10px; height: 6px; margin-left: 6px; flex: none; background: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23000' stroke-width='1.8'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23000' stroke-width='1.8'/%3E%3C/svg%3E") center / contain no-repeat;
}
[aria-expanded="true"] > .dpt-chev { transform: rotate(180deg); }
/* фокус в меню и на вкладках — как везде, 2px */
.dpt-menu button:focus-visible, .dpt-tab:focus-visible, .dpt-chipbtn:focus-visible, .dpt-accchip:focus-visible { outline: 2px solid var(--dpt-accent) !important; outline-offset: 2px; }
.dpt-menu__group + .dpt-menu__group { border-top: 1px solid var(--dpt-line); margin-top: 4px; padding-top: 4px; }
.dpt-menu__title { padding: 6px 12px 2px; font-size: 12px; color: var(--dpt-muted); }
/* переход к похожим и к разделу — не под шапку */
#associated { scroll-margin-top: 96px; }
.dpt-app { scroll-margin-top: 120px; }
.dpt-tabs { margin-bottom: 20px; }

/* карточка: подсказка над аккордами — только на десктопе (на 390 колонка абсолютная, подсказка сдвигала полоски на H1) */
@media (max-width: 600px) { .dpt-acc-hint { display: none; } }
.dp-taste-row { margin-top: 0; padding-top: 20px; }
.dp-taste-note .dpt-status { flex-basis: 100%; color: #fff; text-shadow: 0 1px 3px rgba(0, 0, 0, .45); }
.dp-taste-note .dpt-status a { color: #fff; text-decoration: underline; }
.dp-taste-note .dpt-btn { min-height: 36px; font-weight: 600; padding: 0 16px; }
@media (pointer: coarse) { .dp-taste-note .dpt-btn { min-height: 44px; } }

/* бренд/парфюмер: меню «⋯» на телефоне — от левого края блока; скрытый бренд — приглушённой строкой */
@media (max-width: 600px) {
    .dpt-ent-page .dpt-nope { position: static; }
    .dpt-ent-page .dpt-nope .dpt-menu { left: 0; right: auto; max-width: calc(100vw - 32px); }
}
.dpt-ent-hidden { font-size: 14px; color: var(--dpt-muted); }

/* плитки: ближе к каталогу — 5 в ряду, промежуток 20, «Купить» по ширине текста, ♥ без круга */
@media (min-width: 601px) {
    .dpt-grid { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 20px; }
    .dpt-tile__acts > .dpt-btn--primary { flex: 0 0 auto; }
    .dpt-tile__acts .dpt-nope { flex: 0 1 auto; margin-left: auto; }
}
.dpt-tile__fav .dpt-fav__btn { background: none !important; color: var(--dpt-text-2); position: relative; }
.dpt-tile__fav .dpt-fav__btn::before { content: ""; position: absolute; inset: -4px; }
.dpt-tile__fav .dpt-fav__btn svg { width: 20px; height: 20px; }
.dpt-tile__why { color: var(--dpt-caption); }
.dpt-tile__why b { font-weight: 500; color: var(--dpt-text-2); }
.dpt-tile__why .dpt-fav-why { color: var(--dpt-text-2); }
.dpt-tile__why .dpt-fav-why svg { color: var(--dpt-accent); vertical-align: -1px; margin-right: 4px; }
.dpt-more .dpt-btn { width: min(480px, 100%); }

/* одна система чипов: 36/15, выбранное — заливка темы; 44 — только для пальца */
.dpt-accchip, .dpt-why .dpt-chipbtn, .dpt-portrait-strip .dpt-chip { min-height: 36px; font-size: 15px; }
.dpt-accchip.is-like { background: var(--dpt-accent); border-color: var(--dpt-accent); color: #fff; }
.dpt-accchip.is-like .dpt-dot { box-shadow: 0 0 0 2px #fff; }
@media (pointer: coarse) { .dpt-accchip, .dpt-chipbtn { min-height: 44px; } }
.dpt-dot, .dpt-acc-row__dot { box-shadow: inset 0 0 0 1px rgba(34, 34, 40, .18); }
.dpt-chipbtn .dpt-n.is-zero { opacity: .5; }
.dpt-chips-sep { background: #d6d3de; margin: 8px 6px; }
.dpt-tile__acts .dpt-pair .dpt-btn { min-height: 36px; font-size: 14px; }

/* типографика и ритм */
.dpt-app h3 { font-size: 16px; line-height: 24px; font-weight: 500; }
@media (min-width: 992px) {
    .dpt-taste-cols { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
    .dpt-portrait { position: sticky; top: 120px; align-self: start; }
}
.dpt-portrait__facts { padding-left: 0; list-style: none; }
.dpt-portrait__facts li { position: relative; padding-left: 20px; }
.dpt-portrait__facts li::before { content: ""; position: absolute; left: 4px; top: 10px; width: 5px; height: 5px; border-radius: 50%; background: var(--dpt-accent); }
.dpt-legend { align-items: flex-start; }
.dpt-legend svg { margin-top: 2px; flex: none; }
.dpt-acc-all { margin-top: 12px; }
.dpt-add-acc .dpt-acc-chips { max-height: none; overflow: visible; }
.dpt-row-item__ph { width: 56px; height: 56px; flex: none; border-radius: 6px; background: var(--dpt-bg); }
.dpt-hidden-list .dpt-row-item .dpt-btn { flex: none; }

/* шторка аккордов: выбранное — заливка, текущая строка — ровный фон */
.dpt-icon-btn.is-on { background: var(--dpt-accent); color: #fff; }
.dpt-icon-btn.is-on svg { color: #fff; }
.dpt-icon-btn.is-bad.is-on { background: var(--dpt-bad); color: #fff; }
.dpt-icon-btn.is-bad.is-on svg { color: #fff; }
.dpt-acc-row.is-current { background: var(--dpt-accent-tint); }

/* подсказка «клон»: влево, уже экрана */
.dp-sim-clone::after { text-align: left; max-width: 240px; }
@media (max-width: 600px) { .dp-sim-clone::after { max-width: min(240px, calc(100vw - 64px)); } }

/* телефон: цели касания от 44 px, маска у сегментов */
@media (max-width: 600px) {
    .dpt-app .dpt-btn--small, .dpt-app .dpt-btn--link, .dp-taste-row .dpt-btn--ghost, .dpt-why .dpt-chipbtn,
    .dpt-filters-toggle, .dpt-tile__acts .dpt-pair .dpt-btn, .dp-taste-row__link, .dpt-portrait-strip .dpt-btn--link { min-height: 44px; }
    .dpt-app .dpt-btn--link, .dp-taste-row__link { display: inline-flex; align-items: center; }
    .dpt-toast button, .dpt-toast a { min-height: 44px; display: inline-flex; align-items: center; padding: 0 4px; }
    .dpt-toast { padding-block: 4px; align-items: center; }
    .dpt-chip button { width: 44px; height: 44px; }
    .dpt-chip { padding-right: 0; }
    .dpt-ent-chip button { width: 44px; height: 44px; }
    .dpt-tile__fav .dpt-fav__btn { width: 44px; height: 44px; margin: -4px -4px 0 0; }
    .dpt-segs { -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 32px), transparent);
        mask-image: linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 32px), transparent); }
}
.dpt-btn .dpt-chev, .dpt-chipbtn .dpt-chev { margin-left: 0; }

/* ── 09.11: отметки у логотипа бренда и имени парфюмера; отметка ноты на иконке пирамиды ─────── */
.dpt-entmarks { display: inline-flex; align-items: center; gap: 6px; flex: none; }
.dpt-entmarks--brand { margin-left: 4px; }
.perfumer-person { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.dpt-icon-btn--sm { width: 36px; height: 36px; min-height: 36px; }
.dpt-icon-btn--sm svg { width: 16px; height: 16px; }
@media (pointer: coarse) { .dpt-icon-btn--sm { width: 44px; height: 44px; min-height: 44px; } }
.notes a .notes-img { position: relative; }
.notes a.dpt-note-like .notes-img::after, .notes a.dpt-note-dislike .notes-img::after {
    content: ""; position: absolute; right: -2px; bottom: -2px; width: 22px; height: 22px; border-radius: 50%;
    background: #fff center / 13px no-repeat; box-shadow: 0 1px 4px rgba(0, 0, 0, .25);
}
.notes a.dpt-note-like .notes-img::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23620a84' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 10v11H3V10h4zm0 0 4-8a3 3 0 0 1 3 3v4h5.5a2 2 0 0 1 2 2.3l-1.4 8A2 2 0 0 1 18 21H7'/%3E%3C/svg%3E");
    box-shadow: 0 0 0 2px var(--dpt-accent), 0 1px 4px rgba(0, 0, 0, .25);
}
.notes a.dpt-note-dislike .notes-img::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b3261e' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 14V3h4v11h-4zm0 0-4 8a3 3 0 0 1-3-3v-4H4.5a2 2 0 0 1-2-2.3l1.4-8A2 2 0 0 1 6 3h11'/%3E%3C/svg%3E");
    box-shadow: 0 0 0 2px var(--dpt-bad), 0 1px 4px rgba(0, 0, 0, .25);
}
.notes a.dpt-note-dislike .notes-img img { opacity: .5; }

/* ── ревью 3 (09.11): 👍/👎 бренда — под логотипом, не поверх названия; парфюмера — в строке имени ─────── */
.brand-detail-info:has(> .dpt-entmarks--brand) { flex-wrap: wrap; }
.dpt-entmarks--brand { position: static; margin: 0; gap: 6px; flex: 1 0 100%; order: 9; }
@media (max-width: 600px) { .dpt-entmarks--brand { justify-content: center; } }
.dpt-entmarks--brand .dpt-icon-btn--sm { width: 32px; height: 32px; min-height: 32px; }
.perfumer-person { flex-wrap: nowrap; }
.perfumer-person > a { flex: 1 1 auto; min-width: 0; }
.dpt-entmarks--perf { margin-left: auto; flex: none; }
@media (pointer: coarse) { .dpt-entmarks--brand .dpt-icon-btn--sm { width: 44px; height: 44px; min-height: 44px; } }

/* отметка ноты — на плитках группы нот и на иконке страницы ноты, как в пирамиде */
a.note-tile .note-tile__icon-wrap, .note-odor__icon-wrap { position: relative; }
a.note-tile.dpt-note-like .note-tile__icon-wrap::after, a.note-tile.dpt-note-dislike .note-tile__icon-wrap::after,
.note-odor__icon-wrap.dpt-note-like::after, .note-odor__icon-wrap.dpt-note-dislike::after {
    content: ""; position: absolute; right: 0; bottom: 0; width: 24px; height: 24px; border-radius: 50%;
    background: #fff center / 14px no-repeat; box-shadow: 0 1px 4px rgba(0, 0, 0, .25); z-index: 2;
}
a.note-tile.dpt-note-like .note-tile__icon-wrap::after, .note-odor__icon-wrap.dpt-note-like::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23620a84' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 10v11H3V10h4zm0 0 4-8a3 3 0 0 1 3 3v4h5.5a2 2 0 0 1 2 2.3l-1.4 8A2 2 0 0 1 18 21H7'/%3E%3C/svg%3E");
    box-shadow: 0 0 0 2px var(--dpt-accent), 0 1px 4px rgba(0, 0, 0, .25);
}
a.note-tile.dpt-note-dislike .note-tile__icon-wrap::after, .note-odor__icon-wrap.dpt-note-dislike::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b3261e' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 14V3h4v11h-4zm0 0-4 8a3 3 0 0 1-3-3v-4H4.5a2 2 0 0 1-2-2.3l1.4-8A2 2 0 0 1 6 3h11'/%3E%3C/svg%3E");
    box-shadow: 0 0 0 2px var(--dpt-bad), 0 1px 4px rgba(0, 0, 0, .25);
}
a.note-tile.dpt-note-dislike .note-tile__icon-wrap img, .note-odor__icon-wrap.dpt-note-dislike img { opacity: .5; }
/* «не моё» у аккорда: инлайновый opacity полоски перебивал наш — приглушаем фильтром */
.accords-wrap .accord.dpt-acc-dislike .accord-bar { filter: grayscale(.85) opacity(.45); }
/* блок «Оцените аромат» рисуется скриптом из пустого div — держим место, чтобы не прыгала вёрстка */
.dp-taste-row:empty { min-height: 137px; }
/* статус в карточке одной строкой */
.dp-taste-row .dpt-status { line-height: 22px; }
.dpt-ent-state { font-size: 14px; color: var(--dpt-muted); }
.dpt-ent-state:empty { display: none; }
/* меню «Не то ▾» / «Отметка ▾» — к правому краю плитки, на телефоне во всю ширину плитки (за экран уходило, ревью 3, п. 6) */
.dpt-tile__acts .dpt-nope .dpt-menu { left: auto; right: 0; min-width: 220px; max-width: calc(100vw - 32px); }
@media (max-width: 600px) {
    .dpt-tile { position: relative; }
    .dpt-tile__acts .dpt-nope { position: static; }
    .dpt-tile__acts .dpt-nope .dpt-menu { left: 0; right: 0; min-width: 0; bottom: 52px; }
}
.dpt-by { margin: 0 0 16px; }
.dpt-entmarks__q { font-size: 13px; color: var(--dpt-muted); margin-right: 4px; }
.dpt-entmarks--brand { align-items: center; }

/* ── /my-taste/ — верх с блоттером вкуса, иконки сезонов и полов, панель фильтров (дизайн-ревью 10.11,
   site/docs/design-review-my-taste-2026-11-10.md). Блоттер — бумажная полоска для пробы духов: чернила
   (цвета аккордов сайта) от кончика к «ручке», у ручки — бумага с тиснением. ───────────────────────── */
.dpt-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 400px); gap: 24px 56px; align-items: start; margin: 0 0 28px; }
.dpt-hero[hidden] { display: none; }
.dpt-hero .dpt-app-lead { margin: 0; }
.dpt-lead-more { display: none; margin-top: 6px; font-size: 14px; }
.dpt-hero.is-open .dpt-lead-more .dpt-chev { transform: rotate(180deg); }
.dpt-hero__taste { box-sizing: border-box; min-height: 150px; padding: 20px 20px 16px; border: 1px solid var(--dpt-line); border-radius: var(--dpt-radius); background: #fff; }
.dpt-hero__eyebrow, .dpt-onb-blotter__cap { margin: 0 0 12px; font-size: 12px; line-height: 16px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--dpt-muted); }
.dpt-hero__acc { display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 14px 0 0; font-size: 16px; line-height: 24px; color: var(--dpt-text); }
.dpt-hero__acc span { display: inline-flex; align-items: center; gap: 6px; }
.dpt-hero__acc--empty { font-size: 14px; line-height: 20px; color: var(--dpt-text-2); }
.dpt-hero__meta { margin: 6px 0 0; font-size: 14px; line-height: 20px; color: var(--dpt-muted); }
.dpt-hero__meta .dpt-btn--link { font-size: 14px; vertical-align: baseline; }

.dpt-blotter {
    position: relative; height: 30px; overflow: hidden;
    clip-path: polygon(0 0, calc(100% - 28px) 0, 100% 50%, calc(100% - 28px) 100%, 0 100%);
    background: #f4f1eb repeating-linear-gradient(90deg, rgba(120, 100, 70, .035) 0 1px, transparent 1px 4px);
}
.dpt-blotter.is-empty { background-color: #ece8e1; }
.dpt-blotter__ink {
    position: absolute; inset: 0; background-repeat: no-repeat;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, rgba(0, 0, 0, .25) 12%, #000 30%);
    mask-image: linear-gradient(90deg, transparent 0, rgba(0, 0, 0, .25) 12%, #000 30%);
    clip-path: inset(0 0 0 0); transition: clip-path .9s cubic-bezier(.2, .7, .2, 1);
}
.dpt-blotter.is-fresh .dpt-blotter__ink { clip-path: inset(0 0 0 100%); transition: none; }
.dpt-blotter__mark {
    position: absolute; left: 12px; top: 0; line-height: 30px; font-size: 10px; font-weight: 600;
    letter-spacing: .24em; text-transform: uppercase; color: rgba(60, 50, 40, .32); pointer-events: none;
}
@media (prefers-reduced-motion: reduce) { .dpt-blotter__ink { transition: none; } }

/* анкета: текст слева, блоттер справа; шаги с номерами */
.dpt-onb-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 400px); gap: 16px 56px; align-items: end; margin-bottom: 32px; }
.dpt-onb-intro .dpt-lead { margin: 0; }
.dpt-onb-blotter__cap { margin: 10px 0 0; text-transform: none; letter-spacing: 0; font-size: 14px; line-height: 20px; font-weight: 400; color: var(--dpt-text-2); }
.dpt-step h3 { display: flex; align-items: center; gap: 12px; }
.dpt-step__n {
    display: inline-flex; align-items: center; justify-content: center; flex: none; width: 28px; height: 28px; border-radius: 50%;
    background: var(--dpt-accent); color: #fff; font-size: 14px; font-weight: 600; line-height: 1;
}

/* фильтры: тихая панель с подписанными рядами */
.dpt-recs-head > * { min-width: 0; }
.dpt-fpanel { display: flex; flex-direction: column; gap: 12px; min-width: 0; padding: 16px 20px; border: 1px solid var(--dpt-line); border-radius: var(--dpt-radius); background: #fff; }
.dpt-frow { display: flex; align-items: center; gap: 8px; min-width: 0; }
.dpt-frow__label { flex: none; width: 76px; font-size: 13px; line-height: 18px; color: var(--dpt-muted); }
.dpt-frow > .dpt-filters--season { flex: 1 1 auto; min-width: 0; }
.dpt-chipbtn--ic { gap: 8px; padding-left: 12px; }
.dpt-chipbtn--ic .dpt-si { width: 18px; height: 18px; flex: none; }
.dpt-chipbtn--ic .dpt-gi { width: 16px; height: 16px; flex: none; }
.dpt-chipbtn--ic .dpt-gi--u { width: 31px; }
.dpt-si--cold, .dpt-si--zima { color: #2f6fae; }
.dpt-si--warm, .dpt-si--leto { color: #b87400; }
.dpt-si--vesna { color: #36864a; }
.dpt-si--osen { color: #b8501f; }
.dpt-si--auto, .dpt-si--all { color: var(--dpt-accent); }
.dpt-chipbtn.is-on .dpt-si { color: #fff; }

/* заголовки полок: иконка сезона в цветном круге */
.dpt-shelf-season h2, .dpt-shelf-h { display: flex; align-items: center; gap: 12px; }
.dpt-shelf-ic { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 40px; height: 40px; border-radius: 50%; background: var(--dpt-accent-tint); }
.dpt-shelf-ic .dpt-si { width: 22px; height: 22px; }
.dpt-shelf-ic--cold, .dpt-shelf-ic--zima { background: #e8f0f8; }
.dpt-shelf-ic--warm, .dpt-shelf-ic--leto { background: #fbf1df; }
.dpt-shelf-ic--vesna { background: #e7f3e9; }
.dpt-shelf-ic--osen { background: #f9e9e1; }

@media (max-width: 1000px) {
    .dpt-hero, .dpt-onb-intro { grid-template-columns: minmax(0, 1fr) minmax(260px, 340px); gap: 16px 32px; }
}
@media (max-width: 760px) {
    .dpt-hero, .dpt-onb-intro { grid-template-columns: minmax(0, 1fr); gap: 16px; }
    .dpt-hero { margin-bottom: 20px; }
    .dpt-hero:not(.is-open) .dpt-app-lead { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
    .dpt-lead-more { display: inline-flex; }
    .dpt-hero__taste { order: -1; min-height: 0; padding: 14px 16px 12px; }
    .dpt-hero__eyebrow { margin-bottom: 10px; }
    .dpt-hero__acc { margin-top: 10px; font-size: 15px; gap: 2px 14px; }
    .dpt-hero__meta { margin-top: 4px; }
    .dpt-fpanel { padding: 0; border: 0; background: none; }
    .dpt-frow__label { display: none; }
    .dpt-shelf-ic { width: 34px; height: 34px; }
    .dpt-shelf-ic .dpt-si { width: 19px; height: 19px; }
}
/* подсказка «клон» в скрытом виде не занимает места (на 390 растягивала страницу до 449 px — ревью 10.11, п. 7);
   на телефоне — не шире своей плитки (плитки в две колонки) */
.dp-sim-clone:not(:hover):not(:focus-visible)::after { display: none; }
@media (max-width: 600px) { .dp-sim-clone::after { max-width: calc(50vw - 28px); } }

/* ── карточка аромата: замечания владельца 3 и 6 (план site/docs/plan-taste-owner-notes-2026-11-10.md) ──
   «В избранное · У меня есть?» — по центру, меню — у своей кнопки; бренд: логотип + «Бренд нравится? 👍 👎» группой
   по центру (не помещается — пара под логотипом), «Вся продукция бренда» — второй строкой. На ≤ 767 Aspro ставит
   блоку колонку — там пара под логотипом сама собой. */
.dp-taste-row__more { justify-content: center; }
.dpt-shelf { position: relative; display: inline-flex; }
.dpt-shelf .dpt-menu { left: auto; right: 0; }
.dpt-ent-sub { margin: -8px 0 16px; }
.brand-detail-info:has(> .dpt-entmarks--brand) { justify-content: center; column-gap: 20px; row-gap: 12px; }
.brand-detail-info:has(> .dpt-entmarks--brand) > .brand-detail-info__image { order: 0; }
.brand-detail-info > .dpt-entmarks--brand { order: 1; flex: 0 0 auto; justify-content: center; }
.brand-detail-info:has(> .dpt-entmarks--brand) > .val-btn-brand-all { order: 2; flex: 1 0 100%; }
/* «Вкус» → «Ноты»: частые ноты в наличии чипами (10.11) */
.dpt-add-note { margin-top: 8px; }
.dpt-add-note input { margin-bottom: 8px; }
.dpt-add-note .dpt-note-res:not(:empty) { margin-bottom: 12px; }
/* иконки нот (те же картинки, что на странице ноты) — в чипах «Вкус» → «Ноты» и в поиске ноты (10.11) */
.dpt-note-ic { display: inline-block; flex: none; width: 28px; height: 28px; border-radius: 50%; object-fit: cover; background: #fff; box-shadow: inset 0 0 0 1px var(--dpt-line); }
.dpt-note-ic--none { background: var(--dpt-bg); }
.dpt-notechip { gap: 8px; padding-left: 4px; min-height: 40px; }
.dpt-chip--note { gap: 8px; padding-left: 4px; }
.dpt-chip--note .dpt-note-ic { width: 26px; height: 26px; }
.dpt-notechip.is-dislike .dpt-note-ic, .dpt-chip--note.is-bad .dpt-note-ic { filter: grayscale(.85); opacity: .6; }
.dpt-note-res .dpt-row-item { align-items: center; gap: 10px; }
/* ── четвёртый круг критики (10.11, site/docs/design-review-taste-v2-r4-2026-11-10.md) ── */
.dpt-dot--lg { width: 16px; height: 16px; }
.dpt-accord-mode h2 { margin-bottom: 4px; }
.dpt-accord-mode .dpt-small { margin: 0; }
.dpt-hero__taste[hidden] { display: none; }
.dpt-hero:has(> .dpt-hero__taste[hidden]) { grid-template-columns: minmax(0, 1fr); }
/* п. 9: первый экран — вводный текст свёрнут до двух строк и на компьютере; карточка вкуса первой в DOM, справа на ≥ 761 */
.dpt-hero:not(.is-open) .dpt-app-lead { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.dpt-lead-more { display: inline-flex; }
@media (min-width: 761px) {
    .dpt-hero > .dpt-hero__taste { grid-column: 2; grid-row: 1; }
    .dpt-hero > .dpt-hero__text { grid-column: 1; grid-row: 1; }
    .dpt-hero:has(> .dpt-hero__taste[hidden]) > .dpt-hero__text { grid-column: 1; }
}
@media (max-width: 760px) { .dpt-hero__taste { order: 0; } }
.dpt-hero__taste { min-height: 0; }
.dpt-hero__guest { margin: 8px 0 0; padding-top: 8px; border-top: 1px solid var(--dpt-line); font-size: 13px; line-height: 18px; color: var(--dpt-muted); }
.dpt-hero__guest a { color: var(--dpt-accent); }
.dpt-hero { margin-bottom: 20px; }
/* п. 25: колонки как в каталоге Aspro — 3 / 4 / 5 */
@media (min-width: 601px) { .dpt-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 992px) { .dpt-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (min-width: 1200px) { .dpt-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
/* п. 25: ряд сезонов не обрезается на 1024 — переносится; в чипе аккорда место под значок держим всегда (чипы не прыгают) */
@media (min-width: 761px) and (max-width: 1199px) { .dpt-frow > .dpt-filters--season { flex-wrap: wrap; overflow: visible; } .dpt-frow { align-items: flex-start; } .dpt-frow__label { padding-top: 9px; } }
.dpt-accchip:not(.is-like):not(.is-dislike)::after { content: ""; width: 16px; height: 16px; flex: none; }
/* п. 8: в анкете фокус не прячется под липкой панелью и мобильной шапкой */
html:has(.dpt-onb-bar) { scroll-padding-bottom: 120px; scroll-padding-top: 72px; }
/* п. 21: цели касания на телефоне — 44 px; меню у нижнего края раскрывается вверх */
@media (max-width: 600px) {
    .dpt-app .dpt-tile__acts .dpt-nope > .dpt-btn--link, .dpt-tile__acts [data-markmenu] { min-height: 44px; }
    .dp-similar__line, .dp-similar__line:link { min-height: 44px; display: inline-flex; align-items: center; }
}
@media (pointer: coarse) { .dpt-notechip, .dpt-menu button, .dpt-accchip { min-height: 44px; } }
.dpt-menu.is-up { top: auto !important; bottom: calc(100% + 4px) !important; }
/* п. 30: якорь «Похожие ↓» не прячет заголовок под шапкой на компьютере */
@media (min-width: 992px) { #associated { scroll-margin-top: 136px; } }
.dpt-hero__head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.dpt-hero__head .dpt-hero__eyebrow { margin: 0; }
.dpt-hero__head .dpt-btn--link { font-size: 14px; }
.dpt-hero__taste { padding: 16px 20px 14px; }
.dpt-hero__acc { margin-top: 10px; }
.dpt-hero__meta a { color: var(--dpt-accent); }
.dpt-fpanel { padding: 12px 20px; gap: 10px; }
.dpt-recs-head + .dpt-recs .dpt-by { margin: 16px 0 8px; }
@media (max-width: 760px) { .dpt-fpanel { padding: 0; border: 0; background: none; gap: 12px; } .dpt-hero__taste { padding: 14px 16px 12px; } }
/* п. 22: отвергнутый аккорд виден: серый фон, тёмно-серая подпись, красный значок (без общей прозрачности) */
.accords-wrap .accord.dpt-acc-dislike .accord-bar { filter: none !important; opacity: 1 !important; background-color: #ecebef !important; color: #55555a !important; }
.accords-wrap .accord.dpt-acc-dislike .accord-bar .accord-text { color: #55555a !important; }
/* п. 29: сегменты «Моих ароматов» — подвкладки (подчёркивание), а не такие же чипы, как фильтры сезона и пола */
.dpt-segs { gap: 4px 20px; border-bottom: 1px solid var(--dpt-line); margin-bottom: 20px; }
.dpt-segs .dpt-chipbtn { background: none; border-radius: 0; padding: 0 2px; min-height: 40px; border-bottom: 2px solid transparent; margin-bottom: -1px; color: var(--dpt-text-2); }
.dpt-segs .dpt-chipbtn:hover { color: var(--dpt-accent); }
.dpt-segs .dpt-chipbtn.is-on { background: none; color: var(--dpt-accent); border-bottom-color: var(--dpt-accent); }
.dpt-segs .dpt-chipbtn.is-on .dpt-n { color: var(--dpt-accent); }
.dpt-segs .dpt-n.is-zero { opacity: .5; }

/* Шторка «Аккорды этого аромата» (телефон, 10.11, слово владельца): вместо «сила N %» и цветного кружка — полоска
   как на карточке (ширина = сила, название на полоске, цвет подписи — по контрасту из initAccords); «не моё» — серая */
.dpt-acc-row__dot { display: none; }
.dpt-acc-row__track { display: flex; min-width: 0; }
.dpt-acc-row__bar {
    display: block; box-sizing: border-box; min-width: min(max-content, 100%); max-width: 100%;
    padding: 4px 12px; border-radius: 0 20px 20px 0; background: #d9d6de; color: #222228;
    font-size: 15px; line-height: 22px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.dpt-acc-row.is-dislike .dpt-acc-row__bar { background: #ecebef; color: #55555a; font-weight: 400; }
.dpt-acc-row__meta { margin-top: 4px; }
.dpt-sr { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* Карточка, строка «Оцените аромат» (10.11, слово владельца): «♥ Мой вкус» — иконка сердца вместо стрелки */
.dp-taste-row__link { display: inline-flex; align-items: center; gap: 6px; }
.dp-taste-row__link svg { width: 16px; height: 16px; flex: none; }
/* Тултипы ноты/аккорда: «· ♥ Мой вкус» после отметки — без стрелки, сердце как на карточке (10.11) */
.dpt-status__link { display: inline-flex; align-items: center; gap: 4px; vertical-align: bottom; }
.dpt-status__link svg { width: 14px; height: 14px; flex: none; }

/* Карточка, блок бренда (10.11, слово владельца): логотип и «Бренд нравится?» делят ширину пополам;
   подпись — над кнопками 👍 👎, обе по центру своей половины; «Вся продукция бренда» — строкой ниже */
/* мобильное правило карточки (style.min*.css, ≤767) ставит column !important селектором (0,3,0) — перебиваем точнее */
.brand-detail .brand-detail-info[itemprop="brand"]:has(> .dpt-entmarks--brand),
.brand-detail-info:has(> .dpt-entmarks--brand) { flex-direction: row !important; flex-wrap: wrap; align-items: center !important; column-gap: 12px !important; row-gap: 12px !important; }
.brand-detail .brand-detail-info:has(> .dpt-entmarks--brand) > .brand-detail-info__image { flex: 1 1 0; min-width: 0; width: auto !important; height: 60px !important; margin: 0 !important; display: flex; justify-content: center; }
.brand-detail-info > .dpt-entmarks--brand { flex: 1 1 0; min-width: 0; flex-wrap: wrap; justify-content: center; row-gap: 6px; }
.dpt-entmarks--brand .dpt-entmarks__q { flex: 0 0 100%; text-align: center; margin: 0; }
