:root {
  color-scheme: dark;
  --bg: #0B0B0D; --fg: #f2f2f0; --muted: #a9a9a2; --faint: #7a7a72;
  --line: #26262a; --accent: #B8F500; --accent-fg: #0B0B0D;
  --surface: #16161a; --surface-2: #1e1e22;
  --danger: #ff6b6b; --field: #1e1e22; --field-line: #33333a;
}
:root[data-theme="lima"] {
  color-scheme: light;
  --bg: #edf0ee; --fg: #111827; --muted: #4b5563; --faint: #6b7280;
  --line: #d1d5db; --accent: #B8F500; --accent-fg: #0B0B0D;
  --surface: #fff; --surface-2: #e5e8ec;
  --danger: #c62828; --field: #fff; --field-line: #c4c9d0;
  --accent-ink: color-mix(in srgb, var(--accent) 45%, #1f3d00);
}
html, body { background: var(--bg); color: var(--fg); margin: 0; }
/* Sin «tirar para recargar»: un gesto accidental recargaría el escáner en plena puerta
   y cerraría la cámara. Los modales siguen haciendo scroll normal. */
html, body { overscroll-behavior-y: none; }
.door-wrap { max-width: 30rem; margin: 0 auto; padding: 1rem 1.1rem 2rem; font-family: system-ui, sans-serif; }
.door-foot { display: flex; flex-direction: column; align-items: center; gap: .6rem; padding: 0 1.1rem 1.25rem; color: var(--faint); font: .75rem system-ui, sans-serif; text-align: center; }
.door-theme { display: inline-flex; align-items: center; gap: .4rem; padding: .45rem .8rem; border: 1px solid var(--line); border-radius: 999px; background: none; color: var(--muted); font: inherit; font-size: .8rem; cursor: pointer; }
.door-theme:hover { background: var(--surface-2); color: var(--fg); }
/* aria-checked="true" = noche puesto: ofrece pasar a claro (sol); si no, a oscuro (luna). */
.door-theme .door-theme__moon, .door-theme .door-theme__to-noche { display: none; }
.door-theme[aria-checked="false"] .door-theme__sun, .door-theme[aria-checked="false"] .door-theme__to-lima { display: none; }
.door-theme[aria-checked="false"] .door-theme__moon, .door-theme[aria-checked="false"] .door-theme__to-noche { display: inline; }
.door__btn { display: inline-block; padding: .55rem .9rem; border: 0; border-radius: 8px; background: var(--accent); color: var(--accent-fg); font: inherit; font-weight: 600; text-decoration: none; cursor: pointer; }
.door__btn--ghost { background: none; color: var(--fg); border: 1px solid var(--line); }
