/* Terms acceptance box (Legal handoff 2026-11-02): 24px tick target, visible focus, 4.5:1 text contrast. */
.tos-accept { display: flex; flex-wrap: wrap; align-items: flex-start; gap: .5rem .6rem; margin: 1rem 0 .75rem; flex: 1 1 100%; max-width: 46rem; }
.tos-accept input[type="checkbox"] { width: 24px; height: 24px; min-width: 24px; margin: .1rem 0 0; accent-color: #14213d; cursor: pointer; }
.tos-accept input[type="checkbox"]:focus-visible { outline: 3px solid #1f4fd1; outline-offset: 2px; }
.tos-accept input[type="checkbox"][aria-invalid="true"] { outline: 2px solid #a4001d; outline-offset: 2px; }
.tos-accept label { flex: 1 1 0; min-width: 12rem; color: inherit; line-height: 1.45; cursor: pointer; }
.tos-accept label a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.tos-accept label a:focus-visible { outline: 3px solid #1f4fd1; outline-offset: 2px; }
.tos-accept .field-error { flex: 1 1 100%; margin: 0; padding-left: calc(24px + .6rem); color: #a4001d; font-weight: 600; }
.tos-accept .field-error[hidden] { display: none; }
.tool-form, .contrast-form { flex-wrap: wrap; }
