:root {
    /* Typography settings */
    --font-sans: "Montserrat";
    --font-size: 1rem;
    --font-weight: 400;
    --line-height: 1.5;
    --font-weight-bold: bold;
	
	--brand-onyx: #2f3942;
	--sec-01: #6c8ec8;
	--sec-02: red;
	--sec-03: red;
	--sec-04: #25423f;
	--sec-05: #fbba00;
	--sec-06: #bacecc;
	
	--active-nav-menu: #ffefd0;
	--active-nav-text: #5b4fc4;

	--tone-blue-ui: #fbba00;

	--warn-500: #F6E96B;
	--danger-500: #E04B4B;

	/* --- Typography -------------------------------------------------------- */
	/*--font-sans: "Inter", "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;*/
	--font-mono: "JetBrains Mono", "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "DejaVu Sans Mono", monospace;

	--scale-h1: clamp(1.75rem, 1.2rem + 1.8vw, 2.25rem);
	--scale-h2: clamp(1.5rem, 1.05rem + 1.2vw, 1.875rem);
	--scale-h3: clamp(1.25rem, 0.95rem + 0.8vw, 1.5rem);
	--scale-h4: clamp(1.125rem, 0.9rem + 0.5vw, 1.25rem);
	--scale-h5: 1.05rem;
	--scale-h6: 0.95rem;

	--rhythm-xs: 0.25rem;
	--rhythm-sm: 0.5rem;
	--rhythm-md: 0.75rem;
	--rhythm-lg: 1rem;

	/* --- Bootstrap mapping (single source of truth) ------------------------ */
	--bs-primary: var(--brand-onyx);
	--bs-primary-rgb: 47, 57, 66;

	--bs-secondary: var(--sec-04);
	--bs-secondary-rgb: 108, 142, 200;

	--bs-success: var(--sec-03);
	/*--bs-success-rgb: 228, 255, 60;*/

	--bs-info: var(--sec-06);
	--bs-info-rgb: 186, 206, 204;

	--bs-warning: var(--warn-500);
	--bs-warning-rgb: 246, 233, 107;

	--bs-danger: var(--danger-500);
	--bs-danger-rgb: 224, 75, 75;

	--bs-light: var(--sec-05);
	--bs-light-rgb: 151, 145, 252;

	--bs-dark: var(--brand-onyx);
	--bs-dark-rgb: var(--bs-primary-rgb);

	--bs-blue: var(--tone-blue-ui);

	/* --- Surfaces / Borders / Links --------------------------------------- */
	--bs-body-bg: #ffffff;
	--bs-body-color: #141515;
	--bs-border-color: color-mix(in srgb, var(--bs-dark) 10%, white);
	--bs-border-radius: .25rem;
	--bs-border-radius-sm: .25rem;
	--bs-border-radius-lg: .25rem;
	--bs-border-radius-xl: .25rem;

	--bs-link-color: var(--sec-02);
	--bs-link-hover-color: color-mix(in srgb, var(--sec-02) 85%, black);
	--bs-focus-ring-color: rgba(var(--bs-secondary-rgb), .35);

	/* --- Type & Headings --------------------------------------------------- */
	--bs-font-sans-serif: var(--font-sans);
	--bs-font-monospace: var(--font-mono);
	--bs-body-font-family: var(--bs-font-sans-serif);
	--bs-body-font-size: 0.9375rem;;
	--bs-body-font-weight: 400;
	--bs-body-line-height: 1.55;
	--bs-headings-font-family: var(--bs-font-sans-serif);
	--bs-headings-font-weight: 600;
	--bs-headings-line-height: 1.25;
	--bs-headings-color: #0b1320;

	/* --- Effects ----------------------------------------------------------- */
	--shadow-1: 0 1px 2px rgba(0,0,0,.08);
	--shadow-2: 0 6px 18px rgba(0,0,0,.12);

	/* --- Buttons / Forms --------------------------------------------------- */
	--bs-btn-border-width: 1px;
	--bs-btn-focus-shadow-rgb: var(--bs-secondary-rgb);
	--bs-form-group-margin-t: 1.5rem;

	/* --- AI pills ---------------------------------------------------------- */
	--ai-paddings: .3rem;
	--ai-padding-top: 7px;
	--ai-margin-right: .5rem;
	--ai-radius: 3px;
	--ai-text-align: center;
	--ai-vertical-align: center;
	--ai-font-size: 1.2rem;

	/* --- Layout helpers ---------------------------------------------------- */
	--navbar-size: 250px;
	--navbar-hidden-size: -250px;
	--navbar-left-bg: var(--bs-primary);
	--navbar-right-bg: var(--bs-primary);
	--card-header-bg: var(--bs-primary);

	/* Tables & focus ---------------------------------------------------- */
	--table-stripe: color-mix(in oklab, var(--bs-primary) 4%, white);
	--focus-ring: 0 0 0 0.2rem color-mix(in oklab, var(--sec-05) 50%, white);

	/* Button size ---------------------------------------------------- */
	--bs-btn-xsm-paddings: 0rem .25rem !important;
	--bs-btn-xsm-font-size: .875rem;
	--bs-btn-xsm-radius: .2rem;
}

.navbar-brand > img {
  max-width: 100px !important;
}