/* Thrivon Bike v4.1 — Bicicletas: superfícies e contraste consistentes no modo escuro.
   Escopo restrito ao tema escuro; tema claro e comportamento operacional preservados.
   Usa tokens oficiais do design system para acompanhar futuras mudanças de paleta. */
:root[data-theme="dark"] .bike-stat,
:root[data-theme="dark"] .bike-card,
:root[data-theme="dark"] .bike-empty {
  background: var(--t-paper);
  color: var(--t-ink);
  border: 1px solid var(--t-line);
  box-shadow: var(--t-shadow);
}
:root[data-theme="dark"] .bike-stat .muted,
:root[data-theme="dark"] .bike-meta,
:root[data-theme="dark"] .bike-empty p {
  color: var(--t-muted);
}
:root[data-theme="dark"] .bike-stat b,
:root[data-theme="dark"] .bike-card .bike-title,
:root[data-theme="dark"] .bike-empty h2 {
  color: var(--t-ink-strong);
}
:root[data-theme="dark"] .bike-cover {
  background: linear-gradient(140deg, var(--t-paper-alt), var(--t-paper));
  color: var(--t-muted);
}
:root[data-theme="dark"] .bike-cover img { background: var(--t-paper-alt); }
:root[data-theme="dark"] .bike-card .bike-actions { border-top-color: var(--t-line); }

/* Busca na página de bicicletas: evita input branco sobre o painel escuro. */
:root[data-theme="dark"] #bikeSearch {
  background: var(--t-input);
  color: var(--t-ink-strong);
  border-color: var(--t-line-strong);
  caret-color: var(--t-ink-strong);
}
:root[data-theme="dark"] #bikeSearch::placeholder { color: var(--t-faint); opacity: 1; }
:root[data-theme="dark"] #bikeSearch:focus { border-color: var(--t-action); box-shadow: var(--t-focus); }

/* Janelas: formulário, seleção de cliente, ficha e histórico da bicicleta. */
:root[data-theme="dark"] :is(#bikeOverlay, #bikeDetailOverlay, #bikeHistoryOverlay) .modal {
  background: var(--t-paper);
  color: var(--t-ink);
  border-color: var(--t-line);
}
:root[data-theme="dark"] :is(#bikeOverlay, #bikeDetailOverlay, #bikeHistoryOverlay) :is(.modal-head, .modal-foot) {
  background: var(--t-paper);
  border-color: var(--t-line);
}
:root[data-theme="dark"] :is(#bikeOverlay, #bikeDetailOverlay, #bikeHistoryOverlay) :is(.modal-head h2, h3, .bike-section-title) {
  color: var(--t-ink-strong);
}
:root[data-theme="dark"] :is(#bikeOverlay, #bikeDetailOverlay, #bikeHistoryOverlay) .field {
  color: var(--t-muted);
}
:root[data-theme="dark"] :is(#bikeOverlay, #bikeHistoryOverlay) :is(input:not([type="file"]), select, textarea) {
  background: var(--t-input);
  color: var(--t-ink);
  border-color: var(--t-line-strong);
}
:root[data-theme="dark"] :is(#bikeOverlay, #bikeHistoryOverlay) :is(input, textarea)::placeholder {
  color: var(--t-faint);
  opacity: 1;
}
:root[data-theme="dark"] .bike-section-title { border-bottom-color: var(--t-line); }
:root[data-theme="dark"] .bike-owner-suggestions {
  background: var(--t-paper);
  color: var(--t-ink);
  border-color: var(--t-line-strong);
  box-shadow: var(--t-shadow-lg);
}
:root[data-theme="dark"] .bike-owner-option {
  background: var(--t-paper);
  color: var(--t-ink);
  border-bottom-color: var(--t-line);
}
:root[data-theme="dark"] .bike-owner-option:hover,
:root[data-theme="dark"] .bike-owner-option:focus { background: var(--t-paper-alt); }
:root[data-theme="dark"] :is(.bike-owner-option small, .bike-owner-empty, .bike-photo-hint, .bike-detail small) {
  color: var(--t-muted);
}
:root[data-theme="dark"] .bike-detail > div,
:root[data-theme="dark"] .bike-history-record,
:root[data-theme="dark"] .bike-note,
:root[data-theme="dark"] .bike-tabs button:not(.active) {
  background: var(--t-paper-alt);
  border-color: var(--t-line);
  color: var(--t-ink);
}
:root[data-theme="dark"] .bike-detail strong,
:root[data-theme="dark"] .bike-history-record strong { color: var(--t-ink-strong); }
:root[data-theme="dark"] .bike-history,
:root[data-theme="dark"] .bike-history p { color: var(--t-muted); }
:root[data-theme="dark"] .bike-history { border-left-color: var(--t-line-strong); }
:root[data-theme="dark"] .bike-photo-row img { border-color: var(--t-line); }
:root[data-theme="dark"] .bike-tabs button.active {
  background: var(--t-menu-active);
  border-color: var(--t-action);
  color: var(--t-success-ink);
}
