:root {
  --weave-font-sans: "Artifakt Element", "Artifakt", "Avenir Next", "Segoe UI Variable Text", "Segoe UI", Arial, sans-serif;
  --weave-font-mono: "Cascadia Code", Consolas, "Courier New", monospace;
  --weave-accent: #0696a6;
  --weave-accent-strong: #00b6c3;
  --weave-accent-soft: #e7f6f9;
  --weave-bg-light: #f5f8fb;
  --weave-surface-light: #ffffff;
  --weave-surface-light-muted: #f7fbfd;
  --weave-border-light: #c9d9e3;
  --weave-text-light: #14242f;
  --weave-text-light-muted: #5a717f;
  --weave-bg-dark: #23272a;
  --weave-surface-dark: #2d333b;
  --weave-surface-dark-muted: #252b32;
  --weave-border-dark: #455762;
  --weave-text-dark: #edf3f6;
  --weave-text-dark-muted: #b2c4ce;
  --weave-radius-sm: 6px;
  --weave-radius-md: 10px;
  --weave-radius-lg: 14px;
  --weave-shadow-sm: 0 2px 8px rgba(13, 35, 48, 0.08);
  --weave-shadow-md: 0 10px 30px rgba(9, 24, 34, 0.12);

  /* Shim variables used as fallbacks across templates */
  --card-bg: #ffffff;
  --card-bg-muted: #f7fbfd;
  --card-border: rgba(0, 0, 0, 0.12);
  --muted-text: #5a717f;
  --accent: #0696a6;
  --row-hover-bg: rgba(0, 182, 195, 0.08);
  --row-stripe-bg: #f7fbfd;
  --table-head-bg: #eaf0f5;
  --table-head-color: #1a2e3c;
  --input-bg: #ffffff;
  --input-border: rgba(0, 0, 0, 0.18);
  --warn-bg: #fef9c3;
  --warn-color: #92400e;
  --info-bg: #e9f3ff;
  --info-color: #1a52b0;
  --success-row-bg: #e8f7ee;
  --success-row-color: #1a6b38;
}

[data-theme="dark"] {
  --card-bg: #2d333b;
  --card-bg-muted: #252b32;
  --card-border: rgba(255, 255, 255, 0.08);
  --muted-text: #b2c4ce;
  --accent: #00b6c3;
  --row-hover-bg: rgba(0, 182, 195, 0.10);
  --row-stripe-bg: #252b32;
  --table-head-bg: #32414b;
  --table-head-color: #e5eef3;
  --input-bg: #1f252c;
  --input-border: rgba(255, 255, 255, 0.14);
  --warn-bg: #3a2f0a;
  --warn-color: #f0c060;
  --info-bg: #0f2040;
  --info-color: #7ab4f5;
  --success-row-bg: #0f2a1a;
  --success-row-color: #6fd49a;
}

* {
  box-sizing: border-box;
}

html,
body {
  min-height: 100%;
}

body,
button,
input,
select,
textarea,
table,
th,
td,
label,
legend {
  font-family: var(--weave-font-sans) !important;
}

body {
  background: var(--weave-bg-light);
  color: var(--weave-text-light);
  font-family: var(--weave-font-sans) !important;
  line-height: 1.45;
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body[data-theme="dark"],
html[data-theme="dark"] body {
  background: var(--weave-bg-dark);
  color: var(--weave-text-dark);
}

h1,
h2,
h3,
h4 {
  font-family: var(--weave-font-sans) !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em;
  line-height: 1.2;
}

h1 {
  color: var(--weave-accent);
  font-size: clamp(1.75rem, 2.2vw, 2.25rem);
  margin: 18px 0 8px;
  font-family: var(--weave-font-sans) !important;
}

h2 {
  color: var(--weave-accent);
  font-size: clamp(1.2rem, 1.6vw, 1.55rem);
  font-family: var(--weave-font-sans) !important;
}

h3 {
  color: inherit;
  font-size: 1rem;
  font-family: var(--weave-font-sans) !important;
}

p,
li,
span,
div,
small {
  font-family: var(--weave-font-sans) !important;
}

code,
pre,
textarea.code,
.code,
.code-line {
  font-family: var(--weave-font-mono) !important;
}

a {
  color: var(--weave-accent);
}

nav,
.dw-global-nav {
  font-family: var(--weave-font-sans) !important;
  border-bottom: 1px solid var(--weave-border-light);
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.03);
  background: #eaf1f7 !important;
  color: #0f7f8a !important;
}

nav a,
.dw-global-nav a {
  font-family: var(--weave-font-sans) !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em;
  color: #0f7f8a !important;
}

nav button,
.dw-global-nav button {
  color: #0f7f8a !important;
  border-color: #0f7f8a !important;
}

[data-theme="dark"] nav,
[data-theme="dark"] .dw-global-nav {
  background: #2D333B !important;
  color: #00B6C3 !important;
  border-bottom-color: #455762;
}

[data-theme="dark"] nav a,
[data-theme="dark"] .dw-global-nav a {
  color: #00B6C3 !important;
}

[data-theme="dark"] nav a.active-nav,
[data-theme="dark"] .dw-global-nav a.active-nav {
  color: #ffffff !important;
  background: #00B6C3 !important;
}

[data-theme="dark"] nav button,
[data-theme="dark"] .dw-global-nav button {
  color: #00B6C3 !important;
  border-color: #00B6C3 !important;
}

button,
.btn,
input[type="submit"],
input[type="button"] {
  border-radius: var(--weave-radius-sm);
  font-weight: 600;
  letter-spacing: 0.01em;
}

input,
select,
textarea {
  border-radius: var(--weave-radius-sm);
  border: 1px solid #95b8cc;
  min-height: 36px;
}

/* Empty fields show a dashed border so users can distinguish hint text from real data */
input:placeholder-shown:not(:focus),
textarea:placeholder-shown:not(:focus) {
  border-style: dashed;
  border-color: #b0c9d8;
}

/* Placeholder hint text: clearly italic and muted — NOT the same style as entered data */
input::placeholder,
textarea::placeholder {
  color: #9ab4c4;
  font-style: italic;
  font-weight: 400;
  opacity: 1;
}

[data-theme="dark"] input:placeholder-shown:not(:focus),
[data-theme="dark"] textarea:placeholder-shown:not(:focus) {
  border-style: dashed;
  border-color: #445566;
}

[data-theme="dark"] input::placeholder,
[data-theme="dark"] textarea::placeholder {
  color: #5d7a8a;
}

input:focus,
select:focus,
textarea:focus,
button:focus {
  outline: 2px solid rgba(0, 182, 195, 0.18);
  outline-offset: 1px;
  border-color: var(--weave-accent-strong);
}

table {
  border-radius: var(--weave-radius-md);
  overflow: hidden;
}

th {
  font-weight: 700;
  letter-spacing: 0.01em;
}

.active-nav {
  border-radius: var(--weave-radius-sm) !important;
  color: #ffffff !important;
  background: #00B6C3 !important;
  padding: 6px 16px !important;
  font-weight: 700 !important;
  box-shadow: 0 2px 8px rgba(0, 182, 195, 0.10);
  text-decoration: none !important;
}

.autodesk-panel,
.panel,
.module-summary-card,
.module-placeholder,
.nest-row,
.nesting-controls,
.job-card,
.sheet-card,
.sheet-card-landscape,
.machine-configurator,
.library-panel,
.preview-modal,
.preview-modal-content,
.modal-content {
  border-radius: var(--weave-radius-md) !important;
  box-shadow: var(--weave-shadow-sm);
}

.module-page,
.nesting-page,
.jobs-page {
  width: min(96vw, 1880px);
  margin-left: auto;
  margin-right: auto;
}

.weave-page {
  width: min(96vw, 1880px);
  margin: 14px auto 24px;
  padding: 0 8px;
  box-sizing: border-box;
}

.weave-shell {
  width: 96vw !important;
  max-width: 96vw !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
}

.weave-subtitle {
  margin: 0 0 14px;
  color: var(--weave-text-light-muted);
  font-size: 0.92em;
}

.weave-toolbar {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}

.weave-section-title {
  margin: 30px 0 12px;
  color: var(--weave-accent);
  font-size: 1.2rem;
  font-weight: 600;
}

.weave-table-wrap {
  border-radius: var(--weave-radius-md);
  overflow: auto;
  box-shadow: var(--weave-shadow-sm);
}

.weave-empty-panel {
  border: 1px dashed var(--weave-border-light);
  border-radius: var(--weave-radius-md);
  background: var(--weave-surface-light-muted);
  color: var(--weave-text-light-muted);
  padding: 16px;
}

.small,
.module-subtitle,
.sheet-card-meta,
.row-summary,
.parts-head,
.job-meta-label,
.density-label {
  color: var(--weave-text-light-muted);
}

.module-link-btn,
.density-save-btn,
.part-guid-chip,
.panel-pill,
.module-stat-pill,
.job-meta-box,
.panel-list-strip {
  box-shadow: none;
}

body[data-theme="dark"] .small,
body[data-theme="dark"] .module-subtitle,
body[data-theme="dark"] .sheet-card-meta,
body[data-theme="dark"] .row-summary,
body[data-theme="dark"] .parts-head,
body[data-theme="dark"] .job-meta-label,
body[data-theme="dark"] .density-label,
html[data-theme="dark"] body .small,
html[data-theme="dark"] body .module-subtitle,
html[data-theme="dark"] body .sheet-card-meta,
html[data-theme="dark"] body .row-summary,
html[data-theme="dark"] body .parts-head,
html[data-theme="dark"] body .job-meta-label,
html[data-theme="dark"] body .density-label,
body[data-theme="dark"] .weave-subtitle,
html[data-theme="dark"] body .weave-subtitle {
  color: var(--weave-text-dark-muted);
}

body[data-theme="dark"] input,
body[data-theme="dark"] select,
body[data-theme="dark"] textarea,
html[data-theme="dark"] body input,
html[data-theme="dark"] body select,
html[data-theme="dark"] body textarea {
  background: #1f252c;
  color: var(--weave-text-dark);
  border-color: #4f6573;
}

body[data-theme="dark"] .autodesk-panel,
body[data-theme="dark"] .panel,
body[data-theme="dark"] .module-summary-card,
body[data-theme="dark"] .module-placeholder,
body[data-theme="dark"] .job-card,
body[data-theme="dark"] .nest-row,
body[data-theme="dark"] .nesting-controls,
body[data-theme="dark"] .sheet-card,
body[data-theme="dark"] .sheet-card-landscape,
body[data-theme="dark"] .machine-configurator,
body[data-theme="dark"] .library-panel,
html[data-theme="dark"] body .autodesk-panel,
html[data-theme="dark"] body .panel,
html[data-theme="dark"] body .module-summary-card,
html[data-theme="dark"] body .module-placeholder,
html[data-theme="dark"] body .job-card,
html[data-theme="dark"] body .nest-row,
html[data-theme="dark"] body .nesting-controls,
html[data-theme="dark"] body .sheet-card,
html[data-theme="dark"] body .sheet-card-landscape,
html[data-theme="dark"] body .machine-configurator,
html[data-theme="dark"] body .library-panel {
  background: var(--weave-surface-dark);
  border-color: var(--weave-border-dark);
}

body[data-theme="light"] .autodesk-panel,
body[data-theme="light"] .panel,
body[data-theme="light"] .module-summary-card,
body[data-theme="light"] .module-placeholder,
body[data-theme="light"] .job-card,
body[data-theme="light"] .nest-row,
body[data-theme="light"] .nesting-controls,
body[data-theme="light"] .sheet-card,
body[data-theme="light"] .sheet-card-landscape,
body[data-theme="light"] .machine-configurator,
body[data-theme="light"] .library-panel,
html[data-theme="light"] body .autodesk-panel,
html[data-theme="light"] body .panel,
html[data-theme="light"] body .module-summary-card,
html[data-theme="light"] body .module-placeholder,
html[data-theme="light"] body .job-card,
html[data-theme="light"] body .nest-row,
html[data-theme="light"] body .nesting-controls,
html[data-theme="light"] body .sheet-card,
html[data-theme="light"] body .sheet-card-landscape,
html[data-theme="light"] body .machine-configurator,
html[data-theme="light"] body .library-panel,
body[data-theme="light"] .weave-empty-panel,
html[data-theme="light"] body .weave-empty-panel {
  background: var(--weave-surface-light);
  border-color: var(--weave-border-light);
}

body[data-theme="dark"] .weave-empty-panel,
html[data-theme="dark"] body .weave-empty-panel {
  background: var(--weave-surface-dark-muted);
  border-color: var(--weave-border-dark);
  color: var(--weave-text-dark-muted);
}

@media (max-width: 900px) {
  .module-page,
  .nesting-page,
  .jobs-page,
  .weave-page {
    width: 98vw;
  }
}

/* =====================================================================
   Shared dark-mode overrides for CRUD pages with inline <style> blocks
   (insulation_specifications, specifications, materials, manufacture_controls,
   nests, machine_setup, etc.). These selectors target the common card-based
   layout patterns that previously rendered with hard-coded light colors.
   Inline <style> blocks have lower specificity than these body-prefixed
   selectors so they will override page-level light defaults in dark mode.
   ===================================================================== */

body[data-theme="dark"] .card {
  background: #2d333b !important;
  border-color: #42535f !important;
  color: #e5eef3;
}
body[data-theme="dark"] label {
  color: #d8e5ed !important;
}
body[data-theme="dark"] .tiny,
body[data-theme="dark"] .module-subtitle,
body[data-theme="dark"] .preview-note,
body[data-theme="dark"] .status,
body[data-theme="dark"] .small {
  color: #a9bfcb !important;
}
body[data-theme="dark"] .btn {
  background: #2a3943 !important;
  border-color: #4a5a66 !important;
  color: #7ddce8 !important;
}
body[data-theme="dark"] .btn:hover {
  background: #354653 !important;
}
body[data-theme="dark"] .btn-primary {
  background: #00B6C3 !important;
  border-color: #00B6C3 !important;
  color: #0b1418 !important;
  font-weight: 700;
}
body[data-theme="dark"] .btn-danger {
  background: #4a1f24 !important;
  border-color: #864249 !important;
  color: #f3a4ab !important;
}
body[data-theme="dark"] .btn-sm { padding: 3px 8px; }

/* Tables in CRUD pages */
body[data-theme="dark"] .table-wrap {
  background: #1f252c !important;
  border-color: #4a5a66 !important;
}
body[data-theme="dark"] .table-wrap table { background: transparent !important; }
body[data-theme="dark"] .table-wrap th,
body[data-theme="dark"] table th {
  background: #32414b !important;
  color: #e5eef3 !important;
  border-bottom-color: #4a5a66 !important;
}
body[data-theme="dark"] .table-wrap td,
body[data-theme="dark"] table td {
  border-bottom-color: #41505b !important;
  color: #d8e5ed;
}

/* Insulation-spec layer editor (and reusable layer-row pattern) */
body[data-theme="dark"] .layer-row {
  background: #1f252c !important;
  border-color: #4a5a66 !important;
}
body[data-theme="dark"] .layer-row .order-badge {
  background: #00B6C3 !important;
  color: #0b1418 !important;
}
body[data-theme="dark"] .layer-metal-extras {
  background: #243038 !important;
  border-color: #4a5a66 !important;
}
body[data-theme="dark"] .layer-metal-extras label { color: #c8d8e2 !important; }
body[data-theme="dark"] .layer-metal-extras .hint { color: #95a8b3 !important; }

/* Application pills (lining/lagging) */
body[data-theme="dark"] .application-pill.pill-lining {
  background: #0d3a40 !important;
  color: #6fe0ec !important;
}
body[data-theme="dark"] .application-pill.pill-lagging {
  background: #4a3415 !important;
  color: #f0c477 !important;
}

/* SVG preview wrapper that uses a hard #fff background */
body[data-theme="dark"] svg[id$="-preview-svg"],
body[data-theme="dark"] .notch-example-svg,
body[data-theme="dark"] .preview-svg-host {
  background: #1a1f25 !important;
}

/* Common bordered detail blocks (per-part overrides etc.) */
body[data-theme="dark"] details > summary {
  color: #e5eef3 !important;
}

/* Inline status/error message backgrounds (jobs.html, etc.) */
body[data-theme="dark"] .error-msg,
body[data-theme="dark"] .alert-error {
  background: #4a1f24 !important;
  border-color: #864249 !important;
  color: #f3a4ab !important;
}


/* -- Toast notifications (wv-toast) --------------------------------------- */
#wv-toast-container {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  gap: 8px;
  pointer-events: none;
  max-width: min(360px, calc(100vw - 48px));
}

.wv-toast {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.45;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.25s ease, transform 0.25s ease;
  pointer-events: auto;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.24);
  word-break: break-word;
  cursor: default;
}

.wv-toast.wv-toast-in {
  opacity: 1;
  transform: translateY(0);
}

.wv-toast-icon {
  flex-shrink: 0;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 700;
}

.wv-toast-body {
  flex: 1;
}

.wv-toast-close {
  flex-shrink: 0;
  background: none;
  border: none;
  color: rgba(255, 255, 255, 0.72);
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
  margin: -2px -2px 0 4px;
  align-self: flex-start;
  font-family: inherit;
}

.wv-toast-close:hover {
  color: #fff;
}

.wv-toast-success {
  background: #059669;
  color: #fff;
}

.wv-toast-error {
  background: #dc2626;
  color: #fff;
}

/* =====================================================================
   Global dark-mode sweeps — patterns that appear across many pages
   using either inline styles, JS-built HTML, or per-page <style> blocks
   that rely on var(--card-bg) / var(--muted-text) fallback colours.
   These rules raise specificity so dark-mode always wins.
   ===================================================================== */

/* ── Modals & drawers ────────────────────────────────────────── */
body[data-theme="dark"] .modal,
body[data-theme="dark"] .modal-content,
body[data-theme="dark"] .preview-modal,
body[data-theme="dark"] .preview-modal-content,
body[data-theme="dark"] .pvw-drawer {
  background: var(--weave-surface-dark) !important;
  color: var(--weave-text-dark) !important;
  border-color: var(--weave-border-dark) !important;
}
body[data-theme="dark"] .pvw-hdr,
body[data-theme="dark"] .modal-header {
  border-color: rgba(255,255,255,0.08) !important;
}

/* ── Common card / panel / out-card patterns ─────────────────── */
body[data-theme="dark"] .out-card,
body[data-theme="dark"] .job-select-panel,
body[data-theme="dark"] .rpt-panel,
body[data-theme="dark"] .summary-block {
  background: var(--card-bg) !important;
  border-color: var(--card-border) !important;
}
body[data-theme="dark"] .out-fmt-row {
  border-top-color: rgba(255,255,255,0.08) !important;
}
body[data-theme="dark"] .fmt-btn {
  color: var(--muted-text) !important;
  border-right-color: rgba(255,255,255,0.08) !important;
}
body[data-theme="dark"] .fmt-btn.active {
  background: rgba(0,182,195,0.15) !important;
  color: #00b6c3 !important;
}
body[data-theme="dark"] .fmt-btn:hover:not(.active) {
  background: rgba(255,255,255,0.05) !important;
}

/* ── Tabs / dim-tabs / chip buttons ─────────────────────────── */
body[data-theme="dark"] .dim-tab {
  background: var(--card-bg) !important;
  border-color: rgba(255,255,255,0.12) !important;
  color: var(--weave-text-dark) !important;
}
body[data-theme="dark"] .dim-tab:hover {
  background: rgba(0,182,195,0.12) !important;
  border-color: rgba(0,182,195,0.5) !important;
}
body[data-theme="dark"] .dim-tab.active {
  background: rgba(0,182,195,0.2) !important;
  border-color: #00b6c3 !important;
}

/* ── Filter rows & their inputs ──────────────────────────────── */
body[data-theme="dark"] .filter-row input,
body[data-theme="dark"] .filter-row select {
  background: var(--input-bg) !important;
  border-color: var(--input-border) !important;
  color: var(--weave-text-dark) !important;
}

/* ── Tables (JS-built and static) ───────────────────────────── */
body[data-theme="dark"] table thead tr,
body[data-theme="dark"] table tr.group-row,
body[data-theme="dark"] table thead th {
  background: var(--table-head-bg) !important;
  color: var(--table-head-color) !important;
}
body[data-theme="dark"] table tr.row-stripe,
body[data-theme="dark"] .jc-group-row {
  background: var(--row-stripe-bg) !important;
}
body[data-theme="dark"] table td {
  color: var(--weave-text-dark) !important;
}
body[data-theme="dark"] table tr:hover td {
  background: var(--row-hover-bg) !important;
}

/* ── Warning / info / success inline banners ─────────────────── */
body[data-theme="dark"] .job-warn {
  background: var(--warn-bg) !important;
  color: var(--warn-color) !important;
}
body[data-theme="dark"] .flash-success {
  background: rgba(0,182,195,0.12) !important;
  color: #5de0ea !important;
}
body[data-theme="dark"] .flash-error {
  background: #4a1f24 !important;
  border-color: #864249 !important;
  color: #f3a4ab !important;
}

/* ── Inline-style "info box" links used in exchange.html ─────── */
body[data-theme="dark"] a.inline-info-btn {
  background: var(--info-bg) !important;
  color: var(--info-color) !important;
  border-color: rgba(122,180,245,0.3) !important;
}
body[data-theme="dark"] a.inline-success-btn {
  background: var(--success-row-bg) !important;
  color: var(--success-row-color) !important;
  border-color: rgba(111,212,154,0.3) !important;
}

/* ── Contents page JS-built table rows ───────────────────────── */
body[data-theme="dark"] .jc-item-row {
  background: var(--card-bg) !important;
}
body[data-theme="dark"] .jc-item-row:hover {
  background: var(--row-hover-bg) !important;
}

/* ── Costing edit — section headers, pill backgrounds ───────── */
body[data-theme="dark"] .section-upper-label,
body[data-theme="dark"] .costing-section-label {
  color: var(--muted-text) !important;
}
body[data-theme="dark"] .pill,
body[data-theme="dark"] .chip {
  background: #222a32 !important;
  color: #cbd5e0 !important;
  border-color: rgba(255,255,255,0.08) !important;
}
body[data-theme="dark"] .pill.bad {
  background: #4a1f24 !important;
  color: #f3a4ab !important;
}

/* ── Token display box ───────────────────────────────────────── */
body[data-theme="dark"] .token-display {
  background: #2a2510 !important;
  border-color: #5a4f20 !important;
  color: #f0d488 !important;
}

/* ── Summary tags (exchange) ─────────────────────────────────── */
body[data-theme="dark"] .summary-tag {
  background: #222a32 !important;
  color: #cbd5e0 !important;
}

/* ── Verdict blocks (setup_base) ─────────────────────────────── */
body[data-theme="dark"] .verdict-ok {
  background: rgba(34,197,94,0.10) !important;
  color: #6fd49a !important;
}
body[data-theme="dark"] .verdict-warn {
  background: rgba(245,158,11,0.10) !important;
  color: #f0c060 !important;
}
body[data-theme="dark"] .verdict-bad {
  background: rgba(231,76,60,0.10) !important;
  color: #f3a4ab !important;
}

/* ── account.html password error ────────────────────────────── */
body[data-theme="dark"] #pw-error {
  color: #f3a4ab !important;
}

/* ── admin_rollback muted text ───────────────────────────────── */
body[data-theme="dark"] .admin-muted {
  color: var(--muted-text) !important;
}

/* ── Required asterisks ──────────────────────────────────────── */
body[data-theme="dark"] .required-star {
  color: #f06a74 !important;
}

/* ── Out-template badge (indigo on dark) ─────────────────────── */
body[data-theme="dark"] .out-tpl-badge {
  background: rgba(99,102,241,0.20) !important;
  color: #a5b4fc !important;
}

/* ── run-bar divider ─────────────────────────────────────────── */
body[data-theme="dark"] .run-bar {
  border-top-color: rgba(255,255,255,0.08) !important;
}
body[data-theme="dark"] .run-summary {
  color: var(--muted-text) !important;
}

