/*
 * Grandes Marées — feuille de style front-office.
 * V1.2.5 : harmonisation avec le Calculateur Marée.
 */
.grand-maree {
    --gm-text: #54595F;
    --gm-muted: #7A858C;
    --gm-line: #E7EAEC;
    --gm-surface: #FFFFFF;

    padding: 1rem .1rem;
    color: var(--gm-text);
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    font-size: 14px;
    line-height: 1.45;
}

.grand-maree__header {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: .25rem .5rem;
    margin: 0 0 1rem;
    color: var(--gm-text);
    font-size: 14px;
    line-height: 1.45;
}

.grand-maree__port {
    color: var(--gm-text);
    font-weight: 600;
}

.grand-maree__period {
    color: var(--gm-text);
    font-weight: 700;
}

.grand-maree__list {
    display: flex;
    flex-direction: column;
    gap: .15rem;
}

.grand-maree__item {
    display: flex;
    align-items: baseline;
    gap: .35rem;
    padding: .3rem 0;
    color: var(--gm-text);
    line-height: 1.4;
    border-bottom: 1px solid var(--gm-line);
}

.grand-maree__item:last-child {
    border-bottom: 0;
}

.grand-maree__date {
    min-width: 7.5rem;
    color: var(--gm-text);
}

.grand-maree__date::after {
    content: " :";
}

.grand-maree__coefficients {
    color: var(--gm-text);
    font-weight: 600;
    white-space: nowrap;
}

.grand-maree__empty {
    margin: 0;
    padding-top: .25rem;
    color: var(--gm-text);
}

.grand-maree--error {
    padding: .75rem .1rem;
    color: var(--gm-text);
}

@media (max-width: 480px) {
    .grand-maree {
        padding: .85rem .1rem;
    }

    .grand-maree__header {
        display: block;
    }

    .grand-maree__period {
        display: block;
        margin: .15rem 0 0;
    }

    .grand-maree__date {
        min-width: 7rem;
    }
}
