:root {
  color-scheme: light;
  font-family: Arial, Helvetica, sans-serif;
  background: #f7f7f4;
  color: #1c2520;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  min-height: 100vh;
}

.skip-link {
  position: fixed;
  top: 8px;
  left: 8px;
  z-index: 1000;
  padding: 10px 14px;
  border: 2px solid #173d2e;
  background: #ffffff;
  color: #173d2e;
  transform: translateY(-150%);
}

.skip-link:focus {
  transform: translateY(0);
}

.site-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border-bottom: 1px solid #d8ddd5;
  background: #ffffff;
  padding: 14px 32px;
}

.site-brand {
  color: #1c2520;
  font-size: 20px;
  font-weight: 700;
  text-decoration: none;
}

.site-nav {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.site-nav a {
  color: #315c49;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}

.site-nav a:hover,
.site-nav a:focus {
  text-decoration: underline;
}

.site-nav form {
  margin: 0;
}

.nav-action {
  min-height: auto;
  border: 0;
  background: transparent;
  color: #315c49;
  padding: 0;
  font-size: 15px;
}

.nav-action:hover,
.nav-action:focus {
  text-decoration: underline;
}

.page-shell {
  width: min(100%, 1080px);
  margin: 0 auto;
  padding: 32px;
}

.startup-panel {
  width: min(100%, 520px);
  margin: 96px auto 0;
  border: 1px solid #d8ddd5;
  border-radius: 8px;
  background: #ffffff;
  padding: 32px;
  text-align: center;
}

.startup-panel h1 {
  margin: 0 0 12px;
  font-size: 40px;
  line-height: 1.1;
  letter-spacing: 0;
}

.startup-panel p {
  margin: 0;
  font-size: 18px;
  line-height: 1.5;
}

.page-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 24px;
}

.page-header h1 {
  margin: 0 0 6px;
  font-size: 30px;
  line-height: 1.2;
  letter-spacing: 0;
}

.page-header p {
  margin: 0;
  color: #58665e;
  line-height: 1.5;
}

.surface {
  border: 1px solid #d8ddd5;
  border-radius: 8px;
  background: #ffffff;
  padding: 24px;
}

.stack {
  display: grid;
  gap: 16px;
}

.action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 20px;
}

.action-row.centered {
  justify-content: center;
}

.button,
button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  border: 1px solid #315c49;
  border-radius: 6px;
  background: #315c49;
  color: #ffffff;
  padding: 8px 14px;
  font: inherit;
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
}

.button.secondary,
button.secondary {
  background: #ffffff;
  color: #315c49;
}

.button.danger,
button.danger {
  border-color: #9d2727;
  background: #9d2727;
  color: #ffffff;
}

.button.danger.secondary {
  background: #ffffff;
  color: #9d2727;
}

.search-form {
  display: flex;
  gap: 10px;
  margin-bottom: 20px;
}

.search-form input {
  min-width: 0;
  flex: 1;
}

.filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 20px;
}

.filter-row a {
  border: 1px solid #d8ddd5;
  border-radius: 6px;
  color: #315c49;
  padding: 7px 10px;
  text-decoration: none;
}

.filter-row a.current {
  background: #eef3ef;
  border-color: #315c49;
  font-weight: 700;
}

.form-grid {
  display: grid;
  gap: 18px;
}

.form-row label,
.field-label {
  display: block;
  margin-bottom: 6px;
  font-weight: 700;
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

input,
select,
textarea {
  width: 100%;
  border: 1px solid #bfc8c1;
  border-radius: 6px;
  background: #ffffff;
  color: #1c2520;
  font: inherit;
  padding: 9px 10px;
}

textarea {
  min-height: 120px;
  resize: vertical;
}

.checkbox-list {
  display: grid;
  gap: 8px;
  padding: 0;
  margin: 0;
}

.checkbox-list div {
  display: flex;
  align-items: center;
  gap: 8px;
}

.checkbox-list label {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-weight: 400;
}

.checkbox-list input,
input[type="checkbox"] {
  width: auto;
}

.errorlist {
  margin: 6px 0 0;
  padding-left: 20px;
  color: #9d2727;
}

.data-table {
  width: 100%;
  border-collapse: collapse;
}

.data-table th,
.data-table td {
  border-bottom: 1px solid #e4e8e3;
  padding: 12px 10px;
  text-align: left;
  vertical-align: top;
}

.data-table th {
  color: #58665e;
  font-size: 14px;
}

.data-table a {
  color: #315c49;
  font-weight: 700;
}

.detail-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.detail-item span {
  display: block;
  color: #58665e;
  font-size: 14px;
  margin-bottom: 4px;
}

.section-title {
  margin: 28px 0 12px;
  font-size: 22px;
  line-height: 1.25;
}

.empty-state {
  margin: 0;
  color: #58665e;
}

.message-list {
  display: grid;
  gap: 8px;
  list-style: none;
  margin: 0 0 20px;
  padding: 0;
}

.message {
  border: 1px solid #b7d1c0;
  border-radius: 6px;
  background: #eef7f0;
  color: #1f5138;
  padding: 10px 12px;
}

.public-document-page .data-table {
  table-layout: fixed;
}

.public-document-page .data-table th,
.public-document-page .data-table td {
  overflow-wrap: anywhere;
}

.public-checklist,
.public-file-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.public-checklist {
  display: grid;
  gap: 10px;
}

.public-checklist-item {
  border: 1px solid #dfe6df;
  border-radius: 6px;
  background: #fbfcfb;
  padding: 12px;
}

.public-checklist-row {
  align-items: flex-start;
  display: flex;
  gap: 10px;
}

.public-checklist-mark {
  color: #245c42;
  flex: 0 0 auto;
  font-size: 20px;
  line-height: 1.2;
  width: 24px;
}

.public-checklist-content {
  min-width: 0;
}

.public-checklist-title {
  font-weight: 700;
  overflow-wrap: anywhere;
}

.public-checklist-meta {
  align-items: center;
  color: #58665e;
  display: flex;
  flex-wrap: wrap;
  font-size: 14px;
  gap: 8px;
  margin-top: 4px;
}

.status-badge {
  border: 1px solid #cbd7cf;
  border-radius: 6px;
  color: #344238;
  display: inline-flex;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  padding: 5px 8px;
}

.status-badge.received {
  background: #eef7f0;
  border-color: #b7d1c0;
  color: #1f5138;
}

.status-badge.pending {
  background: #fff9eb;
  border-color: #e1cb87;
  color: #604512;
}

.status-badge.waived {
  background: #f2f4f3;
  color: #58665e;
}

.status-badge.processing-pending,
.status-badge.processing-processing {
  background: #fff9eb;
  border-color: #e1cb87;
  color: #604512;
}

.status-badge.processing-complete {
  background: #eef7f0;
  border-color: #b7d1c0;
  color: #1f5138;
}

.status-badge.processing-partial,
.status-badge.processing-needs_assistance {
  background: #fff4e6;
  border-color: #d8b06d;
  color: #704a14;
}

.status-badge.processing-failed {
  background: #fff0f0;
  border-color: #d8a2a2;
  color: #7b2020;
}

.muted-detail {
  color: #58665e;
  font-size: 13px;
  margin-top: 4px;
}

.public-file-list {
  color: #344238;
  display: grid;
  gap: 4px;
  margin-top: 8px;
}

.public-file-list li {
  overflow-wrap: anywhere;
}

.public-complementary-list {
  border: 1px solid #dfe6df;
  border-radius: 6px;
  background: #fbfcfb;
  padding: 12px;
}

.public-document-page input[type="file"] {
  min-width: 0;
}

@media (max-width: 720px) {
  .site-header,
  .page-header {
    align-items: stretch;
    flex-direction: column;
  }

  .page-shell {
    padding: 24px 16px;
  }

  .search-form {
    flex-direction: column;
  }

  .public-document-page .page-shell {
    padding: 20px 12px;
  }

  .public-document-page .surface {
    padding: 18px;
  }

  .public-document-page .data-table,
  .public-document-page .data-table thead,
  .public-document-page .data-table tbody,
  .public-document-page .data-table tr,
  .public-document-page .data-table th,
  .public-document-page .data-table td {
    display: block;
    width: 100%;
  }

  .public-document-page .data-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
  }

  .public-document-page .data-table tr {
    border-bottom: 1px solid #e4e8e3;
    padding: 10px 0;
  }

  .public-document-page .data-table td {
    border-bottom: 0;
    padding: 6px 0;
  }

  .public-document-page .data-table td::before {
    content: attr(data-label);
    display: block;
    color: #58665e;
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 2px;
  }

  .public-document-page .action-row button {
    width: 100%;
    min-height: 44px;
  }
}

/* Complete single-operator workspace */
.operator-topbar {
  align-items: center;
  background: #14231c;
  border-bottom: 1px solid #253c31;
  color: #ffffff;
  display: flex;
  gap: 24px;
  justify-content: space-between;
  min-height: 68px;
  padding: 10px 24px;
  position: sticky;
  top: 0;
  z-index: 20;
}

.operator-topbar .site-brand {
  align-items: center;
  color: #ffffff;
  display: inline-flex;
  gap: 10px;
}

.operator-topbar .site-brand > span:last-child,
.operator-topbar .site-brand small {
  display: block;
}

.operator-topbar .site-brand small {
  color: #b9c9c0;
  font-size: 11px;
  font-weight: 400;
  margin-top: 1px;
}

.brand-mark {
  align-items: center;
  background: #f1c75b;
  border-radius: 6px;
  color: #14231c;
  display: inline-flex;
  font-size: 17px;
  font-weight: 800;
  height: 34px;
  justify-content: center;
  width: 34px;
}

.topbar-actions {
  align-items: center;
  display: flex;
  gap: 14px;
}

.topbar-actions .button.compact {
  background: #f1c75b;
  border-color: #f1c75b;
  color: #14231c;
  min-height: 36px;
  padding: 6px 12px;
}

.topbar-actions .nav-action {
  color: #d9e4de;
}

.operator-name {
  color: #d9e4de;
  font-size: 13px;
}

.operator-layout {
  align-items: start;
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr);
  min-height: calc(100vh - 68px);
}

.operator-sidebar {
  align-self: stretch;
  background: #ffffff;
  border-right: 1px solid #d8ddd5;
  min-height: calc(100vh - 68px);
  padding: 20px 12px;
  position: sticky;
  top: 68px;
}

.workspace-nav {
  display: grid;
  gap: 2px;
}

.workspace-nav a {
  border-left: 3px solid transparent;
  border-radius: 0 5px 5px 0;
  color: #34433b;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.25;
  padding: 9px 10px;
  text-decoration: none;
}

.workspace-nav a:hover,
.workspace-nav a:focus {
  background: #f1f5f2;
  color: #173f2d;
}

.workspace-nav a.current {
  background: #e9f1ec;
  border-left-color: #257450;
  color: #173f2d;
}

.workspace-logout {
  border-top: 1px solid #e2e7e3;
  margin-top: 8px;
  padding-top: 8px;
}

.workspace-logout button {
  background: transparent;
  border: 0;
  color: #59685f;
  justify-content: flex-start;
  min-height: 36px;
  padding: 7px 10px;
  width: 100%;
}

.mobile-navigation {
  display: none;
}

.operator-layout > .page-shell {
  margin: 0;
  max-width: 1480px;
  padding: 30px clamp(20px, 3vw, 46px) 56px;
  width: 100%;
}

.operator-layout > .page-shell.document-detail-shell {
  max-width: none;
  padding-left: clamp(16px, 2vw, 32px);
  padding-right: clamp(16px, 2vw, 32px);
}

.public-shell {
  margin: 0 auto;
}

.workspace-header {
  align-items: flex-start;
  display: flex;
  gap: 28px;
  justify-content: space-between;
  margin-bottom: 24px;
}

.workspace-header h1 {
  font-size: 30px;
  letter-spacing: 0;
  line-height: 1.2;
  margin: 0 0 7px;
}

.workspace-header > div > p:last-child {
  color: #58665e;
  line-height: 1.5;
  margin: 0;
  max-width: 760px;
}

.lead-identity-heading {
  flex: 1 1 auto;
  min-width: 0;
}

.workspace-header > .lead-identity-heading > .lead-client-name {
  max-width: none;
  overflow-wrap: break-word;
  word-break: normal;
}

.header-actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: 9px;
}

.notice-band {
  background: #edf4f7;
  border-left: 3px solid #24708d;
  color: #254957;
  margin-bottom: 22px;
  padding: 11px 14px;
}

.notice-band p {
  margin: 0;
}

.notice-band p + p {
  margin-top: 5px;
}

.workspace-sections {
  display: grid;
  gap: 30px;
}

.pagination {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  margin-top: 20px;
}

.workspace-section,
.detail-band {
  border-top: 1px solid #cfd6d1;
  min-width: 0;
  padding-top: 18px;
}

.detail-band {
  margin-bottom: 30px;
}

.detail-band h2 {
  font-size: 21px;
  margin: 0 0 16px;
}

.table-scroll {
  background: #ffffff;
  border: 1px solid #d8ddd5;
  border-radius: 8px;
  overflow-x: auto;
}

.workspace-table {
  min-width: 720px;
}

.workspace-table th {
  background: #f4f6f4;
  font-size: 12px;
  text-transform: uppercase;
}

.workspace-table tbody tr:hover {
  background: #f8faf8;
}

.cell-value,
.cell-meta {
  display: block;
}

.cell-value {
  color: #243229;
  overflow-wrap: anywhere;
}

.cell-meta,
.help-text {
  color: #68766e;
  font-size: 12px;
  line-height: 1.4;
  margin-top: 3px;
}

.table-action {
  text-align: right !important;
  width: 68px;
}

.table-action a {
  white-space: nowrap;
}

.cell-link {
  color: inherit;
  text-decoration: none;
}

.cell-link:hover .cell-value,
.cell-link:focus .cell-value {
  text-decoration: underline;
}

.tone-success,
.status-label.tone-success {
  border-color: #18794e;
}

.tone-danger,
.status-label.tone-danger {
  border-color: #b42318;
}

.metric-item.tone-success {
  border-top-color: #18794e;
}

.metric-item.tone-danger {
  border-top-color: #b42318;
}

.metric-item.tone-neutral {
  border-top-color: #69766f;
}

.split-sections {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 30px;
}

.inline-authority-form {
  border-top: 1px solid #e1e6e2;
  margin-top: 16px;
  padding-top: 16px;
}

.exception-action {
  border-top: 1px solid #e1e6e2;
  margin-top: 16px;
  padding-top: 14px;
}

.exception-action summary {
  color: #68766e;
  cursor: pointer;
  font-weight: 700;
}

.exception-action[open] summary {
  margin-bottom: 12px;
}

.compact-list {
  margin-bottom: 16px;
}

.detail-grid {
  margin: 0;
}

.lead-primary-identity {
  background: #ffffff;
  border: 1px solid #d8ddd5;
  border-top: 3px solid #257450;
  border-radius: 8px;
  margin-bottom: 18px;
  padding: 14px 18px 16px;
}

.compact-heading {
  margin-bottom: 16px;
}

.compact-heading h2 {
  margin-bottom: 0;
}

.identity-detail-grid {
  grid-template-columns: minmax(180px, 0.7fr) minmax(190px, 0.8fr) minmax(300px, 1.5fr);
}

.identity-detail-grid .detail-item {
  min-width: 0;
}

.identity-detail-grid dd,
.identity-value {
  min-width: 0;
  overflow-wrap: break-word;
}

.identity-value {
  display: block;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
}

.identity-provenance {
  display: inline-flex;
  margin-top: 7px;
  width: fit-content;
}

.lead-demand-context {
  margin-bottom: 18px;
}

.demand-detail-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.primary-section-action {
  border: 0;
  margin: 0;
  padding: 0;
}

.document-section-heading {
  align-items: flex-start;
  flex-wrap: wrap;
}

.document-receipt-action {
  margin-left: auto;
}

.document-receipt-action[open] {
  flex: 1 0 100%;
  margin-left: 0;
  width: 100%;
}

.primary-section-action > summary {
  align-items: center;
  background: #257450;
  border: 1px solid #257450;
  border-radius: 5px;
  color: #ffffff;
  display: inline-flex;
  min-height: 40px;
  padding: 9px 14px;
}

.primary-section-action > summary:hover,
.primary-section-action > summary:focus {
  background: #1f6243;
}

.primary-section-action[open] {
  background: #ffffff;
  border: 1px solid #d8ddd5;
  border-radius: 8px;
  padding: 14px;
}

.primary-section-action[open] > summary {
  margin-bottom: 12px;
}

.manual-address-action > summary {
  background: #f1f5f2;
  border: 1px solid #71847a;
  border-radius: 5px;
  color: #315c49;
  display: inline-flex;
  padding: 8px 11px;
}

.manual-address-action > summary:hover,
.manual-address-action > summary:focus {
  background: #e3ece6;
  border-color: #315c49;
}

.lower-frequency-sections {
  gap: 12px;
  margin-top: 20px;
}

.compact-context-section {
  padding-top: 0;
}

.compact-context-section > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  list-style: none;
  min-height: 40px;
  padding: 7px 0;
}

.compact-context-section > summary::-webkit-details-marker {
  display: none;
}

.compact-context-section > summary::after {
  color: #68766e;
  content: "+";
  flex: 0 0 auto;
  font-size: 20px;
  font-weight: 700;
}

.compact-context-section[open] > summary::after {
  content: "−";
}

.compact-context-section > summary > span:first-child {
  min-width: 0;
}

.compact-context-section > summary strong {
  display: inline;
  font-size: 15px;
  line-height: 1.25;
}

.compact-context-section > summary small {
  color: #68766e;
  display: inline;
  font-size: 12px;
}

.compact-context-section > .empty-state {
  margin-top: 4px;
}

.material-conflict-section {
  background: #fff7f6;
  border: 1px solid #f0c5c0;
  border-top: 3px solid #b42318;
  border-radius: 8px;
  padding: 16px;
}

.lead-history-section {
  margin-top: 30px;
}

.detail-item dt {
  color: #68766e;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 4px;
  text-transform: uppercase;
}

.detail-item dd {
  margin: 0;
}

.detail-item.full {
  grid-column: 1 / -1;
}

.timeline-list {
  display: grid;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}

.timeline-list li {
  align-items: center;
  border-bottom: 1px solid #e3e7e4;
  display: grid;
  gap: 12px;
  grid-template-columns: 30px 1fr;
  padding: 10px 0;
}

.timeline-list li > span {
  align-items: center;
  background: #e9f1ec;
  border-radius: 50%;
  color: #24563f;
  display: inline-flex;
  font-size: 12px;
  font-weight: 700;
  height: 28px;
  justify-content: center;
  width: 28px;
}

.timeline-list strong,
.timeline-list small {
  display: block;
}

.timeline-list small {
  color: #68766e;
  margin-top: 2px;
}

.summary-strip {
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
}

.summary-strip > div {
  background: #ffffff;
  border: 1px solid #d8ddd5;
  padding: 14px;
}

.summary-strip span,
.summary-strip strong {
  display: block;
}

.summary-strip span {
  color: #68766e;
  font-size: 12px;
  margin-bottom: 5px;
}

.form-surface {
  max-width: 720px;
}

.form-alert {
  background: #fff1f0;
  border-left: 3px solid #b42318;
  color: #7a271a;
  padding: 10px 12px;
}

.has-error input,
.has-error select,
.has-error textarea {
  border-color: #b42318;
}

.visually-hidden {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  white-space: nowrap;
  width: 1px;
}

@media (max-width: 1040px) {
  .operator-layout {
    display: block;
  }

  .operator-sidebar {
    display: none;
  }

  .mobile-navigation {
    display: block;
    position: relative;
  }

  .mobile-navigation summary {
    border: 1px solid #71847a;
    border-radius: 5px;
    cursor: pointer;
    font-weight: 700;
    list-style: none;
    padding: 7px 10px;
  }

  .mobile-navigation[open] .workspace-nav {
    background: #ffffff;
    border: 1px solid #d8ddd5;
    border-radius: 6px;
    box-shadow: 0 8px 24px rgba(17, 36, 28, 0.16);
    max-height: calc(100vh - 90px);
    min-width: 240px;
    overflow-y: auto;
    padding: 8px;
    position: absolute;
    right: 0;
    top: 42px;
  }
}

@media (max-width: 760px) {
  .document-flow-detail {
    min-width: 0;
  }

  .document-flow-detail table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
  }

  .operator-topbar {
    flex-wrap: wrap;
    padding: 9px 14px;
  }

  .topbar-actions {
    min-width: 0;
  }

  .topbar-actions .operator-name,
  .topbar-actions .nav-action,
  .topbar-actions form {
    display: none;
  }

  .topbar-actions .button.compact {
    font-size: 13px;
  }

  .operator-layout > .page-shell {
    padding: 22px 16px 40px;
  }

  .operator-layout > .page-shell.document-detail-shell {
    padding: 18px 10px 36px;
  }

  .workspace-header,
  .section-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .workspace-header h1 {
    font-size: 26px;
  }

  .identity-detail-grid,
  .demand-detail-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .lead-primary-identity {
    padding: 15px;
  }

  .primary-section-action > summary,
  .manual-address-action > summary {
    display: flex;
    overflow-wrap: break-word;
    width: 100%;
  }

  .document-receipt-action {
    margin-left: 0;
    width: 100%;
  }

  .compact-context-section > summary {
    align-items: flex-start;
  }

  .compact-context-section > summary small {
    white-space: normal;
  }

  .split-sections,
  .summary-strip {
    grid-template-columns: 1fr;
  }

  .metric-item {
    min-height: 88px;
  }
}

/* 5CE: action-first Matter with deep context loaded on demand. */
.matter-context-hero {
  align-items: flex-start;
  background: linear-gradient(135deg, #f8faf9, #eef3f1);
  border: 1px solid var(--vr-border);
  border-radius: 20px;
  display: flex;
  gap: 24px;
  justify-content: space-between;
  padding: 30px 32px;
}

.matter-context-hero h1 {
  color: var(--vr-ink-strong, var(--ink));
  font-size: clamp(28px, 4vw, 40px);
  line-height: 1.12;
  margin: 0;
}

.matter-context-hero .matter-title {
  color: var(--brand-dark);
  font-size: 18px;
  font-weight: 750;
  margin: 8px 0 0;
}

.matter-context-client,
.context-intelligence-intro {
  color: var(--muted);
  margin: 6px 0 0;
}

.context-narrative {
  background: var(--surface);
  border: 1px solid var(--vr-border);
  border-radius: 16px;
  margin-top: 18px;
  padding: 20px 22px;
}

.context-narrative h2 {
  font-size: 20px;
  margin: 2px 0 7px;
}

.context-narrative p:last-child { margin-bottom: 0; }

.context-intelligence-intro {
  max-width: 78ch;
  padding: 18px 2px 6px;
}

.context-intelligence-sections {
  display: grid;
  gap: 18px;
  margin-top: 18px;
}

.intelligence-section {
  background: var(--surface);
  border: 1px solid var(--vr-border);
  border-radius: 16px;
  padding: 22px;
  scroll-margin-top: 120px;
}

.intelligence-section .section-heading { margin-bottom: 15px; }
.intelligence-section .section-heading h2 { font-size: 22px; }
.context-return-action { display: flex; justify-content: flex-start; margin-top: 22px; }

@media (max-width: 760px) {
  .matter-context-hero { flex-direction: column; padding: 24px 20px; }
  .matter-context-hero .button { width: 100%; }
  .context-narrative,
  .intelligence-section { border-radius: 14px; padding: 18px 16px; }
}

@media (max-width: 420px) {
  .matter-context-hero { border-radius: 14px; padding: 22px 16px; }
  .matter-context-hero h1 { font-size: 29px; }
  .context-narrative,
  .intelligence-section { padding: 16px 14px; }
}

/* 5CE final human presentation layer. */
.matter-context-narrative {
  color: var(--vr-ink-soft, var(--muted));
  margin: 8px 0 0;
  max-width: 72ch;
}

.matter-context-narrative strong { color: var(--vr-ink-strong, var(--ink)); }

.human-fact-list {
  display: grid;
  gap: 0;
  margin: 10px 0 0;
  max-width: 44rem;
}

.human-fact-list > div {
  border-top: 1px solid var(--vr-border, var(--line));
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(96px, .35fr) minmax(0, 1fr);
  padding: 7px 0;
}

.human-fact-list dt {
  color: var(--vr-ink-soft, var(--muted));
  font-size: 12px;
  font-weight: 720;
}

.human-fact-list dd {
  color: var(--vr-ink-strong, var(--ink));
  margin: 0;
  overflow-wrap: anywhere;
}

.row-technical-details,
.work-product-history {
  border-top: 1px solid var(--vr-border, var(--line));
  margin-top: 12px;
  padding-top: 10px;
}

.row-technical-details > summary,
.work-product-history > summary {
  color: var(--vr-primary-strong, var(--brand-dark));
  cursor: pointer;
  font-size: 13px;
  font-weight: 720;
}

.row-technical-details dl {
  display: grid;
  gap: 0;
  margin: 10px 0 0;
}

.row-technical-details dl > div {
  border-top: 1px solid var(--vr-border, var(--line));
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(130px, .35fr) minmax(0, 1fr);
  padding: 8px 0;
}

.row-technical-details dt {
  color: var(--vr-ink-soft, var(--muted));
  font-size: 12px;
  font-weight: 720;
}

.row-technical-details dd {
  margin: 0;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}

.technical-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 10px;
}

.technical-actions a {
  color: var(--vr-primary-strong, var(--brand-dark));
  font-size: 13px;
  font-weight: 720;
}

.work-product-history {
  margin: 18px 0 4px;
}

.work-product-history .data-table { margin-top: 12px; }

.work-product-technical-details { margin-top: 24px; }

.matter-technical-audit {
  margin-top: 24px;
}

.matter-technical-audit > summary {
  color: var(--vr-primary-strong, var(--brand-dark));
  cursor: pointer;
  font-size: 15px;
  font-weight: 760;
}

.matter-technical-audit > p {
  color: var(--vr-ink-soft, var(--muted));
  margin: 12px 0 0;
}

.technical-audit-list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.technical-audit-list article,
.matter-technical-audit > article {
  background: var(--vr-surface-subtle, #f7f9fb);
  border: 1px solid var(--vr-border, var(--line));
  border-radius: 10px;
  padding: 14px;
}

.technical-audit-list h3,
.matter-technical-audit h3 {
  margin: 4px 0 8px;
}

.technical-audit-list dl,
.matter-technical-audit dl {
  display: grid;
  gap: 0;
  margin: 10px 0 0;
}

.technical-audit-list dl > div,
.matter-technical-audit dl > div {
  border-top: 1px solid var(--vr-border, var(--line));
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(140px, .35fr) minmax(0, 1fr);
  padding: 8px 0;
}

.technical-audit-list dt,
.matter-technical-audit dt {
  color: var(--vr-ink-soft, var(--muted));
  font-size: 12px;
  font-weight: 720;
}

.technical-audit-list dd,
.matter-technical-audit dd {
  margin: 0;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}

@media (max-width: 760px) {
  .human-fact-list > div,
  .row-technical-details dl > div,
  .technical-audit-list dl > div,
  .matter-technical-audit dl > div {
    gap: 3px;
    grid-template-columns: 1fr;
  }

  .work-product-history {
    max-width: 100%;
    overflow-x: auto;
  }
}

/* 5CE — bounded document-flow stabilization */
.document-flow-overview {
  display: grid;
  gap: 22px;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
  margin: 22px 0 28px;
}

.document-requirement-grid,
.document-complement-list {
  display: grid;
  gap: 10px;
}

.document-requirement-card,
.document-complement-list article,
.office-result-list {
  background: var(--vr-surface, #fff);
  border: 1px solid var(--vr-border, #d7dfe7);
  border-radius: 12px;
  padding: 16px;
}

.document-requirement-card > div:first-child {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.document-requirement-card p,
.document-complement-list small,
.public-validation-state,
.collection-automation-note {
  color: var(--muted, #647386);
  line-height: 1.5;
}

.document-complement-list article > * {
  display: block;
  margin-top: 4px;
}

.document-file-link {
  color: var(--vr-primary, #285e73);
  font-weight: 720;
  overflow-wrap: anywhere;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.document-file-link:focus-visible {
  outline: 3px solid var(--focus, #80b6c8);
  outline-offset: 3px;
}

.receipt-history {
  margin-top: 6px;
}

.receipt-history summary {
  color: var(--vr-primary, #285e73);
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
}

.receipt-history p {
  color: var(--muted, #647386);
  font-size: 12px;
  margin: 5px 0 0;
}

.public-document-page {
  background: #f2f5f7;
  color: #243241;
}

.public-document-page .page-shell {
  max-width: 920px;
}

.public-document-page .surface {
  border-color: #d2dce5;
  box-shadow: 0 14px 34px rgb(35 57 76 / 7%);
}

.public-validation-state {
  font-size: 13px;
  margin: 9px 0 0;
}

@media (max-width: 760px) {
  .document-flow-overview {
    grid-template-columns: 1fr;
  }

  .document-requirement-card > div:first-child {
    align-items: flex-start;
    flex-direction: column;
  }
}

.login-panel {
  width: min(100%, 420px);
  margin: 64px auto 0;
  border: 1px solid #d8ddd5;
  border-radius: 8px;
  background: #ffffff;
  padding: 28px;
}

.login-panel h1 {
  margin: 0 0 8px;
  font-size: 30px;
  letter-spacing: 0;
}

.login-panel button {
  width: 100%;
}

.eyebrow {
  margin: 0 0 6px;
  color: #64736b;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.muted {
  margin: 0;
  color: #64736b;
}

.operations-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 24px;
}

.operations-header h1 {
  margin: 0 0 6px;
  font-size: 32px;
  line-height: 1.15;
  letter-spacing: 0;
}

.health-status {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 240px;
  border: 1px solid #d8ddd5;
  border-radius: 8px;
  background: #ffffff;
  padding: 12px 14px;
}

.health-status strong,
.health-status small {
  display: block;
}

.health-status small {
  margin-top: 3px;
  color: #64736b;
}

.health-details {
  display: flex;
  flex-wrap: wrap;
  gap: 3px 10px;
  margin-top: 8px;
  color: #58665e;
  font-size: 12px;
}

.status-dot {
  width: 10px;
  height: 10px;
  flex: 0 0 10px;
  border-radius: 50%;
  background: #7b8780;
}

.tone-good .status-dot { background: #18794e; }
.tone-warning .status-dot { background: #b25e09; }
.tone-critical .status-dot { background: #b42318; }
.tone-active .status-dot { background: #1769aa; }

.metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 28px;
}

.metric-item {
  min-height: 104px;
  border: 1px solid #d8ddd5;
  border-top: 3px solid #7b8780;
  border-radius: 8px;
  background: #ffffff;
  padding: 16px;
}

.metric-item span,
.metric-item strong {
  display: block;
}

.metric-item span {
  color: #58665e;
  font-size: 14px;
  line-height: 1.35;
}

.metric-item strong {
  margin-top: 10px;
  font-size: 28px;
  line-height: 1;
}

.metric-item.tone-good { border-top-color: #18794e; }
.metric-item.tone-warning { border-top-color: #b25e09; }
.metric-item.tone-critical { border-top-color: #b42318; }
.metric-item.tone-active { border-top-color: #1769aa; }

.operations-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.operation-section {
  min-width: 0;
  border-top: 1px solid #cfd6d1;
  padding-top: 18px;
}

.priority-section {
  grid-column: 1 / -1;
}

.section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.section-heading h2 {
  margin: 0;
  font-size: 21px;
  line-height: 1.25;
  letter-spacing: 0;
}

.operational-list {
  display: grid;
  border: 1px solid #d8ddd5;
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
}

.operational-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-width: 0;
  border-bottom: 1px solid #e4e8e3;
  color: #1c2520;
  padding: 13px 14px;
  text-decoration: none;
}

.operational-row:last-child {
  border-bottom: 0;
}

a.operational-row:hover,
a.operational-row:focus {
  background: #f5f8f5;
}

.operational-row > div:first-child {
  min-width: 0;
}

.operational-row strong,
.operational-row span {
  display: block;
}

.operational-row strong {
  overflow-wrap: anywhere;
}

.operational-row div > span,
.row-status {
  margin-top: 3px;
  color: #64736b;
  font-size: 13px;
}

.document-hash {
  font-family: Consolas, "Courier New", monospace;
  overflow-wrap: anywhere;
}

.document-origin,
.document-origin small {
  display: block;
}

.document-origin + .document-origin {
  margin-top: 8px;
}

.document-origin small {
  color: #68766e;
  margin-top: 2px;
}

.document-detail-shell .detail-band {
  margin-bottom: 18px;
}

.document-detail-layout {
  align-items: start;
  display: grid;
  gap: clamp(24px, 2.5vw, 48px);
  grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
}

.document-detail-summary {
  min-width: 0;
}

.web-classification-panel {
  border-top: 1px solid #d8ddd5;
  padding-top: 18px;
}

.web-handoff-identity {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.web-classification-prompt {
  width: 100%;
  resize: vertical;
  font-family: Consolas, "Courier New", monospace;
  font-size: 12px;
  line-height: 1.45;
}

.web-classification-confirmation {
  color: #315c49;
  font-weight: 700;
  margin: 10px 0 0;
}

.web-classification-confirmation.is-error {
  color: #9d2727;
}

.web-classification-import {
  display: grid;
  gap: 10px;
  margin-top: 18px;
}

.web-classification-import textarea {
  line-height: 1.45;
  resize: vertical;
  width: 100%;
}

.web-classification-import button {
  justify-self: start;
}

.web-classification-technical {
  margin-top: 22px;
}

.web-classification-technical label {
  display: block;
  margin-bottom: 6px;
}

.clipboard-fallback {
  left: -9999px;
  position: fixed;
  top: 0;
}

.document-detail-summary .workspace-header {
  gap: 16px;
}

.document-detail-summary .header-actions {
  justify-content: flex-start;
}

.document-preview-section {
  align-self: start;
  margin-top: 0;
  max-width: 100%;
  position: sticky;
  top: 86px;
  width: 100%;
}

.document-fields,
.document-history {
  margin-top: 24px;
}

.document-preview-frame {
  background: #ffffff;
  border: 1px solid #d8ddd5;
  display: block;
  height: 74vh;
  max-height: 1100px;
  min-height: 540px;
  width: 100%;
}

.document-image-stage {
  align-items: center;
  background: #f4f6f4;
  border: 1px solid #d8ddd5;
  display: flex;
  justify-content: center;
  min-height: min(65vh, 780px);
  overflow: auto;
  padding: 18px;
}

.document-image-stage img {
  height: auto;
  max-height: 68vh;
  max-width: 100%;
}

@media (max-width: 1240px) {
  .document-detail-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .document-preview-section {
    position: static;
    width: 100%;
  }

  .document-preview-frame {
    height: 70vh;
    min-height: 460px;
  }
}

@media (max-width: 760px) {
  .document-preview-frame {
    height: 70vh;
    min-height: 360px;
  }

  .document-image-stage {
    min-height: 50vh;
    padding: 8px;
  }
}

.row-status {
  flex: 0 0 auto;
  margin-top: 0;
  text-align: right;
}

.row-status time {
  display: block;
  margin-top: 3px;
}

.status-label {
  display: inline-block;
  border-left: 3px solid #7b8780;
  color: #34433b;
  padding-left: 8px;
  font-size: 13px;
  font-weight: 700;
}

.status-label.tone-good { border-left-color: #18794e; }
.status-label.tone-warning,
.status-label.state-warning,
.status-label.state-approaching { border-left-color: #b25e09; }
.status-label.tone-critical,
.status-label.state-overdue,
.status-label.state-authority_conflict { border-left-color: #b42318; }
.status-label.tone-active,
.status-label.state-due { border-left-color: #1769aa; }

.scope-note {
  margin: 10px 0 0;
  color: #64736b;
  font-size: 13px;
}

.list-summary {
  margin: 8px 0 0;
  color: #64736b;
  font-size: 13px;
}

.attention-note {
  border-left: 3px solid #b25e09;
  margin: 0 0 12px;
  background: #fff8ed;
  color: #6f3b09;
  padding: 10px 12px;
  line-height: 1.45;
}

@media (max-width: 720px) {
  .operations-header {
    align-items: stretch;
    flex-direction: column;
  }

  .health-status {
    min-width: 0;
  }

  .metric-grid,
  .operations-grid {
    grid-template-columns: 1fr;
  }

  .priority-section {
    grid-column: auto;
  }

  .operational-row {
    align-items: flex-start;
    flex-direction: column;
  }

  .row-status {
    text-align: left;
  }
}

/* Operation tower */
.operation-summary {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 20px;
  border-top: 1px solid #d8ddd5;
  border-bottom: 1px solid #d8ddd5;
  padding: 14px 0;
}

.operation-summary > div {
  min-width: 190px;
  border-right: 1px solid #d8ddd5;
  padding: 0 24px;
}

.operation-summary > div:first-child { padding-left: 0; }
.operation-summary > div:last-child { border-right: 0; }
.operation-summary strong,
.operation-summary span { display: block; }
.operation-summary strong { font-size: 23px; line-height: 1; }
.operation-summary span { margin-top: 7px; color: #64736b; font-size: 13px; }

.operation-toolbar {
  align-items: center;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  margin-bottom: 14px;
}

.operation-filters {
  display: inline-flex;
  border: 1px solid #d8ddd5;
  border-radius: 6px;
  background: #ffffff;
  padding: 2px;
}

.operation-filters button {
  min-height: 34px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #4d5d55;
  padding: 6px 12px;
  font-size: 13px;
}

.operation-filters button.current {
  background: #2f6a54;
  color: #ffffff;
}
.operation-filters button:disabled { color: #9aa49e; cursor: default; }

.operation-search { width: min(340px, 36vw); }
.operation-search input { min-height: 40px; }

.operation-workspace {
  display: grid;
  grid-template-columns: minmax(650px, 1fr) 370px;
  min-height: 610px;
  border-top: 1px solid #d8ddd5;
  border-bottom: 1px solid #d8ddd5;
  background: #ffffff;
}
.operation-workspace.empty { min-height: 280px; }

.operation-queue { min-width: 0; }
.operation-queue-head,
.operation-queue-row {
  display: grid;
  grid-template-columns: 18px minmax(180px, 1.2fr) minmax(160px, 1fr) 120px minmax(160px, 1fr);
  gap: 12px;
  align-items: center;
}

.operation-queue-head {
  min-height: 43px;
  border-bottom: 1px solid #d8ddd5;
  background: #f4f7f5;
  color: #64736b;
  padding: 0 14px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
}

.operation-queue-row {
  width: 100%;
  min-height: 86px;
  border: 0;
  border-bottom: 1px solid #e4e8e3;
  border-radius: 0;
  background: #ffffff;
  color: #1c2520;
  padding: 11px 14px;
  text-align: left;
}

.operation-queue-row:hover,
.operation-queue-row:focus-visible,
.operation-queue-row.selected {
  outline: 0;
  background: #f7faf8;
  box-shadow: inset 3px 0 0 #2f6a54;
}

.operation-queue-row[hidden] { display: none; }
.operation-queue-row > span { min-width: 0; }

.queue-priority-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #7b8780;
}

.operation-queue-row.tone-good .queue-priority-dot { background: #18794e; }
.operation-queue-row.tone-warning .queue-priority-dot { background: #d49a20; }
.operation-queue-row.tone-critical .queue-priority-dot { background: #b42318; }
.operation-queue-row.tone-active .queue-priority-dot { background: #1769aa; }

.queue-identity strong,
.queue-current strong,
.queue-next strong,
.queue-deadline strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
}

.queue-identity > span,
.queue-current > span:not(.case-pulse),
.queue-next > span,
.queue-deadline time {
  display: block;
  overflow: hidden;
  margin-top: 4px;
  color: #64736b;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 11px;
}

.case-pulse { display: flex; gap: 5px; margin-top: 8px; }
.case-pulse span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border: 1px solid #cfd7d2;
  border-radius: 50%;
  color: #68746e;
  background: #ffffff;
  font-size: 9px;
  font-weight: 700;
}

.case-pulse span.tone-good { border-color: #18794e; background: #18794e; color: #ffffff; }
.case-pulse span.tone-warning { border-color: #d49a20; background: #f2c14e; color: #4f3900; }
.case-pulse span.tone-critical { border-color: #b42318; background: #b42318; color: #ffffff; }
.case-pulse span.tone-active { border-color: #1769aa; background: #1769aa; color: #ffffff; }

.queue-state {
  display: inline-flex !important;
  width: fit-content;
  max-width: 100%;
  border-radius: 4px;
  padding: 3px 6px;
  font-weight: 700;
}

.queue-state.tone-good { color: #17613e; background: #e8f1ed; }
.queue-state.tone-warning { color: #765500; background: #fff7df; }
.queue-state.tone-critical { color: #8b1710; background: #fff0ee; }
.queue-state.tone-active { color: #174e86; background: #edf5fb; }

.operation-queue-foot,
.operation-empty {
  margin: 0;
  background: #f4f7f5;
  color: #64736b;
  padding: 11px 14px;
  font-size: 12px;
}
.operation-queue-foot { display: flex; flex-wrap: wrap; gap: 8px 16px; justify-content: space-between; }
.operation-queue-foot strong { color: #8b1710; }
.operation-queue-foot nav { display: inline-flex; gap: 12px; }
.operation-queue-foot a { color: #245b47; font-weight: 700; }

.operation-detail {
  border-left: 1px solid #d8ddd5;
  background: #fcfdfc;
  padding: 19px 20px 24px;
}

.operation-detail h2 { margin: 0; font-size: 20px; }
.operation-detail-meta { margin: 5px 0 17px; color: #64736b; font-size: 13px; line-height: 1.4; }
.operation-detail-block { border-top: 1px solid #d8ddd5; padding: 14px 0; }
.operation-detail-block h3 { margin: 0 0 8px; font-size: 12px; text-transform: uppercase; }
.operation-detail-block p { margin: 0; font-size: 13px; line-height: 1.5; }
.operation-detail-block p span { color: #64736b; }

.operation-detail-list { display: grid; gap: 9px; margin: 0; }
.operation-detail-list > div { display: grid; grid-template-columns: 90px 1fr; gap: 9px; font-size: 12px; }
.operation-detail-list dt { color: #64736b; }
.operation-detail-list dd { margin: 0; font-weight: 700; overflow-wrap: anywhere; }

.operation-safe-action {
  border-left: 3px solid #2f6a54;
  background: #e8f1ed;
  margin-top: 3px;
  padding: 13px;
}

.operation-safe-action span,
.operation-safe-action strong,
.operation-safe-action small { display: block; }
.operation-safe-action span { color: #64736b; font-size: 10px; font-weight: 700; text-transform: uppercase; }
.operation-safe-action strong { margin-top: 5px; font-size: 14px; }
.operation-safe-action small { margin-top: 5px; color: #64736b; line-height: 1.4; }
.operation-automation-note { margin: 13px 0 0; color: #64736b; font-size: 11px; line-height: 1.5; }
.operation-automation-note strong { color: #2f6a54; }

.operation-detail-actions { display: flex; gap: 8px; margin-top: 15px; }
.operation-detail-actions .button { min-height: 37px; padding: 7px 10px; font-size: 12px; }

.operation-action-menu { margin-top: 9px; }
.operation-action-menu summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 37px;
  border: 1px solid #d8ddd5;
  border-radius: 5px;
  background: #ffffff;
  padding: 7px 10px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}
.operation-action-menu summary::-webkit-details-marker { display: none; }
.operation-action-menu summary::after { content: "+"; color: #64736b; }
.operation-action-menu[open] summary::after { content: "-"; }
.operation-action-menu > div { border: 1px solid #d8ddd5; border-top: 0; padding: 5px; }
.operation-action-menu a { display: grid; gap: 2px; border-radius: 3px; color: #1c2520; padding: 8px; text-decoration: none; }
.operation-action-menu a:hover,
.operation-action-menu a:focus { background: #e8f1ed; }
.operation-action-menu a strong { font-size: 12px; }
.operation-action-menu a span { color: #64736b; font-size: 10px; }

@media (max-width: 1360px) {
  .operation-workspace { grid-template-columns: 1fr; }
  .operation-detail { border-top: 1px solid #d8ddd5; border-left: 0; }
  .operation-queue-head,
  .operation-queue-row { grid-template-columns: 18px minmax(180px, 1.2fr) minmax(160px, 1fr) 110px; }
  .operation-queue-head > :last-child,
  .operation-queue-row > :last-child { display: none; }
}

@media (max-width: 720px) {
  .operation-summary > div { min-width: 50%; margin: 7px 0; padding: 0 12px; }
  .operation-summary > div:nth-child(2) { border-right: 0; }
  .operation-toolbar { align-items: stretch; flex-direction: column; }
  .operation-filters { width: 100%; overflow-x: auto; }
  .operation-filters button { flex: 1 0 auto; }
  .operation-search { width: 100%; }
  .operation-queue-head { display: none; }
  .operation-queue-row { grid-template-columns: 18px minmax(0, 1fr) 86px; }
  .queue-current { grid-column: 2 / -1; }
  .queue-next { display: none; }
  .queue-state { white-space: normal !important; overflow-wrap: anywhere; }
  .operation-detail-actions { flex-wrap: wrap; }
  .operation-workspace.empty { min-height: 0; }
  .operation-workspace.empty .operation-detail { min-height: 180px; }
}

/* 5CD — visual slice 1 */
:root {
  --ink: #17231d;
  --muted: #5d6c64;
  --line: #d7ded9;
  --surface: #ffffff;
  --surface-soft: #f3f6f4;
  --brand: #245f45;
  --brand-dark: #163d2c;
  --focus: #0b68b2;
  --automatic: #1769aa;
  --waiting: #8a5a00;
  --completed: #18794e;
  --exception: #a42a22;
}

.operator-session {
  background: #f5f7f5;
  color: var(--ink);
  font-size: 16px;
  line-height: 1.5;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
  outline: 3px solid var(--focus);
  outline-offset: 3px;
}

.global-search {
  align-items: center;
  background: #ffffff;
  border: 1px solid #708178;
  border-radius: 8px;
  display: flex;
  flex: 1 1 480px;
  gap: 9px;
  max-width: 680px;
  padding: 0 12px;
}

.global-search:focus-within {
  border-color: #8fc2ff;
  box-shadow: 0 0 0 3px rgba(143, 194, 255, .3);
}

.global-search svg {
  fill: none;
  flex: 0 0 19px;
  height: 19px;
  stroke: #53645b;
  stroke-linecap: round;
  stroke-width: 2;
  width: 19px;
}

.global-search input {
  border: 0;
  min-height: 42px;
  padding: 8px 0;
}

.operator-menu {
  position: relative;
}

.operator-menu > summary {
  border: 1px solid #71847a;
  border-radius: 6px;
  color: #f3f7f5;
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
  list-style: none;
  max-width: 220px;
  overflow: hidden;
  padding: 8px 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.operator-menu > summary::-webkit-details-marker { display: none; }

.operator-menu > div {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: 0 12px 32px rgba(17, 36, 28, .2);
  display: grid;
  min-width: 210px;
  padding: 7px;
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
}

.operator-menu a,
.operator-menu button {
  background: transparent;
  border: 0;
  border-radius: 5px;
  color: #24352c;
  display: block;
  font-size: 14px;
  justify-content: flex-start;
  min-height: 40px;
  padding: 9px 10px;
  text-align: left;
  text-decoration: none;
  width: 100%;
}

.operator-menu a:hover,
.operator-menu button:hover { background: #edf3ef; }
.operator-menu form { margin: 0; }

.workspace-secondary {
  border-top: 1px solid #e0e6e2;
  display: grid;
  gap: 2px;
  margin-top: 18px;
  padding-top: 14px;
}

.workspace-secondary > span {
  color: #6a776f;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  padding: 0 13px 6px;
  text-transform: uppercase;
}

.background-status {
  background: #eff5fa;
  border: 1px solid #aac4d8;
  border-radius: 7px;
  bottom: 18px;
  box-shadow: 0 6px 20px rgba(25, 48, 37, .14);
  color: #214c68;
  font-size: 14px;
  left: 50%;
  max-width: min(540px, calc(100vw - 32px));
  padding: 11px 14px;
  position: fixed;
  transform: translateX(-50%);
  z-index: 50;
}

.background-status[data-kind="error"] {
  background: #fff2f0;
  border-color: #dfaaa4;
  color: #7d211a;
}

.cockpit-toolbar,
.context-section-heading,
.matter-hero,
.matter-switcher,
.workspace-tabs {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.cockpit-toolbar {
  gap: 20px;
  margin: 0 0 22px;
}

.cockpit-toolbar p { color: var(--muted); margin: 0; }
.cockpit-toolbar a { color: var(--brand); font-weight: 700; }
.cockpit-groups { display: grid; gap: 34px; }

.cockpit-group > header {
  align-items: flex-start;
  border-bottom: 1px solid #c9d2cc;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  margin-bottom: 10px;
  padding-bottom: 10px;
}

.cockpit-group h2 { font-size: 21px; margin: 0; }
.cockpit-group header p { color: var(--muted); margin: 3px 0 0; }
.cockpit-count {
  align-items: center;
  background: #e8eeea;
  border-radius: 999px;
  color: #31443a;
  display: inline-flex;
  font-weight: 800;
  height: 32px;
  justify-content: center;
  min-width: 32px;
  padding: 0 9px;
}

.cockpit-list {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 9px;
  overflow: hidden;
}

.cockpit-item {
  align-items: center;
  border-bottom: 1px solid #e3e8e5;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(210px, 1.25fr) minmax(190px, 1fr) minmax(110px, .55fr) minmax(180px, 1fr);
  min-width: 0;
  padding: 16px;
}

.cockpit-item:last-child { border-bottom: 0; }
.cockpit-item-main { align-items: flex-start; display: flex; gap: 11px; min-width: 0; }
.cockpit-item h3 { font-size: 16px; margin: 0; }
.cockpit-item h3 a { color: var(--ink); }
.cockpit-item p { color: var(--muted); font-size: 14px; margin: 3px 0 0; }
.cockpit-item strong { display: block; font-size: 14px; overflow-wrap: anywhere; }
.cockpit-item > div > span:not(.state-indicator) {
  color: var(--muted);
  display: block;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 3px;
  text-transform: uppercase;
}
.cockpit-item time { color: var(--muted); display: block; font-size: 14px; }
.cockpit-action a { color: var(--brand); display: inline-block; font-size: 14px; font-weight: 700; margin-top: 5px; }
.state-indicator { background: #708078; border-radius: 50%; flex: 0 0 10px; height: 10px; margin-top: 7px; width: 10px; }
.cockpit-item.tone-good .state-indicator,
.cockpit-item.tone-success .state-indicator { background: var(--completed); }
.cockpit-item.tone-warning .state-indicator { background: var(--waiting); }
.cockpit-item.tone-critical .state-indicator,
.cockpit-item.tone-danger .state-indicator { background: var(--exception); }
.cockpit-item.tone-active .state-indicator { background: var(--automatic); }

.journey-breadcrumb {
  align-items: center;
  color: var(--muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 14px;
  gap: 8px;
  margin-bottom: 14px;
}
.journey-breadcrumb a { color: var(--brand); }

.matter-hero {
  align-items: stretch;
  background: #183d2d;
  border-radius: 11px;
  color: #ffffff;
  gap: 28px;
  margin-bottom: 18px;
  padding: clamp(22px, 3vw, 36px);
}
.matter-identity { min-width: 0; }
.matter-hero .eyebrow { color: #bad1c5; }
.matter-hero h1 { font-size: clamp(28px, 4vw, 42px); line-height: 1.12; margin: 0; overflow-wrap: anywhere; }
.matter-title { color: #e1ebe5; font-size: 19px; margin: 7px 0 16px; }
.matter-meta { align-items: center; display: flex; flex-wrap: wrap; gap: 9px 14px; }
.matter-meta > span:not(.state-chip) { color: #c5d7ce; font-size: 14px; }

.next-action-panel {
  align-self: center;
  background: #ffffff;
  border-radius: 9px;
  color: var(--ink);
  flex: 0 1 390px;
  padding: 18px 20px;
}
.next-action-panel > span { color: var(--muted); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.next-action-panel strong { display: block; font-size: 18px; margin: 5px 0; }
.next-action-panel p { color: var(--muted); margin: 0; }

.matter-switcher { background: #eef3f0; border-radius: 8px; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; padding: 10px 12px; }
.matter-switcher > span { color: var(--muted); font-size: 13px; font-weight: 700; margin-right: auto; }
.matter-switcher a { border-radius: 5px; color: var(--brand); padding: 6px 9px; text-decoration: none; }
.matter-switcher a.current { background: #ffffff; box-shadow: inset 0 0 0 1px #b6c4bc; font-weight: 700; }

.workspace-tabs {
  border-bottom: 1px solid #cbd4ce;
  justify-content: flex-start;
  overflow-x: auto;
  position: sticky;
  top: 68px;
  z-index: 10;
  background: #f5f7f5;
}
.workspace-tabs a { border-bottom: 3px solid transparent; color: #3e5046; flex: 0 0 auto; font-weight: 700; padding: 13px 14px 10px; text-decoration: none; }
.workspace-tabs a:hover,
.workspace-tabs a:focus { border-bottom-color: var(--brand); color: var(--brand-dark); }

.context-section { scroll-margin-top: 135px; padding: 34px 0 8px; }
.context-section + .context-section { border-top: 1px solid #d2dad5; margin-top: 28px; }
.context-section-heading { align-items: flex-end; gap: 18px; margin-bottom: 17px; }
.context-section-heading h2 { font-size: 24px; line-height: 1.2; margin: 0; }

.summary-grid,
.onboarding-grid,
.work-summary-grid { display: grid; gap: 14px; }
.summary-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.summary-grid article,
.work-summary-grid article {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 8px;
  min-width: 0;
  padding: 16px;
}
.summary-grid span { color: var(--muted); display: block; font-size: 13px; font-weight: 700; }
.summary-grid strong { display: block; font-size: 17px; margin: 6px 0; overflow-wrap: anywhere; }
.summary-grid p { color: var(--muted); font-size: 14px; margin: 0; }

.state-chip {
  border: 1px solid currentColor;
  border-radius: 999px;
  display: inline-flex;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.25;
  padding: 5px 9px;
}
.state-automatic { background: #edf5fb; color: #145b91; }
.state-waiting { background: #fff6dd; color: #765000; }
.state-completed { background: #eaf5ef; color: #11653d; }
.state-exception { background: #fff0ee; color: #912018; }
.state-neutral,
.state-progress { background: #eef2ef; color: #405047; }

.onboarding-steps,
.lead-journey {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
}
.onboarding-steps li,
.lead-journey li { color: #65736b; font-size: 13px; min-width: 0; position: relative; text-align: center; }
.onboarding-steps li::before,
.lead-journey li::before { background: #ced7d1; content: ""; height: 2px; left: -50%; position: absolute; top: 9px; width: 100%; }
.onboarding-steps li:first-child::before,
.lead-journey li:first-child::before { display: none; }
.onboarding-steps li > span,
.lead-journey li > span { background: #ffffff; border: 2px solid #9aa8a0; border-radius: 50%; display: block; height: 20px; margin: 0 auto 7px; position: relative; width: 20px; z-index: 1; }
.onboarding-steps li.completed,
.lead-journey li.completed { color: #145f3a; }
.onboarding-steps li.completed::before,
.lead-journey li.completed::before { background: var(--completed); }
.onboarding-steps li.completed > span,
.lead-journey li.completed > span { background: var(--completed); border-color: var(--completed); }
.onboarding-steps li.current,
.lead-journey li.current { color: #183d2d; font-weight: 800; }
.onboarding-steps li.current > span,
.lead-journey li.current > span { border-color: var(--brand); box-shadow: 0 0 0 4px #dcebe2; }

.exception-panel {
  background: #fff4f2;
  border: 1px solid #e6aaa4;
  border-left: 5px solid var(--exception);
  border-radius: 8px;
  margin-bottom: 20px;
  padding: 18px;
}
.exception-panel > div > span { color: #85231c; font-size: 13px; font-weight: 800; text-transform: uppercase; }
.exception-panel h3 { font-size: 19px; margin: 4px 0 14px; }
.exception-panel dl { display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; }
.exception-panel dl div { background: rgba(255,255,255,.7); border-radius: 6px; padding: 11px; }
.exception-panel dt { color: #6d514e; font-size: 12px; font-weight: 800; text-transform: uppercase; }
.exception-panel dd { margin: 4px 0 0; }

.onboarding-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.onboarding-grid > div { min-width: 0; }
.onboarding-grid h3,
.work-summary-grid h3 { font-size: 17px; margin: 0 0 10px; }
.requirement-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-left: 4px solid #7d8982;
  border-radius: 7px;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(130px, .7fr) minmax(0, 1.3fr);
  margin-bottom: 9px;
  padding: 14px;
}
.requirement-card.state-completed { border-left-color: var(--completed); }
.requirement-card.state-waiting { border-left-color: var(--waiting); }
.requirement-card span { color: var(--muted); display: block; font-size: 12px; }
.requirement-card strong { display: block; }
.requirement-card p { color: var(--muted); font-size: 14px; margin: 3px 0 0; }
.document-summary-row { align-items: center; background: var(--surface); border: 1px solid var(--line); border-radius: 7px; color: var(--ink); display: flex; gap: 14px; justify-content: space-between; margin-bottom: 9px; padding: 13px; text-decoration: none; }
.document-summary-row:hover { border-color: #769684; }
.document-summary-row strong,
.document-summary-row small { display: block; }
.document-summary-row small { color: var(--muted); margin-top: 2px; }

.document-summary-bar {
  align-items: center;
  background: #f7f9fb;
  border: 1px solid var(--vr-border, var(--line));
  border-radius: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 22px;
  margin-bottom: 22px;
  padding: 12px 16px;
}
.document-summary-bar span { color: var(--muted); font-size: 13px; }
.document-summary-bar strong { color: var(--ink); font-size: 15px; margin-right: 3px; }
.document-summary-bar .has-attention strong { color: #8a5710; }
.document-summary-bar a { color: var(--vr-primary-strong, var(--brand-dark)); font-size: 13px; font-weight: 760; margin-left: auto; }

.document-compact-list { display: grid; gap: 8px; }
.document-compact-row {
  align-items: center;
  background: var(--surface);
  border: 1px solid var(--vr-border, var(--line));
  border-left: 3px solid transparent;
  border-radius: 10px;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1.35fr) minmax(88px, .55fr) minmax(0, 1fr);
  min-width: 0;
  padding: 11px 13px;
}
.document-compact-row.priority-exception,
.document-compact-row.priority-unresolved { border-left-color: #b5473c; background: #fffafa; }
.document-compact-row.priority-missing { border-left-color: #c58a27; }
.document-compact-row.priority-processing,
.document-compact-row.priority-not_queued { border-left-color: #6388a1; }
.document-compact-main,
.document-inline-links { min-width: 0; }
.document-compact-main strong,
.document-compact-main small,
.document-inline-links small { display: block; }
.document-compact-main small,
.document-compact-row > small,
.document-compact-row time,
.document-inline-links > small { color: var(--muted); font-size: 12px; overflow-wrap: anywhere; }
.document-inline-links { display: grid; gap: 5px; }
.document-compact-row .document-file-link.document-preview-trigger { margin-top: 0; padding: 7px 9px; }
.completed-document-group { border-top: 1px solid var(--vr-border, var(--line)); margin-top: 12px; padding-top: 10px; }
.completed-document-group > summary { color: var(--muted); cursor: pointer; font-size: 13px; font-weight: 740; margin-bottom: 10px; }
.matter-document-archive { margin-bottom: 24px; }
.document-archive-filter {
  align-items: end;
  background: #f7f9fb;
  border: 1px solid var(--vr-border, var(--line));
  border-radius: 12px;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(220px, 1fr) minmax(170px, .35fr) auto;
  margin: 14px 0;
  padding: 14px;
}
.document-archive-filter label { color: var(--muted); display: grid; font-size: 12px; font-weight: 720; gap: 5px; }
.document-archive-filter input,
.document-archive-filter select,
.document-archive-filter button { min-height: 42px; }
.matter-document-archive .document-compact-row { grid-template-columns: minmax(230px, 1.5fr) minmax(160px, .7fr) minmax(100px, .35fr); }
.operational-result-row { grid-template-columns: minmax(230px, 1.4fr) minmax(100px, .4fr) minmax(220px, 1fr); }

.work-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.work-row { align-items: center; border-top: 1px solid #e1e6e3; display: flex; gap: 12px; justify-content: space-between; padding: 10px 0; }
.work-row:first-of-type { border-top: 0; }

.matter-timeline { border-left: 2px solid #cbd5cf; list-style: none; margin: 0 0 0 7px; padding: 0 0 0 24px; }
.matter-timeline li { display: grid; gap: 16px; grid-template-columns: 130px minmax(0, 1fr); padding: 0 0 22px; position: relative; }
.matter-timeline li::before { background: #708078; border: 3px solid #f5f7f5; border-radius: 50%; content: ""; height: 13px; left: -32px; position: absolute; top: 5px; width: 13px; }
.matter-timeline li.tone-success::before { background: var(--completed); }
.matter-timeline time { color: var(--muted); font-size: 14px; }
.matter-timeline p { color: var(--muted); margin: 3px 0 0; }

.search-page-form { margin-bottom: 26px; max-width: 780px; }
.search-page-form label { display: block; font-weight: 700; margin-bottom: 7px; }
.search-page-form > div { display: flex; gap: 9px; }
.search-page-form input { min-height: 44px; }
.search-result-count { color: var(--muted); }
.search-results { display: grid; gap: 24px; }
.search-results section { border-top: 1px solid #cad3cd; padding-top: 14px; }
.search-results h2 { font-size: 20px; margin: 0 0 10px; }
.search-results section > div { display: grid; gap: 7px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.search-results a { background: var(--surface); border: 1px solid var(--line); border-radius: 7px; color: var(--ink); display: grid; padding: 12px 14px; text-decoration: none; }
.search-results a:hover { border-color: #769684; }
.search-results a span { color: var(--muted); font-size: 14px; }
.search-scope-note { color: var(--muted); font-size: 14px; margin-top: 24px; }
.dev-tools { background: #f1f4f2; border: 1px dashed #9aa8a0; border-radius: 7px; margin-top: 18px; padding: 10px; }
.dev-tools > summary { cursor: pointer; font-size: 14px; font-weight: 700; }
.journey-continuity { align-items: center; background: #edf6f0; border: 1px solid #a9c8b5; border-radius: 8px; display: flex; gap: 18px; justify-content: space-between; margin-top: 18px; padding: 16px; }
.journey-continuity p { color: var(--muted); margin: 4px 0 0; }
.operational-details { border-top: 1px solid #cbd4ce; margin-top: 32px; padding-top: 20px; }
.operational-details > summary { color: var(--brand-dark); cursor: pointer; font-size: 17px; font-weight: 800; }
.operational-details > p { color: var(--muted); margin: 6px 0 20px; }
.operational-details .workspace-sections { margin-top: 22px; }

@media (max-width: 1200px) {
  .cockpit-item { grid-template-columns: minmax(210px, 1.2fr) minmax(180px, 1fr) minmax(150px, .8fr); }
  .cockpit-deadline { grid-column: 2; }
  .cockpit-action { grid-column: 3; grid-row: 1 / span 2; }
  .summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 1040px) {
  .operator-topbar { flex-wrap: wrap; }
  .global-search { flex-basis: min(52vw, 560px); }
  .workspace-tabs { top: 68px; }
}

@media (max-width: 760px) {
  .operator-topbar { gap: 9px 12px; }
  .operator-topbar .site-brand small { display: none; }
  .global-search { flex: 1 1 calc(100% - 70px); order: 3; max-width: none; }
  .topbar-actions { margin-left: auto; }
  .topbar-actions > .button { display: none; }
  .operator-menu { display: none; }
  .workspace-tabs { top: 119px; }
  .operations-header h1 { font-size: 28px; }
  .operation-summary > div { min-width: 50%; }
  .cockpit-toolbar { align-items: flex-start; flex-direction: column; }
  .cockpit-item { align-items: start; grid-template-columns: 1fr; gap: 13px; padding: 15px; }
  .cockpit-deadline,
  .cockpit-action { grid-column: auto; grid-row: auto; }
  .cockpit-fact,
  .cockpit-deadline,
  .cockpit-action { border-top: 1px solid #e4e8e5; padding-top: 10px; }
  .matter-hero { align-items: stretch; flex-direction: column; }
  .next-action-panel { flex-basis: auto; }
  .workspace-tabs { margin-left: -16px; margin-right: -16px; padding-left: 4px; }
  .summary-grid,
  .onboarding-grid,
  .work-summary-grid,
  .exception-panel dl,
  .search-results section > div { grid-template-columns: 1fr; }
  .onboarding-steps,
  .lead-journey { gap: 10px; grid-template-columns: 1fr; }
  .onboarding-steps li,
  .lead-journey li { align-items: center; display: grid; gap: 10px; grid-template-columns: 24px 1fr; text-align: left; }
  .onboarding-steps li::before,
  .lead-journey li::before { height: calc(100% + 10px); left: 9px; top: -100%; width: 2px; }
  .onboarding-steps li > span,
  .lead-journey li > span { margin: 0; }
  .requirement-card { grid-template-columns: 1fr; }
  .matter-timeline li { grid-template-columns: 1fr; gap: 3px; }
  .search-page-form > div,
  .journey-continuity { align-items: stretch; flex-direction: column; }
}

@media (max-width: 420px) {
  .operator-topbar { padding: 8px 10px; }
  .operator-topbar .site-brand > span:last-child { display: none; }
  .global-search { flex-basis: calc(100% - 64px); }
  .operator-layout > .page-shell { padding-left: 12px; padding-right: 12px; }
  .workspace-tabs { margin-left: -12px; margin-right: -12px; top: 112px; }
  .matter-hero { border-radius: 8px; padding: 20px 16px; }
  .matter-hero h1 { font-size: 28px; }
  .operation-summary > div { border-right: 0; min-width: 100%; padding: 7px 0; }
  .search-page-form > div { display: grid; }
  .search-page-form button { width: 100%; }
}

/* Visual refinement pass after 5CD — presentation only. */
:root {
  --ink: #202938;
  --muted: #657184;
  --line: #e1e6ed;
  --surface: #ffffff;
  --surface-soft: #f6f8fb;
  --brand: #315d78;
  --brand-dark: #203d54;
  --focus: #1267a4;
  --automatic: #3476a8;
  --waiting: #9a6700;
  --completed: #23815c;
  --exception: #b5473e;
  --vr-canvas: #f5f7fa;
  --vr-canvas-deep: #edf1f5;
  --vr-surface-raised: #ffffff;
  --vr-surface-tint: #f8fafc;
  --vr-ink-strong: #182231;
  --vr-ink-soft: #536174;
  --vr-primary: #315d78;
  --vr-primary-strong: #203f56;
  --vr-primary-soft: #eaf1f5;
  --vr-primary-faint: #f2f6f9;
  --vr-amber: #a96f09;
  --vr-amber-soft: #fff7e7;
  --vr-success: #287a5b;
  --vr-success-soft: #eaf6f0;
  --vr-danger: #ad463d;
  --vr-danger-soft: #fff1ef;
  --vr-border: #e2e7ed;
  --vr-border-strong: #ced6df;
  --vr-radius-sm: 10px;
  --vr-radius: 14px;
  --vr-radius-lg: 20px;
  --vr-shadow-sm: 0 1px 2px rgba(25, 37, 52, .04), 0 5px 16px rgba(25, 37, 52, .04);
  --vr-shadow: 0 1px 2px rgba(25, 37, 52, .04), 0 14px 34px rgba(25, 37, 52, .07);
  --vr-shadow-focus: 0 0 0 4px rgba(49, 93, 120, .14);
}

html {
  background: var(--vr-canvas);
  color: var(--ink);
  font-family: "Segoe UI Variable Text", "Segoe UI Variable", "Segoe UI", Inter, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
}

.operator-session {
  background:
    radial-gradient(circle at 88% 2%, rgba(78, 124, 151, .07), transparent 26rem),
    linear-gradient(180deg, #f8fafc 0, var(--vr-canvas) 20rem);
  color: var(--ink);
  font-family: "Segoe UI Variable Text", "Segoe UI Variable", "Segoe UI", Inter, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 15px;
  line-height: 1.58;
  overflow-x: hidden;
}

.operator-session a {
  text-underline-offset: 3px;
}

.operator-session .button,
.operator-session button {
  border: 1px solid var(--vr-primary);
  border-radius: 10px;
  background: var(--vr-primary);
  box-shadow: 0 1px 2px rgba(31, 63, 86, .12);
  min-height: 42px;
  padding: 9px 15px;
  transition: background-color .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.operator-session .button:hover,
.operator-session button:hover {
  background: var(--vr-primary-strong);
  border-color: var(--vr-primary-strong);
  box-shadow: 0 7px 18px rgba(31, 63, 86, .15);
}

.operator-session .button:active,
.operator-session button:active {
  transform: translateY(1px);
}

.operator-session .button.secondary,
.operator-session button.secondary {
  background: #ffffff;
  border-color: var(--vr-border-strong);
  box-shadow: none;
  color: var(--vr-primary-strong);
}

.operator-session .button.secondary:hover,
.operator-session button.secondary:hover {
  background: var(--vr-primary-faint);
  border-color: #9fb3c1;
}

.operator-session input,
.operator-session select,
.operator-session textarea {
  border-color: var(--vr-border-strong);
  border-radius: 10px;
  color: var(--vr-ink-strong);
  min-height: 42px;
  padding: 10px 12px;
  transition: border-color .16s ease, box-shadow .16s ease;
}

.operator-session input:focus,
.operator-session select:focus,
.operator-session textarea:focus {
  border-color: var(--vr-primary);
  box-shadow: var(--vr-shadow-focus);
  outline: 0;
}

.operator-topbar {
  background: rgba(255, 255, 255, .94);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(210, 218, 227, .88);
  box-shadow: 0 1px 0 rgba(28, 42, 57, .02), 0 8px 28px rgba(28, 42, 57, .05);
  color: var(--vr-ink-strong);
  gap: clamp(18px, 2vw, 34px);
  min-height: 76px;
  padding: 12px clamp(18px, 2.2vw, 34px);
}

.operator-topbar .site-brand {
  color: var(--vr-ink-strong);
  gap: 11px;
  letter-spacing: -.01em;
  min-width: 188px;
}

.operator-topbar .site-brand strong {
  font-size: 18px;
  letter-spacing: .01em;
}

.operator-topbar .site-brand small {
  color: #738093;
  font-size: 11px;
  letter-spacing: .015em;
}

.brand-mark {
  background: linear-gradient(145deg, #2f607e, #203f56);
  border-radius: 11px;
  box-shadow: 0 6px 16px rgba(31, 63, 86, .2);
  color: #ffffff;
  font-size: 16px;
  height: 38px;
  width: 38px;
}

.global-search {
  background: #f3f6f8;
  border: 1px solid transparent;
  border-radius: 12px;
  box-shadow: inset 0 0 0 1px rgba(203, 213, 222, .32);
  max-width: 760px;
  padding: 0 14px;
  transition: background-color .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.global-search:hover {
  background: #f8fafb;
  border-color: #d7dfe7;
}

.global-search:focus-within {
  background: #ffffff;
  border-color: var(--vr-primary);
  box-shadow: var(--vr-shadow-focus);
}

.global-search svg {
  stroke: #7a8797;
}

.global-search input,
.global-search input:focus {
  background: transparent;
  box-shadow: none;
  color: var(--vr-ink-strong);
  min-height: 44px;
}

.global-search input::placeholder {
  color: #8995a4;
}

.topbar-actions {
  gap: 10px;
}

.topbar-actions .button.compact {
  background: var(--vr-primary);
  border-color: var(--vr-primary);
  border-radius: 10px;
  box-shadow: 0 7px 17px rgba(31, 63, 86, .16);
  color: #ffffff;
  min-height: 40px;
  padding: 8px 14px;
}

.operator-menu > summary,
.mobile-navigation summary {
  background: #ffffff;
  border: 1px solid var(--vr-border-strong);
  border-radius: 10px;
  color: #4e5c6e;
  min-height: 40px;
  padding: 9px 12px;
}

.operator-menu > summary:hover,
.mobile-navigation summary:hover {
  background: var(--vr-primary-faint);
  color: var(--vr-primary-strong);
}

.operator-menu > div {
  border-color: var(--vr-border);
  border-radius: 13px;
  box-shadow: var(--vr-shadow);
  padding: 8px;
}

.operator-menu a,
.operator-menu button {
  border-radius: 8px;
  color: var(--vr-ink-strong);
}

.operator-menu a:hover,
.operator-menu button:hover {
  background: var(--vr-primary-faint);
  box-shadow: none;
  color: var(--vr-primary-strong);
}

.operator-layout {
  grid-template-columns: 246px minmax(0, 1fr);
  min-height: calc(100vh - 76px);
}

.operator-sidebar {
  background: rgba(250, 251, 253, .88);
  border-right: 1px solid var(--vr-border);
  height: calc(100vh - 76px);
  min-height: calc(100vh - 76px);
  overflow-y: auto;
  padding: 26px 15px 20px;
  top: 76px;
}

.workspace-nav {
  gap: 5px;
}

.workspace-nav a {
  border: 0;
  border-radius: 10px;
  color: #4a586a;
  font-size: 14px;
  font-weight: 650;
  letter-spacing: -.005em;
  padding: 11px 13px;
  transition: background-color .15s ease, color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.workspace-nav a:hover,
.workspace-nav a:focus {
  background: #edf2f6;
  color: var(--vr-primary-strong);
  transform: translateX(2px);
}

.workspace-nav a.current {
  background: #e7eff4;
  border: 0;
  box-shadow: inset 3px 0 0 var(--vr-primary);
  color: var(--vr-primary-strong);
  font-weight: 750;
}

.workspace-secondary {
  border-top-color: var(--vr-border);
  gap: 4px;
  margin-top: 24px;
  padding-top: 18px;
}

.workspace-secondary > span {
  color: #909baa;
  font-size: 10px;
  letter-spacing: .11em;
  padding: 0 13px 8px;
}

.workspace-logout {
  border-top-color: var(--vr-border);
  margin-top: 18px;
  padding-top: 12px;
}

.workspace-logout button {
  background: transparent;
  border: 0;
  border-color: transparent;
  box-shadow: none;
  color: #718093;
  font-weight: 600;
  justify-content: flex-start;
  min-height: 38px;
  padding: 8px 13px;
  width: 100%;
}

.workspace-logout button:hover {
  background: #f3f5f8;
  color: var(--vr-danger);
}

.operator-layout > .page-shell {
  max-width: 1560px;
  padding: 40px clamp(24px, 3.5vw, 58px) 72px;
}

.eyebrow {
  color: #758398;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .1em;
  margin-bottom: 8px;
}

.muted {
  color: var(--vr-ink-soft);
}

.workspace-header,
.operations-header {
  gap: 32px;
  margin-bottom: 30px;
}

.workspace-header h1,
.operations-header h1 {
  color: var(--vr-ink-strong);
  font-size: clamp(30px, 3vw, 40px);
  font-weight: 720;
  letter-spacing: -.035em;
  line-height: 1.12;
  margin-bottom: 10px;
}

.workspace-header > div > p:last-child,
.operations-header .muted {
  color: var(--vr-ink-soft);
  font-size: 15px;
  line-height: 1.65;
  max-width: 780px;
}

.health-status {
  background: rgba(255, 255, 255, .82);
  border: 1px solid var(--vr-border);
  border-radius: 14px;
  box-shadow: var(--vr-shadow-sm);
  min-width: 260px;
  padding: 15px 17px;
}

.health-status strong {
  color: var(--vr-ink-strong);
}

.health-status a {
  color: var(--vr-primary);
  display: inline-block;
  font-size: 13px;
  font-weight: 700;
  margin-top: 4px;
}

.status-dot {
  box-shadow: 0 0 0 5px rgba(113, 130, 146, .1);
  height: 9px;
  width: 9px;
}

.tone-good .status-dot { box-shadow: 0 0 0 5px rgba(40, 122, 91, .12); }
.tone-warning .status-dot { box-shadow: 0 0 0 5px rgba(169, 111, 9, .12); }
.tone-critical .status-dot { box-shadow: 0 0 0 5px rgba(173, 70, 61, .12); }
.tone-active .status-dot { box-shadow: 0 0 0 5px rgba(49, 93, 120, .12); }

.attention-note,
.notice-band {
  background: var(--vr-amber-soft);
  border: 1px solid #f2dfb7;
  border-left: 4px solid #d59a30;
  border-radius: 12px;
  color: #6f521c;
  margin-bottom: 22px;
  padding: 13px 16px;
}

.notice-band {
  background: #eef5f8;
  border-color: #d6e4eb;
  border-left-color: #5b8da8;
  color: #385568;
}

.operation-summary {
  border: 0;
  display: grid;
  gap: 13px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0 0 28px;
  padding: 0;
}

.operation-summary > div {
  background: rgba(255, 255, 255, .88);
  border: 1px solid var(--vr-border);
  border-radius: 14px;
  box-shadow: var(--vr-shadow-sm);
  min-width: 0;
  padding: 18px 20px;
  position: relative;
}

.operation-summary > div::after {
  background: #cbd5df;
  border-radius: 999px;
  content: "";
  height: 3px;
  left: 20px;
  position: absolute;
  right: 20px;
  top: 0;
}

.operation-summary > div:first-child::after { background: #c46a60; }
.operation-summary > div:nth-child(2)::after { background: #d6a54b; }
.operation-summary > div:nth-child(3)::after { background: #6f91aa; }
.operation-summary > div:nth-child(4)::after { background: #62a184; }
.operation-summary > div:first-child,
.operation-summary > div:last-child { border-right: 1px solid var(--vr-border); }

.operation-summary strong {
  color: var(--vr-ink-strong);
  font-size: 31px;
  font-weight: 720;
  letter-spacing: -.035em;
}

.operation-summary span {
  color: #718093;
  font-size: 13px;
  margin-top: 8px;
}

.cockpit-toolbar {
  background: transparent;
  border-bottom: 1px solid var(--vr-border);
  margin-bottom: 26px;
  padding: 0 2px 18px;
}

.cockpit-toolbar p {
  color: var(--vr-ink-soft);
}

.cockpit-toolbar a,
.cockpit-action a {
  color: var(--vr-primary);
}

.cockpit-groups {
  gap: 22px;
}

.cockpit-group {
  background: rgba(255, 255, 255, .9);
  border: 1px solid var(--vr-border);
  border-radius: 18px;
  box-shadow: var(--vr-shadow-sm);
  padding: 22px 24px;
}

.cockpit-group > header {
  border-bottom: 1px solid #edf0f4;
  margin-bottom: 0;
  padding-bottom: 16px;
}

.cockpit-group h2 {
  color: var(--vr-ink-strong);
  font-size: 20px;
  font-weight: 700;
  letter-spacing: -.018em;
}

.cockpit-group header p {
  color: #7a8797;
  font-size: 14px;
  margin-top: 5px;
}

.cockpit-count {
  background: #eef2f6;
  color: #576577;
  font-size: 13px;
  height: 30px;
  min-width: 30px;
}

.cockpit-list {
  background: transparent;
  border: 0;
  border-radius: 0;
}

.cockpit-item {
  border-bottom-color: #edf0f4;
  padding: 18px 4px;
  transition: background-color .15s ease, box-shadow .15s ease;
}

.cockpit-item:hover {
  background: #f8fafc;
  box-shadow: -12px 0 0 #f8fafc, 12px 0 0 #f8fafc;
}

.cockpit-item h3 {
  font-size: 15px;
}

.cockpit-item h3 a {
  color: var(--vr-ink-strong);
}

.cockpit-item > div > span:not(.state-indicator) {
  color: #8a96a5;
  font-size: 10px;
  letter-spacing: .07em;
}

.state-indicator {
  box-shadow: 0 0 0 4px rgba(112, 128, 120, .1);
  height: 8px;
  margin-top: 8px;
  width: 8px;
}

.empty-state {
  background: #f8fafc;
  border: 1px dashed #d7dee7;
  border-radius: 13px;
  color: #778496;
  line-height: 1.55;
  padding: 18px 20px;
}

.metric-grid {
  gap: 14px;
  margin-bottom: 32px;
}

.metric-item {
  background: rgba(255, 255, 255, .9);
  border: 1px solid var(--vr-border);
  border-top: 1px solid var(--vr-border);
  border-radius: 15px;
  box-shadow: var(--vr-shadow-sm);
  min-height: 116px;
  padding: 19px 20px;
  position: relative;
}

.metric-item::before {
  background: #97a6b6;
  border-radius: 999px;
  content: "";
  height: 4px;
  left: 20px;
  position: absolute;
  top: 0;
  width: 36px;
}

.metric-item.tone-good::before,
.metric-item.tone-success::before { background: var(--vr-success); }
.metric-item.tone-warning::before { background: #d09a36; }
.metric-item.tone-critical::before,
.metric-item.tone-danger::before { background: var(--vr-danger); }
.metric-item.tone-active::before { background: #5487a5; }

.metric-item span {
  color: #748194;
  font-size: 13px;
}

.metric-item strong {
  color: var(--vr-ink-strong);
  font-size: 31px;
  font-weight: 720;
  letter-spacing: -.03em;
  margin-top: 14px;
}

.workspace-sections {
  gap: 24px;
}

.workspace-section,
.detail-band {
  background: rgba(255, 255, 255, .88);
  border: 1px solid var(--vr-border);
  border-radius: 16px;
  box-shadow: var(--vr-shadow-sm);
  padding: 22px;
}

.section-heading {
  margin-bottom: 17px;
}

.section-heading h2 {
  color: var(--vr-ink-strong);
  font-size: 20px;
  letter-spacing: -.015em;
}

.section-heading p {
  color: var(--vr-ink-soft);
  margin: 5px 0 0;
}

.table-scroll {
  border-color: var(--vr-border);
  border-radius: 13px;
  box-shadow: none;
}

.workspace-table th {
  background: #f6f8fb;
  color: #718093;
  font-size: 10px;
  letter-spacing: .075em;
  padding-bottom: 13px;
  padding-top: 13px;
}

.data-table td {
  border-bottom-color: #edf0f4;
  padding-bottom: 15px;
  padding-top: 15px;
}

.workspace-table tbody tr:nth-child(even) {
  background: #fbfcfd;
}

.workspace-table tbody tr:hover {
  background: #f3f7fa;
}

.cell-value {
  color: #2c3746;
}

.cell-meta,
.help-text {
  color: #7b8797;
}

.status-label {
  background: #f0f3f6;
  border: 0;
  border-radius: 999px;
  color: #526071;
  display: inline-flex;
  font-size: 12px;
  padding: 5px 9px;
}

.status-label.tone-success,
.status-label.tone-good { background: var(--vr-success-soft); color: #246b51; }
.status-label.tone-warning,
.status-label.state-warning,
.status-label.state-approaching { background: var(--vr-amber-soft); color: #7c5815; }
.status-label.tone-critical,
.status-label.state-overdue,
.status-label.state-authority_conflict { background: var(--vr-danger-soft); color: #8d3b34; }
.status-label.tone-active,
.status-label.state-due { background: var(--vr-primary-soft); color: var(--vr-primary-strong); }

.journey-breadcrumb {
  color: #7b8797;
  margin-bottom: 18px;
}

.journey-breadcrumb a {
  color: var(--vr-primary);
  font-weight: 650;
  text-decoration: none;
}

.matter-hero {
  background:
    radial-gradient(circle at 92% 14%, rgba(92, 139, 165, .18), transparent 17rem),
    linear-gradient(135deg, #edf3f7 0%, #f8fafc 64%, #eef3f6 100%);
  border: 1px solid #d9e2e9;
  border-radius: 20px;
  box-shadow: var(--vr-shadow-sm);
  color: var(--vr-ink-strong);
  gap: clamp(24px, 4vw, 56px);
  overflow: hidden;
  padding: clamp(26px, 3.3vw, 44px);
  position: relative;
}

.matter-hero::before {
  background: linear-gradient(180deg, #4f7892, #315d78);
  border-radius: 999px;
  bottom: 28px;
  content: "";
  left: 0;
  position: absolute;
  top: 28px;
  width: 4px;
}

.matter-hero > * {
  position: relative;
  z-index: 1;
}

.matter-hero .eyebrow {
  color: var(--vr-primary);
}

.matter-hero h1 {
  color: var(--vr-ink-strong);
  font-size: clamp(30px, 4vw, 46px);
  font-weight: 720;
  letter-spacing: -.045em;
}

.matter-title {
  color: #526276;
  font-size: 18px;
  margin: 9px 0 19px;
}

.matter-meta > span:not(.state-chip) {
  color: #667589;
}

.next-action-panel {
  background: rgba(255, 255, 255, .92);
  border: 1px solid #d8e2e9;
  border-radius: 15px;
  box-shadow: 0 13px 30px rgba(32, 63, 86, .09);
  flex-basis: 410px;
  padding: 21px 23px;
}

.next-action-panel > span {
  color: #708093;
  font-size: 10px;
  letter-spacing: .08em;
}

.next-action-panel strong {
  color: var(--vr-ink-strong);
  font-size: 19px;
  letter-spacing: -.015em;
  margin: 7px 0 5px;
}

.next-action-panel p {
  color: #68778a;
}

.state-chip {
  border: 0;
  border-radius: 999px;
  font-size: 12px;
  letter-spacing: .01em;
  padding: 6px 10px;
}

.state-automatic { background: #e9f2f7; color: #315f79; }
.state-waiting { background: var(--vr-amber-soft); color: #805b14; }
.state-completed { background: var(--vr-success-soft); color: #256c51; }
.state-exception { background: var(--vr-danger-soft); color: #8f3c35; }
.state-neutral,
.state-progress { background: #edf1f5; color: #596779; }

.matter-switcher {
  background: #eef3f7;
  border: 1px solid #dce4ea;
  border-radius: 12px;
  margin-bottom: 16px;
  padding: 11px 13px;
}

.matter-switcher a {
  border-radius: 8px;
  color: var(--vr-primary);
}

.matter-switcher a.current {
  border: 1px solid #d0dae2;
  box-shadow: var(--vr-shadow-sm);
}

.workspace-tabs {
  background: rgba(255, 255, 255, .94);
  backdrop-filter: blur(14px);
  border: 1px solid var(--vr-border);
  border-radius: 13px;
  box-shadow: var(--vr-shadow-sm);
  gap: 3px;
  margin-bottom: 4px;
  padding: 6px;
  top: 86px;
}

.workspace-tabs a {
  border: 0;
  border-radius: 9px;
  color: #5e6d7f;
  font-size: 13px;
  padding: 9px 12px;
}

.workspace-tabs a:hover,
.workspace-tabs a:focus {
  background: var(--vr-primary-soft);
  color: var(--vr-primary-strong);
}

.context-section {
  background: rgba(255, 255, 255, .9);
  border: 1px solid var(--vr-border);
  border-radius: 18px;
  box-shadow: var(--vr-shadow-sm);
  margin-top: 22px;
  padding: clamp(22px, 2.5vw, 32px);
  scroll-margin-top: 150px;
}

.context-section + .context-section {
  border-top: 1px solid var(--vr-border);
  margin-top: 22px;
}

.context-section-heading {
  margin-bottom: 22px;
}

.context-section-heading h2 {
  color: var(--vr-ink-strong);
  font-size: 25px;
  font-weight: 710;
  letter-spacing: -.025em;
}

.summary-grid,
.onboarding-grid,
.work-summary-grid {
  gap: 15px;
}

.summary-grid article,
.work-summary-grid article {
  background: #f8fafc;
  border: 1px solid #e7ebf0;
  border-radius: 13px;
  padding: 18px;
}

.summary-grid span {
  color: #7a8797;
  font-size: 11px;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.summary-grid strong {
  color: var(--vr-ink-strong);
  font-size: 17px;
  margin: 8px 0;
}

.summary-grid p {
  color: #718093;
}

.onboarding-steps,
.lead-journey {
  background: #f8fafc;
  border: 1px solid #e7ebf0;
  border-radius: 14px;
  margin-bottom: 26px;
  padding: 20px 16px 17px;
}

.onboarding-steps li,
.lead-journey li {
  color: #778497;
  font-size: 12px;
}

.onboarding-steps li::before,
.lead-journey li::before {
  background: #d8dfe7;
  height: 2px;
  top: 10px;
}

.onboarding-steps li > span,
.lead-journey li > span {
  background: #ffffff;
  border: 2px solid #aab5c2;
  height: 22px;
  margin-bottom: 9px;
  width: 22px;
}

.onboarding-steps li.completed,
.lead-journey li.completed { color: #287159; }
.onboarding-steps li.completed::before,
.lead-journey li.completed::before { background: #6ea58f; }
.onboarding-steps li.completed > span,
.lead-journey li.completed > span {
  background: var(--vr-success);
  border-color: var(--vr-success);
}

.onboarding-steps li.completed > span::after,
.lead-journey li.completed > span::after {
  color: #ffffff;
  content: "✓";
  display: block;
  font-size: 13px;
  font-weight: 800;
  line-height: 17px;
  text-align: center;
}

.onboarding-steps li.current,
.lead-journey li.current {
  color: var(--vr-primary-strong);
}

.onboarding-steps li.current > span,
.lead-journey li.current > span {
  border-color: var(--vr-primary);
  box-shadow: 0 0 0 5px rgba(49, 93, 120, .11);
}

.exception-panel {
  background: var(--vr-danger-soft);
  border: 1px solid #efd1cd;
  border-left: 4px solid #c25b51;
  border-radius: 14px;
  margin-bottom: 24px;
  padding: 21px;
}

.exception-panel > div > span {
  color: #9c433b;
  font-size: 11px;
  letter-spacing: .07em;
}

.exception-panel h3 {
  color: #66312d;
  font-size: 20px;
  letter-spacing: -.015em;
  margin: 6px 0 16px;
}

.exception-panel dl div {
  background: rgba(255, 255, 255, .7);
  border: 1px solid rgba(228, 192, 187, .72);
  border-radius: 10px;
  padding: 13px;
}

.exception-panel dt {
  color: #90605b;
  font-size: 10px;
  letter-spacing: .06em;
}

.requirement-card,
.document-summary-row {
  border-color: #e4e9ee;
  border-radius: 12px;
  box-shadow: 0 1px 2px rgba(25, 37, 52, .03);
  padding: 16px;
}

.requirement-card {
  background: #fbfcfd;
  border-left: 4px solid #96a4b3;
}

.requirement-card.state-completed { border-left-color: var(--vr-success); }
.requirement-card.state-waiting { border-left-color: #d19b37; }
.requirement-card span { color: #7c8999; font-size: 11px; letter-spacing: .035em; text-transform: uppercase; }
.requirement-card p { color: #6e7b8d; }

.document-summary-row:hover {
  background: var(--vr-primary-faint);
  border-color: #adc0cc;
}

.work-row {
  border-top-color: #e8ecf1;
  padding: 12px 0;
}

.matter-timeline {
  border-left-color: #d7dfe7;
}

.matter-timeline li::before {
  background: #8291a2;
  border-color: #ffffff;
  box-shadow: 0 0 0 1px #d7dfe7;
}

.matter-timeline time,
.matter-timeline p {
  color: #738093;
}

.operational-details {
  border-top: 0;
  margin-top: 24px;
}

.operational-details > summary {
  background: #eef2f6;
  border-radius: 12px;
  color: #46576a;
  padding: 14px 16px;
}

.operational-details[open] > summary {
  background: #e8eef3;
  color: var(--vr-primary-strong);
}

.search-page-form {
  background: rgba(255, 255, 255, .9);
  border: 1px solid var(--vr-border);
  border-radius: 15px;
  box-shadow: var(--vr-shadow-sm);
  max-width: 860px;
  padding: 19px;
}

.search-page-form label {
  color: #59687a;
  font-size: 13px;
}

.search-results {
  gap: 28px;
}

.search-results section {
  border-top: 0;
  padding-top: 0;
}

.search-results h2 {
  color: var(--vr-ink-strong);
  font-size: 19px;
  letter-spacing: -.015em;
}

.search-results section > div {
  gap: 10px;
}

.search-results a {
  border-color: var(--vr-border);
  border-radius: 13px;
  box-shadow: var(--vr-shadow-sm);
  padding: 15px 17px;
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.search-results a:hover {
  border-color: #a9bdc9;
  box-shadow: var(--vr-shadow);
  transform: translateY(-1px);
}

.background-status {
  background: #eef5f8;
  border: 1px solid #cbdde7;
  border-radius: 12px;
  box-shadow: var(--vr-shadow);
  color: #31576d;
  padding: 13px 17px;
}

.background-status[data-kind="error"] {
  background: var(--vr-danger-soft);
  border-color: #ecc8c3;
  color: #873b34;
}

.login-panel {
  border-color: var(--vr-border);
  border-radius: 18px;
  box-shadow: var(--vr-shadow);
  margin-top: 76px;
  padding: 34px;
}

.login-panel h1 {
  color: var(--vr-ink-strong);
  font-size: 34px;
  letter-spacing: -.03em;
}

.journey-continuity {
  background: #eef5f8;
  border-color: #cfdee7;
  border-radius: 13px;
  padding: 18px;
}

.converted-entry-handoff {
  align-items: center;
  background: linear-gradient(135deg, #eef5f8 0%, #f7fafb 100%);
  border: 1px solid #c8d9e3;
  border-radius: 15px;
  display: flex;
  gap: 24px;
  justify-content: space-between;
  margin-bottom: 22px;
  padding: 20px 22px;
}

.converted-entry-handoff h2,
.converted-entry-handoff p { margin: 0; }
.converted-entry-handoff h2 { color: var(--vr-ink-strong); font-size: 22px; }
.converted-entry-handoff p:last-child { color: var(--vr-muted); margin-top: 6px; }
.converted-entry-handoff .button { flex: 0 0 auto; }

.converted-entry-documents > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  list-style: none;
}

.converted-entry-documents > summary::-webkit-details-marker { display: none; }
.converted-entry-documents > summary > span:first-child { display: grid; gap: 3px; }
.converted-entry-documents > summary strong { color: var(--vr-ink-strong); font-size: 18px; }
.converted-entry-documents > summary small { color: var(--vr-muted); }
.converted-entry-documents[open] > summary { margin-bottom: 16px; }

.converted-entry-document-row { align-items: flex-start; }
.converted-entry-document-link { color: var(--vr-primary-strong); text-decoration: none; }
.converted-entry-document-link:hover,
.converted-entry-document-link:focus-visible { text-decoration: underline; }
.converted-entry-document-audit { margin-top: 9px; }
.converted-entry-document-audit > summary {
  color: var(--vr-muted);
  cursor: pointer;
  font-size: 13px;
  font-weight: 700;
}
.converted-entry-document-versions {
  border-left: 2px solid var(--vr-border);
  display: grid;
  gap: 8px;
  margin-top: 9px;
  padding-left: 12px;
}
.converted-entry-document-versions > div { display: grid; gap: 3px; }
.converted-entry-document-versions span,
.converted-entry-document-versions a { font-size: 12px; }
.converted-entry-document-versions a { width: fit-content; }

.dev-tools {
  background: #f7f8fa;
  border-color: #bdc6d0;
  border-radius: 12px;
}

@media (max-width: 1200px) {
  .operator-layout { grid-template-columns: 220px minmax(0, 1fr); }
  .operator-sidebar { padding-left: 12px; padding-right: 12px; }
  .operation-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cockpit-item { grid-template-columns: minmax(200px, 1.2fr) minmax(170px, 1fr) minmax(150px, .8fr); }
}

@media (max-width: 1040px) {
  .operator-layout { display: block; }
  .operator-topbar { min-height: 70px; }
  .operator-sidebar { display: none; }
  .mobile-navigation { display: block; }
  .mobile-navigation[open] .workspace-nav {
    border-color: var(--vr-border);
    border-radius: 13px;
    box-shadow: var(--vr-shadow);
    top: 46px;
  }
  .operator-layout > .page-shell { padding-top: 34px; }
  .workspace-tabs { top: 80px; }
}

@media (max-width: 760px) {
  .operator-session { font-size: 15px; }
  .operator-topbar {
    gap: 10px;
    padding: 10px 13px 12px;
  }
  .operator-topbar .site-brand { min-width: 0; }
  .brand-mark { border-radius: 9px; height: 34px; width: 34px; }
  .global-search { border-radius: 10px; order: 3; }
  .operator-layout > .page-shell { padding: 26px 16px 48px; }
  .workspace-header,
  .operations-header { gap: 18px; margin-bottom: 24px; }
  .workspace-header h1,
  .operations-header h1 { font-size: 30px; }
  .health-status { min-width: 0; width: 100%; }
  .operation-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .operation-summary > div { min-width: 0; padding: 16px; }
  .operation-summary strong { font-size: 27px; }
  .cockpit-group { border-radius: 15px; padding: 18px; }
  .cockpit-item { box-shadow: none; grid-template-columns: 1fr; padding: 16px 2px; }
  .cockpit-item:hover { box-shadow: none; }
  .matter-hero { border-radius: 17px; padding: 26px 22px; }
  .matter-hero::before { bottom: 22px; top: 22px; }
  .next-action-panel { flex-basis: auto; }
  .workspace-tabs {
    border-left: 0;
    border-radius: 0;
    border-right: 0;
    margin-left: -16px;
    margin-right: -16px;
    padding-left: 12px;
    top: 121px;
  }
  .context-section { border-radius: 15px; margin-top: 16px; padding: 21px 18px; }
  .summary-grid,
  .onboarding-grid,
  .work-summary-grid,
  .exception-panel dl,
  .search-results section > div { grid-template-columns: 1fr; }
  .onboarding-steps,
  .lead-journey { padding: 17px; }
  .onboarding-steps li::before,
  .lead-journey li::before { left: 10px; }
  .search-page-form { padding: 16px; }
  .workspace-section,
  .detail-band { padding: 18px; }
  .converted-entry-handoff,
  .converted-entry-document-row,
  .converted-entry-documents > summary {
    align-items: stretch;
    flex-direction: column;
  }
  .converted-entry-handoff .button,
  .converted-entry-document-row > .button { text-align: center; width: 100%; }
}

@media (max-width: 420px) {
  .operator-topbar { padding-left: 11px; padding-right: 11px; }
  .operator-layout > .page-shell { padding-left: 12px; padding-right: 12px; }
  .operation-summary { gap: 9px; }
  .operation-summary > div { padding: 14px; }
  .operation-summary span { font-size: 12px; }
  .cockpit-group { padding: 16px 14px; }
  .matter-hero { border-radius: 14px; padding: 24px 18px; }
  .matter-hero h1 { font-size: 31px; }
  .workspace-tabs { margin-left: -12px; margin-right: -12px; top: 116px; }
  .context-section { padding: 19px 15px; }
  .context-section-heading h2 { font-size: 22px; }
  .summary-grid article,
  .work-summary-grid article { padding: 16px; }
  .search-page-form > div { display: grid; }
  .search-page-form button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .operator-session *,
  .operator-session *::before,
  .operator-session *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}

/* H1 visual refinement final pass — hierarchy and presentation only. */
:root {
  --vr-canvas: #f1f4f7;
  --vr-border: #d7dfe7;
  --vr-border-strong: #c4ced9;
  --vr-ink-soft: #4c5c6f;
}

.operator-session {
  background:
    radial-gradient(circle at 88% 2%, rgba(78, 124, 151, .075), transparent 26rem),
    linear-gradient(180deg, #f7f9fb 0, var(--vr-canvas) 20rem);
}

.workspace-header h1,
.operations-header h1,
.section-heading h2,
.context-section-heading h2 {
  font-weight: 740;
}

.operation-summary.attention-lens {
  gap: 12px;
}

.attention-lens > div {
  display: flex;
  flex-direction: column;
  min-height: 146px;
  padding: 20px;
}

.attention-lens > div > span {
  color: #405166;
  font-size: 12px;
  font-weight: 720;
  letter-spacing: .025em;
  line-height: 1.35;
  margin: 0 0 auto;
  text-transform: none;
}

.attention-lens > div > strong {
  margin-top: 18px;
}

.attention-lens > div > strong.summary-clear {
  font-size: 19px;
  letter-spacing: -.018em;
  line-height: 1.2;
}

.attention-lens > div > small {
  color: #67768a;
  display: block;
  font-size: 12px;
  margin-top: 6px;
}

.automation-overview {
  align-items: center;
  background: #f3f7f9;
  border-bottom: 1px solid #e0e7ed;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  margin: 0 -4px;
  padding: 15px 4px 16px;
}

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

.automation-overview strong {
  color: var(--vr-ink-strong);
  font-size: 15px;
}

.automation-overview > div:first-child > span {
  color: #657488;
  font-size: 13px;
  margin-top: 3px;
}

.automation-types {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}

.automation-types span {
  background: #e6eef3;
  border-radius: 999px;
  color: #405e72;
  font-size: 11px;
  font-weight: 650;
  max-width: 210px;
  overflow: hidden;
  padding: 5px 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cockpit-item.cockpit-item-automatic {
  grid-template-columns: minmax(190px, 1fr) minmax(210px, 1.15fr) minmax(180px, .9fr);
}

.compact-empty {
  display: grid;
  gap: 2px;
  padding-bottom: 14px;
  padding-top: 14px;
}

.compact-empty strong {
  color: #425267;
  font-size: 14px;
}

.compact-empty span {
  font-size: 13px;
}

.cockpit-more {
  border-top: 1px solid #e4e9ee;
  margin-top: 2px;
  padding-top: 12px;
}

.cockpit-more > summary {
  align-items: center;
  color: var(--vr-primary);
  cursor: pointer;
  display: inline-flex;
  font-size: 13px;
  font-weight: 720;
  gap: 7px;
  list-style: none;
  padding: 5px 0;
}

.cockpit-more > summary::-webkit-details-marker { display: none; }

.cockpit-more > summary::after {
  content: "↓";
  font-size: 12px;
}

.cockpit-more[open] > summary::after { content: "↑"; }

.cockpit-more > summary span {
  background: #e8eef3;
  border-radius: 999px;
  color: #536477;
  font-size: 11px;
  padding: 2px 7px;
}

.intake-pipeline {
  background: rgba(255, 255, 255, .94);
  border: 1px solid var(--vr-border);
  border-radius: 17px;
  box-shadow: var(--vr-shadow-sm);
  margin-bottom: 28px;
  padding: 22px 24px 24px;
}

.intake-pipeline-heading {
  align-items: end;
  display: flex;
  gap: 24px;
  justify-content: space-between;
  margin-bottom: 22px;
}

.intake-pipeline-heading h2 {
  color: var(--vr-ink-strong);
  font-size: 21px;
  letter-spacing: -.02em;
  margin: 2px 0 0;
}

.intake-pipeline-heading > p {
  color: #667589;
  font-size: 13px;
  margin: 0;
  max-width: 430px;
  text-align: right;
}

.intake-pipeline-steps {
  display: grid;
  gap: 0;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.intake-pipeline-steps li {
  align-items: center;
  border-top: 2px solid #d9e1e8;
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 17px 14px 0 0;
  position: relative;
}

.intake-pipeline-steps li.has-items {
  border-top-color: #6f98af;
}

.pipeline-position {
  align-items: center;
  background: #eef2f6;
  border: 1px solid #d5dde5;
  border-radius: 999px;
  color: #5e6e80;
  display: inline-flex;
  font-size: 11px;
  font-weight: 720;
  height: 24px;
  justify-content: center;
  margin-top: -31px;
  width: 24px;
}

.has-items .pipeline-position {
  background: var(--vr-primary);
  border-color: var(--vr-primary);
  color: #fff;
}

.intake-pipeline-steps strong,
.intake-pipeline-steps small {
  display: block;
}

.intake-pipeline-steps strong {
  color: #27384b;
  font-size: 14px;
}

.intake-pipeline-steps small {
  color: #738195;
  font-size: 11px;
  line-height: 1.35;
  margin-top: 2px;
}

.pipeline-count {
  color: #283b4e;
  font-size: 20px;
  font-weight: 740;
}

.intake-pipeline + .workspace-sections .table-scroll {
  border: 0;
  border-radius: 0;
  overflow: visible;
}

.intake-pipeline + .workspace-sections .workspace-table {
  border-collapse: separate;
  border-spacing: 0 8px;
  min-width: 0;
}

.intake-pipeline + .workspace-sections .workspace-table th {
  background: transparent;
  border-bottom: 0;
  color: #657488;
  padding-bottom: 5px;
  padding-top: 5px;
}

.intake-pipeline + .workspace-sections .workspace-table tbody tr,
.intake-pipeline + .workspace-sections .workspace-table tbody tr:nth-child(even) {
  background: #fbfcfd;
}

.intake-pipeline + .workspace-sections .workspace-table tbody tr:hover {
  background: #f4f8fa;
}

.intake-pipeline + .workspace-sections .workspace-table td {
  border-bottom: 1px solid #e2e8ee;
  border-top: 1px solid #e2e8ee;
}

.intake-pipeline + .workspace-sections .workspace-table td:first-child {
  border-left: 1px solid #e2e8ee;
  border-radius: 12px 0 0 12px;
  padding-left: 16px;
}

.intake-pipeline + .workspace-sections .workspace-table td:last-child {
  border-radius: 0 12px 12px 0;
  border-right: 1px solid #e2e8ee;
  padding-right: 16px;
}

.document-primary-context {
  border-color: #cbd7e0;
  padding: 24px;
}

#document-title {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.document-detail-summary .workspace-header {
  display: block;
}

.document-detail-summary .header-actions {
  margin-top: 18px;
}

.document-context-heading {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.document-context-heading .eyebrow {
  margin-bottom: 3px;
}

.document-next-action {
  background: #eef5f8;
  border: 1px solid #d5e3ea;
  border-radius: 11px;
  padding: 13px 14px;
}

.document-next-action dt {
  color: #46677a;
}

.document-audit-details {
  background: rgba(255, 255, 255, .75);
  border-color: #d5dde5;
  padding: 0;
}

.document-audit-details > summary {
  color: #42566b;
  cursor: pointer;
  font-size: 14px;
  font-weight: 720;
  padding: 16px 18px;
}

.document-audit-details[open] > summary {
  border-bottom: 1px solid #e1e7ed;
}

.document-audit-intro,
.document-technical-grid,
.document-processing-history {
  margin-left: 18px;
  margin-right: 18px;
}

.document-audit-intro {
  color: #67768a;
  font-size: 13px;
  margin-top: 16px;
}

.document-technical-grid {
  margin-top: 14px;
}

.document-processing-history {
  border-top: 1px solid #e4e9ee;
  margin-bottom: 18px;
  margin-top: 18px;
  padding-top: 16px;
}

.document-processing-history h3 {
  color: #34485d;
  font-size: 14px;
  margin: 0 0 10px;
}

@media (max-width: 1200px) {
  .intake-pipeline-steps {
    gap: 14px 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .attention-lens > div { min-height: 126px; }
  .automation-overview,
  .intake-pipeline-heading {
    align-items: flex-start;
    flex-direction: column;
  }
  .automation-types { justify-content: flex-start; }
  .cockpit-item.cockpit-item-automatic { grid-template-columns: 1fr; }
  .intake-pipeline { padding: 19px 17px; }
  .intake-pipeline-heading > p { text-align: left; }
  .intake-pipeline-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .intake-pipeline + .workspace-sections .workspace-table,
  .intake-pipeline + .workspace-sections .workspace-table tbody,
  .intake-pipeline + .workspace-sections .workspace-table tr,
  .intake-pipeline + .workspace-sections .workspace-table td {
    display: block;
    width: 100%;
  }
  .intake-pipeline + .workspace-sections .workspace-table thead { display: none; }
  .intake-pipeline + .workspace-sections .table-scroll { overflow: hidden; }
  .intake-pipeline + .workspace-sections .workspace-table tbody tr,
  .intake-pipeline + .workspace-sections .workspace-table tbody tr:nth-child(even) {
    border: 1px solid #dce4eb;
    border-radius: 13px;
    margin-bottom: 12px;
    padding: 14px 15px;
  }
  .intake-pipeline + .workspace-sections .workspace-table td,
  .intake-pipeline + .workspace-sections .workspace-table td:first-child,
  .intake-pipeline + .workspace-sections .workspace-table td:last-child {
    border: 0;
    border-radius: 0;
    padding: 7px 0;
  }
  .intake-pipeline + .workspace-sections .workspace-table td::before {
    color: #7a8797;
    display: block;
    font-size: 10px;
    font-weight: 720;
    letter-spacing: .07em;
    margin-bottom: 3px;
    text-transform: uppercase;
  }
  .intake-pipeline + .workspace-sections .workspace-table td:nth-child(1)::before { content: "Pessoa"; }
  .intake-pipeline + .workspace-sections .workspace-table td:nth-child(2)::before { content: "Estágio"; }
  .intake-pipeline + .workspace-sections .workspace-table td:nth-child(3)::before { content: "Último fato"; }
  .intake-pipeline + .workspace-sections .workspace-table td:nth-child(4)::before { content: "Próxima ação"; }
  .intake-pipeline + .workspace-sections .workspace-table td:nth-child(5)::before { content: "Exceção ou conflito"; }
  .document-context-heading { align-items: flex-start; gap: 12px; }
}

@media (max-width: 420px) {
  .attention-lens { grid-template-columns: 1fr; }
  .attention-lens > div { min-height: 112px; }
  .intake-pipeline-steps { grid-template-columns: 1fr; }
  .intake-pipeline-steps li { padding-bottom: 8px; }
}

/* 5CD final information architecture pass — no domain or workflow changes. */
.cockpit-toolbar {
  justify-content: flex-start;
}

.cockpit-group-attention {
  border-color: #c8d6df;
  box-shadow: 0 1px 2px rgba(25, 37, 52, .04), 0 12px 30px rgba(38, 72, 94, .075);
  padding: 26px 28px;
}

.cockpit-group-attention > header {
  border-bottom-color: #dce5eb;
}

.cockpit-group-attention h2 {
  font-size: 23px;
}

.cockpit-group-today,
.cockpit-group-waiting,
.cockpit-group-automatic {
  box-shadow: 0 1px 2px rgba(25, 37, 52, .035);
}

.waiting-overview {
  background: #f6f8fa;
}

.today-clear-state {
  background: #f4f8f7;
  border-color: #d4e3dd;
}

.today-clear-state strong {
  color: #2f6954;
}

.matter-portfolio-summary {
  align-items: center;
  background: rgba(255, 255, 255, .9);
  border: 1px solid var(--vr-border);
  border-radius: 14px;
  box-shadow: var(--vr-shadow-sm);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 24px;
  padding: 12px 14px;
}

.matter-portfolio-summary > span {
  align-items: baseline;
  background: #f3f6f8;
  border-radius: 999px;
  color: #5c6b7d;
  display: inline-flex;
  font-size: 12px;
  gap: 5px;
  padding: 6px 10px;
}

.matter-portfolio-summary strong {
  color: #283a4d;
  font-size: 14px;
}

.matter-portfolio-summary .tone-warning { background: var(--vr-amber-soft); color: #795819; }
.matter-portfolio-summary .tone-warning strong { color: #795819; }
.matter-portfolio-summary .tone-active { background: var(--vr-primary-soft); color: #365c73; }
.matter-portfolio-summary .tone-active strong { color: #365c73; }
.matter-portfolio-summary .tone-success { background: var(--vr-success-soft); color: #28684f; }
.matter-portfolio-summary .tone-success strong { color: #28684f; }

.matter-portfolio {
  background: transparent;
}

.matter-portfolio > .section-heading {
  align-items: end;
  display: flex;
  justify-content: space-between;
  margin-bottom: 18px;
}

.matter-card-list {
  display: grid;
  gap: 14px;
}

.matter-list-card {
  background: rgba(255, 255, 255, .94);
  border: 1px solid var(--vr-border);
  border-left: 4px solid #91a6b5;
  border-radius: 16px;
  box-shadow: var(--vr-shadow-sm);
  padding: 21px 22px 18px;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.matter-list-card:hover {
  border-color: #bdcbd6;
  box-shadow: var(--vr-shadow);
  transform: translateY(-1px);
}

.matter-list-card.tone-warning { border-left-color: #d2a041; }
.matter-list-card.tone-critical,
.matter-list-card.tone-danger { border-left-color: #bd6259; }
.matter-list-card.tone-active { border-left-color: #5f8aa4; }
.matter-list-card.tone-good,
.matter-list-card.tone-success { border-left-color: #56a080; }

.matter-list-card > header {
  align-items: flex-start;
  display: flex;
  gap: 18px;
  justify-content: space-between;
}

.matter-card-client {
  color: #557188;
  font-size: 11px;
  font-weight: 740;
  letter-spacing: .07em;
  margin: 0 0 3px;
  text-transform: uppercase;
}

.matter-list-card h3 {
  font-size: 20px;
  letter-spacing: -.018em;
  margin: 0;
}

.matter-list-card h3 a {
  color: var(--vr-ink-strong);
  text-decoration: none;
}

.matter-list-card h3 a:hover {
  color: var(--vr-primary);
  text-decoration: underline;
}

.matter-list-card header p:last-child {
  color: #718093;
  font-size: 13px;
  margin: 4px 0 0;
}

.matter-card-states {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}

.matter-card-context {
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(150px, .55fr);
  margin-top: 20px;
}

.matter-card-context:not(:has(.matter-card-risk)) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.matter-card-context > div {
  background: #f7f9fb;
  border: 1px solid #e3e8ed;
  border-radius: 12px;
  min-width: 0;
  padding: 14px 15px;
}

.matter-card-context > div > span {
  color: #738195;
  display: block;
  font-size: 10px;
  font-weight: 740;
  letter-spacing: .07em;
  margin-bottom: 5px;
  text-transform: uppercase;
}

.matter-card-context strong {
  color: #28394b;
  display: block;
  font-size: 14px;
  line-height: 1.4;
}

.matter-card-context p,
.matter-card-context time {
  color: #657488;
  display: block;
  font-size: 12px;
  line-height: 1.5;
  margin: 4px 0 0;
}

.matter-card-next {
  background: #f0f6f8 !important;
  border-color: #d8e5eb !important;
}

.matter-card-risk {
  background: var(--vr-amber-soft) !important;
  border-color: #efdebb !important;
}

.matter-list-card > footer {
  align-items: center;
  border-top: 1px solid #e7ecf0;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  margin-top: 16px;
  padding-top: 14px;
}

.matter-list-card footer span,
.matter-list-card footer small {
  color: #667589;
  display: block;
  font-size: 12px;
}

.matter-list-card footer small {
  color: #8792a0;
  margin-top: 2px;
}

.matter-list-card footer .button {
  flex: 0 0 auto;
}

@media (max-width: 1200px) {
  .matter-card-context {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .matter-card-risk { grid-column: 1 / -1; }
}

@media (max-width: 760px) {
  .cockpit-group-attention { padding: 21px 18px; }
  .cockpit-group-attention h2 { font-size: 21px; }
  .matter-portfolio-summary { align-items: flex-start; flex-direction: column; }
  .matter-portfolio-summary > span { width: 100%; }
  .matter-list-card { padding: 19px 17px 16px; }
  .matter-list-card > header,
  .matter-list-card > footer {
    align-items: flex-start;
    flex-direction: column;
  }
  .matter-card-states { justify-content: flex-start; }
  .matter-card-context { grid-template-columns: 1fr; }
  .matter-card-risk { grid-column: auto; }
  .matter-list-card footer .button { width: 100%; }
}

/* 5CE compact Client-first portfolio. */
.client-portfolio-search {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(220px, 480px) auto auto;
  margin-bottom: 12px;
}

.client-portfolio-search input {
  margin: 0;
  min-width: 0;
}

.client-portfolio-search > a {
  color: var(--vr-primary);
  font-size: 13px;
  font-weight: 700;
  justify-self: start;
}

.client-portfolio-summary {
  align-items: center;
  color: var(--vr-ink-soft);
  display: flex;
  flex-wrap: wrap;
  font-size: 12px;
  gap: 7px;
  margin-bottom: 22px;
}

.client-portfolio-summary > span {
  background: #f3f6f8;
  border: 1px solid #e0e6eb;
  border-radius: 999px;
  padding: 5px 9px;
}

.client-portfolio-summary .tone-warning {
  background: var(--vr-amber-soft);
  border-color: #efdebb;
  color: #795819;
}

.client-portfolio > .section-heading { margin-bottom: 12px; }

.client-portfolio-list {
  display: grid;
  gap: 8px;
}

.client-portfolio-row {
  background: rgba(255, 255, 255, .96);
  border: 1px solid var(--vr-border);
  border-radius: 13px;
  box-shadow: 0 2px 8px rgba(35, 52, 70, .035);
  overflow: clip;
}

.client-portfolio-row.has-attention { border-left: 3px solid #d2a041; }

.client-portfolio-row > summary {
  align-items: center;
  cursor: pointer;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1fr) auto 20px;
  list-style: none;
  min-height: 64px;
  padding: 10px 15px;
}

.client-portfolio-row > summary::-webkit-details-marker { display: none; }

.client-portfolio-row > summary:hover { background: #f8fafb; }

.client-portfolio-row > summary:focus-visible {
  outline: 3px solid rgba(54, 103, 132, .28);
  outline-offset: -3px;
}

.client-row-identity,
.client-row-counts {
  min-width: 0;
}

.client-row-identity strong {
  color: var(--vr-ink-strong);
  display: block;
  font-size: 15px;
  letter-spacing: -.01em;
  overflow-wrap: anywhere;
}

.client-row-identity small {
  color: #6b7889;
  display: block;
  font-size: 11px;
  margin-top: 2px;
}

.client-row-counts {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
  font-size: 12px;
  gap: 3px;
  text-align: right;
}

.client-attention-count {
  color: #805f20;
  font-weight: 730;
}

.client-row-expander::before {
  border-bottom: 2px solid #607184;
  border-right: 2px solid #607184;
  content: "";
  display: block;
  height: 7px;
  transform: rotate(45deg) translate(-2px, -2px);
  transition: transform .15s ease;
  width: 7px;
}

.client-portfolio-row[open] .client-row-expander::before {
  transform: rotate(225deg) translate(-1px, -1px);
}

.client-row-expanded {
  border-top: 1px solid #e4e9ed;
  padding: 16px;
}

.client-cases-heading {
  align-items: end;
  display: flex;
  justify-content: space-between;
  margin-bottom: 9px;
}

.client-cases-heading h3 { font-size: 16px; margin: 0; }
.client-cases-heading p { margin-bottom: 2px; }
.client-cases-heading > span { color: #6b7889; font-size: 12px; }

.client-matter-list {
  display: grid;
  gap: 7px;
}

.client-matter-row {
  align-items: center;
  background: #f8fafb;
  border: 1px solid #e2e8ed;
  border-radius: 10px;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(200px, .8fr) minmax(230px, 1fr) auto;
  padding: 10px 11px;
}

.client-matter-row.needs-attention {
  background: #fffbf2;
  border-color: #ead7ad;
}

.client-matter-main > a {
  color: var(--vr-ink-strong);
  display: block;
  font-size: 13px;
  font-weight: 760;
  line-height: 1.35;
  overflow-wrap: anywhere;
  text-decoration: none;
}

.client-matter-main > a:hover { color: var(--vr-primary); text-decoration: underline; }

.client-matter-states {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 5px;
}

.client-matter-context {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.client-matter-context p {
  margin: 0;
  min-width: 0;
}

.client-matter-context span,
.client-matter-context small {
  color: #697789;
  display: block;
  font-size: 10px;
}

.client-matter-context strong {
  color: #314457;
  display: block;
  font-size: 12px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.client-matter-deadline strong { color: #805f20; }

.client-matter-row > .button {
  font-size: 12px;
  min-height: 34px;
  padding: 7px 10px;
  white-space: nowrap;
}

.client-all-cases,
.client-data-disclosure {
  border-top: 1px solid #e4e9ed;
  margin-top: 10px;
  padding-top: 10px;
}

.client-all-cases > summary,
.client-data-disclosure > summary {
  color: var(--vr-primary);
  cursor: pointer;
  font-size: 12px;
  font-weight: 740;
  width: fit-content;
}

.client-all-cases > .client-matter-list { margin-top: 9px; }

.client-data-disclosure dl {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 11px 0 0;
}

.client-data-disclosure dl > div {
  background: #f7f9fb;
  border-radius: 9px;
  min-width: 0;
  padding: 9px 10px;
}

.client-data-disclosure dt {
  color: #68778a;
  font-size: 10px;
  font-weight: 740;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.client-data-disclosure dd {
  color: #34475a;
  font-size: 12px;
  margin: 3px 0 0;
  overflow-wrap: anywhere;
}

.client-data-disclosure dd small { color: #748195; display: block; margin-top: 2px; }
.client-data-disclosure > p { color: #6a788a; font-size: 11px; margin: 9px 0 0; }

@media (max-width: 760px) {
  .client-portfolio-search { grid-template-columns: minmax(0, 1fr) auto; }
  .client-portfolio-search > a { grid-column: 1 / -1; }
  .client-portfolio-row > summary {
    align-items: start;
    gap: 6px 10px;
    grid-template-columns: minmax(0, 1fr) 20px;
    padding: 11px 12px;
  }
  .client-row-counts {
    align-items: flex-start;
    grid-column: 1;
    grid-row: 2;
    text-align: left;
  }
  .client-row-expander { grid-column: 2; grid-row: 1 / span 2; margin-top: 5px; }
  .client-row-expanded { padding: 12px; }
  .client-matter-row { grid-template-columns: minmax(0, 1fr); }
  .client-matter-row > .button { width: 100%; }
  .client-data-disclosure dl { grid-template-columns: minmax(0, 1fr); }
}

/* 5CD H1 final contrast refinement — visual tokens only. */
:root {
  --muted: #536174;
  --vr-ink-soft: #536174;
}

.operator-topbar .site-brand small,
.workspace-secondary > span,
.workspace-logout button,
.eyebrow,
.operation-summary span,
.cockpit-group header p,
.cockpit-item > div > span:not(.state-indicator),
.metric-item span,
.workspace-table th,
.cell-meta,
.help-text,
.journey-breadcrumb,
.next-action-panel > span,
.summary-grid span,
.summary-grid p,
.onboarding-steps li,
.lead-journey li,
.intake-pipeline-steps small,
.intake-pipeline + .workspace-sections .workspace-table td::before,
.document-audit-intro,
.matter-list-card header p:last-child,
.matter-card-context > div > span,
.matter-list-card footer small {
  color: #59677a;
}

.matter-title,
.matter-meta > span:not(.state-chip),
.next-action-panel p,
.matter-card-context p,
.matter-card-context time,
.matter-list-card footer span {
  color: #536174;
}

.empty-state,
.automation-overview > div:first-child > span,
.requirement-card p {
  color: #536174;
}

.requirement-card span,
.matter-timeline time,
.matter-timeline p {
  color: #59677a;
}

/* Keep every attention card on the same geometry at every breakpoint. */
.operation-summary.attention-lens {
  grid-auto-rows: 1fr;
}

.operation-summary.attention-lens > div {
  border-right: 1px solid var(--vr-border);
  padding: 20px;
}

/* 5CD H1 document interaction closure. */
.requirement-card {
  align-items: center;
}

.requirement-card .requirement-version {
  color: #647386;
  font-size: 10px;
  font-weight: 740;
  letter-spacing: .06em;
  margin-bottom: 5px;
  text-transform: uppercase;
}

.inline-action {
  color: var(--vr-primary);
  display: inline-flex;
  font-size: 13px;
  font-weight: 760;
  margin-top: 9px;
  text-decoration: none;
}

.inline-action:hover,
.inline-action:focus-visible {
  text-decoration: underline;
}

.signed-artifact-list {
  border-top: 1px solid var(--vr-border);
  margin-top: 24px;
  padding-top: 22px;
}

.signed-artifact-list > header {
  margin-bottom: 12px;
}

.signed-artifact-list h3 {
  margin: 2px 0 0;
}

.signed-artifact-row {
  align-items: center;
  background: #f8fafb;
  border: 1px solid #dfe6ec;
  border-radius: 14px;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1fr) auto auto;
  margin-top: 10px;
  padding: 15px 17px;
}

.signed-artifact-row span,
.signed-artifact-row small {
  color: #647386;
  display: block;
  font-size: 12px;
}

.signed-artifact-row strong {
  color: var(--vr-ink);
  display: block;
  margin: 3px 0;
}

.document-primary-header {
  align-items: flex-start;
  display: flex;
  gap: 28px;
  justify-content: space-between;
  margin: 24px 0 20px;
}

.document-primary-header h1 {
  margin: 3px 0 7px;
}

.document-primary-header p:last-child {
  color: var(--muted);
  margin: 0;
}

.document-primary-status {
  align-items: flex-end;
  display: flex;
  flex: 0 0 min(310px, 36%);
  flex-direction: column;
  gap: 7px;
  text-align: right;
}

.document-primary-status small {
  color: var(--muted);
  line-height: 1.45;
}

.document-context-strip {
  display: grid;
  gap: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 18px;
  padding: 0;
}

.document-context-strip > div {
  border-right: 1px solid var(--vr-border);
  padding: 17px 19px;
}

.document-context-strip > div:last-child {
  border-right: 0;
}

.document-context-strip span {
  color: var(--muted);
  display: block;
  font-size: 11px;
  font-weight: 760;
  letter-spacing: .055em;
  margin-bottom: 5px;
  text-transform: uppercase;
}

.document-context-strip strong {
  color: var(--vr-ink);
  font-size: 14px;
  line-height: 1.45;
}

.onboarding-document-viewer {
  margin-bottom: 18px;
}

.document-inline-frame {
  background: #eef2f5;
  border: 1px solid var(--vr-border-strong);
  border-radius: 12px;
  height: min(72vh, 900px);
  min-height: 560px;
  width: 100%;
}

.document-text-preview {
  background: #fbfcfd;
  border: 1px solid var(--vr-border);
  border-radius: 12px;
  color: #293a4c;
  line-height: 1.72;
  margin-top: 18px;
  max-height: 760px;
  overflow: auto;
  padding: clamp(22px, 4vw, 48px);
}

.document-audit-details {
  padding: 17px 20px;
}

.document-audit-details summary {
  cursor: pointer;
  font-weight: 740;
}

.document-audit-list {
  display: grid;
  gap: 10px;
  margin: 18px 0 0;
}

.document-audit-list > div {
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(140px, .3fr) minmax(0, 1fr);
}

.document-audit-list dt {
  color: var(--muted);
}

.document-audit-list dd {
  margin: 0;
  overflow-wrap: anywhere;
}

/* 5CE H1 — case-first document preview and document information cleanup. */
.matter-document-groups {
  display: grid;
  gap: 22px;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  margin: 22px 0 28px;
}

.matter-document-group {
  min-width: 0;
}

.document-requirements-disclosure {
  align-self: start;
  background: var(--vr-surface-raised);
  border: 1px solid var(--vr-border);
  border-radius: 14px;
}

.document-requirements-disclosure > summary {
  align-items: center;
  border-radius: 13px;
  cursor: pointer;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1fr) minmax(0, auto) 20px;
  list-style: none;
  min-height: 72px;
  padding: 16px 18px;
}

.document-requirements-disclosure > summary::-webkit-details-marker { display: none; }
.document-requirements-disclosure > summary:hover { background: var(--vr-primary-faint); }
.document-requirements-disclosure > summary:focus-visible { outline: 2px solid var(--vr-primary-strong); outline-offset: 3px; }

.document-requirements-title {
  color: var(--vr-ink-strong);
  font-size: 16px;
  line-height: 1.4;
  min-width: 0;
}

.document-requirements-status {
  color: var(--vr-ink-soft);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
  max-width: 24ch;
  min-width: 0;
  overflow-wrap: anywhere;
  text-align: right;
}

.document-requirements-chevron { color: var(--vr-primary-strong); }
.document-requirements-disclosure[open] > summary .document-requirements-chevron { transform: rotate(180deg); }
.document-requirements-content { padding: 0 14px 14px; }

@media (max-width: 760px) {
  .document-requirements-disclosure > summary {
    column-gap: 12px;
    grid-template-columns: minmax(0, 1fr) 20px;
    padding: 14px 16px;
    row-gap: 4px;
  }
  .document-requirements-title { grid-column: 1; grid-row: 1; }
  .document-requirements-status { grid-column: 1; grid-row: 2; max-width: none; text-align: left; }
  .document-requirements-chevron { grid-column: 2; grid-row: 1 / 3; }
}

.onboarding-document-group,
.office-result-list,
.collection-history {
  margin-top: 24px;
}

.onboarding-document-group {
  background: #f8fafb;
  border: 1px solid var(--vr-border);
  border-radius: 16px;
  padding: clamp(18px, 3vw, 26px);
}

.onboarding-document-group .onboarding-grid {
  grid-template-columns: 1fr;
}

.document-file-link.document-preview-trigger {
  background: #f7fafc;
  border: 1px solid #dce5eb;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-top: 10px;
  padding: 10px 12px;
  text-decoration: none;
}

.document-file-link.document-preview-trigger:hover {
  background: #eef5f8;
  border-color: #aabfc9;
}

.document-file-link.document-preview-trigger span {
  color: var(--vr-primary-strong);
  font-size: 14px;
}

.document-file-link.document-preview-trigger small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 520;
}

.collection-history {
  background: #f6f8fa;
  border: 1px solid var(--vr-border);
  border-radius: 14px;
  padding: 0;
}

.collection-history > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  list-style-position: inside;
  padding: 16px 18px;
}

.collection-history > summary strong,
.collection-history > summary small {
  display: block;
}

.collection-history > summary small,
.collection-history > summary > span:last-child {
  color: var(--muted);
  font-size: 12px;
  margin-top: 3px;
}

.collection-history-list {
  border-top: 1px solid var(--vr-border);
  padding: 14px 16px 16px;
}

/* 5CE H1 — action-first Matter workspace hierarchy. */
.matter-admin-actions {
  margin: 12px 0 0 auto;
  position: relative;
  width: fit-content;
  z-index: 9;
}

.matter-admin-actions > summary {
  background: #f2f5f7;
  border: 1px solid var(--vr-border-strong);
  border-radius: 10px;
  color: var(--vr-ink-soft);
  cursor: pointer;
  font-size: 13px;
  font-weight: 730;
  list-style-position: inside;
  padding: 9px 12px;
}

.matter-admin-actions[open] > summary {
  background: var(--vr-primary-soft);
  color: var(--vr-primary-strong);
}

.matter-admin-actions-list {
  background: var(--vr-surface-raised);
  border: 1px solid var(--vr-border);
  border-radius: 12px;
  box-shadow: var(--vr-shadow);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
  max-width: min(720px, calc(100vw - 48px));
  padding: 12px;
}

.work-now-section {
  border-left: 4px solid var(--vr-primary);
}

.work-now-layout {
  align-items: stretch;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, .55fr);
}

.work-now-layout > :only-child {
  grid-column: 1 / -1;
}

.work-now-card,
.work-risk-list {
  border: 1px solid var(--vr-border);
  border-radius: 14px;
  min-width: 0;
  padding: clamp(18px, 2.5vw, 24px);
}

.work-now-card {
  background: var(--vr-primary-faint);
  border-left: 4px solid var(--vr-primary);
}

.work-now-card.needs-attention {
  background: var(--vr-amber-soft);
  border-color: #ead8b3;
  border-left-color: var(--vr-amber);
}

.work-now-card.projection-unavailable {
  background: var(--vr-danger-soft);
  border-color: #e8c8c4;
  border-left-color: var(--vr-danger);
}

.work-now-card.is-clear {
  background: var(--vr-success-soft);
  border-color: #cfe5da;
  border-left-color: var(--vr-success);
}

.work-now-card > span {
  color: var(--muted);
  display: block;
  font-size: 11px;
  font-weight: 760;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.work-now-card h3 {
  color: var(--vr-ink-strong);
  font-size: clamp(20px, 2.4vw, 27px);
  letter-spacing: -.025em;
  margin: 7px 0 10px;
}

.work-now-card strong {
  color: var(--vr-primary-strong);
  display: block;
  font-size: 17px;
  margin-bottom: 5px;
}

.work-now-card p {
  color: var(--vr-ink-soft);
  margin: 0;
}

.work-risk-list {
  background: #fafbfc;
}

.work-risk-list h3 {
  color: var(--vr-ink-strong);
  font-size: 17px;
  margin: 0 0 8px;
}

.document-support-details {
  background: #f8fafb;
  border: 1px solid var(--vr-border);
  border-radius: 14px;
  overflow: clip;
}

.document-support-details > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  list-style-position: inside;
  padding: 16px 18px;
}

.document-support-details > summary strong,
.document-support-details > summary small {
  display: block;
}

.document-support-details > summary strong {
  color: var(--vr-success);
  font-size: 16px;
}

.document-support-details > summary small,
.document-support-details > summary > span:last-child {
  color: var(--muted);
  font-size: 12px;
  margin-top: 3px;
}

.document-support-details > summary > span:last-child {
  color: var(--vr-primary-strong);
  font-weight: 730;
  white-space: nowrap;
}

.document-support-details[open] > summary {
  background: var(--vr-primary-faint);
  border-bottom: 1px solid var(--vr-border);
}

.document-support-content {
  padding: 2px 18px 18px;
}

.document-support-content .matter-document-groups {
  margin-top: 20px;
}

.matter-document-preview {
  background: var(--vr-surface);
  border: 1px solid var(--vr-border-strong);
  border-radius: 14px;
  box-shadow: 0 18px 58px rgb(24 39 55 / 22%);
  height: calc(100dvh - 16px);
  inset: 8px 8px 8px auto;
  margin: 0;
  max-height: none;
  max-width: none;
  overflow: hidden;
  padding: 0;
  width: min(1600px, calc(100vw - 32px));
}

.matter-document-preview::backdrop {
  background: rgb(24 39 55 / 42%);
}

.matter-document-preview-shell {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

.matter-document-preview-header {
  align-items: flex-start;
  background: rgb(255 255 255 / 96%);
  border-bottom: 1px solid var(--vr-border);
  display: flex;
  gap: 24px;
  justify-content: space-between;
  padding: 14px clamp(16px, 2vw, 24px);
  z-index: 2;
}

.matter-document-preview-header h3 {
  color: var(--vr-ink-strong);
  font-size: clamp(22px, 3vw, 30px);
  margin: 3px 0 4px;
}

.matter-document-preview-header p:last-child {
  color: var(--muted);
  margin: 0;
  overflow-wrap: anywhere;
}

.matter-document-preview-actions {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: 10px;
}

.matter-document-preview-actions form { margin: 0; }

.dialog-close {
  background: #eef2f5;
  border: 1px solid var(--vr-border-strong);
  border-radius: 999px;
  color: var(--vr-ink);
  cursor: pointer;
  font: inherit;
  font-size: 13px;
  font-weight: 730;
  padding: 9px 14px;
}

.dialog-close:hover,
.dialog-close:focus-visible {
  background: #e2eaf0;
}

.dev-document-notice {
  background: #fff7df;
  border-bottom: 1px solid #ecd99d;
  color: #725a14;
  margin: 0;
  padding: 10px clamp(18px, 3vw, 30px);
}

.document-state-axes {
  background: #f7f9fb;
  border-bottom: 1px solid var(--vr-border);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 0 clamp(18px, 3vw, 30px);
}

.document-state-axes > div {
  border-right: 1px solid var(--vr-border);
  padding: 15px 18px;
}

.document-state-axes > div:first-child { padding-left: 0; }
.document-state-axes > div:last-child { border-right: 0; }
.document-state-axes span,
.document-context-block span {
  color: var(--muted);
  display: block;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: .06em;
  margin-bottom: 4px;
  text-transform: uppercase;
}

.document-state-axes strong {
  display: block;
  font-size: 13px;
  line-height: 1.45;
}

.document-inline-exception {
  background: var(--vr-amber-soft);
  border-bottom: 1px solid #ead8b3;
  padding: 14px clamp(18px, 3vw, 30px);
}

.document-inline-exception p { margin: 4px 0; }
.document-inline-exception a { color: var(--vr-primary-strong); font-weight: 720; }

.matter-document-preview-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}

.matter-document-original {
  background: #e9eef2;
  flex: 1;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  padding: clamp(6px, 1vw, 12px);
}

.matter-document-original iframe,
.matter-document-original img {
  background: #fff;
  border: 1px solid var(--vr-border-strong);
  border-radius: 10px;
  display: block;
  height: 100%;
  min-height: 0;
  min-width: 0;
  object-fit: contain;
  width: 100%;
}

.document-preview-unsupported {
  align-items: center;
  background: #fff;
  border: 1px dashed var(--vr-border-strong);
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 360px;
  padding: 30px;
  text-align: center;
}

.matter-document-context {
  background: var(--vr-surface);
  border-top: 1px solid var(--vr-border);
  flex: 0 0 auto;
  max-height: min(46dvh, 520px);
  overflow: auto;
}

.matter-document-context > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  list-style-position: inside;
  padding: 12px clamp(16px, 2vw, 24px);
}

.matter-document-context > summary span {
  color: var(--vr-ink-strong);
  font-weight: 760;
}

.matter-document-context > summary small { color: var(--muted); }

.matter-document-context-content {
  border-top: 1px solid var(--vr-border);
  padding: 0 clamp(16px, 2vw, 24px) 20px;
}

.matter-document-context-grid {
  display: grid;
  gap: 24px;
  grid-template-columns: minmax(0, 1fr) minmax(300px, .7fr);
  padding-top: 20px;
}

.document-context-block,
.document-relevant-data {
  border-bottom: 1px solid var(--vr-border);
  margin-bottom: 20px;
  padding-bottom: 20px;
}

.document-relevant-data h4 { margin: 0 0 12px; }
.document-relevant-data dl,
.document-inline-audit dl { margin: 0; }
.document-relevant-data dl > div,
.document-inline-audit dl > div {
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(90px, .45fr) minmax(0, 1fr);
  padding: 7px 0;
}

.document-relevant-data dt,
.document-inline-audit dt { color: var(--muted); }
.document-relevant-data dd,
.document-inline-audit dd { margin: 0; overflow-wrap: anywhere; }
.document-inline-audit {
  border: 1px solid var(--vr-border);
  border-radius: 10px;
  padding: 14px;
}

.document-inline-audit summary {
  color: var(--vr-primary-strong);
  cursor: pointer;
  font-weight: 730;
}

@media (max-width: 760px) {
  .matter-admin-actions {
    width: 100%;
  }
  .matter-admin-actions > summary {
    text-align: center;
  }
  .matter-admin-actions-list,
  .work-now-layout {
    grid-template-columns: 1fr;
    max-width: none;
  }
  .matter-admin-actions-list {
    display: grid;
    width: 100%;
  }
  .matter-admin-actions-list .button {
    text-align: center;
    width: 100%;
  }
  .document-support-details > summary {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }
  .document-support-details > summary > span:last-child {
    white-space: normal;
  }
  .document-support-content {
    padding-left: 13px;
    padding-right: 13px;
  }
  .matter-document-groups,
  .matter-document-context-grid,
  .document-state-axes {
    grid-template-columns: 1fr;
  }
  .matter-document-preview {
    border: 0;
    border-radius: 0;
    height: 100dvh;
    inset: 0;
    width: 100vw;
  }
  .matter-document-preview-header { gap: 12px; }
  .matter-document-preview-header h3 { font-size: 22px; }
  .matter-document-preview-actions { align-items: stretch; flex-direction: column-reverse; }
  .matter-document-preview-actions .button,
  .matter-document-preview-actions .dialog-close { padding: 8px 11px; text-align: center; }
  .document-state-axes > div,
  .document-state-axes > div:first-child {
    border-bottom: 1px solid var(--vr-border);
    border-right: 0;
    padding: 11px 0;
  }
  .document-state-axes > div:last-child { border-bottom: 0; }
  .matter-document-context { max-height: 58dvh; }
  .matter-document-context > summary { align-items: flex-start; flex-direction: column; gap: 3px; }
  .matter-document-context-grid { gap: 14px; }
  .collection-history > summary,
  .document-summary-row { align-items: flex-start; flex-direction: column; }
  .document-summary-bar { align-items: flex-start; gap: 8px 16px; }
  .document-summary-bar a { flex-basis: 100%; margin-left: 0; padding-top: 4px; }
  .document-compact-row,
  .matter-document-archive .document-compact-row,
  .operational-result-row,
  .document-archive-filter { align-items: stretch; grid-template-columns: 1fr; }
  .document-compact-row { padding: 12px; }
  .document-compact-row time { justify-self: start; }
}

@media (max-width: 760px) {
  .signed-artifact-row,
  .document-context-strip {
    grid-template-columns: 1fr;
  }
  .signed-artifact-row {
    align-items: flex-start;
  }
  .signed-artifact-row .header-actions,
  .signed-artifact-row .button {
    width: 100%;
  }
  .document-primary-header {
    flex-direction: column;
  }
  .document-primary-status {
    align-items: flex-start;
    flex-basis: auto;
    text-align: left;
  }
  .document-context-strip > div {
    border-bottom: 1px solid var(--vr-border);
    border-right: 0;
  }
  .document-context-strip > div:last-child {
    border-bottom: 0;
  }
  .document-inline-frame {
    min-height: 480px;
  }
  .onboarding-document-viewer .context-section-heading {
    align-items: stretch;
    flex-direction: column;
  }
  .onboarding-document-viewer .header-actions {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }
  .onboarding-document-viewer .header-actions .button {
    width: 100%;
  }
  .document-audit-list > div {
    grid-template-columns: 1fr;
    gap: 3px;
  }
}
