/* Shared public redesign for Research Artifacts and Product Research.
   Page-scoped so the existing data and interaction code remains unchanged. */

body.research-artifact-page {
  --rd-ink: #171713;
  --rd-muted: rgba(23, 23, 19, .58);
  --rd-stone: #f0efe9;
  --rd-inset: #fbfaf7;
  --rd-hover: #fffefa;
  --rd-green: #2f6b4c;
  --rd-green-soft: #dceee3;
  margin: 0 !important;
  background: #fbfaf7 !important;
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
}

/* Directory selects keep a quiet focus state without the browser's green halo. */
html body.research-artifact-page .research-toolbar select:is(:focus, :focus-visible),
html body.research-artifact-page .supplier-searchbar select:is(:focus, :focus-visible),
html body.product-research-page .toolbar select:is(:focus, :focus-visible),
html body.product-research-page .bar select:is(:focus, :focus-visible),
html body.product-research-page .sort select:is(:focus, :focus-visible) {
  outline: 0 !important;
  box-shadow: none !important;
  background-color: #f4f2ed !important;
}

html body.product-research-page .sort:is(:focus, :focus-visible, :focus-within) {
  outline: 0 !important;
  box-shadow: inset 0 0 0 1px rgba(31, 29, 24, .055) !important;
  background-color: #f4f2ed !important;
}

/* Desktop artifact table: spend width on readable identity, type and platform fields. */
@media (min-width: 901px) and (max-width: 1280px) {
  html body.research-artifact-page.research-artifact-page .artifact-compact-head,
  html body.research-artifact-page.research-artifact-page .artifact-compact-row {
    grid-template-columns:
      minmax(370px, 1.55fr)
      minmax(120px, .42fr)
      minmax(110px, .48fr)
      minmax(240px, 1fr) !important;
    gap: 14px !important;
  }
}

@media (min-width: 1281px) {
  html body.research-artifact-page.research-artifact-page .artifact-compact-head,
  html body.research-artifact-page.research-artifact-page .artifact-compact-row {
    grid-template-columns:
      minmax(400px, 1.55fr)
      minmax(126px, .42fr)
      minmax(130px, .48fr)
      minmax(130px, .5fr)
      minmax(240px, 1fr) !important;
    gap: 14px !important;
  }
}

@media (min-width: 901px) {
  html body.research-artifact-page .artifact-compact-cell--type strong {
    max-width: 100% !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }
}

/* Mobile research index: a compact record list is a better use of phone space
   than the desktop image-led card. Keep the thumbnail for recognition, then
   expose the title, attribution/date and semantic pills in one scannable row. */
@media (max-width: 620px) {
  html body.research-artifact-page #artifact-results.card-grid,
  html body.research-artifact-page #artifact-results.artifact-grid,
  html body.research-artifact-page #artifact-results.artifact-grid.card-grid {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:9px !important;
  }

  html body.research-artifact-page #artifact-results .supplier-card.artifact-card.research-artifact-card {
    display:grid !important;
    grid-template-columns:94px minmax(0,1fr) !important;
    grid-template-rows:auto !important;
    min-height:156px !important;
    overflow:hidden !important;
    border:0 !important;
    border-radius:17px !important;
    background:#fffdfa !important;
    box-shadow:none !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .supplier-card__visual,
  html body.research-artifact-page #artifact-results .research-artifact-card:not(.artifact-card--has-image) .supplier-card__visual {
    grid-column:1 !important;
    grid-row:1 !important;
    align-self:stretch !important;
    width:94px !important;
    min-width:94px !important;
    height:100% !important;
    min-height:156px !important;
    aspect-ratio:auto !important;
    overflow:hidden !important;
    border-radius:17px 0 0 17px !important;
    background:#eeece6 !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__image {
    width:100% !important;
    height:100% !important;
    min-height:156px !important;
    object-fit:cover !important;
    object-position:center !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__media-label {
    box-sizing:border-box !important;
    display:flex !important;
    width:100% !important;
    height:100% !important;
    padding:12px 9px !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:9px !important;
    line-height:1.15 !important;
    text-align:center !important;
    overflow-wrap:anywhere !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__badge-row {
    display:none !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .supplier-card__body {
    box-sizing:border-box !important;
    grid-column:2 !important;
    grid-row:1 !important;
    width:100% !important;
    min-width:0 !important;
    min-height:156px !important;
    padding:13px 40px 12px 13px !important;
    justify-content:flex-start !important;
    background:#fffdfa !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .supplier-card__body-link {
    display:flex !important;
    min-width:0 !important;
    height:100% !important;
    flex-direction:column !important;
    gap:8px !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__body-title {
    display:-webkit-box !important;
    margin:0 !important;
    overflow:hidden !important;
    color:#171713 !important;
    font-family:Inter,Arial,sans-serif !important;
    font-size:13px !important;
    font-weight:750 !important;
    line-height:1.2 !important;
    letter-spacing:-.018em !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:3 !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__record {
    display:flex !important;
    width:100% !important;
    min-width:0 !important;
    margin-top:auto !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:6px 8px !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field,
  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source {
    display:flex !important;
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    align-items:center !important;
    flex:0 0 auto !important;
    gap:6px !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field > span {
    display:none !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source {
    width:100% !important;
    align-items:flex-start !important;
    flex-direction:column !important;
    gap:2px !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source strong,
  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source em {
    display:block !important;
    width:100% !important;
    overflow:hidden !important;
    color:#6f6d67 !important;
    font-family:Inter,Arial,sans-serif !important;
    font-style:normal !important;
    font-weight:500 !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source strong {
    font-size:10.5px !important;
    line-height:1.2 !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source em {
    color:#918f88 !important;
    font-size:9.5px !important;
    line-height:1.2 !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--type strong {
    min-height:22px !important;
    padding:5px 8px !important;
    border:0 !important;
    border-radius:999px !important;
    font-size:8.5px !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--context strong {
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:#57554f !important;
    font-size:9px !important;
    font-weight:650 !important;
    line-height:1.1 !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--capability {
    width:100% !important;
    flex:0 0 100% !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-capability-pills {
    display:flex !important;
    width:100% !important;
    min-width:0 !important;
    flex-wrap:nowrap !important;
    gap:5px !important;
    overflow:hidden !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-capability-pill {
    min-width:0 !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-capability-pill strong {
    display:block !important;
    min-height:20px !important;
    padding:4px 7px !important;
    overflow:hidden !important;
    border:0 !important;
    border-radius:999px !important;
    font-size:7.5px !important;
    line-height:1.1 !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-actions {
    display:none !important;
  }

  html body.research-artifact-page.supplier-directory-page #artifact-results.card-grid .research-artifact-card .k-watch.product-card-watch {
    top:9px !important;
    right:9px !important;
    width:28px !important;
    min-width:28px !important;
    max-width:28px !important;
    height:28px !important;
    min-height:28px !important;
  }
}

/* Research Artifacts mobile quickview alignment authority. */
@media (max-width: 700px) {
  html body.research-artifact-page #artifact-modal.artifact-modal {
    align-items: flex-start !important;
    padding: 8px !important;
    overflow: hidden !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal__panel {
    box-sizing: border-box !important;
    width: calc(100vw - 16px) !important;
    max-width: calc(100vw - 16px) !important;
    max-height: calc(100dvh - 16px) !important;
    margin: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    border-radius: 20px !important;
    background: #faf9f6 !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal__head {
    position: relative !important;
    padding: 18px 50px 16px 18px !important;
    border: 0 !important;
    background: #faf9f6 !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal__title {
    max-width: 100% !important;
    margin-top: 12px !important;
    font-size: 24px !important;
    line-height: 1.02 !important;
    letter-spacing: -.035em !important;
    overflow-wrap: anywhere !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal__body {
    box-sizing: border-box !important;
    width: 100% !important;
    padding: 0 18px 18px !important;
    overflow: visible !important;
  }

  html body.research-artifact-page #artifact-modal :is(
    .artifact-modal-top-grid,
    .artifact-modal-lower-grid,
    .artifact-modal-main-column,
    .artifact-modal-side-column
  ) {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    transform: none !important;
  }

  html body.research-artifact-page #artifact-modal :is(.artifact-modal-top-grid, .artifact-modal-lower-grid) {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-detail-card {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 16px !important;
    border: 0 !important;
    border-radius: 16px !important;
    background: #f2f0ea !important;
    box-shadow: none !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal-entity-card,
  html body.research-artifact-page #artifact-modal .artifact-modal-entity-card__media,
  html body.research-artifact-page #artifact-modal .artifact-modal__links {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

/* Unified directory typography: the same plain black Inter hierarchy in pages and dialogs. */
html body.research-artifact-page :where(.research-shell, .supplier-directory-shell, .artifact-modal, .artifact-modal__panel, .artifact-modal__body, .corrections-modal),
html body.product-research-page :where(.directory-shell, .modal, .panel, #modal-body, .submit-modal) {
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
  color: #171713 !important;
}

html body.research-artifact-page :where(.research-shell, .supplier-directory-shell, .artifact-modal, .artifact-modal__panel, .artifact-modal__body, .corrections-modal) :where(h1, h2, h3, h4, h5, h6, p, li, dt, dd, label, legend, button, input, select, textarea, th, td, a, span, strong, em),
html body.product-research-page :where(.directory-shell, .modal, .panel, #modal-body, .submit-modal) :where(h1, h2, h3, h4, h5, h6, p, li, dt, dd, label, legend, button, input, select, textarea, th, td, a, span, strong, em) {
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
  color: #171713 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.research-artifact-page :where(.artifact-modal, .corrections-modal) :where(h2, h3, .artifact-modal__title, .artifact-modal__section-title),
html body.product-research-page :where(.modal, .submit-modal) :where(h2, h3, .modal-label) {
  color: #171713 !important;
  font-weight: 750 !important;
  line-height: 1.2 !important;
}

html body.research-artifact-page :where(.artifact-modal, .corrections-modal) :where(p, li, dt, dd, td),
html body.product-research-page :where(.modal, .submit-modal) :where(.modal-copy, .modal-sub, p, li, dt, dd, td) {
  color: #171713 !important;
  font-size: 14px !important;
  font-weight: 450 !important;
  line-height: 1.5 !important;
}

html body.research-artifact-page :where(.submit-btn, .corrections-submit-btn, .view-toggle button.is-active),
html body.product-research-page :where(.submit-btn, .corrections-submit-btn, .modal-actions a:first-child) {
  color: #fff !important;
}

html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-modal__panel,
html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-modal__panel *,
html body.product-research-page.product-research-page #modal.modal .panel,
html body.product-research-page.product-research-page #modal.modal .panel * {
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
  color: #171713 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.product-research-page.product-research-page #modal.modal .modal-actions a:first-child {
  color: #fff !important;
}

/* Pull both directory frames closer to the 70px masthead and keep the full rail visible. */
@media (min-width: 901px) {
  html body.research-artifact-page:not(.product-research-page) .research-shell {
    height: calc(100dvh - 70px) !important;
    padding: 8px 20px 0 !important;
  }

  html body.research-artifact-page:not(.product-research-page) .supplier-directory-shell.research-layout {
    height: 100% !important;
    max-height: 100% !important;
    padding-top: 14px !important;
  }

  html body.product-research-page .directory-shell {
    height: calc(100dvh - 78px) !important;
    max-height: calc(100dvh - 78px) !important;
    margin: 8px 20px 0 !important;
    padding-top: 14px !important;
  }
}

/* A research card is one surface; legacy record fields must not paint white tiles. */
html body.research-artifact-page.research-artifact-page #artifact-results.card-grid .research-artifact-card .supplier-card__body,
html body.research-artifact-page.research-artifact-page #artifact-results.card-grid .research-artifact-card .supplier-card__body-link,
html body.research-artifact-page.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__record,
html body.research-artifact-page.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field,
html body.research-artifact-page.research-artifact-page #artifact-results.artifact-grid .research-artifact-card .supplier-card__body,
html body.research-artifact-page.research-artifact-page #artifact-results.artifact-grid .research-artifact-card .supplier-card__body-link,
html body.research-artifact-page.research-artifact-page #artifact-results.artifact-grid .research-artifact-card .artifact-card__record,
html body.research-artifact-page.research-artifact-page #artifact-results.artifact-grid .research-artifact-card .artifact-card__field {
  background: transparent !important;
  box-shadow: none !important;
}

html body.research-artifact-page :where(.artifact-modal, .corrections-modal) :where(label, th),
html body.product-research-page :where(.modal, .submit-modal) :where(label, th, .modal-eyebrow, .modal-label, .modal-filter-field > span) {
  color: #171713 !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  line-height: 1.3 !important;
}

body.research-artifact-page *,
body.research-artifact-page *::before,
body.research-artifact-page *::after {
  box-sizing: border-box;
}

body.research-artifact-page .research-hero,
body.research-artifact-page .site-footer,
body.research-artifact-page footer {
  display: none !important;
}

/* Shared directory frames */
html body.research-artifact-page:not(.product-research-page) .research-shell {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 18px 20px !important;
}

html body.research-artifact-page:not(.product-research-page) .supplier-directory-shell.research-layout,
html body.product-research-page .directory-shell {
  display: grid !important;
  grid-template-columns: minmax(220px, 248px) minmax(0, 1fr) !important;
  gap: 20px !important;
  width: 100% !important;
  min-height: 0 !important;
  padding: 20px !important;
  border: 0 !important;
  border-radius: 28px !important;
  background: var(--rd-stone) !important;
  box-shadow: 0 12px 34px rgba(31, 29, 24, .045) !important;
}

html body.product-research-page .directory-shell {
  margin: 18px 20px !important;
  width: calc(100% - 40px) !important;
}

html body.research-artifact-page:not(.product-research-page) .research-main,
html body.product-research-page .main {
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Filter rails */
html body.research-artifact-page .research-sidebar,
html body.product-research-page .sidebar {
  position: static !important;
  top: auto !important;
  align-self: stretch !important;
  width: auto !important;
  min-width: 0 !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  padding: 18px 14px 22px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  border: 0 !important;
  border-radius: 20px !important;
  background: var(--rd-inset) !important;
  box-shadow: inset 0 0 0 1px rgba(31, 29, 24, .045) !important;
  scrollbar-width: none !important;
}

html body.research-artifact-page:not(.product-research-page) .supplier-sidebar.research-sidebar {
  background: var(--rd-inset) !important;
}

html body.research-artifact-page .research-sidebar::-webkit-scrollbar,
html body.product-research-page .sidebar::-webkit-scrollbar,
html body.research-artifact-page:not(.product-research-page) .research-main::-webkit-scrollbar,
html body.product-research-page .main::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
}

html body.research-artifact-page .supplier-sidebar__top.sidebar-head,
html body.product-research-page .sidebar-top {
  position: sticky !important;
  top: -18px !important;
  z-index: 4 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 55px !important;
  margin: -18px -14px 8px !important;
  padding: 18px 16px 10px !important;
  border: 0 !important;
  background: rgba(251, 250, 247, .97) !important;
  box-shadow: none !important;
}

html body.research-artifact-page .sidebar-title,
html body.product-research-page .sidebar-title {
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: -.02em !important;
  text-transform: none !important;
}

html body.research-artifact-page:not(.product-research-page) .supplier-sidebar__top .sidebar-title {
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: -.02em !important;
  text-transform: none !important;
}

html body.research-artifact-page .sidebar-clear,
html body.product-research-page .clear-btn {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
}

html body.research-artifact-page .sidebar-clear:hover,
html body.product-research-page .clear-btn:hover {
  color: var(--rd-ink) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

html body.research-artifact-page .research-sidebar .facet-group,
html body.product-research-page .facet {
  margin: 0 0 3px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body.research-artifact-page .research-sidebar .facet-group summary,
html body.product-research-page .facet summary {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr) 14px !important;
  align-items: center !important;
  min-height: 44px !important;
  padding: 0 12px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 13px !important;
  font-weight: 620 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: none !important;
}

html body.research-artifact-page .research-sidebar .facet-group summary:hover,
html body.research-artifact-page .research-sidebar .facet-group[open] summary,
html body.product-research-page .facet summary:hover,
html body.product-research-page .facet[open] summary {
  border-radius: 12px !important;
  background: #eeece5 !important;
  color: var(--rd-ink) !important;
}

html body.research-artifact-page .research-sidebar .facet-group summary:focus,
html body.research-artifact-page .research-sidebar .facet-group summary:focus-visible,
html body.product-research-page .facet summary:focus,
html body.product-research-page .facet summary:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

html body.research-artifact-page .facet-title,
html body.product-research-page .facet-title {
  color: inherit !important;
  font: inherit !important;
  letter-spacing: inherit !important;
  text-transform: inherit !important;
}

html body.research-artifact-page .facet-options,
html body.product-research-page .facet-options {
  display: grid !important;
  gap: 2px !important;
  margin: 6px 0 10px !important;
  padding: 0 !important;
}

html body.research-artifact-page .facet-option,
html body.product-research-page .facet-option {
  display: grid !important;
  grid-template-columns: 16px minmax(0, 1fr) auto !important;
  align-items: center !important;
  min-height: 32px !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 5px 13px 5px 16px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  color: rgba(23, 23, 19, .76) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.research-artifact-page .facet-option:hover,
html body.product-research-page .facet-option:hover {
  background: #f3f1eb !important;
  color: var(--rd-ink) !important;
}

html body.research-artifact-page .facet-option:has(input:checked),
html body.product-research-page .facet-option:has(input:checked) {
  background: #e1ece5 !important;
  color: var(--rd-ink) !important;
  font-weight: 600 !important;
}

html body.research-artifact-page .facet-option input,
html body.product-research-page .facet-option input {
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  accent-color: var(--rd-green) !important;
}

html body.research-artifact-page .facet-option__count,
html body.product-research-page .facet-option > span:last-child {
  color: rgba(23, 23, 19, .42) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
}

html body.product-research-page .facet-chevron {
  display: none !important;
}

/* Toolbars and dropdowns */
html body.research-artifact-page .research-toolbar,
html body.product-research-page .toolbar {
  display: grid !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body.research-artifact-page .research-toolbar {
  grid-template-columns: minmax(260px, 1fr) 150px 210px 82px !important;
}

html body.product-research-page .toolbar {
  grid-template-columns: minmax(260px, 1fr) minmax(220px, 320px) 82px !important;
}

html body.research-artifact-page .research-toolbar .toolbar-label {
  display: none !important;
}

html body.research-artifact-page .research-toolbar .field,
html body.product-research-page .search,
html body.product-research-page .sort {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--rd-inset) !important;
  box-shadow: inset 0 0 0 1px rgba(31, 29, 24, .055) !important;
}

html body.research-artifact-page .research-toolbar input,
html body.research-artifact-page .research-toolbar select,
html body.product-research-page .search input {
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 16px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 550 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  outline: none !important;
  box-shadow: none !important;
}

html body.research-artifact-page .research-toolbar select {
  appearance: none !important;
  -webkit-appearance: none !important;
  padding-right: 16px !important;
}

html body.research-artifact-page .research-toolbar option {
  background: #fffefa !important;
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-transform: none !important;
}

html body.product-research-page .sort {
  gap: 8px !important;
  padding: 0 15px !important;
  cursor: pointer !important;
}

html body.product-research-page .sort::after {
  content: none !important;
  display: none !important;
}

html body.product-research-page .sort-label,
html body.product-research-page .sort-value {
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.product-research-page .sort-label {
  color: var(--rd-muted) !important;
  font-weight: 500 !important;
}

html body.product-research-page .sort-menu {
  top: calc(100% + 7px) !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 100 !important;
  display: none;
  margin: 0 !important;
  padding: 7px !important;
  overflow: hidden !important;
  border: 1px solid rgba(31, 29, 24, .09) !important;
  border-radius: 14px !important;
  background: #fffefa !important;
  box-shadow: 0 14px 34px rgba(31, 29, 24, .12) !important;
}

html body.product-research-page .sort-menu.open { display: block !important; }

html body.product-research-page .sort-menu-item {
  min-height: 36px !important;
  height: auto !important;
  padding: 0 10px !important;
  border: 0 !important;
  border-radius: 9px !important;
  background: transparent !important;
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 550 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.product-research-page .sort-menu-item:hover,
html body.product-research-page .sort-menu-item.active {
  background: #e1ece5 !important;
  color: var(--rd-ink) !important;
}

html body.research-artifact-page .research-submit-top,
html body.product-research-page .submit-btn {
  align-self: center !important;
  justify-self: end !important;
  width: 82px !important;
  min-width: 82px !important;
  max-width: 82px !important;
  height: 36px !important;
  min-height: 36px !important;
  padding: 0 12px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: var(--rd-ink) !important;
  color: #fff !important;
  box-shadow: 0 4px 12px rgba(20, 20, 18, .08) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 650 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  transform: none !important;
}

html body.product-research-page .submit-btn {
  font-size: 0 !important;
}

html body.product-research-page .submit-btn::after {
  content: "Submit" !important;
  font-size: 11px !important;
}

html body.research-artifact-page .research-submit-top:hover,
html body.research-artifact-page .research-submit-top:focus-visible,
html body.product-research-page .submit-btn:hover,
html body.product-research-page .submit-btn:focus-visible {
  background: #2a2a25 !important;
  color: #fff !important;
  outline: none !important;
  box-shadow: 0 4px 12px rgba(20, 20, 18, .08) !important;
  transform: none !important;
}

/* Information strip, counts and view switcher */
html body.research-artifact-page .active-filter-row.active-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  align-items: center !important;
  gap: 14px !important;
  min-height: 0 !important;
  margin: 0 0 12px !important;
}

html body.research-artifact-page .directory-scope-note {
  grid-column: 1 !important;
  display: flex !important;
  align-items: center !important;
  min-height: 64px !important;
  gap: 12px !important;
  padding: 13px 16px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--rd-green-soft) !important;
  color: var(--rd-ink) !important;
  box-shadow: none !important;
}

html body.research-artifact-page .directory-scope-note__icon {
  color: var(--rd-ink) !important;
}

html body.research-artifact-page .directory-scope-note__label {
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

html body.research-artifact-page .directory-scope-note__body {
  margin: 3px 0 0 !important;
  color: rgba(23, 23, 19, .72) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 450 !important;
  line-height: 1.4 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.research-artifact-page .active-filter-chips:empty { display: none !important; }

html body.research-artifact-page .artifact-view-toggle {
  grid-column: 2 !important;
  display: flex !important;
  align-items: center !important;
  width: auto !important;
  height: 44px !important;
  gap: 2px !important;
  padding: 4px !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: var(--rd-inset) !important;
  box-shadow: inset 0 0 0 1px rgba(31, 29, 24, .055) !important;
}

html body.research-artifact-page .artifact-view-toggle button {
  min-width: 72px !important;
  height: 36px !important;
  padding: 0 11px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: none !important;
}

html body.research-artifact-page .artifact-view-toggle button:hover:not([aria-pressed="true"]) {
  background: #eeece5 !important;
}

html body.research-artifact-page .artifact-view-toggle button[aria-pressed="true"] {
  background: var(--rd-ink) !important;
  color: #fff !important;
}

html body.research-artifact-page .artifact-view-toggle button:focus,
html body.research-artifact-page .artifact-view-toggle button:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

html body.research-artifact-page .result-count,
html body.product-research-page .count-row {
  color: var(--rd-muted) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.research-artifact-page .result-count { grid-column: 3 !important; }
html body.product-research-page .count-row { margin: 0 0 10px !important; }

/* Artifact table view: preserved grid, inset rows, no dividers. */
html body.research-artifact-page #artifact-results {
  min-width: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body.research-artifact-page .artifact-compact-head {
  min-height: 38px !important;
  padding: 0 14px !important;
  border: 0 !important;
  background: transparent !important;
  color: rgba(23, 23, 19, .6) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

html body.research-artifact-page .artifact-compact-row {
  min-height: 82px !important;
  margin: 0 0 8px !important;
  padding: 10px 14px !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: var(--rd-inset) !important;
  box-shadow: none !important;
  transition: background-color 140ms ease, transform 140ms ease, box-shadow 140ms ease !important;
}

html body.research-artifact-page .artifact-compact-row:hover,
html body.research-artifact-page .artifact-compact-row:focus-visible {
  border: 0 !important;
  background: var(--rd-hover) !important;
  box-shadow: 0 8px 18px rgba(31, 29, 24, .045) !important;
  outline: none !important;
  transform: translateY(-1px) !important;
}

html body.research-artifact-page .artifact-compact-thumb {
  width: 76px !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: #e7e5de !important;
}

html body.research-artifact-page .artifact-compact-thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 10px !important;
}

html body.research-artifact-page .artifact-compact-row__title strong,
html body.research-artifact-page .artifact-compact-cell strong {
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.research-artifact-page .artifact-compact-row__title strong {
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

html body.research-artifact-page .artifact-compact-row__title span {
  margin-top: 4px !important;
  color: var(--rd-muted) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.research-artifact-page .artifact-compact-cell strong {
  font-size: 11.5px !important;
  font-weight: 550 !important;
  line-height: 1.3 !important;
}

html body.research-artifact-page .artifact-compact-cell--type strong {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 26px !important;
  padding: 4px 9px !important;
  border-radius: 999px !important;
  background: #d8e7ff !important;
  color: var(--rd-ink) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
}

/* Card views */
html body.product-research-page .grid,
html body.research-artifact-page #artifact-results.card-grid,
html body.research-artifact-page #artifact-results.artifact-grid:not(:has(.artifact-compact-row)) {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
}

html body.product-research-page .card,
html body.research-artifact-page .research-artifact-card {
  min-width: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 18px !important;
  clip-path: inset(0 round 18px) !important;
  background: var(--rd-inset) !important;
  box-shadow: 0 7px 20px rgba(31, 29, 24, .055) !important;
  transition: transform 150ms ease, box-shadow 150ms ease, background-color 150ms ease !important;
}

html body.product-research-page .card:hover,
html body.research-artifact-page .research-artifact-card:hover {
  border: 0 !important;
  background: var(--rd-hover) !important;
  box-shadow: 0 12px 26px rgba(31, 29, 24, .085) !important;
  transform: translateY(-2px) !important;
}

html body.product-research-page .card .media,
html body.research-artifact-page .research-artifact-card .supplier-card__visual {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.research-artifact-page .research-artifact-card.artifact-card--no-image .supplier-card__visual {
  background: #e7e5de !important;
}

html body.research-artifact-page main .supplier-card.artifact-card.research-artifact-card.artifact-card--has-image .supplier-card__visual {
  background: transparent !important;
  box-shadow: none !important;
}

html body.product-research-page .card .media img,
html body.research-artifact-page .research-artifact-card .supplier-card__visual img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 0 !important;
}

html body.product-research-page .card .body,
html body.research-artifact-page .research-artifact-card .supplier-card__body {
  padding: 16px !important;
  border: 0 !important;
  border-radius: 0 0 18px 18px !important;
  background: transparent !important;
}

html body.product-research-page .card .name {
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  letter-spacing: -.02em !important;
  text-transform: none !important;
  text-decoration: none !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}

html body.product-research-page .card .name:hover {
  text-decoration: underline !important;
}

html body.product-research-page .card .company {
  margin-top: 4px !important;
  color: var(--rd-muted) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 550 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.product-research-page .card .type {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  min-height: 26px !important;
  margin-top: 10px !important;
  padding: 4px 10px !important;
  border-radius: 999px !important;
  background: #d8e7ff !important;
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.product-research-page .card .type--quadruped,
html body.product-research-page .card .type--mobile_robot { background: #d9f2e5 !important; }
html body.product-research-page .card .type--semi_humanoid,
html body.product-research-page .card .type--mobile_manipulator { background: #eadcff !important; }
html body.product-research-page .card .type--drone,
html body.product-research-page .card .type--service_robot { background: #d5f2ff !important; }
html body.product-research-page .card .type--industrial_robot,
html body.product-research-page .card .type--robot_arm { background: #fff0b8 !important; }
html body.product-research-page .card .type--hand,
html body.product-research-page .card .type--components { background: #ffd9e3 !important; }
html body.product-research-page .card .type--developer_platform,
html body.product-research-page .card .type--model_product { background: #e8f5c8 !important; }

html body.product-research-page .card .stats {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 14px 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body.product-research-page .card .stats span {
  color: var(--rd-muted) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 9px !important;
  font-weight: 550 !important;
  line-height: 1.25 !important;
  letter-spacing: .035em !important;
  text-transform: none !important;
}

html body.product-research-page .card .stats strong {
  display: block !important;
  margin-bottom: 2px !important;
  color: var(--rd-ink) !important;
  font-size: 19px !important;
  font-weight: 700 !important;
  letter-spacing: -.025em !important;
}

html body.product-research-page .card .info,
html body.research-artifact-page .research-artifact-card .supplier-card__cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 64px !important;
  min-height: 34px !important;
  padding: 0 13px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: var(--rd-ink) !important;
  color: #fff !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 10.5px !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

html body.product-research-page .card .info:hover,
html body.product-research-page .card .info:focus-visible,
html body.research-artifact-page .research-artifact-card .supplier-card__cta:hover,
html body.research-artifact-page .research-artifact-card .supplier-card__cta:focus-visible {
  background: #2a2a25 !important;
  color: #fff !important;
  outline: none !important;
}

html body.research-artifact-page .artifact-card__badge,
html body.research-artifact-page .artifact-modal__head .pill {
  min-height: 26px !important;
  padding: 4px 9px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #d8e7ff !important;
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.research-artifact-page .artifact-card__badge--dataset { background: #d9f2e5 !important; }
html body.research-artifact-page .artifact-card__badge--model { background: #eadcff !important; }
html body.research-artifact-page .artifact-card__badge--repo { background: #d5f2ff !important; }
html body.research-artifact-page .artifact-card__badge--benchmark { background: #fff0b8 !important; }
html body.research-artifact-page .artifact-card__badge--technical-report,
html body.research-artifact-page .artifact-card__badge--report { background: #ffd9e3 !important; }

/* Product and artifact detail panels */
html body.product-research-page .modal,
html body.research-artifact-page .artifact-modal {
  padding: 24px !important;
  background: rgba(20, 19, 16, .38) !important;
  backdrop-filter: blur(6px) !important;
}

html body.product-research-page .panel,
html body.research-artifact-page .artifact-modal__panel {
  width: min(760px, calc(100vw - 32px)) !important;
  max-height: min(820px, calc(100dvh - 48px)) !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: var(--rd-stone) !important;
  box-shadow: 0 28px 80px rgba(20, 19, 16, .24) !important;
  clip-path: inset(0 round 24px) !important;
}

html body.product-research-page .panel-head,
html body.research-artifact-page .artifact-modal__head {
  position: relative !important;
  padding: 24px 70px 18px 24px !important;
  border: 0 !important;
  background: transparent !important;
}

html body.product-research-page .panel h2,
html body.research-artifact-page .artifact-modal__title {
  margin: 0 !important;
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
  text-transform: none !important;
}

html body.product-research-page .modal-eyebrow,
html body.research-artifact-page .artifact-modal__meta,
html body.research-artifact-page .artifact-modal__submeta {
  color: var(--rd-muted) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.product-research-page .modal-eyebrow { margin-bottom: 6px !important; font-size: 11px !important; font-weight: 600 !important; }
html body.product-research-page .modal-sub { color: var(--rd-muted) !important; font-size: 12px !important; font-weight: 500 !important; letter-spacing: 0 !important; text-transform: none !important; }

html body.product-research-page .close,
html body.research-artifact-page .artifact-modal__close {
  position: absolute !important;
  top: 20px !important;
  right: 20px !important;
  width: 38px !important;
  height: 38px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--rd-inset) !important;
  color: var(--rd-ink) !important;
  box-shadow: inset 0 0 0 1px rgba(31, 29, 24, .06) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 18px !important;
  font-weight: 500 !important;
}

html body.product-research-page #modal-body,
html body.research-artifact-page .artifact-modal__body {
  max-height: calc(100dvh - 190px) !important;
  margin: 0 14px 14px !important;
  padding: 18px !important;
  overflow-y: auto !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: var(--rd-inset) !important;
  scrollbar-width: none !important;
}

html body.product-research-page #modal-body::-webkit-scrollbar,
html body.research-artifact-page .artifact-modal__body::-webkit-scrollbar { width: 0 !important; }

html body.product-research-page .modal-media,
html body.research-artifact-page .artifact-modal__media {
  width: min(100%, 600px) !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  margin: 0 auto 18px !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.product-research-page .modal-media img,
html body.research-artifact-page .artifact-modal__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 16px !important;
}

html body.product-research-page .modal-section {
  margin: 0 !important;
  padding: 13px 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body.product-research-page .modal-label,
html body.research-artifact-page .artifact-modal__body h3,
html body.research-artifact-page .artifact-modal__body h4 {
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.product-research-page .modal-copy,
html body.product-research-page .research-row,
html body.research-artifact-page .artifact-modal__summary,
html body.research-artifact-page .artifact-modal__body p,
html body.research-artifact-page .artifact-modal__body li {
  color: rgba(23, 23, 19, .74) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.product-research-page .modal-chip-grid span,
html body.product-research-page .modal-actions a,
html body.research-artifact-page .artifact-modal-chip,
html body.research-artifact-page .artifact-modal__link {
  border: 0 !important;
  border-radius: 10px !important;
  background: #e1ece5 !important;
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.product-research-page .modal-filter-field span {
  color: var(--rd-muted) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.product-research-page .modal-filter-field select {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

html body.product-research-page .modal-filter-select {
  position: relative !important;
  min-width: 0 !important;
}

html body.product-research-page .modal-filter-trigger {
  display: flex !important;
  width: 100% !important;
  height: 44px !important;
  align-items: center !important;
  padding: 0 16px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: #f0efea !important;
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  text-transform: none !important;
  cursor: pointer !important;
  outline: none !important;
  transition: background-color 140ms ease, box-shadow 140ms ease !important;
}

html body.product-research-page .modal-filter-trigger:hover {
  background: #ebeae4 !important;
}

html body.product-research-page .modal-filter-trigger:focus-visible {
  box-shadow: 0 0 0 2px rgba(42, 91, 65, .16) !important;
}

html body.product-research-page .modal-filter-select.is-open .modal-filter-trigger {
  background: #ebeae4 !important;
  box-shadow: none !important;
}

html body.product-research-page .modal-filter-menu {
  display: none !important;
  position: absolute !important;
  top: calc(100% + 6px) !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 80 !important;
  max-height: 250px !important;
  padding: 6px !important;
  overflow-y: auto !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: #fffefa !important;
  box-shadow: 0 16px 38px rgba(31, 29, 24, .14) !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(23, 23, 19, .22) transparent !important;
}

html body.product-research-page .modal-filter-select.is-open .modal-filter-menu {
  display: grid !important;
  gap: 2px !important;
}

html body.product-research-page .modal-filter-option {
  display: flex !important;
  width: 100% !important;
  min-height: 38px !important;
  align-items: center !important;
  padding: 8px 11px !important;
  border: 0 !important;
  border-radius: 9px !important;
  background: transparent !important;
  color: rgba(23, 23, 19, .78) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 13px !important;
  font-weight: 520 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  text-transform: none !important;
  cursor: pointer !important;
}

html body.product-research-page .modal-filter-option:hover,
html body.product-research-page .modal-filter-option:focus-visible {
  background: #f2f1ec !important;
  color: var(--rd-ink) !important;
  outline: none !important;
}

html body.product-research-page .modal-filter-option.is-selected {
  background: #e2ece6 !important;
  color: var(--rd-ink) !important;
  font-weight: 650 !important;
}

html body.product-research-page .modal-label {
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

html body.product-research-page .modal-footprint {
  gap: 20px !important;
  margin-top: 14px !important;
}

html body.product-research-page .modal-footprint__item strong {
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 29px !important;
  font-weight: 720 !important;
  line-height: 1 !important;
  letter-spacing: -.025em !important;
}

html body.product-research-page .modal-footprint__item span {
  margin-top: 7px !important;
  color: var(--rd-muted) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  line-height: 1.25 !important;
  letter-spacing: .045em !important;
}

html body.product-research-page .modal-filter-field > span {
  font-size: 11.5px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}

html body.product-research-page .research-list {
  margin-top: 12px !important;
  border: 0 !important;
}

html body.product-research-page .research-row {
  gap: 5px !important;
  padding: 12px 0 !important;
  border: 0 !important;
}

html body.product-research-page .research-row a {
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 14px !important;
  font-weight: 680 !important;
  line-height: 1.32 !important;
  letter-spacing: -.01em !important;
  text-decoration: none !important;
}

html body.product-research-page .research-row a:hover,
html body.product-research-page .research-row a:focus-visible {
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}

html body.product-research-page .research-row__meta {
  color: var(--rd-muted) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  letter-spacing: .035em !important;
}

/* Submit overlays */
html body.research-artifact-page .corrections-overlay,
html body.product-research-page .submit-overlay {
  background: rgba(20, 19, 16, .38) !important;
  backdrop-filter: blur(6px) !important;
}

html body.research-artifact-page .corrections-modal,
html body.product-research-page .submit-modal {
  width: min(560px, calc(100vw - 32px)) !important;
  max-height: calc(100dvh - 40px) !important;
  padding: 24px !important;
  border: 0 !important;
  border-radius: 20px !important;
  background: var(--rd-stone) !important;
  box-shadow: 0 28px 80px rgba(20, 19, 16, .24) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  scrollbar-width: none !important;
}

html body.research-artifact-page .corrections-modal::-webkit-scrollbar,
html body.product-research-page .submit-modal::-webkit-scrollbar { width: 0 !important; }

html body.research-artifact-page .corrections-modal-title,
html body.product-research-page .submit-title {
  margin: 0 48px 8px 0 !important;
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  letter-spacing: -.025em !important;
  text-transform: none !important;
}

html body.research-artifact-page .corrections-modal-copy,
html body.research-artifact-page .corrections-modal-contact,
html body.product-research-page .submit-copy {
  color: var(--rd-muted) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

html body.research-artifact-page .corrections-modal-close,
html body.product-research-page .submit-close {
  width: 38px !important;
  height: 38px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--rd-inset) !important;
  color: var(--rd-ink) !important;
  box-shadow: inset 0 0 0 1px rgba(31, 29, 24, .06) !important;
}

html body.research-artifact-page .corrections-field span,
html body.product-research-page .submit-field span {
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.research-artifact-page .corrections-field input,
html body.research-artifact-page .corrections-field select,
html body.research-artifact-page .corrections-field textarea,
html body.product-research-page .submit-field input,
html body.product-research-page .submit-field select,
html body.product-research-page .submit-field textarea {
  border: 0 !important;
  border-radius: 11px !important;
  background: var(--rd-inset) !important;
  color: var(--rd-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 13px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: inset 0 0 0 1px rgba(31, 29, 24, .06) !important;
  outline: none !important;
}

html body.research-artifact-page .corrections-submit-btn,
html body.product-research-page .submit-actions button {
  min-width: 96px !important;
  min-height: 38px !important;
  padding: 0 15px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: var(--rd-ink) !important;
  color: #fff !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Desktop viewport cap with independently scrolling filters and results. */
@media (min-width: 901px) {
  html body.research-artifact-page {
    height: 100dvh !important;
    overflow: hidden !important;
  }

  html body.research-artifact-page:not(.product-research-page) .research-shell {
    height: calc(100dvh - var(--site-header-h, 57px)) !important;
    min-height: 520px !important;
    overflow: hidden !important;
  }

  html body.research-artifact-page:not(.product-research-page) .supplier-directory-shell.research-layout {
    height: 100% !important;
    max-height: 100% !important;
    overflow: hidden !important;
  }

  html body.product-research-page .directory-shell {
    height: calc(100dvh - var(--site-header-h, 57px) - 36px) !important;
    max-height: calc(100dvh - var(--site-header-h, 57px) - 36px) !important;
    overflow: hidden !important;
  }

  html body.research-artifact-page:not(.product-research-page) .research-main,
  html body.product-research-page .main {
    height: 100% !important;
    max-height: 100% !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    scrollbar-width: none !important;
  }
}

/* Final cascade guard: keep the reference hierarchy after every legacy rule. */
html body.research-artifact-page :where(.research-shell, .supplier-directory-shell, .artifact-modal, .artifact-modal__panel, .artifact-modal__body, .corrections-modal),
html body.product-research-page :where(.directory-shell, .modal, .panel, #modal-body, .submit-modal),
html body.research-artifact-page :where(.research-shell, .supplier-directory-shell, .artifact-modal, .corrections-modal) *,
html body.product-research-page :where(.directory-shell, .modal, .panel, #modal-body, .submit-modal) * {
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
  color: #171713 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.research-artifact-page :where(.artifact-modal, .corrections-modal) :where(p, li, dt, dd, td),
html body.product-research-page :where(.modal, .submit-modal) :where(.modal-copy, .modal-sub, p, li, dt, dd, td) {
  font-size: 14px !important;
  font-weight: 450 !important;
  line-height: 1.5 !important;
}

/* Product Directory parity: final overrides must win over the legacy inline
   Research page rules loaded before this stylesheet. */
@media (min-width: 901px) {
  html body.research-artifact-page:not(.product-research-page) .supplier-directory-shell.research-layout,
  html body.product-research-page .directory-shell {
    grid-template-columns: 248px minmax(0, 1fr) !important;
  }
}

html body.research-artifact-page .supplier-sidebar.research-sidebar,
html body.product-research-page aside.sidebar {
  padding: 18px 14px 20px !important;
  background: #fbfaf7 !important;
  border: 0 !important;
  border-radius: 20px !important;
  box-shadow: inset 0 0 0 1px rgba(31, 29, 24, .045) !important;
}

html body.research-artifact-page .supplier-sidebar.research-sidebar > .supplier-sidebar__top.sidebar-head,
html body.product-research-page aside.sidebar > .sidebar-top {
  position: static !important;
  top: auto !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 0 8px !important;
  padding: 0 2px 12px !important;
  border: 0 !important;
  background: #fbfaf7 !important;
}

html body.research-artifact-page .supplier-sidebar.research-sidebar .facet-group,
html body.product-research-page aside.sidebar .facet {
  margin: 0 0 3px !important;
  padding: 0 !important;
}

html body.research-artifact-page .supplier-sidebar.research-sidebar .facet-group > summary,
html body.product-research-page aside.sidebar .facet > summary {
  min-height: 44px !important;
  padding: 0 12px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 13px !important;
  font-weight: 620 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.research-artifact-page .supplier-sidebar.research-sidebar .facet-group[open] > summary,
html body.product-research-page aside.sidebar .facet[open] > summary {
  background: #efeee8 !important;
}

html body.research-artifact-page .supplier-sidebar.research-sidebar .facet-options,
html body.product-research-page aside.sidebar .facet-options {
  display: grid !important;
  gap: 1px !important;
  margin: 2px 0 8px !important;
  padding: 0 !important;
}

html body.research-artifact-page .supplier-sidebar.research-sidebar label.facet-option,
html body.product-research-page aside.sidebar label.facet-option {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr) auto !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 36px !important;
  padding: 6px 14px !important;
  gap: 9px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  color: rgba(23, 23, 19, .76) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.research-artifact-page .supplier-sidebar.research-sidebar label.facet-option:hover,
html body.product-research-page aside.sidebar label.facet-option:hover {
  background: #f3f2ed !important;
}

html body.research-artifact-page .supplier-sidebar.research-sidebar label.facet-option:has(input:checked),
html body.product-research-page aside.sidebar label.facet-option:has(input:checked) {
  background: #e3eee8 !important;
  color: #245a40 !important;
  font-weight: 650 !important;
}

html body.research-artifact-page .supplier-sidebar.research-sidebar label.facet-option .facet-option__label,
html body.product-research-page aside.sidebar label.facet-option .facet-option__label {
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: normal !important;
}

html body.research-artifact-page #artifact-results.card-grid .supplier-card.artifact-card.research-artifact-card,
html body.research-artifact-page #artifact-results.artifact-grid .supplier-card.artifact-card.research-artifact-card,
html body.product-research-page .grid article.card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 18px !important;
  clip-path: inset(0 round 18px) !important;
  background: #fbfaf7 !important;
  box-shadow: 0 7px 20px rgba(31, 29, 24, .055) !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .supplier-card__visual,
html body.research-artifact-page #artifact-results.artifact-grid .research-artifact-card .supplier-card__visual,
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card:not(.artifact-card--has-image) .supplier-card__visual,
html body.research-artifact-page #artifact-results.artifact-grid .research-artifact-card:not(.artifact-card--has-image) .supplier-card__visual,
html body.product-research-page .grid article.card .media {
  flex: 0 0 auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 16 / 9 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .supplier-card__body,
html body.research-artifact-page #artifact-results.artifact-grid .research-artifact-card .supplier-card__body,
html body.product-research-page .grid article.card .body {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  min-height: 0 !important;
  padding: 16px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__badge,
html body.research-artifact-page #artifact-results.artifact-grid .research-artifact-card .artifact-card__badge {
  min-height: 26px !important;
  padding: 4px 10px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #171713 !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.research-artifact-page .artifact-card__badge--paper { background: #d8e7ff !important; }
html body.research-artifact-page .artifact-card__badge--dataset { background: #d9f2e5 !important; }
html body.research-artifact-page .artifact-card__badge--model { background: #eadcff !important; }
html body.research-artifact-page .artifact-card__badge--repository { background: #d5f2ff !important; }
html body.research-artifact-page .artifact-card__badge--benchmark { background: #fff0b8 !important; }
html body.research-artifact-page .artifact-card__badge--technical-report { background: #ffd9e3 !important; }

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-details,
html body.research-artifact-page #artifact-results.artifact-grid .research-artifact-card .artifact-details,
html body.product-research-page .grid article.card .info {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  min-width: 64px !important;
  height: 34px !important;
  min-height: 34px !important;
  margin-top: auto !important;
  padding: 0 13px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: #171713 !important;
  color: #fff !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 10.5px !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: none !important;
}

@media (max-width: 1200px) {
  html body.product-research-page .grid,
  html body.research-artifact-page #artifact-results.card-grid,
  html body.research-artifact-page #artifact-results.artifact-grid:not(:has(.artifact-compact-row)) {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  html body.research-artifact-page.supplier-directory-page main .supplier-searchbar.research-toolbar {
    grid-template-columns: minmax(220px, 1fr) 140px 190px 82px !important;
  }
}

@media (min-width: 901px) and (max-width: 1100px) {
  html body.research-artifact-page .artifact-compact-head,
  html body.research-artifact-page .artifact-compact-row {
    grid-template-columns: minmax(220px, 1.4fr) 68px 78px minmax(172px, 1fr) !important;
    gap: 8px !important;
  }

  html body.research-artifact-page .artifact-compact-primary {
    grid-template-columns: 64px minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  html body.research-artifact-page .artifact-compact-thumb {
    width: 64px !important;
  }
}

@media (max-width: 900px) {
  html body.research-artifact-page {
    height: auto !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  html body.research-artifact-page:not(.product-research-page) .research-shell {
    height: auto !important;
    padding: 14px !important;
    overflow: visible !important;
  }

  html body.research-artifact-page:not(.product-research-page) .supplier-directory-shell.research-layout,
  html body.product-research-page .directory-shell {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-height: none !important;
    margin: 14px !important;
    padding: 16px !important;
    overflow: visible !important;
    border-radius: 22px !important;
  }

  html body.research-artifact-page .research-sidebar,
  html body.product-research-page .sidebar {
    position: fixed !important;
    inset: var(--site-header-h, 57px) auto 0 0 !important;
    z-index: 10000 !important;
    display: block !important;
    width: min(88vw, 340px) !important;
    height: calc(100dvh - var(--site-header-h, 57px)) !important;
    max-height: none !important;
    padding: 18px 16px 28px !important;
    overflow-y: auto !important;
    border-radius: 0 20px 20px 0 !important;
    transform: translateX(-103%) !important;
    transition: transform 180ms ease !important;
  }

  html body.research-artifact-page.filters-open .research-sidebar,
  html body.product-research-page.filter-drawer-open .sidebar {
    transform: translateX(0) !important;
  }

  html body.research-artifact-page .research-toolbar,
  html body.product-research-page .toolbar {
    grid-template-columns: minmax(0, 1fr) 82px !important;
    gap: 10px !important;
  }

  html body.research-artifact-page .research-toolbar .field--search,
  html body.product-research-page .search { grid-column: 1 / -1 !important; }
  html body.research-artifact-page .research-toolbar .field--window,
  html body.research-artifact-page .research-toolbar .field--sort,
  html body.product-research-page .sort { grid-column: 1 !important; }
  html body.research-artifact-page .research-submit-top,
  html body.product-research-page .submit-btn { grid-column: 2 !important; grid-row: 2 !important; }

  html body.research-artifact-page .mobile-filter-btn,
  html body.product-research-page .filter-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 36px !important;
    padding: 0 13px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: var(--rd-inset) !important;
    color: var(--rd-ink) !important;
    font-family: Inter, var(--site-body), system-ui, sans-serif !important;
    font-size: 11px !important;
    font-weight: 650 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  html body.research-artifact-page .active-filter-row.active-row {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }

  html body.research-artifact-page .directory-scope-note { grid-column: 1 / -1 !important; }
  html body.research-artifact-page .artifact-view-toggle { grid-column: 1 !important; }
  html body.research-artifact-page .result-count { grid-column: 2 !important; }

  html body.product-research-page .grid,
  html body.research-artifact-page #artifact-results.card-grid,
  html body.research-artifact-page #artifact-results.artifact-grid:not(:has(.artifact-compact-row)) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 520px) {
  html body.product-research-page .card .stats {
    gap: 3px !important;
  }

  html body.product-research-page .card .stats span {
    overflow: visible !important;
    font-size: 7px !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    text-overflow: clip !important;
  }
}

/* Mobile directory authority: Research Artifacts follows the established
   Product Directory two-up card geometry. Old compact/table rules must not
   collapse the directory to a single column on phone viewports. */
@media (max-width: 620px) {
  html body.research-artifact-page #artifact-results.card-grid,
  html body.research-artifact-page #artifact-results.artifact-grid,
  html body.research-artifact-page #artifact-results.artifact-grid.card-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    border-radius: 14px !important;
    overflow: hidden !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .supplier-card__visual,
  html body.research-artifact-page #artifact-results .research-artifact-card:not(.artifact-card--has-image) .supplier-card__visual {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 16 / 9 !important;
    padding: 0 !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__image {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__media-label {
    margin: 0 !important;
    padding: 12px 38px 12px 12px !important;
    font-size: 12px !important;
    line-height: 1.05 !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .k-watch {
    top: 8px !important;
    right: 8px !important;
    width: 30px !important;
    height: 30px !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .supplier-card__body {
    min-height: 0 !important;
    padding: 10px !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__body-title {
    min-height: 0 !important;
    margin: 0 0 7px !important;
    font-size: 12px !important;
    line-height: 1.08 !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
    overflow: hidden !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__record {
    margin-top: 0 !important;
    gap: 7px !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source {
    display: block !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source strong,
  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source em {
    display: block !important;
    overflow: hidden !important;
    font-size: 8.5px !important;
    line-height: 1.2 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--type strong,
  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-capability-pill strong {
    min-height: 21px !important;
    padding: 4px 8px !important;
    font-size: 8px !important;
    line-height: 1.1 !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--context {
    display: none !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-capability-pills {
    gap: 5px !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-actions {
    display: none !important;
  }
}

/* Final research-dialog authority: match the current directory quickviews,
   preserve useful content width, and remove legacy module nesting. */
html body.research-artifact-page #artifact-modal.artifact-modal,
html body.product-research-page #modal.modal {
  padding: 18px !important;
  align-items: center !important;
  overflow: hidden !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal__panel,
html body.product-research-page #modal.modal .panel {
  display: flex !important;
  flex-direction: column !important;
  width: min(900px, calc(100vw - 36px)) !important;
  max-width: min(900px, calc(100vw - 36px)) !important;
  max-height: calc(100dvh - 36px) !important;
  margin: auto !important;
  padding: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: #faf9f6 !important;
  box-shadow: 0 28px 80px rgba(20, 19, 16, .24) !important;
  clip-path: inset(0 round 24px) !important;
  box-sizing: border-box !important;
  overscroll-behavior: contain !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal__head,
html body.product-research-page #modal.modal .panel-head {
  position: relative !important;
  top: auto !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 26px 76px 20px 26px !important;
  border: 0 !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal__title,
html body.product-research-page #modal.modal #modal-title {
  max-width: 760px !important;
  margin: 0 !important;
  font: 760 30px/1.08 Inter, system-ui, sans-serif !important;
  letter-spacing: -.035em !important;
  text-transform: none !important;
  overflow-wrap: anywhere !important;
}

html body.research-artifact-page #artifact-modal :where(.artifact-modal__meta,.artifact-modal__submeta),
html body.product-research-page #modal.modal #modal-sub {
  margin-top: 8px !important;
  font: 500 13px/1.4 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal__close,
html body.product-research-page #modal.modal .close {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  width: 38px !important;
  height: 38px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #f1f0eb !important;
  box-shadow: none !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal__body,
html body.product-research-page #modal.modal #modal-body {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 26px 26px !important;
  overflow: visible !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

html body.research-artifact-page #artifact-modal :where(.artifact-modal-top-grid,.artifact-modal-lower-grid),
html body.product-research-page #modal.modal #modal-body {
  min-width: 0 !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal-top-grid {
  grid-template-columns: minmax(0, 1.15fr) minmax(270px, .85fr) !important;
  gap: 14px !important;
  margin: 0 0 14px !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal-lower-grid {
  grid-template-columns: minmax(0, 1.15fr) minmax(270px, .85fr) !important;
  gap: 14px !important;
  margin: 14px 0 0 !important;
}

html body.research-artifact-page #artifact-modal .artifact-detail-card,
html body.product-research-page #modal.modal .modal-section {
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 18px !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: #f1f0eb !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

html body.research-artifact-page #artifact-modal .artifact-detail-card h3,
html body.product-research-page #modal.modal .modal-label {
  margin: 0 0 12px !important;
  font: 750 15px/1.25 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.research-artifact-page #artifact-modal :where(.artifact-modal__summary,.artifact-modal__lede,.artifact-modal__bullets,.artifact-modal-kv),
html body.product-research-page #modal.modal :where(.modal-copy,.research-list,.modal-footprint,.modal-chip-grid,.modal-actions) {
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal-entity-cards {
  grid-template-columns: 1fr !important;
  gap: 12px !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal-entity-card {
  min-width: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body.product-research-page #modal.modal #modal-body {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

html body.product-research-page #modal.modal .modal-media {
  grid-column: 1 / -1 !important;
  width: min(100%, 720px) !important;
  max-width: 720px !important;
  margin: 0 auto !important;
}

html body.product-research-page #modal.modal .modal-section:nth-of-type(4) {
  grid-column: 1 / -1 !important;
}

html body.product-research-page #modal.modal .research-row {
  padding: 12px 0 !important;
}

@media (max-width: 700px) {
  html body.research-artifact-page #artifact-modal.artifact-modal,
  html body.product-research-page #modal.modal { padding: 10px !important; }

  html body.research-artifact-page #artifact-modal .artifact-modal__panel,
  html body.product-research-page #modal.modal .panel {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    max-height: calc(100dvh - 20px) !important;
    border-radius: 20px !important;
    clip-path: inset(0 round 20px) !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal__head,
  html body.product-research-page #modal.modal .panel-head {
    padding: 20px 58px 16px 18px !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal__title,
  html body.product-research-page #modal.modal #modal-title {
    font-size: 23px !important;
    line-height: 1.08 !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal__close,
  html body.product-research-page #modal.modal .close {
    top: 14px !important;
    right: 14px !important;
    width: 34px !important;
    height: 34px !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal__body,
  html body.product-research-page #modal.modal #modal-body {
    padding: 0 16px 16px !important;
  }

  html body.research-artifact-page #artifact-modal :where(.artifact-modal-top-grid,.artifact-modal-lower-grid),
  html body.product-research-page #modal.modal #modal-body {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-detail-card,
  html body.product-research-page #modal.modal .modal-section {
    padding: 15px !important;
    border-radius: 16px !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal-entity-card {
    grid-template-columns: 96px minmax(0, 1fr) !important;
    grid-template-areas: "media kind" "media name" "media desc" "media action" !important;
    gap: 3px 12px !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal-entity-card__media {
    width: 96px !important;
    height: 74px !important;
  }

  html body.product-research-page #modal.modal .modal-media,
  html body.product-research-page #modal.modal .modal-section:nth-of-type(4) {
    grid-column: 1 !important;
  }
}

/* Mobile width guard kept outside the grouped :where() rule so the artifact
   page cannot inherit its older two-column track declaration. */
@media (max-width: 700px) {
  html body.research-artifact-page.research-artifact-page #artifact-modal#artifact-modal .artifact-modal__head,
  html body.product-research-page.product-research-page #modal#modal.modal .panel-head {
    padding: 20px 58px 16px 18px !important;
  }

  html body.research-artifact-page.research-artifact-page #artifact-modal#artifact-modal .artifact-modal__body,
  html body.product-research-page.product-research-page #modal#modal.modal #modal-body {
    width: 100% !important;
    padding: 0 16px 16px !important;
    box-sizing: border-box !important;
  }

  html body.research-artifact-page.research-artifact-page #artifact-modal#artifact-modal .artifact-modal-top-grid,
  html body.research-artifact-page.research-artifact-page #artifact-modal#artifact-modal .artifact-modal-lower-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-auto-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  html body.product-research-page.product-research-page #modal#modal.modal #modal-body {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  html body.product-research-page.product-research-page #modal#modal.modal #modal-body > * {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    box-sizing: border-box !important;
  }

  html body.research-artifact-page.research-artifact-page #artifact-modal#artifact-modal .artifact-detail-card,
  html body.product-research-page.product-research-page #modal#modal.modal .modal-section {
    width: 100% !important;
    min-width: 0 !important;
    padding: 15px !important;
    border-radius: 16px !important;
    background: #f1f0eb !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 620px) {
  html body.research-artifact-page:not(.product-research-page) .supplier-directory-shell.research-layout,
  html body.product-research-page .directory-shell {
    margin: 8px !important;
    padding: 12px !important;
    border-radius: 18px !important;
  }

  html body.product-research-page .grid,
  html body.research-artifact-page #artifact-results.card-grid,
  html body.research-artifact-page #artifact-results.artifact-grid:not(:has(.artifact-compact-row)) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.research-artifact-page .active-filter-row.active-row {
    grid-template-columns: 1fr !important;
  }

  html body.research-artifact-page .artifact-view-toggle {
    display: none !important;
  }

  html body.research-artifact-page .artifact-view-toggle,
  html body.research-artifact-page .result-count { grid-column: 1 !important; }

  html body.product-research-page .panel,
  html body.research-artifact-page .artifact-modal__panel {
    width: calc(100vw - 20px) !important;
    max-height: calc(100dvh - 20px) !important;
    border-radius: 20px !important;
    clip-path: inset(0 round 20px) !important;
  }

  html body.product-research-page .modal-footprint { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  html body.product-research-page .modal-filter-strip { grid-template-columns: 1fr !important; }
}

/* Modal semantic colour and surface cleanup. */
html body.research-artifact-page .artifact-modal__head .pill--artifact { background: #d8e7ff !important; }
html body.research-artifact-page .artifact-modal__head .pill--artifact-dataset { background: #d9f2e5 !important; }
html body.research-artifact-page .artifact-modal__head .pill--artifact-model { background: #eadcff !important; }
html body.research-artifact-page .artifact-modal__head .pill--artifact-repository,
html body.research-artifact-page .artifact-modal__head .pill--artifact-repo { background: #d5f2ff !important; }
html body.research-artifact-page .artifact-modal__head .pill--artifact-benchmark { background: #fff0b8 !important; }
html body.research-artifact-page .artifact-modal__head .pill--artifact-technical-report,
html body.research-artifact-page .artifact-modal__head .pill--artifact-report { background: #ffd9e3 !important; }
html body.research-artifact-page .artifact-modal__head .pill--availability { background: #d9f2e5 !important; }
html body.research-artifact-page .artifact-modal__head .pill--relationship { background: #eadcff !important; }

html body.research-artifact-page .artifact-modal__body .artifact-detail-card,
html body.research-artifact-page .artifact-modal__body .artifact-detail-card--why,
html body.research-artifact-page .artifact-modal__body .artifact-detail-card--glance,
html body.research-artifact-page .artifact-modal__body .artifact-detail-card--authorship,
html body.research-artifact-page .artifact-modal__body .artifact-detail-card--actions,
html body.research-artifact-page .artifact-modal__body .artifact-detail-card--entities {
  min-height: 0 !important;
  padding: 10px 12px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.research-artifact-page .artifact-modal__body .artifact-modal-entity-card {
  padding: 8px 10px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.research-artifact-page .artifact-modal__body .artifact-modal-entity-card [class*="media"],
html body.research-artifact-page .artifact-modal__body .artifact-modal-entity-card img {
  border: 0 !important;
  box-shadow: none !important;
}

html body.research-artifact-page .artifact-modal__body .artifact-modal-top-grid,
html body.research-artifact-page .artifact-modal__body .artifact-modal-lower-grid {
  gap: 28px !important;
  margin-bottom: 8px !important;
}

html body.research-artifact-page .artifact-modal__body .artifact-modal-chip,
html body.product-research-page .modal-chip-grid span {
  border: 0 !important;
  box-shadow: none !important;
  color: var(--rd-ink) !important;
}

html body.research-artifact-page .artifact-modal__body .artifact-modal-chip:nth-child(6n + 1),
html body.product-research-page .modal-chip-grid .modal-chip--tone-0 { background: #d8e7ff !important; }
html body.research-artifact-page .artifact-modal__body .artifact-modal-chip:nth-child(6n + 2),
html body.product-research-page .modal-chip-grid .modal-chip--tone-1 { background: #d9f2e5 !important; }
html body.research-artifact-page .artifact-modal__body .artifact-modal-chip:nth-child(6n + 3),
html body.product-research-page .modal-chip-grid .modal-chip--tone-2 { background: #eadcff !important; }
html body.research-artifact-page .artifact-modal__body .artifact-modal-chip:nth-child(6n + 4),
html body.product-research-page .modal-chip-grid .modal-chip--tone-3 { background: #d5f2ff !important; }
html body.research-artifact-page .artifact-modal__body .artifact-modal-chip:nth-child(6n + 5),
html body.product-research-page .modal-chip-grid .modal-chip--tone-4 { background: #fff0b8 !important; }
html body.research-artifact-page .artifact-modal__body .artifact-modal-chip:nth-child(6n),
html body.product-research-page .modal-chip-grid .modal-chip--tone-5 { background: #ffd9e3 !important; }
html body.product-research-page .modal-chip-grid .modal-chip--entity { background: #e7e5de !important; }

/* Shared directory typography and masthead parity. */
html body.research-artifact-page,
html body.product-research-page {
  background: #efeee9 !important;
}

html body.research-artifact-page .sidebar-title,
html body.product-research-page .sidebar-title {
  font-size: 18px !important;
  font-weight: 800 !important;
}

html body.research-artifact-page .facet-option,
html body.product-research-page .facet-option {
  grid-template-columns: 18px minmax(0, 1fr) auto !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 36px !important;
  padding: 6px 14px !important;
  gap: 9px !important;
  box-sizing: border-box !important;
}

html body.research-artifact-page .facet-option input,
html body.product-research-page .facet-option input,
html body.research-artifact-page .facet-option__count,
html body.product-research-page .facet-option > span:last-child {
  align-self: center !important;
  margin-block: 0 !important;
  padding-top: 0 !important;
}

html body.product-research-page .modal-title,
html body.research-artifact-page .artifact-modal__title {
  font-size: 28px !important;
  font-weight: 720 !important;
  line-height: 1.08 !important;
  letter-spacing: -.025em !important;
}

html body.product-research-page .modal-label,
html body.research-artifact-page .artifact-modal__body h3,
html body.research-artifact-page .artifact-modal__body h4 {
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: -.018em !important;
  text-transform: none !important;
  color: #171713 !important;
}

html body.product-research-page .modal-copy,
html body.research-artifact-page .artifact-modal__summary,
html body.research-artifact-page .artifact-modal__body p,
html body.research-artifact-page .artifact-modal__body li {
  font-size: 14px !important;
  font-weight: 450 !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  color: rgba(23, 23, 19, .72) !important;
}

html body.research-artifact-page .artifact-modal-kv span {
  font-size: 12px !important;
  font-weight: 560 !important;
  line-height: 1.35 !important;
  color: rgba(23, 23, 19, .52) !important;
}

html body.research-artifact-page .artifact-modal-kv strong {
  font-size: 13px !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
  color: rgba(23, 23, 19, .88) !important;
}

html body.product-research-page .modal-section,
html body.product-research-page .research-row,
html body.product-research-page .modal-footprint,
html body.product-research-page .modal-footprint__item {
  border: 0 !important;
  box-shadow: none !important;
}

/* Match the completed Ecosystem directory masthead and viewport frame. */
html body.research-artifact-page header.site-header,
html body.product-research-page header.site-header {
  height: 70px !important;
  background: #efeee9 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

html body.research-artifact-page header.site-header .home-logo-text,
html body.product-research-page header.site-header .home-logo-text {
  color: #171713 !important;
  font-family: "Korthos Bebas", "Bebas Neue", Impact, system-ui, sans-serif !important;
  font-size: 30px !important;
  font-weight: 400 !important;
  line-height: .94 !important;
  letter-spacing: .075em !important;
  text-transform: uppercase !important;
}

html body.research-artifact-page header.site-header nav.site-header-nav-desktop,
html body.product-research-page header.site-header nav.site-header-nav-desktop {
  display: flex !important;
  align-items: center !important;
  gap: 2px !important;
  min-height: 44px !important;
  padding: 5px !important;
  border: 1px solid rgba(17, 17, 15, .055) !important;
  border-radius: 16px !important;
  background: #faf9f6 !important;
  box-shadow: 0 14px 34px -30px rgba(17, 17, 15, .58) !important;
}

html body.research-artifact-page header.site-header nav.site-header-nav-desktop > a,
html body.product-research-page header.site-header nav.site-header-nav-desktop > a,
html body.research-artifact-page header.site-header nav.site-header-nav-desktop > .nav-dropdown > .nav-dropdown-toggle,
html body.product-research-page header.site-header nav.site-header-nav-desktop > .nav-dropdown > .nav-dropdown-toggle {
  min-height: 34px !important;
  height: 34px !important;
  padding: 0 10px !important;
  border-radius: 11px !important;
}

html body.research-artifact-page header.site-header nav.site-header-nav-desktop > a,
html body.product-research-page header.site-header nav.site-header-nav-desktop > a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

html body.research-artifact-page header.site-header nav.site-header-nav-desktop > a.active,
html body.product-research-page header.site-header nav.site-header-nav-desktop > a.active,
html body.research-artifact-page header.site-header nav.site-header-nav-desktop > .nav-dropdown > .nav-dropdown-toggle.active,
html body.product-research-page header.site-header nav.site-header-nav-desktop > .nav-dropdown > .nav-dropdown-toggle.active {
  background: #efeee8 !important;
  color: #171713 !important;
  box-shadow: 0 8px 20px -18px rgba(17, 17, 15, .6) !important;
}

@media (min-width: 901px) {
  html body.research-artifact-page {
    height: 100dvh !important;
    overflow: hidden !important;
  }

  html body.research-artifact-page:not(.product-research-page) .research-shell {
    height: calc(100dvh - 70px) !important;
    padding: 18px 20px 0 !important;
  }

  html body.research-artifact-page:not(.product-research-page) .supplier-directory-shell.research-layout {
    height: 100% !important;
    max-height: 100% !important;
    padding-bottom: 0 !important;
  }

  html body.product-research-page .directory-shell {
    height: calc(100dvh - 88px) !important;
    max-height: calc(100dvh - 88px) !important;
    margin: 18px 20px 0 !important;
    padding-bottom: 0 !important;
  }
}

/* Final frame position authority. */
@media (min-width: 901px) {
  html body.research-artifact-page:not(.product-research-page) .research-shell {
    height: calc(100dvh - 70px) !important;
    padding: 8px 20px 0 !important;
  }

  html body.research-artifact-page:not(.product-research-page) .supplier-directory-shell.research-layout {
    height: 100% !important;
    max-height: 100% !important;
    padding-top: 14px !important;
    padding-bottom: 0 !important;
  }

  html body.product-research-page .directory-shell {
    height: calc(100dvh - 78px) !important;
    max-height: calc(100dvh - 78px) !important;
    margin: 8px 20px 0 !important;
    padding-top: 14px !important;
    padding-bottom: 0 !important;
  }
}

/* Detail dialogs scroll as one complete document; no clipped nested body scroller. */
html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-modal__panel,
html body.product-research-page.product-research-page #modal.modal .panel {
  max-height: calc(100dvh - 36px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  scrollbar-width: thin !important;
}

html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-modal__body,
html body.product-research-page.product-research-page #modal.modal #modal-body,
html body.product-research-page.product-research-page #modal.modal .modal-body {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  overscroll-behavior: auto !important;
}

html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-modal__head,
html body.product-research-page.product-research-page #modal.modal .panel-head {
  position: sticky !important;
  top: 0 !important;
  z-index: 5 !important;
  background: #f0efe9 !important;
}

/* Artifact types use distinct semantic pastels rather than one repeated white pill. */
html body.research-artifact-page.research-artifact-page #artifact-results .research-artifact-card .artifact-card__badge--paper,
html body.research-artifact-page.research-artifact-page #artifact-modal .pill--artifact-paper {
  background: #d8e7ff !important;
  color: #171713 !important;
}

html body.research-artifact-page.research-artifact-page #artifact-results .research-artifact-card .artifact-card__badge--technical-report,
html body.research-artifact-page.research-artifact-page #artifact-results .research-artifact-card .artifact-card__badge--report,
html body.research-artifact-page.research-artifact-page #artifact-modal :where(.pill--artifact-technical-report, .pill--artifact-report) {
  background: #ffd9e3 !important;
  color: #171713 !important;
}

html body.research-artifact-page.research-artifact-page #artifact-results .research-artifact-card .artifact-card__badge--dataset,
html body.research-artifact-page.research-artifact-page #artifact-modal .pill--artifact-dataset {
  background: #d9f2e5 !important;
  color: #171713 !important;
}

html body.research-artifact-page.research-artifact-page #artifact-results .research-artifact-card .artifact-card__badge--model,
html body.research-artifact-page.research-artifact-page #artifact-modal .pill--artifact-model {
  background: #eadcff !important;
  color: #171713 !important;
}

html body.research-artifact-page.research-artifact-page #artifact-results .research-artifact-card .artifact-card__badge--benchmark,
html body.research-artifact-page.research-artifact-page #artifact-modal .pill--artifact-benchmark {
  background: #fff0b8 !important;
  color: #171713 !important;
}

html body.research-artifact-page.research-artifact-page #artifact-results .research-artifact-card :where(.artifact-card__badge--repository, .artifact-card__badge--repo),
html body.research-artifact-page.research-artifact-page #artifact-modal :where(.pill--artifact-repository, .pill--artifact-repo) {
  background: #d5f2ff !important;
  color: #171713 !important;
}

html body.research-artifact-page.research-artifact-page #artifact-results .research-artifact-card .artifact-card__badge--framework,
html body.research-artifact-page.research-artifact-page #artifact-modal .pill--artifact-framework {
  background: #d4f3f1 !important;
  color: #171713 !important;
}

html body.research-artifact-page.research-artifact-page #artifact-results .research-artifact-card :where(.artifact-card__badge--tool, .artifact-card__badge--code),
html body.research-artifact-page.research-artifact-page #artifact-modal :where(.pill--artifact-tool, .pill--artifact-code) {
  background: #e8f5c8 !important;
  color: #171713 !important;
}

/* Links use weight and interaction, never an underline, in directories or dialogs. */
html body.research-artifact-page :where(.research-shell, .artifact-modal, .corrections-modal) a,
html body.product-research-page :where(.directory-shell, .modal, .submit-modal) a,
html body.research-artifact-page :where(.research-shell, .artifact-modal, .corrections-modal) a:hover,
html body.product-research-page :where(.directory-shell, .modal, .submit-modal) a:hover,
html body.research-artifact-page :where(.research-shell, .artifact-modal, .corrections-modal) a:focus-visible,
html body.product-research-page :where(.directory-shell, .modal, .submit-modal) a:focus-visible {
  text-decoration: none !important;
}

/* Lock the directory behind the dialog; the complete popup scrolls inside one panel. */
html body.research-artifact-page.artifact-modal-open {
  overflow: hidden !important;
}

html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal,
html body.product-research-page.product-research-page #modal.modal {
  align-items: center !important;
  overflow: hidden !important;
  overscroll-behavior: none !important;
}

html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-modal__panel,
html body.product-research-page.product-research-page #modal.modal .panel {
  flex: 0 1 auto !important;
  height: auto !important;
  max-height: calc(100dvh - 32px) !important;
  margin: auto !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  scrollbar-width: none !important;
}

html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-modal__panel::-webkit-scrollbar,
html body.product-research-page.product-research-page #modal.modal .panel::-webkit-scrollbar {
  display: none !important;
}

html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-modal__body,
html body.product-research-page.product-research-page #modal.modal #modal-body,
html body.product-research-page.product-research-page #modal.modal .modal-body {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}

html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-modal__head,
html body.product-research-page.product-research-page #modal.modal .panel-head {
  position: relative !important;
  top: auto !important;
}

/* Dark actions always retain white labels after the global black-text hierarchy. */
html body.research-artifact-page :where(
  .research-submit-top,
  .view-toggle button.is-active,
  .artifact-view-toggle button[aria-pressed="true"],
  .supplier-card__action,
  .artifact-detail-card--actions .artifact-modal__link,
  .artifact-modal__link--primary
),
html body.research-artifact-page :where(
  .research-submit-top,
  .view-toggle button.is-active,
  .artifact-view-toggle button[aria-pressed="true"],
  .supplier-card__action,
  .artifact-detail-card--actions .artifact-modal__link,
  .artifact-modal__link--primary
) *,
html body.product-research-page :where(
  .submit-btn,
  .view button.is-active,
  .info,
  .modal-actions a:first-child
),
html body.product-research-page :where(
  .submit-btn,
  .view button.is-active,
  .info,
  .modal-actions a:first-child
) * {
  color: #fff !important;
}

html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-detail-card--actions .artifact-modal__link,
html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-modal__link--primary,
html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-detail-card--actions .artifact-modal__link * ,
html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-modal__link--primary * {
  color: #fff !important;
}

/* Product Research quick view: compact header, direct media, one clean content surface. */
html body.product-research-page.product-research-page #modal.modal .panel {
  width: min(920px, calc(100vw - 32px)) !important;
}

html body.product-research-page.product-research-page #modal.modal .panel-head {
  display: block !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 26px 72px 20px 26px !important;
}

html body.product-research-page.product-research-page #modal.modal .modal-eyebrow {
  margin: 0 0 7px !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  line-height: 1.2 !important;
  color: #171713 !important;
}

html body.product-research-page.product-research-page #modal.modal .modal-title,
html body.product-research-page.product-research-page #modal.modal #modal-title {
  margin: 0 !important;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
  font-size: 32px !important;
  font-weight: 760 !important;
  line-height: 1.05 !important;
  letter-spacing: -.025em !important;
  color: #171713 !important;
}

html body.product-research-page.product-research-page #modal.modal .modal-sub,
html body.product-research-page.product-research-page #modal.modal #modal-sub {
  margin-top: 8px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  color: #171713 !important;
}

html body.product-research-page.product-research-page #modal.modal .close {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 0 !important;
}

html body.product-research-page.product-research-page #modal.modal .close::before {
  content: "×";
  font-size: 22px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
}

html body.product-research-page.product-research-page #modal.modal #modal-body {
  margin: 0 18px 18px !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body.product-research-page.product-research-page #modal.modal .modal-media {
  width: min(660px, 100%) !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  max-width: 660px !important;
  max-height: min(372px, 44dvh) !important;
  margin: 0 auto 18px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.product-research-page.product-research-page #modal.modal .modal-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 16px !important;
}

html body.product-research-page.product-research-page #modal.modal .modal-section {
  margin: 0 0 12px !important;
  padding: 20px 22px !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: #faf9f6 !important;
  box-shadow: none !important;
}

html body.product-research-page.product-research-page #modal.modal .modal-section:last-child {
  margin-bottom: 0 !important;
}

html body.product-research-page.product-research-page #modal.modal .modal-label {
  margin: 0 0 10px !important;
  font-size: 15px !important;
  font-weight: 750 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: #171713 !important;
}

html body.product-research-page.product-research-page #modal.modal :where(
  .modal-copy,
  .research-row,
  .research-row a,
  .modal-footprint__item span,
  .modal-filter-field > span
) {
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
  color: #171713 !important;
  letter-spacing: 0 !important;
}

@media (max-width: 700px) {
  html body.product-research-page.product-research-page #modal.modal .modal-media {
    width: 100% !important;
    max-height: 260px !important;
  }

  html body.product-research-page.product-research-page #modal.modal .modal-section {
    padding: 18px !important;
  }
}

/* Mobile research table: turn desktop columns into one complete, readable row.
   The page hides horizontal overflow, so retaining the desktop track widths
   silently cropped Type, Platform and Capability outside the phone viewport. */
@media (max-width: 900px) {
  html body.research-artifact-page .artifact-compact-list {
    width: 100% !important;
    overflow: hidden !important;
  }

  html body.research-artifact-page .artifact-compact-head {
    display: none !important;
  }

  html body.research-artifact-page .artifact-compact-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas:
      "primary type"
      "platform platform"
      "capability capability" !important;
    gap: 10px 12px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 14px !important;
    align-items: start !important;
  }

  html body.research-artifact-page .artifact-compact-primary {
    grid-area: primary !important;
    grid-template-columns: 76px minmax(0, 1fr) !important;
    gap: 10px !important;
    min-width: 0 !important;
  }

  html body.research-artifact-page .artifact-compact-thumb {
    width: 76px !important;
  }

  html body.research-artifact-page .artifact-compact-row > .artifact-compact-cell:nth-child(2) {
    grid-area: type !important;
  }

  html body.research-artifact-page .artifact-compact-row > .artifact-compact-cell:nth-child(3) {
    grid-area: platform !important;
  }

  html body.research-artifact-page .artifact-compact-row > .artifact-compact-cell:nth-child(4) {
    display: none !important;
  }

  html body.research-artifact-page .artifact-compact-row > .artifact-compact-cell:nth-child(5) {
    grid-area: capability !important;
  }

  html body.research-artifact-page .artifact-compact-row__title strong,
  html body.research-artifact-page .artifact-compact-row__title span,
  html body.research-artifact-page .artifact-compact-cell strong {
    max-width: 100% !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
}

/* Final Product Directory card parity for both research directories. */
html body.research-artifact-page #artifact-results.card-grid {
  align-items: start !important;
  gap: 18px 14px !important;
}

html body.research-artifact-page #artifact-results.card-grid .supplier-card.artifact-card.research-artifact-card {
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: #fbfaf7 !important;
  box-shadow: none !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .supplier-card__visual {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #efeee9 !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .supplier-card__visual img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__media-label {
  display: flex !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 22px !important;
  color: rgba(23, 23, 19, .72) !important;
  font-size: 20px !important;
  font-weight: 750 !important;
  line-height: 1.08 !important;
  text-align: center !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .supplier-card__body {
  display: block !important;
  flex: 0 0 auto !important;
  min-height: 136px !important;
  padding: 14px 16px 16px !important;
  background: #fbfaf7 !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .supplier-card__body-link {
  display: flex !important;
  min-width: 0 !important;
  height: 100% !important;
  flex-direction: column !important;
  color: #171713 !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__body-title {
  display: -webkit-box !important;
  min-height: 38px !important;
  margin: 0 !important;
  overflow: hidden !important;
  color: #171713 !important;
  font-size: 15px !important;
  font-weight: 750 !important;
  line-height: 1.25 !important;
  letter-spacing: -.01em !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__record {
  display: flex !important;
  min-width: 0 !important;
  margin-top: 7px !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px 6px !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field {
  display: inline-flex !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 26px !important;
  margin: 0 !important;
  padding: 5px 9px !important;
  align-items: center !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #dceee5 !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source {
  display: grid !important;
  width: 100% !important;
  min-height: 0 !important;
  padding: 0 !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 6px !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source > span {
  grid-column: 1 / -1 !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field > span {
  display: none !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field strong {
  min-width: 0 !important;
  overflow: hidden !important;
  color: #171713 !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  line-height: 1 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source strong {
  color: rgba(23, 23, 19, .58) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source em {
  color: rgba(23, 23, 19, .48) !important;
  font-size: 10px !important;
  font-style: normal !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  white-space: nowrap !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field:nth-child(2) {
  background: #dce8fb !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-actions {
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

@media (max-width: 620px) {
  html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .supplier-card__body {
    min-height: 130px !important;
    padding: 12px 13px 14px !important;
  }

  html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__body-title {
    min-height: 35px !important;
    font-size: 14px !important;
  }

  html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field {
    max-width: 100% !important;
    min-height: 24px !important;
    padding: 4px 7px !important;
  }
}

html body.product-research-page.product-research-page #modal.modal .modal-actions a,
html body.product-research-page.product-research-page #modal.modal .modal-actions a:first-child,
html body.product-research-page.product-research-page #modal.modal .modal-actions a *,
html body.product-research-page.product-research-page #modal.modal .modal-actions a:first-child * {
  border: 0 !important;
  background: transparent !important;
  color: #171713 !important;
}

html body.product-research-page.product-research-page #modal.modal .modal-actions a:hover,
html body.product-research-page.product-research-page #modal.modal .modal-actions a:focus-visible {
  background: transparent !important;
  color: #24583c !important;
  outline: none !important;
}

/* Remove the last square legacy controls from the product-research quick view. */
html body.product-research-page.product-research-page #modal.modal .research-list-action button {
  min-height: 38px !important;
  height: auto !important;
  padding: 8px 15px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: #dfece5 !important;
  color: #171713 !important;
  box-shadow: none !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.product-research-page.product-research-page #modal.modal .research-list-action button:hover,
html body.product-research-page.product-research-page #modal.modal .research-list-action button:focus-visible {
  border-radius: 12px !important;
  background: #d3e4da !important;
  color: #171713 !important;
  outline: none !important;
  box-shadow: none !important;
  transform: none !important;
}

html body.product-research-page.product-research-page #modal.modal .modal-chip-grid span {
  border-radius: 999px !important;
}

html body.product-research-page.product-research-page #modal.modal .modal-actions a,
html body.product-research-page.product-research-page #modal.modal .modal-filter-trigger,
html body.product-research-page.product-research-page #modal.modal .modal-filter-menu {
  border-radius: 12px !important;
}

/* Compact research dialogs match the product-directory quick view without cropping media. */
html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-modal__panel,
html body.product-research-page.product-research-page #modal.modal .panel {
  width: min(712px, calc(100vw - 32px)) !important;
  max-width: min(712px, calc(100vw - 32px)) !important;
}

html body.product-research-page.product-research-page #modal.modal .modal-media {
  width: min(660px, 100%) !important;
  height: auto !important;
  max-width: 660px !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
}

html body.product-research-page.product-research-page #modal.modal .modal-media img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center !important;
}

html body.research-artifact-page.research-artifact-page #artifact-modal .artifact-modal__media img,
html body.research-artifact-page.research-artifact-page #artifact-modal .artifact-modal-entity-card__media img {
  object-fit: contain !important;
  object-position: center !important;
}

/* Final research-directory interaction authority. */
html body.product-research-page .card,
html body.research-artifact-page .research-artifact-card,
html body.research-artifact-page .artifact-compact-row {
  position: relative !important;
  cursor: pointer !important;
  transition: transform 160ms ease, box-shadow 160ms ease, background-color 160ms ease !important;
}

/* Keep quick views available through the whole card without a visible black button. */
html body.product-research-page .card .info,
html body.research-artifact-page .research-artifact-card .artifact-details {
  position: absolute !important;
  inset: 0 !important;
  z-index: 3 !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: transparent !important;
}

html body.product-research-page .card :is(a, .product-card-watch),
html body.research-artifact-page .research-artifact-card :is(a, .product-card-watch) {
  position: relative !important;
  z-index: 2 !important;
}

html body.product-research-page .card .product-card-watch,
html body.research-artifact-page .research-artifact-card .product-card-watch {
  z-index: 4 !important;
}

html body.product-research-page .card .body,
html body.research-artifact-page .research-artifact-card .supplier-card__body {
  position: static !important;
}

@media (hover: hover) and (pointer: fine) {
  html body.product-research-page .card:hover,
  html body.research-artifact-page .research-artifact-card:hover {
    background: #fffefa !important;
    box-shadow: 0 15px 30px rgba(31, 29, 24, .105) !important;
    transform: translateY(-3px) !important;
  }

  html body.research-artifact-page .artifact-compact-row:hover {
    background: #fffefa !important;
    box-shadow: 0 10px 22px rgba(31, 29, 24, .07) !important;
    transform: translateY(-1px) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body.product-research-page .card,
  html body.research-artifact-page :is(.research-artifact-card, .artifact-compact-row) {
    transition: background-color 120ms ease !important;
    transform: none !important;
  }
}

/* Final research quickview tuning authority. */
html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-modal__panel,
html body.product-research-page.product-research-page #modal.modal .panel {
  width: min(860px, calc(100vw - 32px)) !important;
  max-width: min(860px, calc(100vw - 32px)) !important;
  border-radius: 24px !important;
}

html body.research-artifact-page #artifact-modal :is(a, a:link, a:visited, a:hover, a:focus, a:active),
html body.product-research-page #modal :is(a, a:link, a:visited, a:hover, a:focus, a:active) {
  text-decoration: none !important;
  text-decoration-line: none !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal-entity-cards {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal-entity-card {
  display: grid !important;
  grid-template-columns: 144px minmax(0, 1fr) !important;
  grid-template-areas: "media kind" "media name" "media desc" "media action" !important;
  min-height: 142px !important;
  padding: 12px !important;
  gap: 4px 14px !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: #fbfaf7 !important;
  box-shadow: none !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal-entity-card__media {
  grid-area: media !important;
  width: 144px !important;
  height: 112px !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  background: #efeee9 !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal-entity-card__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal-entity-card em {
  color: #2f684d !important;
  font-style: normal !important;
  text-decoration: none !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal-lower-grid {
  grid-template-columns: minmax(0, 1.15fr) minmax(250px, .85fr) !important;
  gap: 14px !important;
}

html body.research-artifact-page #artifact-modal .artifact-detail-card--authorship,
html body.research-artifact-page #artifact-modal .artifact-detail-card--actions {
  padding: 18px !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: #fbfaf7 !important;
  box-shadow: none !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal-kv strong {
  overflow-wrap: anywhere !important;
  line-height: 1.45 !important;
}

html body.research-artifact-page #artifact-modal .artifact-detail-card--actions .artifact-modal__link,
html body.research-artifact-page #artifact-modal .artifact-detail-card--actions .artifact-modal__link--primary {
  width: fit-content !important;
  min-height: 0 !important;
  padding: 5px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #171713 !important;
  box-shadow: none !important;
}

html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-detail-card--actions :is(a, button).artifact-modal__link,
html body.research-artifact-page.research-artifact-page #artifact-modal.artifact-modal .artifact-detail-card--actions :is(a, button).artifact-modal__link * {
  color: #171713 !important;
  opacity: 1 !important;
}

html body.research-artifact-page #artifact-modal .artifact-detail-card--actions .artifact-modal__link:hover,
html body.research-artifact-page #artifact-modal .artifact-detail-card--actions .artifact-modal__link:focus-visible {
  background: transparent !important;
  color: #24583c !important;
}

html body.product-research-page #modal.modal .modal-body {
  margin-right: 18px !important;
  margin-left: 18px !important;
}

html body.product-research-page #modal.modal .modal-media {
  width: min(808px, 100%) !important;
  max-width: 808px !important;
}

@media (max-width: 700px) {
  html body.research-artifact-page.research-artifact-page #artifact-modal#artifact-modal.artifact-modal .artifact-modal__panel,
  html body.product-research-page.product-research-page #modal#modal.modal .panel {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    border-radius: 20px !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal-entity-cards,
  html body.research-artifact-page #artifact-modal .artifact-modal-lower-grid {
    grid-template-columns: 1fr !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal-entity-card {
    grid-template-columns: 112px minmax(0, 1fr) !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal-entity-card__media {
    width: 112px !important;
    height: 96px !important;
  }

  html body.product-research-page #modal.modal .modal-body {
    margin-right: 10px !important;
    margin-left: 10px !important;
  }
}

/* Final whole-card quickview hit target: legacy button sizing must never win. */
html body.product-research-page.product-research-page #grid.grid .card .info,
html body.research-artifact-page.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-details {
  position: absolute !important;
  inset: 0 !important;
  z-index: 3 !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: transparent !important;
  color: transparent !important;
}

html body.product-research-page.product-research-page #grid.grid .card .product-card-watch,
html body.research-artifact-page.research-artifact-page #artifact-results.card-grid .research-artifact-card .product-card-watch {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  margin: 0 !important;
  z-index: 4 !important;
}

/* Company-directory card parity: one uninterrupted rounded shell, media first,
   then a labelled two-column research record. */
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__badge-row {
  display: none !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__record {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px 14px !important;
  margin-top: 13px !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field,
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source {
  display: flex !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  align-items: flex-start !important;
  flex-direction: column !important;
  gap: 5px !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 8px !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field > span {
  display: block !important;
  color: rgba(23, 23, 19, .42) !important;
  font-size: 9px !important;
  font-weight: 720 !important;
  letter-spacing: .075em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field strong {
  display: block !important;
  max-width: 100% !important;
  overflow: visible !important;
  color: #171713 !important;
  font-size: 11px !important;
  font-weight: 670 !important;
  line-height: 1.25 !important;
  text-overflow: clip !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source strong {
  color: rgba(23, 23, 19, .58) !important;
  font-weight: 520 !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source em {
  align-self: end !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--type strong {
  display: inline-flex !important;
  width: fit-content !important;
  min-height: 25px !important;
  align-items: center !important;
  padding: 5px 10px !important;
  border-radius: 999px !important;
  background: #d8e7ff !important;
  line-height: 1 !important;
  max-width: 100% !important;
  justify-content: center !important;
  font-size: 10px !important;
  text-align: center !important;
  white-space: normal !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--type {
  background: transparent !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--type[data-research-type="dataset"] strong { background: #d9f2e5 !important; }
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--type[data-research-type="model"] strong { background: #eadcff !important; }
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--type[data-research-type="benchmark"] strong { background: #fff0b8 !important; }
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--type[data-research-type="technical-report"] strong { background: #ffd9e3 !important; }
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--type[data-research-type="repository"] strong { background: #d5f2ff !important; }

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .supplier-card__body {
  min-height: 190px !important;
}

@media (max-width: 620px) {
  html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__record {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source {
    grid-column: auto !important;
  }
}

/* Research artifact recovery: restore the Product Directory card hierarchy. */
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .supplier-card__body {
  min-height: 158px !important;
  padding: 16px !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__record {
  display: flex !important;
  margin-top: 9px !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field,
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source {
  display: inline-flex !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  align-items: center !important;
  flex-direction: row !important;
  gap: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field > span {
  display: none !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source {
  display: grid !important;
  width: 100% !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 8px !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source strong {
  overflow: hidden !important;
  color: rgba(23, 23, 19, .62) !important;
  font-size: 11.5px !important;
  font-weight: 520 !important;
  line-height: 1.3 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source em {
  align-self: center !important;
  color: rgba(23, 23, 19, .5) !important;
  font-size: 10.5px !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--type strong,
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--context strong {
  display: inline-flex !important;
  width: fit-content !important;
  min-height: 26px !important;
  max-width: 100% !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 5px 10px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #171713 !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  line-height: 1.2 !important;
  text-align: left !important;
  white-space: normal !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--context strong {
  background: #dceee5 !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field:last-child {
  width: 100% !important;
}

html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field:last-child strong {
  color: rgba(23, 23, 19, .7) !important;
  font-size: 11.5px !important;
  font-weight: 550 !important;
  line-height: 1.3 !important;
}

/* Research card metadata correction: only the artifact type is a pill. */
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--type[data-research-type] {
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
}
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--type[data-research-type] strong {
  min-height:26px !important;
  padding:5px 10px !important;
  border:0 !important;
  border-radius:999px !important;
}
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--context strong {
  min-height:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:rgba(23,23,19,.72) !important;
  font-size:11px !important;
  font-weight:650 !important;
}

/* Research popup media is direct, bounded 16:9 imagery without an inset plate. */

/* Research capability taxonomy: the capability/topic is the second semantic
   pill in both cards and table rows. Product bindings remain plain text. */
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--capability {
  width:auto !important;
}
html body.research-artifact-page .artifact-capability-pills {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:6px !important;
  min-width:0 !important;
}
html body.research-artifact-page .artifact-capability-pill {
  display:inline-flex !important;
  min-width:0 !important;
}
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--capability strong,
html body.research-artifact-page .artifact-compact-cell--capability strong {
  display:inline-flex !important;
  width:fit-content !important;
  max-width:100% !important;
  min-height:26px !important;
  align-items:center !important;
  padding:5px 10px !important;
  border:0 !important;
  border-radius:999px !important;
  color:#171713 !important;
  font-size:10px !important;
  font-weight:650 !important;
  line-height:1.2 !important;
  white-space:normal !important;
}
html body.research-artifact-page [data-capability-tone="mobility"] strong { background:#d8e7ff !important; }
html body.research-artifact-page [data-capability-tone="manipulation"] strong { background:#d9f2e5 !important; }
html body.research-artifact-page [data-capability-tone="autonomy"] strong { background:#eadcff !important; }
html body.research-artifact-page [data-capability-tone="perception"] strong { background:#d5f2ff !important; }
html body.research-artifact-page [data-capability-tone="learning"] strong { background:#fff0b8 !important; }
html body.research-artifact-page [data-capability-tone="evaluation"] strong { background:#ffdfe0 !important; }
html body.research-artifact-page [data-capability-tone="tone-0"] strong { background:#dceee5 !important; }
html body.research-artifact-page [data-capability-tone="tone-1"] strong { background:#dce8f8 !important; }
html body.research-artifact-page [data-capability-tone="tone-2"] strong { background:#eadff2 !important; }
html body.research-artifact-page [data-capability-tone="tone-3"] strong { background:#f7e2dc !important; }
html body.research-artifact-page [data-capability-tone="tone-4"] strong { background:#e3eddc !important; }
html body.research-artifact-page [data-capability-tone="tone-5"] strong { background:#f5ebc9 !important; }

/* Type pills carry their own semantic palette in both card and table views. */
html body.research-artifact-page [data-research-type="paper"] > strong { background:#d8e7ff !important; }
html body.research-artifact-page [data-research-type="technical-report"] > strong,
html body.research-artifact-page [data-research-type="report"] > strong { background:#ffd9e3 !important; }
html body.research-artifact-page [data-research-type="dataset"] > strong { background:#d9f2e5 !important; }
html body.research-artifact-page [data-research-type="model"] > strong { background:#eadcff !important; }
html body.research-artifact-page [data-research-type="benchmark"] > strong { background:#fff0b8 !important; }
html body.research-artifact-page [data-research-type="repo"] > strong,
html body.research-artifact-page [data-research-type="repository"] > strong { background:#d5f2ff !important; }
html body.research-artifact-page [data-research-type="framework"] > strong { background:#d4f3f1 !important; }
html body.research-artifact-page [data-research-type="tool"] > strong { background:#e8f5c8 !important; }
html body.research-artifact-page #artifact-modal .artifact-modal__media,
html body.product-research-page #modal.modal .modal-media {
  width: min(660px, 100%) !important;
  height: auto !important;
  max-width: 660px !important;
  max-height: none !important;
  aspect-ratio: 16 / 9 !important;
  margin: 0 auto 18px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal__media img,
html body.product-research-page #modal.modal .modal-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 16px !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal-entity-card {
  grid-template-columns: 176px minmax(0, 1fr) !important;
  grid-template-areas: "media kind" "media name" "media desc" "media action" !important;
  min-height: 99px !important;
  padding: 0 !important;
  gap: 3px 14px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal-entity-card__media {
  width: 176px !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.research-artifact-page #artifact-modal .artifact-modal-entity-card__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 14px !important;
}

@media (max-width: 700px) {
  html body.research-artifact-page #artifact-modal .artifact-modal-entity-card {
    grid-template-columns: 1fr !important;
    grid-template-areas: "media" "kind" "name" "desc" "action" !important;
    gap: 7px !important;
  }

  html body.research-artifact-page #artifact-modal .artifact-modal-entity-card__media {
    width: 100% !important;
  }
}

/* Final mobile authority: compact two-up cards still show complete stat labels. */
@media (max-width: 520px) {
  html body.product-research-page .card .stats {
    gap: 3px !important;
  }
  html body.product-research-page .card .stats span {
    overflow: visible !important;
    font-size: 7px !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    text-overflow: clip !important;
  }
}

/* Final mobile two-up lock after all legacy research-directory rules. */
@media (max-width: 620px) {
  html body.research-artifact-page #artifact-results.card-grid,
  html body.research-artifact-page #artifact-results.artifact-grid,
  html body.research-artifact-page #artifact-results.artifact-grid.card-grid {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--capability {
    display:flex !important;
    width:100% !important;
    height:auto !important;
    min-height:21px !important;
    overflow:visible !important;
  }
  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-capability-pills {
    display:flex !important;
    width:100% !important;
    height:auto !important;
    min-height:21px !important;
    gap:5px !important;
    overflow:hidden !important;
    flex-wrap:nowrap !important;
  }
  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-capability-pill,
  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-capability-pill strong {
    display:inline-flex !important;
    width:auto !important;
    height:auto !important;
    min-height:21px !important;
  }
  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-capability-pill strong {
    min-width:0 !important;
    padding:4px 8px !important;
    overflow:hidden !important;
    font-size:8px !important;
    line-height:1.1 !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
}

/* Search fields use a quiet surface change, never a doubled focus halo. */
html body.research-artifact-page .research-toolbar input:is(:hover, :focus, :focus-visible),
html body.research-artifact-page .supplier-searchbar input:is(:hover, :focus, :focus-visible),
html body.product-research-page .toolbar input:is(:hover, :focus, :focus-visible),
html body.product-research-page .bar input:is(:hover, :focus, :focus-visible) {
  outline:0 !important;
  border-color:transparent !important;
  box-shadow:none !important;
}

/* Research-artifact mobile parity: a clean directory toolbar and one readable
   card per row. The card itself owns the quickview interaction. */
html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-actions {
  display:contents !important;
}

@media (max-width: 620px) {
  html body.research-artifact-page.supplier-directory-page main .supplier-searchbar.research-toolbar {
    display:flex !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }

  html body.research-artifact-page.supplier-directory-page main .supplier-searchbar.research-toolbar .field--search {
    flex:0 0 100% !important;
    max-width:100% !important;
  }

  html body.research-artifact-page.supplier-directory-page main .supplier-searchbar.research-toolbar .field--window {
    flex:0 0 calc(50% - 4px) !important;
    max-width:calc(50% - 4px) !important;
  }

  html body.research-artifact-page.supplier-directory-page main .supplier-searchbar.research-toolbar .field--sort {
    flex:0 0 calc(50% - 4px) !important;
    max-width:calc(50% - 4px) !important;
  }

  html body.research-artifact-page.supplier-directory-page main .supplier-searchbar.research-toolbar .research-submit-top {
    flex:0 0 calc(50% - 4px) !important;
    max-width:calc(50% - 4px) !important;
  }

  html body.research-artifact-page.supplier-directory-page main .supplier-searchbar.research-toolbar .filter-drawer-toggle {
    flex:0 0 calc(50% - 4px) !important;
    max-width:calc(50% - 4px) !important;
  }

  html body.research-artifact-page.supplier-directory-page main .supplier-searchbar.research-toolbar :is(.field, input, select, .research-submit-top, .filter-drawer-toggle) {
    width:100% !important;
    min-width:0 !important;
    height:44px !important;
    min-height:44px !important;
    margin:0 !important;
    border:0 !important;
    border-radius:14px !important;
    box-shadow:none !important;
  }

  html body.research-artifact-page.supplier-directory-page main .supplier-searchbar.research-toolbar :is(input, select) {
    background:#f2f0ea !important;
  }

  html body.research-artifact-page.supplier-directory-page main .supplier-searchbar.research-toolbar .research-submit-top {
    justify-content:center !important;
    padding:0 14px !important;
    background:#171713 !important;
    color:#fff !important;
  }

  html body.research-artifact-page.supplier-directory-page main .supplier-searchbar.research-toolbar .filter-drawer-toggle {
    position:static !important;
    z-index:auto !important;
    justify-content:center !important;
    background:#171713 !important;
    color:#fff !important;
  }

  html body.research-artifact-page #artifact-results.card-grid,
  html body.research-artifact-page #artifact-results.artifact-grid,
  html body.research-artifact-page #artifact-results.artifact-grid.card-grid {
    grid-template-columns:minmax(0,1fr) !important;
    gap:12px !important;
  }

  html body.research-artifact-page.supplier-directory-page #artifact-results.card-grid .research-artifact-card .k-watch.product-card-watch {
    top:10px !important;
    right:10px !important;
    width:32px !important;
    min-width:32px !important;
    max-width:32px !important;
    height:32px !important;
    min-height:32px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:999px !important;
    background:#faece8 !important;
  }

  html body.research-artifact-page.supplier-directory-page #artifact-results.card-grid .research-artifact-card .k-watch.product-card-watch .k-watch__icon {
    display:block !important;
    margin:0 !important;
    color:#a64b3e !important;
    font-family:Arial,sans-serif !important;
    font-size:16px !important;
    font-weight:400 !important;
    line-height:1 !important;
    transform:none !important;
  }

  html body.research-artifact-page.supplier-directory-page #artifact-results.card-grid .research-artifact-card .artifact-card__field.artifact-card__field--source {
    display:flex !important;
    width:100% !important;
    align-items:flex-start !important;
    flex-direction:column !important;
    gap:3px !important;
  }

  html body.research-artifact-page.supplier-directory-page #artifact-results.card-grid .research-artifact-card .artifact-card__field.artifact-card__field--source strong,
  html body.research-artifact-page.supplier-directory-page #artifact-results.card-grid .research-artifact-card .artifact-card__field.artifact-card__field--source em {
    display:block !important;
    width:100% !important;
    overflow:visible !important;
    align-self:auto !important;
    text-overflow:clip !important;
    white-space:normal !important;
  }
}

/* Final mobile research quickview lock: neutralise the legacy translated grids
   so every module shares the panel's content edge. */
@media (max-width: 700px) {
  html body.research-artifact-page #artifact-modal.artifact-modal {
    align-items:flex-start !important;
    padding:8px !important;
    overflow:hidden !important;
  }
  html body.research-artifact-page #artifact-modal .artifact-modal__panel {
    box-sizing:border-box !important;
    width:calc(100vw - 16px) !important;
    max-width:calc(100vw - 16px) !important;
    max-height:calc(100dvh - 16px) !important;
    margin:0 !important;
    overflow-x:hidden !important;
    overflow-y:auto !important;
    border-radius:20px !important;
    background:#faf9f6 !important;
  }
  html body.research-artifact-page #artifact-modal .artifact-modal__head {
    position:relative !important;
    padding:18px 50px 16px 18px !important;
    border:0 !important;
    background:#faf9f6 !important;
  }
  html body.research-artifact-page #artifact-modal .artifact-modal__title {
    max-width:100% !important;
    margin-top:12px !important;
    font-size:24px !important;
    line-height:1.02 !important;
    letter-spacing:-.035em !important;
    overflow-wrap:anywhere !important;
  }
  html body.research-artifact-page #artifact-modal .artifact-modal__body {
    box-sizing:border-box !important;
    width:100% !important;
    padding:0 18px 18px !important;
    overflow:visible !important;
  }
  html body.research-artifact-page #artifact-modal :is(.artifact-modal-top-grid,.artifact-modal-lower-grid,.artifact-modal-main-column,.artifact-modal-side-column) {
    box-sizing:border-box !important;
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    transform:none !important;
  }
  html body.research-artifact-page #artifact-modal :is(.artifact-modal-top-grid,.artifact-modal-lower-grid) {
    grid-template-columns:minmax(0,1fr) !important;
    gap:10px !important;
  }
  html body.research-artifact-page #artifact-modal .artifact-detail-card {
    box-sizing:border-box !important;
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:16px !important;
    border:0 !important;
    border-radius:16px !important;
    background:#f2f0ea !important;
    box-shadow:none !important;
  }
  html body.research-artifact-page #artifact-modal :is(.artifact-modal-entity-card,.artifact-modal-entity-card__media,.artifact-modal__links) {
    box-sizing:border-box !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }
}

/* Desktop research-card legibility: artifact titles and attribution need more
   horizontal room than product cards. Three balanced columns keep the record
   readable while the existing mobile record-list authority remains untouched. */
@media (min-width: 901px) {
  html body.research-artifact-page #artifact-results.card-grid,
  html body.research-artifact-page #artifact-results.artifact-grid:not(:has(.artifact-compact-row)) {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }

  html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .supplier-card__body {
    min-height: 196px !important;
    padding: 17px 18px 18px !important;
  }

  html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__body-title {
    min-height: 58px !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    -webkit-line-clamp: 3 !important;
  }

  html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source {
    display: flex !important;
    width: 100% !important;
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 3px !important;
  }

  html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source strong,
  html body.research-artifact-page #artifact-results.card-grid .research-artifact-card .artifact-card__field--source em {
    display: block !important;
    width: 100% !important;
    overflow: visible !important;
    align-self: auto !important;
    text-overflow: clip !important;
    white-space: normal !important;
  }
}

/* Final mobile record-list authority. This intentionally sits after every
   legacy card rule so the phone layout cannot fall back to image-led cards. */
@media (max-width: 620px) {
  html body.research-artifact-page #artifact-results.card-grid,
  html body.research-artifact-page #artifact-results.artifact-grid,
  html body.research-artifact-page #artifact-results.artifact-grid.card-grid {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:9px !important;
  }

  html body.research-artifact-page #artifact-results .supplier-card.artifact-card.research-artifact-card {
    display:grid !important;
    grid-template-columns:94px minmax(0,1fr) !important;
    grid-template-rows:auto !important;
    min-height:156px !important;
    overflow:hidden !important;
    border:0 !important;
    border-radius:17px !important;
    background:#fffdfa !important;
    box-shadow:none !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .supplier-card__visual,
  html body.research-artifact-page #artifact-results .research-artifact-card:not(.artifact-card--has-image) .supplier-card__visual {
    grid-column:1 !important;
    grid-row:1 !important;
    align-self:stretch !important;
    width:94px !important;
    min-width:94px !important;
    height:100% !important;
    min-height:156px !important;
    aspect-ratio:auto !important;
    overflow:hidden !important;
    border-radius:17px 0 0 17px !important;
    background:#eeece6 !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__image {
    width:100% !important;
    height:100% !important;
    min-height:156px !important;
    object-fit:cover !important;
    object-position:center !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__badge-row,
  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-actions {
    display:none !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .supplier-card__body {
    box-sizing:border-box !important;
    display:flex !important;
    grid-column:2 !important;
    grid-row:1 !important;
    width:100% !important;
    min-width:0 !important;
    min-height:156px !important;
    padding:13px 40px 12px 13px !important;
    background:#fffdfa !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .supplier-card__body-link {
    display:flex !important;
    width:100% !important;
    min-width:0 !important;
    flex-direction:column !important;
    gap:8px !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__body-title {
    display:-webkit-box !important;
    margin:0 !important;
    overflow:hidden !important;
    color:#171713 !important;
    font-size:13px !important;
    font-weight:750 !important;
    line-height:1.2 !important;
    letter-spacing:-.018em !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:3 !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__record {
    display:flex !important;
    width:100% !important;
    min-width:0 !important;
    margin-top:auto !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:6px 8px !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field,
  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source {
    display:flex !important;
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    align-items:center !important;
    flex:0 0 auto !important;
    gap:6px !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field > span {
    display:none !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source {
    width:100% !important;
    align-items:flex-start !important;
    flex-direction:column !important;
    gap:2px !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source strong,
  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source em {
    display:block !important;
    width:100% !important;
    overflow:hidden !important;
    color:#6f6d67 !important;
    font-style:normal !important;
    font-weight:500 !important;
    line-height:1.2 !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source strong { font-size:10.5px !important; }
  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--source em { color:#918f88 !important; font-size:9.5px !important; }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--type strong {
    min-height:22px !important;
    padding:5px 8px !important;
    border:0 !important;
    border-radius:999px !important;
    font-size:8.5px !important;
    line-height:1 !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--context strong {
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:#57554f !important;
    font-size:9px !important;
    font-weight:650 !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-card__field--capability {
    width:100% !important;
    flex:0 0 100% !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-capability-pills {
    display:flex !important;
    width:100% !important;
    min-width:0 !important;
    flex-wrap:nowrap !important;
    gap:5px !important;
    overflow:hidden !important;
  }

  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-capability-pill { min-width:0 !important; }
  html body.research-artifact-page #artifact-results .research-artifact-card .artifact-capability-pill strong {
    display:block !important;
    min-height:20px !important;
    padding:4px 7px !important;
    overflow:hidden !important;
    border:0 !important;
    border-radius:999px !important;
    font-size:7.5px !important;
    line-height:1.1 !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  html body.research-artifact-page.supplier-directory-page #artifact-results.card-grid .research-artifact-card .k-watch.product-card-watch {
    top:9px !important;
    right:9px !important;
    width:28px !important;
    min-width:28px !important;
    max-width:28px !important;
    height:28px !important;
    min-height:28px !important;
  }
}
