/* BWSN updates flow: compact, accessible modal using the established black/cream/lime system. */
.ea-overlay { display:flex; opacity:0; pointer-events:none; transition:opacity 180ms cubic-bezier(0.23,1,0.32,1); position:fixed; inset:0; z-index:9999; align-items:center; justify-content:center; padding:1.5rem; background:rgba(0,0,0,0.78); }
.ea-overlay.is-open { opacity:1; pointer-events:auto; }
.ea-dialog { width:100%; max-width:500px; max-height:min(90vh,760px); overflow-y:auto; position:relative; padding:clamp(1.75rem,5vw,2.5rem); border:1px solid rgba(255,255,255,0.12); border-radius:6px; background:#111; color:#fff; }
.ea-close { position:absolute; top:0.9rem; right:1rem; width:42px; height:42px; border:0; background:transparent; color:rgba(255,255,255,0.72); font-size:1.6rem; line-height:1; cursor:pointer; }
.ea-close:hover,.ea-close:focus-visible { color:#fff; outline:2px solid var(--lime); outline-offset:-2px; }
.ea-state { display:flex; flex-direction:column; gap:1.15rem; }
.ea-state[hidden] { display:none; }
.ea-kicker { color:var(--lime); font-family:'Barlow Condensed',sans-serif; font-size:0.78rem; font-weight:800; letter-spacing:0.15em; text-transform:uppercase; }
.ea-title { font-family:'Barlow Condensed',sans-serif; font-size:clamp(1.65rem,5vw,2.25rem); font-weight:900; line-height:1.05; text-transform:uppercase; }
.ea-copy { color:rgba(255,255,255,0.76); font-size:0.95rem; line-height:1.5; }
.ea-form { display:flex; flex-direction:column; gap:0.85rem; }
.ea-label { display:block; color:#fff; font-family:'Barlow',sans-serif; font-size:0.88rem; font-weight:600; }
.ea-label-note { color:rgba(255,255,255,0.58); font-weight:400; }
.ea-input { width:100%; margin-top:0.35rem; padding:0.82rem 0.9rem; border:1px solid rgba(255,255,255,0.28); border-radius:2px; background:rgba(255,255,255,0.08); color:#fff; font:1rem/1.3 'Barlow',sans-serif; }
.ea-input::placeholder { color:rgba(255,255,255,0.48); }
.ea-input:focus-visible { outline:3px solid var(--lime); outline-offset:2px; }
.ea-error,.ea-status { min-height:1.3em; font-size:0.86rem; line-height:1.4; }
.ea-error { color:#ff9b9b; }
.ea-status { color:var(--lime); }
.ea-submit { width:100%; padding:0.92rem 1.25rem; border:0; border-radius:2px; background:var(--lime); color:#000; font-family:'Barlow Condensed',sans-serif; font-size:1rem; font-weight:900; letter-spacing:0.1em; text-transform:uppercase; cursor:pointer; }
.ea-submit:disabled { cursor:wait; opacity:0.62; }
.ea-interest-list { display:grid; gap:0.72rem; }
.ea-interest { display:flex; align-items:center; gap:0.75rem; color:#fff; font-size:0.95rem; cursor:pointer; }
.ea-interest input { width:18px; height:18px; flex:0 0 18px; accent-color:var(--lime); }
.ea-actions { display:flex; gap:0.75rem; margin-top:0.3rem; }
.ea-skip { padding:0.85rem 1rem; border:1px solid rgba(255,255,255,0.22); border-radius:2px; background:transparent; color:rgba(255,255,255,0.78); font-family:'Barlow',sans-serif; font-size:0.88rem; cursor:pointer; }
.ea-skip:hover,.ea-skip:focus-visible { border-color:#fff; color:#fff; outline:none; }
.ea-sms-disabled { display:none !important; }
.ea-honeypot { position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
@media (max-width:560px) { .ea-overlay { padding:0.75rem; align-items:flex-end; } .ea-dialog { max-height:94vh; padding:1.65rem 1.25rem 1.4rem; } .ea-actions { flex-direction:column; } }
