/* ============================================================
   HARDWARE . design tokens . v1
   The Teenage Engineering read for Simonoto surfaces: molded
   plastic, engraved mono labels, one safety orange, an LCD strip.
   SITE COPY of C:/Projects/design/tokens/hardware.css (v1). If canon moves,
   update the design repo token file first, then re-copy here.
   Minted 2026-07-25 from the cabinet redesign gallery
   (websites/simonoto.com/docs/mocks/2026-07-25-cabinet-redesign-gallery.html)
   after Simon picked FIELD for /arcade and KO for /tools.
   Two moods, one contract:
     [data-theme=field]  daylight unit on a cyc wall  (default)
     [data-theme=ko]     charcoal EP-133 industrial
   Rules: orange is the ONLY signal color and never decorates -
   it selects, powers, or warns. The LCD strip always tells the
   truth about current state. No glow in field; no gradients
   beyond molded-shell shading in either mood.
   ============================================================ */
:root, [data-theme=field] {
  /* room */
  --hw-room:      #E6E4DF;  /* seamless cyc wall */
  --hw-room-hi:   #F4F2EE;  /* top light */
  --hw-room-lo:   #D4D2CC;  /* floor falloff */

  /* molded shell */
  --hw-body:      #D7D4CE;
  --hw-body-hi:   #DCD9D3;
  --hw-body-lo:   #C4C1BA;
  --hw-edge:      #B4B1AA;  /* shell stroke */
  --hw-metal:     #8A877F;  /* handle, screws, grille dots */
  --hw-shadow:    rgba(60,58,52,.35);

  /* silkscreen / engraving */
  --hw-ink:       #3A3A38;
  --hw-ink-soft:  #6E6B64;

  /* display well */
  --hw-screen:       #1E1E1C;
  --hw-screen-frame: #3A3A38;
  --hw-screen-ink:   #D8D6D0;
  --hw-screen-dim:   #8A877F;

  /* controls */
  --hw-knob:      #FBFAF7;
  --hw-knob-lo:   #DDDAD3;
  --hw-pad:       #E8E6E1;
  --hw-pad-lo:    #D2D0CB;
  --hw-pad-ink:   rgba(0,0,0,.55);

  /* the one signal color */
  --hw-accent:     #FF4D00;
  --hw-accent-lo:  #C93D00;
  --hw-accent-ink: #141412;

  /* lcd strip (e-ink green-gray, same in both moods - it is a part, not a paint) */
  --hw-lcd:      #A9B2A0;
  --hw-lcd-lo:   #98A190;
  --hw-lcd-ink:  #23291F;
  --hw-rec:      #E33333;

  /* type */
  --hw-font-ui:   'Inter Tight', sans-serif;
  --hw-font-mono: 'Azeret Mono', monospace;

  /* geometry */
  --hw-r-body:   12px;
  --hw-r-screen: 6px;
  --hw-r-pad:    5px;
  --hw-ease:     cubic-bezier(.16, 1, .3, 1);
}

[data-theme=ko] {
  /* room */
  --hw-room:      #0E0E0F;
  --hw-room-hi:   #1A1A1B;
  --hw-room-lo:   #0B0B0C;

  /* molded shell */
  --hw-body:      #2A2A2C;
  --hw-body-hi:   #39393B;
  --hw-body-lo:   #222224;
  --hw-edge:      #1A1A1C;
  --hw-metal:     #4A4A4C;
  --hw-shadow:    rgba(0,0,0,.7);

  /* silkscreen */
  --hw-ink:       #EDEDEA;
  --hw-ink-soft:  #7C7C80;

  /* display well */
  --hw-screen:       #0C0C0D;
  --hw-screen-frame: #1A1A1C;
  --hw-screen-ink:   #EDEDEA;
  --hw-screen-dim:   #7C7C80;

  /* controls */
  --hw-knob:      #4A4A4C;
  --hw-knob-lo:   #3A3A3C;
  --hw-pad:       #E8E6E1;
  --hw-pad-lo:    #D2D0CB;
  --hw-pad-ink:   rgba(0,0,0,.55);

  /* signal */
  --hw-accent:     #FF6A00;
  --hw-accent-lo:  #F26200;
  --hw-accent-ink: #141412;
}
