/* Original SCH branding, served locally with the archive. */
#header,
#menu,
[data-theme="dark"] #header,
[data-theme="dark"] #menu {
  background: #f4f7f9;
  color: #243746;
}

#header { height: 60px; }
#menu {
  min-height: 60px;
  align-items: center;
  border-bottom: 1px solid #dce5e9;
  box-shadow: 0 2px 8px rgb(36 55 70 / 6%);
}

#menu .menulink,
[data-theme="dark"] #menu .menulink {
  color: #243746;
  font-size: 20px;
  font-weight: 400;
}

#menu .menulink:hover,
#menu .menulink:focus-visible,
[data-theme="dark"] #menu .menulink:hover,
[data-theme="dark"] #menu .menulink:focus-visible {
  color: #006a77;
  background: #e3eff2;
}

#menu a.menulink:has(.branding_logo) {
  display: inline-flex;
  align-items: center;
  padding: 8px 6px;
  background: transparent;
}

#menu .branding_logo {
  height: 40px;
  max-height: 40px;
  width: auto;
  max-width: 150px;
  object-fit: contain;
}

.searchcontainer { padding-top: 78px; }

#logo-lg {
  box-sizing: border-box;
  width: 280px;
  max-width: calc(100vw - 48px);
  margin: 0 auto 20px;
  padding: 16px;
  background: #f4f7f9;
  border-radius: 10px;
}

#logo-lg img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
}

@media (max-width: 767px) {
  #menu .menulink { font-size: 18px; margin-left: 10px; }
}

/* SCH palette and readable search results, in both themes. */
:root {
  --sch-accent: #087d8c;
  --sch-accent-hover: #066573;
  --sch-border: #dce5e9;
  --sch-surface: #f4f7f9;
  --sch-text: #243746;
}
[data-theme="dark"] {
  --sch-border: #3d5058;
  --sch-surface: #25333a;
  --sch-text: #e3eef2;
}
.btn { border-radius: 7px; font-weight: 500; }
.btn-primary, #button_search {
  --bs-btn-bg: var(--sch-accent);
  --bs-btn-border-color: var(--sch-accent);
  --bs-btn-hover-bg: var(--sch-accent-hover);
  --bs-btn-hover-border-color: var(--sch-accent-hover);
  --bs-btn-active-bg: var(--sch-accent-hover);
  --bs-btn-active-border-color: var(--sch-accent-hover);
  --bs-btn-color: #fff;
  --bs-btn-hover-color: #fff;
  --bs-btn-active-color: #fff;
}
[data-theme="dark"] .btn-primary {
  background-color: var(--sch-accent);
  border-color: var(--sch-accent);
}
[data-theme="dark"] .btn-primary:hover {
  background-color: var(--sch-accent-hover);
  border-color: var(--sch-accent-hover);
}
#button_expert, #button_options {
  background: var(--sch-surface);
  color: var(--sch-text);
  border: 1px solid var(--sch-border);
}
#button_expert:hover, #button_options:hover { border-color: var(--sch-accent); }
#menu { text-transform: none; }
.form-control, input[type="text"], .tagtext { border-radius: 7px; }
.form-control:focus, input[type="text"]:focus {
  border-color: #169aa9;
  box-shadow: 0 0 0 3px rgb(22 154 169 / 18%);
}
#results { font-size: 14px; line-height: 1.5; }
#results thead {
  --bs-table-bg: #e9f1f4;
  --bs-table-color: #344d59;
}
[data-theme="dark"] #results thead {
  --bs-table-bg: #293e48;
  --bs-table-color: #deebf0;
}
#results th {
  color: var(--bs-table-color);
  font-weight: 600;
  white-space: nowrap;
  padding: 12px 10px;
  border: 0;
  border-bottom: 1px solid var(--sch-border);
}
#results td {
  vertical-align: middle;
  padding: 13px 10px;
  border: 0;
  border-bottom: 1px solid var(--sch-border);
}
#results th .navlink { color: inherit; opacity: .55; }
#results th .navlink:hover { opacity: 1; }
#results td[id^="c3_"] { white-space: nowrap; font-variant-numeric: tabular-nums; }
#results td[id^="c4_"], #results td[id^="c5_"] {
  max-width: 185px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#results td[id^="c6_"] { width: 46%; min-width: 250px; }
#results td[id^="c6_"] > a { color: #1e4658; font-weight: 500; }
[data-theme="dark"] #results td[id^="c6_"] > a { color: #d3edf4; }
#results .resultrow:hover > td { --bs-table-accent-bg: #e7f4f6; background: #e7f4f6; color: #243746; }
[data-theme="dark"] #results .resultrow:hover > td { --bs-table-accent-bg: #263f48; background: #263f48; color: #e3eef2; }
#results .highlighted > td { --bs-table-accent-bg: #d9eff2; background: #d9eff2; color: #243746; }
[data-theme="dark"] #results .highlighted > td { --bs-table-accent-bg: #214550; background: #214550; color: #e3eef2; }
#results .attachment { color: #14909e; font-size: 18px; }
.messageheader { padding: 18px 22px; line-height: 1.8; }
.messageheader > strong { font-weight: 500; }
.messagecontents { padding: 20px 22px; }

/* File cards are download links; filenames are escaped in the template. */
.sch-attachments { margin-top: 18px; }
.sch-attachments-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; font-weight: 600; margin-bottom: 10px; }
.sch-download-all { color: var(--sch-accent); font-size: 13px; }
[data-theme="dark"] .sch-download-all { color: #71d4df; }
.sch-attachment-grid { display: flex; flex-wrap: wrap; gap: 12px; }
.sch-attachment-card {
  --file-color: #627c8d;
  display: flex; flex-direction: column;
  width: 194px; max-width: 100%;
  border: 1px solid var(--sch-border); border-radius: 10px;
  overflow: hidden; color: var(--sch-text); background: #fff;
  text-decoration: none; line-height: 1.4;
  transition: border-color .15s, box-shadow .15s;
}
[data-theme="dark"] .sch-attachment-card { background: #202c32; color: var(--sch-text); --file-color: #b0c6d2; }
.sch-attachment-card:hover, .sch-attachment-card:focus-visible {
  color: var(--sch-text); text-decoration: none;
  border-color: #14909e; box-shadow: 0 3px 12px rgb(8 125 140 / 16%);
}
.sch-file-preview {
  position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center;
  height: 108px; background: var(--sch-surface); color: var(--file-color);
}
.sch-file-preview > i:first-child { font-size: 42px; line-height: 1.2; }
.sch-file-format { font-size: 11px; font-weight: 700; letter-spacing: .06em; margin-top: 7px; }
.sch-file-download { position: absolute; right: 10px; top: 10px; font-size: 16px; color: var(--sch-accent); }
.sch-file-name {
  padding: 10px 12px 0; font-size: 13px; font-weight: 600;
  overflow-wrap: anywhere; display: -webkit-box;
  -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
}
.sch-file-description { padding: 6px 12px 12px; font-size: 11px; opacity: .75; }
.sch-file-pdf { --file-color: #c2434d; }
.sch-file-word { --file-color: #3771ba; }
.sch-file-excel { --file-color: #23865b; }
.sch-file-slides { --file-color: #bf6a2b; }
.sch-file-image { --file-color: #9270ba; }
.sch-file-archive { --file-color: #aa8638; }
.sch-file-audio, .sch-file-video { --file-color: #14909e; }
[data-theme="dark"] .sch-file-pdf { --file-color: #ef7b86; }
[data-theme="dark"] .sch-file-word { --file-color: #82b4f3; }
[data-theme="dark"] .sch-file-excel { --file-color: #69c999; }
[data-theme="dark"] .sch-file-slides { --file-color: #f4ad79; }
[data-theme="dark"] .sch-file-image { --file-color: #c2a1e9; }
[data-theme="dark"] .sch-file-archive { --file-color: #dac17e; }
[data-theme="dark"] .sch-attachment-card:hover,
[data-theme="dark"] .sch-attachment-card:focus-visible { color: var(--sch-text); }
[data-theme="dark"] .sch-file-download { color: #71d4df; }
@media (max-width: 767px) {
  .messageheader, .messagecontents { padding: 14px; }
  .sch-attachment-card { width: calc(50% - 6px); }
  .sch-attachments-heading { flex-wrap: wrap; }
}
