/* --- Root Variables & Container --- */
.aetherium-container {
    --bg-twilight: #191D2D;
    --text-primary: #EAEAEA;
    --text-faded: #8899C0;
    --inactive-ink: #56678F;
    --inactive-border: rgba(86, 103, 143, 0.4);
    --accent-gradient: linear-gradient(120deg, #00DFD8, #7F00FF);
    --font-display: 'Orbitron', sans-serif;
    --font-label: 'Exo 2', sans-serif;

    /* FLUID SIZING VARIABLES */
    --fluid-padding: clamp(15px, 4vw, 30px);
    --fluid-gap: clamp(15px, 4vw, 25px);
    --font-size-header: clamp(2rem, 8vw, 3rem);
    --font-size-primary: clamp(2.2rem, 7vw, 3.5rem);
    --font-size-complication: clamp(1.2rem, 5vw, 1.5rem);
    
    font-family: var(--font-label);
    background-color: var(--bg-twilight);
    background-image: 
        radial-gradient(circle at 25% 25%, rgba(0, 223, 216, 0.05), transparent 40%),
        radial-gradient(circle at 75% 75%, rgba(127, 0, 255, 0.05), transparent 40%);
    color: var(--text-primary);
    padding: var(--fluid-padding);
    border-radius: 8px;
    max-width: auto;
    margin: 20px auto;
    box-shadow: 0 15px 40px rgba(0,0,0,0.5);
    border: 1px solid var(--inactive-border);
}

/* === Master Clock Header === */
.aetherium-header { text-align: center; margin-bottom: var(--fluid-gap); padding-bottom: var(--fluid-gap); border-bottom: 1px solid var(--inactive-border); }
.header__title { font-family: var(--font-label); font-weight: 500; font-size: 1rem; letter-spacing: 2px; color: var(--text-faded); margin: 0 0 10px 0; text-transform: uppercase; }
.header__time { font-family: var(--font-display); font-size: var(--font-size-header); font-weight: 700; line-height: 1; color: var(--text-primary); margin: 0; }

/* === Two-Column Grid & Nodes === */
.aetherium-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--fluid-gap); }
.timeline-node { padding: var(--fluid-padding); border-radius: 6px; border: 1px solid var(--inactive-border); transition: all 0.4s ease; }
.node-title { font-family: var(--font-label); font-weight: 500; font-size: clamp(0.9rem, 3vw, 1.1rem); margin: 0 0 15px 0; letter-spacing: 1px; text-align: center; text-transform: uppercase; }
.node-display { display: flex; justify-content: center; align-items: center; gap: clamp(10px, 2vw, 15px); }
.node-primary { font-family: var(--font-display); font-size: var(--font-size-primary); font-weight: 700; line-height: 1; display: flex; align-items: center; }
.node-separator { margin: 0 2px; }
.node-complication { display: flex; flex-direction: column; font-family: var(--font-display); font-size: var(--font-size-complication); font-weight: 700; line-height: 1.1; text-align: center; }
.node-complication label { font-family: var(--font-label); font-size: 0.7rem; margin-top: 3px; text-transform: uppercase; }
.value-group { display: flex; align-items: center; justify-content: center; }
.node-sign { display: inline-block; width: 1rem; text-align: center; }
.node-complication .node-sign { font-size: var(--font-size-complication); }
.node-primary .node-sign { font-size: 1.5rem; }

/* === Dynamic Focus Styling === */
.timeline-node { color: var(--inactive-ink); }
.timeline-node .node-complication label, .timeline-node .node-title { color: var(--inactive-ink); }
.timeline-node--next-event, .timeline-node.is-active { color: var(--text-primary); }
.timeline-node--next-event .node-title, .timeline-node.is-active .node-title { background: var(--accent-gradient); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; font-weight: 500; }
.timeline-node--next-event .node-complication label, .timeline-node.is-active .node-complication label { color: var(--text-faded); }
.timeline-node--next-event .node-separator, .timeline-node.is-active .node-separator { animation: blink 2s infinite ease-in-out; }
.timeline-node--next-event { grid-column: 1 / -1; border-image: var(--accent-gradient) 1; }

.aetherium-prose-container { margin-top: 40px; padding: 40px; border: 1px solid transparent; }
.prose-title {
    font-family: var(--font-label);
    font-size: 1.8rem;
    text-align: center;
    letter-spacing: 2px;
    margin: 0 0 20px 0;
    text-transform: uppercase;
    background: var(--accent-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.aetherium-prose-container h3 {
    font-family: var(--font-label);
    font-size: 1.8rem;
    letter-spacing: 1px;
    color: var(--text-primary);
    margin: 30px 0 10px 0;
    font-weight: 500;
}
.aetherium-prose-container p {
    font-size: 1.1rem;
    line-height: 1.7;
    font-weight: 300;
    color: var(--white);
    text-align: justify;
}
.prose-divider { border: 0; height: 1px; background-image: linear-gradient(to right, transparent, var(--inactive-ink), transparent); margin: 40px auto; width: 60%; }


@keyframes blink { 50% { opacity: 0.3; } }

/* === MEDIA QUERY FOR MAJOR LAYOUT SHIFT === */
/* On screens smaller than 768px (tablets and phones) */
@media (max-width: 768px) {
    .aetherium-grid {
        /* Switch to a single column layout */
        grid-template-columns: 1fr;
    }
    .timeline-node--next-event {
        /* Ensure the main 'Next Event' node also becomes single column */
        grid-column: 1; 
    }
}