:root,
:root[data-theme="dark"] {
  color-scheme: dark;

  /* not.lotsa.fun dark system: black / graphite / red / violet-blue */
  --bg: #1f1d1d !important;
  --bg-2: #19191a !important;
  --surface: #1b1b1b8e !important;
  --surface-2: #1f0b0e !important;
  --panel: #101319 !important;
  --card: #200000ce !important;
  --card-bg: #0f0f0fad !important;

  --text: #f7f8fb !important;
  --fg: #f7f8fb !important;
  --muted: #9da5b2 !important;

  --border: #b80000 !important;
  --line: #a70000b6 !important;

  --accent: #756cff !important;
  --accent-2: #ff0000 !important;
  --accent-blue: #0cbaff !important;
  --accent-violet: #7e64ffbd !important;

  --link: #ff84c2 !important;
  --link-hover: #f261ff !important;

  --brand-not-lotsa: #990000 !important;
  --brand-skynet: #584648 !important;

  --emphasis-green: #00e645 !important;
  --emphasis-yellow: #ffd900 !important;

  --hover: #1c212b !important;
  --danger: #ff0000 !important;
  --success: #00e043 !important;
  --warning: #ff7b00 !important;

  --topbar-h: 60px !important;
  --audiobar-h: 50px !important;
  --radius: 12px !important;

  --shadow: 0 18px 46px rgba(0,0,0,.38);
  --shadow-soft: 0 7px 20px rgba(0,0,0,.22);
}

/* Evidence summaries: deliberate colour and typography separate conduct, platform failure,
   regulator failure and count methodology without changing the site's existing layout. */
.record-summary {
  margin: 18px 0 !important;
  padding: 18px 20px !important;
  border: 1px solid var(--border) !important;
  border-left: 6px solid var(--summary-accent, var(--accent)) !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, color-mix(in srgb, var(--summary-accent, var(--accent)) 14%, var(--panel)), var(--panel)) !important;
  box-shadow: var(--shadow-soft) !important;
}

.record-summary.harassers { --summary-accent: #e34d59; }
.record-summary.platforms { --summary-accent: #6f83ee; }
.record-summary.regulators { --summary-accent: #d59b35; }
.record-summary.counts { --summary-accent: #2fb783; }

.record-summary .summary-kicker {
  display: block !important;
  margin: 0 0 6px !important;
  color: var(--summary-accent) !important;
  font: 800 11px/1.25 var(--mono, ui-monospace, monospace) !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
}

.record-summary h2,
.record-summary h3,
.record-summary h4 {
  margin-top: 0 !important;
  color: var(--text) !important;
  letter-spacing: -.015em !important;
}

.record-summary strong,
.connection-why strong,
.metric-strip strong {
  color: var(--summary-accent, var(--accent)) !important;
}

.summary-grid,
.metric-strip {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)) !important;
  gap: 10px !important;
  margin: 14px 0 !important;
}

.summary-grid > div,
.metric-strip > div {
  padding: 12px 13px !important;
  border: 1px solid color-mix(in srgb, var(--summary-accent, var(--accent)) 35%, var(--border)) !important;
  border-radius: 9px !important;
  background: color-mix(in srgb, var(--summary-accent, var(--accent)) 8%, var(--surface)) !important;
}

.metric-strip strong {
  display: block !important;
  margin-bottom: 2px !important;
  font: 850 clamp(19px, 2.3vw, 27px)/1 var(--mono, ui-monospace, monospace) !important;
}

.metric-strip span {
  color: var(--muted) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

.connection-why {
  margin: 12px 0 0 !important;
  padding: 11px 13px !important;
  border-left: 4px solid #2fb783 !important;
  background: color-mix(in srgb, #2fb783 9%, var(--surface)) !important;
}

.count-method {
  padding: 10px 12px !important;
  border: 1px dashed color-mix(in srgb, #2fb783 55%, var(--border)) !important;
  border-radius: 8px !important;
  background: color-mix(in srgb, #2fb783 7%, var(--surface)) !important;
  color: var(--text) !important;
}

@media (max-width: 640px) {
  .record-summary { padding: 15px !important; }
  .summary-grid, .metric-strip { grid-template-columns: 1fr !important; }
}

@media screen and (min-width: 960px) {
  .gallery-sidebar .report-table {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    table-layout: fixed !important;
  }

  .gallery-sidebar .report-table th,
  .gallery-sidebar .report-table td {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  .gallery-sidebar .report-table-meta th:nth-child(1),
  .gallery-sidebar .report-table-meta td:nth-child(1) {
    width: 24px !important;
  }

  .gallery-sidebar .report-table-meta th:nth-child(2),
  .gallery-sidebar .report-table-meta td:nth-child(2) {
    width: 56px !important;
  }

  .gallery-sidebar .report-table-meta th:nth-child(4),
  .gallery-sidebar .report-table-meta td:nth-child(4) {
    width: 34px !important;
  }

  .gallery-sidebar .report-table-meta th:nth-child(5),
  .gallery-sidebar .report-table-meta td:nth-child(5) {
    width: 42px !important;
  }

  .gallery-sidebar .report-table-meta th:nth-child(6),
  .gallery-sidebar .report-table-meta td:nth-child(6) {
    width: 50px !important;
  }

  .gallery-sidebar .report-table-tp th:nth-child(1),
  .gallery-sidebar .report-table-tp td:nth-child(1) {
    width: 24px !important;
  }

  .gallery-sidebar .report-table-tp th:nth-child(3),
  .gallery-sidebar .report-table-tp td:nth-child(3),
  .gallery-sidebar .report-table-tp th:nth-child(4),
  .gallery-sidebar .report-table-tp td:nth-child(4),
  .gallery-sidebar .report-table-tp th:nth-child(5),
  .gallery-sidebar .report-table-tp td:nth-child(5),
  .gallery-sidebar .report-table-tp th:nth-child(6),
  .gallery-sidebar .report-table-tp td:nth-child(6) {
    width: 38px !important;
    text-align: right !important;
  }

  .gallery-sidebar .report-table-tp th:nth-child(7),
  .gallery-sidebar .report-table-tp td:nth-child(7) {
    width: 48px !important;
  }
}


:root[data-theme="light"] {
  color-scheme: light;
  --bg: #f4f7fa !important;
  --bg-2: #eaf0f5 !important;
  --surface: #ffffff !important;
  --surface-2: #f1f5f9 !important;
  --panel: #ffffff !important;
  --card: #ffffff !important;
  --card-bg: #ffffff !important;
  --text: #18212c !important;
  --fg: #18212c !important;
  --muted: #5f6f80 !important;
  --border: #cbd5df !important;
  --line: #cbd5df !important;
  --accent: #245fa8 !important;
  --accent-2: #164b8e !important;
  --link: #1f5f9f !important;
  --link-hover: #123f70 !important;
  --hover: #e7eef7 !important;
  --danger: #b73a45 !important;
  --success: #18764f !important;
  --warning: #8a6417 !important;
  --topbar-h: 58px !important;
  --audiobar-h: 52px !important;
  --radius: 14px;
  --shadow: 0 10px 28px rgba(25, 42, 58, .12);
  --shadow-soft: 0 6px 18px rgba(25, 42, 58, .08);
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scrollbar-color: var(--border) var(--bg);
}

::selection {
  background: color-mix(in srgb, var(--accent) 38%, transparent);
  color: var(--text);
}

html,
body {
  background: var(--bg) !important;
  color: var(--text) !important;
}

body {
  background-color: var(--bg) !important;
  background-image: none !important;
  background-attachment: fixed !important;
  overflow-x: hidden;
}

body,
button,
input,
select,
textarea {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body {
  font-size: 14px !important;
  line-height: 1.5 !important;
}

p,
li,
blockquote {
  font-size: 14px !important;
  line-height: 1.5 !important;
}

h1 {
  font-size: clamp(22px, 2vw, 27px) !important;
  line-height: 1.15 !important;
}

h2 {
  font-size: clamp(18px, 1.5vw, 20px) !important;
  line-height: 1.2 !important;
}

h3 {
  font-size: 15px !important;
  line-height: 1.25 !important;
}

h4 {
  font-size: 14px !important;
  line-height: 1.3 !important;
}

a { color: var(--link) !important; }
a:hover { color: var(--link-hover) !important; }

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--text) !important;
}

.kicker,
.eyebrow,
.accent,
.metric strong,
.damage-hero strong {
  color: var(--accent) !important;
}

.topbar,
nav.topbar,
.header,
.site-header,
.audiobar,
.cal-nav,
.gallery-sidebar,
.cal-sidebar,
.dropdown-content,
.search-results,
.video-popout-dialog,
.viewer-dialog,
.media-modal,
.day-modal-box {
  background-color: var(--surface) !important;
  color: var(--text) !important;
  border-color: var(--border) !important;
}

.topbar,
nav.topbar,
.header,
.site-header {
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
  border-right: 0 !important;
  border-left: 0 !important;
  border-radius: 0 !important;
  background: color-mix(in srgb, var(--surface) 95%, transparent) !important;
  box-shadow: 0 6px 24px rgb(0 0 0 / 20%) !important;
  backdrop-filter: blur(14px);
}

.brand,
.brand:link,
.brand:visited,
.brand a,
.brand a:link,
.brand a:visited,
.topbar .title {
  color: var(--text) !important;
  text-decoration: none !important;
}

.topbar .dot,
.header .dot,
.site-header .dot,
.brand > .dot {
  display: block !important;
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
  border: 1px solid color-mix(in srgb, var(--accent) 60%, var(--border)) !important;
  border-radius: 5px !important;
  background-color: var(--surface-2) !important;
  background-image: url("../favicon.png") !important;
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 13%, transparent) !important;
}

.card,
.g-card,
.callout,
.summary-card,
.metric-card,
.damage-card,
.section-card,
.video-card,
.month-section,
.cal-month-block,
.cal-cell,
.calendar-cell,
.individual-card,
.report-table,
details,
table {
  border-color: var(--border) !important;
}

.card,
.g-card,
.summary-card,
.metric-card,
.damage-card,
.section-card,
.video-card,
.month-section,
.cal-month-block,
.individual-card,
details {
  background-color: var(--card) !important;
  color: var(--text) !important;
}

.container,
.content-wrapper,
.hero,
.featured-film,
.collapsible-section,
.page-header,
.gallery-header,
.reports-sidebar,
#seoContent details {
  background-color: var(--surface) !important;
  background-image: none !important;
  color: var(--text) !important;
  border-color: var(--border) !important;
}

.content-wrapper > h1,
.damage-hero > div,
.featured-film > h2,
.collapsible-section > summary,
.report-overview > div,
.filter-chip,
.chip,
.tag,
.badge {
  background-color: var(--surface-2) !important;
  background-image: none !important;
  border-color: var(--border) !important;
}

table,
thead,
tbody,
tfoot,
tr,
th,
td {
  border-color: var(--border) !important;
}

th,
thead th {
  background: var(--surface-2) !important;
}

.cal-cell,
.calendar-cell,
.cal-dow,
.report-table th,
.report-table td,
thead th {
  background-color: var(--surface) !important;
  color: var(--text) !important;
  border-color: var(--border) !important;
}

.cal-cell.has-items,
.calendar-cell.has-evidence,
.sidebar-tab.active,
.report-tab.active {
  background-color: color-mix(in srgb, var(--accent) 28%, var(--surface)) !important;
  color: var(--text) !important;
}

.sidebar-tab,
.report-tab {
  font-size: 10px !important;
}

.gallery-sidebar {
  font-size: 10px !important;
}

.gallery-sidebar .sidebar-stat strong {
  font-size: 15px !important;
}

.gallery-sidebar .sidebar-stat span,
.gallery-sidebar .sidebar-section-title,
.gallery-sidebar .gallery-title,
.gallery-sidebar .g-desc,
.gallery-sidebar .individual-name,
.gallery-sidebar .individual-role,
.gallery-sidebar .individual-aliases,
.gallery-sidebar .discord-link {
  font-size: 9px !important;
  line-height: 1.3 !important;
}

.gallery-sidebar .reports-sidebar,
.gallery-sidebar .reports-header,
.gallery-sidebar .reports-header h4,
.gallery-sidebar .reports-header p,
.gallery-sidebar .report-table,
.gallery-sidebar .report-table th,
.gallery-sidebar .report-table td,
.gallery-sidebar .report-table strong {
  font-size: 8px !important;
  line-height: 1.2 !important;
}

.gallery-sidebar .reports-sidebar {
  padding: 8px !important;
}

.gallery-sidebar .report-table th,
.gallery-sidebar .report-table td {
  padding: 2px 3px !important;
}

.report-overview {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5px;
  margin: 8px 0 10px;
}

.report-overview > div {
  min-width: 0;
  padding: 7px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--surface-2);
}

.report-overview strong,
.report-overview span {
  display: block;
}

.report-overview strong {
  color: var(--accent) !important;
  font-size: 15px !important;
  line-height: 1.1;
}

.report-overview span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 9px !important;
  line-height: 1.2;
}

article.essay p,
article.essay li {
  font-size: 13.5px !important;
  line-height: 1.5 !important;
}

article.essay h2 {
  color: var(--accent) !important;
  font-size: 19px !important;
  background: var(--surface-2) !important;
  border-color: var(--border) !important;
}

article.essay h3 {
  color: var(--accent-2) !important;
  font-size: 15px !important;
}

@media (min-width: 800px) {
  #gallerySidebar.gallery-sidebar {
    display: block !important;
  }
}

video#player::-webkit-media-controls,
video#featuredFilm::-webkit-media-controls {
  display: none !important;
}

article.essay h4,
article.essay time,
article.essay p > strong:first-child {
  color: var(--warning) !important;
}

.desktop-site-nav {
  display: flex !important;
  flex: 0 1 auto;
  flex-wrap: nowrap !important;
  align-items: center;
  justify-content: center;
  gap: 2px;
  margin-left: auto;
  min-width: 0;
  white-space: nowrap;
}

.desktop-site-nav a {
  display: inline-flex !important;
  flex: 0 0 auto;
  align-items: center;
  white-space: nowrap !important;
  padding: 6px 7px !important;
  border-radius: 7px;
  color: var(--muted) !important;
  font-size: 10px !important;
  font-weight: 700;
  text-decoration: none;
}

.desktop-site-nav a:hover,
.desktop-site-nav a[aria-current="page"] {
  background: var(--hover) !important;
  color: var(--link) !important;
}

.mobile-site-menu {
  display: none;
  position: relative;
  margin-left: auto;
}

.mobile-site-menu summary {
  padding: 7px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--surface-2);
  color: var(--text);
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
  list-style: none;
}

.mobile-site-menu > div {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  z-index: 6000;
  display: grid;
  min-width: 190px;
  padding: 7px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--surface);
  box-shadow: var(--shadow);
}

.mobile-site-menu a {
  padding: 7px 9px;
  border-radius: 7px;
  color: var(--text);
  font-size: 12px;
  text-decoration: none;
}

@media (min-width: 1101px) {
  #menuDropdown {
    display: none !important;
  }

  .mobile-home-link {
    display: none !important;
  }
}

@media (min-width: 1101px) and (max-width: 1450px) {
  .desktop-site-nav {
    gap: 0;
  }

  .desktop-site-nav a {
    padding: 5px 4px !important;
    font-size: 9px !important;
  }

  .topbar .brand {
    min-width: auto !important;
  }

  .topbar .search {
    flex: 0 1 170px !important;
    width: 170px !important;
    min-width: 120px !important;
    max-width: 190px !important;
  }

  .topbar > span.pill {
    display: none !important;
  }
}

@media (max-width: 1100px) {
  .desktop-site-nav {
    display: none !important;
  }

  #menuDropdown {
    display: inline-block !important;
  }

  .mobile-site-menu {
    display: block;
  }
}

.muted,
.small,
.meta,
.note,
.subhead,
.last-updated,
.g-desc,
.g-url,
.gallery-title {
  color: var(--muted) !important;
}

.btn,
button,
.dropdown-btn,
.dropdown-item,
input,
select {
  border-color: var(--border) !important;
}

button,
.btn,
input,
select,
textarea {
  border-radius: 8px;
}

input[type="range"] {
  accent-color: var(--accent);
}

.evidence-image-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.print-evidence-link {
  display: none;
}

.featured-film {
  margin: 22px 0 30px !important;
  padding: clamp(16px, 3vw, 24px) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  background: var(--surface) !important;
  box-shadow: var(--shadow-soft) !important;
}

.featured-film h2 {
  margin: 2px 0 8px !important;
}

.featured-film > p {
  max-width: 850px;
  color: var(--muted) !important;
}

.video-card-preview {
  background: var(--surface-2) !important;
}

.status.documented {
  color: var(--success) !important;
  border-color: var(--success) !important;
}

.status.supported {
  color: var(--warning) !important;
  border-color: var(--warning) !important;
}

.player-shell .btn,
.player-shell .btn-link,
.player-shell button,
.btn-link.mobile-home-link,
#prevBtn,
#playBtn,
#nextBtn,
#bar {
  background: var(--surface-2) !important;
  color: var(--text) !important;
  border-color: var(--border) !important;
}

.player-shell .transcript,
.transcript,
#cur,
#dur,
.time {
  color: var(--text) !important;
}

.track-item.active {
  background: color-mix(in srgb, var(--accent) 18%, var(--surface-2)) !important;
}

.markdown-preview a {
  color: var(--link) !important;
}

.markdown-preview .token.punctuation {
  color: var(--muted) !important;
}

.markdown-preview .token.property,
.markdown-preview .token.string {
  color: var(--link) !important;
}

.markdown-preview .token.operator {
  color: var(--accent) !important;
}

.markdown-preview .token.number {
  color: var(--warning) !important;
}

.markdown-preview .token.keyword,
.markdown-preview .token.null {
  color: var(--accent) !important;
}

.markdown-preview pre,
.markdown-preview code {
  color: var(--text) !important;
}

hr {
  color: var(--border) !important;
  border-color: var(--border) !important;
}

.site-subtitle,
.page-title-badge {
  color: var(--accent) !important;
}

.page-title-badge strong,
.page-title-badge span {
  display: block;
}

.page-title-badge strong {
  color: var(--text) !important;
  font-size: 20px;
}

.page-title-badge span {
  margin-top: 6px;
  color: var(--muted) !important;
  font-size: 13px;
}

.page-title-badge {
  border-color: var(--accent) !important;
  background: var(--surface-2) !important;
}

.nav-link,
.toggle-btn {
  border: 1px solid color-mix(in srgb, var(--accent) 68%, var(--border)) !important;
  background: var(--accent) !important;
  color: #fff !important;
  box-shadow: var(--shadow-soft) !important;
}

.nav-link:hover,
.toggle-btn:hover {
  background: var(--accent-2) !important;
  color: #fff !important;
}

.chat-messages-view,
.chat-message {
  border-color: var(--border) !important;
  background: var(--surface-2) !important;
  color: var(--text) !important;
}

.chat-meta,
.chat-timestamp {
  color: var(--muted) !important;
}

.chat-actor,
.chat-text {
  color: var(--text) !important;
}

.search-results .search-result-item {
  display: block;
  width: 100%;
  padding: 10px 11px;
  border: 0 !important;
  border-bottom: 1px solid var(--border) !important;
  border-radius: 0;
  background: var(--surface) !important;
  color: var(--text) !important;
  text-align: left;
}

.search-results .result-title,
.search-results .result-caption {
  display: block;
}

.btn:hover,
button:hover,
.dropdown-btn:hover,
.dropdown-item:hover {
  background-color: var(--hover) !important;
  color: var(--text) !important;
}

.tiktok-records {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 12px;
  margin: 14px 0 24px;
}

.tiktok-record {
  display: block;
  background: var(--card);
  border: 1px solid var(--border);
  border-left: 4px solid var(--accent);
  border-radius: 10px;
  padding: 13px 14px;
  color: var(--text);
  text-decoration: none;
}

.tiktok-record strong,
.tiktok-record span {
  display: block;
}

.tiktok-record span,
.tiktok-record p {
  margin: 5px 0 0;
  color: var(--muted);
}

.tiktok-record .tiktok-meta {
  color: var(--muted) !important;
  font-size: 0.9rem;
}

.markdown-preview,
html body .markdown-preview p,
html body .markdown-preview li,
html body .markdown-preview td,
html body .markdown-preview th,
html body .markdown-preview strong,
html body .markdown-preview blockquote {
  color: var(--text) !important;
}

html body .markdown-preview blockquote,
html body .markdown-preview pre,
html body .markdown-preview code {
  background-color: var(--surface-2) !important;
  border-color: var(--border) !important;
}

html body .markdown-preview hr {
  background-color: var(--border) !important;
}

html body .markdown-preview table th,
html body .markdown-preview table td {
  background-color: var(--surface) !important;
  border-color: var(--border) !important;
}

/* Evidence stays inline where no desktop gallery sidebar is present. */
.container.narrative .gallery {
  margin: 18px 0 24px !important;
  padding-top: 12px;
  border-top: 1px solid var(--border);
}

.container.narrative .gallery-track {
  padding: 6px 2px 10px;
}

.container.narrative .g-card {
  min-width: 220px;
  max-width: 260px;
}

.twid-media-player {
  width: 100%;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: #050608;
}

.twid-media-player > video,
.twid-media-player > audio {
  display: block;
  width: 100%;
  max-height: min(72vh, 820px);
  background: #050608;
}

.twid-media-player > audio {
  height: 1px;
  opacity: 0;
}

.twid-media-controls {
  display: grid;
  grid-template-columns: auto minmax(80px, 1fr) auto auto minmax(54px, 100px) auto;
  align-items: center;
  gap: 9px;
  padding: 9px 11px;
  border-top: 1px solid var(--border);
  background: var(--surface);
}

.twid-media-controls button {
  min-width: 34px;
  min-height: 34px;
  padding: 5px 8px;
  border: 1px solid var(--border);
  background: var(--surface-2);
  color: var(--text);
  cursor: pointer;
}

.twid-media-controls input[type="range"] {
  width: 100%;
}

.twid-media-time {
  color: var(--muted);
  font: 12px/1.2 ui-monospace, SFMono-Regular, Consolas, monospace;
  white-space: nowrap;
}

@media (min-width: 960px) {
  .page-layout .container.narrative .gallery {
    display: none !important;
  }
}

@media (max-width: 959px) {
  .container.narrative .gallery {
    display: block !important;
  }
}

@media (max-width: 620px) {
  .twid-media-controls {
    grid-template-columns: auto minmax(70px, 1fr) auto auto;
  }
  .twid-media-controls .twid-volume,
  .twid-media-controls .twid-fullscreen {
    display: none;
  }
}

body > .wrap,
.content-wrapper,
.crossnote.markdown-preview {
  width: min(1180px, calc(100% - 28px)) !important;
  max-width: 1180px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-top: 38px !important;
  padding-bottom: 70px !important;
}

@media (min-width: 1200px) {
  .index-page > .wrap {
    width: min(1900px, calc(100% - 24px)) !important;
    max-width: 1900px !important;
  }
}

.topbar,
nav.topbar,
.header,
.site-header {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 58px !important;
  padding: 9px 16px !important;
  border-bottom: 1px solid var(--border) !important;
  box-shadow: none !important;
}

.site-shell-header {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-right: calc(50% - 50vw) !important;
  margin-left: calc(50% - 50vw) !important;
}

.site-shell-header > .brand {
  flex: 0 0 auto !important;
}

.site-shell-header > .search,
.site-shell-header > .search-box,
.site-shell-header > .site-shell-search {
  width: 180px !important;
  min-width: 130px !important;
  max-width: 220px !important;
  flex: 0 1 180px !important;
}

.topbar .search,
.topbar .search-box,
.topbar .site-shell-search {
  display: flex !important;
  min-width: 150px;
  height: 36px !important;
  align-items: center;
  gap: 7px;
  padding: 0 10px !important;
  border: 1px solid var(--border) !important;
  border-radius: 9px !important;
  background: var(--surface-2) !important;
}

.topbar .search input,
.topbar .search-box input,
.topbar .site-shell-search input {
  width: 100%;
  min-width: 0;
  height: 32px !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  color: var(--text) !important;
  font-size: 12px !important;
}

.dropdown-btn,
.mobile-site-menu summary,
.topbar > .btn,
.topbar button {
  min-height: 36px !important;
  padding: 7px 10px !important;
  border: 1px solid var(--border) !important;
  border-radius: 9px !important;
  background: var(--surface-2) !important;
  color: var(--text) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

.dropdown-content,
.mobile-site-menu > div {
  border: 1px solid var(--border) !important;
  border-radius: 10px !important;
  background: var(--surface) !important;
  box-shadow: var(--shadow) !important;
}

.audiobar {
  position: fixed !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  z-index: 1000 !important;
  display: grid !important;
  grid-template-columns: auto auto minmax(120px, 1fr) minmax(160px, 2.6fr) auto auto auto minmax(80px, 130px) !important;
  grid-auto-flow: column !important;
  grid-auto-rows: 1fr !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: var(--audiobar-h) !important;
  height: var(--audiobar-h) !important;
  padding: 8px 12px !important;
  border-top: 1px solid var(--border) !important;
  background: var(--surface) !important;
  box-shadow: 0 -8px 24px rgb(0 0 0 / 20%) !important;
}

.audiobar > * {
  grid-row: 1 !important;
}

.audiobar > input[aria-label="Audio volume"] {
  grid-column: 8 !important;
  align-self: center !important;
}

body.has-site-shell-player {
  padding-bottom: var(--audiobar-h) !important;
}

.audiobar .track,
.audiobar .audio-track {
  min-width: 0 !important;
  overflow: hidden !important;
  color: var(--muted) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.audiobar input[type="range"] {
  width: 100% !important;
  min-width: 0 !important;
}

.audiobar audio {
  display: none !important;
}

.audiobar .btn,
.audiobar button,
.player-bar button,
.twid-media-controls button,
.player-shell .bottom-bar button {
  min-width: 34px !important;
  min-height: 34px !important;
  padding: 5px 8px !important;
  border: 1px solid var(--border) !important;
  border-radius: 8px !important;
  background: var(--surface-2) !important;
  color: var(--text) !important;
}

.player-bar,
.twid-media-controls,
.player-shell .bottom-bar {
  border-color: var(--border) !important;
  background: var(--surface) !important;
}

.audiobar input[type="range"],
.player-bar input[type="range"],
.twid-media-controls input[type="range"] {
  accent-color: var(--accent) !important;
}

.gallery-sidebar .reports-sidebar,
.gallery-sidebar .reports-header,
.gallery-sidebar .report-table,
.gallery-sidebar .report-table strong {
  font-size: 10.5px !important;
  line-height: 1.25 !important;
}

.gallery-sidebar .reports-header h4 {
  font-size: 12px !important;
  line-height: 1.2 !important;
}

.gallery-sidebar .reports-header p,
.gallery-sidebar .report-table th {
  font-size: 9.5px !important;
  line-height: 1.2 !important;
}

.gallery-sidebar .report-table td {
  padding: 3px 4px !important;
  font-size: 10.5px !important;
  line-height: 1.2 !important;
}

.site-header-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

.site-header .site-title {
  margin: 0 !important;
  font-size: 18px !important;
}

.site-header .site-subtitle {
  margin: 3px 0 0 !important;
  font-size: 12px !important;
}

.container.narrative {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.content-wrapper {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.hero,
.container.narrative > header:first-child,
.content-wrapper > h1,
.page-title-badge {
  padding: clamp(22px, 4vw, 38px) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  background: linear-gradient(135deg, rgb(38 78 125 / 32%), var(--panel)) !important;
  box-shadow: var(--shadow-soft) !important;
}

.container.narrative > header:first-child,
.hero,
.content-wrapper > h1 {
  margin: 0 0 18px !important;
}

.content-wrapper > h1 {
  display: block !important;
}

.featured-film,
.wrap > .content,
.player-shell,
.collapsible-section,
.card,
.g-card,
.video-card,
.month-section,
.cal-month-block,
.individual-card,
.finding {
  min-width: 0 !important;
  border: 1px solid var(--border) !important;
  border-radius: calc(var(--radius) - 4px) !important;
  background: var(--panel) !important;
  box-shadow: none !important;
}

.container.narrative > article.essay > section {
  margin: 14px 0 !important;
  padding: 19px !important;
  border: 1px solid var(--border) !important;
  border-radius: calc(var(--radius) - 4px) !important;
  background: var(--panel) !important;
}

.container.narrative > article.essay > section > h2:first-child {
  margin: 0 0 10px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--accent) !important;
}

.featured-film {
  padding: 19px !important;
}

.wrap > .content {
  margin-top: 18px !important;
  padding: 19px !important;
}

.player-shell {
  overflow: hidden !important;
}

.page-title-badge {
  width: min(1180px, calc(100% - 28px)) !important;
  max-width: 1180px !important;
  margin: 32px auto 0 !important;
  color: var(--accent) !important;
}

.toc a,
.filter-chip,
.chip,
.tag,
.tagchip,
.badge,
.node,
.evidence a,
.pill {
  max-width: 100%;
  border: 1px solid var(--border) !important;
  border-radius: 999px !important;
  background: var(--surface) !important;
}

.node,
.evidence a,
.markdown-preview a {
  overflow-wrap: anywhere;
}

.grid,
.tiktok-records {
  gap: 14px !important;
}

.card h3,
.video-card h3,
.g-card h3 {
  margin-top: 8px !important;
}

.markdown-preview > h2 {
  margin-top: 36px !important;
  padding: 18px 19px !important;
  border: 1px solid var(--border) !important;
  border-radius: calc(var(--radius) - 4px) !important;
  background: var(--panel) !important;
  color: var(--accent) !important;
}

.lyrics-area,
.player-bar,
.playlist,
.track-header {
  border-color: var(--border) !important;
  background: var(--panel) !important;
}

@media (max-width: 959px) {
  body > .wrap,
  .content-wrapper,
  .crossnote.markdown-preview {
    width: min(1180px, calc(100% - 20px)) !important;
    padding-top: 20px !important;
  }

  .container.narrative > article.essay > section {
    padding: 15px !important;
  }
}

@media (max-width: 700px) {
  :root {
    --topbar-h: 101px !important;
  }

  .topbar,
  nav.topbar,
  .header,
  .site-header {
    flex-flow: row wrap !important;
    align-items: center !important;
    max-width: 100vw !important;
    min-height: 101px !important;
    height: auto !important;
  }

  #menuDropdown,
  .mobile-site-menu {
    display: block !important;
    margin-left: auto !important;
  }

  .topbar .brand .title,
  .topbar .brand > span:not(.dot),
  .header .brand .title {
    display: none !important;
  }

  .topbar .brand,
  .header .brand {
    flex: 0 0 auto !important;
    min-width: 18px !important;
  }

  .topbar .search,
  .topbar .search-box,
  .topbar .site-shell-search {
    position: static !important;
    inset: auto !important;
    order: 20;
    flex: 1 0 100% !important;
    width: 100% !important;
    max-width: none !important;
  }

  .topbar > #reverseSort,
  .topbar > #toggleTheme,
  .topbar > #toggleThemeBtn,
  .topbar > #expandAllBtn {
    display: none !important;
  }

  .topbar .search,
  .topbar .search-box,
  .topbar .site-shell-search {
    min-width: 0 !important;
  }

  .site-shell-header > #sectionDropdown,
  .site-shell-header > .pill {
    display: none !important;
  }

  .audiobar {
    grid-template-columns: auto auto minmax(0, 1fr) auto auto !important;
  }

  .audiobar input[aria-label="Track progress"],
  .audiobar .audio-time,
  .audiobar input[aria-label="Audio volume"] {
    display: none !important;
  }

  .page-layout {
    height: calc(100vh - 106px - var(--audiobar-h)) !important;
  }

  .hero,
  .container.narrative > header:first-child,
  .content-wrapper > h1,
  .page-title-badge {
    padding: 22px !important;
  }

  .twid-media-player,
  .twid-media-player > video,
  .twid-media-controls {
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

/* Unified shell and readable wrapping across every page. */
:root,
:root[data-theme="dark"] {
  --bg: #0b1220 !important;
  --bg-2: #0e1728 !important;
  --surface: #111b2d !important;
  --surface-2: #17243a !important;
  --panel: #111b2d !important;
  --card: #142036 !important;
  --card-bg: #142036 !important;
  --text: #edf4ff !important;
  --fg: #edf4ff !important;
  --muted: #a8b7cc !important;
  --border: #30415b !important;
  --line: #30415b !important;
  --accent: #68a9ff !important;
  --accent-2: #9bc8ff !important;
  --link: #82baff !important;
  --link-hover: #c3ddff !important;
  --hover: #203451 !important;
  --danger: #ff7b85 !important;
  --success: #57d39a !important;
  --warning: #efc66e !important;
  --panel2: var(--surface-2) !important;
  --accent2: var(--accent-2) !important;
  --brand: var(--accent) !important;
  --amber: var(--warning) !important;
  --green: var(--success) !important;
  --red: var(--danger) !important;
  --btn-bg: var(--surface-2) !important;
  --btn-bg-hover: var(--hover) !important;
  --btn-border: var(--border) !important;
}

:root[data-theme="light"] {
  --bg: #f4f7fb !important;
  --bg-2: #eaf0f7 !important;
  --surface: #ffffff !important;
  --surface-2: #edf3f9 !important;
  --panel: #ffffff !important;
  --card: #ffffff !important;
  --card-bg: #ffffff !important;
  --text: #172234 !important;
  --fg: #172234 !important;
  --muted: #56677d !important;
  --border: #c7d2df !important;
  --line: #c7d2df !important;
  --accent: #245f9f !important;
  --accent-2: #174777 !important;
  --link: #1e5b98 !important;
  --link-hover: #123e69 !important;
  --hover: #e3edf7 !important;
  --danger: #aa3541 !important;
  --success: #176f4c !important;
  --warning: #805d17 !important;
}

html {
  scroll-behavior: smooth;
  text-size-adjust: 100%;
}

body,
main,
article,
section,
aside,
header,
footer,
nav,
div,
p,
li,
blockquote,
figcaption,
td,
th,
dd,
dt {
  min-width: 0;
  overflow-wrap: break-word;
  word-break: normal;
}

a,
code,
pre,
.g-url,
.ticket-list,
.node,
.evidence a {
  overflow-wrap: anywhere;
  word-break: break-word;
}

img,
video,
iframe,
object,
embed,
svg,
canvas {
  max-width: 100%;
}

.site-shell-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 5000 !important;
  background: color-mix(in srgb, var(--surface) 96%, transparent) !important;
  backdrop-filter: blur(14px);
}

.site-shell-header .desktop-site-nav {
  order: 10;
}

.site-shell-header .site-shell-search,
.site-shell-header .search,
.site-shell-header .search-box,
.site-shell-header .search-container {
  order: 20;
}

.site-theme-toggle {
  order: 30;
  display: inline-grid !important;
  width: 36px !important;
  min-width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  place-items: center;
  padding: 0 !important;
  font-family: "Segoe UI Symbol", "Noto Sans Symbols", sans-serif !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

.mobile-site-menu {
  order: 40;
}

.legacy-site-menu[hidden] {
  display: none !important;
}

.site-shell-header .desktop-site-nav a {
  font-size: 11px !important;
  letter-spacing: .01em;
}

.hero,
.container.narrative > header:first-child,
.content-wrapper > h1,
.page-title-badge {
  background: linear-gradient(135deg, color-mix(in srgb, var(--accent) 20%, transparent), var(--panel)) !important;
}

@media print {
  :root,
  :root[data-theme="dark"],
  :root[data-theme="light"] {
    color-scheme: light;
    --bg: #ffffff !important;
    --bg-2: #ffffff !important;
    --surface: #ffffff !important;
    --surface-2: #ffffff !important;
    --panel: #ffffff !important;
    --card: #ffffff !important;
    --card-bg: #ffffff !important;
    --text: #111827 !important;
    --fg: #111827 !important;
    --muted: #3f4b59 !important;
    --border: #9aa7b5 !important;
    --line: #9aa7b5 !important;
    --accent: #245fa8 !important;
    --accent-2: #164b8e !important;
    --link: #174f89 !important;
    --link-hover: #174f89 !important;
    --hover: #ffffff !important;
    --shadow: none !important;
    --shadow-soft: none !important;
  }

  @page {
    size: A4 portrait;
    margin: 10mm 11mm 12mm;
  }

  html,
  body {
    background: #ffffff !important;
    background-image: none !important;
    color: #111827 !important;
    font-size: 9.5pt !important;
    line-height: 1.36 !important;
    overflow: visible !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }

  html body.has-site-shell-player {
    padding: 0 !important;
  }

  html body .site-shell-header,
  html body .topbar,
  nav,
  .audiobar,
  .gallery-sidebar,
  .cal-sidebar,
  .sidebar-tabs,
  .search-container,
  .search,
  .search-box,
  .site-shell-search,
  .section-dropdown,
  .dropdown-content,
  .media-overlay,
  .video-popout-overlay,
  .viewer-overlay,
  .day-modal,
  .expanded-gallery-modal,
  .g-nav,
  .g-open,
  .btn,
  button,
  audio,
  video,
  iframe,
  object,
  embed,
  canvas.pdfViewer,
  .pdfViewer,
  .pdf-viewer,
  .pdf-frame,
  .pdf-error,
  .audio-player,
  .player-bar,
  .controls,
  .player-controls,
  .player-shell,
  .twid-media-player,
  #featuredFilmMount,
  #notice {
    display: none !important;
  }

  html body .site-shell-header,
  html body .topbar {
    position: static !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  .wrap,
  .container,
  .content-wrapper,
  .crossnote.markdown-preview,
  main,
  article,
  .content,
  .page-layout,
  .cal-main {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
  }

  details,
  details > :not(summary),
  .collapsible-section,
  .collapsible-body {
    display: block !important;
    max-height: none !important;
    overflow: visible !important;
  }

  details > summary {
    display: none !important;
  }

  details {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
  }

  h1,
  h2,
  h3,
  h4 {
    color: #111827 !important;
    break-after: avoid-page;
    page-break-after: avoid;
  }

  p,
  li,
  td,
  th,
  blockquote,
  pre {
    color: #111827 !important;
    orphans: 3;
    widows: 3;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  strong,
  b,
  em,
  i {
    color: #111827 !important;
  }

  a,
  a[href] {
    color: #174f89 !important;
    text-decoration: underline !important;
    text-decoration-thickness: 0.6pt !important;
    overflow-wrap: anywhere !important;
    pointer-events: auto !important;
  }

  pre,
  code {
    white-space: pre-wrap !important;
    overflow-wrap: anywhere !important;
  }

  .hero,
  .container.narrative > header:first-child,
  .content-wrapper > h1,
  .page-title-badge,
  .featured-film,
  .container.narrative > article.essay > section,
  .card,
  details,
  .collapsible-section,
  .collapsible-body {
    background: #ffffff !important;
    background-image: none !important;
    color: #111827 !important;
    border-color: #9aa7b5 !important;
    box-shadow: none !important;
  }

  h1 {
    font-size: 18pt !important;
  }

  h2 {
    font-size: 13.5pt !important;
  }

  h3 {
    font-size: 11pt !important;
  }

  h4 {
    font-size: 10pt !important;
  }

  section,
  .card,
  details,
  table,
  figure,
  .collapsible-section,
  .collapsible-body {
    break-inside: auto !important;
    page-break-inside: auto !important;
    box-shadow: none !important;
  }

  .g-card,
  .callout,
  .summary-card,
  .metric-card,
  .damage-card,
  blockquote {
    break-inside: avoid-page;
    page-break-inside: avoid;
    box-shadow: none !important;
  }

  section {
    margin-bottom: 3mm !important;
  }

  table {
    width: 100% !important;
    border-collapse: collapse !important;
    font-size: 8.3pt !important;
    overflow: visible !important;
  }

  thead {
    display: table-header-group;
  }

  tfoot {
    display: table-footer-group;
  }

  tr,
  img {
    break-inside: avoid-page;
    page-break-inside: avoid;
  }

  th,
  td {
    border: 1px solid #aeb6bf !important;
    background: #ffffff !important;
    padding: 1.5mm 1.8mm !important;
    overflow-wrap: anywhere !important;
  }

  .container.narrative .gallery,
  .gallery {
    display: block !important;
    border-top: 1px solid #aeb6bf !important;
  }

  .index-page .container.narrative .gallery {
    display: none !important;
  }

  .gallery-track,
  .grid,
  #grid,
  .tiktok-records {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 5mm !important;
    overflow: visible !important;
  }

  .g-card,
  .card,
  .tiktok-record {
    min-width: 0 !important;
    max-width: none !important;
    width: auto !important;
    background: #ffffff !important;
    border: 1px solid #aeb6bf !important;
  }

  img {
    max-width: 100% !important;
    max-height: 90mm !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .g-card img,
  .card img,
  .tiktok-record img {
    max-height: 70mm !important;
  }

  .last-updated {
    display: none !important;
  }

  footer,
  .site-footer {
    display: none !important;
  }

  .evidence-image-link {
    display: none !important;
  }

  .print-evidence-link {
    display: block !important;
    margin: 0 0 2mm !important;
    font-size: 8.5pt !important;
    font-weight: 700 !important;
  }

  #grid .card {
    min-height: 0 !important;
    padding: 3mm !important;
    break-inside: avoid-page !important;
    page-break-inside: avoid !important;
  }

  #grid .card .meta {
    padding: 0 !important;
  }
}

/* Continuous print flow overrides page-specific screen layout. */
@media print {
  html,
  body,
  body.has-site-shell-player,
  main,
  article,
  section,
  aside,
  .wrap,
  .container,
  .content-wrapper,
  .crossnote.markdown-preview,
  .content,
  .page-layout,
  .cal-main,
  .cal-body,
  .month-section,
  .cal-month-block,
  .collapsible-section,
  .collapsible-body,
  details,
  details[open] {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    float: none !important;
    columns: auto !important;
    transform: none !important;
  }

  p,
  li,
  blockquote,
  figcaption,
  td,
  th,
  dd,
  dt {
    overflow-wrap: break-word !important;
    word-break: normal !important;
    hyphens: auto !important;
    orphans: 3;
    widows: 3;
  }

  a,
  code,
  pre,
  .g-url,
  .ticket-list {
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }

  section,
  article,
  .card,
  .g-card,
  .finding,
  .callout,
  .summary-card,
  .metric-card,
  .damage-card,
  .collapsible-section,
  .collapsible-body,
  details,
  table,
  tbody,
  tr,
  blockquote,
  #grid .card {
    break-before: auto !important;
    break-after: auto !important;
    break-inside: auto !important;
    page-break-before: auto !important;
    page-break-after: auto !important;
    page-break-inside: auto !important;
  }

  .gallery-track,
  .grid,
  #grid,
  .tiktok-records {
    display: block !important;
    grid-template-columns: none !important;
    gap: 0 !important;
  }

  .gallery-track > *,
  .grid > *,
  #grid > *,
  .tiktok-records > * {
    margin: 0 0 3mm !important;
  }
}


/* 2026-08-06: history/home layout corrections */
body.has-site-shell-header {
  padding-top: 0 !important;
}

body.has-site-shell-header > .wrap {
  padding-top: 14px !important;
}

.index-page .container.narrative {
  overflow: visible !important;
}

/* Compact desktop documentary: media left, copy right. */
.container.narrative > .featured-film {
  display: grid !important;
  grid-template-columns: minmax(420px, 1.65fr) minmax(260px, .75fr) !important;
  grid-template-areas: "film copy" !important;
  align-items: center !important;
  gap: 18px !important;
  margin: 0 0 18px !important;
  padding: 14px !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  background: color-mix(in srgb, var(--surface-2) 78%, var(--surface)) !important;
  box-shadow: var(--shadow-soft) !important;
}

.container.narrative > .featured-film .featured-film-copy {
  grid-area: copy !important;
  align-self: center !important;
  min-width: 0 !important;
  padding: 8px 8px 8px 2px !important;
}

.container.narrative > .featured-film .featured-film-copy .kicker {
  margin-bottom: 8px !important;
}

.container.narrative > .featured-film .featured-film-copy h2 {
  margin: 0 0 10px !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  font-size: clamp(21px, 1.7vw, 28px) !important;
  line-height: 1.12 !important;
}

.container.narrative > .featured-film .featured-film-copy p {
  margin: 0 !important;
  color: var(--muted) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

.container.narrative > .featured-film #featuredFilmMount {
  grid-area: film !important;
  min-width: 0 !important;
  width: 100% !important;
  margin: 0 !important;
}

.container.narrative > .featured-film #featuredFilmMount .twid-media-player,
.container.narrative > .featured-film #featuredFilmMount video {
  width: 100% !important;
  max-width: 780px !important;
  margin: 0 !important;
}

.container.narrative > .featured-film #featuredFilmMount video {
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
}

/* Give the first-person story an actual reading surface instead of raw text. */
.read-the-whole-thing {
  width: min(100%, 1160px) !important;
  margin: 20px auto 6px !important;
  padding: clamp(18px, 2.1vw, 30px) !important;
  border: 1px solid color-mix(in srgb, var(--border) 76%, var(--accent)) !important;
  border-radius: var(--radius) !important;
  background:
    linear-gradient(180deg,
      color-mix(in srgb, var(--accent) 5%, var(--surface)) 0,
      var(--surface) 120px) !important;
  box-shadow: var(--shadow-soft) !important;
}

.read-the-whole-thing p {
  margin: 0 0 1.15em !important;
  color: var(--text) !important;
  font-size: 15px !important;
  line-height: 1.72 !important;
  text-wrap: pretty;
}

.read-the-whole-thing .story-lead {
  font-size: 16px !important;
  line-height: 1.75 !important;
}

.read-the-whole-thing .story-quote {
  margin: 18px 0 !important;
  padding: 12px 14px !important;
  border-left: 3px solid var(--accent) !important;
  border-radius: 0 10px 10px 0 !important;
  background: color-mix(in srgb, var(--accent) 8%, var(--surface-2)) !important;
  font-family: var(--mono) !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

.read-the-whole-thing .story-final {
  margin: 24px 0 0 !important;
  padding-top: 16px !important;
  border-top: 1px solid var(--border) !important;
  color: var(--accent-2) !important;
  font-weight: 800 !important;
  font-size: 17px !important;
}

.read-the-whole-thing a[href*="/verified-proof#"] {
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 2px !important;
  padding: 1px 5px !important;
  border: 1px solid color-mix(in srgb, var(--accent) 44%, var(--border)) !important;
  border-radius: 5px !important;
  background: color-mix(in srgb, var(--accent) 9%, var(--surface-2)) !important;
  color: var(--accent-2) !important;
  font-family: var(--mono) !important;
  font-size: 10px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  vertical-align: .08em !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.read-the-whole-thing a[href*="/verified-proof#"]:hover {
  background: color-mix(in srgb, var(--accent) 18%, var(--surface-2)) !important;
  border-color: var(--accent) !important;
}

/* The gallery has a static first payload, so it never presents as an empty box. */
.gallery-sidebar #gallerySidebarContent:empty::before {
  content: "Loading evidence...";
  display: block;
  padding: 18px 12px;
  color: var(--muted);
  font-size: 12px;
  text-align: center;
}

@media (max-width: 1100px) {
  .container.narrative > .featured-film {
    grid-template-columns: minmax(360px, 1.4fr) minmax(240px, .8fr) !important;
  }
}

@media (max-width: 820px) {
  .container.narrative > .featured-film {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "copy"
      "film" !important;
    gap: 12px !important;
  }

  .container.narrative > .featured-film #featuredFilmMount .twid-media-player,
  .container.narrative > .featured-film #featuredFilmMount video {
    max-width: none !important;
  }

  .read-the-whole-thing {
    margin-top: 14px !important;
    padding: 16px !important;
  }

  .read-the-whole-thing p {
    font-size: 14px !important;
    line-height: 1.68 !important;
  }
}


/* 2026-08-06 v8: remove redundant headings/captions; individual people inline */

/* The account begins immediately. No redundant page-title card above it. */
.index-page .read-the-whole-thing {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
  margin: 16px 0 6px !important;
  padding: clamp(22px, 2.3vw, 36px) clamp(24px, 2.6vw, 40px) 32px !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  background: var(--surface) !important;
  color: var(--text) !important;
  box-shadow: var(--shadow-soft) !important;
}

.index-page .story-paragraph {
  position: relative !important;
  margin: 0 0 1.22em !important;
  padding: 0 !important;
  border: 0 !important;
  color: var(--text) !important;
  font-size: clamp(15px, .92vw, 16.5px) !important;
  line-height: 1.76 !important;
  letter-spacing: .001em !important;
  text-wrap: pretty !important;
}

.index-page .story-paragraph + .story-paragraph {
  margin-top: .2em !important;
}

.index-page .story-quote {
  clear: both !important;
  margin: 1.45em 0 1.55em !important;
  padding: 13px 16px !important;
  border-left: 3px solid var(--accent) !important;
  border-radius: 0 9px 9px 0 !important;
  background: var(--surface-2) !important;
  font-family: var(--mono) !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
}

.index-page .story-closing {
  clear: both !important;
  margin: 2em 0 0 !important;
  padding-top: 15px !important;
  border-top: 1px solid var(--border) !important;
  color: var(--accent-2) !important;
  font-size: 18px !important;
  font-weight: 850 !important;
}

/* Evidence CIDs remain secondary to the text. */
.index-page .read-the-whole-thing a[href*="/verified-proof#"] {
  display: inline !important;
  margin: 0 .1em !important;
  padding: .08em .34em !important;
  border: 1px solid var(--border) !important;
  border-radius: 999px !important;
  background: var(--surface-2) !important;
  color: var(--accent-2) !important;
  font-family: var(--mono) !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  vertical-align: super !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  opacity: .82 !important;
}

/* Documentary: ONLY the player. No "Featured Documentary", no duplicate title,
   no documentary description. It sits on the RIGHT and prose flows beside it. */
.index-page .story-media-float {
  float: right !important;
  width: min(45%, 500px) !important;
  max-width: 500px !important;
  box-sizing: border-box !important;
  margin: 0 0 18px 26px !important;
  padding: 8px !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  background: var(--surface-2) !important;
  box-shadow: var(--shadow-soft) !important;
}

.index-page .story-media-float #featuredFilmMount,
.index-page .story-media-float #featuredFilmMount > video,
.index-page .story-media-float #featuredFilmMount .twid-media-player,
.index-page .story-media-float #featuredFilmMount .twid-media-player video {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  max-width: 500px !important;
  margin: 0 !important;
}

.index-page .story-media-float #featuredFilmMount {
  background: var(--bg) !important;
  border-radius: 9px !important;
  overflow: hidden !important;
}

.index-page .story-media-float #featuredFilmMount video {
  aspect-ratio: 16 / 9 !important;
  object-fit: contain !important;
  background: var(--bg) !important;
}

/* Opinion cards remain individually distributed through the story. */
.index-page .story-visual {
  clear: both !important;
  width: min(42%, 500px) !important;
  max-width: 500px !important;
  margin-top: 8px !important;
  margin-bottom: 20px !important;
  padding: 0 !important;
}

.index-page .story-visual-left {
  float: left !important;
  margin-right: 24px !important;
}

.index-page .story-visual-right {
  float: right !important;
  margin-left: 24px !important;
}

.index-page .story-visual-image {
  display: block !important;
  width: 100% !important;
  max-width: 500px !important;
  height: auto !important;
  border: 1px solid var(--border) !important;
  border-radius: 11px !important;
  background: var(--surface-2) !important;
  box-shadow: var(--shadow-soft) !important;
}

/* The six people are NOT a lineup. Each is worked into the relevant chronology. */
.index-page .story-person-float {
  width: min(23%, 230px) !important;
  max-width: 230px !important;
  margin-top: 4px !important;
  margin-bottom: 16px !important;
  padding: 0 8px !important;
}

.index-page .story-person-left {
  float: left !important;
  margin-right: 22px !important;
}

.index-page .story-person-right {
  float: right !important;
  margin-left: 22px !important;
}

.index-page .story-person-image {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  max-height: 300px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
}

/* No labels/captions are generated for person images. */
.index-page .story-person-float figcaption {
  display: none !important;
}

.index-page .story-float-clear {
  clear: both !important;
  height: 0 !important;
}

/* Reviewer names are evidence labels. Never truncate them. */
@media screen and (min-width: 960px) {
  .gallery-sidebar .report-table-tp {
    table-layout: fixed !important;
  }

  .gallery-sidebar .report-table-tp th:nth-child(2),
  .gallery-sidebar .report-table-tp td:nth-child(2) {
    width: auto !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    line-height: 1.2 !important;
  }
}

@media (max-width: 1000px) {
  .index-page .story-media-float {
    width: min(42%, 460px) !important;
  }

  .index-page .story-person-float {
    width: min(25%, 210px) !important;
  }
}

@media (max-width: 820px) {
  .index-page .story-media-float,
  .index-page .story-visual,
  .index-page .story-person-float {
    float: none !important;
    width: min(100%, 500px) !important;
    max-width: 500px !important;
    margin: 0 auto 20px !important;
  }

  .index-page .story-person-image {
    max-height: 360px !important;
  }

  .index-page .read-the-whole-thing {
    padding: 18px 16px 24px !important;
  }

  .index-page .story-paragraph {
    font-size: 14.5px !important;
    line-height: 1.7 !important;
  }
}


/* 2026-08-06 v9: restore story title only */
.index-page .story-header {
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 16px 0 0 !important;
  padding: 18px 22px 15px !important;
  border: 1px solid var(--border) !important;
  border-bottom: 0 !important;
  border-radius: var(--radius) var(--radius) 0 0 !important;
  background: var(--surface) !important;
  color: var(--text) !important;
  box-shadow: var(--shadow-soft) !important;
}

.index-page .story-header .kicker {
  margin: 0 0 5px !important;
  color: var(--accent) !important;
  font-size: 10px !important;
  letter-spacing: .12em !important;
}

.index-page .story-header h1 {
  margin: 0 0 6px !important;
  padding: 0 !important;
  background: none !important;
  color: var(--text) !important;
  font-size: clamp(28px, 2.25vw, 36px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.02em !important;
}

.index-page .story-header .subhead {
  margin: 0 !important;
  color: var(--muted) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

/* Join the title block visually to the story body. */
.index-page .story-header + .read-the-whole-thing {
  margin-top: 0 !important;
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}

@media (max-width: 620px) {
  .index-page .story-header {
    padding: 15px 16px 13px !important;
  }

  .index-page .story-header h1 {
    font-size: 24px !important;
  }
}


/* 2026-08-06 v10: inline evidence video cards */
.story-evidence-media {
  box-sizing: border-box !important;
  width: min(46%, 500px) !important;
  max-width: 500px !important;
  margin: 4px 0 20px 26px !important;
  padding: 8px !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  background: var(--surface-2) !important;
  box-shadow: var(--shadow-soft) !important;
}

.story-evidence-right {
  float: right !important;
}

.story-evidence-media video {
  display: block !important;
  width: 100% !important;
  max-width: 500px !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: contain !important;
  background: var(--bg) !important;
  border-radius: 9px !important;
}

@media (max-width: 900px) {
  .story-evidence-media {
    float: none !important;
    width: min(100%, 500px) !important;
    max-width: 500px !important;
    margin: 0 auto 20px !important;
  }
}


/* 2026-08-06 v11: story-video layout and custom-controls hardening */

/*
  A preceding right-floated image must never squeeze an evidence video into
  the left-hand gap. Clear the right float, then keep the video on the right.
*/
.story-evidence-media {
  clear: right !important;
  float: right !important;
  width: min(46%, var(--story-video-width, 500px)) !important;
  max-width: 500px !important;
  margin: 6px 0 20px 26px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* The player's shape follows the actual video. No forced 16:9 dead space. */
.story-evidence-media video,
.story-evidence-media .twid-media-player > video,
.story-evidence-media .story-fallback-player > video {
  display: block !important;
  width: 100% !important;
  max-width: 500px !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #050608 !important;
}

.story-evidence-media .twid-media-player,
.story-evidence-media .story-fallback-player {
  width: 100% !important;
  max-width: 500px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--border) !important;
  border-radius: 12px !important;
  background: #050608 !important;
  box-shadow: var(--shadow-soft) !important;
}

/* Never expose browser-native video controls on story/documentary media. */
#featuredFilm::-webkit-media-controls,
#featuredFilm::-webkit-media-controls-enclosure,
#featuredFilm::-webkit-media-controls-panel,
#featuredFilm::-webkit-media-controls-play-button,
#featuredFilm::-webkit-media-controls-timeline,
#featuredFilm::-webkit-media-controls-current-time-display,
#featuredFilm::-webkit-media-controls-time-remaining-display,
#featuredFilm::-webkit-media-controls-volume-slider,
#featuredFilm::-webkit-media-controls-mute-button,
.story-evidence-media video::-webkit-media-controls,
.story-evidence-media video::-webkit-media-controls-enclosure,
.story-evidence-media video::-webkit-media-controls-panel,
.story-evidence-media video::-webkit-media-controls-play-button,
.story-evidence-media video::-webkit-media-controls-timeline,
.story-evidence-media video::-webkit-media-controls-current-time-display,
.story-evidence-media video::-webkit-media-controls-time-remaining-display,
.story-evidence-media video::-webkit-media-controls-volume-slider,
.story-evidence-media video::-webkit-media-controls-mute-button {
  display: none !important;
  -webkit-appearance: none !important;
}

/* Custom fallback only if the site's shared TWID control script fails. */
.story-fallback-controls {
  display: grid !important;
  grid-template-columns: auto minmax(80px, 1fr) auto auto !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 9px 11px !important;
  border-top: 1px solid var(--border) !important;
  background: var(--surface) !important;
}

.story-fallback-controls button {
  min-width: 34px !important;
  min-height: 34px !important;
  padding: 5px 8px !important;
  border: 1px solid var(--border) !important;
  background: var(--surface-2) !important;
  color: var(--text) !important;
  cursor: pointer !important;
}

.story-fallback-seek {
  width: 100% !important;
}

.story-fallback-time {
  color: var(--muted) !important;
  font: 12px/1.2 ui-monospace, SFMono-Regular, Consolas, monospace !important;
  white-space: nowrap !important;
}

/* Featured documentary also follows its real aspect ratio. */
.index-page .story-media-float #featuredFilmMount video,
.history-page .story-media-float #featuredFilmMount video {
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
}

@media (max-width: 900px) {
  .story-evidence-media {
    clear: both !important;
    float: none !important;
    width: min(100%, var(--story-video-width, 500px)) !important;
    max-width: 500px !important;
    margin: 0 auto 20px !important;
  }
}


/* 2026-08-06 v12: self-contained story players + dead-space fix */

/*
  Opinion/card images are visual breaks, not competing floats. This prevents a
  preceding 500px image from squeezing the next video/text into a narrow column.
*/
.index-page .story-visual {
  float: none !important;
  clear: both !important;
  display: block !important;
  width: min(100%, 500px) !important;
  max-width: 500px !important;
  margin: 18px auto 22px !important;
}

.index-page .story-visual-left,
.index-page .story-visual-right {
  float: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Evidence/TikTok videos remain beside the relevant prose on desktop. */
.story-evidence-media {
  float: right !important;
  clear: right !important;
  width: min(46%, var(--story-player-width, 500px)) !important;
  max-width: 500px !important;
  margin: 4px 0 20px 24px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.story-player {
  width: min(100%, var(--story-player-width, 500px)) !important;
  max-width: 500px !important;
  margin: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--border) !important;
  border-radius: 12px !important;
  background: #050608 !important;
  box-shadow: var(--shadow-soft) !important;
}

.story-player-frame {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: var(--story-player-ratio, auto) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #050608 !important;
}

.story-player video {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 500px !important;
  max-height: 500px !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #050608 !important;
  cursor: pointer !important;
}

/* Hard-disable native controls in Chromium/WebKit even if a browser tries to expose them. */
.story-player video::-webkit-media-controls,
.story-player video::-webkit-media-controls-enclosure,
.story-player video::-webkit-media-controls-panel,
.story-player video::-webkit-media-controls-play-button,
.story-player video::-webkit-media-controls-timeline,
.story-player video::-webkit-media-controls-current-time-display,
.story-player video::-webkit-media-controls-time-remaining-display,
.story-player video::-webkit-media-controls-volume-slider,
.story-player video::-webkit-media-controls-mute-button,
.story-player video::-webkit-media-controls-fullscreen-button {
  display: none !important;
  -webkit-appearance: none !important;
}

.story-player-controls {
  display: grid !important;
  grid-template-columns: auto minmax(80px, 1fr) auto auto minmax(54px, 86px) auto auto !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 9px !important;
  border-top: 1px solid var(--border) !important;
  background: var(--surface) !important;
}

.story-player-controls button,
.story-player-source {
  min-width: 32px !important;
  min-height: 32px !important;
  box-sizing: border-box !important;
  display: inline-grid !important;
  place-items: center !important;
  padding: 4px 7px !important;
  border: 1px solid var(--border) !important;
  border-radius: 7px !important;
  background: var(--surface-2) !important;
  color: var(--text) !important;
  font: inherit !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

.story-player-seek,
.story-player-volume {
  width: 100% !important;
  min-width: 0 !important;
  accent-color: var(--accent) !important;
}

.story-player-time {
  color: var(--muted) !important;
  font: 11px/1.2 ui-monospace, SFMono-Regular, Consolas, monospace !important;
  white-space: nowrap !important;
}

.story-player-source {
  min-width: auto !important;
  white-space: nowrap !important;
  font-size: 10px !important;
}

/* Featured documentary uses the same actual custom player, not TWID/native fallback UI. */
.index-page .story-media-float #featuredFilmMount,
.history-page .story-media-float #featuredFilmMount {
  min-height: 0 !important;
  background: transparent !important;
}

.index-page .story-media-float .story-player,
.history-page .story-media-float .story-player {
  width: 100% !important;
  max-width: 500px !important;
}

/* Compact linked TikTok where the supplied data has no local MP4 source. */
.story-tiktok-link {
  clear: both !important;
  display: block !important;
  width: min(100%, 310px) !important;
  max-width: 310px !important;
  margin: 18px auto 22px !important;
  border: 1px solid var(--border) !important;
  border-radius: 11px !important;
  overflow: hidden !important;
  background: var(--surface-2) !important;
  box-shadow: var(--shadow-soft) !important;
}

.story-tiktok-link img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 310px !important;
  margin: 0 !important;
}

.story-tiktok-context {
  margin-top: 1.2em !important;
}

@media (max-width: 900px) {
  .story-evidence-media {
    float: none !important;
    clear: both !important;
    width: min(100%, var(--story-player-width, 500px)) !important;
    max-width: 500px !important;
    margin: 0 auto 20px !important;
  }
}

@media (max-width: 620px) {
  .story-player-controls {
    grid-template-columns: auto minmax(70px, 1fr) auto auto !important;
  }

  .story-player-volume,
  .story-player-fullscreen,
  .story-player-source {
    display: none !important;
  }
}


/* 2026-08-06 v13: video sizing, modal zoom and evidence preview fixes */

/* Story videos follow their actual dimensions. No artificial frame height. */
.story-player,
.story-evidence-media .story-player {
  width: min(100%, var(--story-player-width, 500px)) !important;
  max-width: 500px !important;
}

.story-player-frame {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
  background: #050608 !important;
}

.story-player-frame > video,
.story-player video {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 500px !important;
  max-height: 500px !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #050608 !important;
}

.story-media-float {
  width: min(45%, var(--story-player-width, 500px)) !important;
  max-width: 500px !important;
}

.story-evidence-media {
  width: min(46%, var(--story-player-width, 500px)) !important;
  max-width: 500px !important;
}

/* Shared popout/custom player also preserves the video's real aspect ratio. */
.twid-media-player > video {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: min(72vh, 820px) !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  background: #050608 !important;
}

/* Modal images can toggle between fit view and their natural pixel dimensions.
   Natural mode never enlarges beyond the original image. */
.twid-modal-zoom-image {
  cursor: zoom-in !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  flex: 0 0 auto !important;
}

.twid-modal-zoom-image.is-natural-size {
  cursor: zoom-out !important;
  width: auto !important;
  height: auto !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: none !important;
}

#galleryModalBody,
.day-modal-media,
.viewer-media {
  overflow: auto !important;
  overscroll-behavior: contain !important;
}

#galleryModalBody.twid-image-natural-active,
.day-modal-media.twid-image-natural-active,
.viewer-media.twid-image-natural-active {
  align-items: flex-start !important;
  justify-content: flex-start !important;
}

/* Google PDF viewer gets a real viewport instead of collapsing. */
#galleryModalBody iframe,
.day-modal-media iframe {
  display: block !important;
  width: 100% !important;
  min-height: min(72vh, 780px) !important;
  height: 100% !important;
  border: 0 !important;
  background: #fff !important;
}

@media (max-width: 900px) {
  .story-media-float,
  .story-evidence-media {
    width: min(100%, var(--story-player-width, 500px)) !important;
  }
}


/* ================================================================
   not.lotsa.fun INDUSTRIAL METAL V7
   DARK: black/gunmetal machinery.
   LIGHT: silver/brushed steel machinery.
   Industrial treatment is site-wide, while layouts and controls remain
   functional and readable.
   ================================================================ */

:root,
:root[data-theme="dark"] {
  color-scheme: dark;

  --bg: #090b0f !important;
  --bg-2: #0d1015 !important;
  --surface: #12161c !important;
  --surface-2: #181d25 !important;
  --panel: #10141a !important;
  --card: #141920 !important;
  --card-bg: #141920 !important;

  --text: #f4f6f9 !important;
  --fg: #f4f6f9 !important;
  --muted: #9ca6b3 !important;

  --border: #303844 !important;
  --line: #303844 !important;

  --accent-blue: #3f91ff !important;
  --accent-violet: #786cff !important;
  --accent-red: #ed354d !important;
  --accent: #3f91ff !important;
  --accent-2: #ed354d !important;

  --emphasis-green: #48d58e !important;
  --emphasis-yellow: #efc65c !important;

  --link: #72acff !important;
  --link-hover: #c0d9ff !important;

  --brand-not-lotsa: #8a79ff !important;
  --brand-skynet: #f04d63 !important;

  --hover: #1c222b !important;
  --danger: #ed354d !important;
  --success: #48d58e !important;
  --warning: #efc65c !important;

  --panel2: var(--surface-2) !important;
  --accent2: var(--accent-violet) !important;
  --brand: var(--accent-blue) !important;
  --amber: var(--emphasis-yellow) !important;
  --green: var(--emphasis-green) !important;
  --red: var(--accent-red) !important;

  --topbar-h: 58px !important;
  --audiobar-h: 50px !important;
  --radius: 8px !important;

  --metal-edge: #333b46;
  --metal-edge-soft: #242b34;
  --metal-highlight: rgba(255,255,255,.055);
  --metal-shadow: rgba(0,0,0,.45);
  --metal-texture:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.012) 0 1px,
      rgba(0,0,0,.012) 1px 3px
    );

  --shadow: 0 18px 44px rgba(0,0,0,.36);
  --shadow-soft: 0 8px 24px rgba(0,0,0,.22);
}

:root[data-theme="light"] {
  color-scheme: light;

  --bg: #bcc3cb !important;
  --bg-2: #d1d6dc !important;
  --surface: #dce1e6 !important;
  --surface-2: #c8ced5 !important;
  --panel: #d7dce2 !important;
  --card: #e2e6ea !important;
  --card-bg: #e2e6ea !important;

  --text: #171b20 !important;
  --fg: #171b20 !important;
  --muted: #555f6a !important;

  --border: #8d969f !important;
  --line: #8d969f !important;

  --accent-blue: #176fc8 !important;
  --accent-violet: #5e50bf !important;
  --accent-red: #b8253a !important;
  --accent: #176fc8 !important;
  --accent-2: #b8253a !important;

  --emphasis-green: #226c48 !important;
  --emphasis-yellow: #74570a !important;

  --link: #135d9e !important;
  --link-hover: #0b3c69 !important;

  --brand-not-lotsa: #5949b3 !important;
  --brand-skynet: #b8253a !important;

  --hover: #c5ccd4 !important;
  --danger: #b8253a !important;
  --success: #226c48 !important;
  --warning: #74570a !important;

  --panel2: var(--surface-2) !important;
  --accent2: var(--accent-violet) !important;
  --brand: var(--accent-blue) !important;
  --amber: var(--emphasis-yellow) !important;
  --green: var(--emphasis-green) !important;
  --red: var(--accent-red) !important;

  --metal-edge: #858e98;
  --metal-edge-soft: #a7afb8;
  --metal-highlight: rgba(255,255,255,.58);
  --metal-shadow: rgba(53,61,69,.25);
  --metal-texture:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.16) 0 1px,
      rgba(82,91,100,.055) 1px 3px
    );

  --shadow: 0 16px 34px rgba(51,59,67,.18);
  --shadow-soft: 0 7px 18px rgba(51,59,67,.15);
}

/* ------------------------------------------------
   FULL PAGE METAL BACKGROUNDS
   ------------------------------------------------ */

html[data-theme="dark"] body {
  background:
    radial-gradient(900px 420px at 12% -8%, rgba(63,145,255,.065), transparent 62%),
    radial-gradient(760px 380px at 92% -8%, rgba(120,108,255,.045), transparent 64%),
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,.009) 0 1px,
      rgba(0,0,0,.015) 1px 5px
    ),
    linear-gradient(180deg, #090b0f, #0b0e13 48%, #080a0d) !important;
  color: var(--text) !important;
}

html[data-theme="light"] body {
  background:
    radial-gradient(1000px 460px at 18% -9%, rgba(255,255,255,.72), transparent 58%),
    radial-gradient(800px 380px at 93% 0%, rgba(83,98,114,.12), transparent 62%),
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.19) 0 1px,
      rgba(76,86,96,.045) 1px 3px
    ),
    linear-gradient(115deg, #b4bbc3 0%, #d8dde2 31%, #bcc4cc 62%, #d5dae0 100%) !important;
  color: var(--text) !important;
}

/* ------------------------------------------------
   HEADER: dark machinery rail in BOTH themes.
   ------------------------------------------------ */

body .topbar,
body .site-shell-header {
  position: fixed !important;
  min-height: var(--topbar-h) !important;
  padding: 7px 12px !important;
  gap: 9px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.025), transparent 42%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.012) 0 1px, transparent 1px 7px),
    #080a0e !important;
  color: #f4f6f9 !important;
  border: 0 !important;
  border-bottom: 1px solid #3a424d !important;
  box-shadow:
    inset 0 -1px 0 rgba(255,255,255,.035),
    0 10px 28px rgba(0,0,0,.32) !important;
  backdrop-filter: blur(14px) saturate(120%) !important;
}

body .topbar::before,
body .site-shell-header::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: -1px !important;
  height: 2px !important;
  background:
    linear-gradient(
      90deg,
      var(--accent-red) 0 10%,
      transparent 10% 77%,
      var(--accent-violet) 77% 90%,
      var(--accent-blue) 90% 100%
    ) !important;
  pointer-events: none !important;
}

body .brand {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding-right: 13px !important;
  border-right: 1px solid rgba(237,53,77,.45) !important;
}

.brand-statement {
  color: #f7f9fc !important;
  white-space: nowrap !important;
  font-weight: 850 !important;
  letter-spacing: -.014em !important;
}

.brand-not-lotsa { color: #9a8cff !important; }
.brand-skynet { color: #f04d63 !important; }

/* Actual favicon, no fake coloured dot. */
.brand .dot,
.topbar .dot,
.site-shell-header .dot {
  width: 21px !important;
  height: 21px !important;
  flex: 0 0 21px !important;
  border-radius: 4px !important;
  border: 1px solid #46515f !important;
  background: #07090c url("/favicon.gif") center / contain no-repeat !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.035),
    0 0 0 3px rgba(63,145,255,.07) !important;
}

body .desktop-site-nav {
  display: flex !important;
  align-items: center !important;
  gap: 1px !important;
  margin-left: auto !important;
  padding: 3px !important;
  background: #0d1015 !important;
  border: 1px solid #252d37 !important;
  border-radius: 5px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.025) !important;
}

body .desktop-site-nav a,
body .mobile-site-menu a,
body .dropdown-item {
  color: #b5bdc8 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 3px !important;
  box-shadow: none !important;
}

body .desktop-site-nav a {
  padding: 7px 9px !important;
}

body .desktop-site-nav a:hover,
body .mobile-site-menu a:hover,
body .dropdown-item:hover {
  color: #fff !important;
  background: rgba(63,145,255,.075) !important;
}

body .desktop-site-nav a[aria-current="page"],
body .desktop-site-nav a.active,
body .mobile-site-menu a[aria-current="page"],
body .dropdown-item[aria-current="page"] {
  color: #fff !important;
  background: linear-gradient(180deg, rgba(120,108,255,.16), rgba(63,145,255,.055)) !important;
  box-shadow:
    inset 0 1px 0 rgba(151,138,255,.28),
    inset 0 -2px 0 var(--accent-red) !important;
}

body .topbar .search,
body .topbar .search-box,
body .topbar .site-shell-search {
  width: 180px !important;
  min-width: 145px !important;
  max-width: 215px !important;
  height: 36px !important;
  background: #0b0e13 !important;
  border: 1px solid #303946 !important;
  border-left: 2px solid rgba(63,145,255,.68) !important;
  border-radius: 5px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.02) !important;
}

body .topbar .search input,
body .topbar .search-box input,
body .topbar .site-page-search {
  background: transparent !important;
  color: #f7f9fc !important;
  border: 0 !important;
  box-shadow: none !important;
}

body #toggleTheme,
body #siteThemeToggle {
  min-width: 38px !important;
  min-height: 36px !important;
  background: #12161d !important;
  color: #f5f7fa !important;
  border: 1px solid #303946 !important;
  border-right: 2px solid var(--accent-red) !important;
  border-radius: 5px !important;
}

/* ------------------------------------------------
   INDUSTRIAL FORM CONTROLS / BUTTONS
   ------------------------------------------------ */

html[data-theme="dark"] body button,
html[data-theme="dark"] body .btn,
html[data-theme="dark"] body .pill {
  background:
    linear-gradient(180deg, rgba(255,255,255,.035), transparent 55%),
    #151a22 !important;
  color: #eef2f7 !important;
  border: 1px solid #333d49 !important;
  border-radius: 5px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035) !important;
}

html[data-theme="light"] body button,
html[data-theme="light"] body .btn,
html[data-theme="light"] body .pill {
  background:
    linear-gradient(180deg, #f0f2f4, #c8ced4) !important;
  color: #171b20 !important;
  border: 1px solid #8f99a3 !important;
  border-radius: 5px !important;
  box-shadow:
    inset 0 1px 0 #fff,
    inset 0 -1px 0 rgba(77,86,96,.16) !important;
}

body button:hover,
body .btn:hover,
body .pill:hover {
  border-color: var(--accent-blue) !important;
}

html[data-theme="dark"] body input,
html[data-theme="dark"] body select,
html[data-theme="dark"] body textarea {
  background: #0d1116 !important;
  color: #f7f9fc !important;
  border: 1px solid #303946 !important;
}

html[data-theme="light"] body input,
html[data-theme="light"] body select,
html[data-theme="light"] body textarea {
  background:
    linear-gradient(180deg, #f1f3f5, #d7dce1) !important;
  color: #171b20 !important;
  border: 1px solid #929ca6 !important;
  box-shadow: inset 0 1px 3px rgba(63,72,81,.10) !important;
}

body input[type="range"] {
  accent-color: var(--accent-blue) !important;
}

/* ------------------------------------------------
   METAL PANEL LANGUAGE, SITE-WIDE
   Major containers use bevels and textures. Internal cards stay quieter.
   ------------------------------------------------ */

html[data-theme="dark"] body .panel,
html[data-theme="dark"] body .card,
html[data-theme="dark"] body .record-summary,
html[data-theme="dark"] body .summary-card,
html[data-theme="dark"] body .metric-card,
html[data-theme="dark"] body .damage-card,
html[data-theme="dark"] body .section-card,
html[data-theme="dark"] body .video-card,
html[data-theme="dark"] body .month-section,
html[data-theme="dark"] body .individual-card,
html[data-theme="dark"] body .evidence-card,
html[data-theme="dark"] body .g-card,
html[data-theme="dark"] body .featured-film,
html[data-theme="dark"] body .collapsible-section,
html[data-theme="dark"] body details {
  background:
    linear-gradient(135deg, rgba(255,255,255,.028), transparent 32%),
    var(--metal-texture),
    #11161d !important;
  color: #f4f6f9 !important;
  border: 0 !important;
  border-radius: 6px !important;
  box-shadow:
    inset 0 0 0 1px #2e3742,
    inset 0 1px 0 rgba(255,255,255,.045),
    inset 0 -1px 0 rgba(0,0,0,.48) !important;
}

html[data-theme="light"] body .panel,
html[data-theme="light"] body .card,
html[data-theme="light"] body .record-summary,
html[data-theme="light"] body .summary-card,
html[data-theme="light"] body .metric-card,
html[data-theme="light"] body .damage-card,
html[data-theme="light"] body .section-card,
html[data-theme="light"] body .video-card,
html[data-theme="light"] body .month-section,
html[data-theme="light"] body .individual-card,
html[data-theme="light"] body .evidence-card,
html[data-theme="light"] body .g-card,
html[data-theme="light"] body .featured-film,
html[data-theme="light"] body .collapsible-section,
html[data-theme="light"] body details {
  background:
    linear-gradient(135deg, rgba(255,255,255,.78), transparent 36%),
    var(--metal-texture),
    linear-gradient(180deg, #e2e6ea, #c3c9d0) !important;
  color: #171b20 !important;
  border: 0 !important;
  border-radius: 6px !important;
  box-shadow:
    inset 0 0 0 1px #9099a3,
    inset 0 1px 0 #fff,
    inset 0 -1px 0 rgba(67,75,83,.18),
    0 6px 14px rgba(53,61,69,.10) !important;
}

/* Major page headers get the banner-style treatment. */
body .story-header,
body .hero,
body .page-header,
body .damage-hero,
body .page-title-badge,
body .section-intro {
  position: relative !important;
  overflow: hidden !important;
  clip-path: polygon(
    12px 0,
    calc(100% - 10px) 0,
    100% 10px,
    100% calc(100% - 12px),
    calc(100% - 12px) 100%,
    10px 100%,
    0 calc(100% - 10px),
    0 12px
  ) !important;
}

html[data-theme="dark"] body .story-header,
html[data-theme="dark"] body .hero,
html[data-theme="dark"] body .page-header,
html[data-theme="dark"] body .damage-hero,
html[data-theme="dark"] body .page-title-badge,
html[data-theme="dark"] body .section-intro {
  background:
    linear-gradient(112deg, rgba(63,145,255,.075), rgba(120,108,255,.045) 48%, rgba(237,53,77,.035)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.012) 0 1px, transparent 1px 4px),
    linear-gradient(180deg, #151a22, #0d1117) !important;
  color: #f7f9fc !important;
  border: 0 !important;
  box-shadow:
    inset 0 0 0 1px #36404c,
    inset 0 2px 0 rgba(255,255,255,.04),
    0 12px 28px rgba(0,0,0,.20) !important;
}

html[data-theme="light"] body .story-header,
html[data-theme="light"] body .hero,
html[data-theme="light"] body .page-header,
html[data-theme="light"] body .damage-hero,
html[data-theme="light"] body .page-title-badge,
html[data-theme="light"] body .section-intro {
  background:
    linear-gradient(112deg, rgba(255,255,255,.72), rgba(207,214,221,.58) 56%, rgba(183,190,198,.68)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.22) 0 1px, rgba(70,78,86,.045) 1px 4px) !important;
  color: #161a1f !important;
  border: 0 !important;
  box-shadow:
    inset 0 0 0 1px #858f99,
    inset 0 2px 0 #fff,
    inset 0 -2px 0 rgba(72,80,88,.17),
    0 9px 22px rgba(52,59,66,.12) !important;
}

body .story-header::before,
body .hero::before,
body .page-header::before,
body .damage-hero::before,
body .page-title-badge::before,
body .section-intro::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 38% !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--accent-red), transparent) !important;
  pointer-events: none !important;
}

body .story-header::after,
body .hero::after,
body .page-header::after,
body .damage-hero::after,
body .page-title-badge::after,
body .section-intro::after {
  content: "" !important;
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 22% !important;
  height: 3px !important;
  background: linear-gradient(90deg, transparent, var(--accent-violet), var(--accent-blue)) !important;
  pointer-events: none !important;
}

html[data-theme="dark"] body h1,
html[data-theme="dark"] body h2,
html[data-theme="dark"] body h3,
html[data-theme="dark"] body h4 {
  color: #f5f7fa !important;
}

html[data-theme="light"] body h1,
html[data-theme="light"] body h2,
html[data-theme="light"] body h3,
html[data-theme="light"] body h4 {
  color: #161a1f !important;
}

html[data-theme="dark"] body .muted,
html[data-theme="dark"] body .meta,
html[data-theme="dark"] body small {
  color: #9ca6b3 !important;
}

html[data-theme="light"] body .muted,
html[data-theme="light"] body .meta,
html[data-theme="light"] body small {
  color: #59636e !important;
}

/* ------------------------------------------------
   INDEX: sidebar now FLOWS with the story instead of reserving a permanent
   blank right column.
   ------------------------------------------------ */

@media (min-width: 960px) {
  body.index-page > .wrap {
    display: block !important;
    width: min(1900px, calc(100% - 28px)) !important;
    max-width: 1900px !important;
    margin-inline: auto !important;
    padding: 12px 0 24px !important;
  }

  body.index-page .container.narrative {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  body.index-page .gallery-sidebar {
    float: right !important;
    position: relative !important;
    top: auto !important;
    width: 400px !important;
    min-width: 400px !important;
    max-width: 400px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    margin: 16px 0 20px 20px !important;
    padding: 11px !important;
  }

  body.index-page .gallery-sidebar #gallerySidebarContent,
  body.index-page .gallery-sidebar .sidebar-view,
  body.index-page .gallery-sidebar .gallery-track {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }
}

/* Sidebar is an industrial instrument housing. */
html[data-theme="dark"] body .gallery-sidebar,
html[data-theme="dark"] body .cal-sidebar,
html[data-theme="dark"] body .sidebar-view {
  background:
    linear-gradient(145deg, rgba(255,255,255,.026), transparent 36%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.011) 0 1px, transparent 1px 4px),
    linear-gradient(180deg, #11161d, #0b0f14) !important;
  color: #f4f6f9 !important;
  border: 0 !important;
  border-radius: 6px !important;
  box-shadow:
    inset 0 0 0 1px #313b47,
    inset 0 2px 0 rgba(255,255,255,.035),
    0 11px 28px rgba(0,0,0,.22) !important;
}

html[data-theme="light"] body .gallery-sidebar,
html[data-theme="light"] body .cal-sidebar,
html[data-theme="light"] body .sidebar-view {
  background:
    linear-gradient(145deg, rgba(255,255,255,.74), transparent 38%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.20) 0 1px, rgba(66,75,84,.045) 1px 4px),
    linear-gradient(180deg, #dbe0e5, #bcc3cb) !important;
  color: #171b20 !important;
  border: 0 !important;
  border-radius: 6px !important;
  box-shadow:
    inset 0 0 0 1px #89939e,
    inset 0 2px 0 #fff,
    inset 0 -2px 0 rgba(63,72,81,.16),
    0 10px 22px rgba(54,62,70,.12) !important;
}

body .gallery-sidebar::before,
body .cal-sidebar::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(var(--accent-red), var(--accent-red)) 0 0 / 88px 2px no-repeat,
    linear-gradient(var(--accent-violet), var(--accent-violet)) 0 0 / 2px 46px no-repeat,
    linear-gradient(var(--accent-blue), var(--accent-blue)) 100% 0 / 2px 68px no-repeat !important;
}

body .sidebar-stat {
  border: 0 !important;
  border-radius: 4px !important;
}

html[data-theme="dark"] body .sidebar-stat {
  background: linear-gradient(180deg, #171d26, #11161d) !important;
  box-shadow:
    inset 0 0 0 1px #323d49,
    inset 0 2px 0 rgba(63,145,255,.12) !important;
}

html[data-theme="light"] body .sidebar-stat {
  background: linear-gradient(180deg, #edf0f2, #cbd1d7) !important;
  box-shadow:
    inset 0 0 0 1px #929ca6,
    inset 0 1px 0 #fff,
    inset 0 -1px 0 rgba(73,82,91,.12) !important;
}

body .sidebar-stat strong,
body .sidebar-stat .value,
body .stat-value,
body .evidence-count {
  color: var(--accent-blue) !important;
}

body .sidebar-tabs,
body .report-tabs {
  display: flex !important;
  gap: 3px !important;
  padding: 4px !important;
  border-radius: 4px !important;
}

html[data-theme="dark"] body .sidebar-tabs,
html[data-theme="dark"] body .report-tabs {
  background: #090c10 !important;
  border: 1px solid #252d37 !important;
}

html[data-theme="light"] body .sidebar-tabs,
html[data-theme="light"] body .report-tabs {
  background: #b7bec6 !important;
  border: 1px solid #929ca6 !important;
  box-shadow: inset 0 1px 2px rgba(62,70,78,.12) !important;
}

body .sidebar-tab,
body .report-tab {
  border: 0 !important;
  border-radius: 3px !important;
}

html[data-theme="dark"] body .sidebar-tab,
html[data-theme="dark"] body .report-tab {
  background: transparent !important;
  color: #aab4c0 !important;
}

html[data-theme="light"] body .sidebar-tab,
html[data-theme="light"] body .report-tab {
  background: transparent !important;
  color: #36404a !important;
}

body .sidebar-tab.active,
body .report-tab.active {
  color: #fff !important;
  background: linear-gradient(180deg, #51506c, #2a3040) !important;
  box-shadow:
    inset 3px 0 0 var(--accent-violet),
    inset 0 -2px 0 var(--accent-red) !important;
}

/* Evidence cards are inset modules, not bright outlines. */
html[data-theme="dark"] body .g-card,
html[data-theme="dark"] body .evidence-card {
  background: #11161d !important;
  color: #f3f5f8 !important;
  border: 0 !important;
  box-shadow:
    inset 0 0 0 1px #2d3742,
    inset 0 1px 0 rgba(255,255,255,.025) !important;
}

html[data-theme="light"] body .g-card,
html[data-theme="light"] body .evidence-card {
  background: linear-gradient(180deg, #e5e9ec, #cbd1d6) !important;
  color: #171b20 !important;
  border: 0 !important;
  box-shadow:
    inset 0 0 0 1px #939da7,
    inset 0 1px 0 #fff !important;
}

/* ------------------------------------------------
   MAIN STORY: metal sheet, natural paragraph/media wrapping.
   ------------------------------------------------ */

body.index-page .read-the-whole-thing {
  display: block !important;
  position: relative !important;
  margin-top: 16px !important;
  padding: 28px 32px 34px !important;
  border: 0 !important;
  border-radius: 7px !important;
}

html[data-theme="dark"] body.index-page .read-the-whole-thing {
  background:
    linear-gradient(90deg, rgba(63,145,255,.018), transparent 9%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.009) 0 1px, transparent 1px 4px),
    linear-gradient(180deg, #0f141a, #0b0f14) !important;
  color: #f3f5f8 !important;
  box-shadow:
    inset 0 0 0 1px #29323d,
    inset 0 1px 0 rgba(255,255,255,.025) !important;
}

html[data-theme="light"] body.index-page .read-the-whole-thing {
  background:
    linear-gradient(90deg, rgba(255,255,255,.44), transparent 11%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.16) 0 1px, rgba(74,83,92,.035) 1px 4px),
    linear-gradient(180deg, #dce1e6, #c4cbd2) !important;
  color: #171b20 !important;
  box-shadow:
    inset 0 0 0 1px #8d969f,
    inset 0 2px 0 #fff,
    inset 0 -1px 0 rgba(66,75,84,.16) !important;
}

body.index-page .read-the-whole-thing::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 132px !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--accent-red), transparent) !important;
}

body.index-page .read-the-whole-thing::after {
  content: "" !important;
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 154px !important;
  height: 3px !important;
  background: linear-gradient(90deg, transparent, var(--accent-violet), var(--accent-blue)) !important;
}

body.index-page .story-paragraph,
body.index-page .story-quote {
  clear: none !important;
  overflow: visible !important;
  text-wrap: pretty !important;
  hyphens: none !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

html[data-theme="dark"] body.index-page .story-paragraph {
  color: #f0f3f7 !important;
}

html[data-theme="light"] body.index-page .story-paragraph {
  color: #1b2026 !important;
}

body.index-page .story-paragraph {
  font-size: clamp(15px, .92vw, 16.5px) !important;
  line-height: 1.75 !important;
}

html[data-theme="dark"] body.index-page .story-quote {
  background: linear-gradient(90deg, rgba(239,198,92,.065), transparent 40%), #141920 !important;
  color: #fff !important;
  border-left: 3px solid var(--emphasis-yellow) !important;
}

html[data-theme="light"] body.index-page .story-quote {
  background: linear-gradient(90deg, rgba(116,87,10,.10), transparent 40%), #d7dce1 !important;
  color: #171b20 !important;
  border-left: 3px solid var(--emphasis-yellow) !important;
}

/* Proof anchors are compact tags. */
body .read-the-whole-thing a[href*="/verified-proof#"] {
  color: var(--brand-not-lotsa) !important;
  border: 1px solid color-mix(in srgb, var(--accent-violet) 28%, transparent) !important;
  border-bottom-color: color-mix(in srgb, var(--accent-red) 42%, transparent) !important;
  border-radius: 4px !important;
}

html[data-theme="dark"] body .read-the-whole-thing a[href*="/verified-proof#"] {
  background: rgba(120,108,255,.07) !important;
}

html[data-theme="light"] body .read-the-whole-thing a[href*="/verified-proof#"] {
  background: rgba(94,80,191,.08) !important;
}

/* ------------------------------------------------
   NATURAL MEDIA FLOW
   Lines wrap at media width. No forced clear creates blank chunks.
   ------------------------------------------------ */

.index-page .story-media-float,
.index-page figure.story-evidence-media {
  float: right !important;
  clear: none !important;
  width: min(42%, var(--video-width, 460px)) !important;
  max-width: 460px !important;
  margin: 5px 0 18px 24px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  shape-outside: margin-box !important;
}

.index-page .story-media-float.flow-left,
.index-page figure.story-evidence-media.flow-left {
  float: left !important;
  margin: 5px 24px 18px 0 !important;
}

.index-page figure.story-visual {
  float: right !important;
  clear: none !important;
  width: min(34%, 390px) !important;
  max-width: 390px !important;
  margin: 5px 0 17px 22px !important;
  padding: 0 !important;
  shape-outside: margin-box !important;
}

.index-page figure.story-visual.flow-left {
  float: left !important;
  margin: 5px 22px 17px 0 !important;
}

.index-page figure.story-person-float {
  float: right !important;
  clear: none !important;
  width: min(18%, 180px) !important;
  max-width: 180px !important;
  margin: 3px 0 13px 18px !important;
  padding: 0 4px !important;
  shape-outside: margin-box !important;
}

.index-page figure.story-person-float.flow-left {
  float: left !important;
  margin: 3px 18px 13px 0 !important;
}

.index-page a.story-tiktok-link {
  display: block !important;
  float: right !important;
  clear: none !important;
  width: min(28%, 280px) !important;
  max-width: 280px !important;
  margin: 5px 0 17px 22px !important;
  text-decoration: none !important;
  shape-outside: margin-box !important;
}

.index-page a.story-tiktok-link.flow-left {
  float: left !important;
  margin: 5px 22px 17px 0 !important;
}

/* Industrial display frames, not generic borders. */
.index-page figure.story-visual img,
.index-page figure.story-evidence-media img,
.index-page a.story-tiktok-link img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 360px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  clip-path: polygon(
    8px 0,
    calc(100% - 8px) 0,
    100% 8px,
    100% calc(100% - 8px),
    calc(100% - 8px) 100%,
    8px 100%,
    0 calc(100% - 8px),
    0 8px
  ) !important;
}

html[data-theme="dark"] .index-page figure.story-visual img,
html[data-theme="dark"] .index-page figure.story-evidence-media img,
html[data-theme="dark"] .index-page a.story-tiktok-link img {
  background: #05070a !important;
  box-shadow:
    0 0 0 1px #3a4552,
    0 10px 24px rgba(0,0,0,.20),
    inset 0 0 0 1px rgba(255,255,255,.025) !important;
}

html[data-theme="light"] .index-page figure.story-visual img,
html[data-theme="light"] .index-page figure.story-evidence-media img,
html[data-theme="light"] .index-page a.story-tiktok-link img {
  background: #bdc4cb !important;
  box-shadow:
    0 0 0 1px #818b95,
    0 9px 20px rgba(54,62,70,.14),
    inset 0 0 0 1px rgba(255,255,255,.65) !important;
}

.index-page figure.story-person-float img {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  max-height: 270px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  filter: drop-shadow(0 9px 13px rgba(0,0,0,.24)) !important;
}

.index-page .story-float-clear {
  display: none !important;
  clear: none !important;
}

/* ------------------------------------------------
   CUSTOM VIDEO PLAYER
   Intrinsic aspect ratio retained. Controls remain clickable.
   ------------------------------------------------ */

.story-video-poster { display: none !important; }

.story-player {
  position: relative !important;
  width: min(100%, var(--video-width, 460px)) !important;
  max-width: 460px !important;
  margin: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 6px !important;
  clip-path: polygon(
    8px 0,
    calc(100% - 8px) 0,
    100% 8px,
    100% calc(100% - 8px),
    calc(100% - 8px) 100%,
    8px 100%,
    0 calc(100% - 8px),
    0 8px
  ) !important;
}

html[data-theme="dark"] .story-player {
  background: #05070a !important;
  box-shadow:
    0 0 0 1px #3a4552,
    0 12px 26px rgba(0,0,0,.22) !important;
}

html[data-theme="light"] .story-player {
  background: #b8c0c7 !important;
  box-shadow:
    0 0 0 1px #818b95,
    0 9px 20px rgba(54,62,70,.15),
    inset 0 1px 0 rgba(255,255,255,.66) !important;
}

.story-player.is-portrait-video {
  max-width: 300px !important;
}

.story-player::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 78px !important;
  height: 3px !important;
  background: var(--accent-red) !important;
  z-index: 8 !important;
  pointer-events: none !important;
}

.story-player::after {
  content: "" !important;
  position: absolute !important;
  right: 0 !important;
  bottom: 41px !important;
  width: 72px !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--accent-violet), var(--accent-blue)) !important;
  z-index: 8 !important;
  pointer-events: none !important;
}

.story-player-frame {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: var(--video-ratio, auto) !important;
  overflow: hidden !important;
  background: #05070a !important;
}

.story-player-frame > video,
.story-player video {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 520px !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  background: #05070a !important;
  pointer-events: auto !important;
}

.story-player-controls,
.twid-media-controls {
  position: relative !important;
  z-index: 10 !important;
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  min-height: 42px !important;
  padding: 6px 8px !important;
  pointer-events: auto !important;
}

html[data-theme="dark"] .story-player-controls,
html[data-theme="dark"] .twid-media-controls {
  background:
    linear-gradient(180deg, rgba(255,255,255,.035), transparent 52%),
    #11161d !important;
  border-top: 1px solid #303946 !important;
}

html[data-theme="light"] .story-player-controls,
html[data-theme="light"] .twid-media-controls {
  background: linear-gradient(180deg, #e2e6e9, #bcc3ca) !important;
  border-top: 1px solid #88929d !important;
  box-shadow: inset 0 1px 0 #fff !important;
}

.story-player-controls > *,
.twid-media-controls > * {
  pointer-events: auto !important;
}

.story-player-controls button,
.twid-media-controls button {
  min-width: 31px !important;
  min-height: 31px !important;
  border-radius: 3px !important;
}

.story-player-play { box-shadow: inset 3px 0 0 var(--accent-violet) !important; }
.story-player-mute { box-shadow: inset 0 -2px 0 var(--accent-red) !important; }
.story-player-fullscreen { box-shadow: inset -2px 0 0 var(--accent-blue) !important; }
.story-player-seek { accent-color: var(--accent-violet) !important; }
.story-player-volume { accent-color: var(--accent-red) !important; }

/* ------------------------------------------------
   REPORTS / CALENDAR / TABLES
   ------------------------------------------------ */

body .report-overview > div,
body .summary-grid > div,
body .metric-strip > div {
  position: relative !important;
  border: 0 !important;
  border-radius: 4px !important;
  overflow: hidden !important;
}

html[data-theme="dark"] body .report-overview > div,
html[data-theme="dark"] body .summary-grid > div,
html[data-theme="dark"] body .metric-strip > div {
  background: linear-gradient(180deg, #171d26, #11161d) !important;
  box-shadow:
    inset 0 0 0 1px #323d49,
    inset 0 1px 0 rgba(255,255,255,.035) !important;
}

html[data-theme="light"] body .report-overview > div,
html[data-theme="light"] body .summary-grid > div,
html[data-theme="light"] body .metric-strip > div {
  background: linear-gradient(180deg, #eef1f3, #c9cfd5) !important;
  box-shadow:
    inset 0 0 0 1px #939da7,
    inset 0 1px 0 #fff !important;
}

body .report-overview > div::before,
body .summary-grid > div::before,
body .metric-strip > div::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 48% !important;
  height: 2px !important;
  background: linear-gradient(90deg, var(--accent-blue), transparent) !important;
}

body .report-overview > div:nth-child(3n+2)::before,
body .summary-grid > div:nth-child(3n+2)::before {
  background: linear-gradient(90deg, var(--accent-violet), transparent) !important;
}

body .report-overview > div:nth-child(3n)::before,
body .summary-grid > div:nth-child(3n)::before {
  background: linear-gradient(90deg, var(--accent-red), transparent) !important;
}

body .report-overview strong {
  color: var(--accent-blue) !important;
}

body .report-overview > div:nth-child(3n+2) strong {
  color: var(--brand-not-lotsa) !important;
}

body .report-overview > div:nth-child(3n) strong {
  color: var(--emphasis-green) !important;
}

body .cal-month-block {
  position: relative !important;
  border: 0 !important;
  border-radius: 6px !important;
  overflow: hidden !important;
}

html[data-theme="dark"] body .cal-month-block {
  background:
    linear-gradient(180deg, rgba(255,255,255,.025), transparent 22%),
    #10151b !important;
  box-shadow:
    inset 0 0 0 1px #303a45,
    inset 0 1px 0 rgba(255,255,255,.035) !important;
}

html[data-theme="light"] body .cal-month-block {
  background:
    linear-gradient(180deg, #e8ecef, #c6ccd2) !important;
  box-shadow:
    inset 0 0 0 1px #929ca6,
    inset 0 1px 0 #fff,
    inset 0 -1px 0 rgba(67,76,85,.14) !important;
}

body .cal-month-block::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--accent-red), transparent 36%, var(--accent-violet) 76%, var(--accent-blue)) !important;
  opacity: .84 !important;
}

body .cal-month-title {
  color: var(--text) !important;
  border-bottom: 1px solid var(--border) !important;
}

body .cal-month-count {
  color: var(--emphasis-yellow) !important;
}

html[data-theme="dark"] body .cal-cell,
html[data-theme="dark"] body .calendar-cell {
  background: #0d1116 !important;
  color: #eef2f7 !important;
  border: 1px solid #29323d !important;
}

html[data-theme="light"] body .cal-cell,
html[data-theme="light"] body .calendar-cell {
  background: linear-gradient(180deg, #e8ecef, #cdd3d8) !important;
  color: #171b20 !important;
  border: 1px solid #969fa9 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.76) !important;
}

body .cal-cell.has-evidence,
body .cal-cell.has-items,
body .calendar-cell.has-evidence {
  box-shadow:
    inset 2px 0 0 var(--accent-blue),
    inset 0 -2px 0 rgba(120,108,255,.24) !important;
}

body .cal-cell.has-evidence:hover,
body .cal-cell.has-items:hover,
body .calendar-cell.has-evidence:hover {
  border-color: var(--accent-violet) !important;
}

body .cal-cell.is-active {
  border-color: var(--accent-red) !important;
}

body .cal-cell-count {
  color: #06140d !important;
  background: var(--emphasis-green) !important;
  border-color: var(--emphasis-green) !important;
}

/* Tables look like engraved data plates. */
html[data-theme="dark"] body table {
  background: #0f141a !important;
  color: #eef2f7 !important;
}

html[data-theme="light"] body table {
  background: #d3d9df !important;
  color: #171b20 !important;
}

body th,
body thead th {
  background: linear-gradient(180deg, #202631, #141922) !important;
  color: #f3f5f8 !important;
  border-color: #394350 !important;
}

body td {
  border-color: var(--border) !important;
}

html[data-theme="dark"] body tr:hover td {
  background: rgba(63,145,255,.035) !important;
}

html[data-theme="light"] body tr:hover td {
  background: rgba(23,111,200,.065) !important;
}

/* ------------------------------------------------
   OTHER PUBLIC PAGES: all receive metal visual language.
   ------------------------------------------------ */

/* Connections */
body.page-connections .node {
  border: 0 !important;
  border-radius: 5px !important;
}

html[data-theme="dark"] body.page-connections .node {
  background: linear-gradient(180deg, #151b23, #0f141a) !important;
  box-shadow: inset 0 0 0 1px #303a46 !important;
}

html[data-theme="light"] body.page-connections .node {
  background: linear-gradient(180deg, #e7ebee, #c5cbd2) !important;
  box-shadow:
    inset 0 0 0 1px #909aa4,
    inset 0 1px 0 #fff !important;
}

/* Damages */
body.page-damages .metric-strip {
  border-top: 1px solid color-mix(in srgb, var(--accent-blue) 28%, transparent) !important;
  border-bottom: 1px solid color-mix(in srgb, var(--accent-red) 26%, transparent) !important;
}
body.page-damages .metric-strip strong {
  color: var(--emphasis-green) !important;
}

/* Images and videos */
body.page-images .gallery,
body.page-videos .video-card {
  position: relative !important;
}
body.page-images .gallery::before,
body.page-videos .video-card::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 54px !important;
  height: 2px !important;
  background: var(--accent-red) !important;
  pointer-events: none !important;
}

/* Meta */
body.page-meta-support .notice {
  border: 0 !important;
  border-left: 3px solid var(--emphasis-yellow) !important;
}

/* Jackelope */
body.page-project-jackelope-jack .update-card {
  border: 0 !important;
  border-radius: 6px !important;
}

/* Verified proof */
body.page-verified-proof .callout {
  border: 0 !important;
  border-left: 3px solid var(--accent-red) !important;
}

/* ------------------------------------------------
   MODALS / AUDIO
   ------------------------------------------------ */

body .media-overlay,
body .day-modal,
body #viewerOverlay {
  background: rgba(3,4,7,.91) !important;
  backdrop-filter: blur(8px) !important;
}

html[data-theme="dark"] body .media-card,
html[data-theme="dark"] body .day-modal-card,
html[data-theme="dark"] body .viewer-card,
html[data-theme="dark"] body .media-modal,
html[data-theme="dark"] body .day-modal-box {
  background:
    var(--metal-texture),
    linear-gradient(180deg, #151a22, #0d1116) !important;
  color: #f4f6f9 !important;
  border: 0 !important;
  box-shadow:
    inset 0 0 0 1px #38434f,
    0 26px 70px rgba(0,0,0,.46) !important;
}

html[data-theme="light"] body .media-card,
html[data-theme="light"] body .day-modal-card,
html[data-theme="light"] body .viewer-card,
html[data-theme="light"] body .media-modal,
html[data-theme="light"] body .day-modal-box {
  background:
    var(--metal-texture),
    linear-gradient(180deg, #e6eaed, #c4cbd2) !important;
  color: #171b20 !important;
  border: 0 !important;
  box-shadow:
    inset 0 0 0 1px #8c969f,
    inset 0 1px 0 #fff,
    0 22px 52px rgba(54,62,70,.22) !important;
}

body .audiobar {
  background:
    linear-gradient(90deg, rgba(120,108,255,.045), transparent 45%, rgba(237,53,77,.035)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.009) 0 1px, transparent 1px 7px),
    #07090c !important;
  color: #f5f7fa !important;
  border: 0 !important;
  box-shadow:
    inset 0 1px 0 #2d3641,
    0 -8px 24px rgba(0,0,0,.22) !important;
}

body .audiobar::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 105px !important;
  height: 3px !important;
  background: var(--accent-red) !important;
}

body .audiobar::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  width: 145px !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--accent-violet), var(--accent-blue)) !important;
}

/* Semantic green/yellow emphasis */
body .verified,
body .success,
body .good,
body .status-visible,
body .verified-count,
body .stat-success {
  color: var(--emphasis-green) !important;
}

body mark,
body .warning,
body .warn,
body .attention,
body .status-removed,
body .count-method strong {
  color: var(--emphasis-yellow) !important;
}

html[data-theme="dark"] body mark {
  background: rgba(239,198,92,.10) !important;
}

html[data-theme="light"] body mark {
  background: rgba(116,87,10,.12) !important;
}

/* ------------------------------------------------
   RESPONSIVE
   ------------------------------------------------ */

@media (max-width: 1180px) {
  body .desktop-site-nav a {
    padding-inline: 7px !important;
    font-size: 11px !important;
  }
  .brand-statement {
    font-size: 12px !important;
  }
}

@media (max-width: 959px) {
  body.index-page .gallery-sidebar {
    display: none !important;
    float: none !important;
  }
}

@media (max-width: 860px) {
  .brand-statement {
    white-space: normal !important;
    line-height: 1.12 !important;
  }

  .index-page .story-media-float,
  .index-page figure.story-evidence-media,
  .index-page figure.story-visual,
  .index-page figure.story-person-float,
  .index-page a.story-tiktok-link,
  .index-page .story-media-float.flow-left,
  .index-page figure.story-evidence-media.flow-left,
  .index-page figure.story-visual.flow-left,
  .index-page figure.story-person-float.flow-left,
  .index-page a.story-tiktok-link.flow-left {
    float: none !important;
    width: fit-content !important;
    max-width: min(100%, 460px) !important;
    margin: 14px auto 18px !important;
  }

  .index-page figure.story-person-float {
    max-width: min(58%, 180px) !important;
  }
}

/* ------------------------------------------------
   PRINT: remove the screen metal chrome, preserve useful natural flow.
   ------------------------------------------------ */

@media print {
  @page { margin: 13mm; }

  html,
  body {
    background: #fff !important;
    color: #111 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 10.5pt !important;
  }

  .topbar,
  .site-shell-header,
  .desktop-site-nav,
  .mobile-site-menu,
  .section-dropdown,
  #menuDropdown,
  .gallery-sidebar,
  .cal-sidebar,
  .audiobar,
  .story-player-controls,
  .twid-media-controls,
  .media-overlay,
  .day-modal,
  #viewerOverlay,
  .site-page-search,
  .search,
  .search-box,
  button,
  .btn {
    display: none !important;
  }

  main,
  article,
  .wrap,
  .container,
  .content,
  .content-wrapper,
  .read-the-whole-thing,
  .index-page .read-the-whole-thing,
  .story-header,
  .panel,
  .card,
  .record-summary,
  .hero,
  .page-header,
  .section-card,
  .summary-card,
  .damage-card {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    background: #fff !important;
    color: #111 !important;
    border-color: #bbb !important;
    box-shadow: none !important;
    clip-path: none !important;
  }

  .index-page .read-the-whole-thing {
    padding: 0 !important;
    border: 0 !important;
  }

  h1, h2, h3, h4, p, li, td, th, blockquote,
  strong, em, mark, .brand-not-lotsa, .brand-skynet,
  .muted, .meta, .verified, .success, .good,
  .warning, .warn, .attention {
    color: #111 !important;
    background: transparent !important;
    text-shadow: none !important;
  }

  a, a:visited {
    color: #111 !important;
    text-decoration: underline !important;
  }

  .index-page .story-paragraph,
  .index-page .story-quote {
    clear: none !important;
    orphans: 3;
    widows: 3;
  }

  .index-page .story-media-float,
  .index-page figure.story-evidence-media,
  .index-page figure.story-visual,
  .index-page figure.story-person-float,
  .index-page a.story-tiktok-link {
    float: right !important;
    clear: none !important;
    width: auto !important;
    max-width: 36% !important;
    margin: 2mm 0 3.5mm 5mm !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .index-page .flow-left {
    float: left !important;
    margin: 2mm 5mm 3.5mm 0 !important;
  }

  .index-page figure.story-person-float {
    max-width: 16% !important;
  }

  figure img,
  .story-player video {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 72mm !important;
    object-fit: contain !important;
    background: #fff !important;
    filter: none !important;
    clip-path: none !important;
  }

  .story-player,
  .story-player-frame {
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    background: #fff !important;
    border: 1px solid #bbb !important;
    box-shadow: none !important;
    clip-path: none !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .story-float-clear {
    display: none !important;
    clear: none !important;
  }
}


/* ================================================================
   INDUSTRIAL METAL V7.2
   Layout repair + stronger two-mode metal identity.
   Sidebar is a separate side panel again, without reserving a permanent
   empty column. Dark is black/gunmetal. Light is unmistakably silver/steel.
   ================================================================ */

/* ------------------------------------------------
   STRONGER PAGE METAL BACKGROUNDS
   ------------------------------------------------ */

html[data-theme="dark"] body {
  background-color: #07090c !important;
  background-image:
    radial-gradient(900px 470px at 12% -10%, rgba(45,108,180,.11), transparent 63%),
    radial-gradient(820px 420px at 94% -8%, rgba(96,78,188,.075), transparent 65%),
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.018) 0 1px,
      rgba(0,0,0,.035) 1px 4px
    ),
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,.008) 0 1px,
      transparent 1px 11px
    ),
    linear-gradient(125deg, #11161b 0%, #080a0d 42%, #101419 72%, #06080b 100%) !important;
  color: #f4f6f9 !important;
}

html[data-theme="light"] body {
  background-color: #aeb6bf !important;
  background-image:
    radial-gradient(1050px 520px at 18% -8%, rgba(255,255,255,.92), transparent 57%),
    radial-gradient(900px 460px at 95% 4%, rgba(75,87,100,.16), transparent 62%),
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.34) 0 1px,
      rgba(82,92,102,.075) 1px 3px
    ),
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,.10) 0 1px,
      transparent 1px 10px
    ),
    linear-gradient(118deg, #aab2bb 0%, #d9dee3 31%, #b4bcc5 60%, #e2e6ea 100%) !important;
  color: #171b20 !important;
}

/* ------------------------------------------------
   REAL SEPARATE INDEX SIDE PANEL, NO PERMANENT EMPTY COLUMN
   ------------------------------------------------ */

body.index-page > .wrap {
  display: block !important;
  width: min(1900px, calc(100% - 28px)) !important;
  max-width: 1900px !important;
  margin-inline: auto !important;
  padding: 12px 0 24px !important;
}

body.index-page .container.narrative {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  overflow: visible !important;
}

body.index-page .story-header {
  width: 100% !important;
  margin: 0 0 14px !important;
}

/* Sidebar is a sibling of the article and visually remains a true side panel. */
@media (min-width: 960px) {
  body.index-page main.container.narrative > #gallerySidebar.gallery-sidebar {
    display: block !important;
    float: right !important;
    position: relative !important;
    inset: auto !important;

    width: 390px !important;
    min-width: 390px !important;
    max-width: 390px !important;

    height: min(720px, calc(100vh - 128px)) !important;
    min-height: 500px !important;
    max-height: 720px !important;

    margin: 0 0 20px 22px !important;
    padding: 12px !important;

    overflow-x: hidden !important;
    overflow-y: auto !important;
    box-sizing: border-box !important;
    overscroll-behavior: contain !important;
    z-index: 3 !important;
  }

  /* Article is deliberately NOT grid/flex/flow-root/BFC.
     Its line boxes wrap beside the preceding sidebar float and then
     naturally expand to the full width after the sidebar ends. */
  body.index-page main.container.narrative > article.read-the-whole-thing {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    contain: none !important;
  }

  body.index-page main.container.narrative > #gallerySidebar + article.read-the-whole-thing {
    margin-top: 0 !important;
  }

  body.index-page .story-paragraph,
  body.index-page .story-quote {
    clear: none !important;
  }

  body.index-page #gallerySidebar .sidebar-view,
  body.index-page #gallerySidebar #gallerySidebarContent,
  body.index-page #gallerySidebar .gallery-track {
    width: 100% !important;
    min-height: 0 !important;
  }
}

@media (min-width: 960px) and (max-width: 1180px) {
  body.index-page main.container.narrative > #gallerySidebar.gallery-sidebar {
    width: 330px !important;
    min-width: 330px !important;
    max-width: 330px !important;
    margin-left: 18px !important;
  }
}

@media (max-width: 959px) {
  body.index-page main.container.narrative > #gallerySidebar.gallery-sidebar {
    float: none !important;
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 440px !important;
    margin: 0 0 16px !important;
    overflow-y: auto !important;
  }

  body.index-page main.container.narrative > article.read-the-whole-thing {
    width: 100% !important;
    margin: 0 !important;
  }
}

/* ------------------------------------------------
   INDUSTRIAL PLATE SURFACES
   Metal depth comes from brushed texture/bevels, not bright borders everywhere.
   ------------------------------------------------ */

html[data-theme="dark"] body .read-the-whole-thing,
html[data-theme="dark"] body .gallery-sidebar,
html[data-theme="dark"] body .cal-sidebar,
html[data-theme="dark"] body .sidebar-view,
html[data-theme="dark"] body .panel,
html[data-theme="dark"] body .card,
html[data-theme="dark"] body .section-card,
html[data-theme="dark"] body .record-summary,
html[data-theme="dark"] body .damage-card,
html[data-theme="dark"] body .video-card,
html[data-theme="dark"] body .month-section {
  background-image:
    linear-gradient(145deg, rgba(255,255,255,.038), transparent 28%),
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.012) 0 1px,
      rgba(0,0,0,.020) 1px 4px
    ),
    linear-gradient(180deg, #151a21, #0d1116) !important;
  border: 0 !important;
  box-shadow:
    inset 0 0 0 1px #303944,
    inset 0 2px 0 rgba(255,255,255,.045),
    inset 0 -2px 0 rgba(0,0,0,.48),
    0 9px 24px rgba(0,0,0,.18) !important;
}

html[data-theme="light"] body .read-the-whole-thing,
html[data-theme="light"] body .gallery-sidebar,
html[data-theme="light"] body .cal-sidebar,
html[data-theme="light"] body .sidebar-view,
html[data-theme="light"] body .panel,
html[data-theme="light"] body .card,
html[data-theme="light"] body .section-card,
html[data-theme="light"] body .record-summary,
html[data-theme="light"] body .damage-card,
html[data-theme="light"] body .video-card,
html[data-theme="light"] body .month-section {
  background-image:
    linear-gradient(145deg, rgba(255,255,255,.76), transparent 34%),
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.23) 0 1px,
      rgba(70,80,90,.055) 1px 4px
    ),
    linear-gradient(180deg, #e3e7ea, #c0c7ce) !important;
  color: #171b20 !important;
  border: 0 !important;
  box-shadow:
    inset 0 0 0 1px #87919b,
    inset 0 2px 0 #fff,
    inset 0 -2px 0 rgba(62,72,81,.17),
    0 8px 20px rgba(57,65,73,.13) !important;
}

/* Hero/mastheads resemble a machined banner plate rather than a rounded card. */
body .story-header,
body .hero,
body .page-header,
body .damage-hero,
body .page-title-badge,
body .section-intro {
  border-radius: 0 !important;
  clip-path: polygon(
    14px 0,
    calc(100% - 14px) 0,
    100% 14px,
    100% calc(100% - 14px),
    calc(100% - 14px) 100%,
    14px 100%,
    0 calc(100% - 14px),
    0 14px
  ) !important;
}

/* Red/blue/violet appear as short structural rails, not full panel outlines. */
body .story-header::before,
body .hero::before,
body .page-header::before,
body .damage-hero::before,
body .page-title-badge::before,
body .section-intro::before {
  width: 150px !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--accent-red), transparent) !important;
}

body .story-header::after,
body .hero::after,
body .page-header::after,
body .damage-hero::after,
body .page-title-badge::after,
body .section-intro::after {
  width: 170px !important;
  height: 3px !important;
  background: linear-gradient(90deg, transparent, var(--accent-violet), var(--accent-blue)) !important;
}

/* Side panel gets a distinctive machine-housing treatment without being shoved into article. */
body.index-page #gallerySidebar {
  clip-path: polygon(
    10px 0,
    calc(100% - 8px) 0,
    100% 8px,
    100% calc(100% - 10px),
    calc(100% - 10px) 100%,
    8px 100%,
    0 calc(100% - 8px),
    0 10px
  ) !important;
}

body.index-page #gallerySidebar::before {
  background:
    linear-gradient(var(--accent-red), var(--accent-red)) 0 0 / 92px 3px no-repeat,
    linear-gradient(var(--accent-violet), var(--accent-violet)) 0 0 / 3px 60px no-repeat,
    linear-gradient(var(--accent-blue), var(--accent-blue)) 100% 0 / 3px 76px no-repeat,
    linear-gradient(var(--emphasis-yellow), var(--emphasis-yellow)) 100% 100% / 58px 2px no-repeat !important;
}

/* Inner evidence cards are inset modules, not outlined neon boxes. */
html[data-theme="dark"] body .g-card,
html[data-theme="dark"] body .evidence-card,
html[data-theme="dark"] body .sidebar-stat {
  background: linear-gradient(180deg, #171c24, #11161c) !important;
  border: 0 !important;
  box-shadow:
    inset 0 0 0 1px #303a45,
    inset 0 1px 0 rgba(255,255,255,.035) !important;
}

html[data-theme="light"] body .g-card,
html[data-theme="light"] body .evidence-card,
html[data-theme="light"] body .sidebar-stat {
  background: linear-gradient(180deg, #edf0f2, #c8cfd5) !important;
  color: #171b20 !important;
  border: 0 !important;
  box-shadow:
    inset 0 0 0 1px #929ca6,
    inset 0 1px 0 #fff,
    inset 0 -1px 0 rgba(65,74,83,.13) !important;
}

/* ------------------------------------------------
   MEDIA / TEXT FLOW
   Keep media compact and let prose immediately occupy the remaining width.
   ------------------------------------------------ */

.index-page .story-media-float,
.index-page figure.story-evidence-media,
.index-page figure.story-visual,
.index-page figure.story-person-float,
.index-page a.story-tiktok-link {
  clear: none !important;
  shape-outside: margin-box !important;
}

.index-page .story-float-clear {
  display: none !important;
  clear: none !important;
}

body.index-page .story-paragraph,
body.index-page .story-quote {
  clear: none !important;
  overflow: visible !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

/* ------------------------------------------------
   LIGHT-MODE TEXT/CONTROL CORRECTIONS
   Prevent old dark-page rules from making silver mode look black.
   ------------------------------------------------ */

html[data-theme="light"] body .story-paragraph,
html[data-theme="light"] body .read-the-whole-thing,
html[data-theme="light"] body .panel,
html[data-theme="light"] body .card,
html[data-theme="light"] body .gallery-sidebar,
html[data-theme="light"] body .sidebar-view {
  color: #171b20 !important;
}

html[data-theme="light"] body .story-quote {
  color: #171b20 !important;
  background:
    linear-gradient(90deg, rgba(116,87,10,.10), transparent 42%),
    linear-gradient(180deg, #dfe4e8, #c6cdd3) !important;
}

html[data-theme="light"] body .sidebar-tabs,
html[data-theme="light"] body .report-tabs {
  background: #b8c0c8 !important;
  border-color: #8f99a3 !important;
}

html[data-theme="light"] body .sidebar-tab,
html[data-theme="light"] body .report-tab {
  color: #313942 !important;
}

html[data-theme="light"] body .sidebar-tab.active,
html[data-theme="light"] body .report-tab.active {
  color: #fff !important;
  background: linear-gradient(180deg, #655ab6, #3c4860) !important;
}

html[data-theme="light"] body .cal-cell,
html[data-theme="light"] body .calendar-cell {
  background: linear-gradient(180deg, #e8ecef, #cbd2d8) !important;
  color: #171b20 !important;
  border-color: #929ca6 !important;
}

html[data-theme="light"] body table {
  background: #d4dae0 !important;
  color: #171b20 !important;
}

html[data-theme="light"] body td {
  color: #171b20 !important;
}

/* ------------------------------------------------
   PRINT
   ------------------------------------------------ */

@media print {
  body.index-page main.container.narrative > #gallerySidebar.gallery-sidebar {
    display: none !important;
    float: none !important;
  }

  body.index-page main.container.narrative > article.read-the-whole-thing {
    width: 100% !important;
    margin: 0 !important;
  }
}


/* ========================================================
   LOTSA INDUSTRIAL / LIQUID METAL OVERRIDES
   ======================================================== */
:root {
  --industrial-red: #ef334d;
  --industrial-red-soft: rgba(239, 51, 77, .22);
  --industrial-blue: #87bfdc;
  --industrial-blue-soft: rgba(135, 191, 220, .18);
  --industrial-shadow: 0 18px 40px rgba(0,0,0,.28);
}

html[data-theme="dark"] body {
  background:
    radial-gradient(1200px 540px at 16% -8%, rgba(255,255,255,.11), transparent 56%),
    radial-gradient(900px 520px at 100% 0%, rgba(255,255,255,.045), transparent 60%),
    repeating-linear-gradient(92deg, rgba(255,255,255,.032) 0 1px, rgba(0,0,0,0) 1px 5px),
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(0,0,0,.18) 14%, rgba(255,255,255,.02) 15%, rgba(0,0,0,.24) 100%),
    linear-gradient(130deg, #040507 0%, #171c23 16%, #2a3139 23%, #0d1116 38%, #1e252e 51%, #07090d 67%, #232a31 84%, #05070a 100%) !important;
  background-attachment: fixed !important;
}

html[data-theme="light"] body {
  background:
    radial-gradient(1000px 500px at 20% -8%, rgba(255,255,255,.98), transparent 52%),
    radial-gradient(800px 380px at 100% 2%, rgba(255,255,255,.72), transparent 56%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.34) 0 1px, rgba(120,128,138,.10) 1px 4px),
    linear-gradient(180deg, rgba(255,255,255,.84), rgba(255,255,255,.16) 12%, rgba(0,0,0,.08) 13%, rgba(255,255,255,.10) 14%, rgba(0,0,0,.08) 100%),
    linear-gradient(128deg, #b6bcc4 0%, #eef1f4 13%, #c4cad1 27%, #ffffff 36%, #ced4db 52%, #a5adb6 68%, #f5f7f9 81%, #bcc4cc 100%) !important;
  background-attachment: fixed !important;
}

body .topbar,
body .site-shell-header {
  background:
    radial-gradient(240px 58px at 50% -16px, rgba(255,255,255,.16), transparent 62%),
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.03) 16%, rgba(0,0,0,.24) 17%, rgba(255,255,255,.04) 18%, rgba(0,0,0,.18) 100%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 8px),
    linear-gradient(132deg, #06080b 0%, #171c22 19%, #28303a 30%, #0c1016 47%, #242b33 60%, #06080b 100%) !important;
  border-bottom: 1px solid #5a6775 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    inset 0 -1px 0 rgba(255,255,255,.06),
    0 12px 30px rgba(0,0,0,.35) !important;
}

html[data-theme="light"] body .topbar,
html[data-theme="light"] body .site-shell-header {
  background:
    radial-gradient(240px 60px at 50% -20px, rgba(255,255,255,.95), transparent 58%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.28) 16%, rgba(0,0,0,.10) 17%, rgba(255,255,255,.18) 18%, rgba(0,0,0,.08) 100%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.5) 0 1px, rgba(120,128,138,.08) 1px 8px),
    linear-gradient(132deg, #b8bfc7 0%, #edf1f4 17%, #c4cad0 35%, #f7f8fa 50%, #c2c9d0 69%, #adb5be 100%) !important;
  border-bottom-color: #8d98a4 !important;
}

body .brand { min-width: 0 !important; }
body .brand .brand-statement { text-shadow: 0 1px 0 rgba(0,0,0,.55); }
body .brand .brand-not-lotsa { color: #f2f5f8 !important; }
body .brand .brand-skynet { color: var(--industrial-red) !important; }
html[data-theme="light"] body .brand .brand-not-lotsa { color: #1a1e23 !important; text-shadow: 0 1px 0 rgba(255,255,255,.7); }
html[data-theme="light"] body .brand .brand-skynet { color: #cb182f !important; text-shadow: 0 1px 0 rgba(255,255,255,.55); }

body .desktop-site-nav,
body .mobile-site-menu > div,
body .dropdown-content,
body .topbar .search,
body .topbar .search-box,
body .topbar .site-shell-search,
body #toggleTheme,
body #siteThemeToggle,
body button,
body .btn,
body .pill,
body input,
body select,
body textarea,
body .g-card,
body .panel,
body .card,
body .summary-card,
body .record-summary,
body .metric-strip > div,
body .summary-grid > div,
body .report-overview > div,
body .cal-sidebar,
body .cal-main,
body .sidebar-tab,
body .sidebar-tabs,
body .viewer-shell,
body .viewer,
body .media-modal,
body .day-modal,
body .modal-panel,
body .story-player,
body .twid-media-player,
body article.essay,
body .content-card,
body .thumb-card,
body .gallery-card,
body .evidence-card {
  border-radius: 7px !important;
}

html[data-theme="dark"] body .desktop-site-nav,
html[data-theme="dark"] body .mobile-site-menu > div,
html[data-theme="dark"] body .dropdown-content,
html[data-theme="dark"] body .topbar .search,
html[data-theme="dark"] body .topbar .search-box,
html[data-theme="dark"] body .site-shell-search,
html[data-theme="dark"] body #toggleTheme,
html[data-theme="dark"] body #siteThemeToggle,
html[data-theme="dark"] body button,
html[data-theme="dark"] body .btn,
html[data-theme="dark"] body .pill,
html[data-theme="dark"] body input,
html[data-theme="dark"] body select,
html[data-theme="dark"] body textarea,
html[data-theme="dark"] body .g-card,
html[data-theme="dark"] body .panel,
html[data-theme="dark"] body .card,
html[data-theme="dark"] body .summary-card,
html[data-theme="dark"] body .record-summary,
html[data-theme="dark"] body .metric-strip > div,
html[data-theme="dark"] body .summary-grid > div,
html[data-theme="dark"] body .report-overview > div,
html[data-theme="dark"] body .cal-sidebar,
html[data-theme="dark"] body .cal-main,
html[data-theme="dark"] body .sidebar-tabs,
html[data-theme="dark"] body .viewer-shell,
html[data-theme="dark"] body .viewer,
html[data-theme="dark"] body .media-modal,
html[data-theme="dark"] body .day-modal,
html[data-theme="dark"] body .modal-panel,
html[data-theme="dark"] body .story-player,
html[data-theme="dark"] body .twid-media-player,
html[data-theme="dark"] body article.essay,
html[data-theme="dark"] body .content-card,
html[data-theme="dark"] body .thumb-card,
html[data-theme="dark"] body .gallery-card,
html[data-theme="dark"] body .evidence-card {
  background:
    radial-gradient(180px 24px at 50% 0, rgba(255,255,255,.10), transparent 70%),
    linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.03) 10%, rgba(0,0,0,.21) 11%, rgba(255,255,255,.025) 12%, rgba(0,0,0,.17) 100%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.02) 0 1px, transparent 1px 6px),
    linear-gradient(132deg, #0e1218 0%, #1c232c 22%, #313a45 34%, #11161d 48%, #252d37 60%, #090c11 100%) !important;
  border: 1px solid #44505d !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    inset 0 -1px 0 rgba(0,0,0,.5),
    0 10px 25px rgba(0,0,0,.25) !important;
}

html[data-theme="light"] body .desktop-site-nav,
html[data-theme="light"] body .mobile-site-menu > div,
html[data-theme="light"] body .dropdown-content,
html[data-theme="light"] body .topbar .search,
html[data-theme="light"] body .topbar .search-box,
html[data-theme="light"] body .site-shell-search,
html[data-theme="light"] body #toggleTheme,
html[data-theme="light"] body #siteThemeToggle,
html[data-theme="light"] body button,
html[data-theme="light"] body .btn,
html[data-theme="light"] body .pill,
html[data-theme="light"] body input,
html[data-theme="light"] body select,
html[data-theme="light"] body textarea,
html[data-theme="light"] body .g-card,
html[data-theme="light"] body .panel,
html[data-theme="light"] body .card,
html[data-theme="light"] body .summary-card,
html[data-theme="light"] body .record-summary,
html[data-theme="light"] body .metric-strip > div,
html[data-theme="light"] body .summary-grid > div,
html[data-theme="light"] body .report-overview > div,
html[data-theme="light"] body .cal-sidebar,
html[data-theme="light"] body .cal-main,
html[data-theme="light"] body .sidebar-tabs,
html[data-theme="light"] body .viewer-shell,
html[data-theme="light"] body .viewer,
html[data-theme="light"] body .media-modal,
html[data-theme="light"] body .day-modal,
html[data-theme="light"] body .modal-panel,
html[data-theme="light"] body .story-player,
html[data-theme="light"] body .twid-media-player,
html[data-theme="light"] body article.essay,
html[data-theme="light"] body .content-card,
html[data-theme="light"] body .thumb-card,
html[data-theme="light"] body .gallery-card,
html[data-theme="light"] body .evidence-card {
  background:
    radial-gradient(180px 28px at 50% 0, rgba(255,255,255,.95), transparent 68%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.32) 10%, rgba(0,0,0,.08) 11%, rgba(255,255,255,.12) 12%, rgba(0,0,0,.06) 100%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.52) 0 1px, rgba(116,126,136,.10) 1px 6px),
    linear-gradient(132deg, #b6bec6 0%, #f5f7f9 16%, #c3cad1 31%, #ffffff 42%, #d0d6dc 57%, #aab2bb 78%, #edf1f4 100%) !important;
  border: 1px solid #8d98a5 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.98),
    inset 0 -1px 0 rgba(103,112,122,.16),
    0 10px 25px rgba(79,88,97,.16) !important;
}

body .desktop-site-nav a,
body .mobile-site-menu a,
body .dropdown-item {
  font-weight: 700 !important;
}
html[data-theme="light"] body .desktop-site-nav a,
html[data-theme="light"] body .mobile-site-menu a,
html[data-theme="light"] body .dropdown-item {
  color: #25303a !important;
}
html[data-theme="light"] body .desktop-site-nav a[aria-current="page"],
html[data-theme="light"] body .desktop-site-nav a.active,
html[data-theme="light"] body .mobile-site-menu a[aria-current="page"],
html[data-theme="light"] body .dropdown-item[aria-current="page"] {
  color: #11161b !important;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(206,214,222,.75)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.95), inset 0 -2px 0 var(--industrial-red) !important;
}

body .topbar .search input,
body .topbar .search-box input,
body .site-page-search,
body input[type="search"] {
  font-weight: 600 !important;
}
html[data-theme="light"] body .topbar .search input,
html[data-theme="light"] body .topbar .search-box input,
html[data-theme="light"] body .site-page-search,
html[data-theme="light"] body input[type="search"] {
  color: #212931 !important;
}

/* calendar size controls explicitly retained */
#calNav,
.cal-nav {
  gap: 10px !important;
  align-items: center !important;
  flex-wrap: wrap !important;
}
#calNav .zoom-btn,
.cal-nav .zoom-btn,
#zoomNormal,
#zoomWide {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 34px !important;
  min-height: 34px !important;
  font-weight: 800 !important;
}
#calNav .zoom-btn.active,
.cal-nav .zoom-btn.active {
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.14), inset 0 -2px 0 var(--industrial-red) !important;
}

/* stronger chrome on side rail */
.cal-sidebar,
.page-layout > aside,
.gallery-sidebar,
.index-page .gallery-sidebar,
.index-page .evidence-sidebar {
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    inset 0 0 0 1px rgba(255,255,255,.06),
    var(--industrial-shadow) !important;
}

/* Featured/inline video players retain custom controls */
.story-player,
.twid-media-player {
  overflow: hidden !important;
  clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px), 0 10px) !important;
}
.story-player-frame,
.twid-media-player > video,
.twid-media-player > audio {
  background: #05070a !important;
}
.story-player video,
.story-player-frame > video,
.twid-media-player > video,
.twid-media-player video {
  display: block !important;
  width: 100% !important;
  background: #05070a !important;
}
.story-player video::-webkit-media-controls,
.story-player video::-webkit-media-controls-enclosure,
.story-player video::-webkit-media-controls-panel,
.twid-media-player video::-webkit-media-controls,
.twid-media-player video::-webkit-media-controls-enclosure,
.twid-media-player video::-webkit-media-controls-panel {
  display: none !important;
  -webkit-appearance: none !important;
}
.story-player-controls,
.twid-media-controls {
  position: relative !important;
  z-index: 25 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 44px !important;
  padding: 7px 8px !important;
}
html[data-theme="dark"] .story-player-controls,
html[data-theme="dark"] .twid-media-controls {
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02) 13%, rgba(0,0,0,.18) 14%, rgba(255,255,255,.02) 15%, rgba(0,0,0,.20) 100%),
    linear-gradient(132deg, #11171f 0%, #28313c 33%, #10151c 53%, #222a33 100%) !important;
  border-top: 1px solid #465362 !important;
}
html[data-theme="light"] .story-player-controls,
html[data-theme="light"] .twid-media-controls {
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.30) 13%, rgba(0,0,0,.08) 14%, rgba(255,255,255,.12) 15%, rgba(0,0,0,.06) 100%),
    linear-gradient(132deg, #bcc4cc 0%, #f6f8fa 26%, #d4dbe2 52%, #aeb6bf 100%) !important;
  border-top: 1px solid #8f99a5 !important;
}
.story-player-controls button,
.twid-media-controls button {
  min-width: 32px !important;
  min-height: 32px !important;
  font-weight: 800 !important;
}
.story-player-seek,
.story-player-volume,
.twid-media-controls input[type="range"] {
  accent-color: var(--industrial-red) !important;
}
.story-player-source {
  margin-left: auto !important;
  text-decoration: none !important;
}
.story-player-time,
.twid-media-time {
  white-space: nowrap !important;
  font-variant-numeric: tabular-nums !important;
}

/* remove unwanted decorative AI figures that created overlap/dead space */
.index-page figure.story-person-float,
.index-page figure.story-visual,
.page-verified-proof figure.story-person-float,
.page-verified-proof figure.story-visual,
.verified-proof-page figure.story-person-float,
.verified-proof-page figure.story-visual {
  display: none !important;
}
.index-page .story-media-float,
.page-verified-proof .story-media-float,
.verified-proof-page .story-media-float {
  margin: 0 0 18px 22px !important;
}
@media (max-width: 1100px) {
  .index-page .story-media-float,
  .page-verified-proof .story-media-float,
  .verified-proof-page .story-media-float {
    float: none !important;
    width: min(100%, 520px) !important;
    margin: 0 auto 16px !important;
  }
}

/* robust mobile shell */
@media (max-width: 1100px) {
  body .topbar,
  body .site-shell-header {
    display: grid !important;
    grid-template-columns: 1fr auto auto !important;
    grid-template-areas:
      "brand theme menu"
      "search search search" !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 10px !important;
  }
  body .brand { grid-area: brand !important; min-width: 0 !important; padding-right: 8px !important; }
  body #toggleTheme,
  body #siteThemeToggle { grid-area: theme !important; justify-self: end !important; }
  body .mobile-site-menu,
  body #menuDropdown { grid-area: menu !important; margin-left: 0 !important; justify-self: end !important; }
  body .topbar .search,
  body .topbar .search-box,
  body .topbar .site-shell-search,
  body .search[role="search"] {
    grid-area: search !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
  }
  body .desktop-site-nav { display: none !important; }
  body .mobile-site-menu { display: block !important; position: relative !important; }
  body .mobile-site-menu summary {
    min-width: 70px !important;
    min-height: 38px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 12px !important;
    list-style: none !important;
  }
  body .mobile-site-menu summary::-webkit-details-marker { display: none !important; }
  body .mobile-site-menu > div,
  body .mobile-site-menu .mobile-site-menu-panel {
    position: absolute !important;
    top: calc(100% + 8px) !important;
    right: 0 !important;
    left: auto !important;
    width: min(92vw, 430px) !important;
    max-height: min(70vh, 560px) !important;
    overflow: auto !important;
    padding: 10px !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    z-index: 7000 !important;
  }
  body .mobile-site-menu a {
    display: flex !important;
    align-items: center !important;
    min-height: 40px !important;
    padding: 9px 10px !important;
  }
  body .topbar > span.pill,
  body .topbar > .pill:not(#matchPill) { display: none !important; }
}
@media (max-width: 680px) {
  body .mobile-site-menu > div,
  body .mobile-site-menu .mobile-site-menu-panel {
    width: min(94vw, 360px) !important;
    grid-template-columns: 1fr !important;
  }
  body .brand .brand-statement {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: block !important;
    max-width: 100% !important;
    font-size: 14px !important;
  }
}
