/* Nayhap design tokens — v1.0
   Dark-first. :root carries the complete dark palette; the light palette is
   redefined both under prefers-color-scheme and under an explicit [data-theme]
   stamp, so all three viewer states resolve as a consistent set. */

:root{
  /* ground and surface */
  --nyh-null:        #0D0A16;
  --nyh-stratum:     #191428;
  --nyh-raise:       #221B33;
  --nyh-seam:        #2F2740;

  /* light ground and surface */
  --nyh-quartz:      #ECEAF0;
  --nyh-chalk:       #FAF9FC;
  --nyh-surface-lt:  #F3F1F7;
  --nyh-hairline-lt: #D6D2E0;

  /* signal */
  --nyh-signal:      #FF2E9F;
  --nyh-signal-deep: #C0006E;
  --nyh-signal-soft: #FF6FBE;

  /* division hues — core piece only */
  --nyh-ion:         #3AD2F0;
  --nyh-ion-deep:    #08677E;
  --nyh-volt:        #C9F24B;
  --nyh-volt-deep:   #4F6800;

  /* type */
  --nyh-font-display: "Syne", system-ui, sans-serif;
  --nyh-font-text:    "Inter Tight", system-ui, -apple-system, sans-serif;
  --nyh-font-mono:    "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;

  /* geometry */
  --nyh-angle:   45deg;
  --nyh-radius:  4px;
  --nyh-hairline: 1px;

  /* spacing — 4px base */
  --nyh-space-1:  4px;  --nyh-space-2:  8px;  --nyh-space-3: 12px;
  --nyh-space-4: 16px;  --nyh-space-6: 24px;  --nyh-space-8: 32px;
  --nyh-space-12: 48px; --nyh-space-18: 72px; --nyh-space-28: 112px;

  /* motion */
  --nyh-ease:      cubic-bezier(.2,.7,.2,1);
  --nyh-dur-fast:  240ms;
  --nyh-dur:       320ms;
  --nyh-dur-slow:  420ms;
  --nyh-stagger:   56ms;

  /* semantic roles — dark is the default */
  --nyh-bg:        var(--nyh-null);
  --nyh-surface:   var(--nyh-stratum);
  --nyh-surface-2: var(--nyh-raise);
  --nyh-rule:      var(--nyh-seam);
  --nyh-text:      var(--nyh-chalk);
  --nyh-text-2:    #B6AECB;
  --nyh-text-3:    #928AA8;
  --nyh-accent:    var(--nyh-signal);

  color-scheme: dark light;
}

@media (prefers-color-scheme: light){
  :root:not([data-theme="dark"]){
    --nyh-bg:        var(--nyh-quartz);
    --nyh-surface:   var(--nyh-chalk);
    --nyh-surface-2: var(--nyh-surface-lt);
    --nyh-rule:      var(--nyh-hairline-lt);
    --nyh-text:      #161122;
    --nyh-text-2:    #4B4360;
    --nyh-text-3:    #605777;
    --nyh-accent:    var(--nyh-signal-deep);
    color-scheme: light;
  }
}

:root[data-theme="light"]{
  --nyh-bg:        var(--nyh-quartz);
  --nyh-surface:   var(--nyh-chalk);
  --nyh-surface-2: var(--nyh-surface-lt);
  --nyh-rule:      var(--nyh-hairline-lt);
  --nyh-text:      #161122;
  --nyh-text-2:    #4B4360;
  --nyh-text-3:    #605777;
  --nyh-accent:    var(--nyh-signal-deep);
  color-scheme: light;
}

@media (prefers-reduced-motion: reduce){
  *{ animation-duration:.001ms !important; transition-duration:.001ms !important }
}
