:root {
	--paper: #F7F7F5;
	--ink: #242321;
	--accent: #8c252a;
	--rule: #d5d5d3;
	--heading: Arial, Helvetica, sans-serif;
	--body: Arial, Helvetica, sans-serif;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--body); font-size: 14px; line-height: 1.45; }
a { color: var(--accent); text-underline-offset: 4px; }
a:hover { text-decoration-thickness: 2px; }
.masthead { max-width: none; margin: 0 auto; padding: 16px 24px; border-bottom: 1px solid var(--rule); display: flex; justify-content: space-between; align-items: center; gap: 24px; }
.wordmark { font-family: var(--heading); font-size: 22px; line-height: 1.1; font-weight: 700; color: var(--ink); text-decoration: none; }
.wordmark span { display: block; font-family: var(--body); font-size: 10px; font-weight: 400; letter-spacing: 1.5px; margin-top: 6px; }
.cms-label { font-size: 10px; letter-spacing: 2px; }
.auth-card { width: min(100% - 40px, 520px); margin: 32px auto 24px; padding: 0 20px; }
.eyebrow { color: var(--accent); font-size: 11px; font-weight: 700; letter-spacing: 1px; margin: 0 0 6px; }
h1, h2 { font-family: var(--heading); font-weight: 700; line-height: 1.25; letter-spacing: 0; }
h1 { font-size: 26px; margin: 0 0 14px; }
h2 { font-size: 20px; margin: 0 0 12px; }
.intro { color: #60605e; margin: 0 0 18px; }
label { display: block; font-size: 13px; font-weight: 700; margin: 14px 0 6px; }
input:not([type='hidden']):not([type='checkbox']):not([type='radio']) { width: 100%; min-height: 40px; padding: 8px 10px; border: 1px solid #b8b8b5; border-radius: 0; font: inherit; background: #ffffff; color: var(--ink); }
input:focus-visible, button:focus-visible, a:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; }
.password-wrap { position: relative; }
.password-wrap input { padding-right: 72px; }
.reveal { position: absolute; right: 3px; top: 3px; bottom: 3px; padding: 0 12px; color: var(--accent); background: transparent; border: 0; font: inherit; font-size: 12px; cursor: pointer; }
.form-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 12px; margin-top: 28px; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 38px; padding: 9px 14px; border: 1px solid var(--accent); background: var(--accent); color: white; font-family: var(--body); font-size: 11px; font-weight: 700; letter-spacing: 1px; text-decoration: none; cursor: pointer; }
.button:hover { background: #6f1e22; border-color: #6f1e22; }
.button.secondary { color: var(--accent); background: transparent; }
.button.secondary:hover { background: #eeeeec; }
.button:disabled { opacity: .65; cursor: wait; }
.below-form { margin-top: 28px; padding-top: 22px; border-top: 1px solid var(--rule); font-size: 13px; }
.below-form p { margin: 8px 0; }
.notice, .error { padding: 14px 16px; margin: 0 0 24px; border-left: 3px solid var(--accent); background: #eeeeec; font-size: 14px; }
.error { background: #f0dedd; }
.footer { font-size: 11px; color: #737370; text-align: center; padding: 32px 20px; }
.dashboard { max-width: none; margin: 24px auto; padding: 0 24px; }
.dashboard-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; }
.welcome-panel { border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); padding: 24px 0; margin-top: 18px; }
.welcome-panel p { max-width: 640px; }
@media (max-width: 600px) {
	.masthead { padding: 14px 16px; }
	.wordmark { font-size: 22px; }
	.cms-label { display: none; }
	.auth-card { margin-top: 24px; padding: 0; }
	.dashboard { padding: 0 16px; margin-top: 20px; }
	.dashboard-top { flex-direction: column; gap: 0; }
	h1 { letter-spacing: 0; }
}
select, textarea { width:100%; padding:8px 10px; border:1px solid #b8b8b5; border-radius:0; background:#ffffff; color:var(--ink); font:inherit; min-height:40px; }
textarea { resize:vertical; }
.cms-nav { display:flex; flex-wrap:wrap; gap:20px; margin-bottom:18px; font-size:13px; }
.filters { display:grid; grid-template-columns:2fr 1fr 1fr auto; gap:16px; align-items:end; margin-bottom:28px; }
.filter-actions { display:flex; align-items:center; gap:16px; }
.article-row { display:flex; justify-content:space-between; align-items:center; gap:24px; padding:16px 0; border-top:1px solid var(--rule); text-decoration:none; color:var(--ink); }
.article-row h2 { font-size:18px; margin:8px 0 6px; letter-spacing:0; }
.article-row p { margin:0; color:#60605e; font-size:13px; }
.article-row:hover h2 { color:var(--accent); }
.status-pill { font-size:10px; text-transform:uppercase; letter-spacing:1px; color:var(--accent); border:1px solid var(--rule); padding:4px 8px; }
.edit-label { white-space:nowrap; font-size:11px; color:var(--accent); }
.pagination { display:flex; justify-content:flex-end; gap:16px; margin-top:24px; }
.editor-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:24px; }
.form-section, .side-section { border-top:1px solid var(--rule); padding-top:16px; margin-top:20px; }
.side-section h2 { font-size:16px; letter-spacing:0; margin-bottom:12px; }
.form-section h2 { font-size:18px; letter-spacing:0; }
.field-help { font-size:12px; color:#60605e; margin:6px 0 12px; }
.check-label { display:flex; align-items:center; gap:10px; font-weight:400; margin:12px 0; }
.check-label input[type='checkbox'] { width:18px; height:18px; min-height:18px; accent-color:var(--accent); }
.two-columns { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.label-row { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.label-row label { margin-bottom:8px; }
.text-button { border:0; background:transparent; color:var(--accent); font:inherit; font-size:12px; cursor:pointer; padding:8px 0; }
.image-preview { display:block; width:100%; height:160px; object-fit:contain; background:#eeeeec; margin:16px 0; }
[hidden] { display:none !important; }
.image-actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.save-bar { position:sticky; top:0; z-index:30; display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:12px; background:var(--paper); border-bottom:1px solid var(--rule); padding:12px 0; margin:0 0 12px; }
.save-actions { display:flex; gap:12px; margin-left:auto; flex-shrink:0; }
.save-bar #save-message { margin:0; flex:1 1 240px; }
.save-bar #save-message:empty { display:none; }
summary { cursor:pointer; font-weight:700; }
dialog { width:min(760px,calc(100% - 32px)); max-height:90vh; overflow:auto; border:1px solid var(--rule); background:var(--paper); color:var(--ink); padding:20px; }
dialog::backdrop { background:rgba(20,18,16,.6); }
.modal-header { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.modal-header h2 { font-size:20px; letter-spacing:0; margin:0; }
.modal-close { font-size:30px; line-height:1; background:transparent; border:0; cursor:pointer; color:var(--ink); padding:8px; }
#media-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding:20px 0; }
.media-tile { background:transparent; border:1px solid var(--rule); padding:0; text-align:left; cursor:pointer; color:var(--ink); }
.media-tile img { width:100%; height:120px; object-fit:cover; display:block; }
.media-tile span { display:block; padding:10px; font-size:12px; overflow-wrap:anywhere; }
hr { border:0; border-top:1px solid var(--rule); margin:24px 0; }
@media(max-width:900px) { .editor-layout { grid-template-columns:1fr; } .editor-sidebar { display:grid; grid-template-columns:1fr 1fr; gap:20px; } .filters { grid-template-columns:1fr 1fr; } }
@media(max-width:600px) { .editor-sidebar, .two-columns, .filters { grid-template-columns:1fr; } #media-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } dialog { padding:20px; } .article-row { gap:12px; } .article-row h2 { font-size:18px; } }

.save-bar-sentinel { height:1px; margin-bottom:-1px; pointer-events:none; }
.sticky-article-title { display:none; min-width:0; flex:1 1 0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-family:var(--heading); font-weight:700; font-size:16px; line-height:1.3; }
.save-bar.is-stuck .sticky-article-title { display:block; }
.save-bar #save-message:not(:empty) { order:3; flex-basis:100%; }
@media(max-width:600px) {
	.save-bar.is-stuck .sticky-article-title { flex-basis:100%; font-size:15px; }
}

.section-toggles { display:flex; flex-wrap:wrap; gap:8px; }
.section-toggle-item { display:contents; }
.section-toggle { min-height:38px; padding:8px 12px; border:1px solid #b6a896; background:var(--paper); color:var(--ink); font:inherit; font-size:13px; border-radius:3px; cursor:pointer; }
.section-toggle:hover { background:#eeeeec; border-color:#9f907d; }
.section-toggle[aria-pressed='true'] { background:var(--accent); border-color:var(--accent); color:#fff; }
.section-toggle[aria-pressed='true']:hover { background:#6f1e22; border-color:#6f1e22; }
@media(max-width:600px) {
	.button, .section-toggle { min-height:44px; }
}

.save-bar { align-items:flex-start; padding:8px 0; }
.article-form-heading { flex:1 1 180px; min-width:0; }
.article-form-heading h1 { margin:0; }
.article-form-heading .eyebrow { margin:0 0 4px; }
.save-bar.is-stuck .article-form-heading { display:none; }
.save-bar.is-stuck .sticky-article-title { align-self:center; }

.cms-nav { display:inline-flex; max-width:100%; margin-bottom:16px; padding:8px 12px; border:1px solid #d9cfc2; border-radius:3px; background:#eeeeec; font-size:12px; line-height:1.4; }
.cms-nav ol { display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; list-style:none; padding:0; margin:0; }
.cms-nav li { display:inline-flex; align-items:center; gap:12px; }
.cms-nav li + li::before { content:''; width:5px; height:5px; flex-shrink:0; border-top:1px solid #9f907d; border-right:1px solid #9f907d; transform:rotate(45deg); }
.cms-nav a { color:#60605e; text-decoration:none; }
.cms-nav a:hover { color:var(--accent); text-decoration:underline; }
.cms-nav [aria-current='page'] { color:var(--ink); font-weight:700; }

/* Header and account controls */
.masthead { background: #e9e9e7; border-bottom-color: #bfb2a1; }
.masthead .cms-label { margin-left: auto; }
.account-menu { position: relative; flex-shrink: 0; }
.account-avatar { width: 42px; height: 42px; border-radius: 50%; border: 1px solid var(--accent); background: var(--accent); color: white; font: 700 14px var(--body); cursor: pointer; }
.account-avatar:hover { background: #6f1e22; }
.account-dropdown { position: absolute; right: 0; top: calc(100% + 10px); width: min(280px, calc(100vw - 32px)); z-index: 100; background: #ffffff; border: 1px solid var(--rule); border-radius: 4px; box-shadow: 0 6px 20px #24232126; padding: 6px; }
.account-dropdown[hidden] { display: none; }
.account-identity { padding: 10px 12px; border-bottom: 1px solid var(--rule); margin-bottom: 6px; overflow-wrap: anywhere; }
.account-identity strong, .account-identity span { display: block; }
.account-identity span { color: #60605e; font-size: 12px; margin-top: 3px; }
.account-dropdown a, .account-dropdown button { display: block; width: 100%; text-align: left; padding: 10px 12px; font: inherit; color: var(--ink); border: 0; background: transparent; text-decoration: none; cursor: pointer; border-radius: 2px; }
.account-dropdown a:hover, .account-dropdown button:hover { background: #eeeeec; color: var(--accent); }
.account-dropdown form { margin: 4px 0 0; padding-top: 4px; border-top: 1px solid var(--rule); }
.account-content { max-width: 760px; }
.account-panel { padding: 20px; border: 1px solid var(--rule); background: #eee7dc; margin: 20px 0; border-radius: 3px; }
.account-panel h2 { margin-bottom: 8px; }
@media (max-width: 600px) { .account-menu { margin-left: auto; } .account-panel { padding: 16px; } }

/* Compact article table */
.article-table-wrap { overflow-x: auto; border: 1px solid var(--rule); border-radius: 3px; }
.article-table { width: 100%; min-width: 850px; border-collapse: collapse; text-align: left; font-size: 13px; }
.article-table th { background: #e9e9e7; padding: 12px 14px; font-size: 12px; font-weight: 700; border-bottom: 1px solid #bfb2a1; white-space: nowrap; }
.article-table td { padding: 12px 14px; border-bottom: 1px solid #ded5c8; vertical-align: middle; }
.article-table tbody tr:last-child td { border-bottom: 0; }
.article-table tbody tr:nth-child(even) { background: #eee7dc; }
.article-table tbody tr:hover { background: #eeeeec; }
.article-title-cell { width: 32%; min-width: 240px; overflow-wrap: anywhere; }
.article-title-cell a { font-weight: 700; text-decoration: none; }
.article-title-cell a:hover { text-decoration: underline; }
.article-table .status-pill { display: inline-block; border-radius: 3px; white-space: nowrap; letter-spacing: .4px; background: #eeeeec; color: #60605e; }
.article-table .status-published { background: var(--accent); border-color: var(--accent); color: white; }
.article-table .status-archived { background: #ded9d1; color: #60605e; }
.date-cell { white-space: nowrap; color: #60605e; }
.article-table .table-empty { padding: 28px 14px; text-align: center; color: #60605e; }
.results-summary { font-size: 12px; color: #60605e; margin: 12px 0; }
.filters { margin-bottom: 20px; }

#media-dialog { width: min(1100px, calc(100% - 32px)); }
.media-picker-layout { display: grid; grid-template-columns: minmax(0, 1fr) 260px; gap: 24px; }
#media-properties { border-left: 1px solid var(--rule); padding-left: 24px; }
#media-properties h3 { margin: 14px 0; }
#media-selected-preview { width: 100%; max-height: 180px; object-fit: contain; background: #eeeeec; }
#media-selected-name { overflow-wrap: anywhere; }
#media-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.media-tile[aria-pressed="true"] { outline: 3px solid var(--accent); outline-offset: 1px; }
.media-picker-actions { position: sticky; bottom: -20px; background: var(--paper); padding: 16px 0; border-top: 1px solid var(--rule); z-index: 1; }
.media-upload-panel { margin-top: 16px; }
@media(max-width:700px) { .media-picker-layout { grid-template-columns: 1fr; } #media-properties { border-left: 0; border-top: 1px solid var(--rule); padding: 16px 0 0; } #media-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

#media-drop-zone { position: relative; min-height: 210px; margin-top: 16px; padding: 28px 20px; border: 2px dashed #b6a896; border-radius: 4px; background: #eeeeec; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; text-align: center; }
#media-drop-zone p { margin: 0; font-size: 18px; font-weight: 700; }
#media-drop-zone span, #media-drop-zone small { color: #60605e; }
#media-drop-zone.drag-over { border-color: var(--accent); background: #f0dedd; }
#media-drop-zone .upload-file-input { position: absolute; width: 1px; height: 1px; min-height: 0; padding: 0; overflow: hidden; clip-path: inset(50%); }
#media-upload-queue { list-style: none; padding: 0; margin: 12px 0; font-size: 12px; overflow-wrap: anywhere; }
#media-upload-queue li { padding: 6px 0; border-bottom: 1px solid var(--rule); }

/* Shared top-centre toast; no document space is reserved. */
.cms-flash { display: none; }
.cms-toast { position: fixed; top: 20px; left: 50%; transform: translateX(-50%); z-index: 10000; display: flex; align-items: center; gap: 18px; max-width: min(560px, calc(100vw - 32px)); padding: 14px 18px; border-radius: 4px; background: var(--accent); color: white; box-shadow: 0 4px 18px #24232140; font-size: 14px; font-weight: 700; opacity: 0; transition: opacity .25s ease; }
.cms-toast[hidden] { display: none; }
.cms-toast.is-visible { opacity: 1; }
.cms-toast span { overflow-wrap: anywhere; }
.cms-toast button { border: 0; background: transparent; color: white; cursor: pointer; font-size: 24px; line-height: 1; padding: 2px 4px; flex-shrink: 0; }
.cms-toast button:focus-visible { outline-color: white; }
@media (prefers-reduced-motion: reduce) { .cms-toast { transition: none; } }
.showcase-panel { margin-top: 28px; border: 1px solid var(--rule); border-radius: 3px; padding: 20px; max-width: 1000px; }
#showcase-results { max-height: 200px; overflow: auto; margin: 10px 0 20px; }
.showcase-result { display: block; width: 100%; padding: 10px 12px; text-align: left; font: inherit; background: transparent; color: var(--accent); border: 0; border-bottom: 1px solid var(--rule); cursor: pointer; }
.showcase-result:hover { background: #eeeeec; }
.showcase-result:disabled { opacity: .45; cursor: default; }
#showcase-selected { padding: 0; list-style: none; }
#showcase-selected li { display: flex; align-items: center; gap: 10px; padding: 14px; margin: 8px 0; background: #e9e9e7; border: 1px solid var(--rule); border-radius: 3px; }
.showcase-handle { font-size: 24px; cursor: grab; }
.showcase-title { flex: 1; font-weight: 700; overflow-wrap: anywhere; }
#showcase-selected button { background: var(--paper); border: 1px solid #b6a896; padding: 7px 10px; color: var(--accent); cursor: pointer; font: inherit; }
@media(max-width:600px) { #showcase-selected li { flex-wrap: wrap; } .showcase-title { flex-basis: 75%; } .showcase-panel { padding: 16px; } }

/* Showcase cards follow the desktop homepage order from left to right. */
.showcase-panel { max-width: none; }
#showcase-selected { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; counter-reset: showcase; }
#showcase-selected li { display: flex; flex-wrap: wrap; align-content: flex-start; gap: 8px; padding: 12px; margin: 0; min-width: 0; counter-increment: showcase; cursor: grab; }
#showcase-selected li:active { cursor: grabbing; }
.showcase-card-image { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; border-radius: 2px; }
.showcase-image-placeholder { display: flex; justify-content: center; align-items: center; background: #d5cbbb; color: #60605e; font-size: 13px; }
#showcase-selected .showcase-title { flex: 1 1 calc(100% - 40px); margin: 4px 0 12px; }
#showcase-selected .showcase-title::before { content: counter(showcase) '. '; }
#showcase-selected .showcase-remove { margin-left: auto; }
@media(max-width:900px) { #showcase-selected { display: flex; overflow-x: auto; padding-bottom: 12px; } #showcase-selected li { flex: 0 0 260px; } }
/* Smaller cards and visible drag destinations. */
#showcase-selected { width: 60%; min-width: 640px; max-width: 100%; gap: 14px; }
#showcase-selected li { border: 2px dashed #ac9a84; background: #eeeeec; }
#showcase-selected li:hover { border-color: var(--accent); }
#showcase-selected .showcase-handle { width: 100%; font-size: 12px; color: var(--accent); font-weight: 700; }
#showcase-selected .showcase-handle::after { content: ' DRAG TO REORDER'; }
#showcase-selected .showcase-title { flex-basis: 100%; }
#showcase-selected.is-sorting { outline: 2px dashed #b6a896; outline-offset: 8px; }
#showcase-selected li.is-dragging { opacity: .35; border-color: var(--accent); background: #f0dedd; }
#showcase-selected li.drag-target { border-color: var(--accent); box-shadow: 0 0 0 3px #8c252a24; }
@media(max-width:900px) { #showcase-selected { width: 100%; min-width: 0; } #showcase-selected li { flex-basis: 180px; } }

#showcase-selected li { flex-direction: column; flex-wrap: nowrap; align-items: stretch; }
#showcase-selected .showcase-title { flex: 1 0 auto; }
#showcase-selected .showcase-remove { align-self: center; margin: auto 0 0; }
#showcase-selected .showcase-remove { background: var(--accent); border-color: var(--accent); color: white; }
#showcase-selected .showcase-remove:hover { background: #6f1e22; border-color: #6f1e22; }

.showcase-full-note { font-size: 15px; font-weight: 700; color: var(--accent); margin: 12px 0 20px; }

.page-publishing h2, #page-draft-status { color:var(--accent);font-weight:700; }
.page-publishing { border-left:4px solid var(--accent); }

.dashboard-cards { display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px;margin-top:24px; }
.dashboard-card { display:flex;flex-direction:column;padding:24px;border:1px solid var(--rule);background:#ffffff;color:var(--ink);text-decoration:none;transition:transform 160ms ease,box-shadow 160ms ease,border-color 160ms ease; }
.dashboard-card h2 { margin:0 0 12px;font-size:20px; }
.dashboard-card p { margin:0 0 24px; }
.dashboard-card-action { margin-top:auto;color:var(--accent);font-size:11px;font-weight:700;letter-spacing:1px;display:flex;align-items:center;justify-content:space-between;gap:16px; }
.dashboard-card-action span { font-size:20px;transition:transform 160ms ease; }
.dashboard-card:focus-visible { border-color:var(--accent);box-shadow:0 5px 15px rgba(36,35,33,.1); }
@media (hover:hover) { .dashboard-card:hover { transform:translateY(-3px);border-color:var(--accent);box-shadow:0 6px 18px rgba(36,35,33,.1); } .dashboard-card:hover .dashboard-card-action span { transform:translateX(4px); } }
@media (prefers-reduced-motion:reduce) { .dashboard-card,.dashboard-card-action span { transition:none; } .dashboard-card:hover,.dashboard-card:hover .dashboard-card-action span { transform:none; } }

.podcast-import-controls { display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0 24px; }
.podcast-import-controls label { margin:0; }.podcast-import-controls select { width:auto; }
.podcast-filters { display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px;margin:24px 0; }.podcast-filters>div:first-child { flex:1;min-width:220px; }
.podcast-table { overflow-x:auto; }.podcast-table table { width:100%;border-collapse:collapse;text-align:left; }.podcast-table th,.podcast-table td { padding:12px;border-bottom:1px solid var(--rule); }.podcast-table th { background:#e9e9e7;white-space:nowrap; }.podcast-table td:first-child { min-width:240px; }.podcast-table td:nth-child(4) { white-space:nowrap; }

.podcast-list-tabs { display:flex;flex-wrap:wrap;gap:10px; }.podcast-list-tabs a { text-decoration:none; }.podcast-list-tabs .is-selected { background:var(--accent);color:white;border-color:var(--accent); }
#podcast-scroll { padding:16px 0;text-align:center; }

.podcast-tabs { border-bottom:1px solid var(--rule);gap:0;margin:24px 0 0; }
.podcast-tab { display:block;padding:12px 20px;color:var(--ink);font-weight:700;border:1px solid transparent;border-bottom:3px solid transparent;text-decoration:none; }
.podcast-tab:hover { background:#eeeeec;color:var(--accent); }.podcast-tabs .podcast-tab.is-selected { background:#ffffff;color:var(--accent);border-color:var(--rule);border-bottom:3px solid var(--accent); }
.podcast-tab-actions { display:flex;justify-content:flex-end;padding:16px 0; }
#podcast-import-dialog { width:min(620px,calc(100vw - 32px)); }
@media(max-width:600px) { .podcast-tab { padding:10px 12px; }.podcast-tab-actions .button { width:100%; } }

#podcast-filter-form { margin-top:8px; }
#podcast-filter-form label { margin-top:0; }

.podcast-clickable-row { cursor:pointer;transition:background-color 120ms ease; }.podcast-clickable-row a { text-decoration:none;color:var(--ink); }.podcast-clickable-row:hover,.podcast-clickable-row:focus-within { background:#e9e9e7; }.podcast-clickable-row:hover a,.podcast-clickable-row:focus-within a { color:var(--accent); }
@media(prefers-reduced-motion:reduce) { .podcast-clickable-row { transition:none; } }

.dashboard-group { margin-top:28px; }
.dashboard-group-heading { margin:0 0 12px;color:var(--accent);font-size:22px;font-weight:700;letter-spacing:.5px; }
.dashboard-group .dashboard-cards { grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));margin-top:0; }

.dashboard-menu-cards { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:24px; }
.dashboard-menu-card { padding:24px;border:1px solid var(--rule);background:#ffffff; }
.dashboard-menu-card h2 { margin:0 0 12px;font-size:22px;font-weight:700; }
.dashboard-menu-card p { margin:0 0 20px; }
.dashboard-menu-card nav { display:flex;flex-direction:column;align-items:flex-start;gap:10px; }
.dashboard-menu-card .button { text-decoration:none; }
@media(max-width:750px) { .dashboard-menu-cards { grid-template-columns:1fr; } }

.podcast-shows-table { table-layout:fixed;width:100%; }
.podcast-shows-table .show-artwork-column { width:88px; }
.podcast-shows-table .show-hosts-column { width:22%; }
.podcast-shows-table .show-status-column { width:110px; }
.podcast-shows-table td { overflow-wrap:anywhere; }
.podcast-shows-table td:first-child img { display:block; }
@media(max-width:600px) { .podcast-shows-table .show-artwork-column { width:80px; }.podcast-shows-table .show-status-column { width:90px; } }

.dashboard-menu-link { color:var(--accent);font-weight:700;font-size:14px;text-decoration:none;padding:3px 0;transition:color 160ms ease,transform 160ms ease; }
.dashboard-menu-link:hover { color:var(--ink);transform:translateX(3px); }
.dashboard-menu-link:focus-visible { outline:2px solid var(--accent);outline-offset:4px; }
@media(prefers-reduced-motion:reduce) { .dashboard-menu-link { transition:none; }.dashboard-menu-link:hover { transform:none; } }

.visually-hidden { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }

.podcast-discovery-actions { margin:16px 0; }
#discovery-dialog { width:min(850px,calc(100vw - 40px)); }
.discovery-result { display:flex;align-items:flex-start;gap:12px;border-bottom:1px solid var(--rule);padding:14px 0; }
.discovery-result input { width:auto;margin-top:5px; }
.discovery-result details { flex:1;min-width:0; }
.discovery-result summary { cursor:pointer;font-weight:700;color:var(--accent); }
.discovery-result .discovery-meta { display:block;font-size:13px;color:var(--muted);margin-top:4px; }
.discovery-description { white-space:pre-wrap;overflow-wrap:anywhere;margin-top:12px; }

.episode-artwork-preview { display:block;width:100%;height:auto;max-height:300px;object-fit:contain; }
@media(min-width:901px) { .podcast-editor-sidebar { position:sticky;top:calc(var(--podcast-save-height,80px) + 12px);align-self:start;max-height:calc(100vh - var(--podcast-save-height,80px) - 24px);overflow-y:auto; } }

.book-detail-row { border:1px solid var(--rule);padding:14px;margin:12px 0;background:#ffffff; }
.book-edition-fields { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px; }
.book-row-actions { display:flex;justify-content:flex-end;gap:18px;margin-top:10px; }
@media(max-width:600px) { .book-edition-fields { grid-template-columns:1fr; } }

.section-visibility { display:flex;align-items:center;gap:10px;font-weight:400; }
.section-visibility input[type="checkbox"] { width:16px;height:16px;margin:0;flex:0 0 16px; }

.section-drag-handle { border:0;background:transparent;color:var(--accent);font-size:26px;padding:4px 6px;cursor:grab;touch-action:none;line-height:1; }
.section-drag-handle:active { cursor:grabbing; }
#section-list .section-dragging { opacity:.55;outline:2px dashed var(--accent);outline-offset:-2px; }
#section-list .section-order-saving { pointer-events:none; }
.section-drag-handle:focus-visible { outline:2px solid var(--accent); }

#section-list.section-sort-active { user-select:none; }
#section-list .section-dragging { opacity:1;outline:2px dashed var(--accent);background:#e8ddce; }
#section-list .section-dragging td > * { opacity:.25; }
.section-drag-preview { position:fixed;z-index:1000;pointer-events:none;border:2px dashed var(--accent);background:#ffffff;box-shadow:0 10px 24px rgba(36,35,33,.23);transform:scale(1.008);cursor:grabbing; }
.section-drag-preview table { table-layout:fixed;width:100%;border-collapse:collapse; }
.section-drag-preview td { padding:14px 12px;border:0; }
.section-drag-preview a { color:var(--ink);text-decoration:none; }
.section-drag-preview img { display:block; }
.section-drag-preview .section-drag-handle { color:var(--accent); }

.book-drag-handle { border:0;background:transparent;color:var(--accent);font-size:26px;padding:4px 6px;cursor:grab;touch-action:none;line-height:1; }
.book-drag-handle:active { cursor:grabbing; }
#book-list .book-dragging { opacity:.55;outline:2px dashed var(--accent);outline-offset:-2px; }
#book-list .book-order-saving { pointer-events:none; }
.book-drag-handle:focus-visible { outline:2px solid var(--accent); }
#book-list.book-sort-active { user-select:none; }
#book-list .book-dragging { opacity:1;outline:2px dashed var(--accent);background:#e8ddce; }
#book-list .book-dragging td > * { opacity:.25; }
.book-drag-preview { position:fixed;z-index:1000;pointer-events:none;border:2px dashed var(--accent);background:#ffffff;box-shadow:0 10px 24px rgba(36,35,33,.23);transform:scale(1.008);cursor:grabbing; }
.book-drag-preview table { table-layout:fixed;width:100%;border-collapse:collapse; }
.book-drag-preview td { padding:14px 12px;border:0; }
.book-drag-preview a { color:var(--ink);text-decoration:none; }
.book-drag-preview img { display:block; }
.book-drag-preview .book-drag-handle { color:var(--accent); }
.book-drag-handle:disabled { opacity:.3;cursor:default; }

.masthead .cms-brand { display:flex;align-items:flex-start;gap:12px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(28px,2.8vw,44px);line-height:1;letter-spacing:-.04em;white-space:nowrap; }
.masthead .cms-brand-logo { display:block;height:1em;width:auto;max-width:1.5em;object-fit:contain;flex:none; }
.masthead .cms-brand-text { display:block;font:inherit;line-height:1;letter-spacing:inherit;margin:0; }
.masthead .cms-brand-tagline { display:block;font:9px/1.5 Arial,sans-serif;letter-spacing:2px;margin-top:8px; }
@media(max-width:700px) { .masthead { gap:12px;padding:16px 20px; }.masthead .cms-brand { gap:8px;font-size:clamp(22px,6.5vw,29px); }.masthead .cms-brand-tagline { font-size:7px;letter-spacing:1.5px; }.masthead .cms-label { display:none; } }

#homepage-section-buttons { display:flex;gap:12px;flex-wrap:wrap;margin:18px 0; }
.homepage-section-button { padding:12px 18px;border:1px solid #b9ac99;background:#e9dfd1;color:var(--ink);font:700 14px Arial,sans-serif;cursor:grab;touch-action:none; }
.homepage-section-button[aria-pressed="true"] { background:var(--accent);color:white;border-color:var(--accent); }
.homepage-section-button.is-dragging { outline:2px dashed var(--accent);outline-offset:4px;opacity:.6;transform:scale(1.04); }

.homepage-section-button { display:flex;flex-direction:column;width:190px;max-width:100%;padding:0;overflow:hidden;text-align:left;border-radius:5px; }
.homepage-section-image { display:block;width:100%;aspect-ratio:4/3;object-fit:cover;pointer-events:none; }
.homepage-section-placeholder { display:flex;align-items:center;justify-content:center;background:#ddd2c2;color:#655c50;font-size:13px; }
.homepage-section-label { padding:12px 12px 5px;font-size:16px;line-height:1.3; }
.homepage-section-state { padding:0 12px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.06em; }
.homepage-section-state::after { content:"Hidden"; }
.homepage-section-button[aria-pressed="true"] .homepage-section-state::after { content:"Shown on homepage"; }
@media(max-width:480px) { .homepage-section-button { width:calc((100% - 12px)/2); } }

.homepage-card-strip { display:flex;flex-wrap:wrap;gap:12px;margin:18px 0; }
.homepage-book-card { cursor:pointer;touch-action:auto; }
.homepage-book-cover { object-fit:contain;background:#e3d9ca;aspect-ratio:3/4; }
.homepage-book-card .homepage-section-state::after { content:"Click to feature"; }
.homepage-book-card[aria-pressed="true"] .homepage-section-state::after { content:"Featured book"; }

#homepage-podcast-selected { padding: 0; list-style: none; }
#homepage-podcast-selected li { display: flex; align-items: center; gap: 10px; padding: 14px; margin: 8px 0; background: #e9e9e7; border: 1px solid var(--rule); border-radius: 3px; }
#homepage-podcast-selected button { background: var(--paper); border: 1px solid #b6a896; padding: 7px 10px; color: var(--accent); cursor: pointer; font: inherit; }
@media(max-width:600px) { #homepage-podcast-selected li { flex-wrap: wrap; } .showcase-title { flex-basis: 75%; } .showcase-panel { padding: 16px; } }
#homepage-podcast-selected { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; counter-reset: showcase; }
#homepage-podcast-selected li { display: flex; flex-wrap: wrap; align-content: flex-start; gap: 8px; padding: 12px; margin: 0; min-width: 0; counter-increment: showcase; cursor: grab; }
#homepage-podcast-selected li:active { cursor: grabbing; }
#homepage-podcast-selected .showcase-title { flex: 1 1 calc(100% - 40px); margin: 4px 0 12px; }
#homepage-podcast-selected .showcase-title::before { content: counter(showcase) '. '; }
#homepage-podcast-selected .showcase-remove { margin-left: auto; }
@media(max-width:900px) { #homepage-podcast-selected { display: flex; overflow-x: auto; padding-bottom: 12px; } #homepage-podcast-selected li { flex: 0 0 260px; } }
#homepage-podcast-selected { width: 60%; min-width: 640px; max-width: 100%; gap: 14px; }
#homepage-podcast-selected li { border: 2px dashed #ac9a84; background: #eeeeec; }
#homepage-podcast-selected li:hover { border-color: var(--accent); }
#homepage-podcast-selected .showcase-handle { width: 100%; font-size: 12px; color: var(--accent); font-weight: 700; }
#homepage-podcast-selected .showcase-handle::after { content: ' DRAG TO REORDER'; }
#homepage-podcast-selected .showcase-title { flex-basis: 100%; }
#homepage-podcast-selected.is-sorting { outline: 2px dashed #b6a896; outline-offset: 8px; }
#homepage-podcast-selected li.is-dragging { opacity: .35; border-color: var(--accent); background: #f0dedd; }
#homepage-podcast-selected li.drag-target { border-color: var(--accent); box-shadow: 0 0 0 3px #8c252a24; }
@media(max-width:900px) { #homepage-podcast-selected { width: 100%; min-width: 0; } #homepage-podcast-selected li { flex-basis: 180px; } }
#homepage-podcast-selected li { flex-direction: column; flex-wrap: nowrap; align-items: stretch; }
#homepage-podcast-selected .showcase-title { flex: 1 0 auto; }
#homepage-podcast-selected .showcase-remove { align-self: center; margin: auto 0 0; }
#homepage-podcast-selected .showcase-remove { background: var(--accent); border-color: var(--accent); color: white; }
#homepage-podcast-selected .showcase-remove:hover { background: #6f1e22; border-color: #6f1e22; }
#homepage-podcast-selected li { transition:transform .15s,border-color .15s; }
#homepage-podcast-selected .podcast-empty-slot { min-height:230px;justify-content:center;text-align:center;color:#746958;background:transparent;cursor:default; }
#homepage-podcast-selected .podcast-empty-slot::before { content:"Empty slot"; }
#homepage-podcast-selected .showcase-handle { touch-action:none;cursor:grab;min-height:30px; }
@media(prefers-reduced-motion:reduce) { #homepage-podcast-selected li { transition:none; } }

.homepage-save-bar { justify-content:space-between;align-items:center;padding:12px 0; }
.homepage-save-bar h1 { margin:0 0 5px; }

.discovery-flags { display:flex;gap:6px;flex:none; }
.discovery-flag { padding:6px 9px;border:1px solid #b9ac99;border-radius:3px;background:#e9dfd1;color:var(--ink);font:700 12px Arial,sans-serif;cursor:pointer;min-height:32px; }
.discovery-flag[aria-pressed="true"] { background:var(--accent);border-color:var(--accent);color:white; }
@media(max-width:600px) { .discovery-flags { flex-direction:column; } }

.uploads-toolbar { align-items:center;justify-content:flex-end; }.uploads-toolbar h1 { margin:0 auto 0 0; }
.uploads-drop { text-align:center;border:2px dashed #b9ac99;padding:35px 20px;margin:15px 0; }.uploads-drop.is-over { border-color:var(--accent);background:#e9dfd1; }
.uploads-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:18px;margin:24px 0; }.upload-card { min-width:0;display:flex;flex-direction:column;gap:8px; }.upload-select { padding:4px;background:transparent;border:3px solid transparent;cursor:pointer;border-radius:4px; }.upload-select[aria-pressed="true"] { border-color:var(--accent);background:#8c252a15; }.upload-select img { display:block;width:100%;aspect-ratio:1;object-fit:contain;background:#e4dbce; }.upload-name { font-size:13px;overflow-wrap:anywhere; }.upload-card .text-button { align-self:flex-start; }

#image-canvas { display:block;width:100%;height:auto;max-height:65vh;object-fit:contain;background:#ddd2c2;touch-action:none;cursor:move;border:2px dashed var(--accent); }
#image-editor .side-section input[type="range"] { width:100%; }

#image-canvas { max-height:none; }

.image-quality-warning { color:var(--accent);font-weight:700;font-size:15px; }

#image-canvas { max-width:100%;height:auto;margin:0 auto; }

#image-crop-stage { position:relative;max-width:100%;margin:16px auto; }
#image-crop-overlay { position:absolute;inset:0;pointer-events:none;overflow:visible; }
#image-crop-box { position:absolute;inset:0;border:1px solid white; }
#image-crop-overlay.is-cropping { overflow:hidden; }
#image-crop-overlay.is-cropping #image-crop-box { box-shadow:0 0 0 2000px #0009; }
.crop-handle { position:absolute;pointer-events:auto;touch-action:none;padding:0;border:0;background:#242321;box-shadow:0 0 0 1px white;width:22px;height:6px; }
.crop-n { top:-3px;left:calc(50% - 11px);cursor:ns-resize; }.crop-s { bottom:-3px;left:calc(50% - 11px);cursor:ns-resize; }.crop-w { left:-3px;top:calc(50% - 11px);width:6px;height:22px;cursor:ew-resize; }.crop-e { right:-3px;top:calc(50% - 11px);width:6px;height:22px;cursor:ew-resize; }
.crop-nw,.crop-ne,.crop-sw,.crop-se { width:18px;height:18px;background:none;border:5px solid #242321;box-shadow:none; }.crop-nw { left:-3px;top:-3px;border-right:0;border-bottom:0;cursor:nwse-resize; }.crop-ne { right:-3px;top:-3px;border-left:0;border-bottom:0;cursor:nesw-resize; }.crop-sw { left:-3px;bottom:-3px;border-top:0;border-right:0;cursor:nesw-resize; }.crop-se { right:-3px;bottom:-3px;border-top:0;border-left:0;cursor:nwse-resize; }

/* Shared sizing for native choices; text-field dimensions must never apply here. */
input[type="checkbox"],input[type="radio"] { display:inline-block;box-sizing:border-box;width:18px;height:18px;min-width:18px;max-width:18px;min-height:18px;max-height:18px;padding:0;flex:0 0 18px;vertical-align:middle;accent-color:var(--accent); }
.remember-email { display:flex;align-items:center;gap:8px; }
.remember-email input[type="checkbox"] { margin:0; }
:root{--accent:#c4363c;--red:#c4363c} .rs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.rs-card,.rs-repeat{display:block;padding:24px;border:1px solid #bbb;margin:20px 0;border-radius:8px}.rs-card h2{margin-top:0}.danger{color:#b3232b!important}.rs-repeat button{margin:8px 4px}select{display:block;width:100%;padding:12px}label{display:block;margin-top:16px}input[type=file]{padding:12px}textarea{width:100%}.preview-image{max-width:420px;width:100%}.preview-lyrics{white-space:pre-wrap}

/* CMS: neutral surfaces and section-specific form widths. */
.cms-form { width:100%; max-width:960px; margin:32px auto; }
.cms-form--gigs,.cms-form--videos,.cms-form--settings { max-width:760px; }
.cms-form--albums { max-width:1080px; }
.cms-form form,.cms-form label,.cms-form fieldset { min-width:0; }
.cms-form input,.cms-form textarea,.cms-form select,.cms-form .tox-tinymce { max-width:100%; }
.cms-form .rs-repeat { margin:16px 0; border-color:var(--rule); background:#fff; }
.cms-home { max-width:1240px; }
.cms-home .rs-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.cms-home .rs-card { margin:0; background:#fff; border-color:var(--rule); text-decoration:none; color:var(--ink); transition:border-color .15s,box-shadow .15s; }
.cms-home .rs-card:hover { border-color:var(--accent); box-shadow:0 4px 16px rgb(36 35 33 / 6%); }
.cms-home .rs-card h2 { margin:18px 0 10px; }
.cms-home .rs-card p { margin:0; color:var(--accent); }
.rs-card-icon { display:flex; align-items:center; justify-content:center; width:60px; height:60px; color:var(--accent); background:#f8eeee; border-radius:12px; }
.rs-card-icon svg { width:34px; height:34px; }
@media(max-width:900px) { .cms-home .rs-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) {
	.cms-form { margin:20px auto; }
	.cms-home .rs-grid { grid-template-columns:minmax(0,1fr); gap:14px; }
	.cms-form .rs-repeat { padding:16px; }
}
@media(prefers-reduced-motion:reduce) { .cms-home .rs-card { transition:none; } }

.cms-back-bar { display:flex; justify-content:flex-end; align-items:center; margin:0 0 18px; }
.cms-back-bar .button { max-width:100%; white-space:normal; text-align:center; }

/* Compact dates, drop uploads, and album actions. */
#entry-form input[type="date"] { display:block; width:11rem; max-width:100%; min-width:0; }
.rs-upload { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; margin-top:8px; padding:28px 20px; min-height:170px; border:2px dashed var(--rule); border-radius:8px; background:#fff; text-align:center; cursor:pointer; font-weight:400; }
.rs-upload:hover,.rs-upload.is-over { border-color:var(--accent); background:#faf0f0; }
.rs-upload:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.rs-upload strong { font-size:15px; }
.rs-upload small { color:#60605e; }
.rs-upload-mark { font-size:30px; color:var(--accent); line-height:1; }
.rs-upload-preview { display:block; width:auto; max-width:100%; max-height:200px; margin-top:12px; object-fit:contain; }
.rs-upload-preview[hidden],.rs-file-input[hidden] { display:none!important; }
.rs-upload-status:empty { display:none; }
.rs-upload-status { font-size:13px; overflow-wrap:anywhere; max-width:100%; }
.rs-add-button { gap:8px; margin:4px 0 24px; }
.rs-add-button::before { content:'+'; font-size:19px; line-height:1; }

/* Leave room for the 3px focus outline and its 3px offset. */
.cms-form label > input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.cms-form label > textarea,
.cms-form label > select,
.cms-form label > .tox-tinymce { display:block; margin-top:10px; }
.cms-form label > .rs-upload { margin-top:10px; }

/* Track and platform-link editors. Native dialog handles focus and Escape. */
.rs-modal { width:min(680px,calc(100% - 32px)); max-height:calc(100dvh - 40px); overflow:auto; padding:24px; border:1px solid var(--rule); border-radius:10px; color:var(--ink); background:var(--paper); box-shadow:0 20px 70px rgb(0 0 0 / 25%); }
.rs-modal::backdrop { background:rgb(20 20 20 / 60%); }
.rs-modal-head { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:20px; }
.rs-modal-head h2 { margin:0; }
.rs-modal-close { border:0; background:transparent; color:var(--ink); font:inherit; font-size:28px; width:36px; height:36px; padding:0; cursor:pointer; flex-shrink:0; }
.rs-modal label { margin-top:18px; }
.rs-modal label > input,.rs-modal label > textarea,.rs-modal label > select { display:block; margin-top:10px; width:100%; }
.rs-modal input.rs-duration { width:140px; max-width:100%; }
.rs-modal .form-actions { justify-content:flex-end; }
.rs-modal-status { color:var(--accent); }
.rs-item { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:14px 0; padding:18px; border:1px solid var(--rule); border-radius:8px; background:#fff; }
.rs-item-copy { min-width:0; overflow-wrap:anywhere; }
.rs-item-copy p { margin:6px 0 0; color:#60605e; }
.rs-item-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; flex-shrink:0; }
.rs-item-actions .button { letter-spacing:0; padding:7px 10px; }
@media(max-width:700px) { .rs-item { align-items:flex-start; flex-direction:column; } .rs-item-actions { width:100%; } .rs-modal { padding:20px; } }

/* Entire content card links to its editor. */
.rs-entry-card { display:flex; align-items:center; gap:22px; color:var(--ink); background:#fff; text-decoration:none; border-color:var(--rule); transition:transform 160ms ease,border-color 160ms ease,box-shadow 160ms ease; }
.rs-entry-card:hover,.rs-entry-card:focus-visible { text-decoration:none; transform:translateY(-2px); border-color:var(--accent); box-shadow:0 5px 16px rgb(36 35 33 / 8%); }
.rs-entry-artwork { display:block; flex:0 0 96px; width:96px; height:96px; object-fit:contain; background:var(--paper); border-radius:4px; }
.rs-entry-copy { flex:1; min-width:0; overflow-wrap:anywhere; }
.rs-entry-copy h2 { margin:0 0 8px; }
.rs-entry-copy p { margin:0; color:#60605e; }
.rs-entry-arrow { flex-shrink:0; color:var(--accent); font-size:24px; transition:transform 160ms ease; }
.rs-entry-card:hover .rs-entry-arrow { transform:translateX(3px); }
@media(max-width:600px) { .rs-entry-card { padding:16px; gap:14px; } .rs-entry-artwork { flex-basis:72px; width:72px; height:72px; } }
@media(prefers-reduced-motion:reduce) { .rs-entry-card,.rs-entry-arrow { transition:none; } .rs-entry-card:hover,.rs-entry-card:focus-visible,.rs-entry-card:hover .rs-entry-arrow { transform:none; } }

/* Page actions remain available at the top left while scrolling. */
.cms-sticky-actions,.form-actions.cms-sticky-actions { position:sticky; top:0; z-index:100; display:flex; flex-wrap:wrap; justify-content:flex-start; align-items:center; gap:10px; margin:0 0 22px; padding:14px 0; background:var(--paper); border-bottom:1px solid var(--rule); }
.cms-sticky-actions #save-message { flex-basis:100%; margin:0; font-size:13px; }
.cms-sticky-actions #save-message:empty { display:none; }

.cms-sticky-actions,.form-actions.cms-sticky-actions { justify-content:flex-end; }
.cms-sticky-actions #save-message { text-align:right; }

/* Status belongs at the top right of each content card. */
.rs-entry-card { position:relative; padding-top:56px; }
.rs-entry-status { position:absolute; top:16px; right:18px; padding:5px 10px; border:1px solid var(--accent); border-radius:4px; color:var(--accent); background:transparent; font-size:10px; font-weight:700; line-height:1.3; letter-spacing:.8px; }
.rs-entry-status.is-published { color:#fff; background:var(--accent); }
.rs-entry-copy p:empty { display:none; }
@media(max-width:600px) { .rs-entry-card { padding-top:52px; } .rs-entry-status { top:12px; right:14px; } }

/* Compact gig date/time, with venue immediately following. */
.gig-datetime-row { display:flex; align-items:flex-start; flex-wrap:wrap; gap:0 20px; }
.gig-datetime-row > label { flex:0 0 auto; min-width:0; max-width:100%; }
#entry-form .gig-datetime-row input[type="date"] { width:11rem; max-width:100%; }
#entry-form .gig-datetime-row input[type="time"] { display:block; width:9rem; min-width:0; max-width:100%; }

#entry-form .gig-datetime-row input[name="timezone"] { display:block; width:15rem; max-width:100%; min-width:0; }
.gig-section-divider { border:0; border-top:1px solid var(--rule); margin:28px 0; }
