/* ACE Lead Shield — minimal layout only; inputs and button inherit the theme's styles. */
.als-form { display: flex; flex-direction: column; gap: 12px; width: 100%; max-width: 100%; margin: 0; position: relative; }
.als-form .als-field { position: relative; margin: 0; }
.als-form input[type="text"],
.als-form input[type="tel"],
.als-form input[type="email"] { width: 100%; box-sizing: border-box; margin: 0; }
.als-form .als-field.has-error input { border-color: #d63638 !important; }
.als-form .als-error { display: none; color: #d63638; font-size: 13px; line-height: 1.4; margin-top: 4px; }
.als-form .als-field.has-error .als-error { display: block; }
.als-form .als-hp { position: absolute !important; left: -10000px !important; top: auto !important; width: 1px !important; height: 1px !important; overflow: hidden !important; opacity: 0; pointer-events: none; }
.als-form .als-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 14px; }
.als-form .als-submit { cursor: pointer; }
.als-form .als-submit[disabled] { opacity: .7; cursor: wait; }
.als-form .als-message { font-size: 14px; line-height: 1.4; flex: 1 1 160px; }
.als-form .als-message:empty { display: none; }
.als-form .als-message.is-success { color: #1a7f37; }
.als-form .als-message.is-error { color: #d63638; }
.als-form .als-rc-note { font-size: 11px; line-height: 1.4; opacity: .7; margin: 0; }
.als-form .als-rc-note a { color: inherit; text-decoration: underline; }
