:root {
  --media-sm: (min-width: 640px);
  --media-md: (min-width: 768px);
  --media-lg: (min-width: 1024px);
  --media-xl: (min-width: 1280px);
  --media-2xl: (min-width: 1440px);
  --color-gray-0: #f8f9fa;
  --color-gray-0-rgb: 248, 249, 250;
  --color-gray-1: #f1f3f5;
  --color-gray-1-rgb: 241, 243, 245;
  --color-gray-2: #e9ecef;
  --color-gray-2-rgb: 233, 236, 239;
  --color-gray-3: #dee2e6;
  --color-gray-3-rgb: 222, 226, 230;
  --color-gray-4: #ced4da;
  --color-gray-4-rgb: 206, 212, 218;
  --color-gray-5: #adb5bd;
  --color-gray-5-rgb: 173, 181, 189;
  --color-gray-6: #868e96;
  --color-gray-6-rgb: 134, 142, 150;
  --color-gray-7: #495057;
  --color-gray-7-rgb: 73, 80, 87;
  --color-gray-8: #343a40;
  --color-gray-8-rgb: 52, 58, 64;
  --color-gray-9: #212529;
  --color-gray-9-rgb: 33, 37, 41;
  --color-red-0: #fff5f5;
  --color-red-0-rgb: 255, 245, 245;
  --color-red-1: #ffe3e3;
  --color-red-1-rgb: 255, 227, 227;
  --color-red-2: #ffc9c9;
  --color-red-2-rgb: 255, 201, 201;
  --color-red-3: #ffa8a8;
  --color-red-3-rgb: 255, 168, 168;
  --color-red-4: #ff8787;
  --color-red-4-rgb: 255, 135, 135;
  --color-red-5: #ff6b6b;
  --color-red-5-rgb: 255, 107, 107;
  --color-red-6: #fa5252;
  --color-red-6-rgb: 250, 82, 82;
  --color-red-7: #f03e3e;
  --color-red-7-rgb: 240, 62, 62;
  --color-red-8: #e03131;
  --color-red-8-rgb: 224, 49, 49;
  --color-red-9: #c92a2a;
  --color-red-9-rgb: 201, 42, 42;
  --color-pink-0: #fff0f6;
  --color-pink-0-rgb: 255, 240, 246;
  --color-pink-1: #ffdeeb;
  --color-pink-1-rgb: 255, 222, 235;
  --color-pink-2: #fcc2d7;
  --color-pink-2-rgb: 252, 194, 215;
  --color-pink-3: #faa2c1;
  --color-pink-3-rgb: 250, 162, 193;
  --color-pink-4: #f783ac;
  --color-pink-4-rgb: 247, 131, 172;
  --color-pink-5: #f06595;
  --color-pink-5-rgb: 240, 101, 149;
  --color-pink-6: #e64980;
  --color-pink-6-rgb: 230, 73, 128;
  --color-pink-7: #d6336c;
  --color-pink-7-rgb: 214, 51, 108;
  --color-pink-8: #c2255c;
  --color-pink-8-rgb: 194, 37, 92;
  --color-pink-9: #a61e4d;
  --color-pink-9-rgb: 166, 30, 77;
  --color-grape-0: #f8f0fc;
  --color-grape-0-rgb: 248, 240, 252;
  --color-grape-1: #f3d9fa;
  --color-grape-1-rgb: 243, 217, 250;
  --color-grape-2: #eebefa;
  --color-grape-2-rgb: 238, 190, 250;
  --color-grape-3: #e599f7;
  --color-grape-3-rgb: 229, 153, 247;
  --color-grape-4: #da77f2;
  --color-grape-4-rgb: 218, 119, 242;
  --color-grape-5: #cc5de8;
  --color-grape-5-rgb: 204, 93, 232;
  --color-grape-6: #be4bdb;
  --color-grape-6-rgb: 190, 75, 219;
  --color-grape-7: #ae3ec9;
  --color-grape-7-rgb: 174, 62, 201;
  --color-grape-8: #9c36b5;
  --color-grape-8-rgb: 156, 54, 181;
  --color-grape-9: #862e9c;
  --color-grape-9-rgb: 134, 46, 156;
  --color-violet-0: #f3f0ff;
  --color-violet-0-rgb: 243, 240, 255;
  --color-violet-1: #e5dbff;
  --color-violet-1-rgb: 229, 219, 255;
  --color-violet-2: #d0bfff;
  --color-violet-2-rgb: 208, 191, 255;
  --color-violet-3: #b197fc;
  --color-violet-3-rgb: 177, 151, 252;
  --color-violet-4: #9775fa;
  --color-violet-4-rgb: 151, 117, 250;
  --color-violet-5: #845ef7;
  --color-violet-5-rgb: 132, 94, 247;
  --color-violet-6: #7950f2;
  --color-violet-6-rgb: 121, 80, 242;
  --color-violet-7: #7048e8;
  --color-violet-7-rgb: 112, 72, 232;
  --color-violet-8: #6741d9;
  --color-violet-8-rgb: 103, 65, 217;
  --color-violet-9: #5f3dc4;
  --color-violet-9-rgb: 95, 61, 196;
  --color-indigo-0: #edf2ff;
  --color-indigo-0-rgb: 237, 242, 255;
  --color-indigo-1: #dbe4ff;
  --color-indigo-1-rgb: 219, 228, 255;
  --color-indigo-2: #bac8ff;
  --color-indigo-2-rgb: 186, 200, 255;
  --color-indigo-3: #91a7ff;
  --color-indigo-3-rgb: 145, 167, 255;
  --color-indigo-4: #748ffc;
  --color-indigo-4-rgb: 116, 143, 252;
  --color-indigo-5: #5c7cfa;
  --color-indigo-5-rgb: 92, 124, 250;
  --color-indigo-6: #4c6ef5;
  --color-indigo-6-rgb: 76, 110, 245;
  --color-indigo-7: #4263eb;
  --color-indigo-7-rgb: 66, 99, 235;
  --color-indigo-8: #3b5bdb;
  --color-indigo-8-rgb: 59, 91, 219;
  --color-indigo-9: #364fc7;
  --color-indigo-9-rgb: 54, 79, 199;
  --color-blue-0: #e7f5ff;
  --color-blue-0-rgb: 231, 245, 255;
  --color-blue-1: #d0ebff;
  --color-blue-1-rgb: 208, 235, 255;
  --color-blue-2: #a5d8ff;
  --color-blue-2-rgb: 165, 216, 255;
  --color-blue-3: #74c0fc;
  --color-blue-3-rgb: 116, 192, 252;
  --color-blue-4: #4dabf7;
  --color-blue-4-rgb: 77, 171, 247;
  --color-blue-5: #339af0;
  --color-blue-5-rgb: 51, 154, 240;
  --color-blue-6: #228be6;
  --color-blue-6-rgb: 34, 139, 230;
  --color-blue-7: #1c7ed6;
  --color-blue-7-rgb: 28, 126, 214;
  --color-blue-8: #1971c2;
  --color-blue-8-rgb: 25, 113, 194;
  --color-blue-9: #1864ab;
  --color-blue-9-rgb: 24, 100, 171;
  --color-cyan-0: #e3fafc;
  --color-cyan-0-rgb: 227, 250, 252;
  --color-cyan-1: #c5f6fa;
  --color-cyan-1-rgb: 197, 246, 250;
  --color-cyan-2: #99e9f2;
  --color-cyan-2-rgb: 153, 233, 242;
  --color-cyan-3: #66d9e8;
  --color-cyan-3-rgb: 102, 217, 232;
  --color-cyan-4: #3bc9db;
  --color-cyan-4-rgb: 59, 201, 219;
  --color-cyan-5: #22b8cf;
  --color-cyan-5-rgb: 34, 184, 207;
  --color-cyan-6: #15aabf;
  --color-cyan-6-rgb: 21, 170, 191;
  --color-cyan-7: #1098ad;
  --color-cyan-7-rgb: 16, 152, 173;
  --color-cyan-8: #0c8599;
  --color-cyan-8-rgb: 12, 133, 153;
  --color-cyan-9: #0b7285;
  --color-cyan-9-rgb: 11, 114, 133;
  --color-teal-0: #e6fcf5;
  --color-teal-0-rgb: 230, 252, 245;
  --color-teal-1: #c3fae8;
  --color-teal-1-rgb: 195, 250, 232;
  --color-teal-2: #96f2d7;
  --color-teal-2-rgb: 150, 242, 215;
  --color-teal-3: #63e6be;
  --color-teal-3-rgb: 99, 230, 190;
  --color-teal-4: #38d9a9;
  --color-teal-4-rgb: 56, 217, 169;
  --color-teal-5: #20c997;
  --color-teal-5-rgb: 32, 201, 151;
  --color-teal-6: #12b886;
  --color-teal-6-rgb: 18, 184, 134;
  --color-teal-7: #0ca678;
  --color-teal-7-rgb: 12, 166, 120;
  --color-teal-8: #099268;
  --color-teal-8-rgb: 9, 146, 104;
  --color-teal-9: #087f5b;
  --color-teal-9-rgb: 8, 127, 91;
  --color-green-0: #ebfbee;
  --color-green-0-rgb: 235, 251, 238;
  --color-green-1: #d3f9d8;
  --color-green-1-rgb: 211, 249, 216;
  --color-green-2: #b2f2bb;
  --color-green-2-rgb: 178, 242, 187;
  --color-green-3: #8ce99a;
  --color-green-3-rgb: 140, 233, 154;
  --color-green-4: #69db7c;
  --color-green-4-rgb: 105, 219, 124;
  --color-green-5: #51cf66;
  --color-green-5-rgb: 81, 207, 102;
  --color-green-6: #40c057;
  --color-green-6-rgb: 64, 192, 87;
  --color-green-7: #37b24d;
  --color-green-7-rgb: 55, 178, 77;
  --color-green-8: #2f9e44;
  --color-green-8-rgb: 47, 158, 68;
  --color-green-9: #2b8a3e;
  --color-green-9-rgb: 43, 138, 62;
  --color-lime-0: #f4fce3;
  --color-lime-0-rgb: 244, 252, 227;
  --color-lime-1: #e9fac8;
  --color-lime-1-rgb: 233, 250, 200;
  --color-lime-2: #d8f5a2;
  --color-lime-2-rgb: 216, 245, 162;
  --color-lime-3: #c0eb75;
  --color-lime-3-rgb: 192, 235, 117;
  --color-lime-4: #a9e34b;
  --color-lime-4-rgb: 169, 227, 75;
  --color-lime-5: #94d82d;
  --color-lime-5-rgb: 148, 216, 45;
  --color-lime-6: #82c91e;
  --color-lime-6-rgb: 130, 201, 30;
  --color-lime-7: #74b816;
  --color-lime-7-rgb: 116, 184, 22;
  --color-lime-8: #66a80f;
  --color-lime-8-rgb: 102, 168, 15;
  --color-lime-9: #5c940d;
  --color-lime-9-rgb: 92, 148, 13;
  --color-yellow-0: #fff9db;
  --color-yellow-0-rgb: 255, 249, 219;
  --color-yellow-1: #fff3bf;
  --color-yellow-1-rgb: 255, 243, 191;
  --color-yellow-2: #ffec99;
  --color-yellow-2-rgb: 255, 236, 153;
  --color-yellow-3: #ffe066;
  --color-yellow-3-rgb: 255, 224, 102;
  --color-yellow-4: #ffd43b;
  --color-yellow-4-rgb: 255, 212, 59;
  --color-yellow-5: #fcc419;
  --color-yellow-5-rgb: 252, 196, 25;
  --color-yellow-6: #fab005;
  --color-yellow-6-rgb: 250, 176, 5;
  --color-yellow-7: #f59f00;
  --color-yellow-7-rgb: 245, 159, 0;
  --color-yellow-8: #f08c00;
  --color-yellow-8-rgb: 240, 140, 0;
  --color-yellow-9: #e67700;
  --color-yellow-9-rgb: 230, 119, 0;
  --color-orange-0: #fff4e6;
  --color-orange-0-rgb: 255, 244, 230;
  --color-orange-1: #ffe8cc;
  --color-orange-1-rgb: 255, 232, 204;
  --color-orange-2: #ffd8a8;
  --color-orange-2-rgb: 255, 216, 168;
  --color-orange-3: #ffc078;
  --color-orange-3-rgb: 255, 192, 120;
  --color-orange-4: #ffa94d;
  --color-orange-4-rgb: 255, 169, 77;
  --color-orange-5: #ff922b;
  --color-orange-5-rgb: 255, 146, 43;
  --color-orange-6: #fd7e14;
  --color-orange-6-rgb: 253, 126, 20;
  --color-orange-7: #f76707;
  --color-orange-7-rgb: 247, 103, 7;
  --color-orange-8: #e8590c;
  --color-orange-8-rgb: 232, 89, 12;
  --color-orange-9: #d9480f;
  --color-orange-9-rgb: 217, 72, 15;
  --space-2xs: .25rem;
  --space-xs: .5rem;
  --space-sm: 1rem;
  --space-md: 1.25rem;
  --space-lg: 1.5rem;
  --space-xl: 1.75rem;
  --space-2xl: 2rem;
  --space-3xl: 3rem;
  --space-4xl: 4rem;
  --space-5xl: 5rem;
  --space-6xl: 7.5rem;
  --space-7xl: 10rem;
  --space-8xl: 15rem;
  --space-9xl: 20rem;
  --space-10xl: 30rem;
  --size-full: 100%;
  --width-screen: 100vw;
  --height-screen: 100vh;
  --radius-none: 0px;
  --radius-sm: 0.125rem;
  --radius-default: 0.25rem;
  --radius-md: 0.375rem;
  --radius-lg: 0.5rem;
  --radius-xl: 0.75rem;
  --radius-2xl: 1rem;
  --radius-3xl: 1.5rem;
  --radius-full: 9999px;
  --shadow-sm: 0px 1px 2px 0px rgba(0, 0, 0, 0.05);
  --shadow-default: 0px 1px 3px 0px rgba(0, 0, 0, 0.1), 0px 1px 2px -1px rgba(0, 0, 0, 0.1);
  --shadow-md: 0px 4px 6px -1px rgba(0, 0, 0, 0.1), 0px 2px 4px -2px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0px 10px 15px -3px rgba(0, 0, 0, 0.1), 0px 4px 6px -4px rgba(0, 0, 0, 0.1);
  --shadow-xl: 0px 20px 25px -5px rgba(0, 0, 0, 0.1), 0px 8px 10px -6px rgba(0, 0, 0, 0.1);
  --shadow-2xl: 0px 25px 50px -12px rgba(0, 0, 0, 0.25);
  --shadow-none: 0px 0px 0px 0px rgba(0, 0, 0, 0);
  --font-sans: system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif;
  --font-serif: ui-serif, serif;
  --font-mono: "Dank Mono", "Operator Mono", Inconsolata, "Fira Mono", ui-monospace, "SF Mono", Monaco, "Droid Sans Mono", "Source Code Pro", monospace;
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-default: 1rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-size-2xl: 1.5rem;
  --font-size-3xl: 1.875rem;
  --font-size-4xl: 2.25rem;
  --font-size-5xl: 3rem;
  --font-size-6xl: 3.75rem;
  --font-size-7xl: 4.5rem;
  --font-size-8xl: 6rem;
  --font-size-9xl: 8rem;
  --font-weight-thin: 100;
  --font-weight-extralight: 200;
  --font-weight-light: 300;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;
  --font-weight-black: 900;
  --line-height-none: 1;
  --line-height-tight: 1.25;
  --line-height-snug: 1.375;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.625;
  --line-height-loose: 2;
  --letter-spacing-tighter: -0.05em;
  --letter-spacing-tight: -0.025em;
  --letter-spacing-normal: 0em;
  --letter-spacing-wide: 0.025em;
  --letter-spacing-wider: 0.05em;
  --letter-spacing-widest: 0.1em;
  --easing-sine-in: cubic-bezier(0.12, 0, 0.39, 0);
  --easing-sine-out: cubic-bezier(0.61, 1, 0.88, 1);
  --easing-sine-in-out: cubic-bezier(0.37, 0, 0.63, 1);
  --easing-quadratic-in: cubic-bezier(0.11, 0, 0.5, 0);
  --easing-quadratic-out: cubic-bezier(0.5, 1, 0.89, 1);
  --easing-quadratic-in-out: cubic-bezier(0.45, 0, 0.55, 1);
  --easing-cubic-in: cubic-bezier(0.32, 0, 0.67, 0);
  --easing-cubic-out: cubic-bezier(0.33, 1, 0.68, 1);
  --easing-cubic-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --easing-quartic-in: cubic-bezier(0.5, 0, 0.75, 0);
  --easing-quartic-out: cubic-bezier(0.25, 1, 0.5, 1);
  --easing-quartic-in-out: cubic-bezier(0.76, 0, 0.24, 1);
  --easing-quintic-in: cubic-bezier(0.64, 0, 0.78, 0);
  --easing-quintic-out: cubic-bezier(0.22, 1, 0.36, 1);
  --easing-quintic-in-out: cubic-bezier(0.83, 0, 0.17, 1);
  --easing-exponential-in: cubic-bezier(0.7, 0, 0.84, 0);
  --easing-exponential-out: cubic-bezier(0.16, 1, 0.3, 1);
  --easing-exponential-in-out: cubic-bezier(0.87, 0, 0.13, 1);
  --easing-circular-in: cubic-bezier(0.55, 0, 1, 0.45);
  --easing-circular-out: cubic-bezier(0, 0.55, 0.45, 1);
  --easing-circular-in-out: cubic-bezier(0.85, 0, 0.15, 1);
  --easing-back-in: cubic-bezier(0.36, 0, 0.66, -0.56);
  --easing-back-out: cubic-bezier(0.34, 1.56, 0.64, 1);
  --easing-back-in-out: cubic-bezier(0.68, -0.6, 0.32, 1.6);
  --tokencss: 1;
  --tokencss-media: var(--media-sm), var(--media-md), var(--media-lg), var(--media-xl), var(--media-2xl);
}
/*! tailwindcss v4.1.3 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-space-y-reverse: 0;
      --tw-border-style: solid;
      --tw-font-weight: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-duration: initial;
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --color-red-500: oklch(.637 .237 25.331);
    --color-indigo-500: oklch(.585 .233 277.117);
    --color-indigo-600: oklch(.511 .262 276.966);
    --color-indigo-700: oklch(.457 .24 277.023);
    --color-gray-50: oklch(.985 .002 247.839);
    --color-gray-100: oklch(.967 .003 264.542);
    --color-gray-200: oklch(.928 .006 264.531);
    --color-gray-300: oklch(.872 .01 258.338);
    --color-gray-400: oklch(.707 .022 261.325);
    --color-gray-500: oklch(.551 .027 264.364);
    --color-gray-600: oklch(.446 .03 256.802);
    --color-gray-700: oklch(.373 .034 259.733);
    --color-gray-800: oklch(.278 .033 256.848);
    --color-gray-900: oklch(.21 .034 264.665);
    --color-white: #fff;
    --spacing: .25rem;
    --container-7xl: 80rem;
    --text-xs: .75rem;
    --text-xs--line-height: calc(1 / .75);
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25 / .875);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --radius-lg: .5rem;
    --radius-xl: .75rem;
    --radius-2xl: 1rem;
    --animate-spin: spin 1s linear infinite;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-sans);
    --default-font-feature-settings: var(--font-sans--font-feature-settings);
    --default-font-variation-settings: var(--font-sans--font-variation-settings);
    --default-mono-font-family: var(--font-mono);
    --default-mono-font-feature-settings: var(--font-mono--font-feature-settings);
    --default-mono-font-variation-settings: var(--font-mono--font-variation-settings);
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    -moz-tab-size: 4;
      -o-tab-size: 4;
         tab-size: 4;
    line-height: 1.5;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

  body {
    line-height: inherit;
  }

  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }

  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }

  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }

  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

  sub, sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

  ol, ul, menu {
    list-style: none;
  }

  img, svg, video, canvas, audio, iframe, embed, object {
    vertical-align: middle;
    display: block;
  }

  img, video {
    max-width: 100%;
    height: auto;
  }

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }

  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }

  ::file-selector-button {
    margin-inline-end: 4px;
  }

  ::-moz-placeholder {
    opacity: 1;
    color: currentColor;
  }

  ::placeholder {
    opacity: 1;
    color: currentColor;
  }

  @supports (color: color-mix(in lab, red, red)) {
    ::-moz-placeholder {
      color: color-mix(in oklab, currentColor 50%, transparent);
    }
    ::placeholder {
      color: color-mix(in oklab, currentColor 50%, transparent);
    }
  }

  textarea {
    resize: vertical;
  }

  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }

  ::-webkit-datetime-edit {
    display: inline-flex;
  }

  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  :-moz-ui-invalid {
    box-shadow: var(--shadow-none);
  }

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    -webkit-appearance: button;
       -moz-appearance: button;
            appearance: button;
  }

  ::file-selector-button {
    -webkit-appearance: button;
       -moz-appearance: button;
            appearance: button;
  }

  ::-webkit-inner-spin-button {
    height: auto;
  }

  ::-webkit-outer-spin-button {
    height: auto;
  }

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}

@layer components;

@layer utilities {
  .container {
    width: 100%;
  }

  @media (width >= 40rem) {
    .container {
      max-width: 40rem;
    }
  }

  @media (width >= 48rem) {
    .container {
      max-width: 48rem;
    }
  }

  @media (width >= 64rem) {
    .container {
      max-width: 64rem;
    }
  }

  @media (width >= 80rem) {
    .container {
      max-width: 80rem;
    }
  }

  @media (width >= 96rem) {
    .container {
      max-width: 96rem;
    }
  }

  .mx-auto {
    margin-inline: auto;
  }

  .my-1 {
    margin-block: calc(var(--spacing) * 1);
  }

  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }

  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }

  .mr-2 {
    margin-right: calc(var(--spacing) * 2);
  }

  .mr-3 {
    margin-right: calc(var(--spacing) * 3);
  }

  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }

  .ml-4 {
    margin-left: calc(var(--spacing) * 4);
  }

  .block {
    display: block;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .h-4 {
    height: calc(var(--spacing) * 4);
  }

  .max-h-\[400px\] {
    max-height: 400px;
  }

  .min-h-screen {
    min-height: 100vh;
  }

  .w-4 {
    width: calc(var(--spacing) * 4);
  }

  .w-full {
    width: 100%;
  }

  .max-w-7xl {
    max-width: var(--container-7xl);
  }

  .flex-1 {
    flex: 1;
  }

  .flex-shrink-0 {
    flex-shrink: 0;
  }

  .animate-spin {
    animation: var(--animate-spin);
  }

  .cursor-pointer {
    cursor: pointer;
  }

  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .flex-col {
    flex-direction: column;
  }

  .items-center {
    align-items: center;
  }

  .items-end {
    align-items: flex-end;
  }

  .items-start {
    align-items: flex-start;
  }

  .justify-between {
    justify-content: space-between;
  }

  .justify-center {
    justify-content: center;
  }

  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }

  :where(.space-y-2 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-3 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-4 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-6 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-8 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
  }

  .truncate {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }

  .overflow-y-auto {
    overflow-y: auto;
  }

  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }

  .rounded-full {
    border-radius: 3.40282e38px;
  }

  .rounded-lg {
    border-radius: var(--radius-lg);
  }

  .rounded-xl {
    border-radius: var(--radius-xl);
  }

  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .border-gray-200 {
    border-color: var(--color-gray-200);
  }

  .border-gray-300 {
    border-color: var(--color-gray-300);
  }

  .bg-gray-50 {
    background-color: var(--color-gray-50);
  }

  .bg-gray-100 {
    background-color: var(--color-gray-100);
  }

  .bg-indigo-600 {
    background-color: var(--color-indigo-600);
  }

  .bg-white {
    background-color: var(--color-white);
  }

  .p-2 {
    padding: calc(var(--spacing) * 2);
  }

  .p-3 {
    padding: calc(var(--spacing) * 3);
  }

  .p-4 {
    padding: calc(var(--spacing) * 4);
  }

  .p-6 {
    padding: calc(var(--spacing) * 6);
  }

  .p-8 {
    padding: calc(var(--spacing) * 8);
  }

  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }

  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }

  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }

  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }

  .text-center {
    text-align: center;
  }

  .font-sans {
    font-family: var(--font-sans);
  }

  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }

  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }

  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }

  .font-extrabold {
    --tw-font-weight: var(--font-weight-extrabold);
    font-weight: var(--font-weight-extrabold);
  }

  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .text-gray-400 {
    color: var(--color-gray-400);
  }

  .text-gray-500 {
    color: var(--color-gray-500);
  }

  .text-gray-600 {
    color: var(--color-gray-600);
  }

  .text-gray-700 {
    color: var(--color-gray-700);
  }

  .text-gray-800 {
    color: var(--color-gray-800);
  }

  .text-gray-900 {
    color: var(--color-gray-900);
  }

  .text-indigo-500 {
    color: var(--color-indigo-500);
  }

  .text-white {
    color: var(--color-white);
  }

  .opacity-25 {
    opacity: .25;
  }

  .opacity-75 {
    opacity: .75;
  }

  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .duration-200 {
    --tw-duration: .2s;
    transition-duration: .2s;
  }

  @media (hover: hover) {
    .hover\:bg-indigo-700:hover {
      background-color: var(--color-indigo-700);
    }

    .hover\:text-red-500:hover {
      color: var(--color-red-500);
    }
  }

  .focus\:ring-2:focus {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .focus\:ring-indigo-500:focus {
    --tw-ring-color: var(--color-indigo-500);
  }

  @media (width >= 48rem) {
    .md\:p-8 {
      padding: calc(var(--spacing) * 8);
    }
  }

  @media (width >= 64rem) {
    .lg\:col-span-2 {
      grid-column: span 2 / span 2;
    }

    .lg\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
}

html, body {
  background: #f4f6fa;
  height: 100%;
  margin: 0;
  padding: 0;
  font-family: Inter, Arial, sans-serif;
}

#main-layout {
  min-height: 100vh;
  display: flex;
}

#sidebar {
  background: #fff;
  border-right: 1px solid #e6e7ec;
  width: 370px;
  min-height: 100vh;
  padding: 0 0 20px;
  overflow-y: auto;
  box-shadow: 2px 0 14px #28284614;
}

#sidebar h2 {
  margin: 0;
  padding: 28px 22px 14px;
  font-size: 1.35rem;
}

#sidebar label {
  margin: 14px 0 6px 22px;
  font-weight: 600;
  display: block;
}

#sidebar select, #sidebar input[type="text"] {
  background: #f8fafd;
  border: 1px solid #e2e3ea;
  border-radius: 7px;
  width: 86%;
  margin-bottom: 10px;
  margin-left: 22px;
  padding: 8px 10px;
  font-size: 1rem;
}

#sidebar button {
  color: #fff;
  cursor: pointer;
  background: #387bf9;
  border: none;
  border-radius: 6px;
  margin-top: 5px;
  margin-left: 22px;
  padding: 8px 14px;
  font-size: 1rem;
  font-weight: 600;
  transition: background .14s;
}

#sidebar button:disabled {
  cursor: not-allowed;
  background: #9abff7;
}

#sidebar .divider {
  border-bottom: 1px solid #f0f2f6;
  margin: 18px 0 14px;
}

#sidebar #log {
  color: #252738;
  background: #f7fafd;
  border: 1px solid #e6e7ec;
  border-radius: 8px;
  min-height: 68px;
  max-height: 150px;
  margin: 0 22px;
  padding: 10px;
  font-size: .97rem;
  overflow-y: auto;
}

#map {
  z-index: 2;
  flex: 1;
  min-width: 0;
  height: 100vh;
}

@media (width <= 1000px) {
  #sidebar {
    display: none;
  }

  #map {
    min-width: 100vw;
  }
}

@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-font-weight {
  syntax: "*";
  inherits: false
}

@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-ring-inset {
  syntax: "*";
  inherits: false
}

@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}

@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-duration {
  syntax: "*";
  inherits: false
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
