.tlcmes-page-main {
    padding-block: clamp(1.5rem, 3vw, 3rem) 4rem;
    background: color-mix(in srgb, var(--wp--preset--color--surface, #f3f3f3) 50%, var(--wp--preset--color--paper, #fff));
}
.tlcmes {
    --tlcmes-sticky-offset: 180px;

    color: var(--wp--preset--color--ink, #202020);
    font-family: var(--tlc-font-sans, sans-serif);
    font-size: 1rem;
    line-height: 1.55;
    max-width: 1230px;
    margin-inline: auto;
}
.tlcmes *, .tlcmes *::before, .tlcmes *::after { box-sizing: border-box; }
.tlcmes [hidden] { display: none !important; }
.tlcmes p { margin: 0 0 1rem; }
.tlcmes svg { flex-shrink: 0; }
.tlcmes-intro { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 2rem; margin-bottom: 1.75rem; }
.tlcmes-intro-copy { flex: 1 1 600px; max-width: 850px; min-width: 0; }
.tlcmes .tlcmes-eyebrow { margin-bottom: .85rem; font-size: .75rem; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }
.tlcmes .tlcmes-title { margin: 0 0 1rem; font-size: clamp(1.8rem, 2.8vw, 2.5rem); line-height: 1.18; font-weight: 600; letter-spacing: -.035em; text-wrap: balance; }
.tlcmes .tlcmes-subtitle { margin: 0; color: var(--wp--preset--color--muted, #707070); font-size: .9375rem; }
.tlcmes-pdf-link { display: inline-flex; align-items: center; justify-content: center; gap: .75rem; flex-shrink: 0; min-height: 64px; padding: .8rem 1rem; border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 8px; background: var(--wp--preset--color--paper, #fff); text-decoration: none; color: inherit; font-size: .875rem; font-weight: 500; }
.tlcmes-pdf-link small { display: block; color: var(--wp--preset--color--muted, #707070); font-size: .75rem; font-weight: 400; margin-top: .15rem; }
.tlcmes-pdf-link:hover { border-color: var(--wp--preset--color--ink, #202020); }
.tlcmes-notice { display: flex; align-items: flex-start; gap: .85rem; padding: 1.15rem 1.25rem; margin-bottom: 2rem; border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 8px; background: var(--wp--preset--color--paper, #fff); }
.tlcmes-notice > svg { width: 20px; height: 20px; margin-top: .1rem; }
.tlcmes-notice p { margin: 0; font-size: .875rem; }
.tlcmes-notice p + p { margin-top: .2rem; }
.tlcmes-layout { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 2.5rem; align-items: start; }
.tlcmes-main-form, .tlcmes-sidebar { min-width: 0; }
.tlcmes-sidebar { align-self: stretch; }
.tlcmes-sidebar-inner { position: sticky; top: var(--tlcmes-sticky-offset); }
.tlcmes .tlcmes-nav-heading { display: flex; justify-content: space-between; align-items: baseline; gap: .5rem; margin: .2rem 0 1rem; font-size: .875rem; font-weight: 600; }
.tlcmes-nav-heading > span { color: var(--wp--preset--color--muted, #707070); font-size: .75rem; font-weight: 400; }
.tlcmes-nav ol { display: grid; gap: .3rem; margin: 0; padding: 0; list-style: none; }
.tlcmes-nav li { margin: 0; }
.tlcmes-nav a { display: flex; align-items: center; gap: .65rem; min-height: 46px; padding: .4rem .6rem; border: 1px solid transparent; border-radius: 6px; color: inherit; font-size: .875rem; text-decoration: none; }
.tlcmes-nav a:hover { background: var(--wp--preset--color--surface, #f3f3f3); }
.tlcmes-nav a[aria-current] { background: var(--wp--preset--color--paper, #fff); border-color: var(--wp--preset--color--border, #d9d9d9); font-weight: 600; }
.tlcmes-nav-number { display: inline-grid; place-content: center; width: 28px; height: 28px; flex-shrink: 0; font-size: .75rem; font-variant-numeric: tabular-nums; color: var(--wp--preset--color--muted, #707070); }
.tlcmes-nav a[aria-current] .tlcmes-nav-number { border-radius: 4px; background: var(--wp--preset--color--ink, #202020); color: var(--wp--preset--color--paper, #fff); }
.tlcmes-preparation { margin-top: 1.75rem; padding-top: 1.5rem; border-top: 1px solid var(--wp--preset--color--border, #d9d9d9); font-size: .8125rem; }
.tlcmes-preparation h2 { margin: 0 0 .65rem; font-size: .9375rem; font-weight: 600; }
.tlcmes-preparation p { margin: 0; color: var(--wp--preset--color--muted, #707070); }
.tlcmes-preparation ul { padding: 0 0 0 1rem; margin: .75rem 0 1rem; }
.tlcmes-preparation li { margin: .4rem 0; }
.tlcmes-preparation a { display: inline-flex; align-items: center; gap: .4rem; color: inherit; text-underline-offset: 3px; }
.tlcmes-preparation svg { width: 15px; height: 15px; }
.tlcmes .tlcmes-form-instructions { margin: 0 0 1rem; color: var(--wp--preset--color--muted, #707070); font-size: .8125rem; }
.tlcmes-form-instructions > span { color: var(--wp--preset--color--ink, #202020); font-weight: 600; }
.tlcmes-section { min-width: 0; margin: 0 0 1.5rem; padding: 1.75rem; border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 10px; background: var(--wp--preset--color--paper, #fff); scroll-margin-top: var(--tlcmes-sticky-offset); }
.tlcmes-section > legend { float: left; display: flex; align-items: center; gap: .75rem; width: 100%; max-width: 100%; margin: 0 0 1.4rem; padding: 0; font-size: 1.1875rem; font-weight: 600; line-height: 1.35; letter-spacing: -.015em; }
.tlcmes-section > :not(legend) { clear: both; }
.tlcmes-step { flex-shrink: 0; display: inline-grid; place-content: center; width: 32px; height: 32px; background: var(--wp--preset--color--surface, #f3f3f3); border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 6px; font-size: .75rem; font-weight: 500; letter-spacing: 0; font-variant-numeric: tabular-nums; }
.tlcmes-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.2rem 1.4rem; }
.tlcmes-field { min-width: 0; }
.tlcmes-full { grid-column: 1 / -1; }
.tlcmes-field > label { display: block; margin-bottom: .4rem; font-size: .875rem; font-weight: 500; }
.tlcmes input:not([type="checkbox"], [type="radio"], [type="hidden"]), .tlcmes textarea {
    width: 100%; max-width: 100%; min-height: 46px; padding: .7rem .8rem;
    color: inherit; background: var(--wp--preset--color--paper, #fff);
    border: 1px solid color-mix(in srgb, var(--wp--preset--color--ink, #202020) 48%, var(--wp--preset--color--paper, #fff)); border-radius: 5px;
    font: inherit; font-size: 1rem; line-height: 1.4;
}
.tlcmes textarea { resize: vertical; min-height: 88px; }
.tlcmes input[readonly] { border-color: var(--wp--preset--color--border, #d9d9d9); background: var(--wp--preset--color--surface, #f3f3f3); }
.tlcmes input[type="checkbox"], .tlcmes input[type="radio"] { width: 19px; height: 19px; min-width: 19px; padding: 0; margin: .15rem 0 0; accent-color: var(--wp--preset--color--ink, #202020); }
.tlcmes-field > .tlcmes-check { display: flex; align-items: flex-start; gap: .7rem; margin: 0; font-weight: 400; font-size: .9375rem; line-height: 1.55; }
.tlcmes-field-checkbox { padding: .7rem .8rem; border: 1px solid transparent; border-radius: 5px; }
.tlcmes-field-checkbox:has(input:checked) { background: var(--wp--preset--color--surface, #f3f3f3); }
.tlcmes-field-checkbox:focus-within { border-color: var(--wp--preset--color--border, #d9d9d9); }
.tlcmes-field-checkbox + .tlcmes-field-checkbox { margin-top: -.9rem; }
#tlcmes-section-3 .tlcmes-grid, #tlcmes-section-4 .tlcmes-grid { row-gap: 0; }
#tlcmes-section-3 .tlcmes-field-checkbox, #tlcmes-section-4 .tlcmes-field-checkbox { margin-top: 0; border-bottom-color: var(--wp--preset--color--border, #d9d9d9); border-radius: 0; }
#tlcmes-section-3 .tlcmes-field-checkbox:last-child, #tlcmes-section-4 .tlcmes-field-checkbox:has(+ .tlcmes-field-textarea) { border-bottom-color: transparent; }
#tlcmes-section-4 .tlcmes-field-textarea { margin-top: 1rem; }
.tlcmes-choices { border: 0; padding: 0; margin: 0; min-width: 0; }
.tlcmes-choices > legend { padding: 0; font-size: .875rem; font-weight: 500; margin-bottom: .6rem; }
.tlcmes-type-options { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .5rem; }
.tlcmes-type-options label { display: flex; align-items: center; justify-content: center; gap: .4rem; margin: 0; padding: .65rem .4rem; min-height: 48px; border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 5px; font-size: .875rem; cursor: pointer; }
.tlcmes-type-options label:has(input:checked) { border-color: var(--wp--preset--color--ink, #202020); background: var(--wp--preset--color--surface, #f3f3f3); font-weight: 600; }
.tlcmes-type-options input[type="radio"] { width: 16px; min-width: 16px; height: 16px; margin: 0; }
.tlcmes-photo-grid { gap: 1rem; }
.tlcmes-photo-grid > .tlcmes-field-photo { display: flex; flex-direction: column; grid-column: auto; padding: 1rem; border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 7px; }
.tlcmes-photo-grid > [data-field="photo_ducted"] { grid-column: 1 / -1; }
.tlcmes-field-photo .tlcmes-check { font-size: .875rem; margin-bottom: 1rem; }
.tlcmes-upload-target { position: relative; margin-top: auto; border: 1px dashed var(--wp--preset--color--muted, #707070); border-radius: 5px; background: color-mix(in srgb, var(--wp--preset--color--surface, #f3f3f3) 55%, var(--wp--preset--color--paper, #fff)); }
.tlcmes-upload-target:hover { border-style: solid; background: var(--wp--preset--color--surface, #f3f3f3); }
.tlcmes-upload-target:focus-within { outline: 2px solid var(--wp--preset--color--ink, #202020); outline-offset: 3px; }
.tlcmes-upload-target > .tlcmes-upload-label { display: grid; justify-items: center; gap: .3rem; margin: 0; padding: 1rem; text-align: center; font-size: .875rem; font-weight: 500; }
.tlcmes-upload-label > small { display: block; color: var(--wp--preset--color--muted, #707070); font-size: .75rem; font-weight: 400; }
.tlcmes-upload-target > label > svg { width: 22px; height: 22px; margin-bottom: .2rem; }
.tlcmes .tlcmes-upload-target input[type="file"] { position: absolute; inset: 0; width: 100%; height: 100%; min-height: 0; margin: 0; padding: 0; opacity: 0; cursor: pointer; }
.tlcmes input[type="file"] { font-size: .8125rem; padding: .4rem; }
.tlcmes input[type="file"]::file-selector-button { padding: .6rem .75rem; margin-right: .65rem; min-height: 38px; border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 4px; background: var(--wp--preset--color--surface, #f3f3f3); color: var(--wp--preset--color--ink, #202020); font: inherit; cursor: pointer; }
.tlcmes-file-status { display: block; font-size: .75rem; margin-top: .5rem; overflow-wrap: anywhere; color: var(--wp--preset--color--muted, #707070); }
.tlcmes-file-status:empty { display: none; }
.tlcmes-previews { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .75rem; }
.tlcmes-previews img { display: block; width: 64px; height: 56px; object-fit: cover; border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 4px; }
.tlcmes-help { font-size: .8125rem; color: var(--wp--preset--color--muted, #707070); font-weight: 400; }
.tlcmes-field-error { display: block; font-size: .8125rem; margin-top: .35rem; font-weight: 500; line-height: 1.5; overflow-wrap: anywhere; }
.tlcmes-field-error:empty { display: none; }
.tlcmes [aria-invalid="true"] { outline: 2px solid var(--wp--preset--color--ink, #202020); outline-offset: 2px; }
.tlcmes-upload-target:has([aria-invalid="true"]) { outline: 2px solid var(--wp--preset--color--ink, #202020); outline-offset: 2px; }
.tlcmes-declaration { font-size: .9375rem; line-height: 1.7; margin-bottom: 1.25rem; }
.tlcmes-declaration p:last-child { padding: 1rem 1.15rem; border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 6px; background: var(--wp--preset--color--surface, #f3f3f3); font-size: .875rem; }
.tlcmes-signature-surface { position: relative; overflow: hidden; border: 1px solid var(--wp--preset--color--muted, #707070); border-radius: 6px; background: var(--wp--preset--color--paper, #fff); }
.tlcmes canvas { display: block; width: 100%; aspect-ratio: 10 / 3; height: auto; border: 0; background: transparent; touch-action: none; cursor: crosshair; }
.tlcmes-signature-hint { pointer-events: none; position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .5rem; color: var(--wp--preset--color--muted, #707070); font-size: .875rem; }
.tlcmes-signature-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .6rem 0 1rem; }
.tlcmes-signature-status { color: var(--wp--preset--color--muted, #707070); font-size: .75rem; }
.tlcmes .tlcmes-clear { margin: 0; min-height: 36px; padding: .35rem .65rem; border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 4px; background: var(--wp--preset--color--paper, #fff); color: inherit; font-size: .75rem; font-weight: 500; }
.tlcmes-signature-upload { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1.5rem; padding: 1rem; border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 6px; background: var(--wp--preset--color--surface, #f3f3f3); }
.tlcmes-signature-upload > label { flex: 1 1 220px; font-size: .8125rem; font-weight: 500; }
.tlcmes .tlcmes-signature-upload > input[type="file"] { flex: 1 1 260px; width: 260px; border: 0; padding: 0; background: transparent; }
.tlcmes-submit-panel { padding: 1.5rem; border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 10px; background: var(--wp--preset--color--paper, #fff); }
.tlcmes-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.5rem; }
.tlcmes-actions > div { max-width: 340px; }
.tlcmes-actions strong { display: block; margin-bottom: .35rem; font-size: 1rem; font-weight: 600; }
.tlcmes-actions p { margin: 0; color: var(--wp--preset--color--muted, #707070); font-size: .8125rem; }
.tlcmes button { font: inherit; cursor: pointer; }
.tlcmes button[type="submit"] { display: inline-flex; align-items: center; justify-content: center; gap: .85rem; flex-shrink: 0; min-height: 48px; padding: .8rem 1.2rem; border: 1px solid var(--wp--preset--color--brand, #ffb91f); border-radius: 5px; background: var(--wp--preset--color--brand, #ffb91f); color: var(--wp--preset--color--ink, #202020); font-size: .875rem; font-weight: 600; }
.tlcmes button[type="submit"] > svg { width: 18px; height: 18px; }
.tlcmes button[type="submit"]:hover { border-color: var(--wp--preset--color--ink, #202020); }
.tlcmes button:disabled { opacity: .65; cursor: wait; }
.tlcmes .tlcmes-submit-panel > .tlcmes-help { padding-top: 1rem; margin: 1.15rem 0 0; border-top: 1px solid var(--wp--preset--color--border, #d9d9d9); font-size: .75rem; }
.tlcmes-submit-status:not(:empty) { display: block; padding-top: 1rem; font-size: .875rem; }
.tlcmes .tlcmes-archive-note { margin: 1.15rem 0 0; text-align: center; font-size: .75rem; color: var(--wp--preset--color--muted, #707070); }
.tlcmes :is(input, textarea, button, a, fieldset):focus-visible { outline: 2px solid var(--wp--preset--color--ink, #202020); outline-offset: 3px; }
.tlcmes-feedback { padding: 1.5rem; margin: 0 0 1.5rem; border: 1px solid var(--wp--preset--color--ink, #202020); border-radius: 10px; background: var(--wp--preset--color--paper, #fff); scroll-margin-top: var(--tlcmes-sticky-offset); }
.tlcmes-feedback h2 { margin: 0 0 .75rem; font-size: 1.2rem; line-height: 1.4; }
.tlcmes-feedback p:last-child { margin-bottom: 0; }
.tlcmes-feedback:focus { outline: 3px solid var(--wp--preset--color--ink, #202020); outline-offset: 4px; }
.tlcmes-feedback a { text-decoration: underline; text-underline-offset: .18em; overflow-wrap: anywhere; }
.tlcmes-layout:has(.tlcmes-sidebar[hidden]) { grid-template-columns: minmax(0, 1fr); }
.tlcmes-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }

/* The admin view remains separate from the public form. */
.tlcmes-admin { max-width: 1000px; padding-block: 1rem; }
.tlcmes-admin svg { display: block; max-width: 600px; width: 100%; background: #fff; border: 1px solid #c3c4c7; }
.tlcmes-admin label { display: block; margin-block: .75rem .25rem; font-weight: 600; }
.tlcmes-admin input:not([type="hidden"]), .tlcmes-admin textarea, .tlcmes-admin select { width: min(100%, 600px); }
.tlcmes-admin textarea { min-height: 100px; }

@media (width <= 1050px) {
    .tlcmes-layout { grid-template-columns: 190px minmax(0, 1fr); gap: 1.5rem; }
    .tlcmes-intro { align-items: flex-start; }
    .tlcmes-intro-copy { max-width: 700px; }
    .tlcmes-section { padding: 1.4rem; }
    .tlcmes-type-options { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .tlcmes-actions { flex-direction: column; align-items: stretch; }
    .tlcmes-actions > div { max-width: none; }
}
@media (width <= 900px) {
    body.tlcmes-bottom-nav-visible { padding-bottom: var(--tlcmes-bottom-nav-height, calc(80px + env(safe-area-inset-bottom, 0px))); }
    .tlcmes-layout { display: block; }
    .tlcmes-sidebar { margin-bottom: 1.25rem; }
    .tlcmes-sidebar-inner { position: static; }
    .tlcmes-preparation { display: none; }
    .tlcmes-nav { position: relative; }
    .tlcmes-nav a { min-height: 48px; padding: .45rem .65rem; }
    .tlcmes .tlcmes-nav-heading { margin-bottom: .5rem; }
    .tlcmes-nav-mobile .tlcmes-sidebar { position: fixed; z-index: 40; inset-inline: 0; bottom: 0; margin: 0; padding-bottom: env(safe-area-inset-bottom, 0); border-top: 1px solid var(--wp--preset--color--border, #d9d9d9); background: var(--wp--preset--color--surface, #f3f3f3); box-shadow: 0 -4px 18px rgb(0 0 0 / 6%); }
    .tlcmes .tlcmes-nav-toggle { display: flex; align-items: center; gap: 1rem; width: 100%; margin: 0; padding: .7rem max(1rem, env(safe-area-inset-right, 0px)) .7rem max(1rem, env(safe-area-inset-left, 0px)); border: 0; border-radius: 0; background: var(--wp--preset--color--surface, #f3f3f3); color: inherit; text-align: left; }
    .tlcmes-nav-toggle:hover { background: color-mix(in srgb, var(--wp--preset--color--surface, #f3f3f3) 70%, var(--wp--preset--color--paper, #fff)); }
    .tlcmes .tlcmes-nav-toggle:focus-visible { outline-offset: -4px; }
    .tlcmes-nav-copy { display: grid; flex: 1; min-width: 0; gap: .3rem; }
    .tlcmes-nav-context { display: flex; justify-content: space-between; flex-wrap: wrap; gap: .15rem .5rem; font-size: .75rem; font-weight: 500; }
    .tlcmes-nav-context > span { color: var(--wp--preset--color--muted, #707070); font-weight: 400; }
    .tlcmes-nav-current { display: flex; align-items: center; gap: .65rem; font-size: .9375rem; font-weight: 600; line-height: 1.35; }
    .tlcmes-nav-current-number { display: inline-grid; place-content: center; flex-shrink: 0; width: 28px; height: 28px; border-radius: 4px; background: var(--wp--preset--color--ink, #202020); color: var(--wp--preset--color--paper, #fff); font-size: .75rem; font-variant-numeric: tabular-nums; }
    .tlcmes-nav-current-label, .tlcmes-nav-label { overflow-wrap: anywhere; }
    .tlcmes-nav-toggle > svg { width: 20px; height: 20px; transform: rotate(180deg); transition: transform .15s ease; }
    .tlcmes-nav-toggle[aria-expanded="true"] > svg { transform: rotate(0deg); }
    .tlcmes-nav-mobile .tlcmes-nav ol { position: absolute; inset-inline: 0; bottom: 100%; max-height: var(--tlcmes-nav-available-height, calc(100dvh - var(--tlcmes-sticky-offset) - var(--tlcmes-bottom-nav-height, 80px) - 12px)); overflow-y: auto; overscroll-behavior-y: contain; padding: .4rem max(.4rem, env(safe-area-inset-right, 0px)) .4rem max(.4rem, env(safe-area-inset-left, 0px)); border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 10px 10px 0 0; background: var(--wp--preset--color--surface, #f3f3f3); box-shadow: 0 -12px 28px rgb(0 0 0 / 10%); }
    .tlcmes-nav-mobile .tlcmes-nav a:hover { background: var(--wp--preset--color--paper, #fff); }
    .tlcmes-nav-mobile :is(input, textarea, .tlcmes-choices) { scroll-margin-top: var(--tlcmes-sticky-offset); }
    .tlcmes-nav-mobile :is(input, textarea, button, canvas, .tlcmes-section, .tlcmes-submit-panel) { scroll-margin-bottom: calc(var(--tlcmes-bottom-nav-height, 80px) + 16px); }
    .tlcmes-notice { margin-bottom: 1.5rem; }
}
@media (width <= 600px) {
    .tlcmes { --tlcmes-sticky-offset: 140px; }
    .tlcmes-intro { flex-direction: column; gap: 1rem; }
    .tlcmes-intro-copy { flex: none; }
    .tlcmes .tlcmes-title { font-size: 1.8rem; }
    .tlcmes-pdf-link { min-height: 44px; padding: .65rem .85rem; font-size: .8125rem; }
    .tlcmes-pdf-link small { display: inline; font-size: .75rem; margin-left: .5rem; }
    .tlcmes-pdf-link svg { width: 20px; height: 20px; }
    .tlcmes-notice { padding: 1rem; gap: .65rem; }
    .tlcmes-grid { grid-template-columns: minmax(0, 1fr); }
    .tlcmes-section { padding: 1.1rem; margin-bottom: 1rem; }
    .tlcmes-section > legend { align-items: flex-start; font-size: 1.0625rem; gap: .65rem; }
    .tlcmes-step { width: 28px; height: 28px; }
    .tlcmes-type-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tlcmes-type-options label { justify-content: flex-start; padding-inline: .8rem; }
    .tlcmes-field-checkbox { padding-inline: .3rem; }
    .tlcmes-field-checkbox .tlcmes-check { font-size: .875rem; }
    .tlcmes-photo-grid { grid-template-columns: minmax(0, 1fr); }
    .tlcmes-photo-grid > .tlcmes-field-photo { padding: .85rem; }
    .tlcmes-signature-toolbar { gap: .5rem; }
    .tlcmes-signature-upload { padding: .85rem; }
    .tlcmes-declaration p:last-child { padding: .85rem; }
    .tlcmes-submit-panel { padding: 1.1rem; }
    .tlcmes-actions { gap: 1.1rem; }
    .tlcmes-actions button[type="submit"] { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
    .tlcmes, .tlcmes * { scroll-behavior: auto; transition: none; }
}
@media print {
    body.tlcmes-bottom-nav-visible { padding-bottom: 0; }
    .tlcmes-page-main { background: #fff; }
    .tlcmes-layout { display: block; }
    .tlcmes-sidebar, .tlcmes-actions, .tlcmes-clear, .tlcmes-trap, .tlcmes-pdf-link { display: none; }
    .tlcmes-section { break-inside: avoid; }
    .tlcmes input { accent-color: #202020; }
}

/* Explicit text, grouping and focus identify errors without depending on color. */
.tlcmes-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.tlcmes-feedback[data-state="error"] { border-width: 2px; background: var(--wp--preset--color--surface, #f3f3f3); }
.tlcmes-feedback ul { padding-inline-start: 1.3rem; }
.tlcmes-feedback li + li { margin-top: .75rem; }
.tlcmes-field:has([aria-invalid="true"]) > label, .tlcmes-has-error > .tlcmes-choices > legend { font-weight: 600; }
.tlcmes :is(input, textarea, .tlcmes-upload-limits) { scroll-margin-top: var(--tlcmes-sticky-offset); scroll-margin-bottom: calc(var(--tlcmes-bottom-nav-height, 0px) + 2rem); }
.tlcmes [aria-invalid="true"]:focus-visible { outline: 3px solid var(--wp--preset--color--ink, #202020); outline-offset: 4px; }
.tlcmes-upload-limits { padding: 1rem; margin-bottom: 1rem; border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 6px; background: var(--wp--preset--color--surface, #f3f3f3); }
.tlcmes-upload-limits.tlcmes-has-error { border: 2px solid var(--wp--preset--color--ink, #202020); }
.tlcmes .tlcmes-upload-limits p:last-child { margin-bottom: 0; }
.tlcmes .tlcmes-upload-summary { margin: .5rem 0 0; font-size: .8125rem; font-weight: 600; }
.tlcmes .tlcmes-selected-files { list-style: none; margin: .5rem 0 0; padding: 0; }
.tlcmes-selected-files li { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding-block: .35rem; font-size: .8125rem; }
.tlcmes-selected-files li > span { min-width: 0; overflow-wrap: anywhere; }
.tlcmes-selected-files button { flex-shrink: 0; min-height: 44px; padding: .4rem .6rem; border: 1px solid var(--wp--preset--color--border, #d9d9d9); border-radius: 4px; background: var(--wp--preset--color--paper, #fff); color: inherit; text-decoration: underline; font-size: .75rem; }
.tlcmes .tlcmes-signature-label { margin: 0 0 .5rem; font-size: .875rem; font-weight: 500; }
.tlcmes .tlcmes-error-shortcut { margin: 1rem 0 0; font-size: .875rem; font-weight: 600; }
.tlcmes-error-shortcut a { color: inherit; text-decoration: underline; text-underline-offset: .18em; }
.tlcmes-nav-errors { display: inline-grid; place-content: center; flex-shrink: 0; min-width: 1.4rem; min-height: 1.4rem; margin-inline-start: auto; padding-inline: .25rem; border: 1px solid currentcolor; border-radius: 50%; font-size: .75rem; font-weight: 600; }
