/* Minimal reset for the MCEDC DAM app. Scoped to the app root + our own body class. */
body.mcedc-dam-app { margin: 0; -webkit-text-size-adjust: 100%; }

#mcedc-dam-root,
#mcedc-dam-root *,
#mcedc-dam-root *::before,
#mcedc-dam-root *::after { box-sizing: border-box; }

#mcedc-dam-root h1,
#mcedc-dam-root h2,
#mcedc-dam-root h3,
#mcedc-dam-root h4,
#mcedc-dam-root p,
#mcedc-dam-root ul,
#mcedc-dam-root figure { margin: 0; padding: 0; }

#mcedc-dam-root ul { list-style: none; }
#mcedc-dam-root img,
#mcedc-dam-root svg { max-width: 100%; height: auto; display: block; }

/* Explicit base text colour, anchored at the app root so nothing inherits a
   stray colour from the surrounding theme. Everything below uses our tokens
   instead of `inherit`, and is scoped with :where() (zero specificity) so any
   component .mcedc-* colour rule wins cleanly. */
#mcedc-dam-root { color: var(--mcedc-ink); }
:where(#mcedc-dam-root) a { color: var(--mcedc-blue); text-decoration: none; }
:where(#mcedc-dam-root) button,
:where(#mcedc-dam-root) input,
:where(#mcedc-dam-root) select,
:where(#mcedc-dam-root) textarea { font: inherit; color: var(--mcedc-ink); }
#mcedc-dam-root button { cursor: pointer; }

/* Screen-reader-only: present in the a11y tree, hidden visually. */
#mcedc-dam-root .mcedc-visually-hidden {
    position: absolute !important; width: 1px; height: 1px;
    padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0);
    white-space: nowrap; border: 0;
}
/* Programmatic focus target (route change) — no visible outline box. */
#mcedc-dam-root .mcedc-main:focus { outline: none; }
