/* The archive is a compact catalog; rows stay readable without page scrolling. */
.pc-public-wiki .wp-site-blocks .pc-archive { margin-top: 0; }
.pc-public-wiki .wp-site-blocks .pc-archive-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    gap: 10px 14px;
    margin: 0 0 12px;
}
.pc-public-wiki .wp-site-blocks :is(.pc-archive-search, .pc-archive-filter) {
    display: flex;
    flex-direction: column;
    gap: 5px;
    font-size: 13px;
    color: var(--pc-muted);
    min-width: 0;
}
.pc-public-wiki .wp-site-blocks .pc-archive-search { flex: 0 1 320px; }
.pc-public-wiki .wp-site-blocks .pc-archive-toolbar :is(input, select, button) {
    box-sizing: border-box;
    max-width: 100%;
    min-height: 36px;
    border: 1px solid #aab3bb;
    border-radius: 3px;
    padding: 6px 10px;
    background: var(--pc-paper);
    color: var(--pc-ink);
    font: inherit;
    font-size: 14px;
    line-height: 22px;
}
.pc-public-wiki .wp-site-blocks .pc-archive-filter select { width: 250px; }
.pc-public-wiki .wp-site-blocks .pc-archive-toolbar button { cursor: pointer; background: var(--pc-header); }
.pc-public-wiki .wp-site-blocks .pc-archive-toolbar button:hover { border-color: var(--pc-link); color: var(--pc-link); }
.pc-public-wiki .wp-site-blocks .pc-archive-summary { color: var(--pc-muted); font-size: 13px; margin: 8px 0 12px; }
.pc-public-wiki .wp-site-blocks .pc-table-wrap { width: 100%; min-width: 0; }
.pc-public-wiki .wp-site-blocks .pc-archive-table { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 15px; line-height: 22px; }
.pc-public-wiki .wp-site-blocks .pc-archive-table :is(th, td) { padding: 8px 12px; border: 0; border-bottom: 1px solid var(--pc-line); text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.pc-public-wiki .wp-site-blocks .pc-archive-table th { background: var(--pc-header); font-size: 13px; font-weight: 600; color: var(--pc-muted); }
.pc-public-wiki .wp-site-blocks .pc-archive-table tr > :first-child { padding-left: 0; }
.pc-public-wiki .wp-site-blocks .pc-archive-table tr > :last-child { padding-right: 0; }
.pc-public-wiki .wp-site-blocks .pc-archive-table tbody tr:hover { background: #f9fafb; }
.pc-public-wiki .wp-site-blocks .pc-archive-table a { text-decoration: none; }
.pc-public-wiki .wp-site-blocks .pc-archive-table a:hover { text-decoration: underline; }
.pc-public-wiki .wp-site-blocks .pc-problem-table th:nth-child(1) { width: 36%; }
.pc-public-wiki .wp-site-blocks .pc-problem-table th:nth-child(2) { width: 34%; }
.pc-public-wiki .wp-site-blocks .pc-problem-table th:nth-child(3) { width: 16%; }
.pc-public-wiki .wp-site-blocks .pc-problem-table th:nth-child(4) { width: 14%; }
.pc-public-wiki .wp-site-blocks .pc-contest-table th:nth-child(1) { width: 56%; }
.pc-public-wiki .wp-site-blocks .pc-contest-table th:nth-child(2) { width: 22%; }
.pc-public-wiki .wp-site-blocks .pc-contest-table th:nth-child(3) { width: 10%; }
.pc-public-wiki .wp-site-blocks .pc-contest-table th:nth-child(4) { width: 12%; }
.pc-public-wiki .wp-site-blocks .pc-title-cell { font-weight: 500; }
.pc-public-wiki .wp-site-blocks .pc-authors-cell { font-size: 13px; }
.pc-public-wiki .wp-site-blocks .pc-contest-memberships { list-style: none; margin: 0; padding: 0; font-size: 13px; }
.pc-public-wiki .wp-site-blocks .pc-contest-label { color: var(--pc-muted); margin-left: 6px; white-space: nowrap; }
.pc-public-wiki .wp-site-blocks .pc-archive-table .pc-judge-list { display: flex; flex-wrap: wrap; list-style: none; gap: 0 10px; margin: 0; padding: 0; font-size: 13px; }
.pc-public-wiki .wp-site-blocks .pc-archive-table .pc-judge-list li + li::before { content: none; }
.pc-public-wiki .wp-site-blocks .pc-pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 22px 0 0; font-size: 14px; }
.pc-public-wiki .wp-site-blocks .pc-pagination :is(a, span) { padding: 5px 10px; }
.pc-public-wiki .wp-site-blocks .pc-pagination [aria-current="page"] { background: var(--pc-header); color: var(--pc-ink); font-weight: 600; }
.pc-public-wiki .wp-site-blocks .pc-empty-state { border-block: 1px solid var(--pc-line); padding: 24px 0; color: var(--pc-muted); }
.pc-public-wiki .wp-site-blocks .pc-home-directory { margin-top: 24px; }

@media (max-width: 700px) {
    .pc-public-wiki .wp-site-blocks .pc-archive-search { flex: 1 1 100%; }
    .pc-public-wiki .wp-site-blocks .pc-archive-filter { flex: 1 1 180px; }
    .pc-public-wiki .wp-site-blocks .pc-archive-filter select { width: 100%; }
    .pc-public-wiki .wp-site-blocks .pc-archive-table thead { position: absolute; width: 1px; height: 1px; clip-path: inset(50%); overflow: hidden; }
    .pc-public-wiki .wp-site-blocks .pc-archive-table :is(tbody, tr, td) { display: block; width: auto; }
    .pc-public-wiki .wp-site-blocks .pc-archive-table tbody { border-top: 1px solid var(--pc-line); }
    .pc-public-wiki .wp-site-blocks .pc-archive-table tbody tr { display: grid; grid-template-columns: minmax(0, 1fr) minmax(56px, 24%); column-gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--pc-line); }
    .pc-public-wiki .wp-site-blocks .pc-archive-table td { padding: 0; border: 0; min-width: 0; }
    .pc-public-wiki .wp-site-blocks .pc-archive-table .pc-title-cell { grid-column: 1; grid-row: 1; }
    .pc-public-wiki .wp-site-blocks .pc-archive-table .pc-contest-cell { grid-column: 1; grid-row: 2; margin-top: 3px; }
    .pc-public-wiki .wp-site-blocks .pc-archive-table .pc-authors-cell { grid-column: 1; grid-row: 3; color: var(--pc-muted); }
    .pc-public-wiki .wp-site-blocks .pc-archive-table .pc-authors-cell:not(:empty) { margin-top: 3px; }
    .pc-public-wiki .wp-site-blocks .pc-archive-table .pc-authors-cell:not(:empty)::before { content: 'Author: '; }
    .pc-public-wiki .wp-site-blocks .pc-archive-table .pc-judges-cell { grid-column: 2; grid-row: 1 / span 3; text-align: right; }
    .pc-public-wiki .wp-site-blocks .pc-archive-table .pc-judge-list { justify-content: flex-end; }
    .pc-public-wiki .wp-site-blocks .pc-archive-table .pc-category-cell { grid-column: 1; color: var(--pc-muted); font-size: 13px; margin-top: 3px; }
    .pc-public-wiki .wp-site-blocks .pc-archive-table .pc-count-cell { grid-column: 1; color: var(--pc-muted); font-size: 13px; }
    .pc-public-wiki .wp-site-blocks .pc-archive-table .pc-count-cell::after { content: ' problems'; }
}

/* Native, editable homepage introduction; the archive keeps its compact rhythm. */
.pc-public-wiki .wp-site-blocks .pc-home-intro {
    gap: 24px;
    margin: 0;
    align-items: center;
}
.pc-public-wiki .wp-site-blocks .pc-home-intro > .wp-block-column { min-width: 0; }
.pc-public-wiki .wp-site-blocks .pc-home-intro .wp-block-image { margin: 0; }
.pc-public-wiki .wp-site-blocks .pc-home-intro .wp-block-image img {
    display: block;
    width: 220px;
    height: 200px;
    object-fit: contain;
}
.pc-public-wiki .wp-site-blocks .pc-home-intro-copy { max-width: 70ch; }
.pc-public-wiki .wp-site-blocks .pc-wiki-main .pc-home-intro h1 { margin: 0 0 12px; }
.pc-public-wiki .wp-site-blocks .pc-home-intro p { margin: 0; line-height: 1.6; }
@media (max-width: 781px) {
    .pc-public-wiki .wp-site-blocks .pc-home-intro { gap: 16px; }
    .pc-public-wiki .wp-site-blocks .pc-home-intro .wp-block-image img {
        width: 180px;
        height: 160px;
    }
}
