@import url('https://fonts.googleapis.com/css2?family=Epilogue:wght@400;500;600;700&display=swap');

:root {
  /* ── Primitivas ─────────────────────────────────────────── */
  --blue-lighter:   #e3eaf6;
  --blue-light:     #495583;
  --blue-default:   #2d3558;
  --blue-dark:      #1f2747;

  --purple-dark:    #8d9aec;
  --purple-default: #bcc8f5;
  --purple-light:   #e3eafc;
  --purple-lighter: #f1f5ff;

  --grey-lighter:   #f4f5f9;
  --grey-light:     #dadeea;
  --grey-default:   #9ca2b8;
  --grey-dark:      #8f93a3;
  --grey-cool-2:    #ced1e1;

  --green-lighter:  #ebfcf0;
  --green-light:    #b4e6c4;
  --green-default:  #47b274;
  --green-dark:     #17653e;

  --red-lighter:    #fff0f0;
  --red-light:      #ebb6b6;
  --red-default:    #cb5158;
  --red-dark:       #832e3b;

  --yellow-lighter: #fef8ee;
  --yellow-light:   #ffdcae;
  --yellow-default: #f8b967;
  --yellow-dark:    #f7941e;

  --white: #ffffff;
  --black: #000000;

  /* ── Semânticas ─────────────────────────────────────────── */
  --primary:           var(--blue-default);
  --primary-light:     var(--blue-light);
  --primary-lighter:   var(--blue-lighter);
  --primary-dark:      var(--blue-dark);

  --secondary:         var(--purple-default);
  --secondary-dark:    var(--purple-dark);
  --secondary-light:   var(--purple-light);
  --secondary-lighter: var(--purple-lighter);

  --neutral:           var(--grey-default);
  --neutral-light:     var(--grey-light);
  --neutral-lighter:   var(--grey-lighter);
  --neutral-dark:      var(--grey-dark);

  --success:           var(--green-default);
  --success-light:     var(--green-light);
  --success-lighter:   var(--green-lighter);
  --success-dark:      var(--green-dark);

  --danger:            var(--red-default);
  --danger-light:      var(--red-light);
  --danger-lighter:    var(--red-lighter);
  --danger-dark:       var(--red-dark);

  --warning:           var(--yellow-default);
  --warning-light:     var(--yellow-light);
  --warning-lighter:   var(--yellow-lighter);
  --warning-dark:      var(--yellow-dark);

  --info:              var(--primary);
  --info-light:        var(--primary-light);
  --info-lighter:      var(--primary-lighter);

  /* ── Secondary muted (linha selecionada) ───────────────── */
  --secondary-muted: #c7cde6;

  /* ── Aliases funcionais ─────────────────────────────────── */
  --text-primary:    var(--primary);
  --text-secondary:  var(--neutral);
  --text-subtle:     var(--neutral);
  --text-disabled:   var(--neutral);
  --text-on-dark:    var(--white);
  --text-danger:     var(--danger);
  --text-success:    var(--success);
  --text-warning:    var(--warning);

  --surface-page:     var(--neutral-lighter);
  --surface-card:     var(--white);
  --surface-sidebar:         var(--primary);
  --surface-sidebar-hover:   #37416d;
  --surface-sidebar-submenu: #3e4979;
  --surface-hover:    var(--secondary-lighter);
  --surface-selected: var(--secondary-muted);

  --progress-track:            var(--secondary-muted);
  --progress-fill-secondary:   var(--secondary-dark);
  --progress-fill-warning:     var(--warning-dark);

  --border-default:  var(--neutral-light);
  --border-subtle:   var(--neutral-light);
  --border-focus:    var(--primary);
  --border-danger:   var(--danger);
  --border-success:  var(--success);

  --button-primary-default: var(--primary);
  --button-primary-hover:   var(--primary-light);
  --button-primary-danger:  var(--danger);

  /* ── Sombras ────────────────────────────────────────────── */
  --elev-1:         0 2px 4px rgba(0,0,0,0.25);
  --elev-2:         0 2px 8px rgba(0,0,0,0.25);
  --elev-3:         0 2px 12px rgba(0,0,0,0.25);
  --shadow-card:    0 1px 2px rgba(31,39,71,0.06), 0 1px 3px rgba(31,39,71,0.05);
  --shadow-popover: 0 4px 12px rgba(31,39,71,0.12);

  /* ── Animação ───────────────────────────────────────────── */
  --ease-standard: cubic-bezier(.2,.6,.2,1);
  --ease-out:      cubic-bezier(.16,1,.3,1);
  --dur-fast:      120ms;
  --dur-base:      200ms;
  --dur-slow:      320ms;

  /* ── Tipografia ─────────────────────────────────────────── */
  --font-sans:   'Epilogue', system-ui, -apple-system, sans-serif;
  --font-mono:   ui-monospace, 'SF Mono', 'JetBrains Mono', Menlo, monospace;

  --fw-regular:  400;
  --fw-medium:   500;
  --fw-semibold: 600;
  --fw-bold:     700;

  --lh-tight:  1.2;
  --lh-normal: 1.5;

  --fs-12: 12px;
  --fs-14: 14px;
  --fs-16: 16px;
  --fs-18: 18px;
  --fs-22: 22px;
  --fs-25: 25px;
  --fs-28: 28px;
  --fs-32: 32px;

  /* ── Espaçamento ────────────────────────────────────────── */
  --space-0:  0;
  --space-1:  4px;
  --space-2:  8px;
  --space-3:  16px;
  --space-4:  24px;
  --space-5:  32px;
  --space-6:  40px;
  --space-7:  48px;
  --space-8:  56px;
  --space-9:  64px;
  --space-10: 72px;
  --space-11: 80px;

  --stack-2xs: 4px;
  --stack-xs:  8px;
  --stack-sm:  16px;
  --stack-md:  24px;
  --stack-lg:  32px;

  --inline-nano: 8px;
  --inline-xxxs: 16px;
  --inline-xxs:  24px;
  --inline-xs:   32px;

  /* ── Border radius ──────────────────────────────────────── */
  --radius-xs:   2px;
  --radius-sm:   4px;
  --radius-md:   8px;
  --radius-lg:   12px;
  --radius-pill: 9999px;
  --radius-full: 50%;
}