/* ── Forms ── */
.form-group{margin-bottom:var(--space-5)}
.form-label{display:block;font-size:.8125rem;font-weight:600;color:var(--color-text-primary);margin-bottom:.5rem}
.form-label--required::after{content:' *';color:var(--color-error-600)}
.form-input,.form-textarea,.form-select{width:100%;padding:.75rem 1rem;border:1.5px solid var(--color-border-default);border-radius:var(--radius-lg);font-family:var(--font-body);font-size:.9375rem;color:var(--color-text-primary);background:#fff;transition:border-color var(--dur-fast),box-shadow var(--dur-fast);appearance:none}
.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-brand-primary);box-shadow:0 0 0 3px rgba(41,82,224,.12)}
.form-input.is-error,.form-textarea.is-error{border-color:var(--color-error-600)}
.form-error{font-size:.75rem;color:var(--color-error-600);margin-top:.375rem;display:flex;align-items:center;gap:.375rem}
.form-textarea{resize:vertical;min-height:130px}
.form-select-wrapper{position:relative}
.form-select-wrapper::after{content:'';position:absolute;right:1rem;top:50%;transform:translateY(-50%);border:5px solid transparent;border-top-color:var(--color-text-tertiary);pointer-events:none}
.form-hint{font-size:.75rem;color:var(--color-text-tertiary);margin-top:.375rem}
.form-success{background:var(--color-success-100);border:1px solid #6ee7b7;border-radius:var(--radius-lg);padding:1rem 1.25rem;color:#065f46;font-size:.9rem;display:flex;align-items:center;gap:.625rem}
