/* eChurch Digital Follow-Up public connection card, v0.1.5 */
.ecdfu-form{--ecdfu-primary:#155bb5;--ecdfu-button:#155bb5;box-sizing:border-box;max-width:580px;margin:24px auto;padding:clamp(20px,5vw,38px);border:1px solid #d9e2ee;border-radius:18px;background:#fff;color:#182d4a;box-shadow:0 12px 35px rgba(10,35,70,.06);font-family:inherit;line-height:1.55}
.ecdfu-form *{box-sizing:border-box}.ecdfu-form .ecdfu-logo{display:block;max-width:150px;max-height:90px;width:auto;height:auto;object-fit:contain;margin:0 auto 16px}.ecdfu-form .ecdfu-heading{text-align:center;font-size:clamp(24px,4vw,30px);font-weight:700;line-height:1.25;margin:0 0 10px;color:var(--ecdfu-primary)}.ecdfu-form .ecdfu-intro{text-align:center;color:#53647a;margin:0 0 25px;font-size:16px}.ecdfu-form form>p{margin:0 0 18px}.ecdfu-form form>p>label{display:block;font-weight:600;margin-bottom:6px}.ecdfu-form input:not([type=checkbox]):not([type=hidden]){display:block;width:100%;max-width:100%;padding:13px 14px;border:1px solid #b9c8da;border-radius:9px;background:#fff;color:#16243c;font-size:16px;min-height:46px}.ecdfu-form input:focus-visible,.ecdfu-form button:focus-visible{outline:3px solid #ffce58;outline-offset:2px}.ecdfu-form .ecdfu-consent label{display:flex;align-items:flex-start;gap:10px;font-weight:400}.ecdfu-form input[type=checkbox]{margin-top:5px;flex-shrink:0}.ecdfu-form .ecdfu-privacy{font-size:13px;color:#53647a}.ecdfu-form .ecdfu-privacy a{color:var(--ecdfu-primary)}.ecdfu-form button[type=submit]{display:block;width:100%;min-height:48px;border:0;border-radius:9px;padding:13px 20px;background:var(--ecdfu-button);color:#fff;font-size:16px;font-weight:700;cursor:pointer}.ecdfu-form .ecdfu-success{padding:16px;border-radius:9px;background:#e7f6eb;color:#173d28}.ecdfu-form .ecdfu-honeypot{position:absolute;left:-9999px;visibility:hidden}
/* Theme variables are used when a theme exposes them; white/blue remains fallback. */
.ecdfu-form.ecdfu-mode-auto{--ecdfu-primary:var(--wp--preset--color--primary,var(--global-palette1,var(--accent-color,#155bb5)));--ecdfu-button:var(--wp--preset--color--primary,var(--global-palette1,var(--accent-color,#155bb5)))}
@media(max-width:600px){.ecdfu-form{margin:14px auto;padding:22px 18px;border-radius:14px}.ecdfu-form .ecdfu-intro{font-size:15px}}

/* Confirmation view: put the thank-you message above the mobile fold. */
.ecdfu-form.ecdfu-is-success{margin-top:8px;padding:20px;box-shadow:none}
.ecdfu-form .ecdfu-success{scroll-margin-top:95px;text-align:center;padding:25px 16px;border:1px solid #b5e3c2}
.ecdfu-form .ecdfu-success h2{font-size:clamp(24px,5vw,30px);line-height:1.2;color:#173d28;margin:0 0 10px}
.ecdfu-form .ecdfu-success p{margin:0;font-size:16px}
@media(max-width:600px){.ecdfu-form.ecdfu-is-success{margin:4px auto;padding:10px;border:0}.ecdfu-form .ecdfu-success{padding:24px 14px;scroll-margin-top:80px}}

/* v0.1.9: Short Message field fits mobile screens. */
.ecdfu-form textarea[name="visitor_message"]{display:block;width:100%;max-width:100%;min-height:90px;padding:12px;border:1px solid #cbd5e1;border-radius:8px;font:inherit;box-sizing:border-box;}
.ecdfu-form textarea[name="visitor_message"]:focus{outline:2px solid var(--ecdfu-primary,#155bb5);outline-offset:1px;}

/* v0.2.10: Compact shortcode-only welcome on phones. */
@media(max-width:600px){
 .ecdfu-form:not(.ecdfu-is-success){margin:8px auto;padding:18px 16px;}
 .ecdfu-form .ecdfu-heading{font-size:25px;line-height:1.2;margin-bottom:7px;}
 .ecdfu-form .ecdfu-intro{font-size:15px;line-height:1.4;margin-bottom:18px;}
 .ecdfu-form form>p{margin-bottom:15px;}
}

/* v0.2.11: Ensure visitor short message remains readable across themes and mobile browsers. */
.ecdfu-form textarea[name="visitor_message"],
.ecdfu-form textarea[name="visitor_message"]:focus{background:#fff;color:#1f2937;-webkit-text-fill-color:#1f2937;font-size:16px;opacity:1;}
.ecdfu-form textarea[name="visitor_message"]::placeholder{color:#6b7280;opacity:1;}
