/* Amit Forms. Inherits the theme's tokens, so it follows light and dark. */
.amf{
  --amf-line: var(--line, #e3e9f1);
  --amf-text: var(--text, #101826);
  --amf-muted: var(--muted, #51617a);
  --amf-dim: var(--dim, #5e6d84);
  --amf-accent: var(--accent, #087d49);
  --amf-panel: var(--panel, #fff);
  --amf-err: #c0392b;
  background: var(--amf-panel);
  border: 1px solid var(--amf-line);
  border-radius: 14px;
  padding: 26px 26px 24px;
  box-shadow: var(--card-shadow, 0 1px 3px rgba(16,40,80,.05));
  max-width: 640px;
}
html[data-theme="dark"] .amf{ --amf-err:#ff8a7a }

.amf-title{ font-size:20px; line-height:1.25; margin:0 0 6px }
.amf-intro{ color:var(--amf-muted); margin:0 0 20px; font-size:14.5px; line-height:1.6 }

.amf-grid{ display:grid; grid-template-columns:1fr 1fr; gap:16px 18px }
.amf-row{ margin:0; display:flex; flex-direction:column; gap:6px }
.amf-wide, .amf-row:only-child{ grid-column:1 / -1 }
@media(max-width:620px){ .amf-grid{ grid-template-columns:1fr } }

.amf label{ font-size:13.5px; font-weight:600; color:var(--amf-text) }
.amf-opt{ font-weight:400; color:var(--amf-dim); font-size:12px }
.amf-hint{ font-size:12px; color:var(--amf-dim) }

.amf input[type=text],.amf input[type=email],.amf input[type=url],.amf input[type=tel],.amf textarea{
  font:inherit; font-size:15px; color:var(--amf-text);
  background:var(--bg, #fff);
  border:1px solid var(--amf-line); border-radius:9px;
  padding:11px 13px; width:100%; box-sizing:border-box;
  transition:border-color .15s, box-shadow .15s;
}
.amf textarea{ resize:vertical; min-height:120px; line-height:1.6 }
.amf input:focus,.amf textarea:focus{
  outline:none; border-color:var(--amf-accent);
  box-shadow:0 0 0 3px color-mix(in srgb, var(--amf-accent) 18%, transparent);
}
.amf .has-err input,.amf .has-err textarea{ border-color:var(--amf-err) }
.amf-err{ font-size:12.5px; color:var(--amf-err); font-weight:500 }

.amf-consent{ margin:20px 0 0; font-size:13px; color:var(--amf-muted); line-height:1.55 }
.amf-consent label{ display:flex; gap:9px; align-items:flex-start; font-weight:400; font-size:13px }
.amf-consent input{ margin-top:3px; flex:0 0 auto; accent-color:var(--amf-accent); width:16px; height:16px }
.amf-consent a{ color:var(--amf-accent) }

.amf-submit{ margin-top:18px; min-height:44px }
.amf-submit[disabled]{ opacity:.6; cursor:progress }

.amf-status{ margin:0 0 16px; padding:11px 14px; border-radius:9px; font-size:14px; line-height:1.5 }
.amf-status.is-err{ background:color-mix(in srgb, var(--amf-err) 10%, transparent); color:var(--amf-err); border:1px solid color-mix(in srgb, var(--amf-err) 35%, transparent) }
.amf-status.is-ok{ background:var(--accent-soft, rgba(8,125,73,.08)); color:var(--amf-accent); border:1px solid var(--accent-border, rgba(8,125,73,.45)) }

.amf-thanks{ font-size:16px; line-height:1.6; color:var(--amf-text); margin:4px 0 0 }
.amf-thanks:focus{ outline:none }

/* The field a person never sees. Kept out of the layout and out of the
   accessibility tree, but not display:none, which some bots check for. */
.amf-hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden }
