.wo{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;background:rgba(28,25,23,.45)}
.wo[hidden]{display:none}
.wo-card{position:relative;width:min(420px,calc(100% - 32px));background:#fff;border-radius:16px;padding:30px 28px 22px;box-shadow:0 20px 50px rgba(0,0,0,.25);text-align:center;font-family:inherit}
.wo-close{position:absolute;top:8px;right:12px;border:0;background:none;font-size:26px;line-height:1;color:#78716c;cursor:pointer}
.wo-kicker{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent,#ea580c)}
.wo-title{font-size:24px;line-height:1.2;margin:6px 0 8px;color:#1c1917}
.wo-text{font-size:14px;color:#57534e;margin:0 0 16px;line-height:1.5}
.wo-form{display:flex;gap:8px}
.wo-form input{flex:1;min-width:0;padding:12px 14px;border:1.5px solid #d6d3d1;border-radius:10px;font-size:16px}
.wo-btn{padding:12px 18px;border:0;border-radius:10px;background:var(--accent,#ea580c);color:#fff;font-weight:700;font-size:15px;cursor:pointer;white-space:nowrap}
.wo-msg{min-height:18px;font-size:13px;color:#b91c1c;margin:8px 0 0}
.wo-fine{font-size:11.5px;color:#a8a29e;margin:6px 0 0}
.wo-code{display:inline-block;margin:10px 0 12px;padding:10px 22px;border:2px dashed var(--accent,#ea580c);border-radius:10px;font-size:22px;font-weight:800;letter-spacing:2px;color:#1c1917}
/* Phones: a bottom sheet over the page, not a full-screen overlay. */
@media (max-width:640px){
  .wo{align-items:flex-end;background:none;pointer-events:none}
  .wo-card{pointer-events:auto;width:100%;border-radius:16px 16px 0 0;padding:18px 16px calc(14px + env(safe-area-inset-bottom,0));box-shadow:0 -8px 30px rgba(0,0,0,.18)}
  .wo-title{font-size:19px;margin:4px 0 6px}
  .wo-text{font-size:13px;margin-bottom:12px}
}
