.festival-day {
    border-top: 1px solid #909191;
    padding-top: 2em;
}

.walk-weight-selector {
    display: inline-block;
    padding: 10px;
    border-radius: 5px;
    background-color: #f1f1f1;
    border: 1px solid #909191;
}

section {
    padding-top: 1em;
    padding-bottom: 1em;
}

.hl-list li {
    padding-top: 0.5em;
    padding-bottom: 0.5em;
}

.hl {
    padding: 0.2em 0.4em;
    font-weight: 700;
    line-height: 1;
    color: black;
    text-align: center;
    vertical-align: baseline;
}

.hl4 {
    background: #ffabab;
    background-image: linear-gradient(to bottom, #ffdddd 0%, #ffafaf 49.99%, #ff9191 50%, #ffccb2 100%);
}

.hl3 {
    background: #f1abff;
    background-image: linear-gradient(to bottom, #f9ddff 0%, #f1afff 49.99%, #ec91ff 50%, #ffb2f2 100%);
}

.hl2 {
    background: #abc7ff;
    background-image: linear-gradient(to bottom, #dde8ff 0%, #afc9ff 49.99%, #91b5ff 50%, #b2e5ff 100%);
}

.hl1 {
    background: #8aff8a;
    background-image: linear-gradient(to bottom, #d0ffd0 0%, #8fff8f 49.99%, #70ff70 50%, #b5ff91 100%);
}



        .result {
            padding: 1em;
        }

        .result-transit {
        }

        .result-event {
        }

        /* Accent bar + subtle hover */
        .event-tile {
            --event-accent: var(--bs-primary);
            border-left: .25rem solid var(--event-accent);
            border-left-color: color-mix(in srgb, var(--event-accent), transparent 15%);
            padding-block: .6rem; /* compact but touch-friendly */
        }

        .event-tile:hover,
        .event-tile:focus {
            border-left-color: var(--event-accent);
        }

        /* Time column: fixed-ish width, doesn’t wrap */
        .event-time {
            font-variant-numeric: tabular-nums;
            min-width: 6rem; /* enough for HH:MM */
            line-height: 1.25;
        }

        /* Titles slightly larger than body text */
        .event-title {
            font-weight: 600;
            font-size: 130%;
        }

        /* Tweak stack spacing (optional) */
        .event-stack .list-group-item {
            border-color: var(--bs-border-color);
        }

        /* Utility: allow nice truncation in narrow containers */
        .min-w-0 {
            min-width: 0;
        }

        .problems li {
            padding-top: 1em;
            padding-bottom: 1em;
        }

        .hl-badge { font-size: 80%; padding: 0.2em 0.4em;}