/*
 * =========================================
 * RESET CSS MODERNO (Plantilla Genérica)
 * =========================================
 * Propósito: Eliminar estilos de navegador por defecto
 * para tener un lienzo limpio y consistente.
 */

/* * 1. El reseteo más importante: Box-Sizing.
 * Esto hace que el padding y el borde se incluyan DENTRO 
 * del ancho y alto total del elemento, no que se sumen.
 * Facilita enormemente la creación de layouts.
 */
*,
*::before,
*::after {
    box-sizing: border-box;
}

/*
 * 2. Reseteo universal de márgenes y rellenos.
 * Elimina todos los márgenes y rellenos por defecto.
 */
html,
body,
h1, h2, h3, h4, h5, h6,
p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit; /* Hereda la tipografía del padre */
    vertical-align: baseline;
}

/*
 * 3. Configuración base del <body>.
 * - line-height: 1.5 es un buen punto de partida para legibilidad.
 * - -webkit-font-smoothing mejora el renderizado de fuentes en WebKit (Chrome/Safari).
 */
body {
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}

/*
 * 4. Reseteo de listas.
 * Quita los puntos (•) y números (1.) por defecto.
 */
ol, ul {
    list-style: none;
}

/*
 * 5. Imágenes y medios responsivos.
 * Esto asegura que las imágenes nunca se desborden
 * de su contenedor padre.
 */
img, picture, video, canvas, svg {
    display: block;
    max-width: 100%;
}

/*
 * 6. Reseteo de estilos de enlaces.
 * Quita el subrayado y hace que hereden el color del texto.
 */
a {
    text-decoration: none;
    color: inherit;
}

/*
 * 7. Heredar fuentes en formularios.
 * Por defecto, los inputs y botones usan una fuente de sistema.
 * Esto hace que usen la misma fuente que el resto de tu <body>.
 */
input,
button,
textarea,
select {
    font: inherit;
}

/*
 * 8. Reseteo de estilos de botones.
 * Elimina los estilos feos por defecto de los navegadores.
 */
button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    margin: 0;
}

/*
 * 9. Resetear estilos de tabla (para colapsar bordes si los usas)
 */
table {
    border-collapse: collapse;
    border-spacing: 0;
}