.wtmc-overlay {
    position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:99999;
    display:flex;align-items:center;justify-content:center;
    opacity:0;transition:opacity .2s ease;
}
.wtmc-overlay:not([hidden]){ opacity:1; }
.wtmc-overlay[hidden]{ display:none; }
.wtmc-modal {
    background:#fff;border-radius:12px;padding:28px 28px 24px;
    width:min(460px,94vw);position:relative;
    box-shadow:0 20px 60px rgba(0,0,0,.25);
    transform:scale(.95);transition:transform .2s ease;
}
.wtmc-overlay:not([hidden]) .wtmc-modal{ transform:scale(1); }
.wtmc-modal h3 { margin:0 0 16px;font-size:18px; }
.wtmc-close {
    position:absolute;top:12px;left:12px;
    background:none;border:none;font-size:18px;cursor:pointer;
    color:#888;line-height:1;padding:4px 8px;border-radius:4px;
}
.wtmc-close:hover{ color:#333;background:#f0f0f0; }
.wtmc-form-wrap label { display:block;font-weight:600;margin-bottom:6px;font-size:14px; }
.wtmc-form-wrap input[type=text] {
    width:100%;padding:11px 14px;border:2px solid #ddd;border-radius:8px;
    font-size:15px;letter-spacing:2px;text-transform:uppercase;
    box-sizing:border-box;transition:border-color .2s;
}
.wtmc-form-wrap input[type=text]:focus{ outline:none;border-color:#2271b1; }
.wtmc-form-wrap button#wtmc-submit {
    margin-top:12px;width:100%;padding:12px;border:none;border-radius:8px;
    background:#2271b1;color:#fff;font-size:15px;font-weight:600;
    cursor:pointer;transition:background .2s;
}
.wtmc-form-wrap button#wtmc-submit:hover{ background:#1a5c9a; }
.wtmc-form-wrap button#wtmc-submit:disabled{ background:#aaa;cursor:not-allowed; }
.wtmc-msg { font-size:14px;margin-bottom:12px;padding:10px 14px;border-radius:6px;display:none; }
.wtmc-msg.success { background:#e8f5e9;color:#1b5e20;display:block; }
.wtmc-msg.error   { background:#fce4ec;color:#880e4f;display:block; }
