/* All component styles are scoped; the journal theme remains in control outside .scm. */
.scm {
  --scm-ink: #152f32;
  --scm-muted: #526a6b;
  --scm-teal: #006b60;
  --scm-teal-dark: #064d49;
  --scm-line: #dbe6e2;
  --scm-paper: #fff;
  --scm-soft: #f3f7f5;
  --scm-gold: #dfedbe;
  color: var(--scm-ink);
  font-family: Inter, "Segoe UI", Arial, sans-serif;
  font-size: 14px;
  line-height: 1.6;
  text-align: left;
  box-sizing: border-box;
  isolation: isolate;
}
.scm *,
.scm *::before,
.scm *::after {
  box-sizing: border-box;
}
.scm [hidden] {
  display: none !important;
}
.scm svg {
  width: 18px;
  height: 18px;
  flex: none;
  vertical-align: middle;
}
.scm button,
.scm input,
.scm select,
.scm textarea {
  font: inherit;
}
.scm button,
.scm select {
  cursor: pointer;
}
.scm button {
  line-height: 1.4;
}
.scm a {
  color: var(--scm-teal);
  text-decoration: none;
}
.scm a:hover {
  text-decoration: underline;
}
.scm :focus-visible {
  outline: 3px solid #dd9d32;
  outline-offset: 4px;
  border-radius: 4px;
}
.scm button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.scm p {
  margin: 0 0 12px;
}
.scm h1,
.scm h2,
.scm h3,
.scm h4 {
  font-family: inherit;
  color: var(--scm-ink);
  font-weight: 650;
  line-height: 1.3;
  margin: 0 0 12px;
  text-transform: none;
  letter-spacing: normal;
}
.scm h1 {
  font-size: 36px;
}
.scm h2 {
  font-size: 23px;
}
.scm h3 {
  font-size: 18px;
}
.scm h4 {
  font-size: 16px;
}
.scm-page {
  width: 100%;
  padding: 0 !important;
}
.scm-loading {
  padding: 48px;
  background: var(--scm-soft);
  border: 1px solid var(--scm-line);
  text-align: center;
}
.scm-breadcrumb {
  display: flex;
  gap: 12px;
  color: var(--scm-muted);
  font-size: 12px;
  padding: 12px 0 24px;
  align-items: center;
  flex-wrap: wrap;
}
.scm-breadcrumb span {
  color: #859998;
}
.scm-hero {
  background: linear-gradient(118deg, #0c3839 0%, #0d4e47 75%, #2b6856 100%);
  border-radius: 18px;
  display: flex;
  position: relative;
  overflow: hidden;
  min-height: 310px;
  padding: 42px 44px;
  color: #eaf3ee;
}
.scm-hero-copy {
  max-width: 700px;
  width: 75%;
  position: relative;
  z-index: 1;
}
.scm .scm-eyebrow {
  font-size: 10px;
  letter-spacing: 0.16em;
  font-weight: 700;
  display: flex;
  gap: 8px;
  align-items: center;
  margin: 0 0 16px;
  color: var(--scm-teal);
}
.scm-hero .scm-eyebrow {
  color: #c3ddb3;
}
.scm-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #bdd8a5;
  box-shadow: 0 0 0 4px #ffffff0b;
}
.scm-hero h1 {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  font-size: clamp(34px, 4.8vw, 57px);
  letter-spacing: -1.5px;
  color: #fff;
  margin: 0 0 9px;
  line-height: 1.13;
}
.scm-hero .scm-hero-lead {
  font-size: 20px;
  color: #e1eddf;
  margin-bottom: 12px;
}
.scm-hero .scm-hero-description {
  font-size: 13px;
  max-width: 495px;
  color: #d0dfd9;
  line-height: 1.8;
}
.scm-hero-meta {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
  font-size: 10px;
  color: #c7dbd0;
  margin-top: 28px;
}
.scm-hero-meta svg {
  width: 14px;
  height: 14px;
}
.scm-orbit {
  position: absolute;
  right: 40px;
  top: 25px;
  width: 285px;
  height: 270px;
  opacity: 0.88;
}
.scm-orbit-ring {
  border: 1px solid #afcfb33d;
  border-radius: 50%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.scm-orbit .ring-1 {
  width: 160px;
  height: 160px;
}
.scm-orbit .ring-2 {
  width: 265px;
  height: 265px;
}
.scm-orbit-center {
  position: absolute;
  left: 110px;
  top: 104px;
  width: 60px;
  height: 60px;
  border: 1px solid #b1d1ac88;
  background: #cbdfad1c;
  transform: rotate(-8deg);
  border-radius: 16px;
  display: grid;
  place-items: center;
  box-shadow: 0 0 70px #dfe8b72b;
}
.scm-orbit-center svg {
  width: 29px;
  height: 29px;
  color: #dbe7bf;
}
.scm-orbit-node {
  position: absolute;
  display: grid;
  place-items: center;
  width: 37px;
  height: 37px;
  border: 1px solid #aacba377;
  background: #235849;
  border-radius: 11px;
  color: #d6e5c1;
}
.scm-orbit .node-1 {
  top: 4px;
  left: 112px;
}
.scm-orbit .node-2 {
  top: 157px;
  right: 5px;
}
.scm-orbit .node-3 {
  top: 174px;
  left: 63px;
  width: 27px;
  height: 27px;
  border-radius: 7px;
}
.scm-orbit .node-3 svg {
  width: 13px;
  height: 13px;
}
.scm-orbit-label {
  position: absolute;
  bottom: 36px;
  left: 106px;
  font-family: Georgia, serif;
  font-style: italic;
  font-size: 13px;
  color: #c1d5bd;
  transform: rotate(-9deg);
}
.scm-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin: 22px 0 42px;
  border: 1px solid var(--scm-line);
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
}
.scm-stat {
  position: relative;
  padding: 23px 25px;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--scm-line);
  gap: 3px;
}
.scm-stat:last-child {
  border-right: 0;
}
.scm-stat strong {
  font-size: 34px;
  font-weight: 600;
  letter-spacing: -1px;
  color: #124f47;
  line-height: 1.25;
  margin: 1px 0 4px;
}
.scm-stat-label {
  font-size: 12px;
  font-weight: 650;
  color: #344e4f;
}
.scm-stat small {
  font-size: 10px;
  color: #647a78;
}
.scm-stat-index {
  position: absolute;
  top: 15px;
  right: 18px;
  font-family: Georgia, serif;
  font-size: 10px;
  color: #526e65;
}
.scm-stats-six {
  grid-template-columns: repeat(3, 1fr);
  margin-bottom: 24px;
}
.scm-stats-six .scm-stat:nth-child(3) {
  border-right: 0;
}
.scm-stats-six .scm-stat:nth-child(-n + 3) {
  border-bottom: 1px solid var(--scm-line);
}
.scm-section-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin: 0 0 22px;
}
.scm-section-heading h2 {
  margin-bottom: 6px;
}
.scm .scm-help {
  font-size: 12px;
  color: var(--scm-muted);
  font-weight: 400;
  line-height: 1.7;
  margin: 5px 0 16px;
}
.scm-section-heading .scm-help {
  margin: 0;
}
.scm-filters {
  background: #f4f7f5;
  border: 1px solid #e2eae6;
  border-radius: 12px;
  padding: 16px;
  display: grid;
  grid-template-columns: minmax(210px, 1.6fr) 0.65fr 1fr 1fr;
  gap: 12px;
  align-items: end;
}
.scm-search {
  display: flex;
  align-items: center;
  gap: 9px;
  border: 1px solid #cfdcd7;
  background: white;
  border-radius: 7px;
  padding: 0 12px;
  height: 41px;
}
.scm-search svg {
  width: 17px;
  color: #677f79;
}
.scm-search input {
  width: 100%;
  padding: 0;
  border: 0;
  background: none;
  min-width: 0;
  color: var(--scm-ink);
  font-size: 12px;
  height: 100%;
}
.scm-search input:focus {
  outline: 0;
}
.scm-search:focus-within {
  outline: 3px solid #dd9d32;
  outline-offset: 2px;
}
.scm-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  color: #304c4c;
  font-weight: 600;
  font-size: 12px;
}
.scm-field > span {
  line-height: 1.4;
}
.scm-field input,
.scm-field select,
.scm-field textarea,
.scm-standalone-search {
  padding: 10px 11px;
  background: #fff;
  border: 1px solid #cbdad4;
  border-radius: 7px;
  color: var(--scm-ink);
  font-size: 13px;
  width: 100%;
  min-width: 0;
  box-shadow: none;
}
.scm-field select {
  height: 41px;
  font-weight: 400;
  padding-right: 24px;
}
.scm-field textarea {
  resize: vertical;
}
.scm-field small {
  font-weight: 400;
  font-size: 11px;
  color: var(--scm-muted);
}
.scm-filters .scm-field > span {
  font-size: 10px;
  font-weight: 600;
  color: #536e69;
}
.scm-filters .scm-field select {
  font-size: 12px;
}
.scm-filters .scm-field {
  gap: 5px;
}
.scm-standalone-search {
  max-width: 540px;
  margin: 10px 0 22px;
}
.scm-results-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 23px 0 18px;
}
.scm-results-toolbar > p {
  font-size: 12px;
  color: var(--scm-muted);
  margin: 0;
  display: flex;
  align-items: center;
  gap: 5px;
  flex-wrap: wrap;
}
.scm-results-toolbar strong {
  color: var(--scm-ink);
}
.scm-view-toggle {
  display: flex;
  gap: 3px;
  background: #f0f5f2;
  border-radius: 7px;
  padding: 3px;
}
.scm-view-toggle button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 7px 10px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--scm-muted);
  border-radius: 5px;
  font-size: 11px;
}
.scm-view-toggle button[aria-pressed="true"] {
  background: #fff;
  border-color: #e0e8e3;
  color: #134d43;
  box-shadow: 0 1px 3px #173a3210;
}
.scm-view-toggle svg {
  width: 13px;
  height: 13px;
}
.scm-document-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.scm-document {
  padding: 23px;
  background: #fff;
  border: 1px solid var(--scm-line);
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  min-width: 0;
  transition:
    border-color 0.2s,
    box-shadow 0.2s,
    transform 0.2s;
}
.scm-document:hover {
  border-color: #9cbcaf;
  box-shadow: 0 6px 22px #163d3210;
  transform: translateY(-2px);
}
.scm-document-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 21px;
}
.scm-paper-icon {
  width: 32px;
  height: 35px;
  border-radius: 7px;
  display: grid;
  place-items: center;
  color: #38695a;
  background: #f1f6f2;
  border: 1px solid #e1eae1;
  flex: none;
}
.scm-paper-icon svg {
  width: 17px;
  height: 17px;
}
.scm-document-tags {
  display: flex;
  gap: 10px;
  align-items: center;
}
.scm-year {
  font-size: 11px;
  color: #627a76;
}
.scm .scm-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: 600;
  padding: 3px 8px;
  border-radius: 5px;
  line-height: 1.5;
  white-space: nowrap;
  color: #445e57;
  background: #f0f4ef;
}
.scm .scm-badge-purple {
  background: #f3eef9;
  color: #665075;
}
.scm .scm-badge-green {
  background: #eaf6ec;
  color: #176437;
}
.scm .scm-badge-amber {
  background: #fff3d7;
  color: #795719;
}
.scm .scm-badge-red {
  background: #feeceb;
  color: #9b3530;
}
.scm-document h3 {
  font-size: 17px;
  margin: 0 0 12px;
  line-height: 1.45;
  font-weight: 650;
}
.scm .scm-title-button {
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--scm-ink);
  font: inherit;
  font-weight: 650;
  line-height: inherit;
  text-align: left;
  cursor: pointer;
  text-decoration: none;
}
.scm .scm-title-button:hover {
  color: var(--scm-teal);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.scm .scm-authors {
  font-size: 11px;
  line-height: 1.8;
  color: #5a6d70;
  margin: 0 0 16px;
}
.scm-document-bib {
  padding-top: 2px;
  font-size: 10px;
  color: #637672;
  margin-top: auto;
}
.scm-document-bib .scm-source,
.scm .scm-source {
  font-size: 12px;
  font-weight: 650;
  color: #2c6255;
  margin-bottom: 5px;
  line-height: 1.55;
}
.scm-document-bib p {
  margin-bottom: 5px;
}
.scm-document-bib .scm-issn {
  font-size: 9px;
  color: #596c64;
}
.scm .scm-doi {
  display: inline-flex;
  gap: 4px;
  align-items: center;
  font-size: 10px;
  color: #4d6d66;
  word-break: break-all;
  margin: 8px 0 12px;
  line-height: 1.65;
}
.scm-doi svg {
  width: 11px;
  height: 11px;
}
.scm-document-bottom {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
  margin-top: 15px;
  padding-top: 17px;
  border-top: 1px solid #e5ece7;
  flex-wrap: wrap;
}
.scm-cites {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 10px;
  font-weight: 600;
  color: #286657;
  background: none;
  border: 0;
  padding: 2px 0;
}
.scm-cites svg {
  width: 12px;
  height: 12px;
}
.scm-cites > span {
  margin-left: 1px;
  color: #789181;
}
.scm .scm-text-link {
  display: inline-flex;
  gap: 4px;
  align-items: center;
  font-size: 11px;
  font-weight: 600;
  color: var(--scm-teal);
  white-space: nowrap;
}
.scm-text-link svg {
  width: 12px;
  height: 12px;
}
.scm-demo-link {
  font-size: 10px;
  color: #747567;
}
.scm-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 25px;
  margin: 28px 0 14px;
}
.scm-pagination > span {
  font-size: 11px;
  color: var(--scm-muted);
}
.scm-pagination .scm-button {
  padding: 8px 13px;
  font-size: 11px;
}
.scm .scm-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border: 1px solid #cadbd4;
  background: #fff;
  color: #2d5850;
  border-radius: 7px;
  padding: 10px 14px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  line-height: 1.4;
  white-space: nowrap;
  box-shadow: none;
  cursor: pointer;
}
.scm-button svg {
  width: 15px;
  height: 15px;
}
.scm .scm-button:hover {
  background: #edf5ef;
  border-color: #8cafa0;
  text-decoration: none;
}
.scm .scm-button-primary {
  background: #006b60;
  color: #fff;
  border-color: #006b60;
}
.scm .scm-button-primary:hover {
  background: #034f48;
  color: white;
  border-color: #034f48;
}
.scm .scm-button-text {
  border: 0;
  padding: 4px 7px;
  background: none;
  color: #006b60;
  white-space: normal;
  text-align: left;
}
.scm-inline,
.scm-actions,
.scm-export-menu {
  display: flex;
  align-items: center;
  gap: 9px;
  flex-wrap: wrap;
}
.scm-export-menu .scm-button {
  padding: 7px 10px;
  font-size: 11px;
}
.scm-empty {
  grid-column: 1/-1;
  background: #f7faf7;
  border: 1px dashed #bfcec4;
  border-radius: 12px;
  padding: 54px 28px;
  text-align: center;
  color: var(--scm-muted);
}
.scm-empty > svg {
  width: 32px;
  height: 32px;
  color: #75988b;
  margin-bottom: 15px;
}
.scm-empty p {
  max-width: 450px;
  margin: 0 auto;
  font-size: 12px;
}
.scm-footer {
  border-top: 1px solid var(--scm-line);
  margin-top: 38px;
  padding-top: 23px;
  display: flex;
  justify-content: space-between;
  gap: 30px;
  color: #536d62;
  font-size: 10px;
  line-height: 1.8;
}
.scm-footer > div {
  max-width: 330px;
  flex-shrink: 0;
}
.scm-footer > p {
  max-width: 500px;
}
.scm-source-mark {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #315e50;
  margin-bottom: 6px;
}
.scm-source-mark svg {
  width: 14px;
  height: 14px;
}
.scm-footer .scm-text-link {
  font-size: 10px;
}
.scm-footer .scm-text-link svg {
  display: none;
}
.scm-demo-banner {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 17px;
  margin-bottom: 18px;
  border-radius: 8px;
  background: #fff7e5;
  border: 1px solid #ebd9ab;
  color: #6b561f;
  font-size: 11px;
}
.scm .scm-table-wrap {
  max-width: 100%;
  overflow: auto;
  border: 1px solid var(--scm-line);
  border-radius: 10px;
  background: #fff;
}
.scm .scm-table {
  border-collapse: collapse;
  width: 100%;
  font-size: 12px;
  line-height: 1.6;
  border: 0;
  margin: 0;
}
.scm-table th {
  background: #f3f7f3;
  color: #536d63;
  text-align: left;
  font-size: 10px;
  letter-spacing: 0.03em;
  font-weight: 650;
  white-space: nowrap;
  padding: 13px 16px;
}
.scm-table td {
  padding: 18px 16px;
  vertical-align: top;
  border-bottom: 1px solid #e6ede7;
}
.scm-table tr:last-child td {
  border-bottom: 0;
}
.scm-table tbody tr:hover {
  background: #fbfcfa;
}
.scm-table td:first-child {
  max-width: 440px;
}
.scm-table p {
  font-size: 11px;
  margin: 6px 0;
}
.scm-table .scm-authors {
  font-size: 10px;
  max-width: 420px;
}
.scm-table .scm-title-button {
  font-size: 13px;
}
.scm-table td .scm-doi {
  margin: 2px 0;
  max-width: 220px;
}
.scm-table .scm-button {
  white-space: nowrap;
}
.scm-table td .scm-help {
  font-size: 10px;
}
.scm-dialog {
  border: 1px solid #d8e1da;
  border-radius: 16px;
  padding: 0;
  max-width: 660px;
  width: calc(100vw - 36px);
  max-height: 90vh;
  box-shadow: 0 20px 90px #052c3a44;
  color: var(--scm-ink);
  background: #fff;
  margin: auto;
}
.scm-dialog-wide {
  max-width: 980px;
}
.scm-dialog::backdrop {
  background: #102e36a8;
  backdrop-filter: blur(3px);
}
.scm-modal-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 28px;
  border-bottom: 1px solid var(--scm-line);
  position: sticky;
  top: 0;
  background: white;
  z-index: 2;
}
.scm-modal-top h2 {
  font-size: 15px;
  margin: 0;
}
.scm-icon-button {
  border: 1px solid var(--scm-line);
  border-radius: 50%;
  width: 31px;
  height: 31px;
  display: grid;
  place-items: center;
  background: #fff;
  color: #415b51;
}
.scm-icon-button svg {
  width: 15px;
  height: 15px;
}
.scm-detail {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.scm-detail-document {
  padding: 32px;
  border-right: 1px solid var(--scm-line);
}
.scm-detail-document h3 {
  font-family: Georgia, serif;
  font-weight: 400;
  font-size: 25px;
  line-height: 1.35;
  margin: 18px 0;
}
.scm-detail-document .scm-authors {
  font-size: 12px;
  margin-bottom: 22px;
}
.scm-detail-document > p {
  font-size: 12px;
}
.scm-detail-document .scm-inline {
  margin-bottom: 20px;
}
.scm-detail-cites {
  padding: 32px;
  background: #f5f8f3;
}
.scm-detail-cites h3 {
  font-size: 19px;
}
.scm-detail-cites .scm-eyebrow {
  font-size: 9px;
  margin: 0 0 8px;
}
.scm-related {
  display: flex;
  gap: 15px;
  padding: 24px 0;
  border-bottom: 1px solid #d9e3d7;
}
.scm-related:last-child {
  border: 0;
}
.scm-related-number {
  font-family: Georgia, serif;
  font-size: 19px;
  color: #76917a;
}
.scm-related h4,
.scm-related .scm-title-button {
  font-size: 14px;
  line-height: 1.5;
  margin-bottom: 8px;
  display: block;
}
.scm-related p {
  font-size: 11px;
  color: #61736b;
  margin: 4px 0;
}
.scm-confirmed {
  font-size: 9px;
  color: #326549;
  display: flex;
  align-items: center;
  gap: 5px;
  margin-top: 9px;
}
.scm-confirmed svg {
  width: 12px;
  height: 12px;
}
.scm-detail-actions {
  margin: 15px 0 20px;
}
.scm-import-form,
.scm-review-form {
  padding: 28px;
}
.scm-import-form > .scm-field,
.scm-import-form > .scm-checkbox,
.scm-review-form > .scm-field {
  margin: 24px 0;
}
.scm-review-form > .scm-table-wrap {
  margin: 20px 0;
}
.scm-review-form .scm-table {
  min-width: 560px;
}
.scm-review-form pre {
  max-height: 250px;
}
.scm-admin-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin: 14px 0 25px;
}
.scm-admin-header h1 {
  font-family: Georgia, serif;
  font-size: 40px;
  letter-spacing: -0.7px;
  margin-bottom: 7px;
  font-weight: 400;
}
.scm-admin-header .scm-eyebrow {
  margin: 0 0 8px;
}
.scm-admin-header p {
  color: var(--scm-muted);
  font-size: 13px;
}
.scm-tabs {
  display: flex;
  gap: 3px;
  border-bottom: 1px solid #d0ded5;
  overflow: auto;
  margin-bottom: 27px;
}
.scm-tabs > button {
  display: flex;
  align-items: center;
  gap: 7px;
  border: 0;
  background: none;
  padding: 13px 14px;
  font-size: 12px;
  color: #566e63;
  white-space: nowrap;
  border-bottom: 3px solid transparent;
}
.scm-tabs > button.is-active {
  border-bottom-color: var(--scm-teal);
  color: var(--scm-teal);
  font-weight: 650;
}
.scm-tab-count {
  font-size: 9px;
  background: #edf1db;
  color: #5a622d;
  border-radius: 4px;
  min-width: 19px;
  padding: 1px 4px;
}
.scm-overview-grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 22px;
  margin-bottom: 22px;
}
.scm-surface {
  border: 1px solid var(--scm-line);
  padding: 26px;
  border-radius: 12px;
  background: #fff;
}
.scm-surface h2 {
  font-size: 19px;
}
.scm-surface h3 {
  font-size: 17px;
}
.scm-surface p {
  font-size: 13px;
}
.scm-coverage-track {
  height: 13px;
  border-radius: 9px;
  background: #e8eee5;
  overflow: hidden;
  margin: 22px 0;
}
.scm-coverage-track > span {
  height: 100%;
  display: block;
  background: linear-gradient(90deg, #105b4a, #7fa970);
  border-radius: 9px;
}
.scm-key-values {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  font-size: 12px;
  margin: 18px 0;
}
.scm-key-values dt {
  color: var(--scm-muted);
}
.scm-key-values dd {
  margin: 0;
}
.scm-self-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
  margin: 22px 0;
}
.scm-self-grid .scm-eyebrow {
  font-size: 10px;
}
.scm-large-number {
  font-size: 32px;
  color: #23624e;
  font-weight: 600;
}
.scm-self-grid .scm-surface > p {
  margin-top: 12px;
}
.scm-bars {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin: 28px 0 6px;
}
.scm-bar-row {
  display: grid;
  grid-template-columns: 55px 1fr 35px;
  gap: 12px;
  align-items: center;
  font-size: 11px;
}
.scm-bar-track {
  height: 18px;
  border-radius: 3px;
  background: #eef3ea;
  overflow: hidden;
}
.scm-bar-track > span {
  height: 100%;
  display: block;
  background: linear-gradient(90deg, #478065, #9cb282);
  border-radius: 3px;
}
.scm-bar-row strong {
  color: #37614c;
  font-weight: 600;
}
.scm-audit {
  margin-top: 28px;
  padding: 18px;
  border: 1px solid var(--scm-line);
  border-radius: 10px;
  background: #f9fbf7;
}
.scm summary {
  cursor: pointer;
  font-weight: 600;
  font-size: 13px;
}
.scm-audit > .scm-help {
  margin-top: 14px;
}
.scm-audit-event {
  padding: 10px 0;
  border-bottom: 1px solid var(--scm-line);
}
.scm-audit-event > summary {
  font-size: 11px;
  color: #4e695b;
}
.scm .scm-json {
  font-family: ui-monospace, monospace;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 11px;
  background: #f1f4ec;
  border-radius: 6px;
  padding: 15px;
  max-height: 360px;
  overflow: auto;
}
.scm-notice {
  position: relative;
}
.scm-error,
.scm-success {
  padding: 15px 18px;
  border-radius: 8px;
  margin: 14px 0;
  font-size: 12px;
  white-space: pre-line;
}
.scm-error {
  color: #8a2e29;
  background: #fff0ed;
  border: 1px solid #e8c2bc;
}
.scm-success {
  color: #285536;
  background: #edf6e9;
  border: 1px solid #c8ddbd;
}
.scm[aria-busy="true"] {
  cursor: progress;
}
.scm[aria-busy="true"] button {
  opacity: 0.6;
  pointer-events: none;
}
.scm-settings {
  max-width: 850px;
}
.scm-settings-section {
  border: 1px solid var(--scm-line);
  border-radius: 12px;
  padding: 25px;
  margin: 0 0 27px;
}
.scm-settings-section legend {
  padding: 0 10px;
  font-size: 17px;
  font-weight: 600;
  color: #285747;
}
.scm-settings-section > .scm-field {
  margin: 15px 0 22px;
}
.scm-form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin: 5px 0 22px;
}
.scm-checkbox {
  display: flex;
  gap: 11px;
  align-items: flex-start;
  cursor: pointer;
  margin: 20px 0;
  font-size: 12px;
}
.scm-checkbox input {
  margin-top: 4px;
  accent-color: var(--scm-teal);
  width: 16px;
  height: 16px;
  flex: none;
}
.scm-checkbox strong {
  font-size: 12px;
  font-weight: 600;
  display: block;
}
.scm-checkbox small {
  display: block;
  font-size: 11px;
  color: var(--scm-muted);
  font-weight: 400;
  margin-top: 4px;
}
.scm-checkbox:has(input:disabled) {
  opacity: 0.6;
}
.scm-widget {
  margin: 34px 0;
  border-top: 1px solid var(--scm-line);
  padding-top: 26px;
}
.scm-widget-heading {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 18px;
}
.scm-widget-heading .scm-eyebrow {
  font-size: 9px;
  margin: 0 0 8px;
}
.scm-widget h2 {
  font-size: 21px;
}
.scm-widget .scm-document-grid {
  grid-template-columns: 1fr;
  margin-top: 20px;
}
.scm-widget .scm-filters {
  grid-template-columns: 1fr 1fr;
}
.scm-widget .scm-search {
  grid-column: 1/-1;
}
.scm-widget .scm-filters > .scm-field:last-child {
  grid-column: 1/-1;
}
.scm-widget .scm-document {
  padding: 20px;
}
.scm-widget .scm-document-top {
  margin-bottom: 14px;
}
.scm-widget .scm-document-bib {
  margin-top: 0;
}
.scm-widget .scm-footer {
  display: block;
}
.scm-widget .scm-footer > div {
  margin-bottom: 10px;
}
.scm-widget-list .scm-document {
  border-radius: 0;
  border: 0;
  border-bottom: 1px solid var(--scm-line);
  padding: 20px 0;
}
.scm-widget-list .scm-document:hover {
  transform: none;
  box-shadow: none;
}
.scm-widget .scm-pagination {
  gap: 14px;
}
.scm-report {
  background: white;
  margin: 0;
}
.scm-report > .scm {
  max-width: 950px;
  margin: 35px auto;
  padding: 25px;
}
.scm-report-metrics {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 8px;
  background: #f3f7ef;
  padding: 25px;
  margin: 25px 0;
}
.scm-report-metrics dd {
  font-weight: 600;
}
.scm-report-document {
  break-inside: avoid;
  border-top: 1px solid var(--scm-line);
  padding: 25px 0;
  margin-top: 20px;
}
.scm-report .scm-no-print {
  float: right;
}
@media (min-width: 1500px) {
  .scm-hero {
    padding: 48px;
  }
  .scm-document h3 {
    font-size: 18px;
  }
}
@media (max-width: 1150px) {
  .scm-document-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .scm-orbit {
    right: -35px;
    opacity: 0.5;
  }
  .scm-hero-copy {
    width: 80%;
  }
  .scm-document {
    padding: 22px;
  }
  .scm-filters {
    grid-template-columns: 1.4fr 0.7fr 1fr;
  }
  .scm-search {
    grid-column: 1/-1;
  }
  .scm-filters > .scm-field {
    grid-column: auto;
  }
  .scm-overview-grid {
    grid-template-columns: 1fr;
  }
  .scm-stat {
    padding: 23px 20px;
  }
  .scm-admin-header {
    align-items: flex-start;
  }
  .scm-admin-header > .scm-actions {
    justify-content: flex-end;
  }
}
@media (max-width: 760px) {
  .scm-hero {
    padding: 30px 26px;
    min-height: 300px;
  }
  .scm-hero-copy {
    width: 100%;
    max-width: 520px;
  }
  .scm-orbit {
    right: -135px;
    opacity: 0.2;
  }
  .scm-hero h1 {
    font-size: 42px;
  }
  .scm-hero .scm-hero-lead {
    font-size: 18px;
  }
  .scm-hero-description {
    font-size: 12px !important;
    max-width: 390px !important;
  }
  .scm-stats {
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 30px;
  }
  .scm-stat:nth-child(2) {
    border-right: 0;
  }
  .scm-stat:nth-child(-n + 2) {
    border-bottom: 1px solid var(--scm-line);
  }
  .scm-stat {
    padding: 20px;
  }
  .scm-stat strong {
    font-size: 29px;
  }
  .scm-stats-six .scm-stat:nth-child(3) {
    border-right: 1px solid var(--scm-line);
  }
  .scm-stats-six .scm-stat:nth-child(4) {
    border-right: 0;
    border-bottom: 1px solid var(--scm-line);
  }
  .scm-stats-six .scm-stat:nth-child(5) {
    border-bottom: 0;
  }
  .scm-document-grid {
    gap: 14px;
  }
  .scm-document {
    padding: 19px;
  }
  .scm-document h3 {
    font-size: 16px;
  }
  .scm-document-bottom {
    align-items: flex-start;
    gap: 13px;
  }
  .scm-section-heading {
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 12px;
  }
  .scm-section-heading h2 {
    font-size: 21px;
  }
  .scm-footer {
    flex-direction: column;
    gap: 10px;
  }
  .scm-footer > div {
    max-width: none;
  }
  .scm-admin-header {
    flex-direction: column;
    gap: 12px;
  }
  .scm-admin-header h1 {
    font-size: 34px;
  }
  .scm-tabs > button {
    padding: 12px 10px;
    font-size: 11px;
  }
  .scm-self-grid {
    gap: 14px;
  }
  .scm-surface {
    padding: 22px;
  }
  .scm-detail {
    grid-template-columns: 1fr;
  }
  .scm-detail-document {
    border-right: 0;
    border-bottom: 1px solid var(--scm-line);
    padding: 26px;
  }
  .scm-detail-cites {
    padding: 26px;
  }
  .scm-modal-top {
    padding: 18px 23px;
  }
  .scm-detail-document h3 {
    font-size: 22px;
  }
  .scm-demo-banner {
    align-items: flex-start;
    font-size: 10px;
  }
  .scm-form-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .scm-settings-section {
    padding: 20px;
  }
  .scm-report > .scm {
    padding: 20px;
    margin: 0;
  }
  .scm-report-metrics {
    padding: 15px;
    font-size: 11px;
  }
}
@media (max-width: 520px) {
  .scm {
    font-size: 13px;
  }
  .scm-breadcrumb {
    font-size: 10px;
    padding: 7px 0 17px;
    gap: 8px;
  }
  .scm-hero {
    padding: 29px 24px;
    border-radius: 12px;
  }
  .scm-hero h1 {
    font-size: 35px;
    letter-spacing: -1px;
  }
  .scm-hero .scm-eyebrow {
    font-size: 9px;
  }
  .scm-hero .scm-hero-lead {
    font-size: 16px;
  }
  .scm-hero-meta {
    font-size: 9px;
    margin-top: 20px;
  }
  .scm-hero-meta > span:not(.scm-dot) {
    display: none;
  }
  .scm-stats {
    margin-top: 15px;
  }
  .scm-stat {
    padding: 20px 17px;
  }
  .scm-stat strong {
    font-size: 29px;
  }
  .scm-stat-index {
    top: 12px;
    right: 12px;
  }
  .scm-stat small {
    font-size: 9px;
  }
  .scm-stat-label {
    font-size: 11px;
  }
  .scm-filters {
    grid-template-columns: 1fr 1fr;
    padding: 13px;
    gap: 10px;
  }
  .scm-filters > .scm-field:last-child {
    grid-column: 1/-1;
  }
  .scm-filters .scm-field select {
    font-size: 11px;
  }
  .scm-document-grid {
    grid-template-columns: 1fr;
  }
  .scm-document {
    padding: 22px;
  }
  .scm-document h3 {
    font-size: 18px;
  }
  .scm-document-top {
    margin-bottom: 17px;
  }
  .scm-document-bottom {
    align-items: center;
  }
  .scm-document-bib {
    margin-top: 0;
  }
  .scm-authors {
    font-size: 12px !important;
  }
  .scm-source {
    font-size: 12px;
  }
  .scm-cites,
  .scm-text-link {
    font-size: 11px;
  }
  .scm-results-toolbar {
    padding-top: 19px;
  }
  .scm-view-toggle button {
    font-size: 10px;
    padding: 7px 9px;
  }
  .scm-pagination {
    gap: 18px;
  }
  .scm-pagination .scm-button {
    padding: 8px 10px;
  }
  .scm-pagination > span {
    font-size: 10px;
  }
  .scm-self-grid {
    grid-template-columns: 1fr;
  }
  .scm-dialog {
    width: calc(100vw - 20px);
    max-height: 94vh;
  }
  .scm-modal-top h2 {
    font-size: 14px;
  }
  .scm-import-form,
  .scm-review-form {
    padding: 20px;
  }
  .scm-export-menu {
    gap: 5px;
  }
  .scm-export-menu .scm-button {
    font-size: 10px;
    padding: 7px 9px;
  }
  .scm-widget h2 {
    font-size: 19px;
  }
  .scm-widget .scm-filters {
    padding: 11px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .scm * {
    transition: none !important;
    scroll-behavior: auto !important;
  }
  .scm-document:hover {
    transform: none;
  }
}
@media print {
  .scm-no-print {
    display: none !important;
  }
  .scm-report > .scm {
    margin: 0;
    padding: 0;
    max-width: none;
    font-size: 10pt;
  }
  .scm-report h1 {
    font-size: 24pt;
  }
  .scm-report h2 {
    font-size: 14pt;
  }
  .scm-report h3 {
    font-size: 11pt;
  }
  .scm-report a {
    color: #173e30;
    text-decoration: underline;
  }
  .scm-report-document {
    break-inside: avoid;
  }
  .scm-report-metrics {
    background: none;
    border: 1px solid #ccc;
    padding: 12pt;
  }
  .scm-report footer {
    font-size: 9pt;
  }
  @page {
    size: A4;
    margin: 18mm;
  }
}
