 <!-- ========== ESTILOS ========== -->

        * { box-sizing: border-box; }
        body { 
            font-family: 'Cormorant Garamond', serif; 
            background: linear-gradient(135deg, #f5f5f5 0%, #e8e8f0 100%);
            margin: 0; 
            padding: 0; 
            min-height: 100vh;
        }
        .container { max-width: 600px; margin: 0 auto; padding: 15px; }
        .back-link { 
            display: inline-flex; 
            align-items: center; 
            gap: 6px; 
            color: #5d3a8c; 
            text-decoration: none; 
            font-weight: bold; 
            margin: 15px 0;
            font-size: 1rem;
        }
        .back-link:hover { color: #48296e; }
        h1 { 
            text-align: center; 
            color: #5d3a8c; 
            font-size: 1.8rem;
            margin: 10px 0 20px;
            font-weight: 700;
        }
        h2 {
            text-align: center;
            color: #5d3a8c;
            font-size: 1.3rem;
            margin: 30px 0 15px;
            font-weight: 600;
        }
        .signo-card {
            background: white; 
            border-radius: 12px; 
            padding: 20px; 
            margin: 15px 0;
            box-shadow: 0 4px 12px rgba(93,58,140,0.1);
            border-left: 4px solid #d4af37;
        }
        .signo-header {
            display: flex;
            align-items: center;
            gap: 12px;
            margin-bottom: 15px;
            padding-bottom: 15px;
            border-bottom: 2px dashed #eee;
        }
        .signo-icono { font-size: 2.5rem; }
        .signo-titulo { font-size: 1.6rem; color: #5d3a8c; font-weight: 700; }
        .horoscopo-seccion { margin: 15px 0; }
        .horoscopo-seccion h3 {
            color: #5d3a8c;
            font-size: 1.1rem;
            margin: 0 0 8px;
            display: flex;
            align-items: center;
            gap: 8px;
            font-weight: 600;
        }
        .horoscopo-seccion p {
            color: #333;
            line-height: 1.6;
            margin: 0;
        }
        .numero-suerte {
            display: inline-block;
            background: linear-gradient(90deg, #e6f7e6, #d4af37);
            padding: 8px 16px;
            border-radius: 20px;
            font-weight: bold;
            margin: 15px 0;
            color: #2a1a4c;
        }
        .frase-larga {
            font-style: italic;
            font-size: 1.2rem;
            color: #5d3a8c;
            text-align: center;
            padding: 20px;
            background: rgba(93,58,140,0.05);
            border-radius: 8px;
            margin: 20px 0;
        }
        .share-buttons { 
            display: flex; 
            flex-wrap: wrap; 
            gap: 10px; 
            margin-top: 20px;
            padding-top: 20px;
            border-top: 1px dashed #eee;
        }
        .share-btn { 
            display: flex; 
            align-items: center; 
            gap: 6px; 
            padding: 10px 16px; 
            border-radius: 8px; 
            font-weight: bold; 
            text-decoration: none; 
            color: white; 
            font-size: 0.9rem;
            transition: 0.3s;
        }
        .share-whatsapp { background: #25D366; }
        .share-facebook { background: #1877F2; }
        .share-twitter { background: #1DA1F2; }
        .share-telegram { background: #0088cc; }
        .share-copy { background: #555; }
        .nav-signos {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 8px;
            margin: 20px 0;
        }
        .nav-signos a {
            padding: 6px 12px;
            border-radius: 20px;
            background: white;
            color: #5d3a8c;
            text-decoration: none;
            font-size: 0.85rem;
            border: 1px solid #d4af37;
            transition: 0.3s;
        }
        .nav-signos a:hover, .nav-signos a.activo {
            background: #5d3a8c;
            color: white;
        }
        .filtro-fecha {
            text-align: center;
            margin: 15px 0;
        }
        .filtro-fecha input {
            padding: 10px 15px;
            border-radius: 8px;
            border: 1px solid #ccc;
            font-family: inherit;
        }
        .intro-seo {
            background: rgba(255,255,255,0.7);
            padding: 20px;
            border-radius: 12px;
            margin: 25px 0;
            font-size: 0.95rem;
            line-height: 1.6;
            color: #444;
        }
        .intro-seo h2 {
            font-size: 1.2rem;
            margin-top: 0;
            color: #5d3a8c;
        }
        .otros-signos {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
            gap: 10px;
            margin: 20px 0;
        }
        .otros-signos a {
            background: white;
            padding: 10px;
            border-radius: 8px;
            text-align: center;
            text-decoration: none;
            color: #5d3a8c;
            font-weight: 600;
            border: 1px solid #e0e0e0;
            transition: 0.3s;
            font-size: 0.9rem;
        }
        .otros-signos a:hover, .otros-signos a.activo {
            background: #5d3a8c;
            color: white;
            border-color: #5d3a8c;
        }
        .footer {
            background: linear-gradient(to right, #5d3a8c, #3a2457);
            color: white;
            text-align: center;
            padding: 25px 15px;
            margin-top: 40px;
            border-top: 3px solid #d4af37;
        }
        .footer a { color: #ffd700; text-decoration: none; font-weight: bold; }
        .footer-links {
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            gap: 10px;
            margin: 15px 0;
            font-size: 0.9rem;
        }
        #btn-subir {
            position: fixed;
            bottom: 20px;
            right: 20px;
            width: 45px;
            height: 45px;
            background: #5d3a8c;
            color: white;
            border: 2px solid #d4af37;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            text-decoration: none;
            font-size: 1.2rem;
            opacity: 0;
            visibility: hidden;
            transition: 0.3s;
            z-index: 999;
        }
        #btn-subir.visible { opacity: 1; visibility: visible; }
        @media (max-width: 480px) {
            .container { padding: 10px; }
            h1 { font-size: 1.5rem; }
            .signo-titulo { font-size: 1.3rem; }
            .signo-icono { font-size: 2rem; }
            .share-btn { padding: 8px 12px; font-size: 0.85rem; }
            .otros-signos { grid-template-columns: repeat(3, 1fr); }
        }

/* ========== BANNER REFLEXIONES DIARIAS ========== */
.reflexiones-banner {
    background: linear-gradient(135deg, #6a4c93 0%, #8a65b5 100%);
    color: white;
    padding: 14px 20px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    text-decoration: none;
    margin: 20px 0;
    box-shadow: 0 4px 12px rgba(93,58,140,0.25);
    transition: transform 0.2s, box-shadow 0.2s;
    font-size: 1rem;
    text-align: center;
    line-height: 1.3;
}
.reflexiones-banner:hover, .reflexiones-banner:active {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(93,58,140,0.35);
    color: white;
}
.reflexiones-icono { font-size: 1.4rem; }
.reflexiones-texto strong { color: #ffd700; }

/* ✨ DÍA DE LA SEMANA MÁS GRANDE Y DESTACADO ✨ */
.reflexiones-banner .dia-semana {
    display: block;
    font-size: 1.3rem;        /* ⬆️ Más grande (antes 0.85rem) */
    font-weight: 700;         /* Negrita */
    margin-top: 4px;
    color: #fff;              /* Blanco puro para máximo contraste */
    text-shadow: 0 1px 2px rgba(0,0,0,0.2); /* Sutil sombra para profundidad */
    letter-spacing: 0.5px;    /* Espaciado entre letras */
}

.reflexiones-arrow { 
    font-size: 1.2rem; 
    font-weight: bold;
    animation: pulse 2s infinite;
}
@keyframes pulse {
    0%, 100% { transform: translateX(0); }
    50% { transform: translateX(3px); }
}
@media (max-width: 480px) {
    .reflexiones-banner { 
        flex-direction: column; 
        gap: 8px;
        padding: 14px 16px;
        font-size: 0.95rem;
    }
    .reflexiones-banner .dia-semana {
        font-size: 1.15rem;    /* Un poco más pequeño en móvil, pero aún destacado */
        margin-top: 2px;
    }
    .reflexiones-arrow { display: none; }
}