/* Self-serve payment pages (pay form / gateway return / refund link), in the /local-check look. */
.lc-pay { max-width: 600px; margin: 48px auto 0; padding: 32px 28px; }
.lc-pay[data-pay-mode="form"] h1 { font-size: clamp(24px, 4.6vw, 32px); font-weight: 800; letter-spacing: -.03em; line-height: 1.15; margin-bottom: 8px; }
.lc-pay-refund { margin: 12px 0 4px; padding: 10px 14px; border-radius: 12px; background: var(--lc-good-soft); color: var(--lc-good-ink); font-weight: 700; }
.lc-trial .lc-pay-refund { display: inline-block; margin-top: 16px; }
.lc-pay-refund .lc-link { min-height: 0; margin-left: 6px; }
.lc-pay-f label { flex: 1 1 100%; }
.lc-pay-f .lc-pay-agree { flex-direction: row; align-items: flex-start; gap: 10px; text-transform: none; letter-spacing: 0; font-size: 14px; font-weight: 400; color: var(--lc-ink); }
.lc-pay-f .lc-pay-agree input { min-height: 0; width: 20px; height: 20px; margin: 2px 0 0; flex: none; }
.lc-pay-f .lc-cta { flex: 1 1 100%; }
.lc-pay > .lc-note { margin-top: 12px; }
@media (max-width: 480px) { .lc-pay { margin-top: 24px; padding: 24px 18px; } .lc-pay .lc-cta { width: 100%; } }

/* Pay buttons on /local-check (offer block) and /local-pricing (tier cards). */
.lc-paybox { margin-top: 14px; }
.lc-paybox .lc-cta.lc-cta-inline { margin-top: 0; }
.lc-paybox .lc-pay-refund { display: block; margin-top: 10px; font-size: 14px; }
.lc-tier .lc-paybox .lc-cta { width: 100%; font-size: 16px; padding: 0 14px; }
@media (max-width: 480px) { .lc-paybox .lc-cta { width: 100%; } }
/* С11.1 «Що не сподобалося?» on the refund page (T6j) */
.lc-pay-fb { display: flex; flex-direction: column; gap: 6px; margin: 16px 0 14px; font-size: 14px; color: var(--lc-ink-2); }
.lc-pay-fb textarea { box-sizing: border-box; width: 100%; min-height: 64px; padding: 10px 12px; border: 1.5px solid var(--lc-field-line); border-radius: 12px; background: var(--lc-field-bg); color: var(--lc-ink); font: inherit; font-size: 16px; resize: vertical; }
.lc-pay-fb textarea:focus-visible { outline: 3px solid var(--lc-primary-ring); outline-offset: 1px; border-color: var(--lc-primary); }
/* «Корпоративний» (T6v): the branches recount form under the price line. */
.lc-pay-branches { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px; margin: 10px 0 4px; }
.lc-pay-branches label { display: flex; flex-direction: column; gap: 6px; flex: 0 1 220px; font-size: 14px; color: var(--lc-ink-2); }
.lc-pay-branches input { box-sizing: border-box; min-height: 44px; padding: 0 12px; border: 1.5px solid var(--lc-field-line); border-radius: 12px; background: var(--lc-field-bg); color: var(--lc-ink); font: inherit; font-size: 16px; }
.lc-pay-branches input:focus-visible, .lc-link-btn:focus-visible { outline: 3px solid var(--lc-primary-ring); outline-offset: 1px; }
.lc-link-btn { min-height: 44px; padding: 0 16px; border: 1.5px solid var(--lc-primary); border-radius: 12px; background: transparent; color: var(--lc-primary); font: inherit; font-weight: 700; cursor: pointer; }
/* T7b: «Як платити» — monthly or prepaid 6/12 months (only with VILNI_LOCAL_PREPAY). */
.lc-pay-f .lc-pay-period { flex: 1 1 100%; display: flex; flex-direction: column; gap: 8px; margin: 4px 0 0; padding: 0; border: 0; }
.lc-pay-period legend { margin-bottom: 6px; font-size: 14px; font-weight: 700; color: var(--lc-ink-2); }
.lc-pay-f .lc-pay-period-o { flex-direction: row; align-items: center; gap: 10px; min-height: 44px; padding: 8px 12px; border: 1.5px solid var(--lc-field-line); border-radius: 12px; background: var(--lc-field-bg); text-transform: none; letter-spacing: 0; font-size: 15px; font-weight: 400; color: var(--lc-ink); cursor: pointer; }
.lc-pay-f .lc-pay-period-o input { min-height: 0; width: 20px; height: 20px; margin: 0; flex: none; }
.lc-pay-period-o:has(input:checked) { border-color: var(--lc-primary); }
.lc-pay-period-o input:focus-visible { outline: 3px solid var(--lc-primary-ring); outline-offset: 2px; }
