body:has(.admin-manager) > header nav,
body:has(.admin-manager) .newsletter,
body:has(.admin-manager) > footer {display:none}
body:has(.admin-manager) {background:white}
.admin-manager {max-width:1400px;margin:28px auto 64px}
.manager-heading,.manager-toolbar,.manager-nav,.manager-nav nav,.list-caption,.pagination,.date-search,.modal-header {display:flex;align-items:center;gap:12px}
.manager-heading,.manager-nav,.list-caption,.modal-header {justify-content:space-between}
.manager-heading h1 {font:600 30px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:0 0 8px;letter-spacing:-.02em}
.manager-heading p {margin:0;color:var(--muted)}
.manager-heading {margin-bottom:20px}
.admin-manager .editor-status {padding:10px 14px;font-size:14px}
.manager-nav {margin:24px 0;border-bottom:1px solid var(--line);padding-bottom:16px}
.manager-nav nav button {border-color:transparent;background:transparent}
.manager-nav nav button[aria-pressed=true] {background:var(--ink);color:white}
.manager-toolbar {margin:20px 0}
.manager-search {flex:1;max-width:520px}
.filter-chips,.month-filters {display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}
.filter-chips button {border-radius:24px;font-size:13px;background:white}
.filter-chips button span {margin-left:8px;color:var(--muted);font-variant-numeric:tabular-nums}
.filter-chips button[aria-pressed=true],.month-filters button[aria-pressed=true] {border-color:var(--navy);background:var(--sky);color:var(--navy)}
.month-filters {padding-top:16px;border-top:1px solid var(--line)}
.month-filters button {display:flex;gap:24px;align-items:center;text-align:left}
.month-filters strong {font-variant-numeric:tabular-nums}
.date-search {flex-wrap:wrap;font-size:13px;color:var(--muted)}
.date-search > span {font-weight:600;color:var(--ink);margin-right:8px}
.admin-manager .date-search label {flex-direction:row;align-items:center;gap:8px}
.date-search input {max-width:160px}
.list-caption {font-size:13px;color:var(--muted);margin-top:20px}
.list-caption p {margin:0 0 10px}
.table-scroll {overflow:auto;border:1px solid var(--line);border-radius:8px;background:white;min-height:180px}
.content-table {width:100%;border-collapse:collapse;text-align:left;font-size:14px}
.content-table th {font-size:12px;font-weight:600;color:var(--muted);padding:14px 18px;white-space:nowrap;background:#fafaf9}
.content-table td {padding:16px 18px;border-top:1px solid var(--line);vertical-align:middle}
.content-table tr:hover td {background:#fafaf9}
.content-table .title-cell {min-width:230px;max-width:400px}
.content-table .record-title {border:0;background:transparent;text-align:left;padding:0;min-height:0;font-weight:600;line-height:1.45;display:block;color:var(--ink)}
.content-table .record-title:hover {color:var(--navy);text-decoration:underline;text-underline-offset:3px}
.content-table small {display:block;color:var(--muted);margin-top:5px;font-size:12px}
.content-table .date-cell {font-size:13px;min-width:145px;font-variant-numeric:tabular-nums}
.record-badge {display:inline-block;font-size:12px;padding:3px 8px;border-radius:4px;background:var(--cream);color:#805200;white-space:nowrap}
.record-badge.published {color:#176235;background:#eaf5ee}
.record-badge.ended {color:#555;background:#f1f0ee}
.record-badge.featured {background:var(--sky);color:var(--navy);margin-top:5px}
.empty-cell {text-align:center;color:var(--muted);height:150px}
.pagination {justify-content:flex-end;margin-top:16px;font-size:13px;font-variant-numeric:tabular-nums}
.admin-manager button:disabled {opacity:.55;cursor:wait}
.admin-manager .pagination button:disabled {cursor:default}
.admin-manager dialog {width:min(900px,calc(100vw - 32px));max-width:900px;max-height:90vh;padding:0;border:0;border-radius:8px;box-shadow:0 24px 80px #0004;color:var(--ink)}
.admin-manager dialog::backdrop {background:#14142280}
.admin-manager .modal-header {position:sticky;top:0;background:white;z-index:4;padding:18px 24px;border-bottom:1px solid var(--line)}
.admin-manager .modal-header h2 {font:600 22px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:0}
#modal-status {margin:0;padding:0 24px;font-size:14px;color:var(--navy);white-space:pre-wrap}
#modal-status:not(:empty) {padding-top:14px;padding-bottom:8px}
#record-form {padding:18px 24px 0;display:block}
.form-section {border:0;padding:0;margin:0 0 26px;min-width:0}
.form-section > legend {font-size:15px;font-weight:650;padding:0 0 12px;width:100%;border-bottom:1px solid var(--line);margin-bottom:16px}
.form-fields {display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-fields > .wide {grid-column:1/-1}
.admin-manager .check-label {display:flex;flex-direction:row;align-items:center;gap:10px}
.admin-manager input[type=checkbox] {width:18px;height:18px;accent-color:var(--navy)}
.admin-manager textarea {min-height:130px;resize:vertical}
.admin-manager .field-hint {font-size:12px;color:var(--muted);font-weight:400;margin:6px 0;line-height:1.5}
.feature-dates {display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:14px}
.translation-actions {display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}
.translation-actions button {font-size:12px;padding:5px 8px;min-height:32px}
.form-fields fieldset {min-width:0}
.form-fields .image-preview {max-height:220px;width:auto;max-width:100%;object-fit:contain}
.form-fields .image-choices {display:flex;flex-wrap:wrap;gap:8px}
.form-fields .image-choices img {height:120px;width:100px;object-fit:cover}
.form-fields .image-choices button {display:flex;flex-direction:column;gap:6px}
.admin-manager .form-actions {margin:0 -24px;padding:16px 24px;justify-content:flex-end}
.place-results {display:flex;flex-direction:column;gap:4px;margin-top:6px}
.place-results button {text-align:left;font-size:13px}
.place-results img {align-self:flex-end;width:120px;margin:6px 0}
body:has(#record-dialog[open]) {overflow:hidden}
@media(max-width:700px) {
 .manager-heading {align-items:flex-start}
 .manager-heading h1 {font-size:24px}
 .manager-heading p {font-size:14px;max-width:32ch}
 .manager-heading > a {font-size:12px;white-space:nowrap}
 .manager-toolbar {flex-wrap:wrap}
 .manager-search {flex-basis:100%;max-width:none}
 .manager-nav {gap:4px}
 .manager-nav nav {gap:2px}
 .manager-nav button {padding:8px 10px}
 .month-filters {gap:6px}
 .month-filters button {flex:1;flex-direction:column;gap:3px;padding:8px;font-size:12px}
 .date-search {gap:8px}
 .date-search > span {flex-basis:100%}
 .list-caption {align-items:flex-start;gap:12px;font-size:12px}
 .content-table td,.content-table th {padding:12px}
 .form-fields,.feature-dates {grid-template-columns:1fr}
 .admin-manager dialog {width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;border-radius:0;margin:0}
 .admin-manager .modal-header {padding:14px 16px}
 #record-form {padding:16px 16px 0}
 .admin-manager .form-actions {margin:0 -16px;padding:14px 16px}
 #modal-status {padding-left:16px;padding-right:16px}
 .occurrence-row {grid-template-columns:1fr 1fr}
 .occurrence-row label:first-child {grid-column:1/-1}
}
@media(prefers-reduced-motion:no-preference) {
 .admin-manager dialog[open] {animation:editor-reveal .18s ease-out}
 @keyframes editor-reveal {from {transform:translateY(8px);opacity:.85} to {transform:translateY(0);opacity:1}}
}
/* Keep the working table, rather than introductory chrome, in the first viewport. */
body:has(.admin-manager) > header {padding-top:10px;padding-bottom:10px}
body:has(.admin-manager) > .preview {display:none}
.admin-manager {margin-top:20px}
.manager-heading h1 {font-size:26px;margin-bottom:4px}
.manager-heading {margin-bottom:12px}
.manager-heading p {font-size:14px}
.admin-manager .editor-status:empty {display:none}
.manager-nav {margin:14px 0;padding-bottom:12px}
.manager-toolbar {margin:14px 0;align-items:flex-end}
.filter-chips,.month-filters {margin:12px 0}
.month-filters {padding-top:12px}
.list-caption {margin-top:14px}
@media(max-width:700px) {
 .manager-heading {flex-direction:column;gap:10px}
 .manager-heading h1 {font-size:24px}
}
.date-filter-details > summary {font-size:13px;font-weight:600;cursor:pointer;margin-bottom:10px}
@media(min-width:701px) {
 .date-filter-details > summary {display:none}
}
@media(max-width:700px) {
 .admin-manager {margin-top:14px}
 .manager-heading {flex-direction:row;align-items:center}
 .manager-heading h1 {font-size:22px;margin:0}
 .manager-heading p {display:none}
 .manager-heading > a {min-height:36px;padding:7px 9px}
 .manager-nav {margin:10px 0;padding-bottom:10px}
 .manager-toolbar {gap:8px;margin:12px 0}
 .filter-chips {gap:6px;margin:10px 0}
 .filter-chips button {min-height:36px;padding:6px 10px}
 .month-filters {margin:10px 0;padding-top:10px}
 .date-filter-details {padding:4px 0}
 .date-filter-details > summary {margin-bottom:8px;min-height:32px;line-height:32px}
 .date-filter-details .date-search {padding:4px 0 10px}
 .list-caption {margin-top:8px}
}

.admin-manager .sort-column {display:inline-flex;align-items:center;gap:8px;padding:4px 0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;white-space:nowrap;}
.admin-manager .sort-column span {font-size:10px;font-weight:600;}
.admin-manager th[aria-sort="ascending"],.admin-manager th[aria-sort="descending"] {color:var(--ink);}

.content-table td:last-child {white-space:nowrap;}
.published-link {display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:36px;height:36px;margin-left:8px;color:var(--navy);border-radius:4px;}
.published-link:hover {background:var(--sky);}
