/* Preparo Jurídico — Color system
   Sampled from the live homepage: white editorial sections, imperial gold
   for every call to action, and navy-black for the authority sections. */

:root {
  /* ---- Gold ---- */
  --gold-imperial: #D4AF37;   /* primary gold */
  --gold-bright:   #E9C25C;   /* gold on dark surfaces, kickers */
  --gold-deep:     #C9A227;   /* hover / pressed */
  --gold-dark:     #A88420;   /* gold text on light */
  --gold-soft:     #FBF4DE;   /* gold tint surface */
  --gold-tint-20:  rgba(212, 175, 55, 0.20);
  --gold-tint-12:  rgba(212, 175, 55, 0.12);

  /* ---- Ink ---- */
  --juridical-black: #0A0A0A; /* course cards, hero veil */
  --ink-navy: #131A26;        /* the dark authority sections */
  --ink-900: #0E141F;
  --ink-800: #171D29;
  --ink-700: #232A38;

  --navy-juridical: #4F5BD5;  /* interactive / informational icons */
  --navy-deep:      #3B45AE;

  --pure-white: #FFFFFF;

  /* ---- Neutral scale ---- */
  --gray-900: #10131A;
  --gray-700: #4A5160;        /* body copy */
  --gray-500: #8A9099;        /* tertiary, labels */
  --gray-300: #EAEAEC;        /* hairline borders */
  --gray-200: #F0F1F3;
  --gray-100: #F5F6F7;        /* nested surface */
  --gray-50:  #FAFAFA;        /* alternating section wash */

  /* ---- Feedback ---- */
  --success: #10B981;
  --warning: #F59E0B;
  --error:   #EF4444;
  --info:    #4F5BD5;
  --success-soft: rgba(16, 185, 129, 0.12);
  --warning-soft: rgba(245, 158, 11, 0.12);
  --error-soft:   rgba(239, 68, 68, 0.12);
  --info-soft:    rgba(79, 91, 213, 0.12);

  /* ---- Semantic aliases (light, default) ---- */
  --background: var(--pure-white);
  --surface-page: var(--pure-white);
  --surface-alt: var(--gray-50);
  --surface-card: var(--gray-100);
  --surface-raised: var(--pure-white);
  --surface-dark: var(--ink-navy);
  --surface-darkest: var(--juridical-black);

  --text-strong: var(--gray-900);
  --text-body:   var(--gray-700);
  --text-muted:  var(--gray-500);
  --text-on-dark: #E6E8EC;
  --text-muted-on-dark: #9AA1AE;
  --text-on-gold: #191307;

  --primary: var(--gold-imperial);
  --primary-hover: var(--gold-deep);
  --primary-foreground: var(--text-on-gold);

  --secondary: var(--ink-navy);
  --secondary-foreground: var(--pure-white);

  --accent: var(--gold-imperial);
  --accent-foreground: var(--text-on-gold);

  --border: var(--gray-300);
  --border-strong: #C9CBD1;
  --border-on-dark: rgba(255, 255, 255, 0.10);
  --ring: var(--gold-imperial);
  --input-bg: var(--pure-white);

  --link: var(--text-strong);
  --link-hover: var(--gold-deep);
}

/* ---- Dark theme scope ---- */
.dark {
  --background: var(--ink-navy);
  --surface-page: var(--ink-navy);
  --surface-alt: var(--ink-900);
  --surface-card: rgba(255, 255, 255, 0.04);
  --surface-raised: var(--ink-800);
  --surface-dark: var(--juridical-black);

  --text-strong: var(--pure-white);
  --text-body: #C6CBD4;
  --text-muted: var(--text-muted-on-dark);

  --primary: var(--gold-imperial);
  --primary-foreground: var(--text-on-gold);
  --secondary: var(--gold-imperial);
  --secondary-foreground: var(--text-on-gold);

  --border: rgba(255, 255, 255, 0.10);
  --border-strong: rgba(255, 255, 255, 0.20);
  --ring: var(--gold-imperial);
  --input-bg: rgba(255, 255, 255, 0.05);

  --link: var(--gold-bright);
  --link-hover: var(--pure-white);
}
