/* Retro theme — 8-bit computing effects
   Colors come from CSS variables in themes.css; this file is structural only. */

/* Pixelated image rendering */
[data-theme='retro'] img {
  image-rendering: pixelated;
}

/* Monospace everything */
[data-theme='retro'] body,
[data-theme='retro'] input,
[data-theme='retro'] select,
[data-theme='retro'] textarea,
[data-theme='retro'] button,
[data-theme='retro'] .btn,
[data-theme='retro'] .nav-link,
[data-theme='retro'] .dropdown-item,
[data-theme='retro'] h1,
[data-theme='retro'] h2,
[data-theme='retro'] h3,
[data-theme='retro'] h4,
[data-theme='retro'] h5,
[data-theme='retro'] h6 {
  font-family: 'Courier New', Courier, monospace !important;
}

/* All border-radius: 0 — everything is square */
[data-theme='retro'] .card,
[data-theme='retro'] .btn,
[data-theme='retro'] .badge,
[data-theme='retro'] .alert,
[data-theme='retro'] input,
[data-theme='retro'] select,
[data-theme='retro'] .form-control,
[data-theme='retro'] .form-select,
[data-theme='retro'] .toast,
[data-theme='retro'] .dropdown-menu,
[data-theme='retro'] .nav-pills .nav-link {
  border-radius: 0 !important;
}

/* Box-drawing character border simulation */
[data-theme='retro'] .card,
[data-theme='retro'] .alert,
[data-theme='retro'] .table {
  border: 2px solid var(--border, #888) !important;
}

[data-theme='retro'] .btn {
  border: 2px solid var(--border, #888);
}

/* Stepped hover transitions — no smooth animations */
[data-theme='retro'] *,
[data-theme='retro'] *::before,
[data-theme='retro'] *::after {
  transition: none !important;
  animation-timing-function: steps(4) !important;
}

/* Chunky table borders */
[data-theme='retro'] .table th,
[data-theme='retro'] .table td {
  border: 2px solid var(--border, #888) !important;
}

/* Stepped button hover: instant color swap */
[data-theme='retro'] .btn:hover {
  filter: invert(0.15);
}

/* Pixelated scrollbar (webkit) */
[data-theme='retro'] ::-webkit-scrollbar {
  width: 16px;
}

[data-theme='retro'] ::-webkit-scrollbar-thumb {
  background: var(--border, #888);
  border: 2px solid var(--bg-surface, #fff);
}

[data-theme='retro'] ::-webkit-scrollbar-track {
  background: var(--bg-surface, #fff);
}
