/* Страница «Тарифы» (/tarify). Основа — home-platform.css, здесь только своё. Префикс pf-price / pf-calc. */
.pf-price { --price-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; --price-blue: #2f6fe8; --price-green: #0b8f63; }

/* Квитанция в первом экране */
.pf-price-receipt { position: relative; margin: 0; padding: 26px 26px 22px; border-radius: 14px; background: #fff; border: 1px solid #fff; box-shadow: 0 30px 60px -28px #2a4a7a66; text-align: left; font-family: var(--price-mono); }
.pf-page .pf-price-receipt figcaption { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding-bottom: 14px; margin-bottom: 6px; border-bottom: 1px dashed #c9d5e6; color: #14304c; font-size: 13px; font-weight: 600; letter-spacing: .02em; text-transform: uppercase; }
.pf-page .pf-price-receipt figcaption small { color: #8a9aae; font-size: 10px; font-weight: 500; letter-spacing: .08em; }
.pf-price-receipt__row, .pf-price-receipt__total { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 11px 0; }
.pf-page .pf-price-receipt__row span { display: flex; flex-direction: column; gap: 3px; color: #14304c; font-size: 13px; }
.pf-page .pf-price-receipt__row em { font-style: normal; color: #8a9aae; font-size: 11px; }
.pf-page .pf-price-receipt__row b { color: #14304c; font-size: 14px; font-weight: 600; white-space: nowrap; font-variant-numeric: tabular-nums; }
.pf-page .pf-price-receipt__row--in b { color: var(--price-green); }
.pf-price-receipt__total { margin-top: 6px; padding-top: 14px; border-top: 1px dashed #c9d5e6; }
.pf-page .pf-price-receipt__total span { color: #14304c; font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; }
.pf-page .pf-price-receipt__total b { color: var(--price-blue); font-size: 22px; font-weight: 600; font-variant-numeric: tabular-nums; }
.pf-page .pf-price-receipt > p { margin: 10px 0 0; color: #66788f; font-family: Inter, sans-serif; font-size: 12px; line-height: 1.5; }

/* Hero (03.10.2026): композиция pf-pos-hero из positions.css + макет баланса */
.pf-page .pf-price-hero__kicker span { display: inline-grid; place-items: center; width: 22px; height: 22px; margin-right: 8px; border-radius: 50%; background: var(--pos-green); color: #fff; font-size: 12px; font-weight: 700; letter-spacing: 0; }
.pf-price-mock { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(0,1fr); gap: 12px; padding: 12px; border-radius: 18px 18px 0 0; background: #f6f9ff; text-align: left; }
.pf-price-mock__balance { display: flex; flex-direction: column; padding: 30px 30px 26px; border-radius: 14px; background: linear-gradient(150deg,#16294a,#0c1830); color: #fff; background-image: radial-gradient(#ffffff12 1px, transparent 1px), linear-gradient(150deg,#16294a,#0c1830); background-size: 16px 16px, auto; }
.pf-page .pf-price-mock__label { display: inline-flex; align-items: center; gap: 8px; color: #b9c7e0; font-size: 13px; font-weight: 500; letter-spacing: .02em; }
.pf-price-mock__label svg { color: #4f93ff; }
.pf-page .pf-price-mock__balance strong { margin-top: 14px; color: #fff; font-family: var(--price-mono); font-size: clamp(36px,4.2vw,54px); font-weight: 600; letter-spacing: -.04em; line-height: 1; font-variant-numeric: tabular-nums; }
.pf-page .pf-price-mock__sub { margin-top: 10px; color: #8ea2c2; font-size: 13px; }
.pf-price-mock__bar { display: flex; height: 14px; margin-top: 28px; border-radius: 99px; overflow: hidden; background: #ffffff1f; }
.pf-price-mock__bar i { display: block; height: 100%; animation: price-grow 1.2s cubic-bezier(.2,.8,.2,1) both; transform-origin: left; }
.pf-price-mock__bar i + i { box-shadow: -2px 0 0 #0c1830; }
@keyframes price-grow { from { transform: scaleX(0); } to { transform: none; } }
.pf-price-mock__legend { display: grid; gap: 10px; margin: 24px 0 0; padding: 0; list-style: none; }
.pf-page .pf-price-mock__legend li { display: flex; align-items: center; gap: 10px; color: #d5deec; font-size: 13px; }
.pf-price-mock__legend i { flex-shrink: 0; width: 10px; height: 10px; border-radius: 3px; }
.pf-price-mock__legend i.is-rest { background: #ffffff33; }
.pf-page .pf-price-mock__legend b { margin-left: auto; color: #fff; font-family: var(--price-mono); font-size: 13px; font-weight: 600; font-variant-numeric: tabular-nums; }
.pf-price-mock .pf-price-receipt { border-radius: 14px; box-shadow: 0 10px 30px -20px #2a4a7a55; }
/* Плашка «0 ₽» висит за правым краем макета, не перекрывая суммы; где места нет — скрыта */
.pf-price-hero__float { top: -170px; right: -110px; width: 220px; }
.pf-page .pf-price-hero__float b { margin: 10px 0 2px; font-size: 40px; }
.pf-page .pf-price-hero__float-note { display: block; color: #b9c7e0; font-size: 12px; line-height: 1.45; }

/* Принципы */
.pf-home .pf-price-principles { padding-top: 0; }
.pf-price-principles__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; border-radius: 12px; overflow: hidden; background: #10304a14; }
.pf-price-principles__grid article { padding: 26px 24px; background: #fff; }
.pf-page .pf-price-principles__grid span { display: block; margin-bottom: 18px; color: var(--price-green); font-family: var(--price-mono); font-size: 12px; }
.pf-page .pf-price-principles__grid h3 { margin: 0 0 10px; color: var(--home-ink); font-size: 16px; font-weight: 600; }
.pf-page .pf-price-principles__grid p { margin: 0; color: var(--home-muted); font-size: 13px; line-height: 1.65; }

/* Прайс вкладками (PriceTabs): основа — .pf-pos-tabs из positions.css */
/* 9 вкладок в одну строку; если не помещаются — горизонтальная прокрутка, а не второй ряд */
.pf-price-tabs .pf-pos-tabs__list { flex-wrap: nowrap; gap: 2px; padding: 0 26px; overflow-x: auto; scrollbar-width: none; }
.pf-price-tabs .pf-pos-tabs__list::-webkit-scrollbar { display: none; }
.pf-page .pf-price-tabs .pf-pos-tabs__list button { display: inline-flex; flex-shrink: 0; align-items: center; gap: 7px; padding: 14px 15px; font-size: 14px; white-space: nowrap; }
.pf-price-tabs .pf-pos-tabs__list button svg { color: #8a9aae; transition: color .2s; }
.pf-price-tabs .pf-pos-tabs__list button.is-active svg, .pf-price-tabs .pf-pos-tabs__list button:hover svg { color: var(--pos-blue); }
.pf-page .pf-price-tabs__soon { padding: 2px 7px; border-radius: 99px; background: #10304a0f; color: #66788f; font-size: 10px; font-style: normal; font-weight: 600; }
.pf-price-tabs__card[hidden] { display: none; }
.pf-price-tabs__card { align-items: stretch; }
.pf-page .pf-price-tabs .pf-pos-tabs__text p { margin: 16px 0 22px; }
.pf-price-tabs__list { margin: 0; }
.pf-price-tabs__list > div { display: flex; align-items: baseline; gap: 10px; padding: 13px 0; border-top: 1px solid #10304a12; }
.pf-price-tabs__list > div:last-child { border-bottom: 1px solid #10304a12; }
/* Точечная «линия-проводник» от названия к цене, как в прайс-листе */
.pf-page .pf-price-tabs__list dt { display: flex; align-items: baseline; flex: 1; min-width: 0; gap: 10px; color: var(--pos-ink); font-size: 15px; font-weight: 400; }
.pf-page .pf-price-tabs__list dt::after { content: ""; flex: 1; min-width: 20px; border-bottom: 1px dotted #b8c5d6; transform: translateY(-4px); }
.pf-price-tabs__list dd { display: flex; flex-direction: column; align-items: flex-end; margin: 0; text-align: right; }
.pf-page .pf-price-tabs__list dd b { color: var(--pos-ink); font-family: var(--price-mono); font-size: 16px; font-weight: 600; white-space: nowrap; font-variant-numeric: tabular-nums; }
.pf-page .pf-price-tabs__list dd small { color: #8a9aae; font-size: 11px; white-space: nowrap; }
.pf-price-tabs__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 26px; margin-top: 30px; }
.pf-page .pf-price-tabs__more { display: inline-flex; align-items: center; gap: 6px; color: var(--pos-blue); font-size: 14px; font-weight: 500; }
.pf-price-tabs__art { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 18px; min-height: 380px; aspect-ratio: auto; padding: 40px 30px; text-align: center; }
.pf-price-tabs__art > * { position: relative; }
.pf-price-tabs__badge { display: grid; place-items: center; width: 76px; height: 76px; border-radius: 22px; background: linear-gradient(145deg,#ffffff,#dfe9ff); color: var(--pos-blue); box-shadow: 0 0 0 10px #ffffff2e, 0 20px 40px -10px #0b2a6b88; animation: pos-pulse 2.6s ease-in-out infinite; }
.pf-price-tabs__tag { display: flex; flex-direction: column; align-items: center; min-width: 240px; padding: 22px 30px; border-radius: 18px; background: #ffffffeb; box-shadow: 0 24px 40px -18px #0b2a6b99; animation: pos-fade .45s ease; }
.pf-page .pf-price-tabs__tag small { color: var(--pos-muted); font-size: 13px; }
.pf-page .pf-price-tabs__tag strong { margin: 6px 0 2px; color: var(--pos-ink); font-family: var(--price-mono); font-size: clamp(34px,3.6vw,48px); font-weight: 600; letter-spacing: -.04em; line-height: 1.05; font-variant-numeric: tabular-nums; }
.pf-page .pf-price-tabs__tag span { color: var(--pos-blue); font-size: 14px; font-weight: 600; }
.pf-page .pf-price-tabs__example { max-width: 320px; margin: 0; color: #fff; font-size: 14px; line-height: 1.55; }
.pf-page .pf-price-tabs__chip { padding: 7px 14px; border-radius: 99px; background: #ffffff26; color: #fff; font-size: 12px; font-weight: 600; letter-spacing: .02em; }
/* Цвет схемы под инструмент */
.pf-price-tabs__card--promo .pf-pos-tabs__art { background: radial-gradient(circle at 50% 110%,#ffc2d6 0%,transparent 55%), linear-gradient(145deg,#d93a74,#f0709b); }
.pf-price-tabs__card--audit .pf-pos-tabs__art { background: radial-gradient(circle at 50% 110%,#ffe2a8 0%,transparent 55%), linear-gradient(145deg,#d9860f,#f5ab3c); }
.pf-price-tabs__card--monitoring .pf-pos-tabs__art { background: radial-gradient(circle at 50% 110%,#b6f5d4 0%,transparent 55%), linear-gradient(145deg,#0c9c63,#22c57e); }
.pf-price-tabs__card--geo .pf-pos-tabs__art { background: radial-gradient(circle at 50% 110%,#b4f0f7 0%,transparent 55%), linear-gradient(145deg,#0b8a9c,#19b6c9); }
.pf-price-tabs__card--copywriter .pf-pos-tabs__art { background: radial-gradient(circle at 50% 110%,#d9d1ff 0%,transparent 55%), linear-gradient(145deg,#5b45d6,#8b78ff); }
.pf-price-tabs__card--promo .pf-price-tabs__badge, .pf-price-tabs__card--promo .pf-price-tabs__tag span { color: #d93a74; }
.pf-price-tabs__card--audit .pf-price-tabs__badge, .pf-price-tabs__card--audit .pf-price-tabs__tag span { color: #c47a0c; }
.pf-price-tabs__card--monitoring .pf-price-tabs__badge, .pf-price-tabs__card--monitoring .pf-price-tabs__tag span { color: #0c9c63; }
.pf-price-tabs__card--geo .pf-price-tabs__badge, .pf-price-tabs__card--geo .pf-price-tabs__tag span { color: #0b8a9c; }
.pf-price-tabs__card--copywriter .pf-price-tabs__badge, .pf-price-tabs__card--copywriter .pf-price-tabs__tag span { color: #5b45d6; }

/* На 1 000 ₽ */
.pf-page .pf-price-thousand__note { margin: 14px 0 0; color: var(--home-muted); font-size: 14px; }
.pf-price-thousand__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; margin-top: 36px; }
.pf-price-thousand__grid > div { padding: 26px 24px 24px; border-radius: 12px; background: #14304c; background-image: radial-gradient(#ffffff14 1px, transparent 1px); background-size: 14px 14px; }
.pf-page .pf-price-thousand__grid b { display: block; color: #fff; font-family: var(--price-mono); font-size: clamp(28px,3vw,40px); font-weight: 600; letter-spacing: -.03em; line-height: 1; font-variant-numeric: tabular-nums; }
.pf-page .pf-price-thousand__grid span { display: block; margin-top: 12px; color: #b9c7da; font-size: 13px; line-height: 1.5; }

/* Калькулятор */
.pf-calc { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,1fr); gap: 24px; margin-top: 40px; align-items: start; }
.pf-calc__inputs { display: grid; gap: 26px; padding: 30px; border: 1px solid #fff; border-radius: 12px; background: #ffffffc7; backdrop-filter: blur(8px); box-shadow: 0 10px 30px #2a4a7a12; }
.pf-page .pf-calc__field label { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 12px; color: #14304c; font-size: 14px; }
.pf-page .pf-calc__field output { color: var(--price-blue); font-family: var(--price-mono); font-size: 14px; font-weight: 600; font-variant-numeric: tabular-nums; }
.pf-calc__field input[type=range] { -webkit-appearance: none; appearance: none; width: 100%; height: 6px; border-radius: 99px; background: linear-gradient(90deg, var(--price-blue) var(--fill), #dde5f0 var(--fill)); cursor: pointer; }
.pf-calc__field input[type=range]::-webkit-slider-thumb { -webkit-appearance: none; width: 20px; height: 20px; border-radius: 50%; background: #fff; border: 2px solid var(--price-blue); box-shadow: 0 2px 6px #2a4a7a33; }
.pf-calc__field input[type=range]::-moz-range-thumb { width: 18px; height: 18px; border-radius: 50%; background: #fff; border: 2px solid var(--price-blue); }
.pf-page .pf-calc__check { display: flex; align-items: center; gap: 10px; margin: -10px 0 0; color: #33465e; font-size: 13px; cursor: pointer; }
.pf-calc__check input { width: 16px; height: 16px; accent-color: var(--price-blue); }
.pf-calc__seg { margin: 0; padding: 0; border: 0; }
.pf-page .pf-calc__seg legend { float: none; width: auto; margin-bottom: 12px; padding: 0; color: #14304c; font-size: 14px; }
.pf-calc__seg div { display: inline-flex; padding: 3px; border-radius: 8px; background: #10304a0d; }
.pf-page .pf-calc__seg button { padding: 8px 16px; border: 0; border-radius: 6px; background: transparent; color: #4a5d74; font-family: var(--price-mono); font-size: 13px; cursor: pointer; transition: background .2s, color .2s; }
.pf-page .pf-calc__seg button[aria-pressed=true] { background: #fff; color: #14304c; box-shadow: 0 1px 4px #2a4a7a1f; }
.pf-calc__receipt { padding: 28px; border-radius: 12px; background: #fff; box-shadow: 0 30px 60px -28px #2a4a7a55; font-family: var(--price-mono); }
.pf-page .pf-calc__receipt-head { display: flex; justify-content: space-between; padding-bottom: 14px; border-bottom: 1px dashed #c9d5e6; color: #14304c; font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: .03em; }
.pf-page .pf-calc__receipt-head span + span { color: #8a9aae; font-size: 10px; font-weight: 500; letter-spacing: .08em; }
.pf-calc__receipt ul { margin: 0; padding: 0; list-style: none; }
.pf-calc__receipt li { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 12px 0; border-bottom: 1px solid #10304a0f; }
.pf-page .pf-calc__receipt li span { color: #33465e; font-size: 13px; line-height: 1.45; }
.pf-page .pf-calc__receipt li b { color: #14304c; font-size: 14px; font-weight: 600; white-space: nowrap; font-variant-numeric: tabular-nums; }
.pf-calc__total { display: flex; justify-content: space-between; align-items: baseline; padding: 16px 0 4px; }
.pf-page .pf-calc__total span { color: #14304c; font-size: 13px; font-weight: 600; text-transform: uppercase; }
.pf-page .pf-calc__total strong { color: var(--price-blue); font-size: 30px; font-weight: 600; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.pf-page .pf-calc__receipt > p { margin: 10px 0 20px; color: #66788f; font-family: Inter, sans-serif; font-size: 12px; line-height: 1.55; }
.pf-calc__receipt .pf-home__button { width: 100%; font-family: Inter, sans-serif; }

@media (max-width:1439px) {
  .pf-price-hero__float { display: none; }
}
@media (max-width:1199px) {
  .pf-price-principles__grid, .pf-price-thousand__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width:991px) {
  .pf-price-mock { grid-template-columns: 1fr; }
  .pf-price-tabs__art { min-height: 300px; }
  .pf-calc { grid-template-columns: 1fr; }
}
@media (max-width:575px) {
  .pf-price-mock { padding: 6px; }
  .pf-price-mock__balance { padding: 22px 20px; }
  .pf-page .pf-price-tabs__list dt::after { display: none; }
  .pf-page .pf-price-tabs__list dt { font-size: 14px; }
  .pf-price-tabs__tag { min-width: 0; width: 100%; padding: 18px; }
  .pf-price-tabs__actions .pf-pos-btn { width: 100%; }
  .pf-price-principles__grid, .pf-price-thousand__grid { grid-template-columns: 1fr; }
  .pf-calc__inputs, .pf-calc__receipt { padding: 22px 18px; }
}

@media (prefers-reduced-motion: reduce) {
  .pf-price-mock__bar i, .pf-price-tabs__badge, .pf-price-tabs__tag { animation: none; }
}
