.pe-category-browser [hidden] { display: none !important; }
.pe-category-browser { margin-top: 1rem; }
.pe-category-browser .pe-category-tools {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}
.pe-category-browser .pe-category-tools > label {
    display: block;
    float: none;
    width: 100%;
    max-width: 32rem;
    margin: 0 0 .35rem;
    padding: 0;
    text-align: left;
    font-weight: 600;
}
.pe-category-search {
    display: block;
    width: 100%;
    max-width: 32rem;
    padding: .65rem .75rem;
    border: 1px solid #aaa;
    border-radius: 4px;
    font: inherit;
    background: #fff;
    color: #222;
}
.pe-category-status { margin: .5rem 0; font-size: .9rem; }
.pe-category-scroll {
    max-height: var(--pe-category-height, 450px);
    overflow: auto;
    border: 1px solid #ddd;
}
.pe-category-scroll table { margin: 0; border-collapse: separate; border-spacing: 0; width: 100%; }
.pe-category-scroll th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #f5f5f5;
    color: #222;
    box-shadow: 0 1px 0 #ccc;
    text-align: left;
}
.pe-category-scroll th, .pe-category-scroll td { padding: .65rem; overflow-wrap: anywhere; }
.pe-category-scroll tr { background: #fff; color: #222; }
.pe-category-scroll tr.pe-category-stripe { background: #eee; }
.pe-category-toggle { margin-top: .75rem; white-space: normal; }
.pe-category-empty { padding: 1rem; margin: 0; }
.pe-category-browser :focus-visible { outline: 2px solid #1769aa; outline-offset: 2px; }
@media (max-width: 575px) {
    .pe-category-scroll { max-height: min(var(--pe-category-height, 450px), 60vh); }
    .pe-category-scroll table { min-width: 34rem; }
    .pe-category-toggle { width: 100%; }
}
@media print {
    .pe-category-tools, .pe-category-toggle { display: none !important; }
    .pe-category-scroll { max-height: none; overflow: visible; }
    .pe-category-scroll tbody tr[hidden] { display: table-row !important; }
    .pe-category-scroll th { position: static; }
}
