/* Shared public table identity: catalogue, participants and programme schedules. */
.public-page-content{
    --public-table-green:#2c645b;--public-table-ink:#203b35;--public-table-muted:#617369;
    --public-table-surface:#fcfaf5;--public-table-stripe:#f6f1e8;--public-table-line:#ded7cb;
}
.public-page-content .public-table-panel{min-width:0;overflow:hidden;border:1px solid var(--public-table-line);border-radius:7px;background:var(--public-table-surface)}
.public-page-content .public-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#a6b4a6 #eee7db}
.public-page-content .public-table-scroll:focus-visible{outline:2px solid var(--public-table-green);outline-offset:-3px}
.public-page-content .public-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;color:var(--public-table-ink);font-size:14px;line-height:1.8;text-align:start}
.public-page-content .public-table thead th{
    padding:16px 12px;border:0;background:var(--public-table-green);color:#fff;
    font-size:13px;line-height:1.65;font-weight:500;text-align:start;vertical-align:middle;overflow-wrap:normal;
}
.public-page-content .public-table tbody :is(th,td){
    display:table-cell;padding:18px 12px;border:0;border-block-end:1px solid #e7e0d4;
    background:var(--public-table-surface);color:inherit;font-size:14px;line-height:1.8;
    font-weight:400;text-align:start;vertical-align:middle;overflow-wrap:anywhere;box-shadow:none;
}
.public-page-content .public-table tr>*:first-child{padding-inline-start:20px}
.public-page-content .public-table:not(.public-table--grouped)>tbody>tr:nth-child(even)>*,
.public-page-content .public-table--grouped>tbody>tr[data-public-row-tone=alternate]>*{background:var(--public-table-stripe)}
.public-page-content .public-table tbody tr:last-child>*{border-block-end:0}
/* No row hover recolouring. Only catalogue rows have a details interaction. */
.public-page-content .public-table .public-table-number,
.public-page-content .public-table .public-table-number-heading{text-align:center;font-variant-numeric:tabular-nums}
.public-page-content .public-table .public-table-number{color:var(--public-table-green)}
.public-page-content .public-table .public-table-primary{font-size:15px;font-weight:600;color:var(--public-table-ink)}
.public-page-content .public-table .public-table-empty{color:var(--public-table-muted);text-align:center}
.public-page-content .programme-table.public-table{min-width:720px}

/* Source schedule structure remains intact, including merged organisation cells. */
.public-page-content .public-table--schedule tbody :is(th,td){vertical-align:top;white-space:pre-line}
.public-page-content .public-table--schedule thead th[scope=colgroup]{text-align:center;border-block-end:1px solid #ffffff30}
.public-page-content .public-table--schedule thead tr+tr th{border-block-start:1px solid #ffffff30}
.public-page-content .public-table--schedule .public-table-break>td{
    padding:14px 20px;background:#fcf4e4;color:#77582e;font-weight:600;text-align:center;
    border-block:1px solid #e7e0d4;
}
.public-page-content .public-table-panel.public-table-day{margin-block-end:28px}
.public-page-content .public-table-day>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;background:var(--public-table-stripe);color:var(--public-table-green);border-block-end:1px solid var(--public-table-line)}
.public-page-content .public-table-day>header h3{margin:0;font-size:19px;font-weight:600}
.public-page-content .public-table-day>header time{font-size:14px;font-variant-numeric:tabular-nums}

@media(max-width:700px){.public-page-content .public-table-day>header{padding:16px;align-items:start;flex-direction:column;gap:6px}}
