.ff-frontend-schedule .ff-grid-wrap {
    max-height: none;
}

.ff-frontend-schedule .ff-block {
    cursor: pointer;
}

.ff-frontend-schedule .button {
    margin: 8px 4px;
}

/* ================================
   Fit & Flex – Grid Layout Fix
   ================================ */

.ff-grid {
    position: relative;
}

/* Sticky time column */
.ff-cell.ff-time {
    position: sticky;
    left: 0;
    z-index: 5;
    background: #fff;
    border-right: 1px solid #ddd;
}

/* -------------------------------
   ?? CRITICAL BLOCK FIX
   ------------------------------- */

/* Force blocks into ONE day column only */
.ff-grid > .ff-block {
    grid-column-start: 2 !important;
    grid-column-end: span 1 !important; /* ? THIS WAS MISSING */
    box-sizing: border-box;
    max-width: 100%;
    margin: 0;
}

/* Prevent visual bleed */
.ff-block {
    padding: 8px 10px;
    border-radius: 10px;
    overflow: hidden;
}

/* Kill any pseudo-element bleed */
.ff-block::before,
.ff-block::after {
    content: none !important;
}

/* Ensure empty slots don't stretch */
.ff-slot {
    overflow: hidden;
}

/* Mobile safety */
@media (max-width: 768px) {
    .ff-grid {
        overflow-x: auto;
    }
}
