.kk-dialog { box-sizing: border-box; width: min(92vw, 480px); max-height: 90dvh; overflow-y: auto; border: 1px solid var(--border-color, #dce0e6); border-radius: 18px; padding: 32px; background: var(--bg-card, #fff); color: var(--text-main, #172337); box-shadow: 0 24px 80px #0003; }
.kk-dialog::backdrop { background: #10203899; }
.kk-dialog h2 { font-size: 1.65rem; margin: 16px 0; padding-right: 12px; }
.kk-dialog .btn { box-sizing: border-box; display: inline-flex; justify-content: center; align-items: center; padding: 10px 14px; border: 1px solid var(--border-color, #dce0e6); border-radius: 8px; margin-top: 8px; font: inherit; text-decoration: none; cursor: pointer; }
.kk-dialog .btn-primary { background: var(--primary-color, #3154df); color: #fff; }
.kk-dialog .btn-outline-secondary { background: transparent; color: inherit; }
.kk-eyebrow { font-size: .75rem; font-weight: 750; letter-spacing: .07em; color: var(--primary-color, #3154df); }
.kk-close { position: absolute; right: 12px; top: 8px; border: 0; background: transparent; color: inherit; font-size: 28px; width: 40px; height: 40px; }
.kk-note { font-size: .875rem; line-height: 1.5; }
.kk-offers .card { background: var(--bg-card, #fff); color: var(--text-main, #172337); border-color: var(--border-color, #dce0e6); }
@media (max-width: 480px) { .kk-dialog { padding: 24px; } .kk-dialog .btn { width: 100%; } }
