/* ==========================================================================
   Colors — Ilya Davydkin personal brand
   Green is light by nature: it fails as small text on light. The whole system
   is built around that. Green = fills, dark blocks, pop-lime accents — never
   small text on cream or white. Text is ink on light; white or pop-lime on
   forest.
   ========================================================================== */

:root {
  /* ---- Brand palette (base values) ---------------------------------- */
  --cream:          #FCFAF4; /* Soft Ivory — background for light sections (not stark white) */
  --forest:         #0A4D2E; /* dark blocks: hero, footer, feature bands, buttons */
  --pop-lime:       #5BE389; /* text + accents on forest; highlighter-marker on cream */
  --electric-green: #0FB85B; /* line-art + doodles ONLY — never resting text */
  --green-700:      #0C9A4C; /* deeper emerald — vivid green for interactive text (link/nav hover) on light */
  --ink:            #0E1A12; /* text on cream */
  --mint-tint:      #E4F7EA; /* chips, soft fills */

  /* Tints & steps derived for UI depth (use sparingly) */
  --forest-900:     #073C24; /* deepest forest — pressed / shadowed blocks */
  --forest-700:     #0A4D2E; /* = --forest */
  --forest-600:     #0E6B3F; /* hover lift on forest fills */
  --cream-200:      #F3EFE6; /* hairline dividers / subtle panels on cream */
  --cream-300:      #E7E1D5; /* dashed-grid lines, borders on cream */
  --mint-200:       #D3F0DC; /* deeper mint for chip borders */
  --paper:          #FFFFFF; /* true white — use rarely, prefer cream */

  /* Ink steps for hierarchy on light */
  --ink-900:        #0E1A12; /* = --ink, primary text */
  --ink-700:        #2C3A30; /* secondary text */
  --ink-500:        #586259; /* muted / captions */
  --ink-300:        #8A9189; /* disabled, placeholders */

  /* ---- Status / feedback palette ------------------------------------ */
  /* Same rule as green: the BRIGHT value is for fills, icons & badges; the
     -strong value is the only one safe as small text on light. -tint is a
     soft background; -pop reads on forest. Warm register to match the brand. */
  --danger:         #C53A24; /* red — icon/badge/fill on light */
  --danger-strong:  #9A2C18; /* red text on light (“bad / error / no”) */
  --danger-tint:    #F8E5DF; /* soft red surface (alert backgrounds) */
  --danger-pop:     #FF7A5C; /* coral — danger accent on forest */

  --warning:        #E7A50E; /* amber — icon/badge/fill on light */
  --warning-strong: #845B0A; /* amber text on light (deep, legible) */
  --warning-tint:   #FBEFCE; /* soft amber surface */
  --warning-pop:    #F5C542; /* bright amber — warning accent on forest */

  --success:        #0FB85B; /* = electric green — fill/icon on light */
  --success-strong: #0B7A3E; /* green text on light (success / “yes”) */
  --success-tint:   #E4F7EA; /* = mint-tint — soft green surface */
  --success-pop:    #5BE389; /* = pop-lime — success accent on forest */

  /* ---- Semantic aliases --------------------------------------------- */
  /* Surfaces */
  --surface-page:        var(--cream);
  --surface-raised:      var(--paper);
  --surface-sunken:      var(--cream-200);
  --surface-dark:        var(--forest);
  --surface-dark-deep:   var(--forest-900);
  --surface-chip:        var(--mint-tint);

  /* Text */
  --text-strong:         var(--ink-900);
  --text-body:           var(--ink-700);
  --text-muted:          var(--ink-500);
  --text-disabled:       var(--ink-300);
  --text-on-dark:        #F4FBF6;
  --text-on-dark-muted:  rgba(244, 251, 246, 0.66);
  --text-accent-on-dark: var(--pop-lime);

  /* Lines & borders */
  --border-soft:         var(--cream-300);
  --border-strong:       var(--ink-900);
  --border-dashed:       var(--cream-300);
  --border-on-dark:      rgba(91, 227, 137, 0.28);

  /* Accents */
  --accent:              var(--forest);     /* primary action color on light */
  --accent-pop:          var(--pop-lime);   /* highlights, marks, dark-bg accent */
  --accent-line:         var(--electric-green); /* doodle / line-art ink */
  --link-hover-on-light: var(--green-700); /* vivid green for link/nav hover on cream — a deliberate, transient exception to "no green text" */
  --highlight-marker:    var(--pop-lime);   /* highlighter behind accent words */

  /* Focus ring */
  --focus-ring:          rgba(15, 184, 91, 0.55);

  /* Status text / surfaces / borders (use -strong for any small text) */
  --text-danger:         var(--danger-strong);
  --text-warning:        var(--warning-strong);
  --text-success:        var(--success-strong);
  --surface-danger:      var(--danger-tint);
  --surface-warning:     var(--warning-tint);
  --surface-success:     var(--success-tint);
  --border-danger:       var(--danger);
  --border-warning:      var(--warning);
  --border-success:      var(--success);
}
