html {
    font-size: 14px;
    font-family: 'Inter', sans-serif;
    position: relative;
    min-height: 100%;
}

    :root {
        --neutral-900: oklch(22.76% 0.0335 292.54);
        --neutral-850: oklch(29.82% 0.0481 291.93);
        --neutral-800: oklch(35.99% 0.0607 291.62);
        --neutral-750: oklch(42.57% 0.0719 291.61);
        --neutral-700: oklch(49.17% 0.0731 292.47);
        --neutral-650: oklch(53.69% 0.0663 293.5);
        --neutral-600: oklch(59.2% 0.0581 294.5);
        --neutral-550: oklch(64.29% 0.0506 295.23);
        --neutral-500: oklch(68.95% 0.0436 295.8);
        --neutral-450: oklch(73.63% 0.0369 296.28);
        --neutral-400: oklch(77.88% 0.0307 296.66);
        --neutral-350: oklch(82.12% 0.0242 297);
        --neutral-300: oklch(85.52% 0.0188 297.26);
        --neutral-250: oklch(88.07% 0.0151 297.43);
        --neutral-200: oklch(91.47% 0.01 297.65);
        --neutral-150: oklch(94.03% 0.0067 297.77);
        --neutral-100: oklch(96.16% 0.0038 297.88);
        --neutral-50: oklch(97.01% 0.003 297.91);
        --neutral-25: oklch(98.29% 0.0016 297.96);
        --neutral-0: oklch(100% 0 118.64);
        --neutral-900: oklch(22.59% 0.0275 269.7);
        --neutral-850: oklch(26.52% 0.0344 269.23);
        --neutral-800: oklch(30.88% 0.0418 268.89);
        --neutral-750: oklch(34.8% 0.049 268.58);
        --neutral-700: oklch(39.15% 0.0553 268.55);
        --neutral-650: oklch(43.96% 0.0619 268.57);
        --neutral-600: oklch(48.73% 0.0687 268.57);
        --neutral-550: oklch(51.33% 0.0722 268.58);
        --neutral-500: oklch(55.25% 0.078 268.55);
        --neutral-450: oklch(59.6% 0.084 268.56);
        --neutral-400: oklch(63.45% 0.0799 269.45);
        --neutral-350: oklch(67.68% 0.0697 270.78);
        --neutral-300: oklch(71.5% 0.061 271.77);
        --neutral-250: oklch(75.32% 0.0521 272.64);
        --neutral-200: oklch(79.57% 0.0428 273.47);
        --neutral-150: oklch(83.39% 0.0333 274.19);
        --neutral-100: oklch(87.64% 0.0234 274.87);
        --neutral-50: oklch(91.47% 0.0151 275.39);
        --primary-850: oklch(13.13% 0.0256 252.31);
        --primary-800: oklch(20.87% 0.0425 253.43);
        --primary-750: oklch(25.69% 0.0581 252.15);
        --primary-700: oklch(31.58% 0.0766 251.18);
        --primary-650: oklch(35.3% 0.0883 250.73);
        --primary-600: oklch(40.53% 0.1013 250.75);
        --primary-550: oklch(45.33% 0.1131 250.77);
        --primary-500: oklch(50.12% 0.1256 250.71);
        --primary-450: oklch(55.35% 0.1386 250.73);
        --primary-400: oklch(60.15% 0.1504 250.75);
        --primary-350: oklch(64.94% 0.1625 250.73);
        --primary-300: oklch(69.61% 0.1487 252.9);
        --primary-250: oklch(74.64% 0.12 255.97);
        --primary-200: oklch(79.27% 0.0956 258.24);
        --primary-150: oklch(83.89% 0.0696 260.29);
        --primary-100: oklch(88.54% 0.0462 261.9);
        --primary-75: oklch(93.62% 0.0226 263.31);
        --primary-50: oklch(98.29% 0.0047 264.25);
        --accent-850: oklch(12.94% 0.0161 214.86);
        --accent-800: oklch(20.55% 0.0275 217.93);
        --accent-750: oklch(25.25% 0.0386 219.32);
        --accent-700: oklch(29.95% 0.0481 219.21);
        --accent-650: oklch(34.65% 0.0584 219.1);
        --accent-600: oklch(39.78% 0.0672 219.1);
        --accent-550: oklch(44.49% 0.0751 219.1);
        --accent-500: oklch(49.19% 0.083 219.1);
        --accent-450: oklch(54.33% 0.0915 219.11);
        --accent-400: oklch(59.69% 0.1008 219.1);
        --accent-350: oklch(63.74% 0.1076 219.1);
        --accent-300: oklch(68.44% 0.1155 219.1);
        --accent-250: oklch(73.58% 0.124 219.1);
        --accent-200: oklch(78.28% 0.1323 219.1);
        --accent-150: oklch(83.1% 0.1125 219.55);
        --accent-100: oklch(88.01% 0.0741 220.14);
        --accent-75: oklch(93.35% 0.036 220.58);
        --accent-50: oklch(98.24% 0.0076 220.8);
        --secondary-850: oklch(13.03% 0.0126 76.7);
        --secondary-800: oklch(20.68% 0.0223 77.13);
        --secondary-750: oklch(25.44% 0.0332 73.98);
        --secondary-700: oklch(30.2% 0.0456 73.66);
        --secondary-650: oklch(34.95% 0.0577 73.74);
        --secondary-600: oklch(40.14% 0.0675 73.74);
        --secondary-550: oklch(44.88% 0.0756 73.74);
        --secondary-500: oklch(49.63% 0.0836 73.74);
        --secondary-450: oklch(54.81% 0.0924 73.74);
        --secondary-400: oklch(59.56% 0.1004 73.74);
        --secondary-350: oklch(64.31% 0.1085 73.74);
        --secondary-300: oklch(69.2% 0.1167 73.74);
        --secondary-250: oklch(74.23% 0.1253 73.74);
        --secondary-200: oklch(78.98% 0.1331 73.74);
        --secondary-150: oklch(83.65% 0.101 73.25);
        --secondary-100: oklch(88.36% 0.0636 72.12);
        --secondary-75: oklch(93.52% 0.0299 70.89);
        --secondary-50: oklch(98.27% 0.0058 69.99);
        --success-850: oklch(12.74% 0.0278 147.56);
        --success-800: oklch(20.18% 0.0484 147.39);
        --success-750: oklch(24.75% 0.063 149.73);
        --success-700: oklch(29.34% 0.0773 150.2);
        --success-650: oklch(33.92% 0.0927 150.26);
        --success-600: oklch(38.95% 0.1064 150.26);
        --success-550: oklch(43.55% 0.119 150.26);
        --success-500: oklch(48.16% 0.1316 150.26);
        --success-450: oklch(53.18% 0.1453 150.26);
        --success-400: oklch(57.79% 0.1581 150.26);
        --success-350: oklch(64.49% 0.1767 150.26);
        --success-300: oklch(67% 0.1833 150.26);
        --success-250: oklch(72.03% 0.1969 150.26);
        --success-200: oklch(76.63% 0.2095 150.26);
        --success-150: oklch(81.32% 0.2144 150.2);
        --success-100: oklch(86.03% 0.2164 150.14);
        --success-75: oklch(92.23% 0.1173 149.55);
        --success-50: oklch(98.02% 0.0225 149.16);
        --danger-850: oklch(13.24% 0.0296 36.79);
        --danger-800: oklch(21.13% 0.0575 33.74);
        --danger-750: oklch(26.25% 0.0947 25.87);
        --danger-700: oklch(31.22% 0.1169 23.31);
        --danger-650: oklch(36.18% 0.1408 22.87);
        --danger-600: oklch(41.54% 0.1616 22.87);
        --danger-550: oklch(46.46% 0.1808 22.86);
        --danger-500: oklch(51.37% 0.1998 22.87);
        --danger-450: oklch(58.96% 0.2293 22.87);
        --danger-400: oklch(61.65% 0.2398 22.87);
        --danger-350: oklch(66.13% 0.2163 23.95);
        --danger-300: oklch(70.49% 0.1793 24.99);
        --danger-250: oklch(75.32% 0.1425 25.72);
        --danger-200: oklch(79.78% 0.1112 26.15);
        --danger-150: oklch(84.25% 0.0796 26.45);
        --danger-100: oklch(88.77% 0.0518 26.64);
        --danger-75: oklch(93.73% 0.0249 26.77);
        --danger-50: oklch(98.32% 0.0052 26.83);
        --warning-850: oklch(13.06% 0.0171 68.28);
        --warning-800: oklch(20.74% 0.0311 68.61);
        --warning-750: oklch(25.56% 0.0464 63.08);
        --warning-700: oklch(30.38% 0.0619 60.6);
        --warning-650: oklch(35.2% 0.0771 59.22);
        --warning-600: oklch(40.44% 0.0902 58.82);
        --warning-550: oklch(45.22% 0.1011 58.79);
        --warning-500: oklch(50.01% 0.1122 58.63);
        --warning-450: oklch(55.24% 0.1245 58.16);
        --warning-400: oklch(60.02% 0.1348 58.49);
        --warning-350: oklch(64.81% 0.146 58.16);
        --warning-300: oklch(69.59% 0.1569 58.15);
        --warning-250: oklch(72.53% 0.1635 58.15);
        --warning-200: oklch(79.31% 0.1337 59.83);
        --warning-150: oklch(83.88% 0.0966 60.04);
        --warning-100: oklch(88.51% 0.0627 59.59);
        --warning-75: oklch(93.6% 0.0302 58.87);
        --warning-50: oklch(98.29% 0.0062 58.31);
        --shadow-s1: 0px 2px 2px rgba(0, 0, 0, 0.04), 0px 0px 1px rgba(0, 0, 0, 0.08);
        --shadow-s2: 4px 8px 10.1px -2.5px hsla(0, 0%, 4%, 0.08), 1.7px 3.3px 4.2px -1.7px hsla(0, 0%, 4%, 0.09), 0.7px 1.4px 1.8px -0.8px hsla(0, 0%, 4%, 0.1), 0px 0.5px 1.5px 0px hsla(0, 0%, 4%, 0.2);
        --dataGrid-rowBackground: var(--background);
        --dataGrid-rowBackgroundHover: color-mix(in oklab, var(--accent) 85%, transparent);
        --dataGrid-rowBackgroundActive: color-mix(in oklab, var(--accent) 90%, transparent);
        --dataGrid-rowBackgroundActiveHover: color-mix(in oklab, var(--accent) 95%, transparent);
        --dataGrid-nthRowBackground: color-mix(in oklab, var(--accent) 30%, transparent);
        --dataGrid-nthRowBackgroundHover: color-mix(in oklab, var(--accent) 85%, transparent);
        --dataGrid-nthRowBackgroundActive: color-mix(in oklab, var(--accent) 90%, transparent);
        --dataGrid-dangerRowBackground: color-mix(in oklab, var(--destructive) 70%, transparent);
        --dataGrid-dangerRowBackgroundActive: color-mix(in oklab, var(--destructive) 80%, transparent);
        --warning: var(--warning-300);
        --warning-foreground: var(--warning-800);
        --success: var(--success-300);
        --success-foreground: var(--success-800);
        --spacing: 0.25rem;
        --radius: 0.5rem;
        --background: var(--neutral-25);
        --foreground: var(--primary-850);
        --card: var(--neutral-25);
        --card: oklch(97.01% 0.003 297.91);
        --card-foreground: var(--neutral-900);
        --popover: var(--neutral-50);
        --popover-foreground: var(--neutral-900);
        --primary: var(--primary-700);
        --primary-foreground: var(--primary-50);
        --secondary: var(--secondary-250);
        --secondary-foreground: var(--secondary-850);
        --muted: var(--neutral-100);
        --muted-foreground: var(--neutral-800);
        --accent: var(--accent-100);
        --accent-foreground: var(--accent-850);
        --destructive: var(--danger-500);
        --border: var(--neutral-50);
        --input: var(--neutral-250);
        --ring: var(--primary-250);
        --bs-primary: var(--primary);
        --bs-secondary: #f39c12;
        --bs-body-font-family: 'Inter', sans-serif;
    }

    @media (min-width: 768px) {
        html {
            font-size: 16px;
        }
    }

    .btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
        box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
    }


    body {
        margin-bottom: 60px;
        font-family: 'Inter', sans-serif;
    }

    .form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
        color: var(--bs-secondary-color);
        text-align: end;
    }

    .form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
        text-align: start;
    }

    .body-bg {
        width: 100%;
        height: 100dvh;
        background-color: blueviolet;
        background-image: linear-gradient(to top right, #0e8be5, #071b2f);
        margin: 0px;
    }

    .h-1px {
        height: 1px !important;
    }


    .card-title {
        font-weight: 700;
    }

    .ws-label {
        font-size: 0.75rem;
        font-weight: 600;
        color: var(--muted-foreground);
    }

.form-label {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--muted-foreground);
    margin-bottom: 0px;
}

.form-check-label {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--muted-foreground);
    margin-bottom: 0px;
}

.btn-lg {
    font-weight: 500;
    font-size: 0.875rem;
}