.theme-retro {
  --page-bg: #e5e5e5;
  --text-color: #111;
  --font-family: Arial, Helvetica, sans-serif;
  --panel-bg: #ffffff;
  --panel-border: #d8d8d8;
  --panel-radius: 10px;
  --panel-shadow: 0 1px 5px #0002;
  --title-size: 18px;
  --title-opacity: .7;
  --title-weight: 600;
  --title-letter-spacing: 0;
  --workspace-gap: 110px;
  --cell-size: 74px;
  --cell-value-size: 42px;
  --cell-candidate-size: 16px;
  --cell-font-family: Arial, Helvetica, sans-serif;
  --grid-line-color: #777;
  --grid-outer-border: 5px solid #777;
  --grid-radius: 0;
  --grid-shadow: none;
  --cell-bg: #fff;
  --cell-text: #000;
  --cell-border-color: #888;
  --subgrid-border-width: 4px;
  --candidate-text: #777;
  --candidate-padding: 4px;
  --given-weight: 500;
  --given-text: #000;
  --conflict-bg: #fff176;
  --conflict-outline: 2px solid #c9a800;
  --marked-bg: #00ee00;
  --marked-text: #222;
  --marked-shadow: none;
  --selected-outline: 2px dashed currentColor;
  --scan-blocked-opacity: .45;
  --match-bg: #ff00df;
  --match-outline: 3px solid #8a0080;
  --match-text: #fff;
  --button-text: #000;
  --tool-panel-width: 580px;
  --tool-panel-gap: 245px;
  --tool-button-width: 275px;
  --secondary-button-width: 335px;
  --control-gap: 10px;
  --control-height: 62px;
  --control-border: #ccc;
  --control-bg: #fff;
  --control-radius: 7px;
  --control-shadow: 0 1px 2px #0002;
  --control-font-size: 22px;
  --status-size: 18px;
  --status-color: #333;
  --status-error: #d00000;
  --secondary-controls-margin-top: 68px;
  --option-panel-width: 510px;
  --option-font-size: 21px;
}

.theme-retro .tool-grid button:focus,
.theme-retro .secondary-controls button:focus,
.theme-retro .primary-action:focus {
  outline: 2px solid #7d9abc;
}
