:root {
    /* #region Spacing */
    --space-0: 0;
    --space-1: .25rem;
    --space-2: .5rem;
    --space-3: .75rem;
    --space-4: 1rem;
    --space-5: 1.5rem;
    /*#endregion*/
    /* #region Borders */
    --radius-0: 0;
    --radius-1: .25rem;
    --radius-2: .375rem;
    --radius-3: .5rem;
    --border-thin: 1px;
    --border-thick: 2px;
    /*#endregion*/
    /* #region Fonts */
    --font-family-sans: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol", "Noto Color Emoji";
    --fs-0: .75rem;
    --fs-1: .875rem;
    --fs-2: 1rem;
    --fs-3: 1.125rem;
    --fs-4: 1.25rem;
    --lh-tight: 1.2;
    --lh-normal: 1.5;
    /*#endregion*/
    /* #region Popovers, Modals */
    --z-1: 1;
    --z-sticky: 3;
    --z-popover: 1000;
    --z-modal: 1050;
    --shadow-1: 0 1px 2px rgba(0,0,0,.06), 0 1px 1px rgba(0,0,0,.04);
    --shadow-2: 0 4px 12px rgba(0,0,0,.10);
    /*#endregion*/
    /* #region Colors */
    --color-bg: var(--bs-body-bg, #fff);
    --color-fg: var(--bs-body-color, #212529);
    --color-muted: #6c757d;
    --color-border: var(--bs-border-color, #dee2e6);
    --color-primary: var(--bs-primary, #0d6efd);
    --color-success: var(--bs-success, #198754);
    --color-warning: var(--bs-warning, #ffc107);
    --color-danger: var(--bs-danger, #dc3545);
    --bg-surface: var(--color-bg);
    --bg-subtle: var(--bs-tertiary-bg, #f8f9fa);
    --bg-fpmheader: whitesmoke;
    --text-body: var(--color-fg);
    --text-muted: var(--color-muted);
    --line: var(--color-border);
    /*#endregion*/
    /* #region Sizing */
    --size-header-sm: 2rem;
    --size-header-md: 3.25rem;
    --size-fpmheader-lg: 3.75rem;
    --size-fpmheader-xlg: 5rem;
    --size-toolbar-h: 2.5rem;
    --size-tabstrip-h: 2rem;
    --size-listitem-min: 2.25rem;
    --size-grid-row-h: 2.25rem;
    --container-max: 1200px;
    /*#endregion*/
    /* #region Motion */
    --dur-fast: 120ms;
    --dur-med: 200ms;
    --dur-slow: 320ms;
    --ease-standard: cubic-bezier(.2,.0,.2,1);
    --ease-emph: cubic-bezier(.2,.0,0,1);
    /*#endregion*/
    /* #region Padding */
    --pad-xs: var(--space-1);
    --pad-sm: var(--space-2);
    --pad-md: var(--space-3);
    --radius: var(--radius-2);
    /*#endregion*/
    /* #region Bridging */
    --btn-bg: var(--bs-btn-bg, var(--color-primary));
    --btn-color: var(--bs-btn-color, #fff);
    --badge-bg: var(--bs-badge-bg, var(--color-primary));
    --badge-color: var(--bs-badge-color, #fff);
    /*#endregion*/
    /* #region State */
    --state-focus-ring: 0 0 0 3px color-mix(in oklab, var(--color-primary) 30%, transparent);
    --state-hover-bg: color-mix(in oklab, var(--color-primary) 12%, transparent);
    /*#endregion*/
    /* #region Brand */
    --brand-w: 235px;
    --brand-h: 60px;
    --brand-bg: #1B3644;
    --brand-fg: #E0E0E0;
    --brand-icon-h: 40px;
    --search-w: 700px;
    /*#endregion*/
}

    /* #region Density Compact */
    :root[data-density="compact"] {
        --pad-sm: var(--space-1);
        --size-header-md: 2.75rem;
        --size-grid-row-h: 2rem;
        --size-listitem-min: 2rem;
    }
    /*#endregion*/

    /* #region Density Comfortable */
    :root[data-density="comfortable"] {
        --pad-sm: var(--space-3);
        --size-header-md: 3.5rem;
        --size-grid-row-h: 2.5rem;
        --size-listitem-min: 2.5rem;
    }
/*#endregion*/

/*@media (prefers-color-scheme: dark) {
    :root {
        --bg-surface: #0f1113;
        --bg-subtle: #14171a;
        --text-body: #e9ecef;
        --line: #2a2e33;
        --bg-header: #1b1f24;
        --shadow-1: 0 1px 2px rgba(0,0,0,.6), 0 1px 1px rgba(0,0,0,.4);
    }
}
*/