.docheader-funcmenu select {
    height: 1rem;
    padding: 0.1rem;
    font-size: 1rem;
}

select.multiple {
    height: 200px ;
}

.row.headline {
    text-align: center;
}

.row.sektion {
    border: 2px solid #009a4e;
    margin-bottom: 1rem;
    margin-left: 0.15rem;
    margin-right: 0.15rem;
    padding: 1rem;
}

.row.sektion h4 {
    background: #009a4e;
    color: #fff;
    padding: 0.5rem;
    margin-left: -1rem;
    margin-right: -1rem;
    margin-top: -1rem;
    font-size: 1.5rem;
    text-align: center;
}

.row.sektion h5 {
    font-size: 1.15rem;
    color: #009a4e;
}

div.therapeutenliste ul{
    margin-bottom: 1.0rem;
}

.sub-nav dt {
    margin-right: 1rem;
    color: #009a4e;
}

.sub-nav dd {
    margin-left: 0rem;
}

.sub-nav dd a {
    padding: 0.1875rem 0.5rem;
}

.therapeutenliste td {
    padding: 1rem;
}

table.therapeutenliste .button {
    margin-bottom: 0rem;
    margin-top: -0.5rem;
}

tr.unsichtbar td {
    color: #aaa;
}

tr.unsichtbar td.sichtbar {
    text-align: center;
    color: red;
}

tr.unsichtbar .button.tiny {
    background-color: #aaa;
}

/* Public list below the large breakpoint: the table is at least ~840px wide, so each row
   becomes a card (name, PLZ + Ort, Details on the right) and the sort buttons one row. */
@media screen and (max-width: 63.99875em) {
    table.therapeutenliste,
    table.therapeutenliste tbody,
    table.therapeutenliste tr,
    table.therapeutenliste th,
    table.therapeutenliste td {
        display: block;
    }

    table.therapeutenliste tbody {
        border: 0;
    }

    table.therapeutenliste tr:first-child {
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
        margin-bottom: 0.5rem;
    }

    table.therapeutenliste th {
        flex: 1 1 auto;
        width: auto;
        padding: 0;
    }

    table.therapeutenliste th:empty {
        display: none;
    }

    table.therapeutenliste th .button {
        display: block;
        margin: 0;
        padding: 0.6em 0.8em;
    }

    table.therapeutenliste tr + tr {
        display: flex;
        flex-wrap: wrap;
        align-items: baseline;
        column-gap: 0.3em;
        position: relative;
        min-height: 3.5rem;
        padding: 0.5rem 6rem 0.5rem 0.75rem;
    }

    /* line break between name and place */
    table.therapeutenliste tr + tr::after {
        content: "";
        flex-basis: 100%;
        order: 1;
    }

    table.therapeutenliste td {
        padding: 0;
    }

    table.therapeutenliste td:nth-child(-n+2) {
        font-weight: bold;
    }

    table.therapeutenliste td:nth-child(n+3) {
        order: 2;
    }

    table.therapeutenliste td:last-child {
        position: absolute;
        top: 50%;
        right: 0.75rem;
        transform: translateY(-50%);
    }

    table.therapeutenliste td:last-child .button {
        margin: 0;
    }
}
