* { box-sizing: border-box; }
html, body { margin: 0; height: 100%; background: #0b0f16; color: #dbe4f0;
  font: 14px/1.4 system-ui, -apple-system, Segoe UI, Roboto, sans-serif; }
header { padding: 12px 16px; background: #121826; border-bottom: 1px solid #1f2a3d; }
h1 { margin: 0 0 10px; font-size: 18px; letter-spacing: .04em; font-weight: 600; }
.toolbar { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; }
.toolbar label { display: flex; align-items: center; gap: 6px; color: #9fb0c8; }
select, button { background: #1b2434; color: #dbe4f0; border: 1px solid #2c3a52;
  border-radius: 6px; padding: 6px 10px; font: inherit; }
button:hover { background: #24304a; cursor: pointer; }
input[type=range] { width: 130px; accent-color: #4da3ff; }
.counters { display: flex; gap: 22px; margin-top: 10px; color: #9fb0c8; }
.counters b { color: #7ee0a0; font-variant-numeric: tabular-nums; }
main { height: calc(100% - 118px); padding: 12px; }
canvas { width: 100%; height: 100%; display: block; background: #0e1420;
  border: 1px solid #1f2a3d; border-radius: 8px; }
