.timeline-section {
    padding: 4rem 2rem;
    text-align: center;
}

.days-container {
    display: grid;
    grid-template-columns: repeat(auto-fill, 16px);
    gap: 6px;
    justify-content: center;
    max-width: 1600px;
    margin: 0 auto;
}
.day-missed { background: #ff4444; }

.day-box {
    width: 16px;
    height: 16px;
    border-radius: 4px;
    transition: transform 0.2s;
}

.day-box:hover {
    transform: scale(1.25);
}

/* COLORS */
.day-past   { background: #22c55e; cursor: pointer; }   /* green */
.day-today  { background: #00ffff; }                   /* cyan */
.day-future { background: #2a2f38; cursor: default; }  /* grey */

.timeline-legend {
    margin-top: 2rem;
    display: flex;
    gap: 2rem;
    justify-content: center;
}

.legend-box {
    width: 16px;
    height: 16px;
    border-radius: 4px;
    display: inline-block;
}
.legend-box.past { background: #22c55e; }
.legend-box.today { background: #00ffff; }
.legend-box.future { background: #2a2f38; }
.legend-box.missed { background: #ff4444; }