
.itinerary-wrapper{
    margin-top:25px;
}

.itinerary-grid{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    gap:12px;
}

.calendar-header{
    background:#3a4f63;
    color:white;
    padding:14px;
    border-radius:10px;
    text-align:center;
    font-weight:bold;
}

.calendar-day{
    min-height:240px;
    background:#ffffff;
    border:1px solid #d8d8d8;
    border-radius:14px;
    padding:12px;
    box-shadow:0 4px 12px rgba(0,0,0,0.08);
}

.calendar-day.non-mission-day{
    background:#efefef;
    opacity:.75;
}

.day-number{
    font-size:24px;
    font-weight:bold;
    color:#3D95CE;
    margin-bottom:10px;
}

.calendar-location{
    font-weight:bold;
    color:#3D95CE;
    margin-bottom:8px;
}

.calendar-activities{
    font-size:14px;
    line-height:1.45;
    margin-bottom:12px;
    color:#555;
}

.calendar-scripture-ref{
    font-size:13px;
    font-style:italic;
    color:#555;
    margin-bottom:6px;
}

.calendar-scripture-summary{
    font-size:13px;
    line-height:1.45;
    color:#333;
}

.calendar-button-row{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
    margin-top:10px;
}

.calendar-mini-btn{
    background:#3D95CE;
    color:#fff !important;
    text-decoration:none;
    padding:4px 8px;
    border-radius:6px;
    font-size:11px;
    font-weight:600;
    display:inline-block;
    line-height:1.1;
}

.calendar-mini-btn:hover{
    background:#2F7FB4;
}

.calendar-mini-btn.disabled{
    background:#999;
    pointer-events:none;
    opacity:.5;
}

.blank-day{
    background:transparent;
    border:none;
    box-shadow:none;
}

@media (max-width:900px){

    .itinerary-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .calendar-header{
        display:none;
    }

}

@media (max-width:600px){

    .itinerary-grid{
        grid-template-columns:1fr;
    }

    .blank-day{
        display:none !important;
    }

}
