/* Персональное предложение: плашка в левом нижнем углу, на телефоне — во всю ширину снизу */
.sb-offer { position: fixed; left: 20px; bottom: 20px; z-index: 900; width: 340px; max-width: calc(100vw - 32px); box-sizing: border-box; padding: 18px 18px 16px; background: #212a33; border: 1px solid #2f3c49; border-radius: 16px; box-shadow: 0 18px 44px rgba(0, 0, 0, .45); color: #fff; font-family: Arial, sans-serif; opacity: 0; transform: translateY(16px); transition: opacity .25s, transform .25s; }
.sb-offer.is-on { opacity: 1; transform: none; }
.sb-offer-title { margin: 0 28px 6px 0; font-size: 17px; font-weight: 700; line-height: 1.25; }
.sb-offer-body { font-size: 14px; line-height: 1.45; color: #a9b6c3; }
.sb-offer-timer { margin-top: 10px; font-size: 13px; color: #a9b6c3; }
.sb-offer-timer b { color: #ffd93b; font-variant-numeric: tabular-nums; }
.sb-offer-button { display: block; width: 100%; margin-top: 14px; padding: 12px 14px; border: 0; border-radius: 10px; background: #4db2ff; color: #fff; font-size: 15px; font-weight: 600; cursor: pointer; }
.sb-offer-button:hover { background: #3aa3f5; }
.sb-offer.is-applied .sb-offer-button { background: #2f3c49; color: #a9b6c3; }
.sb-offer-close { position: absolute; top: 8px; right: 8px; width: 32px; height: 32px; border: 0; border-radius: 8px; background: transparent; color: #8794a1; font-size: 22px; line-height: 1; cursor: pointer; }
.sb-offer-close:hover { background: #2a3642; color: #fff; }
.sb-offer-consent { display: flex; gap: 8px; align-items: flex-start; margin-top: 12px; font-size: 12px; line-height: 1.35; color: #8794a1; cursor: pointer; }
.sb-offer-consent input { margin: 1px 0 0; }
@media (max-width: 600px) { .sb-offer { left: 12px; right: 12px; bottom: 12px; width: auto; max-width: none; } }
@media (prefers-reduced-motion: reduce) { .sb-offer { transition: none; transform: none; } }
