@import url('https://fonts.googleapis.com/css2?family=Figtree:ital,wght@0,300..900;1,300..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined');
.dominant-icon {
    font-family: "Material Symbols Outlined";
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    font-size: 24px !important;
    font-weight: 400;
    width: 1em;
    height: 1em;
    line-height: 1em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    text-transform: none;
    overflow: hidden;
}
.dominant-icon-xs {
    font-size: 16px !important;
}
:root, [data-bs-theme=light] {
    /* Primary blue system */
    --bs-primary: #0173E5; /* Button color */
    --bs-primary-hover: #0166CB; /* Hover state */
    --bs-primary-rgb: 1, 115, 229;
    --bs-primary-text-emphasis: #014C9B;
    --bs-primary-bg-subtle: #E6F1FB;
    --bs-primary-border-subtle: #015BBF;

    /* Secondary neutrals */
    --bs-secondary: #F4F6F8;
    --bs-secondary-color: #6B6B6B;

    /* Background system */
    --bs-body-bg: #e9eef2;
    --bs-paper-bg: #fff;
    --bs-base-color-rgb: 255, 255, 255;
    --bs-heading-color: #014C9B;
    --bs-body-color-rgb: 50, 50, 50;

    /* Menu and borders */
    --bs-menu-color: #0255B0;
    --bs-menu-hover-bg: #E6F1FB;
    --bs-menu-hover-color: #014C9B;
    --bs-border-color: #0000001a;
}

[data-bs-theme=dark] {
  /* Primary Branding Green */
  --bs-primary: #2F6F5A;
  --bs-primary-rgb: 47, 111, 90;

  /* Lighter green for text contrast/emphasis */
  --bs-primary-text-emphasis: #A8E6CF;

  /* Subtle background tints */
  --bs-primary-bg-subtle: #1E3B33;
  --bs-primary-border-subtle: #3B8F75;

  /* Secondary neutral (warm gray-green) */
  --bs-secondary: #5A6C62;
  --bs-secondary-color: #B0C5BA;

  /* Core layout backgrounds */
  --bs-body-bg: #15211D;           /* Deep, muted green-black */
  --bs-paper-bg: #1A2C26;
  --bs-paper-bg-rgb: 26, 44, 38;
  --bs-card-bg: #1E2F2A;

  /* Text and readability */
  --bs-heading-color: #E0F5EB;
  --bs-body-color: #D3E4DC;
  --bs-body-color-rgb: 211, 228, 220;

  /* Muted grays */
  --bs-gray-400: #92A39B;
  --bs-gray-200: #BFDCD2;

  /* Navigation / menu items */
  --bs-menu-color: #CDE6DA;
  --bs-menu-hover-bg: #274139;
  --bs-menu-hover-color: #FFFFFF;

  /* Border and divider */
  --bs-border-color: #3D5B52;
}
body {
    background-color: var(--bs-body-bg);
}

/** Fixes grouped floating inputs **/
.form-floating > .form-select {
    padding-top: 1.625rem !important;
    padding-bottom: 0.625rem !important;
}
.form-floating > .form-control {
    padding-top: 1.625rem !important;
    padding-bottom: 0.625rem !important;
}
.form-floating > .form-control:focus {
    padding-top: 1.625rem !important;
    padding-bottom: 0.625rem !important;
}
.form-floating > .form-control:focus-within {
    padding-top: 1.625rem !important;
    padding-bottom: 0.625rem !important;
}
.input-group:has(button) .form-control {
    padding-top: 1.625rem !important;
    padding-bottom: 0.625rem !important;
}
/* (Optional) If you want to keep the focus-within behavior for input-groups */
html:not([dir='rtl']) .input-group .form-select {
    padding: calc(0.543rem - 2px) calc(0.9375rem - 2px);
}
[dir='rtl'] .input-group .form-select {
    padding: calc(0.543rem - 2px) calc(0.9375rem - 2px);
}
.flatpickr-calendar.open {
    z-index: 1090 !important;
}
.bbd-btn-icon {
    block-size: calc(2.2505001rem + calc(var(--bs-border-width)* 2));
    inline-size: calc(2.2505001rem + calc(var(--bs-border-width)* 2));
    padding:0;
}
