/* Regeneration lab mode (mode-regen.js). Blue is the only accent; status colours only on chips. */
body[data-mode="regen"] #hud { display: none; }

#mode-regen h1 { font-size: 24px; font-style: normal; }
#mode-regen .lede { margin-bottom: 14px; font-size: 14px; }
.rg-specimens { grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 12px; }
.rg-specimens .choice { padding: 10px 12px; }
.rg-specimens .choice strong { font-size: 14px; }
.rg-specimens .choice span { font-size: 11.5px; line-height: 1.3; }
.rg-bio { margin: 0 0 12px; font-size: 13px; line-height: 1.45; color: var(--ink);
  border-left: 2px solid var(--line); padding-left: 10px; }

.rg-hud { display: flex; gap: 12px; align-items: center; margin: 0 0 10px; padding: 8px 12px;
  border: 1px solid var(--line); border-radius: 10px; color: var(--amber);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-variant-numeric: tabular-nums; }
.rg-rings { width: 54px; height: 54px; flex: none; }
.rg-rings circle { fill: none; stroke: var(--amber); }
.rg-rings .r1 { stroke-width: 1; stroke-dasharray: 3 5; opacity: .6; transform-origin: center; animation: rg-spin 18s linear infinite; }
.rg-rings .r2 { stroke-width: 6; stroke-dasharray: 40 18 8 18; opacity: .85; transform-origin: center; animation: rg-spin 6s linear infinite reverse; }
.rg-rings .r3 { stroke-width: 1.5; opacity: .7; }
.rg-rings .core { fill: var(--amber); opacity: .35; stroke: none; }
.rg-hud.idle .rg-rings * { animation-play-state: paused; }
.rg-hud-text { min-width: 0; }
.rg-line { margin: 0; font-size: 12px; letter-spacing: .06em; }
.rg-sub { margin: 4px 0 0; font-size: 11.5px; line-height: 1.35; color: var(--muted); }
@keyframes rg-spin { to { transform: rotate(360deg); } }

.rg-scrub { display: grid; grid-template-columns: 1fr auto; gap: 4px 8px; font-size: 12px; color: var(--muted); margin-bottom: 12px; }
.rg-scrub output { color: var(--amber); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-variant-numeric: tabular-nums; }
.rg-scrub input { grid-column: 1 / -1; width: 100%; accent-color: var(--amber); margin: 0; }
#mode-regen .rg-begin { background: var(--amber); }
.rg-row { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 10px; }
.rg-seg { display: flex; gap: 2px; padding: 2px; border: 1px solid var(--line); border-radius: 8px; }
.rg-seg button { background: none; border: 1px solid transparent; color: var(--muted); font: inherit; font-size: 12px; padding: 4px 10px; border-radius: 6px; cursor: pointer; }
.rg-seg button[aria-pressed="true"] { border-color: var(--amber); color: var(--ink); }
.rg-pick { margin: 0 0 8px; font-size: 13px; color: var(--muted); min-height: 1.5em; }
.rg-pick strong { color: var(--ink); font-weight: 600; }
.rg-credit { margin: 0; font-size: 11px; color: var(--muted); }
.rg-credit a { color: var(--ink); text-underline-offset: 2px; }

@media (prefers-reduced-motion: reduce) { .rg-rings * { animation: none !important; } }
