/* Base común: fuentes locales, reset mínimo, foco y movimiento reducido. */
@font-face {
    font-family: "Poppins";
    src: url("../../fonts/poppins-regular.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Poppins";
    src: url("../../fonts/poppins-bold.woff2") format("woff2");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
    font-family: var(--mdm-fuente);
    font-size: var(--mdm-texto);
    line-height: var(--mdm-interlineado);
    color: var(--mdm-tinta);
    background: var(--mdm-papel);
    -webkit-font-smoothing: antialiased;
}

img,
svg {
    display: block;
    max-width: 100%;
    height: auto;
}

h1,
h2,
p {
    margin: 0;
}

/* Foco visible único para toda la app: anillo índigo + halo amarillo (tokens --mdm-foco-*).
   «:root» sube la especificidad para que no lo pise el box-shadow propio de cada componente.
   Los componentes NO redefinen outline/box-shadow de foco: solo pueden sumar fondo o color. */
:root :focus-visible {
    outline: var(--mdm-foco-ancho) solid var(--mdm-foco-color);
    outline-offset: 0;
    box-shadow: var(--mdm-foco-sombra);
}

.mdm-oculto {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important; /* accesibilidad: anula toda animación */
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}
