@import url("https://fonts.googleapis.com/css2?family=Saira:wght@100;200;300;400;500;600;700;800;900&display=swap");
:root {
  --color-primary: blue;
  --color-primary-light: rgba(255, 89, 89, 0.6);
  --color-primary-shadow: rgba(255, 89, 89, 0.3);
  --color-background: linear-gradient(180deg, #061516 0%, #061415 50%, #051316 100%);
  --color-background-transparent: transparent;
  --color-text-primary: #ffffff;
  --color-text-secondary: #cccccc;
  --color-text-muted: #999999;
  --color-border: #333333;
  --color-shadow: rgba(0, 0, 0, 0.2);
  --color-success: #4caf50;
  --color-warning: #ff9800;
  --color-error: #ff0000;
  --color-info: #2196f3;
  --font-family-primary: "Saira", sans-serif;
  --font-size-xs: 8px;
  --font-size-sm: 10px;
  --font-size-md: 12px;
  --font-size-lg: 18px;
  --font-size-xl: 24px;
  --font-size-xxl: 32px;
  --spacing-xs: 4px;
  --spacing-sm: 10px;
  --spacing-md: 12px;
  --spacing-lg: 20px;
  --spacing-xl: 32px;
  --spacing-xxl: 48px;
  --border-radius-sm: 4px;
  --border-radius-md: 8px;
  --border-radius-lg: 16px;
  --border-radius-full: 50%;
  --z-index-dropdown: 1000;
  --z-index-modal: 2000;
  --z-index-tooltip: 3000;
  --transition-fast: 0.2s ease;
  --transition-normal: 0.3s ease;
  --transition-slow: 0.5s ease;
  --animation-breathe-normal: 1.5s;
  --animation-breathe-fast: 1s;
  --font-weight-thin: 100; /* Thin */
  --font-weight-extra-light: 200; /* Extra Light (Ultra Light) */
  --font-weight-light: 300; /* Light */
  --font-weight-normal: 400; /* Normal / Regular */
  --font-weight-medium: 500; /* Medium */
  --font-weight-semi-bold: 600; /* Semi Bold (Demi Bold) */
  --font-weight-bold: 700; /* Bold */
  --font-weight-extra-bold: 800; /* Extra Bold (Ultra Bold) */
  --font-weight-black: 900; /* Black (Heavy) */
  --recenter-icon-size-wd: 44px;
  --recenter-icon-size-hg: 44px;
  --info-accent-color: #00ECFF;
  --bg-info-window-gradient: linear-gradient(248.56deg, #0D433A 0.04%, #0E2328 100%);
  --icon-size-sm: 20px;
  --line-height-geo-coding: 1.5;
  --letter-spacing-geo-coding: 1.1px;
  --marker-size: 35px;
  --marker-margin-bottom: -20px;
  --marker-hover-brightness: 1.4;
  --marker-hover-saturation: 1.2;
  --marker-scale-hover: 1.08;
  --marker-scale-normal: 1;
  --pin-background: #EA4335;
  --pin-border-color: #EA4335;
  --pin-glyph-color: #B01D1D;
  --polyline-color: #104583;
  --bg-error-popover: linear-gradient(180deg, #061516 0%, #061415 50%, #051316 100%);
  --bg-error-btn-gradient: linear-gradient(94.02deg, #0EFF87 11.58%, #00ECFF 100%);
  --color-error-text-primary: #ffffff;
  --color-error-text-secondary: rgba(255, 255, 255, 0.8);
  --color-error-text-black: #000000;
  --color-error-border: rgba(255, 255, 255, 0.2);
  --color-error-divider: rgba(255, 255, 255, 0.1);
  --color-error-shadow: rgba(0, 0, 0, 0.3);
  --color-error-hover-bg: rgba(255, 255, 255, 0.1);
  --spacing-error-popover: 24px;
  --spacing-error-close-top: 12px;
  --spacing-error-close-right: 12px;
  --spacing-error-close-padding: 8px;
  --spacing-error-title-mb: 8px;
  --spacing-error-content-mb: 24px;
  --spacing-error-divider: 16px;
  --spacing-error-btn-vertical: 12px;
  --spacing-error-btn-horizontal: 40px;
  --spacing-error-btn-gap: 8px;
  --font-error-title-size: 24px;
  --font-error-content-size: 16px;
  --font-error-btn-size: 16px;
  --font-error-title-weight: 500;
  --font-error-content-weight: 400;
  --font-error-btn-weight: 600;
  --font-error-content-line: 1.4;
  --radius-error-popover: 24px;
  --radius-error-btn: 12px;
  --z-error-popover: 9999;
  --transition-error-slide: 0.3s ease-out;
  --icon-error-refresh: 32px;
  --error-icon-size-wd: 58px;
  --error-icon-size-hg: 58px;
  --error-spacing-sm: 10px;
}
body, html, #root {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  font-family: var(--font-family-primary);
  background: var(--color-background);
  color: var(--color-text-primary);
}
[data-theme=customer1] {
  --color-primary: #4a90e2;
  --color-primary-light: rgba(74, 144, 226, 0.6);
  --color-primary-shadow: rgba(74, 144, 226, 0.3);
  --color-background: #1a1a2e;
  --color-background-transparent: transparent;
  --color-text-primary: red;
  --color-text-secondary: red;
  --color-text-muted: #a0aec0;
  --color-border: #2e3b55;
  --color-shadow: rgba(0, 0, 0, 0.25);
  --color-success: #00c853;
  --color-warning: #ffb300;
  --color-error: #e53935;
  --color-info: #29b6f6;
  --font-family-primary: "Saira", sans-serif;
  --font-size-xs: 8px;
  --font-size-sm: 9px;
  --font-size-md: 11px;
  --font-size-lg: 18px;
  --font-size-xl: 24px;
  --font-size-xxl: 32px;
  --spacing-xs: 4px;
  --spacing-sm: 10px;
  --spacing-md: 12px;
  --spacing-lg: 20px;
  --spacing-xl: 32px;
  --spacing-xxl: 48px;
  --border-radius-sm: 4px;
  --border-radius-md: 8px;
  --border-radius-lg: 16px;
  --border-radius-full: 50%;
  --z-index-dropdown: 1000;
  --z-index-modal: 2000;
  --z-index-tooltip: 3000;
  --transition-fast: 0.2s ease;
  --transition-normal: 0.3s ease;
  --transition-slow: 0.5s ease;
  --animation-breathe-normal: 1.5s;
  --animation-breathe-fast: 1s;
  --recenter-icon-size-wd: 44px;
  --recenter-icon-size-hg: 44px;
  --info-accent-color: #6bb6ff;
  --bg-info-window-gradient: linear-gradient(248.56deg, #1b3b6f 0.04%, #152850 100%);
  --icon-size-sm: 20px;
  --marker-size: 40px;
  --marker-margin-bottom: -20px;
  --marker-hover-brightness: 1.4;
  --marker-hover-saturation: 1.2;
  --marker-scale-hover: 1.1;
  --marker-scale-normal: 1;
  --pin-background: #4a90e2;
  --pin-border-color: #3a7bc8;
  --pin-glyph-color: #2563eb;
  --bg-error-popover: linear-gradient(180deg, #2a2a4e 0%, #1a1a3e 50%, #0a0a2e 100%);
  --bg-error-btn-gradient: linear-gradient(94.02deg, #4a90e2 11.58%, #6bb6ff 100%);
  --color-error-text-primary: #ffffff;
  --color-error-text-secondary: rgba(255, 255, 255, 0.85);
  --color-error-text-black: #000000;
  --color-error-border: rgba(255, 255, 255, 0.2);
  --color-error-divider: rgba(255, 255, 255, 0.1);
  --color-error-shadow: rgba(0, 0, 0, 0.3);
  --color-error-hover-bg: rgba(255, 255, 255, 0.1);
  --spacing-error-popover: 24px;
  --spacing-error-close-top: 12px;
  --spacing-error-close-right: 12px;
  --spacing-error-close-padding: 8px;
  --spacing-error-title-mb: 8px;
  --spacing-error-content-mb: 24px;
  --spacing-error-divider: 16px;
  --spacing-error-btn-vertical: 12px;
  --spacing-error-btn-horizontal: 40px;
  --spacing-error-btn-gap: 8px;
  --font-error-title-size: 24px;
  --font-error-content-size: 16px;
  --font-error-btn-size: 16px;
  --font-error-title-weight: 500;
  --font-error-content-weight: 400;
  --font-error-btn-weight: 600;
  --font-error-content-line: 1.4;
  --radius-error-popover: 24px;
  --radius-error-btn: 12px;
  --z-error-popover: 9999;
  --transition-error-slide: 0.3s ease-out;
  --icon-error-refresh: 32px;
  --error-icon-size-wd: 58px;
  --error-icon-size-hg: 58px;
  --error-spacing-sm: 10px;
}
.marker-icon {
  width: var(--marker-size);
  height: var(--marker-size);
  margin-bottom: var(--marker-margin-bottom);
  transition: filter var(--transition-fast);
  animation: breathe var(--animation-breathe-normal) ease-in-out infinite;
  cursor: pointer;
  border-radius: var(--border-radius-full);
}
.marker-icon:hover {
  filter: brightness(var(--marker-hover-brightness)) saturate(var(--marker-hover-saturation));
  animation-duration: var(--animation-breathe-fast);
}
body.custom-info-visible .gm-style-iw-d {
  background: var(--color-background-transparent) !important;
  box-shadow: none !important;
  padding: 0 !important;
  display: contents !important;
}
body.custom-info-visible .gm-style-iw {
  background: var(--color-background-transparent) !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
body.custom-info-visible .gm-style-iw-c {
  padding: 0 !important;
}
body.custom-info-visible .gm-style-iw-tc {
  display: none !important;
}
body.custom-info-visible .gm-ui-hover-effect {
  display: none !important;
}
@keyframes breathe {
  0% {
    transform: scale(var(--marker-scale-normal));
    filter: brightness(1) drop-shadow(0 0 5px var(--color-primary-shadow));
  }
  50% {
    transform: scale(var(--marker-scale-hover));
    filter: brightness(1.2) drop-shadow(0 0 15px var(--color-primary-light));
  }
  100% {
    transform: scale(var(--marker-scale-normal));
    filter: brightness(1) drop-shadow(0 0 5px var(--color-primary-shadow));
  }
}