.diagnostics-nav { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--border); flex-shrink: 0; }
.diagnostics-nav > summary { padding: 8px 12px; color: var(--text-secondary); font-size: 12px; font-weight: 650; cursor: pointer; }
.diagnostics-nav[open] > summary { margin-bottom: 8px; color: var(--primary-dark); }
body .diagnostics-nav .nav-btn { padding: 11px 12px; font-size: 12px; line-height: 1.5; gap: 9px; }
.diagnostics-nav .nav-btn svg { flex-shrink: 0; }
.diagnostics-nav:has(.nav-btn.active) > summary { color: var(--primary-dark); }
summary:focus-visible { outline: 3px solid #90b3a2; outline-offset: 3px; border-radius: 6px; }

body .diagnostics-view { gap: 20px; min-width: 0; }
.diagnostics-header { gap: 24px; padding: 28px 30px; border: 1px solid #dce5d9; border-radius: 20px; background: linear-gradient(120deg, #fff, #eff4e9); }
.diagnostics-header .eyebrow { color: #426b53; font-size: 10px; }
.diagnostics-header .muted { max-width: 680px; margin: 10px 0 0; }
.diagnostics-header > .btn { flex-shrink: 0; }
.diagnostics-view h2 { font-size: 15px; font-weight: 650; color: var(--text-primary); line-height: 1.5; }
.review-controls { padding: 24px; gap: 20px; }
.review-controls-intro { display: flex; gap: 12px; align-items: flex-start; }
.review-controls-intro p { margin-top: 4px; color: var(--text-secondary); font-size: 13px; line-height: 1.7; }
.review-step { display: grid; place-items: center; flex: 0 0 32px; height: 32px; border-radius: 10px; background: #e6f0e4; color: #285d43; font-size: 13px; font-weight: 700; }
.review-toolbar { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 14px; }
.review-toolbar label { display: grid; gap: 8px; color: var(--text-secondary); font-size: 12px; font-weight: 650; }
.review-import-label { flex: 1 1 260px; min-width: 0; }
.review-toolbar select,
.review-decision select { min-width: 150px; min-height: 42px; padding: 9px 12px; color: var(--text-primary); background: var(--bg-secondary); border: 1px solid var(--border); border-radius: 9px; font: inherit; }
.review-toolbar select { width: 100%; font-size: 13px; }
.review-import-summary { padding: 12px 14px; background: #f5f7f1; border-radius: 9px; color: var(--text-secondary); font-size: 12px; line-height: 1.7; overflow-wrap: anywhere; }
.review-import-summary:empty { display: none; }
body .review-explainer { display: block; padding: 16px 22px; box-shadow: none; background: #fafbf8; }
.review-explainer > summary { color: #385344; font-size: 13px; font-weight: 650; cursor: pointer; }
.review-status-legend { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; padding-top: 20px; }
.review-status-legend dd { margin-top: 9px; color: var(--text-secondary); font-size: 12px; line-height: 1.7; }
.review-results .panel-header,
.activity-panel .panel-header { align-items: center; flex-wrap: wrap; gap: 12px; border-bottom-color: var(--divider); }
#transfer-review-count, #activity-count { color: var(--text-secondary); font-size: 12px; font-weight: 400; line-height: 1.6; }
.review-table-wrap { overflow: auto; }
.review-audit-table { width: 100%; border-collapse: collapse; min-width: 1050px; font-size: 13px; }
.review-audit-table th,
.review-audit-table td { padding: 16px; border-bottom: 1px solid var(--divider); text-align: left; vertical-align: top; line-height: 1.6; }
.review-audit-table th { background: #fafbf8; color: var(--text-secondary); font-size: 11px; font-weight: 650; white-space: nowrap; }
.review-audit-table td { overflow-wrap: anywhere; }
.review-audit-table td:nth-child(2), .review-audit-table td:nth-child(3) { min-width: 150px; max-width: 260px; }
.review-audit-table tbody tr:hover { background: #fbfcf9; }
.review-audit-table td small { display: block; color: var(--text-secondary); margin-top: 4px; font-size: 11px; }
.review-audit-table td[colspan] { padding: 48px 24px; text-align: center; color: var(--text-secondary); }
.review-audit-table td[colspan] strong { color: var(--text-primary); font-size: 15px; }
.review-audit-table td[colspan] small { margin-top: 8px; font-size: 13px; }
.review-amount { text-align: right !important; white-space: nowrap; font-weight: 700; font-variant-numeric: tabular-nums; }
.handling-status { display: inline-block; max-width: 220px; padding: 5px 9px; border: 1px solid transparent; border-radius: 7px; background: var(--bg-tertiary); font-size: 11px; font-weight: 650; line-height: 1.6; }
.handling-internal { color: #43566b; background: #edf1f6; border-color: #d6e0ea; }
.handling-savings { color: #1e625a; background: #e8f4ef; border-color: #c5e1d7; }
.handling-unknown { color: #82510d; background: #fff4d9; border-color: #ebd69e; }
.handling-counted { color: #2e6338; background: #edf5e8; border-color: #d3e4c9; }
.review-decision { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; min-width: 240px; }
.review-decision select { min-width: 136px; max-width: 190px; min-height: 36px; padding: 7px 9px; font-size: 12px; }
.review-decision .btn { padding: 8px 12px; font-size: 12px; }
.review-error { padding: 12px 16px; color: var(--danger); background: #fff1f2; border: 1px solid #f2ccd4; border-radius: 10px; font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
.review-error:empty { display: none; }
.diagnostics-pagination { justify-content: flex-end; padding: 16px 20px; margin: 0; gap: 10px; }
.diagnostics-pagination:empty { display: none; }
.diagnostics-pagination .btn { font-size: 12px; }
.diagnostics-pagination .btn:disabled, .review-decision .btn:disabled { cursor: default; transform: none; }
.activity-panel .panel-header p:not(#activity-count) { margin-top: 4px; color: var(--text-secondary); font-size: 12px; font-weight: 400; line-height: 1.7; }
.activity-list { display: flex; flex-direction: column; gap: 0; padding: 8px 24px; }
.activity-list:empty::before { content: "Workspace activity will appear here."; padding: 40px 16px; text-align: center; color: var(--text-secondary); font-size: 13px; }
.activity-list > p { padding: 40px 16px; text-align: center; color: var(--text-secondary); font-size: 13px; line-height: 1.7; }
.activity-entry { position: relative; padding: 22px 0 22px 24px; border-bottom: 1px solid var(--divider); }
.activity-entry:last-child { border-bottom: 0; }
.activity-entry::before { content: ""; position: absolute; left: 0; top: 28px; width: 8px; height: 8px; border-radius: 50%; background: #547c62; box-shadow: 0 0 0 4px #edf3e9; }
.activity-entry-head { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; font-size: 13px; }
.activity-entry-head time { color: var(--text-secondary); font-size: 11px; white-space: nowrap; }
.activity-entry p { margin-top: 8px; color: var(--text-secondary); font-size: 13px; line-height: 1.7; overflow-wrap: anywhere; }
.activity-entry small { display: block; margin-top: 8px; color: var(--text-secondary); font-size: 11px; line-height: 1.6; overflow-wrap: anywhere; }
.auth-privacy { margin-top: 24px; padding: 18px; background: #f1f5eb; border: 1px solid #dce5d5; border-radius: 14px; }
.auth-privacy-heading { display: flex; align-items: flex-start; gap: 9px; color: #2c624c; }
.auth-privacy-heading svg { flex-shrink: 0; }
.auth-privacy h3 { font-size: 13px; font-weight: 700; line-height: 1.5; letter-spacing: -.1px; }
.auth-privacy p { margin: 10px 0 0; color: #526257; font-size: 12px; line-height: 1.75; }
.auth-privacy details { margin-top: 14px; padding-top: 12px; border-top: 1px solid #dce5d5; }
.auth-privacy summary { color: #345d46; font-size: 12px; font-weight: 650; cursor: pointer; }
@media (max-width: 1000px) {
  .review-status-legend { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .diagnostics-header { align-items: flex-start; flex-wrap: wrap; }
}
@media (max-width: 700px) {
  .diagnostics-header { padding: 22px; }
  .review-controls { padding: 18px; }
  .review-toolbar { align-items: stretch; flex-direction: column; }
  .review-import-label { flex: auto; }
  .review-toolbar select { width: 100%; min-width: 0; }
  .review-toolbar > .btn { justify-content: center; }
  .review-status-legend { gap: 16px; }
  .activity-list { padding: 4px 18px; }
  .activity-entry-head { align-items: flex-start; flex-direction: column; gap: 4px; }
  .diagnostics-pagination { justify-content: center; flex-wrap: wrap; padding: 14px; }
  .auth-privacy { padding: 16px; }
}
@media (max-width: 420px) {
  .review-status-legend { grid-template-columns: 1fr; }
}
