/* Targets and motion only. All colours and fonts remain native brand tokens. */
html[data-ms-a11y-brand] #app button:not([role="switch"]):not([role="checkbox"]),
html[data-ms-a11y-brand] #app input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
html[data-ms-a11y-brand] #app select,
html[data-ms-a11y-brand] #app summary {
  min-height: 44px;
}
html[data-ms-a11y-brand] #app button:not([role="switch"]):not([role="checkbox"]) { min-width: 44px; }
/* Radix content is portalled outside #app. Keep its native focus/select logic. */
html[data-ms-a11y-brand] [data-ms-focus-dialog] button:not([role="switch"]):not([role="checkbox"]),
html[data-ms-a11y-brand] [data-ms-focus-dialog] input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
html[data-ms-a11y-brand] [data-ms-focus-dialog] textarea { min-height: 44px; }
html[data-ms-a11y-brand] [data-ms-focus-dialog] button:not([role="switch"]):not([role="checkbox"]) { min-width: 44px; }
html[data-ms-a11y-brand="monipos"] [data-ms-focus-dialog] > button { display: grid; place-items: center; }
/* Native primary form actions: use the company's existing darker brand shade.
   Never replace BrandCss, company configuration or the global primary token. */
html[data-ms-a11y-brand="monipos"] #app form button.bg-primary.text-primary-foreground,
html[data-ms-a11y-brand="monipos"] [data-ms-focus-dialog] form button.bg-primary.text-primary-foreground {
  background-color: var(--color-emerald-700, #047857); color: #fff;
}
html[data-ms-a11y-brand="monipos"] #app form button.bg-primary.text-primary-foreground:hover,
html[data-ms-a11y-brand="monipos"] [data-ms-focus-dialog] form button.bg-primary.text-primary-foreground:hover {
  background-color: var(--color-emerald-800, #065f46);
}
html[data-ms-a11y-brand] #app label:has(input[type="checkbox"]) { min-height: 44px; }
html[data-ms-a11y-brand] [data-ms-focus-dialog] { max-height: calc(100dvh - 2rem); overflow-y: auto; }
html[data-ms-a11y-brand="monipos"] [data-ms-focus-dialog] { width: calc(100% - 2rem); max-width: 32rem; }
html[data-ms-a11y-brand="monipos"] #app button[aria-label$="contrase\00f1 a"] { display: grid; place-items: center; right: .25rem; }
html[data-ms-a11y-brand="monipos"] #app #password { padding-inline-end: 3.5rem; }
html[data-ms-a11y-brand="laude"] #app .glass-input input { min-height: 44px; }
html[data-ms-a11y-brand="laude"] #app .glass-button { min-height: 44px; min-width: 44px; }
html[data-ms-a11y-brand="laude"] #app .glass-input > div.w-10:has(button) { width: 48px; min-width: 48px; padding-inline: 2px; }
html[data-ms-a11y-brand="laude"] #app header a[href="/registro"] { white-space: nowrap; flex-shrink: 0; min-height: 44px; }
html[data-ms-a11y-brand="laude"] [data-ms-laude-cookie-footer] summary { display: flex; align-items: center; cursor: pointer; }
html[data-ms-a11y-brand="laude"] .ms-public-consent-inline { position: static; inset: auto; width: 100%; max-width: 48rem; padding: 1rem 0; z-index: auto; }
html[data-ms-a11y-brand="laude"] .ms-public-consent-inline .ms-public-consent-panel { position: static; inset: auto; max-width: 100%; }
@media (max-width: 400px) {
  html[data-ms-a11y-brand="laude"] #app header.ms-scroll-header > div:last-child { gap: .5rem; padding-inline: .75rem; }
  html[data-ms-a11y-brand="laude"] #app header.ms-scroll-header a[href="/login"] { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  html[data-ms-a11y-brand] #app *, html[data-ms-a11y-brand] [data-ms-focus-dialog] { animation-duration: .00001ms !important; transition-duration: 0s !important; scroll-behavior: auto !important; }
  html[data-ms-a11y-brand="laude"] [data-ms-focus-dialog],
  html[data-ms-a11y-brand="laude"] [data-ms-dialog-overlay] { opacity: 1 !important; transform: none !important; }
  html[data-ms-a11y-brand="laude"] #app .glass-button, html[data-ms-a11y-brand="laude"] #app .glass-button-wrap { transform: none !important; }
}
