/* Worship look 07: Table. A clear timetable with Service, For, Time and Place columns. */
.worship-look-07 {
    background: #f4f7f8;
}

.worship-look-07 .wl-list,
.worship-look-07 .wl-head {
    --wl-cols: 2.75rem minmax(0, 2fr) minmax(0, .9fr) minmax(0, 1.5fr) minmax(0, 1.4fr);
}

.worship-look-07 .wl-list {
    overflow: hidden;
    border: 1px solid rgba(46, 62, 78, .12);
    border-radius: 12px;
    background: #fff;
}

.worship-look-07 .wl-icon {
    color: var(--wl-accent);
}

.worship-look-07 .wl-name {
    font-size: 1rem;
    font-weight: 700;
    color: var(--wl-ink);
}

.worship-look-07 .wl-when {
    font-weight: 700;
    color: var(--wl-accent-dark);
}

.worship-look-07 .wl-who,
.worship-look-07 .wl-where {
    color: #4f5b66;
}

/* Real table layout from tablets up. */
@media (min-width: 768px) {
    .worship-look-07 .wl-head {
        display: grid;
        grid-template-columns: var(--wl-cols);
        column-gap: 1rem;
        padding: .8rem 1.25rem;
        border-radius: 12px 12px 0 0;
        background: var(--wl-ink);
    }

    .worship-look-07 .wl-head span {
        font-size: .78rem;
        font-weight: 700;
        letter-spacing: .08em;
        text-transform: uppercase;
        color: #fff;
    }

    .worship-look-07 .wl-head span:first-child {
        grid-column: 1 / span 2;
    }

    .worship-look-07 .wl-list {
        border-top: 0;
        border-radius: 0 0 12px 12px;
    }

    .worship-look-07 .wl-item {
        display: grid;
        grid-template-columns: var(--wl-cols);
        column-gap: 1rem;
        align-items: center;
        padding: .95rem 1.25rem;
        border-top: 1px solid rgba(46, 62, 78, .08);
    }

    .worship-look-07 .wl-item:first-child {
        border-top: 0;
    }

    .worship-look-07 .wl-item:nth-child(even) {
        background: #f8fafb;
    }

    .worship-look-07 .wl-icon { grid-column: 1; font-size: 1.1rem; }
    .worship-look-07 .wl-name { grid-column: 2; }
    .worship-look-07 .wl-who { grid-column: 3; }
    .worship-look-07 .wl-when { grid-column: 4; }
    .worship-look-07 .wl-where { grid-column: 5; }

    .worship-look-07 .wl-item:not(:has(.wl-who))::after {
        content: "\2014";
        grid-column: 3;
        grid-row: 1;
        color: #b6bec5;
    }
}

/* Phones: each row becomes a small card. */
@media (max-width: 767.98px) {
    .worship-look-07 .wl-item {
        display: grid;
        grid-template-columns: 2.25rem minmax(0, 1fr);
        column-gap: .5rem;
        padding: 1rem 1.1rem;
        border-top: 1px solid rgba(46, 62, 78, .08);
    }

    .worship-look-07 .wl-item:first-child {
        border-top: 0;
    }

    .worship-look-07 .wl-icon {
        grid-row: 1 / span 4;
        padding-top: .2rem;
    }

    .worship-look-07 .wl-who {
        font-size: .85rem;
        font-weight: 600;
    }

    .worship-look-07 .wl-where {
        font-size: .9rem;
    }
}

.worship-look-07 .wl-translation {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .3rem 1rem;
    align-items: center;
    margin-top: 1.25rem;
    padding: 1.1rem 1.25rem;
    border: 1px solid rgba(46, 62, 78, .12);
    border-radius: 12px;
    background: #fff;
}

.worship-look-07 .wl-translation .wl-icon {
    grid-row: 1 / span 2;
    font-size: 1.6rem;
}

.worship-look-07 .wl-translation h3 {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--wl-ink);
}

.worship-look-07 .wl-text {
    grid-column: 2;
    font-size: .92rem;
    color: #4f5b66;
}

.worship-look-07 .wl-action {
    grid-column: 1 / -1;
    margin-top: .6rem !important;
}

@media (min-width: 768px) {
    .worship-look-07 .wl-translation {
        grid-template-columns: auto minmax(0, 1fr) auto;
    }

    .worship-look-07 .wl-action {
        grid-column: 3;
        grid-row: 1 / span 2;
        margin-top: 0 !important;
    }
}

.dark .worship-look-07 {
    background: transparent;
}

.dark .worship-look-07 .wl-list,
.dark .worship-look-07 .wl-translation {
    background: rgba(255, 255, 255, .05);
    border-color: rgba(255, 255, 255, .1);
}

.dark .worship-look-07 .wl-item:nth-child(even) {
    background: rgba(255, 255, 255, .03);
}

.dark .worship-look-07 .wl-item {
    border-color: rgba(255, 255, 255, .08);
}

.dark .worship-look-07 .wl-name,
.dark .worship-look-07 .wl-translation h3 {
    color: #fff;
}

.dark .worship-look-07 .wl-when {
    color: #5fe0cf;
}

.dark .worship-look-07 .wl-who,
.dark .worship-look-07 .wl-where,
.dark .worship-look-07 .wl-text {
    color: rgba(255, 255, 255, .72);
}
