.b22-modal-lock{overflow:hidden}
.b22-modal-overlay{position:fixed;inset:0;z-index:999999;display:flex;padding:22px;background:rgba(0,0,0,var(--b22-overlay,.65));opacity:0;pointer-events:none;transition:opacity .24s ease}
.b22-modal-overlay.b22-position-center{align-items:center;justify-content:center}
.b22-modal-overlay.b22-position-top{align-items:flex-start;justify-content:center;padding-top:7vh}
.b22-modal-overlay.b22-position-bottom{align-items:flex-end;justify-content:center;padding-bottom:7vh}
.b22-modal-overlay.is-visible{opacity:1;pointer-events:auto}
.b22-modal{position:relative;width:min(var(--b22-width,520px),calc(100vw - 34px));height:var(--b22-height,auto);max-height:calc(100vh - 44px);overflow:auto;background:var(--b22-bg,#fff);color:var(--b22-text,#111);border-radius:var(--b22-radius,18px);padding:var(--b22-padding,34px);text-align:var(--b22-align,center);box-shadow:var(--b22-shadow,0 24px 80px rgba(0,0,0,.34));transform:translateY(10px) scale(.985);transition:transform .24s ease;font-size:var(--b22-font-size,17px);line-height:1.55;box-sizing:border-box}
.b22-modal-overlay.is-visible .b22-modal{transform:translateY(0) scale(1)}
.b22-modal-x{position:absolute;top:var(--b22-close-top,12px);right:var(--b22-close-right,14px);border:0;background:var(--b22-close-bg,transparent);color:var(--b22-close,#666);font-size:var(--b22-close-size,30px);line-height:1;cursor:pointer;padding:4px;width:calc(var(--b22-close-size,30px) + 10px);height:calc(var(--b22-close-size,30px) + 10px);border-radius:var(--b22-close-radius,999px);display:flex;align-items:center;justify-content:center}
.b22-modal h2{margin:0 36px 14px 36px;color:var(--b22-headline,#111);font-size:var(--b22-headline-size,30px);line-height:1.12;font-weight:700}
.b22-modal-body{margin:0 auto 22px}.b22-modal-body p:last-child{margin-bottom:0}
.b22-modal-actions{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:20px}
.b22-modal-button{appearance:none;border-style:solid;border-width:var(--b22-button-border-width,0);border-color:var(--b22-button-border-color,#111);border-radius:var(--b22-button-radius,999px);padding:var(--b22-button-padding-y,12px) var(--b22-button-padding-x,22px);cursor:pointer;text-decoration:none!important;font-weight:700;font-size:var(--b22-button-font-size,15px);background:var(--b22-button-bg,#111);color:var(--b22-button-text,#fff)!important;display:inline-flex;align-items:center;justify-content:center;line-height:1.1;box-sizing:border-box}
.b22-modal-close-btn{background:transparent!important;color:var(--b22-text,#111)!important;border:1px solid currentColor}
.b22-modal-dna-wrap{display:flex;margin-top:18px;justify-content:var(--b22-dna-align,center)}
.b22-modal-dna{display:inline-flex;gap:8px;align-items:center;justify-content:center;font-size:var(--b22-dna-size,14px);font-weight:var(--b22-dna-weight,400);color:var(--b22-dna-color,#555);line-height:1.2;white-space:nowrap;max-width:100%}
.b22-modal-dna input{margin:0;flex:0 0 auto}.b22-modal-dna span{display:inline-block;white-space:nowrap}
@media(max-width:520px){.b22-modal{padding:calc(var(--b22-padding,34px) * .72);font-size:calc(var(--b22-font-size,17px) * .95)}.b22-modal h2{font-size:calc(var(--b22-headline-size,30px) * .78)}.b22-modal-actions{flex-direction:column}.b22-modal-button{width:100%}.b22-modal-dna{white-space:normal}.b22-modal-dna span{white-space:normal}}
