/* «Стоимость» (src/price.js): советы, цены по услугам на одной линии с конкурентами, «как продают конкуренты», акции, оплата, отзывы о цене,
   ваши условия. Только токены и компоненты body.cab (cabinet-theme.css); заголовки и пункты — из dash.css (d-h, d-act, d-grp, d-empty). */
#pr-box { display: grid; gap: 16px; align-content: start; min-width: 0; }
#pr-box > * { min-width: 0; }   /* a wide table scrolls in its card, not the page */
body.cab .pr-advs { display: grid; gap: 10px; }


/* A service stays one row until its competitor prices are opened. */
body.cab .pr-svc { border-top: 1px solid var(--line); }
body.cab .pr-svc > summary { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(80px, 1fr) max-content; align-items: center; gap: 6px 16px; min-height: 44px; padding: 6px 8px; cursor: pointer; list-style: none; }
body.cab .pr-svc > summary::-webkit-details-marker { display: none; }
body.cab .pr-svc > summary:hover { background: var(--accent-tint); }
body.cab .pr-sn { display: grid; min-width: 0; }
body.cab .pr-sn b { overflow-wrap: anywhere; }
body.cab .pr-sn > span { font-size: 14px; color: var(--fg-2); }
body.cab .pr-line { position: relative; height: 20px; }
body.cab .pr-line::before { content: ''; position: absolute; inset: 9px 0 auto; height: 2px; background: var(--line); }
body.cab .pr-line i { position: absolute; }
body.cab .pr-line .band { top: 7px; height: 6px; border-radius: 3px; background: #64748b; opacity: .35; }
body.cab .pr-line .mid { top: 4px; width: 2px; height: 12px; background: #64748b; translate: -50%; }
body.cab .pr-line .mid.point { top: 6px; width: 8px; height: 8px; border-radius: 50%; }
body.cab .pr-line .you { top: 5px; width: 10px; height: 10px; border-radius: 50%; background: var(--accent); translate: -50%; }
body.cab .pr-you { display: flex; align-items: center; gap: 10px; color: var(--accent); font-variant-numeric: tabular-nums; }
body.cab .pr-you i { width: 7px; height: 7px; border: solid var(--fg-2); border-width: 0 2px 2px 0; transform: rotate(45deg); }
body.cab .pr-svc[open] .pr-you i { transform: rotate(225deg); }
body.cab .pr-who { list-style: none; padding: 0 8px 8px; margin: 0; }
body.cab .pr-who li { display: flex; justify-content: space-between; gap: 8px; padding: 6px 0; border-top: 1px solid var(--line); font-variant-numeric: tabular-nums; }
body.cab .pr-who li b { white-space: nowrap; }

/* таблицы: «как продают конкуренты», оплата */
body.cab .pr-tw { overflow-x: auto; }
body.cab .pr-t { width: 100%; border-collapse: collapse; font-size: 13px; }
body.cab .pr-t th, body.cab .pr-t td { text-align: left; vertical-align: top; padding: 9px 10px; border-top: 1px solid var(--line); }
body.cab .pr-t thead th { border-top: 0; font-size: 11px; font-weight: 500; color: var(--fg-3); text-transform: uppercase; letter-spacing: .04em; }
body.cab .pr-t tbody th { font-weight: 500; width: 26%; }
body.cab .pr-t td small { display: block; margin-top: 3px; font-size: 11px; color: var(--fg-3); }
body.cab .pr-t .num-c { white-space: nowrap; }
body.cab .pr-eg { color: var(--fg-2); }
body.cab .pr-eg + .pr-eg { margin-top: 4px; }
body.cab .pr-eg b { font-weight: 500; color: var(--fg); }
body.cab .pr-note { margin: 10px 0 0; font-size: 12px; color: var(--fg-3); }

/* акции конкурентов */
body.cab .pr-promo { display: grid; gap: 4px; padding: 10px 0; border-top: 1px solid var(--line); }
body.cab .pr-promo:first-of-type { border-top: 0; }
body.cab .pr-ph { display: flex; flex-wrap: wrap; gap: 2px 10px; align-items: baseline; }
body.cab .pr-ph b { font-weight: 500; }
body.cab .pr-ph span { font-size: 12px; color: var(--fg-3); }
body.cab .pr-promo > p { margin: 0; font-size: 13px; }
body.cab .pr-kinds { display: flex; flex-wrap: wrap; gap: 6px; }
body.cab .pr-more summary { cursor: pointer; font-size: 12px; color: var(--fg-2); width: max-content; }
body.cab .pr-more p { margin: 4px 0 0; font-size: 12px; color: var(--fg-2); }

/* отзывы о цене */
body.cab .pr-cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
body.cab .pr-cols ul { list-style: none; margin: 6px 0 0; padding: 0; display: grid; gap: 6px; font-size: 13px; }
body.cab .pr-cols li { padding-left: 14px; position: relative; }
body.cab .pr-cols li::before { content: ''; position: absolute; left: 0; top: 7px; width: 7px; height: 7px; border-radius: 50%; background: var(--line-strong); }
body.cab .pr-cols li.bad::before { background: var(--sched); }
body.cab .pr-cols li.good::before { background: var(--ok); }
body.cab .pr-cols li b { font-weight: 500; }

/* ваши условия */
body.cab .pr-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px; }
body.cab .pr-term { display: flex; align-items: center; gap: 14px; padding: 8px 0; border-top: 1px solid var(--line); font-size: 13px; }
body.cab .pr-term > span { flex: 1; }
body.cab .pr-term label { display: inline-flex; align-items: center; gap: 4px; cursor: pointer; color: var(--fg-2); }
body.cab .pr-act { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: center; margin-top: 12px; }

@media (max-width: 900px) {

  body.cab .pr-svc > summary { grid-template-columns: minmax(0, 1fr) max-content; }
  body.cab .pr-line { grid-area: 2 / 1 / 3 / -1; }
  body.cab .pr-cols, body.cab .pr-grid { grid-template-columns: minmax(0, 1fr); }
  body.cab .pr-t tbody th { width: auto; }
  /* «как продают конкуренты» на телефоне: строка — карточка, примеры под ней во всю ширину */
  body.cab .pr-offers .pr-t thead { display: none; }
  body.cab .pr-offers .pr-t, body.cab .pr-offers .pr-t tbody { display: block; }
  body.cab .pr-offers .pr-t tr { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 6px 10px; align-items: start; padding: 10px 0; border-top: 1px solid var(--line); }
  body.cab .pr-offers .pr-t tr:first-child { border-top: 0; }
  body.cab .pr-offers .pr-t th, body.cab .pr-offers .pr-t td { padding: 0; border-top: 0; }
  body.cab .pr-offers .pr-t td:last-child { grid-column: 1 / -1; }
  body.cab .pr-offers .pr-t td small { max-width: 96px; }
}
