/* RC50 scene-first hierarchy and readable operational typography. */
.sim-wb-scene-header {
  min-height: 3.5rem;
  padding: .55rem .75rem;
  background: #07161e;
}
.sim-wb-scene-header h2 { margin: .12rem 0 0; font-size: 1rem; line-height: 1.15; }
.sim-wb-scene-header .eyebrow { margin: 0; font-size: .7rem; }
.sim-wb-scene-toolbar { align-items: center; }
.sim-wb-scene-toolbar button,
.sim-wb-scene-tools > summary {
  min-height: 2.75rem;
  padding: .55rem .68rem;
  color: var(--sim-text);
  border: 1px solid var(--sim-line-strong);
  background: var(--sim-control-bg);
  font: 800 .72rem/1.2 var(--font-mono, var(--mono, ui-monospace, monospace));
}
.sim-wb-scene-toolbar button:hover,
.sim-wb-scene-tools > summary:hover { background: var(--sim-control-hover); border-color: var(--sim-cyan); }
.sim-wb-scene-toolbar button[aria-pressed="true"] {
  color: #041018;
  background: var(--sim-cyan);
  border-color: var(--sim-cyan);
}
.sim-wb-scene-tools { position: relative; }
.sim-wb-scene-tools > summary { list-style: none; cursor: pointer; }
.sim-wb-scene-tools > summary::-webkit-details-marker { display: none; }
.sim-wb-scene-tools > div {
  z-index: 60;
  color: var(--sim-text);
  background: var(--sim-panel-2);
  border: 1px solid var(--sim-line-strong);
  box-shadow: var(--sim-shadow);
}
.sim-wb-toolbar-select { color: var(--sim-body); }
.sim-wb-toolbar-select select { width: auto !important; min-width: 8rem; min-height: 2.75rem; }

.sim-wb-state-strip {
  grid-template-columns: minmax(5.5rem, .65fr) minmax(10rem, 1.5fr) minmax(8rem, 1fr) minmax(7rem, .9fr) minmax(8rem, 1fr);
  background: #081820;
}
.sim-wb-state-strip div { padding: .55rem .65rem; }
.sim-wb-state-strip span { color: var(--sim-muted); font-size: .68rem; }
.sim-wb-state-strip strong { color: var(--sim-text); font-size: .78rem; line-height: 1.35; }
.sim-wb-layer-toolbar {
  min-height: 2.75rem;
  padding: .3rem .6rem;
  flex-wrap: nowrap;
  overflow-x: auto;
  background: #06151d;
  border-bottom: 1px solid var(--sim-line);
}
.sim-wb-layer-toolbar button { flex: 0 0 auto; min-height: 2.2rem; }
.sim-wb-semantic-legend { color: var(--sim-body); background: #071820; }
.sim-wb-semantic-legend b { color: var(--sim-text); font-size: .7rem; }
.sim-wb-semantic-legend small { color: var(--sim-muted); font-size: .68rem; }

.sim-wb-canvas-shell {
  width: 100%;
  height: 100%;
  min-height: 12rem;
  aspect-ratio: auto;
  background: #02080d;
  overflow: hidden;
  isolation: isolate;
}
.sim-wb-canvas-shell canvas {
  width: 100%;
  height: 100%;
  min-height: 12rem;
  display: block;
  touch-action: none;
}
.sim-wb-canvas-overlay {
  align-items: flex-start;
  flex-wrap: wrap;
  color: var(--sim-body);
  font-size: .7rem;
}
.sim-wb-canvas-overlay span {
  color: var(--sim-body);
  background: rgba(2, 10, 15, .9);
  border-color: var(--sim-line-strong);
}
.sim-wb-performance {
  grid-template-columns: repeat(7, minmax(0, 1fr));
  background: #081820;
}
.sim-wb-performance div { padding: .48rem .58rem; }
.sim-wb-performance span { color: var(--sim-muted); font-size: .68rem; }
.sim-wb-performance strong { color: var(--sim-text); font-size: .75rem; line-height: 1.35; }

.sim-wb-proof-summary { margin-bottom: .75rem; background: var(--sim-line); }
.sim-wb-proof-summary div { color: var(--sim-text); background: #081820; }
.sim-wb-proof-summary strong { color: var(--sim-text); }
.sim-wb-proof-summary span { color: var(--sim-body); font-size: .68rem; }
.sim-wb-proof-compact {
  display: grid;
  gap: .55rem;
  padding: .8rem;
  border: 1px solid var(--sim-line);
  background: #0b1c25;
}
.sim-wb-proof-compact .eyebrow { margin: 0; font-size: .68rem; }
.sim-wb-proof-compact strong { font-size: .95rem; line-height: 1.25; }
.sim-wb-proof-compact p { margin: 0; font-size: .8rem; line-height: 1.45; }
.sim-wb-proof-compact button { width: 100%; min-height: 2.75rem; }
.sim-wb-proof-filter label { color: var(--sim-body); font-size: .7rem; }
.sim-wb-proof-filter select { min-height: 2.75rem; }
.sim-wb-proof-item :where(summary, button),
.sim-wb-proof-actions button { min-height: 2.75rem; }
.sim-wb-proof-item .sim-proof-id,
.sim-wb-proof-item .sim-proof-name,
.sim-wb-proof-status { font-size: .72rem; }

/* Horizontal layer scrolling must never become a second vertical scroll
   context because of line-height or native scrollbar rounding. */
.sim-wb-layer-toolbar {
  overflow-x: auto;
  overflow-y: hidden;
}
