.bw-auth-layer{position:fixed;inset:0;z-index:12000;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(16,49,61,.34);backdrop-filter:blur(8px)}
.bw-auth-layer.open{display:flex}
.bw-auth-card{width:min(560px,100%);max-height:min(92vh,860px);overflow:auto;border:1px solid #e8d8bd;border-radius:18px;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(255,253,247,.88));box-shadow:0 34px 120px rgba(16,49,61,.20);padding:34px 36px;color:#10313d}
.bw-auth-card.inline{box-shadow:none;background:transparent;border:0;padding:0;max-height:none;overflow:visible}
.bw-auth-top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}
.bw-auth-eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#c09142;font-weight:800}
.bw-auth-title{font-family:'Playfair Display','Noto Serif SC',serif;font-size:44px;line-height:1.04;margin:12px 0 8px;color:#10313d}
.bw-auth-copy{margin:0;color:#6b8290;font-size:15px;line-height:1.65}
.bw-auth-close{border:0;background:transparent;color:#6b8290;font-size:28px;line-height:1;cursor:pointer}
.bw-auth-tabs{display:flex;border:1px solid #e8d8bd;border-radius:999px;padding:4px;margin:22px 0 22px;background:rgba(255,255,255,.48)}
.bw-auth-tabs button{flex:1;border:0;border-radius:999px;background:transparent;color:#6b8290;padding:10px 12px;font-weight:800;cursor:pointer}
.bw-auth-tabs button.active{background:#f0e4d1;color:#10313d}
.bw-auth-field{display:grid;gap:8px;margin-bottom:14px}
.bw-auth-field label{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#c09142;font-weight:800}
.bw-auth-field input{width:100%;border:1px solid #e8d8bd;border-radius:14px;background:rgba(255,255,255,.76);color:#10313d;padding:13px 14px;font:600 15px Lato,system-ui,sans-serif;outline:none}
.bw-auth-field input:focus{border-color:#c09142;box-shadow:0 0 0 3px rgba(192,145,66,.12)}
.bw-auth-row{display:flex;gap:10px;align-items:center}.bw-auth-row .bw-auth-field{flex:1;margin-bottom:0}
.bw-auth-turnstile{min-height:74px;display:flex;align-items:center;justify-content:center;margin:8px 0 16px;border:1px dashed rgba(192,145,66,.34);border-radius:14px;background:rgba(255,255,255,.42);overflow:hidden}
.bw-auth-turnstile.is-ready{border-style:solid;background:rgba(255,255,255,.64)}
.bw-auth-muted{color:#6b8290;font-size:12px;line-height:1.5}
.bw-auth-msg{min-height:20px;margin:6px 0 12px;color:#c45a4a;font-size:13px;line-height:1.45}
.bw-auth-msg.ok{color:#2f8a62}
.bw-auth-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.bw-auth-btn{border:1px solid #c09142;background:#c09142;color:#fff;border-radius:999px;min-height:44px;padding:11px 18px;font:800 12px Lato,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.bw-auth-btn.secondary{background:transparent;color:#c09142}.bw-auth-btn.ghost{border-color:#e8d8bd;background:transparent;color:#6b8290}
.bw-auth-btn:disabled{opacity:.45;cursor:not-allowed}
.bw-auth-links{display:flex;justify-content:space-between;gap:12px;margin-top:14px;color:#6b8290;font-size:13px}
.bw-auth-links a{color:#c09142;text-decoration:none;font-weight:800;cursor:pointer}
@media(max-width:620px){.bw-auth-layer{padding:14px}.bw-auth-card{padding:28px 22px}.bw-auth-title{font-size:34px}.bw-auth-row{display:grid}}
.bw-pay-layer{background:rgba(16,49,61,.42)!important;backdrop-filter:blur(10px)!important;padding:22px!important}
.bw-pay-card{width:min(540px,calc(100% - 28px))!important;max-height:90vh!important;overflow:auto!important;text-align:left!important;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(255,253,247,.92))!important;border:1px solid #e8d8bd!important;border-radius:18px!important;box-shadow:0 34px 120px rgba(16,49,61,.24)!important;padding:32px 36px!important;color:#10313d!important}
.bw-pay-icon{display:none!important}
.bw-pay-kicker{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#c09142;font-weight:800;margin-bottom:8px}
.bw-pay-title{font-family:'Playfair Display','Noto Serif SC',serif!important;font-size:34px!important;line-height:1.08!important;color:#10313d!important;margin:0 0 4px!important}
.bw-pay-price{font-family:'Playfair Display','Noto Serif SC',serif!important;font-size:48px!important;line-height:1!important;color:#10313d!important;font-weight:700!important;margin:8px 0!important}
.bw-pay-sub{font-size:13px!important;color:#6b8290!important;margin-bottom:16px!important}
.bw-pay-pack-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin:14px 0 16px!important}
.bw-pay-pack-grid button{min-height:74px!important;border:1px solid #e8d8bd!important;border-radius:12px!important;background:rgba(255,255,255,.66)!important;color:#10313d!important;padding:10px 8px!important}
.bw-pay-pack-grid button[disabled]{opacity:.48!important}
.bw-pay-pack-grid button span:first-child{font-family:'Playfair Display','Noto Serif SC',serif!important;font-size:22px!important;color:#10313d!important}
.bw-pay-field input,.bw-pay-card input{background:#fff!important;color:#10313d!important;border:1px solid #e8d8bd!important;border-radius:12px!important}
.bw-pay-card-element{background:#fff!important;border:1px solid #e8d8bd!important;border-radius:12px!important;min-height:48px!important}
.bw-pay-msg{font-size:13px!important;line-height:1.45!important;color:#c45a4a!important;margin:10px 0!important}
.bw-pay-msg.ok{color:#2f8a62!important}
.bw-pay-human{min-height:74px;display:flex;align-items:center;justify-content:center;margin:12px 0 14px;border:1px dashed rgba(192,145,66,.34);border-radius:14px;background:rgba(255,255,255,.48);overflow:hidden}
.bw-pay-human.is-ready{border-style:solid;background:rgba(255,255,255,.72)}
.bw-pay-note{font-size:12px!important;color:#6b8290!important;line-height:1.5!important;margin-top:8px!important;text-align:center!important}
.bw-pay-card button[id$="payBtn"],.bw-pay-card #payBtn,.bw-pay-card #payButton{width:100%!important;min-height:46px!important;border-radius:12px!important;border:1px solid #c09142!important;background:#c09142!important;color:#fff!important;font-weight:800!important}
.bw-pay-card #checkoutFallbackBtn,.bw-pay-card #checkoutButton{width:100%!important;min-height:44px!important;border-radius:12px!important;border:1px solid #e8d8bd!important;background:transparent!important;color:#c09142!important;font-weight:800!important}
@media(max-width:620px){.bw-pay-card{padding:28px 22px!important}.bw-pay-title{font-size:28px!important}.bw-pay-price{font-size:40px!important}.bw-pay-pack-grid{grid-template-columns:1fr!important}}
