/* VOTD Conditional Layout (Ticket-910) */
/* Ticket-917: Global Sanctuary Consistency */
/* Enforce Fonts & Color Palette on VOTD */
.vf-page-votd,
.page-template-verse-of-the-day {
    --font-primary: "Lora", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    --font-serif: "Cormorant Garamond", "Georgia", "Times New Roman", serif;
    font-family: var(--font-primary);
    color: var(--grounded-text, #2A2A2A);
}

.vf-page-votd h1,
.vf-page-votd h2,
.vf-page-votd h3,
.page-template-verse-of-the-day h1,
.page-template-verse-of-the-day h2,
.page-template-verse-of-the-day h3 {
    font-family: var(--font-serif);
    font-weight: 700;
    color: var(--grounded-text, #2A2A2A);
}

.vf-page-votd .page-title,
.page-template-verse-of-the-day .page-title {
    font-size: 2.5rem;
    color: var(--covenant-accent, #7A1E2C);
    text-align: center;
    margin-bottom: 0.5rem;
}

.vf-page-votd .votd-meta,
.page-template-verse-of-the-day .votd-meta {
    text-align: center;
    font-family: var(--font-serif);
    font-style: italic;
    color: var(--covenant-accent, #7A1E2C);
    opacity: 0.8;
    margin-bottom: 3rem;
    font-size: 1.1rem;
}

.votd--ads-off .votd-wrapper {
    min-height: 60vh;
    /* Occupy vertical space to center content */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

/* Ensure container itself doesn't collapse awkwardly */
.votd--ads-off .votd-container {
    width: 100%;
    max-width: 800px;
}

/* Ticket-911: Seek Button CTA */
.sanctuary-actions {
    text-align: center;
    margin: 2rem 0;
}

.vf-seek-button {
    font-family: var(--font-primary, "Lora", serif);
    /* Fallback to base var */
    background-color: var(--grounded-text, #2A2A2A);
    color: var(--mercy-base, #F6EFE2);
    border: 2px solid transparent;
    padding: 1rem 2rem;
    border-radius: 4px;
    cursor: pointer;
    font-weight: 600;
    transition: all 0.2s ease;
    text-decoration: none;
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.9rem;
}

.vf-seek-button:hover,
.vf-seek-button:focus {
    background-color: var(--mercy-base, #F6EFE2);
    color: var(--covenant-accent, #7A1E2C);
    border-color: var(--covenant-accent, #7A1E2C);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    text-decoration: none;
}

/* Ticket-912: Bloom Effect */
.votd-text {
    opacity: 0.15;
    filter: blur(2px);
    transition: opacity 6s ease-in-out, filter 6s ease-in-out;
}

.votd-text.revealed {
    opacity: 1;
    filter: blur(0);
}

.vf-page-votd .vf-scripture-notice,
.page-template-verse-of-the-day .vf-scripture-notice {
    margin: 0.9rem auto 0;
    max-width: 56ch;
    text-align: center;
    font-size: 0.9rem;
    line-height: 1.4;
    color: rgba(42, 42, 42, 0.8);
    font-family: var(--font-primary, sans-serif);
}

/* Ticket-917: Enforce 2.5rem Hero Text */
.votd-text {
    font-size: 2.5rem;
    line-height: 1.4;
    font-family: var(--font-serif);
    color: var(--grounded-text, #2A2A2A);
    text-align: center;
    margin: 0;
}

/* Mobile Adjustment */
@media (max-width: 768px) {
    .votd-text {
        font-size: 1.8rem;
    }
}


/* Ticket-913: Focus Frame Breath - Superseded by Ticket-922 (atmosphere.css) */
.votd-frame {
    /* Main styles now handled by votd-overrides general + atmosphere.css .vf-focus-frame */
    border: 1px solid rgba(42, 42, 42, 0.15);
    /* Baseline visibility matching new spec */
    border-radius: 6px;
    padding: 2rem;
    max-width: 760px;
    margin: 0 auto;
    background-color: transparent;
}

@media (prefers-reduced-motion: reduce) {
    .votd-text {
        opacity: 1;
        filter: none;
        transition: none;
    }

    .votd-frame.pulse {
        animation: none;
        box-shadow: none;
    }
}

/* Ticket-934: Center Layout & Reflect Button */
.votd-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

.page-header {
    text-align: center;
    margin-bottom: 2rem;
    width: 100%;
}

.votd-counter-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-top: 3rem;
    text-align: center;
    font-family: var(--font-primary, sans-serif);
    color: var(--grounded-text, #2A2A2A);
    width: 100%;
    max-width: 800px;
    /* Keep it contained */
}

.counter-text {
    font-style: italic;
    opacity: 0.8;
}

#votd-reflect-btn {
    font-family: var(--font-primary, sans-serif);
    background-color: transparent;
    color: var(--grounded-text, #2A2A2A);
    border: 1px solid var(--grounded-text, #2A2A2A);
    padding: 0.5rem 1.5rem;
    border-radius: 4px;
    cursor: pointer;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    transition: all 0.2s ease;
}

#votd-reflect-btn:hover:not(:disabled),
#votd-reflect-btn:focus:not(:disabled) {
    background-color: var(--grounded-text, #2A2A2A);
    color: var(--mercy-base, #F6EFE2);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

#votd-reflect-btn:disabled,
#votd-reflect-btn.is-loading {
    opacity: 0.6;
    cursor: not-allowed;
    border-color: transparent;
}

.votd-date-sep {
    opacity: 0.6;
    margin: 0 0.35rem;
}

.votd-archive-link {
    text-decoration: underline;
}

.votd-archive-badge {
    margin-top: 0.6rem;
    display: inline-block;
    font-size: 0.8rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    opacity: 0.75;
}
