:root {
  /* Brasil: cores oficiais da bandeira aplicadas como assinatura visual */
  --flag-green:#009c3b;
  --flag-green-deep:#006b2d;
  --flag-green-soft:#e7f5ec;
  --flag-yellow:#ffdf00;
  --flag-yellow-deep:#725b00;
  --flag-yellow-soft:#fff8c9;
  --flag-blue:#002776;
  --flag-blue-bright:#1351b4;
  --flag-blue-soft:#e7efff;

  /* Base institucional */
  --color-blue-950:#071d41;
  --color-blue-900:#0c326f;
  --color-blue-800:#0e4290;
  --color-blue-700:#1351b4;
  --color-blue-600:#155bcb;
  --color-blue-100:#e7efff;
  --color-blue-50:#f5f8ff;
  --color-green-800:#075b45;
  --color-green-700:#168821;
  --color-green-100:#e9f5eb;
  --color-yellow-500:#ffcd07;
  --color-yellow-400:#ffdf00;
  --color-yellow-100:#fff7bf;
  --color-red-700:#b50909;
  --color-red-100:#fff1f1;
  --color-ink:#1b1b1b;
  --color-heading:#071d41;
  --color-muted:#4a5c73;
  --color-border:#c6d2e2;
  --color-border-strong:#91a8c9;
  --color-surface:#ffffff;
  --color-canvas:#f6f7f9;
  --color-soft:#edf2f7;

  --shadow-xs:0 1px 2px rgba(7,29,65,.05);
  --shadow-sm:0 7px 20px rgba(7,29,65,.08);
  --shadow-md:0 18px 44px rgba(7,29,65,.12);
  --shadow-lg:0 30px 74px rgba(7,29,65,.16);
  --radius-xs:.2rem;
  --radius-sm:.35rem;
  --radius-md:.55rem;
  --radius-lg:.8rem;
  --radius-xl:1rem;
  --radius-pill:999px;
  --space-1:.25rem; --space-2:.5rem; --space-3:.75rem; --space-4:1rem;
  --space-5:1.25rem; --space-6:1.5rem; --space-8:2rem; --space-10:2.5rem;
  --space-12:3rem; --space-16:4rem; --space-20:5rem; --space-24:6rem;
  --max-width:78rem;
  --font-size-base:16px;
  --focus:0 0 0 3px #fff,0 0 0 6px var(--color-blue-700);
  --ease:cubic-bezier(.2,.75,.25,1);
  --ease-emph:cubic-bezier(.16,1,.3,1);
}
:root[data-text-size="large"]{--font-size-base:18px}
:root[data-text-size="xl"]{--font-size-base:20px}
:root[data-contrast="high"]{
  --color-ink:#000;--color-heading:#000;--color-muted:#111;--color-border:#000;--color-border-strong:#000;
  --color-canvas:#fff;--color-soft:#fff;--color-blue-900:#001f5b;--color-blue-700:#0039a6;--color-green-700:#005f32;
}
