/* Shared contact/workbook controls; layout remains in each page stylesheet. */
.form-notice { margin-bottom: 20px; color: var(--muted); font-size: 14px; line-height: 1.7; }
.form-field + .form-field { margin-top: 18px; }
.form-field label { display: block; margin-bottom: 8px; font-size: 14px; font-weight: 500; }
.form-field input, .form-field textarea { display: block; width: 100%; min-height: 54px; padding: 13px 16px; border: 1px solid var(--field-border); border-radius: 0; background: var(--white); color: var(--ink); font: inherit; caret-color: var(--ink); }
.form-field textarea { min-height: 160px; resize: vertical; }
.form-field input::placeholder, .form-field textarea::placeholder { color: var(--muted); opacity: 1; }
.form-field input:hover, .form-field textarea:hover { border-color: var(--ink); }
.form-field input:focus-visible, .form-field textarea:focus-visible { outline: 2px solid var(--focus); outline-offset: 3px; }
.form-field input:user-invalid, .form-field textarea:user-invalid { border-color: #a23226; }
.form-hint { margin-top: 8px; color: var(--muted); font-size: 13px; line-height: 1.7; }
.preview-form .button { width: 100%; justify-content: space-between; margin-top: 24px; border: 0; cursor: pointer; }
.form-status { margin-top: 18px; font-size: 14px; line-height: 1.7; }
.form-original-link { display: inline-flex; align-items: center; min-height: 44px; margin-top: 6px; gap: 8px; font-size: 13px; text-decoration: underline; }
