:root {
  /* ── Brand ── */
  --main-color: #2E7D32;
  --main-color-light: #E8F5E9;
  --main-color-dark: #1B5E20;

  --main-bg-color-light: #F8FAFC;

  /* ── Obligations / Additional / Supplemental ── */
  --color-obligations: #DC2626;
  --color-obligations-light: #FEE2E2;
  --color-additional: #7C7A1F;
  --color-additional-light: #F5F5DC;
  --color-supplemental: #EAB308;

  /* ── Border radius ── */
  --main-border-radius: 8px;
  --input-border-radius: 24px;

  /* ── Text ── */
  --main-text-color: #1E293B;
  --color-text-dark: #1E293B;
  --color-text-light: #FFFFFF;

  /* ── Status / Semantic ── */
  --color-warning: #F59E0B;
  --color-warning-light: #FEF3C7;
  --color-info: #1976D2;
  --color-info-light: #E3F2FD;
  --color-info-dark: #0D47A1;
  --color-danger: #DC2626;
  --color-danger-light: #FEE2E2;
  --color-success: #2E7D32;
  --color-success-light: #E8F5E9;
  --color-success-dark: #1B5E20;

  /* ── Greys & backgrounds ── */
  --color-grey1: #64748B;
  --color-grey2: #475569; 
  --color-light: #F1F5F9;
  --color-light-2: #F8FAFC80;

  --border-color: #CBD5E1;
  --border-color-2: #E2E8F0;
  --color-table-odd: #Fff;
  --color-table-even: #Fff;

  /* ── Typography ── */
  --font-main: 'Inter', 'Roboto', 'Calibri', sans-serif;

  /* ── Shadows ── */
  --box-shadow-card: 0px 6px 24px rgba(15, 23, 42, 0.0784) !important;
  --box-shadow-grey: 0 4px 12px rgba(30, 41, 59, 0.06) !important;
  --box-shadow-grey-card-hover: 0 8px 24px rgba(30, 41, 59, 0.12) !important;
  --box-shadow-green: 0 4px 12px rgba(46, 125, 50, 0.15) !important;
  --box-shadow-red: 0 4px 12px rgba(220, 38, 38, 0.15) !important;

  --topbar-label-visibility: visible;
  --topbar-label-visibility-hover: visible;

  --dropdown-bg-color: #Fff;
  --dropdown-text-color: var(--main-text-color);

  /* ── Font sizes (1rem = 12px) ── */
  --font-size-none: 0;
  --font-size-xs: 0.9167rem;    /* 11px */
  --font-size-sm: 1rem;          /* 12px */
  --font-size-base: 1.1667rem;   /* 14px */
  --font-size-base-plus: 1.25rem;/* 15px */
  --font-size-md: 1.3333rem;     /* 16px */
  --font-size-lg: 2rem;          /* 24px */
  --font-size-xxxl: 3.3333rem;   /* 40px */

  --font-weight-normal: 400;
  --font-weight-bold: 700;

  --line-height-tight: 1.0;
  --line-height-normal: normal;
  --line-height-label: 0.0573rem;

  /* ── Margins ── */
  --margin-none: 0;
  --margin-xs: 0.3333rem;        /* 4px */
  --margin-sm: 0.4167rem;        /* 5px */
  --margin-base: 0.6667rem;      /* 8px */
  --margin-md: 0.8333rem;        /* 10px */
  --margin-md-alt: 1rem;          /* 12px */
  --margin-lg-alt: 1.3333rem;    /* 16px */
  --margin-lg: 1.5rem;            /* 18px */
  --margin-sm-alt: 2.5rem;       /* 30px */
  --margin-xl: 2.6667rem;        /* 32px */
  --margin-xl-plus: 3rem;        /* 36px */
  --margin-xl-alt: 4.1667rem;    /* 50px */
  --margin-xxl: 5.3333rem;       /* 64px */

  --gap-sm: 0.6667rem;           /* 8px */
  --gap-md: 1rem;                 /* 12px */

  --height-switch: 1.5rem;       /* 18px */

  /* ── Radius ── */
  --radius-xs: 0.1667rem;        /* 2px */
  --radius-xs-alt: 0.3333rem;    /* 4px */
  --radius-sm: 0.5rem;           /* 6px */
  --radius-lg: 0.6667rem;        /* 8px */
  --radius-md: 1.0667rem;        /* 12.8px */

  --checkbox-size: 1rem;
  --border-radius-lg-alt: 1rem;

  /* ── Borders ── */
  --border-width-thin: 0.0833rem;        /* 1px */
  --border-width-thick: 0.1667rem;       /* 2px */
  --border-width-thicker: 0.25rem;       /* 3px */
  --border-width-thicker-plus: 0.416rem; /* 5px */

  --transition-base: all 0.2s ease-in;

  /* ── Padding ── */
  --padding-none: 0;
  --padding-xxs: 0.5rem;         /* 6px */
  --padding-xs: 0.6667rem;       /* 8px */
  --padding-sm-alt2: 0.8333rem;  /* 10px */
  --padding-sm: 1rem;             /* 12px */
  --padding-sm-alt: 1.25rem;     /* 15px */
  --padding-sm-alt-plus: 1.6667rem; /* 20px */
  --padding-md: 2rem;             /* 24px */
  --padding-base: 2.6667rem;     /* 32px */
  --padding-lg: 3rem;             /* 36px */
  --padding-xl: 4.6667rem;       /* 56px */

  --shadow-light: 0 0 15px rgba(0, 0, 0, 0.08);
}
