/* Keep the production priceTable palette, stripes, spacing and hover. */
.clinicPriceList .priceTableViewport {
    max-width: 100%;
    margin-bottom: 50px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
}

.clinicPriceList .priceTable { margin-bottom: 0; }
/* Native renderer has a semantic thead; its first data row is not a heading. */
.clinicPriceList .priceTable tbody tr:first-child { font-weight: normal; text-transform: none; }
.clinicPriceList .priceTable .priceAmount { white-space: nowrap; }
.clinicPriceList .priceTable :is(td, th):nth-child(3) { overflow-wrap: anywhere; }
.clinicPriceList .priceTable th {
    padding: 0 10px;
    border: 3px solid #fff;
    text-align: left;
}

.priceCodesToggleWr { display: none; }
.priceDurationLabelShort { display: none; }
.priceCodesToggle {
    padding: 0;
    border: 0;
    background: transparent;
    color: #23527c;
    font: inherit;
    text-align: left;
    text-decoration: underline;
    cursor: pointer;
}

.priceCodesToggle:hover { color: #337ab7; }
.priceCodesToggle:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }

@media screen and (max-width: 899px) {
    .priceCodesToggleWr { display: block; margin: 0 0 16px; }
    .clinicPriceList:not(.priceCodesVisible) .priceKnmu { display: none; }
    .clinicPriceList.priceCodesVisible .priceTable { min-width: 560px; }
}

@media screen and (max-width: 479px) {
    .clinicPriceList .priceTable,
    .clinicPriceList .priceTable :is(td, th, p) {
        font-size: 14px;
    }
    .priceDurationLabel { display: none; }
    .priceDurationLabelShort { display: inline; }
}
