/* Brand energy uses generated theme.css tokens. Geometry and scientific classes stay intact. */
:root {
  --focus: var(--neurai-orange);
  /* Amber is reserved for an actual warning/pending status, never brand decoration. */
  --neural-warning: #caaf76;
  --neural-warning-soft: #2b2417;
  --neural-warning-border: #5c4a2a;
}

.topnav a,
.strip-home,
.realm-top a,
.memory-footer a {
  transition: color 200ms ease, box-shadow 200ms ease;
}

.topnav a:hover,
.topnav a:focus-visible,
.strip-home:hover,
.realm-top a:hover,
.memory-footer a:hover {
  color: var(--neurai-orange-hover);
}

.topnav a[aria-current="page"],
.topnav a[aria-current="location"] {
  color: var(--neurai-orange);
  box-shadow: inset 0 -1px 0 var(--neurai-orange);
}

.button,
.pill,
.segmented button,
.engram-tabs button,
.engram-tabs a,
.memory-event-button,
.wallet-option,
.profile-form button,
.ask button {
  transition: background-color 200ms ease, border-color 200ms ease,
    color 200ms ease, box-shadow 200ms ease;
}

/* Feedback changes light and color rather than moving a control under the pointer. */
.button:hover,
.button:active {
  transform: none;
}

.button:not(:disabled):not([aria-disabled="true"]):hover,
button.pill:enabled:hover,
a.pill[href]:hover,
.wallet-option:enabled:hover,
.profile-form button:enabled:hover {
  border-color: var(--neurai-orange-hover);
  background-color: var(--neurai-orange-soft);
  box-shadow: 0 0 12px var(--neurai-orange-glow);
}

.button:not(:disabled):not([aria-disabled="true"]):active,
button.pill:enabled:active,
a.pill[href]:active,
.wallet-option:enabled:active,
.profile-form button:enabled:active {
  border-color: var(--neurai-orange-pressed);
  box-shadow: inset 0 0 8px var(--neurai-orange-glow);
}

.button.button-primary {
  background: var(--neurai-orange);
  border-color: var(--neurai-orange);
  color: var(--neurai-on-orange);
}

.button.button-primary:not(:disabled):not([aria-disabled="true"]):hover {
  background: var(--neurai-orange-hover);
  border-color: var(--neurai-orange-hover);
  color: var(--neurai-on-orange);
  box-shadow: 0 0 14px var(--neurai-orange-glow);
}

.button.button-primary:not(:disabled):not([aria-disabled="true"]):active {
  background: var(--neurai-orange-pressed);
  border-color: var(--neurai-orange-pressed);
  color: var(--neurai-on-orange);
  box-shadow: inset 0 0 8px var(--neurai-orange-glow);
}

.button.button-quiet:hover {
  color: var(--neurai-orange-hover);
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

.segmented button:hover,
.engram-tabs button:hover,
.engram-tabs a:hover {
  color: var(--neurai-orange-hover);
  background: var(--neurai-orange-soft);
}

.segmented button.is-active,
.viewer-reset.is-on,
.engram-tabs li.is-active,
.engram-tabs button.is-active {
  color: var(--neurai-orange);
  background: var(--neurai-orange-soft);
  box-shadow: inset 0 0 0 1px var(--neurai-orange-glow);
}

.viewer-reset.is-on {
  border-color: var(--neurai-orange-glow);
}

.memory-event-button:hover {
  background: var(--neurai-orange-soft);
  box-shadow: inset 2px 0 0 var(--neurai-orange-glow);
}

.memory-event-button[aria-pressed="true"] {
  background: var(--neurai-orange-soft);
  box-shadow: inset 0 0 0 1px var(--neurai-orange);
}

.memory-event-button[aria-pressed="true"] time,
#panel-log .memory-event-button[aria-pressed="true"] span:nth-child(2) {
  color: var(--neurai-orange);
}

input:not([type="range"]),
select,
textarea {
  transition: border-color 200ms ease, box-shadow 200ms ease;
}

.lookup input:focus,
.realm-lookup input:focus,
.memory-search input:focus,
.viewer-extra-tools input:focus,
.profile-form input:focus,
.realm-inside #proof-form input:focus,
.ask input:focus,
.replay-controls select:focus {
  border-color: var(--neurai-orange);
  box-shadow: 0 0 0 2px var(--neurai-orange-soft);
}

.replay-controls input[type="range"],
.viewer-slider {
  accent-color: var(--neurai-orange);
}

.profile-form button,
.ask button {
  background: var(--scrim);
  color: var(--neurai-orange);
  border: 1px solid var(--neurai-orange-glow);
}

.ask button {
  border: 0;
  box-shadow: inset 0 0 0 1px var(--neurai-orange-glow);
}

.ask button:hover {
  background: var(--neurai-orange-soft);
  color: var(--neurai-orange-hover);
  box-shadow: inset 0 0 0 1px var(--neurai-orange-hover),
    0 0 12px var(--neurai-orange-glow);
}

.ask button:active {
  box-shadow: inset 0 0 0 1px var(--neurai-orange-pressed),
    inset 0 0 8px var(--neurai-orange-glow);
}

.panel,
.epanel,
.realm-card,
.console {
  transition: border-color 200ms ease, box-shadow 200ms ease;
}

.panel:hover,
.epanel:hover,
.realm-card:hover {
  border-color: color-mix(in srgb, var(--neurai-orange) 22%, var(--line));
}

.console:focus-within,
.epanel:focus-within,
.realm-card:focus-within {
  border-color: var(--neurai-orange-glow);
}

.hovercard,
.viewer-info {
  border-color: var(--neurai-orange-glow);
}

.viewer-label.is-spike,
.viewer-label.is-burn,
.reading:not(.reading-flag) {
  box-shadow: 0 0 8px var(--neurai-orange-soft);
}

.swatch-spike,
.evolution-station.is-active b,
.evolution-station.is-current .evolution-node {
  box-shadow: 0 0 7px var(--neurai-orange-glow);
}

.evolution-station {
  transition: color 200ms ease;
}

.evolution-station.is-active > span,
.evolution-station.is-current .evolution-name {
  color: var(--neurai-orange);
}

.evolution-station:hover > span,
.evolution-station:hover .evolution-name,
.ladder-source:hover {
  color: var(--neurai-orange-hover);
}

.ladder .ladder-step {
  transition: background-color 200ms ease, box-shadow 200ms ease;
}

.ladder .ladder-step:hover {
  background: color-mix(in srgb, var(--neurai-orange-soft) 45%, transparent);
}

.ladder li.is-current .ladder-copy h3 {
  color: var(--neurai-orange);
}

.crawler-core {
  box-shadow: 0 0 0 2px var(--canvas-deep), 0 0 0 3px var(--neurai-orange),
    0 0 10px var(--neurai-orange-glow);
}

.orders-list li[data-achieved="true"] > strong {
  color: var(--neurai-orange);
  text-shadow: 0 0 8px var(--neurai-orange-glow);
}

/* Preserve the existing motion preference for every added visual transition. */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    transition: none !important;
    animation: none !important;
  }
}
