/* Zero Prep Tools - Color tokens
 * A white-paper, blue-ballpoint palette. Light, minimal, analog.
 * Think: a Game Master's spiral notebook - clean white pages, dark ink, a blue
 * ballpoint for the primary marks, a red margin rule, a yellow highlighter.
 */
:root {
  /* ---- Paper (surfaces) - white notebook pages ---- */
  --paper-0:        #ffffff;  /* brightest card / sheet */
  --paper-1:        #ffffff;  /* default page (white) */
  --paper-2:        #f4f3ef;  /* secondary fill / sunk panel */
  --paper-3:        #eae8e1;  /* deeper inset / track */
  --paper-edge:     #d9d6cc;  /* paper edge / hairline */

  /* ---- Ink (foreground) ---- */
  --ink-0:          #221f1a;  /* primary ink - near-black, warm */
  --ink-1:          #423c32;  /* strong body ink */
  --ink-2:          #6d6453;  /* secondary / pencil */
  --ink-3:          #978c75;  /* muted / faded pencil */
  --ink-4:          #b8ad93;  /* faint / placeholder */

  /* ---- Lines & borders ---- */
  --line-soft:      #dfe3ec;  /* ruled notebook lines (faint blue-grey) */
  --line:           #ddd9cf;  /* default card border (neutral warm-grey) */
  --line-strong:    #c1bcad;  /* emphasized border / ink underline */

  /* ---- Blue ballpoint (PRIMARY accent) ---- */
  --blue:           #2c52a8;  /* primary action, pen marks, links */
  --blue-hover:     #244389;  /* hover */
  --blue-press:     #1c3670;  /* active / pressed */
  --blue-wash:      #e8edf8;  /* tinted surface / focus ring fill */
  --blue-ink:       #f7f9ff;  /* text on blue */

  /* ---- Red pen (alert / correction only) ---- */
  --red:            #c1392b;  /* errors, failed, destructive, margin rule */
  --red-hover:      #a82e22;
  --red-press:      #8f261b;
  --red-wash:       #f7e2dd;
  --red-ink:        #fbf4ef;

  /* ---- Green (credits / success) ---- */
  --green:          #4c7a48;
  --green-wash:     #e4eede;

  /* ---- Amber highlighter ---- */
  --amber:          #e0a92e;
  --amber-wash:     #fbecbf;   /* highlighter swipe */

  /* ---- Purple (arcane / magic items) ---- */
  --violet:         #6b4a86;
  --violet-wash:    #ece3f3;

  /* =========================================================
   * Semantic aliases - prefer these in components
   * ========================================================= */
  --surface-page:     var(--paper-1);
  --surface-card:     var(--paper-0);
  --surface-sunk:     var(--paper-2);
  --surface-inset:    var(--paper-3);

  --text-heading:     var(--ink-0);
  --text-body:        var(--ink-1);
  --text-muted:       var(--ink-2);
  --text-faint:       var(--ink-3);
  --text-placeholder: var(--ink-4);
  --text-link:        var(--blue);
  --text-on-accent:   var(--blue-ink);

  --border-soft:      var(--line-soft);
  --border-default:   var(--line);
  --border-strong:    var(--line-strong);

  --accent:           var(--blue);
  --accent-hover:     var(--blue-hover);
  --accent-press:     var(--blue-press);
  --accent-wash:      var(--blue-wash);
  --accent-ink:       var(--blue-ink);

  --alert:            var(--red);
  --alert-wash:       var(--red-wash);
  --success:          var(--green);
  --success-wash:     var(--green-wash);
  --highlight:        var(--amber);
  --highlight-wash:   var(--amber-wash);

  /* focus ring */
  --focus-ring:       var(--blue);
}
