/* Assisting AI — Contact Form. Uses design tokens from the core plugin (site.css). */

.aai-form-card { background: var(--card, #fff); border-radius: calc(var(--r-lg, 24px) + 4px); box-shadow: 0 0 0 1px var(--line, #E2DED5), var(--shadow-3, 0 30px 60px -30px rgba(0,0,0,.3)); padding: clamp(26px, 3.5vw, 40px); position: relative; }
.aai-form-card [hidden] { display: none !important; }
.aai-form-card__head { margin-bottom: 26px; }
.aai-form-card__head h3, .aai-form-done h3 { font-family: var(--f-display, inherit); font-size: 26px; letter-spacing: -.02em; margin-bottom: 6px; }
.aai-form-card__head p, .aai-form-done p { font-size: 15px; color: var(--muted, #5C6059); line-height: 1.55; }

.aai-form { display: grid; gap: 18px; }
.aai-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.aai-field { display: grid; gap: 7px; align-content: start; }
.aai-field label { font-size: 13.5px; font-weight: 550; color: var(--ink-2, #252723); }
.aai-field input, .aai-field select, .aai-field textarea { width: 100%; font: inherit; font-size: 15px; color: var(--ink, #0D0E0C); background: var(--paper, #F5F3EE); border: 1px solid var(--line, #E2DED5); border-radius: 12px; padding: 12px 14px; outline: none; transition: border-color .2s, box-shadow .2s, background-color .2s; -webkit-appearance: none; appearance: none; }
.aai-field textarea { resize: vertical; min-height: 130px; line-height: 1.55; }
.aai-field input::placeholder, .aai-field textarea::placeholder { color: #A3A69E; }
.aai-field input:focus, .aai-field select:focus, .aai-field textarea:focus { border-color: var(--ink, #0D0E0C); background: #fff; box-shadow: 0 0 0 4px rgba(13,14,12,.06); }
.aai-field [aria-invalid="true"] { border-color: #D6453D; box-shadow: 0 0 0 4px rgba(214,69,61,.1); }
.aai-field__err { font-size: 13px; color: #B3261E; min-height: 0; }
.aai-field__err:empty { display: none; }
.aai-select { position: relative; }
.aai-select::after { content: ""; position: absolute; right: 16px; top: 50%; width: 8px; height: 8px; border-right: 1.6px solid var(--ink, #0D0E0C); border-bottom: 1.6px solid var(--ink, #0D0E0C); transform: translateY(-70%) rotate(45deg); pointer-events: none; }
.aai-select select { padding-right: 40px; cursor: pointer; }
/* Honeypot: off-screen, not display:none (some bots skip hidden fields). */
.aai-hp { position: absolute !important; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.aai-form__note { display: flex; align-items: center; justify-content: center; gap: 7px; font-size: 13px; color: var(--faint, #8A8D85); }
.aai-form-error { background: #FDECEA; color: #A5322B; border-radius: 12px; padding: 12px 14px; font-size: 14px; margin-bottom: 18px; }

.aai-form-done { padding: 10px 0; outline: none; }
.aai-form-done__icon { width: 52px; height: 52px; border-radius: 50%; background: var(--green-soft, #DDF3E9); color: var(--green, #17A36D); display: grid; place-items: center; font-size: 26px; margin-bottom: 20px; }
.aai-form-done p { margin-bottom: 20px; }

@media (max-width: 640px) {
	.aai-form__row { grid-template-columns: 1fr; }
}
.aai-form__note a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
