/* 2026-10-16: Оформление цены. Заметное пламя усиливается после 1 / 2 / 3 / 4+ снижений. */
.price-promotion { display:block; font:500 12px/1.5 Arial,sans-serif; color:#597368; white-space:nowrap; }
.price-promotion del { font-size:16px; position:relative; display:inline-block; text-decoration:none; margin-right:6px; }
.price-promotion__discount { display:inline-block; font-size:16px; padding:1px 5px; border-radius:5px; color:#87500a; background:#fff0c5; font-weight:700; }
.price-promotion__saving { display:block; color:#1b7358; font-size:16px; }
.quote-total .price-promotion { order:2; flex-basis:100%; }
.quote .price-promotion__discount { display:inline-block; font-size:16px; }
.quote strong .price-flame,.site-booking-cost strong .price-flame { display:inline-block; font-size:inherit; }
.site-booking-cost .price-promotion { display:block; font-size:12px; }
.site-booking-cost .price-promotion__discount { display:inline-block; font-size:16px; }
.site-booking-cost .price-promotion__saving { display:block; font-size:16px; }
/* 2026-10-16: Крупное пламя при любой скидке; пять порогов 5/10/20/30/40% сохраняются, размер ограничен для читаемости. */
.price-flame { display:inline-block; position:relative; width:calc(clamp(18px,.8em,24px) * var(--price-fire-size,1.1)); height:calc(clamp(26px,1.15em,32px) * var(--price-fire-size,1.1)); margin-left:.19em; vertical-align:-.18em; font-size:inherit; isolation:isolate; }
/* 2026-10-16: Свечение принадлежит только огоньку, без пульсации цифр и изменения размеров строки на каждом кадре. */
.price-flame::before { content:""; position:absolute; inset:22% -4% -4%; z-index:-1; border-radius:50%; background:radial-gradient(ellipse,#ffd15c99 0%,#f39a204d 42%,transparent 72%); filter:blur(3px); animation:price-fire-glow .65s ease-in-out infinite alternate; pointer-events:none; }
@keyframes price-fire-glow { from { opacity:.4; } to { opacity:.95; } }
.price-flame.is-motion-reduced::before { animation:none; opacity:.45; }
@media(prefers-reduced-motion:reduce) { .price-flame::before { animation:none; opacity:.45; } }
.price-flame svg { display:block; width:100%; height:100%; overflow:visible; }
.price-flame[data-level="2"] { filter:drop-shadow(0 0 2px #f2b83a44); }
.price-flame[data-level="3"],.price-flame[data-level="4"] { filter:drop-shadow(0 0 3px #ef8d3055); }
.property-map-marker__price .price-flame { width:calc(clamp(18px,.85em,20px) * var(--price-fire-size,1.1)); height:calc(clamp(26px,1.3em,28px) * var(--price-fire-size,1.1)); margin-left:.14em; }
.property-map-marker__promotion { margin:3px 0 0; font:11px/1.4 Arial,sans-serif; color:#526f60; }
/* 2026-10-16: Крупнее только прежняя цена и процент; состав и размеры карточек сохраняются. */
.quote .price-promotion__discount,.site-booking-cost .price-promotion__discount { font-size:16px; }

/* 2026-10-16: Цвет по снижению: 1 — зелёный, 2 — половина тёплая, 3 — две трети тёплые, 4+ — весь тёплый. */
.flat_price strong.price-is-hot,.quote strong.price-is-hot,.site-booking-cost strong.price-is-hot,
.property-map .property-map-marker__price.price-is-hot { color:#c96a10; }
@supports (background-clip:text) or (-webkit-background-clip:text) {
  .price-is-warm,.flat_price strong:has(>.price-flame[data-level="2"]) {
    background:linear-gradient(90deg,currentColor 0%,currentColor 45%,#c99525 55%,#df8c1d 78%,#c56510 100%);
    background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  }
  .price-is-warmer,.flat_price strong:has(>.price-flame[data-level="3"]) {
    background:linear-gradient(90deg,currentColor 0%,currentColor 29%,#c99525 37%,#df8c1d 70%,#c56510 100%);
    background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  }
  .price-is-hot,.flat_price strong:has(>.price-flame[data-level="4"]) {
    background:linear-gradient(110deg,#b9550a 0%,#df8c1d 46%,#c56510 100%);
    background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  }
}
@media (forced-colors:active) {
  .price-is-warm,.flat_price strong:has(>.price-flame[data-level="2"]),
  .price-is-warmer,.flat_price strong:has(>.price-flame[data-level="3"]),
  .price-is-hot,.flat_price strong:has(>.price-flame[data-level="4"]) { background:none; color:CanvasText; -webkit-text-fill-color:CanvasText; }
}


/* 2026-10-16: Метка измеряет цену и огонь одной строкой. Пиксельный размер задаёт тот же расчёт, что рисует контур. */
.property-map-marker__price { display:inline-flex; align-items:center; line-height:1; gap:var(--marker-fire-gap,2px); }
.property-map-marker__price .price-flame { display:block; flex:0 0 auto; margin:0; vertical-align:baseline; }

/* 2026-10-16: Огненная палитра у контура метки и её указателя; геометрия и прежняя анимация сохраняются. */
.property-map-marker__availability-ring.is-price-fire {
  background:conic-gradient(from var(--property-map-ring-angle),#fff5ba,#ffca52,#f09822,#ee5c16,#ffb12d,#fff5ba);
}
/* 2026-10-16: Тонкое переливающееся зачёркивание; сумма, процент, выгода и предоплата одного размера. */
.price-promotion del::after {
  content:""; position:absolute; left:0; right:0; top:50%; height:1px; pointer-events:none;
  background:linear-gradient(90deg,#ee5c16,#ffca52,#fff5ba,#f09822,#ee5c16);
  background-size:200% 100%; animation:price-old-strike-shimmer 2s linear infinite;
}
@keyframes price-old-strike-shimmer { to { background-position:200% 0; } }
.quote .price-promotion__saving,.quote > span:last-child,.site-booking-cost > span:last-child,
.site-booking-cost #site-booking-prepay { font-size:16px; }
@media(prefers-reduced-motion:reduce) { .price-promotion del::after { animation:none; } }
@media(forced-colors:active) { .price-promotion del::after { background:CanvasText; animation:none; } }

/* 2026-10-16: Компактная публичная карточка карты; геометрия метки и редактор координат сохраняются. */
.property-map .is-compact-card .property-map-marker__content { gap:9px; }
.property-map .is-compact-card .property-map-marker__content img.property-map-marker__photo { height:76px; }
.property-map .is-compact-card .property-map-marker__info strong { font-size:13px; line-height:17px; padding-right:18px; }
.property-map .is-compact-card .property-map-marker__date { display:block; margin-top:2px; font-size:13px; line-height:17px; }
.property-map .is-compact-card .property-map-marker__price-line { margin-top:1px; min-height:28px; }
.property-map .is-compact-card .property-map-marker__info p.property-map-marker__facts { margin:2px 0 0; font-size:12px; line-height:16px; }
.property-map .is-compact-card .property-map-marker__info small { font-size:12px; }
.property-map .is-compact-card > .property-map-marker__body > .property-map-marker__promotion { display:none; margin:5px 0 0; line-height:1.3; }
.property-map .is-compact-card.is-expanded > .property-map-marker__body > .property-map-marker__promotion { display:block; }
.property-map .is-compact-card .property-map-marker__promotion .price-promotion { display:flex; align-items:center; gap:7px; flex-wrap:wrap; font-size:16px; line-height:22px; }
.property-map .is-compact-card .property-map-marker__promotion del { margin-right:0; }
.property-map .is-compact-card .property-map-marker__promotion .price-promotion__discount { padding:0 5px; font-size:16px; line-height:22px; }
.property-map .is-compact-card .property-map-marker__promotion .price-promotion__saving { display:inline; margin-left:auto; font-size:16px; line-height:22px; white-space:nowrap; }

/* 2026-10-16: Крупная ссылка «Подробнее» и отдельная кнопка помещаются в один ряд; на телефоне зона нажатия 44 px. */
.property-map .property-map-marker__actions { display:none; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; margin-top:6px; }
.property-map .is-compact-card.is-expanded .property-map-marker__actions { display:flex; }
.property-map .property-map-marker__actions .property-map-marker__book {
  display:inline-flex; align-items:center; justify-content:center; min-height:38px; margin:0; padding:5px 12px;
  border:0; border-radius:7px; background:linear-gradient(#439c7f,#197054); color:#fff;
  font:600 14px/20px Arial,sans-serif; cursor:pointer; box-sizing:border-box; text-decoration:none;
}
.property-map .property-map-marker__actions .property-map-marker__book:hover { background:#197054; }
.property-map .property-map-marker__actions .property-map-marker__details {
  display:inline-flex; align-items:center; justify-content:center; min-height:38px; margin:0; padding:5px 8px;
  border:0; border-radius:7px; background:transparent; color:#226d53; font:400 16px/20px Arial,sans-serif;
  text-decoration:underline; box-sizing:border-box;
}
.property-map .property-map-marker__actions .property-map-marker__details:hover { color:#174c3b; }
.property-map .property-map-marker__actions [hidden] { display:none; }
.property-map .property-map-marker__actions :focus-visible { outline:2px solid #1f68bc; outline-offset:2px; }
@media(pointer:coarse) {
  .property-map .property-map-marker__actions .property-map-marker__book,
  .property-map .property-map-marker__actions .property-map-marker__details { min-height:44px; }
}
