 :root {
  /* Brand palette */
  --fresh-sky:        #00b2ff;
  --regal-navy:       #134074;
  --frozen-water:     #d7fdf0;
  --bright-lavender:  #a882dd;
  --petal-frost:      #edd2e0;
 
  /* Semantic aliases */
  --color-base:       var(--regal-navy);
  --color-surface:    #0e2f56;          /* navy darkened slightly for layering */
  --color-card:       #1a4d82;          /* navy lightened for cards */
  --color-border:     rgba(0, 178, 255, 0.18);
 
  --color-accent:       var(--fresh-sky);
  --color-accent-hover: #33c1ff;
 
  --color-text:         var(--frozen-water);
  --color-muted:        rgba(215, 253, 240, 0.55);
 
  --color-light-bg:     var(--frozen-water);
 
  /* Accent palette */
  --color-lavender:     var(--bright-lavender);
  --color-petal:        var(--petal-frost);
 
  /* Semantic */
  --color-success:  #5DCAA5;
  --color-warning:  #EF9F27;
  --color-danger:   #E24B4A;

/* rgb channel variants - auto-generated by append-rgb-vars.sh */
  --fresh-sky-rgb: 0 178 255;
  --regal-navy-rgb: 19 64 116;
  --frozen-water-rgb: 215 253 240;
  --bright-lavender-rgb: 168 130 221;
  --petal-frost-rgb: 237 210 224;
  --color-base-rgb: 19 64 116;
  --color-surface-rgb: 14 47 86;
  --color-card-rgb: 26 77 130;
  --color-accent-rgb: 0 178 255;
  --color-accent-hover-rgb: 51 193 255;
  --color-text-rgb: 215 253 240;
  --color-light-bg-rgb: 215 253 240;
  --color-lavender-rgb: 168 130 221;
  --color-petal-rgb: 237 210 224;
  --color-success-rgb: 93 202 165;
  --color-warning-rgb: 239 159 39;
  --color-danger-rgb: 226 75 74;
}
 
