body {
    background-color: #FFFFFF; /* Force Pure White surface */
    color: #000000;
}
.article-card {
    position: relative;
    overflow: hidden;
    display: block;
    text-decoration: none;
    color: inherit;
}

.article-headline {
    transition: color 0.3s ease;
}

.article-headline {
    color: #E00000; /* interaction-red */
}

/* Thin hairline dividers */
.hairline-b { border-bottom: 1px solid #000000; }
.hairline-t { border-top: 1px solid #000000; }
.hairline-l { border-left: 1px solid #000000; }
.hairline-r { border-right: 1px solid #000000; }
.hairline-fossil-b { border-bottom: 1px solid #CCCCCC; }
.hairline-fossil-t { border-top: 1px solid #CCCCCC; }

/* Ocultar scrollbar para el carrusel de categorías */
.no-scrollbar::-webkit-scrollbar {
    display: none;
}
.no-scrollbar {
    -ms-overflow-style: none; /* IE y Edge */
    scrollbar-width: none; /* Firefox */
}

/* --- DEBUT CUSTOM LOADER STYLES --- */
.debut-logo-flipped {
    /* Voltea horizontalmente el SVG para lograr la E invertida del logo */
    transform: scaleX(-1);
}

.debut-svg-path {
    stroke-dasharray: 240;
    stroke-dashoffset: 240;
    animation: drawSilhouette 3s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}

.debut-svg-serif {
    opacity: 0;
    animation: fadeInSerif 3s ease-in-out infinite;
}

@keyframes drawSilhouette {
    0% {
        stroke-dashoffset: 240;
    }
    40% {
        stroke-dashoffset: 0;
    }
    80% {
        stroke-dashoffset: 0;
        opacity: 1;
    }
    100% {
        opacity: 0;
        stroke-dashoffset: 240;
    }
}

@keyframes fadeInSerif {
    0%, 35% {
        opacity: 0;
    }
    50%, 80% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

.animate-pulse-slow {
    animation: pulseSlow 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes pulseSlow {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.4; }
}

/* Estilos editoriales automáticos para las tablas del CMS */
#txtContenidoPagina table, 
.prose table, 
main table {
    width: 100%;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    border-collapse: collapse;
    border: 1px solid #e5e7eb; /* Gris suave de Tailwind (gray-200) */
}

#txtContenidoPagina th, 
.prose th, 
main table th {
    background-color: #f9fafb; /* Fondo sutil para el encabezado (gray-50) */
    padding: 0.75rem 1rem;
    font-weight: 600;
    border: 1px solid #e5e7eb;
    color: #111827;
}

#txtContenidoPagina td, 
.prose td, 
main table td {
    padding: 0.75rem 1rem;
    border: 1px solid #e5e7eb;
    color: #374151;
}

/* Efecto cebra opcional para que se vea premium */
main table tbody tr:nth-child(even) {
    background-color: #f3f4f6; /* gray-100 */
}



/* Forzar fondo transparente en el motor Canvas de la revista */
/*.stf__wrapper,
.stf__wrapper canvas {
    background-color: transparent !important;
    background: transparent !important;
}*/