.textarea-control{width:100%;min-height:9rem;padding:var(--space-3) var(--space-4);background-color:var(--input);color:var(--foreground);border:var(--stroke-sm) solid var(--border);border-radius:var(--radius-base);font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-base);resize:vertical;transition:border-color var(--motion-fast) var(--easing-standard),box-shadow var(--motion-fast) var(--easing-standard)}.textarea-control:hover:not(.is-disabled):not(:focus){border-color:color-mix(in oklab,var(--border) 60%,var(--foreground) 40%)}.textarea-control::placeholder{color:var(--muted-foreground)}.textarea-control:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in oklab,var(--primary) 25%,transparent)}.textarea-control.is-invalid{border-color:var(--destructive,#e5484d)}.textarea-control.is-invalid:focus{box-shadow:0 0 0 3px color-mix(in oklab,var(--destructive,#e5484d) 25%,transparent)}.textarea-control.is-disabled{opacity:.55;cursor:not-allowed;resize:none}.checkbox-consent{display:flex;flex-direction:column;gap:var(--space-2)}.checkbox-consent-label{display:grid;grid-template-columns:1.25rem 1fr;grid-gap:var(--space-3);gap:var(--space-3);align-items:start;cursor:pointer}.checkbox-consent-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.checkbox-consent-check{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;background-color:var(--input);border:var(--stroke-sm) solid var(--border);border-radius:var(--radius-sm);flex-shrink:0;margin-top:.125rem;transition:border-color var(--motion-fast) var(--easing-standard),background-color var(--motion-fast) var(--easing-standard)}.checkbox-consent-check:after{content:"";display:none;width:.375rem;height:.625rem;border:2px solid var(--background);border-top:0;border-left:0;transform:rotate(45deg) translateY(-.0625rem)}.checkbox-consent-input:checked+.checkbox-consent-check{background-color:var(--primary);border-color:var(--primary)}.checkbox-consent-input:checked+.checkbox-consent-check:after{display:block}.checkbox-consent-input:focus-visible+.checkbox-consent-check{outline:2px solid var(--ring);outline-offset:2px}.checkbox-consent-text{font-size:var(--font-size-sm);color:var(--muted-foreground);line-height:var(--line-height-sm)}.checkbox-consent-text a{color:var(--primary);text-decoration:underline;text-underline-offset:2px}.checkbox-consent-error{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--font-size-xs);color:var(--destructive,#e5484d)}.checkbox-consent-error svg{width:.875rem;height:.875rem;flex-shrink:0}.has-error .checkbox-consent-check{border-color:var(--destructive,#e5484d)}.checkbox-consent-label:has(.checkbox-consent-input:disabled){opacity:.55;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.submit-button-spinner{animation:spin .75s linear infinite}.form-error-message{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background-color:color-mix(in oklab,var(--destructive,#e5484d) 10%,var(--input));border:var(--stroke-sm) solid var(--destructive,#e5484d);border-radius:var(--radius-base);color:var(--destructive,#e5484d);font-size:var(--font-size-sm);line-height:var(--line-height-sm)}.form-error-message svg{flex-shrink:0;margin-top:.1em}.form-success-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-5);padding:var(--space-8) var(--space-6);background-color:var(--sidebar);border-radius:var(--radius-base);text-align:center}.form-success-state-icon{color:var(--primary)}.form-success-state-content{display:flex;flex-direction:column;gap:var(--space-2)}.form-success-state-title{font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--foreground);line-height:var(--line-height-tight)}.form-success-state-body{font-size:var(--font-size-base);color:var(--muted-foreground);line-height:var(--line-height-base)}.form-success-state-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}