.form{gap:var(--space-5);background:var(--wall);color:var(--wall-ink);color-scheme:light;border-top:6px solid var(--bay);padding:clamp(1.25rem,.8rem + 2vw,2.25rem);display:grid}.form :focus-visible{outline-color:var(--wall-ink)}.form__row{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form__row--3{grid-template-columns:repeat(3,minmax(0,1fr))}.field{align-content:start;gap:.4rem;display:grid}.field__label{font-size:.95rem;font-weight:680}.field__label small{color:var(--wall-ink-2);margin-left:.35rem;font-weight:450}.field__hint{color:var(--wall-ink-2);font-size:.8rem}.field__error{color:#b3261e;align-items:center;gap:.35rem;font-size:.85rem;font-weight:600;display:flex}.field__error:empty{display:none}.field input:not([type=checkbox],[type=radio],[type=file]),.field select,.field textarea{border:1px solid var(--wall-line);border-radius:var(--radius);width:100%;min-height:3.1rem;color:var(--wall-ink);caret-color:var(--wall-ink);background:#f7f6f2;padding:.7rem .85rem;transition:border-color .14s,box-shadow .14s}.field textarea{resize:vertical;min-height:8.5rem;line-height:1.5}.field input::placeholder,.field textarea::placeholder{color:#6a6e73}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--wall-ink-2)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--wall-ink);box-shadow:0 0 0 3px color-mix(in oklab, var(--bay) 45%, transparent);outline:none}.field [aria-invalid=true]{background:#fbf1ef!important;border-color:#b3261e!important}.field select{appearance:none;background:linear-gradient(45deg, transparent 50%, var(--wall-ink) 50%) calc(100% - 1.05rem) 55% / .4rem .4rem no-repeat, linear-gradient(-45deg, transparent 50%, var(--wall-ink) 50%) calc(100% - .65rem) 55% / .4rem .4rem no-repeat, #f7f6f2;padding-right:2.2rem}.choice-group{border:0;gap:.5rem;padding:0;display:grid}.choice-group legend{margin-bottom:.4rem;font-size:.95rem;font-weight:680}.choices{flex-wrap:wrap;gap:.5rem;display:flex}.choice{position:relative}.choice input{opacity:0;cursor:pointer;position:absolute;inset:0}.choice span{border:1px solid var(--wall-line);border-radius:var(--radius);background:#f7f6f2;align-items:center;min-height:2.9rem;padding:.55rem .95rem;font-weight:620;transition:background-color .14s,color .14s,border-color .14s;display:inline-flex}.choice input:hover+span{border-color:var(--wall-ink-2)}.choice input:checked+span{background:var(--wall-ink);color:var(--wall);border-color:var(--wall-ink)}.choice input:focus-visible+span{outline:2px solid var(--wall-ink);outline-offset:2px}.upload{padding:var(--space-4);border:1px dashed var(--wall-ink-2);border-radius:var(--radius);background:#f2f1ec;justify-items:start;gap:.35rem;display:grid}.upload input[type=file]{max-width:100%;font-size:.9rem}.upload input[type=file]::file-selector-button{border-radius:var(--radius);background:var(--wall-ink);color:var(--wall);cursor:pointer;border:0;margin-right:.75rem;padding:.55rem .9rem;font-weight:700}.consent{grid-template-columns:auto 1fr;align-items:start;gap:.7rem;font-size:.92rem;display:grid}.consent input{width:1.35rem;height:1.35rem;accent-color:var(--wall-ink);margin-top:.1rem}.hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form__submit{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.form__submit .pitboard[aria-busy=true]{pointer-events:none;opacity:.75}.form__submit .pitboard[aria-busy=true] svg{animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.form__note{color:var(--wall-ink-2);max-width:40ch;font-size:.8rem}.form__status{padding:var(--space-4);border-radius:var(--radius);font-weight:600}.form__status:empty{display:none}.form__status[data-kind=error]{color:#6b1510;background:#f7dcd8}.form__status[data-kind=success]{color:#0d4a24;background:#d6f2df}.form-done{gap:var(--space-4);background:var(--wall);color:var(--wall-ink);border-top:6px solid var(--sector-green);padding:clamp(1.5rem,1rem + 2vw,2.5rem);display:grid}.form-done h3{font-size:var(--step-3)}@media (width<=640px){.form__row,.form__row--3{grid-template-columns:1fr}}
