/* CIR registry and shared JSON card. */
body.dsi-unique-view:not(.account-view) {
  --accent: #075be4;
  --blue: #075be4;
  --blue-soft: #eaf2ff;
  --ink: #112443;
  --muted: #5d6e89;
  --border: #dce5f2;
  background: #f7faff;
}
body.dsi-unique-view:not(.account-view) .top {
  position: sticky;
  top: 0;
  z-index: 35;
  min-height: 64px;
  background: #fff;
  border-bottom: 1px solid #dce5f2;
  box-shadow: 0 1px 8px #1c3b7010;
  gap: 14px;
}
body.dsi-unique-view:not(.account-view) .top .brand {
  flex: 0 0 270px;
  min-width: 0;
  height: 63px;
  align-items: center;
  background: #102b59;
  margin: -1px 0 -1px -24px;
  padding-left: 18px;
}
body.dsi-unique-view:not(.account-view) .top .brand .logo circle { fill: #fff; }
body.dsi-unique-view:not(.account-view) .top .brand .logo path { stroke: #075be4; }
body.dsi-unique-view:not(.account-view) .top .brand .logo rect { fill: #075be4; }
body.dsi-unique-view:not(.account-view) .top .brand .logo text,
body.dsi-unique-view:not(.account-view) .top .brand .logo tspan { fill: #fff; }
body.dsi-unique-view:not(.account-view) .header-tagline { display: none; }
body.dsi-unique-view:not(.account-view) .top .search-bar-row {
  flex: 1 1 auto;
  order: 0;
  min-width: 0;
}
body.dsi-unique-view:not(.account-view) .top .search-box {
  background: #f1f5fb;
  border: 1px solid #e4eaf4;
  border-radius: 7px;
}
body.dsi-unique-view:not(.account-view) .top .cir-search {
  background: transparent;
}
body.dsi-unique-view:not(.account-view) #export-codir-csv {
  width: auto;
  padding: 0 12px;
  color: #075be4;
  border: 1px solid #ccd9ee;
  gap: 7px;
}
body.dsi-unique-view:not(.account-view) #export-codir-csv::after {
  content: "Exporter";
  font-weight: 700;
}
body.dsi-unique-view:not(.account-view) #print-codir-report,
body.dsi-unique-view:not(.account-view) .hub-count-pill {
  display: none;
}
body.dsi-unique-view:not(.account-view) .badge-proto {
  background: #075be4;
  color: #fff;
  border-radius: 6px;
  padding: 9px 18px;
}
body.dsi-unique-view:not(.account-view) .search-filter-hub { display: none !important; }
.dashboard-rail, .dashboard-facets { display: none; }
body.dsi-unique-view:not(.account-view) .dashboard-rail {
  position: fixed;
  z-index: 25;
  top: 64px;
  bottom: 0;
  left: 0;
  width: 78px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  background: #082c70;
  color: #e9f2ff;
}
.rail-link {
  min-height: 74px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  border: 0;
  border-left: 4px solid transparent;
  background: transparent;
  color: #d7e6ff;
  font-size: 11px;
  font-weight: 600;
  text-decoration: none;
}
.rail-link .icon { width: 22px; height: 22px; }
.rail-link.active, .rail-link:hover, .rail-link:focus-visible {
  color: #fff;
  background: #0751c2;
  border-left-color: #7db4ff;
  text-decoration: none;
}
body.dsi-unique-view:not(.account-view) .dashboard-facets {
  position: fixed;
  z-index: 24;
  top: 64px;
  bottom: 0;
  left: 78px;
  width: 220px;
  display: block;
  overflow-y: auto;
  background: #fff;
  border-right: 1px solid #dce5f2;
  box-shadow: 2px 0 10px #1c3b7009;
}
.facets-title {
  height: 64px;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 0 16px;
  color: #112443;
  border-bottom: 1px solid #e8eef6;
  font-size: 14px;
}
.facets-title .icon { color: #075be4; }
.facets-title strong { flex: 1; }
#facets-collapse {
  width: 24px;
  height: 24px;
  border-radius: 4px;
  background: transparent;
  color: #4872a9;
}
.facet-group {
  min-width: 0;
  margin: 0;
  padding: 17px 16px 15px;
  border: 0;
  border-bottom: 1px solid #e8eef6;
}
.facet-group h2 {
  margin: 0 0 12px;
  color: #112443;
  font-weight: 750;
  font-size: 13px;
}
.facet-search {
  width: 100%;
  height: 31px;
  margin: 0 0 9px;
  padding: 4px 8px;
  border: 1px solid #d5e1f0;
  border-radius: 5px;
  color: #19365e;
  background: #fff;
  font-size: 11px;
}
.facet-option {
  display: flex;
  align-items: center;
  min-height: 30px;
  gap: 9px;
  color: #344967;
  cursor: pointer;
  font-size: 12px;
}
.facet-option input {
  width: 17px;
  height: 17px;
  margin: 0;
  flex: none;
  accent-color: #075be4;
}
.facet-option input:disabled + span { opacity: .55; }
.facet-option span {
  min-width: 0;
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.facet-option small { color: #6c7f9e; font-size: 11px; }
.facet-empty { margin: 4px 0; color: #6c7f9e; font-size: 11px; }
.facet-more {
  margin-top: 10px;
  padding: 0;
  background: transparent;
  color: #075be4;
  font-size: 12px;
  font-weight: 700;
}
body.dsi-unique-view:not(.account-view) .dashboard-facets.collapsed {
  width: 0;
  border: 0;
  overflow: hidden;
}
body.dsi-unique-view:not(.account-view).dashboard-filters-collapsed .app-shell {
  margin-left: 78px !important;
}
body.dsi-unique-view:not(.account-view) .app-shell {
  max-width: none !important;
  margin: 0 0 0 298px !important;
  padding: 20px 18px 40px !important;
  min-width: 0;
}
body.dsi-unique-view:not(.account-view) .dashboard-main {
  padding: 0 !important;
}
body.dashboard-admin-view .dashboard-facets,
body.dashboard-admin-view .top .search-bar-row,
body.dashboard-admin-view .top .badge-proto {
  display: none !important;
}
body.dsi-unique-view.dashboard-admin-view .app-shell {
  margin-left: 78px !important;
  padding: 36px 24px 60px !important;
}
body.dashboard-admin-view .main {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 !important;
}
.dashboard-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}
.dashboard-heading h1 {
  margin: 0;
  color: #112443;
  font-size: 26px;
  letter-spacing: -.7px;
}
.dashboard-heading p { margin: 1px 0 0; color: #5d6e89; }
.dashboard-live-note { color: #637693; font-size: 11px; white-space: nowrap; }
.dashboard-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 16px;
}
.dashboard-kpi {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
  min-height: 92px;
  padding: 14px;
  text-align: left;
  color: #122c58;
  background: #fff;
  border: 1px solid #e2eaf5;
  border-radius: 9px;
  box-shadow: 0 3px 9px #1c3b700c;
}
.dashboard-kpi:hover, .dashboard-kpi.active { border-color: #8eb7ff; }
.dashboard-kpi-icon {
  display: grid;
  place-items: center;
  width: 47px;
  height: 47px;
  flex: none;
  color: #075be4;
  background: #eaf2ff;
  border-radius: 9px;
}
.dashboard-kpi-icon .icon { width: 25px; height: 25px; }
.dashboard-kpi:last-child .dashboard-kpi-icon { color: #cb2834; background: #fff0f0; }
.dashboard-kpi-content { display: grid; gap: 2px; min-width: 0; }
.dashboard-kpi-content span { color: #304767; font-size: 12px; font-weight: 700; }
.dashboard-kpi-content strong { font-size: 28px; line-height: 1.15; font-weight: 700; }
.dashboard-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(270px, 302px);
  align-items: start;
  gap: 14px;
}
.dashboard-results, .dashboard-preview {
  min-width: 0;
  background: #fff;
  border: 1px solid #e2eaf5;
  border-radius: 9px;
  box-shadow: 0 3px 9px #1c3b700b;
}
.dashboard-toolbar {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 16px 12px;
}
.dashboard-toolbar-search {
  display: flex;
  align-items: center;
  min-width: 0;
  flex: 1;
  height: 44px;
  padding: 0 14px;
  border: 1px solid #cbdcf4;
  border-radius: 9px;
  background: #f8fbff;
  color: #075be4;
  box-shadow: 0 1px 2px #173d790d;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.dashboard-toolbar-search:focus-within {
  border-color: #075be4;
  background: #fff;
  box-shadow: 0 0 0 3px #075be425;
}
.dashboard-toolbar-search input {
  min-width: 0;
  flex: 1;
  border: 0;
  padding: 0 9px;
  color: #112443;
  background: transparent;
  outline: none;
}
.dashboard-toolbar-search input::placeholder { color: #647691; }
.dashboard-view-switch { display: flex; flex: none; background: #f1f5fb; border-radius: 6px; padding: 2px; }
.dashboard-view-switch button {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 6px 9px;
  background: transparent;
  border-radius: 5px;
  font-size: 12px;
}
.dashboard-view-switch button.active { color: #fff; background: #075be4; }
.dashboard-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  padding: 0 16px 16px;
}
.dashboard-actions button, .dashboard-actions label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 13px;
  color: #173d79;
  background: linear-gradient(180deg, #fff, #f9fbff);
  border: 1px solid #cbdcf4;
  border-radius: 9px;
  font-size: 12px;
  font-weight: 600;
  box-shadow: 0 1px 2px #173d790d;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease, transform .18s ease;
}
.dashboard-actions button:hover, .dashboard-actions label:hover {
  border-color: #83adef;
  background: #f2f7ff;
  box-shadow: 0 4px 12px #075be41a;
  transform: translateY(-1px);
}
.dashboard-actions button:focus-visible, .dashboard-actions label:focus-within {
  outline: 2px solid #075be4;
  outline-offset: 2px;
}
.dashboard-actions button .icon { width: 15px; height: 15px; }
.dashboard-actions #dashboard-filter-toggle {
  color: #075be4;
  background: #edf4ff;
  border-color: #a9c9fb;
}
.dashboard-actions select {
  max-width: 118px;
  min-height: 28px;
  padding-left: 10px;
  border: 0;
  border-left: 1px solid #dce6f5;
  background: transparent;
  color: inherit;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}
.dashboard-actions #dashboard-export-selected {
  color: #fff;
  background: #075be4;
  border-color: #075be4;
}
.dashboard-actions #dashboard-export-selected:hover { background: #054bc0; }
.dashboard-selection-count { color: #075be4; font-size: 12px; font-weight: 800; }
.dashboard-result-count {
  margin-left: auto;
  padding: 7px 11px;
  border-radius: 999px;
  color: #315b97;
  background: #f0f5fd;
  font-size: 12px;
  font-weight: 700;
}
@media (prefers-reduced-motion: reduce) {
  .dashboard-toolbar-search, .dashboard-actions button, .dashboard-actions label { transition: none; }
  .dashboard-actions button:hover, .dashboard-actions label:hover { transform: none; }
}
.dashboard-table-scroll { max-width: 100%; overflow-x: auto; outline-offset: -3px; }
.dashboard-table {
  width: 100%;
  min-width: 920px;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
  color: #243b5c;
  font-size: 12px;
}
.dashboard-table thead { background: #f1f6ff; }
.dashboard-table th {
  padding: 12px 10px;
  text-align: left;
  white-space: nowrap;
  color: #23436e;
  font-size: 11px;
}
.dashboard-table th:first-child, .dashboard-table td:first-child { width: 32px; padding-left: 14px; }
.dashboard-table th:nth-child(2), .dashboard-table td:nth-child(2) { width: 126px; }
.dashboard-table th:nth-child(3) { min-width: 230px; }
.dashboard-table th:nth-child(4) { min-width: 215px; }
.dashboard-sort-head { padding: 0; background: transparent; color: inherit; font-weight: 700; }
.dashboard-sort-head .icon { width: 11px; height: 11px; transform: rotate(90deg); }
.dashboard-row td {
  box-sizing: border-box;
  height: 82px;
  max-height: 82px;
  padding: 8px 10px;
  vertical-align: middle;
  border-top: 1px solid #e9eef6;
  background: #fff;
  overflow: hidden;
}
.dashboard-row.selected td { background: #f0f6ff; }
.dashboard-row:hover td { background: #f6f9fe; }
.dashboard-row { cursor: pointer; }
.dashboard-row-check, #dashboard-select-page {
  width: 17px;
  height: 17px;
  margin: 0;
  accent-color: #075be4;
  cursor: pointer;
}
.dashboard-row-check:focus-visible, #dashboard-select-page:focus-visible {
  outline: 2px solid #075be4;
  outline-offset: 3px;
}
.dashboard-row:has(.dashboard-row-check:checked) td { background: #eaf2ff; }
.dashboard-row-open { text-align: left; padding: 0; background: transparent; color: #075be4; }
.dashboard-id { font-size: 11px; font-weight: 700; white-space: nowrap; }
.dashboard-title {
  display: -webkit-box;
  max-height: 2.7em;
  overflow: hidden;
  color: #173054;
  font-weight: 700;
  line-height: 1.35;
  white-space: normal;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.dashboard-table td small {
  display: block;
  margin-top: 4px;
  color: #6d7f9b;
  font-size: 11px;
  line-height: 1.35;
  max-height: 1.35em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dashboard-table .dashboard-products {
  display: flex;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  gap: 4px 6px;
  max-height: 60px;
  overflow: hidden;
}
.dashboard-product-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border: 1px solid transparent;
  border-radius: 6px;
  background: #f1f6ff;
  cursor: help;
}
.dashboard-product-mark:hover,
.dashboard-product-mark:focus-visible { background: #e2efff; border-color: #8eb7ff; }
.dashboard-product-mark:focus-visible { outline: 2px solid #075be4; outline-offset: 2px; }
.dashboard-product-mark .product-icon,
.dashboard-product-mark .cir-product-svg { width: 20px; height: 20px; flex: 0 0 20px; }
.dashboard-product-mark .product-icon:empty::before { content: "◇"; color: #075be4; font-size: 19px; line-height: 1; }
.dashboard-product-tooltip {
  position: fixed;
  z-index: 80;
  max-width: min(260px, calc(100vw - 16px));
  padding: 7px 10px;
  border-radius: 5px;
  background: #112443;
  box-shadow: 0 4px 12px #11244335;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  pointer-events: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.dashboard-product-tooltip[hidden] { display: none; }
.dashboard-table .dashboard-source {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dashboard-impact, .dashboard-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 72px;
  border-radius: 999px;
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}
.dashboard-impact.level-critical { color: #a42126; background: #ffdcde; }
.dashboard-impact.level-high { color: #ad362d; background: #ffe7e3; }
.dashboard-impact.level-moderate { color: #8a5b00; background: #fff1c3; }
.dashboard-impact.level-low { color: #197044; background: #dff8e9; }
.dashboard-impact.level-unknown { color: #4b5a70; background: #edf1f6; }
.dashboard-status { color: #075be4; background: #eaf2ff; }
.dashboard-group th { background: #e9f2ff; color: #173d79; font-size: 12px; }
.dashboard-no-results { padding: 40px 18px !important; text-align: center; color: #53677f; }
.dashboard-pagination {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding: 12px 15px;
  border-top: 1px solid #e9eef6;
  color: #5d6e89;
  font-size: 11px;
}
.dashboard-pagination button {
  width: 27px;
  height: 27px;
  border: 1px solid #dce5f2;
  border-radius: 5px;
  background: #fff;
  color: #075be4;
}
.dashboard-pagination button:disabled { opacity: .45; cursor: default; }
.dashboard-preview { padding: 15px 17px 20px; }
.dashboard-preview-head { display: flex; justify-content: space-between; gap: 8px; }
.dashboard-preview-id { font-size: 12px; font-weight: 750; color: #102e62; }
.dashboard-preview-head button { background: transparent; color: #7184a1; font-size: 21px; line-height: 1; }
.dashboard-preview h2 { margin: 10px 0; color: #12294f; font-size: 17px; line-height: 1.32; }
.dashboard-preview-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.dashboard-product-line { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; min-height: 44px; padding: 8px 0 3px; }
.dashboard-preview-tabs { display: flex; gap: 16px; border-bottom: 1px solid #dce5f2; margin: 8px -17px 0; padding: 0 17px; }
.dashboard-preview-tabs > * {
  padding: 9px 0;
  background: transparent;
  color: #4e6484;
  font-size: 12px;
  border-bottom: 2px solid transparent;
}
.dashboard-preview-tabs .active { color: #075be4; border-bottom-color: #075be4; font-weight: 700; }
.dashboard-preview section { padding-top: 13px; }
.dashboard-preview h3 { margin: 0 0 6px; color: #143665; font-size: 12px; }
.dashboard-preview p, .dashboard-preview li { margin: 0 0 6px; color: #4d607a; font-size: 11px; line-height: 1.5; }
.dashboard-preview ul { margin: 0; padding-left: 17px; }
.dashboard-proof-button { padding: 0; background: transparent; color: #075be4; font-size: 11px; font-weight: 700; }
.dashboard-preview.minimized > :not(.dashboard-preview-head) { display: none; }
.dashboard-full-view { padding: 16px; }
.dashboard-full-head { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 14px; }
.dashboard-full-head button { background: #eaf2ff; color: #075be4; padding: 7px 10px; border-radius: 5px; }
body.dsi-unique-view.dashboard-record-view .dashboard-facets { display: none !important; }
body.dsi-unique-view.dashboard-record-view { overflow-x: clip; }
body.dsi-unique-view.dashboard-record-view .app-shell {
  margin-left: 78px !important;
  padding: 20px 22px 50px !important;
}
.dashboard-record-page { max-width: 1760px; margin: 0 auto; color: #1c3355; }
.dashboard-record-top {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 18px;
  min-height: 42px;
}
.dashboard-record-top > span { color: #5d6e89; font-size: 13px; font-weight: 700; }
.dashboard-record-top button {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 36px;
  padding: 7px 12px;
  border: 1px solid #cbdcf4;
  border-radius: 8px;
  background: #fff;
  color: #075be4;
  font-weight: 700;
}
.dashboard-record-top #dashboard-detail-export { margin-left: auto; background: #075be4; border-color: #075be4; color: #fff; }
.dashboard-record-top button:hover { box-shadow: 0 3px 12px #075be425; }
.dashboard-record-top button:focus-visible, .dashboard-record-nav a:focus-visible {
  outline: 2px solid #075be4;
  outline-offset: 2px;
}
.dashboard-record-layout {
  display: grid;
  grid-template-columns: 178px minmax(0, 1fr) 270px;
  align-items: start;
  gap: 18px;
}
.dashboard-record-nav {
  position: sticky;
  top: 82px;
  display: grid;
  gap: 4px;
  padding: 15px 10px;
  border: 1px solid #e2eaf5;
  border-radius: 10px;
  background: #fff;
}
.dashboard-record-nav strong { padding: 4px 10px 10px; color: #607492; font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
.dashboard-record-nav a { padding: 9px 10px; border-radius: 7px; color: #3e5575; font-size: 12px; text-decoration: none; }
.dashboard-record-nav a:hover, .dashboard-record-nav a.active { background: #eaf2ff; color: #075be4; }
.dashboard-record-content { display: grid; gap: 16px; min-width: 0; }
.dashboard-detail-card {
  min-width: 0;
  padding: 22px 24px;
  border: 1px solid #e2eaf5;
  border-radius: 11px;
  background: #fff;
  box-shadow: 0 3px 12px #1c3b700a;
  scroll-margin-top: 82px;
}
.dashboard-detail-hero { padding: 28px 30px; border-top: 3px solid #075be4; }
.dashboard-detail-eyebrow { display: flex; gap: 12px; color: #075be4; font-size: 12px; font-weight: 800; letter-spacing: .03em; }
.dashboard-detail-hero h1 { margin: 12px 0 16px; color: #112443; font-size: clamp(23px, 2vw, 30px); line-height: 1.25; }
.dashboard-detail-badges { display: flex; flex-wrap: wrap; gap: 7px; }
.dashboard-detail-kind { padding: 5px 9px; border-radius: 999px; background: #edf1f6; color: #405874; font-size: 11px; font-weight: 700; }
.dashboard-detail-lead { margin: 18px 0; color: #2d4567; font-size: 15px; line-height: 1.6; }
.dashboard-detail-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding-top: 16px; border-top: 1px solid #e9eef6; }
.dashboard-detail-facts div { display: grid; align-content: start; gap: 5px; min-width: 0; }
.dashboard-detail-facts span { color: #677a96; font-size: 11px; }
.dashboard-detail-facts strong { color: #193d70; font-size: 12px; overflow-wrap: anywhere; }
.dashboard-detail-section-head { display: flex; align-items: center; gap: 10px; padding-bottom: 13px; margin-bottom: 16px; border-bottom: 1px solid #e9eef6; }
.dashboard-detail-section-head span { color: #075be4; font-size: 12px; font-weight: 800; }
.dashboard-detail-card h2 { margin: 0; color: #112443; font-size: 20px; }
.dashboard-detail-card h3 { margin: 18px 0 10px; color: #173d79; font-size: 14px; }
.dashboard-detail-card h4 { margin: 0 0 8px; color: #193d70; font-size: 13px; }
.dashboard-detail-card p, .dashboard-detail-card li { color: #425a78; font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
.dashboard-detail-card p { margin: 8px 0; }
.dashboard-detail-card a { color: #075be4; }
.dashboard-detail-body { font-size: 14px !important; }
.dashboard-detail-list { margin: 8px 0; padding-left: 19px; }
.dashboard-detail-list li + li { margin-top: 8px; }
.dashboard-detail-empty { color: #6c7d92 !important; font-style: italic; }
.dashboard-detail-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.dashboard-detail-before-after { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.dashboard-detail-before-after > div, .dashboard-detail-item, .dashboard-detail-unknowns { padding: 14px 16px; border: 1px solid #e3ebf6; border-radius: 8px; background: #f8fbff; }
.dashboard-detail-before-after span { color: #075be4; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.dashboard-detail-meta { margin-top: 15px; border-top: 1px solid #e9eef6; }
.dashboard-detail-item + .dashboard-detail-item { margin-top: 10px; }
.dashboard-detail-item pre { overflow: auto; max-width: 100%; margin: 12px 0 0; padding: 12px; border-radius: 6px; background: #102b59; color: #eff6ff; font-size: 12px; line-height: 1.5; }
.dashboard-detail-timeline { margin: 0; padding: 0; list-style: none; }
.dashboard-detail-timeline li { display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: 14px; padding: 12px 0; border-bottom: 1px solid #e9eef6; }
.dashboard-detail-timeline time { color: #075be4; font-weight: 800; }
.dashboard-detail-timeline li div { display: grid; gap: 4px; }
.dashboard-detail-timeline li span { color: #6b7c93; font-size: 11px; }
.dashboard-detail-related { display: flex; flex-wrap: wrap; gap: 8px; }
.dashboard-detail-related a { display: grid; gap: 2px; padding: 9px 12px; border: 1px solid #cbdcf4; border-radius: 7px; background: #f8fbff; text-decoration: none; }
.dashboard-detail-related span { color: #5d6e89; font-size: 11px; }
.dashboard-detail-sources { margin: 0; padding: 0; list-style: none; }
.dashboard-detail-sources li { display: grid; gap: 5px; padding: 12px 0; border-bottom: 1px solid #e9eef6; }
.dashboard-detail-sources a { display: inline-flex; align-items: center; gap: 4px; width: fit-content; font-weight: 700; }
.dashboard-detail-sources small { color: #71819a; }
.dashboard-record-side { display: grid; gap: 16px; min-width: 0; }
.dashboard-record-side .dashboard-detail-card { padding: 18px; }
.dashboard-record-side h2 { font-size: 16px; }
.dashboard-record-side ul { padding-left: 18px; }
.dashboard-record-product-marks { display: flex; gap: 8px; padding: 12px 0; }
@media (max-width: 1250px) {
  .dashboard-record-layout { grid-template-columns: 170px minmax(0, 1fr); }
  .dashboard-record-side { grid-column: 2; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1450px) {
  .dashboard-workspace { grid-template-columns: minmax(0, 1fr); }
  .dashboard-preview { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; }
  .dashboard-preview-head, .dashboard-preview h2, .dashboard-preview-tags, .dashboard-preview-tabs { grid-column: 1 / -1; }
}
@media (max-width: 1100px) {
  .dashboard-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.dsi-unique-view:not(.account-view) .top .brand { flex-basis: 220px; }
}
@media (max-width: 900px) {
  body.dsi-unique-view:not(.account-view) .dashboard-rail { width: 62px; }
  body.dsi-unique-view:not(.account-view) .dashboard-facets { left: 62px; z-index: 30; box-shadow: 8px 0 20px #0a285133; }
  body.dsi-unique-view:not(.account-view) .app-shell,
  body.dsi-unique-view:not(.account-view).dashboard-filters-collapsed .app-shell { margin-left: 62px !important; }
  body.dsi-unique-view.dashboard-admin-view .app-shell { margin-left: 62px !important; }
  body.dsi-unique-view.dashboard-record-view .app-shell { margin-left: 62px !important; }
}
@media (max-width: 640px) {
  body.dsi-unique-view:not(.account-view) .top { padding: 8px 10px; }
  body.dsi-unique-view:not(.account-view) .top .brand {
    flex: 1 1 130px;
    height: 40px;
    margin: 0;
    padding: 0 8px;
    border-radius: 5px;
  }
  body.dsi-unique-view:not(.account-view) .top .search-bar-row { flex: 1 1 100%; order: 3; }
  body.dsi-unique-view:not(.account-view) .top #cir-search { font-size: 12px; }
  body.dsi-unique-view:not(.account-view) .dashboard-rail { display: none; }
  body.dsi-unique-view:not(.account-view) .dashboard-facets { top: 105px; left: 0; width: min(280px, 88vw); }
  body.dsi-unique-view:not(.account-view) .app-shell,
  body.dsi-unique-view:not(.account-view).dashboard-filters-collapsed .app-shell { margin-left: 0 !important; padding: 12px 10px 30px !important; }
  body.dsi-unique-view.dashboard-admin-view .app-shell { margin-left: 0 !important; padding: 24px 12px 40px !important; }
  body.dsi-unique-view.dashboard-record-view .app-shell { margin-left: 0 !important; padding: 12px 10px 30px !important; }
  .dashboard-record-layout { display: block; }
  .dashboard-record-nav { position: static; display: flex; overflow-x: auto; margin-bottom: 12px; white-space: nowrap; }
  .dashboard-record-nav strong { display: none; }
  .dashboard-record-content, .dashboard-record-side { display: grid; gap: 12px; }
  .dashboard-record-side { margin-top: 12px; grid-template-columns: minmax(0, 1fr); }
  .dashboard-detail-card, .dashboard-detail-hero { padding: 18px; }
  .dashboard-detail-facts { grid-template-columns: minmax(0, 1fr); }
  .dashboard-detail-two, .dashboard-detail-before-after { grid-template-columns: minmax(0, 1fr); }
  .dashboard-detail-timeline li { grid-template-columns: minmax(0, 1fr); gap: 4px; }
  .dashboard-record-top #dashboard-detail-export { margin-left: 0; }
  .dashboard-heading h1 { font-size: 21px; }
  .dashboard-live-note { display: none; }
  .dashboard-kpis { gap: 8px; }
  .dashboard-kpi { min-height: 73px; gap: 7px; padding: 8px; }
  .dashboard-kpi-icon { width: 34px; height: 34px; }
  .dashboard-kpi-icon .icon { width: 19px; height: 19px; }
  .dashboard-kpi-content span { font-size: 10px; }
  .dashboard-kpi-content strong { font-size: 20px; }
  .dashboard-preview { display: block; }
  .dashboard-toolbar { flex-wrap: wrap; }
  .dashboard-toolbar-search { flex-basis: 100%; }
}
/* Compact CIR notice: one decision surface, original dossier kept folded. */
.cir-compact { max-width: 1180px; margin: 0 auto; }
.cir-demo-label { font-size: 11px; color: #718098; margin: -8px 0 14px; }
.cir-compact .cir-brief-header { padding: 25px 30px; border-top-width: 2px; box-shadow: none; }
.cir-brief-kicker { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.cir-brief-kicker > span:first-child { color: #5c7392; font-size: 10px; font-weight: 800; letter-spacing: .14em; }
.cir-brief-badges { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.cir-impact-context { font-size: 12px !important; line-height: 1.5 !important; color: #526985 !important; margin: -5px 0 14px; }
.cir-compact section:focus { outline: 2px solid #075be4; outline-offset: 4px; }
.cir-compact .cir-brief-header h1 { margin: 14px 0 10px; font-size: clamp(24px, 2.2vw, 32px); letter-spacing: -.025em; }
.cir-brief-description { max-width: 860px; font-size: 15px !important; line-height: 1.65 !important; color: #405572 !important; }
.cir-brief-meta { display: flex; flex-wrap: wrap; gap: 14px 30px; margin-top: 20px; padding-top: 14px; border-top: 1px solid #e7edf5; }
.cir-brief-meta > span { display: grid; gap: 4px; font-size: 12px; color: #213c60; max-width: 310px; overflow-wrap: anywhere; }
.cir-brief-meta b { font-size: 10px; color: #728097; font-weight: 600; }
.cir-compact .cir-quick-nav { position: sticky; top: 72px; z-index: 4; display: flex; flex-wrap: wrap; gap: 4px; padding: 6px; margin: 14px 0; border: 1px solid #e2eaf5; border-radius: 8px; background: #f8faff; }
.cir-quick-nav a { font-size: 11px; padding: 7px 13px; }
.cir-brief-layout { display: grid; grid-template-columns: minmax(0, 1fr) 285px; align-items: start; gap: 20px; }
.cir-brief-main { display: grid; gap: 14px; min-width: 0; }
.cir-brief-side { min-width: 0; position: sticky; top: 133px; }
.cir-required { padding: 18px 22px; background: #edf4ff; border: 1px solid #d7e5fb; border-left: 3px solid #075be4; border-radius: 8px; }
.cir-section-label { font-size: 10px; font-weight: 800; letter-spacing: .11em; color: #5f7694; margin-bottom: 9px; }
.cir-required h2 { margin: 0 0 5px; color: #173c70; font-size: 17px; line-height: 1.45; font-weight: 650; }
.cir-evidence-kind { font-size: 10px; color: #4d688c; }
.cir-compact .cir-brief-section { padding: 20px 22px; box-shadow: none; }
.cir-compact .cir-brief-section h2 { font-size: 17px; margin-bottom: 15px; letter-spacing: -.015em; }
.cir-breakage-head, .cir-breakage-row { display: grid; grid-template-columns: minmax(100px, 1fr) minmax(0, 2fr) 100px; gap: 14px; align-items: start; }
.cir-breakage-head { color: #6b7d95; font-size: 10px; padding-bottom: 9px; }
.cir-breakage-row { border-top: 1px solid #edf1f7; padding: 12px 0; font-size: 12px; color: #405674; line-height: 1.45; overflow-wrap: anywhere; }
.cir-breakage-row:last-child { padding-bottom: 0; }
.cir-breakage-row strong { color: #243f64; font-weight: 650; }
.cir-breakage-row small { display: block; font-size: 10px; color: #71829b; margin-top: 5px; }
.cir-impact-label { font-size: 10px; font-weight: 700; padding: 4px 7px; border-radius: 4px; background: #f0f4fa; width: fit-content; color: #455d7e; }
.cir-quick-checks { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
.cir-quick-checks li { min-width: 0; }
.cir-quick-checks li > div { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.cir-quick-checks li > div > span { font-size: 11px; font-weight: 700; color: #2f507c; }
.cir-quick-checks small { font-size: 10px; color: #77879b; }
.cir-quick-checks button { margin-left: auto; font-size: 11px; }
.cir-compact :is(.cir-quick-checks button, .cir-full-script button, .cir-archive-button) { padding: 5px 9px; min-height: 28px; border: 1px solid #d8e3f3; border-radius: 5px; background: #f5f8fd; color: #365d93; font-size: 11px; }
.cir-compact pre { box-sizing: border-box; min-width: 0; max-width: 100%; overflow-x: auto; white-space: pre; padding: 12px 14px; border: 1px solid #e1e8f2; border-radius: 6px; background: #f6f8fc; color: #24436e; font-size: 11px; line-height: 1.6; }
.cir-script-details, .cir-dossier { border-top: 1px solid #e3eaf4; margin-top: 14px; }
.cir-script-details > summary, .cir-dossier > summary { cursor: pointer; padding: 13px 0; font-size: 12px; color: #355e95; font-weight: 650; }
.cir-script-details > summary span, .cir-dossier > summary span { float: right; color: #8190a6; font-size: 10px; font-weight: 400; }
.cir-full-script { margin-top: 12px; padding: 12px 0; border-top: 1px solid #edf1f7; }
.cir-full-script p { font-size: 12px; }
.cir-unconfirmed { padding: 14px 18px; border: 1px solid #eee3cc; border-left: 3px solid #b58130; border-radius: 7px; background: #fffbf3; }
.cir-unconfirmed h2 { margin: 0 0 5px; color: #86632c; font-size: 11px; }
.cir-unconfirmed p { margin: 0; color: #786344; font-size: 12px; line-height: 1.5; }
.cir-brief-empty { font-size: 12px !important; color: #748298 !important; }
.cir-brief-side .dashboard-detail-sources { padding-left: 0; list-style: none; }
.cir-brief-side .dashboard-detail-sources li { display: grid; gap: 7px; margin: 0; padding: 13px 0; border-top: 1px solid #e9eef6; }
.cir-brief-side .dashboard-detail-sources li strong { font-size: 12px; line-height: 1.5; font-weight: 600; }
.cir-source-help { color: #718098 !important; font-size: 11px !important; }
.cir-archive-button { margin-top: 12px; font-size: 11px; }
.cir-brief-footnote { padding: 0 6px; font-size: 10px; line-height: 1.6; color: #8290a5; }
.cir-full-details { padding-top: 8px; }
.cir-full-details > p { font-size: 13px; overflow-wrap: anywhere; }
.cir-full-details .dashboard-record-layout { display: block; }
.cir-full-details .dashboard-record-content { gap: 12px; }
.cir-full-details .dashboard-record-page { margin-top: 14px; }
.cir-compact :is(a, button, summary):focus-visible { outline: 2px solid #075be4; outline-offset: 3px; }
@media (max-width: 850px) {
  .cir-brief-layout { grid-template-columns: minmax(0, 1fr); }
  .cir-brief-side { position: static; }
  .cir-compact .cir-brief-header { padding: 20px; }
}
@media (max-width: 600px) {
  .cir-compact .cir-quick-nav { position: static; flex-wrap: nowrap; white-space: nowrap; }
  .cir-compact section { scroll-margin-top: 166px; }
  .cir-brief-meta { gap: 12px 20px; }
  .cir-brief-meta > span { max-width: 100%; }
  .cir-compact .cir-brief-section, .cir-required { padding: 16px; }
  .cir-breakage-head, .cir-breakage-row { grid-template-columns: 90px minmax(0, 1fr); gap: 9px; }
  .cir-breakage-head > :last-child { display: none; }
  .cir-breakage-row > :last-child { grid-column: 2; }
  .cir-script-details > summary span, .cir-dossier > summary span { float: none; display: block; padding-left: 14px; margin-top: 4px; }
}
@media print {
  .dashboard-rail, .dashboard-facets, .dashboard-preview, .dashboard-toolbar, .dashboard-actions { display: none !important; }
  body.dsi-unique-view:not(.account-view) .app-shell { margin: 0 !important; padding: 0 !important; }
}

/* Accepted HTML MVP, integrated with the real registry controls. */
body.dsi-unique-view:not(.account-view) {
  --accent: #2457c5; --blue: #2457c5; --ink: #18202b; --muted: #5d6878;
  --border: #dbe0e6; --sans: system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono: ui-monospace, Consolas, monospace;
  background: #f3f4f6; color: #18202b; font-family: var(--sans);
}
body.dsi-unique-view:not(.account-view) .top { box-shadow: none; border-color: #dbe0e6; }
body.dsi-unique-view:not(.account-view) .top .brand { background: #fff; }
body.dsi-unique-view:not(.account-view) .top .brand .logo circle { fill: #2457c5; }
body.dsi-unique-view:not(.account-view) .top .brand .logo path { stroke: #fff; }
body.dsi-unique-view:not(.account-view) .top .brand .logo rect { fill: #fff; }
body.dsi-unique-view:not(.account-view) .top .brand .logo text,
body.dsi-unique-view:not(.account-view) .top .brand .logo tspan { fill: #18202b; }
body.dsi-unique-view:not(.account-view) .top .search-box { background: #f3f4f6; border-color: #dbe0e6; }
body.dsi-unique-view:not(.account-view) .dashboard-rail { background: #fff; border-right: 1px solid #dbe0e6; }
.rail-link { color: #5d6878; }
.rail-link.active, .rail-link:hover, .rail-link:focus-visible { color: #2457c5; background: #eef2fa; border-left-color: #2457c5; }
.dashboard-heading h1 { color: #18202b; letter-spacing: -.03em; }
.dashboard-results, .dashboard-preview, .dashboard-kpi { box-shadow: none; border-color: #dbe0e6; border-radius: 8px; }
.dashboard-kpi { background: #fff; }
.dashboard-kpi.active { background: #f8faff; }
.dashboard-kpi-content strong { color: #18202b; }
.dashboard-kpi-icon { background: #f3f4f6; color: #2457c5; }
.dashboard-table thead, .dashboard-toolbar, .dashboard-actions { background: #fff; }
.dashboard-row.selected { background: #f5f7fb; }
.dashboard-title { color: #18202b; }
.dashboard-table td, .dashboard-table th { border-color: #e5e7eb; }
.dashboard-status { border-radius: 4px; background: #f3f4f6; color: #495566; }
.cir-extra-filters summary { cursor: pointer; font-size: 13px; font-weight: 650; color: #18202b; }
.cir-extra-filters .quick-filter-chips { display: grid; margin-top: 12px; gap: 6px; padding: 0; }
.cir-extra-filters .quick-chip { white-space: normal; text-align: left; border-radius: 4px; font-size: 11px; padding: 8px; }
.cir-extra-filters .quick-chip.active { color: #2457c5; background: #eef2fa; border-color: #2457c5; }
.cir-compact { max-width: 1040px; padding: 24px 32px 30px; background: #fff; border: 1px solid #dbe0e6; border-radius: 10px; color: #18202b; }
.cir-compact .dashboard-record-top { margin-bottom: 20px; }
.cir-compact .cir-brief-header { padding: 0 0 20px; border: 0; border-radius: 0; }
.cir-brief-kicker { justify-content: flex-start; flex-wrap: wrap; gap: 10px; }
.cir-brief-kicker > span:first-child { font: 500 13px var(--mono); letter-spacing: 0; color: #18202b; }
.cir-brief-kicker > small { margin-left: auto; font-size: 11px; color: #5d6878; }
.cir-compact .cir-brief-header h1 { color: #18202b; font-size: clamp(24px, 2.2vw, 30px); margin-top: 14px; }
.cir-brief-description { color: #334050 !important; font-size: 16px !important; line-height: 1.55 !important; }
.cir-card-tools { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.cir-card-tools :is(button, a) { display: inline-flex; align-items: center; padding: 8px 12px; border: 1px solid #bcc4ce; border-radius: 5px; color: #18202b; background: #fff; text-decoration: none; font: 600 12px var(--sans); }
.cir-card-tools #cir-copy-ticket { background: #18202b; color: #fff; border-color: #18202b; }
.cir-card-tools button:disabled { opacity: .5; cursor: not-allowed; }
.cir-compact .cir-calendar-help { color: #5d6878; font-size: 11px; }
.cir-compact .cir-quick-nav { background: #fff; border-color: #dbe0e6; margin: 0 0 24px; top: 72px; }
.cir-quick-nav a { padding: 8px; font-size: 11px; color: #5d6878; }
.cir-brief-layout { display: flex; flex-direction: column; gap: 0; }
.cir-brief-main { display: contents; }
.cir-brief-layout > *, .cir-brief-main > * { width: 100%; min-width: 0; }
.cir-required { background: #fff; border: 1px solid #dbe0e6; border-radius: 6px 6px 0 0; padding: 16px 18px; }
.cir-section-label { text-transform: none; font-size: 12px; color: #5d6878; font-weight: 500; letter-spacing: 0; }
.cir-required h2 { color: #18202b; font-size: 17px; }
.cir-key-cells { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0 0 12px; border: 1px solid #dbe0e6; border-top: 0; border-radius: 0 0 6px 6px; }
.cir-key-cells > div { padding: 14px 18px; min-width: 0; border-bottom: 1px solid #e5e7eb; }
.cir-key-cells dt { color: #5d6878; font-size: 12px; margin-bottom: 5px; }
.cir-key-cells dd { margin: 0; color: #18202b; font-size: 14px; font-weight: 650; overflow-wrap: anywhere; }
.cir-key-cells small { display: block; font-size: 11px; color: #5d6878; font-weight: 400; margin-top: 5px; }
.cir-compact .cir-brief-section { padding: 24px 0; border: 0; border-bottom: 1px solid #dbe0e6; border-radius: 0; background: #fff; }
.cir-compact .cir-brief-section h2 { font-size: 18px; color: #18202b; }
.cir-compact .cir-brief-section p, .cir-compact .cir-brief-section li { color: #334050; }
.cir-compact section { scroll-margin-top: 155px; }
.cir-calendar { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); list-style: none; padding: 0; margin: 0; gap: 16px; }
.cir-calendar li { border-top: 2px solid #bcc4ce; padding-top: 10px; display: grid; align-content: start; gap: 6px; }
.cir-calendar time { color: #2457c5; font-weight: 650; }
.cir-calendar small { font-size: 11px; color: #5d6878; }
.cir-measures { padding: 0; margin: 0; list-style: none; }
.cir-measures > li { display: grid; grid-template-columns: 110px minmax(0, 1fr); align-items: start; gap: 14px; padding: 12px 0; border-bottom: 1px solid #e5e7eb; }
.cir-measures details { margin-top: 8px; }
.cir-measures summary { cursor: pointer; font-size: 12px; color: #2457c5; }
.cir-brief-side { position: static; }
.cir-unconfirmed { margin: 24px 0 0; }
.cir-dossier { order: 2; }
.cir-compact pre { color: #18202b; background: #f6f7f9; border-color: #dbe0e6; font-family: var(--mono); font-size: 12px; }
.cir-breakage-row, .cir-breakage-row strong { color: #334050; }
.cir-brief-footnote { color: #5d6878; padding: 10px 0; }
body.dsi-unique-view:not(.account-view) :is(h1, h2, h3, h4) { font-family: var(--sans); }
body.dsi-unique-view:not(.account-view) :is(.dashboard-facets, .dashboard-rail) { top: var(--cir-header-height, 64px); }
.facets-title { position: sticky; top: 0; background: #fff; z-index: 1; }
.cir-compact .cir-quick-nav { top: calc(var(--cir-header-height, 64px) + 8px); }
.cir-compact section { scroll-margin-top: calc(var(--cir-header-height, 64px) + 95px); }
.registry-cards .dashboard-workspace { grid-template-columns: minmax(0, 1fr); }
.registry-cards .dashboard-preview { display: none; }
.registry-cards .dashboard-table-scroll { overflow: visible; }
.registry-cards .dashboard-table { display: block; min-width: 0; width: 100%; }
.registry-cards .dashboard-table :is(thead, tbody) { display: block; }
.registry-cards .dashboard-table thead tr { display: flex; }
.registry-cards .dashboard-table th:not(:first-child) { display: none; }
.registry-cards .dashboard-table th:first-child { width: auto; display: flex; align-items: center; gap: 8px; padding: 12px 20px; }
.registry-cards .dashboard-table thead th:first-child::after { content: "Sélectionner cette page"; font-size: 11px; font-weight: 400; }
.registry-cards .dashboard-row { display: grid; grid-template-columns: 22px minmax(0, 1fr) 120px 155px; gap: 8px 16px; height: auto; padding: 22px 20px; border-top: 1px solid #dbe0e6; }
.registry-cards .dashboard-row td { display: block; width: auto !important; height: auto; min-width: 0; padding: 0; border: 0; }
.registry-cards .dashboard-row td:nth-child(1) { grid-column: 1; grid-row: 1 / 4; }
.registry-cards .dashboard-row td:nth-child(2) { grid-column: 2; grid-row: 1; }
.registry-cards .dashboard-row td:nth-child(3) { grid-column: 2; grid-row: 2; }
.registry-cards .dashboard-row td:nth-child(4) { grid-column: 2; grid-row: 3; }
.registry-cards .dashboard-row td:nth-child(5) { grid-column: 3; grid-row: 2; }
.registry-cards .dashboard-row td:nth-child(6) { grid-column: 4; grid-row: 2; }
.registry-cards .dashboard-row td:nth-child(7) { grid-column: 3 / 5; grid-row: 1; }
.registry-cards .dashboard-row td:nth-child(8) { grid-column: 3 / 5; grid-row: 3; }
.registry-cards .dashboard-title { font-size: 18px; line-height: 1.35; -webkit-line-clamp: 2; max-height: none; }
.registry-cards .dashboard-row td:nth-child(3) > small { font-size: 13px; line-height: 1.6; margin-top: 8px; -webkit-line-clamp: 2; max-height: none; }
.registry-cards .dashboard-group { display: block; }
.registry-cards .dashboard-group th { width: 100% !important; }
@media (max-width: 1100px) {
  .registry-cards .dashboard-row { grid-template-columns: 20px minmax(0, 1fr) 145px; }
  .registry-cards .dashboard-row td:nth-child(3) { grid-column: 2 / 4; }
  .registry-cards .dashboard-row td:nth-child(5) { grid-column: 3; grid-row: 3; }
  .registry-cards .dashboard-row td:nth-child(6) { grid-column: 2; grid-row: 4; }
  .registry-cards .dashboard-row td:nth-child(7) { grid-column: 3; }
  .registry-cards .dashboard-row td:nth-child(8) { grid-column: 3; grid-row: 4; }
}
@media (max-width: 600px) {
  .registry-cards .dashboard-row { grid-template-columns: 18px minmax(0, 1fr); padding: 20px 14px; gap: 10px; }
  .registry-cards .dashboard-row td:not(:first-child) { grid-column: 2; grid-row: auto; }
  .registry-cards .dashboard-row td:nth-child(7) { grid-row: 2; }
  .registry-cards .dashboard-title { font-size: 17px; }
}
@media (max-width: 900px) {
  .cir-compact { padding: 20px; }
  .cir-quick-nav a { padding: 7px; }
}
@media (max-width: 600px) {
  .cir-compact { padding: 18px 14px; }
  .cir-compact .cir-brief-header { padding: 0 0 16px; }
  .cir-brief-kicker > small { width: 100%; margin: 0; }
  .cir-compact .cir-quick-nav { flex-wrap: wrap; white-space: normal; }
  .cir-key-cells { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cir-key-cells > div { padding: 12px; }
  .cir-calendar { grid-template-columns: minmax(0, 1fr); }
  .cir-measures > li { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .cir-card-tools :is(button, a) { font-size: 11px; padding: 8px; }
  .cir-compact .cir-brief-section { padding: 22px 0; }
}
@media print {
  .cir-compact { max-width: none; border: 0; padding: 0; }
  .cir-card-tools, .cir-quick-nav, .dashboard-record-top { display: none !important; }
}

/* A single visible search in the registry; keep the global one on detail pages. */
body.dashboard-registry-view:not(.account-view):not(.admin-view) .top .search-box { display: none; }
body.dashboard-record-view .top .codir-actions-group { display: none; }
.cir-service-warning { padding: 14px 18px; margin-bottom: 16px; border: 1px solid #a87021; background: #fff8e8; color: #68400b; border-radius: 8px; }
.cir-version-preview { padding: 12px; border: 1px solid #cbdcf4; border-radius: 7px; color: #304865; background: #f7faff; }
.dashboard-rail .rail-link span { font-size: 10px; }
@media (max-width: 600px) {
  body.dashboard-registry-view:not(.account-view):not(.admin-view) .top { flex-wrap: nowrap; }
  body.dashboard-registry-view:not(.account-view):not(.admin-view) .top .search-bar-row { flex: 0 0 auto; width: auto; }
  body.dashboard-registry-view .dashboard-heading { margin-bottom: 12px; }
  body.dashboard-registry-view .dashboard-heading p { display: none; }
  body.dashboard-registry-view .dashboard-kpis { gap: 6px; margin-bottom: 12px; }
  body.dashboard-registry-view .dashboard-kpi { padding: 9px; min-height: 54px; }
  body.dashboard-registry-view .dashboard-kpi-icon { display: none; }
  body.dashboard-registry-view .dashboard-kpi-content { display: flex; align-items: center; gap: 9px; }
  body.dashboard-registry-view .dashboard-kpi-content strong { font-size: 22px; }
}
