/* One calm focus language, including controls outside enhanced forms.
   Important declarations in this layer override older component focus glows
   regardless of stylesheet order, without changing ordinary field geometry.
   Text fields retain a single thin edge; keyboard actions remain identifiable. */
@layer la-control-focus {
  body:not(.la-public-page) {
    --la-control-focus: #6b7280;
    --la-field-focus: #6b7280;
  }
  body:not(.la-public-page) :where(input, select, textarea, button, a[href], summary,
      [contenteditable="true"], [tabindex], [role="button"], [role="tab"]):focus {
    outline: none !important;
    box-shadow: none !important;
  }
  body:not(.la-public-page) :where(button, a[href], summary, [tabindex], [role="button"],
      [role="tab"], input):focus-visible {
    outline: 1px solid var(--la-control-focus, #6b7280) !important;
    outline-offset: 2px !important;
  }
  body:not(.la-public-page) :is(input, select, textarea, [contenteditable="true"]):focus {
    border-color: var(--la-control-focus, #6b7280) !important;
  }
  body:not(.la-public-page) :is(input:where(:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="color"]):not([type="button"]):not([type="submit"]):not([type="reset"])),
      select, textarea, [contenteditable="true"]):focus-visible {
    outline: 1px solid var(--la-control-focus, #6b7280) !important;
    outline-offset: -1px !important;
  }
  body:not(.la-public-page) :is(.la-search, .la-ticket-search, .lah-search > div,
      .la-tool-select, .la-compact-control, .la-presence-control, .la-composer,
      .lac-composer, .la-supervision-composer-card, .la-identity-company-field,
      .lac-person-option, .la-queue-mute):focus-within {
    outline: none !important;
    box-shadow: none !important;
    border-color: var(--la-control-focus, #6b7280) !important;
  }
  body:not(.la-public-page) :is(.la-search, .la-ticket-search, .lah-search > div,
      .la-tool-select, .la-compact-control, .la-presence-control, .la-composer,
      .lac-composer, .la-supervision-composer-card, .la-identity-company-field)
      :is(input, select, textarea):focus-visible { outline: none !important; }
  body:not(.la-public-page) :is(input, select, textarea):is([aria-invalid="true"], :user-invalid):focus {
    border-color: #b84056 !important;
    outline-color: #b84056 !important;
  }
  body:not(.la-public-page) :is(.la-language-switch, .la-remember-control)
      input:focus-visible + span,
  body:not(.la-public-page) .la-portal-upload:focus-within label {
    outline: 1px solid var(--la-control-focus, #6b7280) !important;
    outline-offset: 2px !important;
    box-shadow: none !important;
  }
  @media (forced-colors: active) {
    body:not(.la-public-page) :focus-visible,
    body:not(.la-public-page) :is(input, select, textarea, [contenteditable="true"]):focus-visible,
    body:not(.la-public-page) :is(input, select, textarea):is([aria-invalid="true"], :user-invalid):focus-visible,
    body:not(.la-public-page) :is(.la-search, .la-ticket-search, .lah-search > div,
        .la-tool-select, .la-compact-control, .la-presence-control, .la-composer,
        .lac-composer, .la-supervision-composer-card, .la-identity-company-field,
        .lac-person-option, .la-queue-mute):focus-within,
    body:not(.la-public-page) :is(.la-language-switch, .la-remember-control) input:focus-visible + span,
    body:not(.la-public-page) .la-portal-upload:focus-within label {
      outline: 2px solid Highlight !important;
      outline-offset: 2px !important;
    }
  }
}
