/* [project]/app/globals.css [app-client] (css) */
@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-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --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-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --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-white: #fff;
    --spacing: .25rem;
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25 / .875);
    --font-weight-medium: 500;
    --radius-2xl: 1rem;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}

@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%;
    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;
  }

  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;
    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;
  }

  ::placeholder {
    opacity: 1;
  }

  @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      ::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;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

  :-moz-ui-invalid {
    box-shadow: none;
  }

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

  ::file-selector-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 {
  .visible {
    visibility: visible;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .start {
    inset-inline-start: var(--spacing);
  }

  .container {
    width: 100%;
  }

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

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

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

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

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

  .flex {
    display: flex;
  }

  .hidden {
    display: none;
  }

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

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

  .min-w-\[240px\] {
    min-width: 240px;
  }

  .flex-1 {
    flex: 1;
  }

  .transform {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

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

  .flex-wrap {
    flex-wrap: wrap;
  }

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

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

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

  .border-\[var\(--border\)\] {
    border-color: var(--border);
  }

  .bg-\[var\(--background\)\] {
    background-color: var(--background);
  }

  .bg-\[var\(--brand-primary\)\] {
    background-color: var(--brand-primary);
  }

  .bg-\[var\(--surface\)\] {
    background-color: var(--surface);
  }

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

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

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

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

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

  .text-\[var\(--text-primary\)\] {
    color: var(--text-primary);
  }

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

  .ring {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + 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);
  }

  .filter {
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-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, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .duration-300 {
    --tw-duration: .3s;
    transition-duration: .3s;
  }

  @media (min-width: 64rem) {
    .lg\:flex {
      display: flex;
    }
  }

  @media (min-width: 64rem) {
    .lg\:hidden {
      display: none;
    }
  }

  @media (min-width: 64rem) {
    .lg\:w-\[280px\] {
      width: 280px;
    }
  }

  @media (min-width: 64rem) {
    .lg\:flex-col {
      flex-direction: column;
    }
  }
}

:root {
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light;
  --brand-primary: #00234a;
  --accent-amber: #c48a3a;
  --background: #f2f4f7;
  --background-strong: #e9edf2;
  --surface: #fffffff5;
  --surface-strong: #fff;
  --surface-muted: #eef1f4;
  --foreground: #0f172a;
  --text-primary: #0f172a;
  --text-secondary: #475569;
  --muted: #64748b;
  --border: #d9e2ec;
  --line: #0f172a14;
  --line-strong: #0f172a24;
  --accent: var(--brand-primary);
  --accent-soft: #00234a14;
  --entry: #1b6f5c;
  --exit: #b8613c;
  --warning: #b78131;
  --offline: #8a5560;
  --shadow: 0 8px 22px #0f172a0a;
  --shadow-strong: 0 14px 34px #00234a14;
}

[data-theme="dark"] {
  --lightningcss-light: ;
  --lightningcss-dark: initial;
  color-scheme: dark;
  --brand-primary: #5d8dc6;
  --accent-amber: #d9a055;
  --background: #08111d;
  --background-strong: #0d1724;
  --surface: #0d1b2aeb;
  --surface-strong: #0d1b2a;
  --surface-muted: #132338;
  --foreground: #e6edf5;
  --text-primary: #e6edf5;
  --text-secondary: #9fb0c3;
  --muted: #8ca0b5;
  --border: #22364f;
  --line: #9fb0c31f;
  --line-strong: #9fb0c333;
  --accent: var(--brand-primary);
  --accent-soft: #5d8dc61f;
  --entry: #60b39c;
  --exit: #d58b67;
  --warning: #d3a14f;
  --offline: #b17e89;
  --shadow: 0 28px 70px #020a1273;
  --shadow-strong: 0 36px 90px #020a128c;
}

* {
  box-sizing: border-box;
}

html {
  min-height: 100%;
}

body {
  min-height: 100vh;
  color: var(--text-primary);
  background: linear-gradient(180deg, var(--background), var(--background-strong));
  margin: 0;
  font-family: Segoe UI, Helvetica Neue, Arial, sans-serif;
  transition: background-color .18s, color .18s;
}

a, button {
  color: inherit;
  font: inherit;
}

button {
  cursor: pointer;
}

img {
  max-width: 100%;
  display: block;
}

.brand-logo {
  align-items: center;
  display: inline-flex;
}

.brand-logo img {
  max-width: 100%;
  height: auto;
  display: block;
}

.brand-logo-sidebar {
  flex: none;
  width: 148px;
}

.brand-logo-hero {
  width: 182px;
}

::selection {
  background: var(--brand-primary);
}

@supports (color: color-mix(in lab, red, red)) {
  ::selection {
    background: color-mix(in srgb, var(--brand-primary) 20%, transparent);
  }
}

::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-thumb {
  background: var(--brand-primary);
}

@supports (color: color-mix(in lab, red, red)) {
  ::-webkit-scrollbar-thumb {
    background: color-mix(in srgb, var(--brand-primary) 20%, var(--border));
  }
}

::-webkit-scrollbar-thumb {
  border-radius: 999px;
}

::-webkit-scrollbar-track {
  background: none;
}

.dashboard-shell, .visitor-shell {
  gap: 24px;
  width: min(1520px, 100% - 32px);
  margin: 0 auto;
  padding: 0;
  display: grid;
}

.masthead, .visitor-hero, .summary-card, .board-panel, .timeline-card, .plate-card, .heartbeat-card, .visitor-card, .visitor-result-card {
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
}

.masthead, .visitor-hero {
  background: linear-gradient(135deg, #fffdf8f2, #dfefecd1);
  border-radius: 30px;
  grid-template-columns: minmax(0, 1.2fr) minmax(250px, .8fr);
  gap: 24px;
  padding: 28px;
  display: grid;
}

.visitor-hero {
  grid-template-columns: 1fr;
}

.eyebrow, .panel-kicker, .summary-label {
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--muted);
  margin: 0 0 8px;
  font-family: Menlo, Monaco, monospace;
  font-size: .74rem;
}

.masthead h1, .visitor-hero h1 {
  max-width: 12ch;
  margin: 0;
  font-size: clamp(2.6rem, 5vw, 5.2rem);
  line-height: .98;
}

.visitor-hero h1 {
  max-width: 14ch;
}

.hero-copy {
  max-width: 62ch;
  color: var(--muted);
  margin: 18px 0 0;
  line-height: 1.55;
}

.masthead-actions {
  align-content: start;
  gap: 12px;
  display: grid;
}

.primary-button, .secondary-button, .pill, .soft-tag, .control-input, .control-textarea, .tab-button {
  border-radius: 10px;
}

.primary-button {
  background: var(--brand-primary);
  color: #fff;
  box-shadow: none;
  border: 0;
  padding: 11px 16px;
  transition: transform .16s, box-shadow .16s, opacity .16s;
}

.primary-button:hover {
  transform: translateY(-1px);
}

.secondary-button {
  border: 1px solid var(--border);
  background: var(--surface);
  padding: 10px 14px;
  transition: background-color .16s, transform .16s;
}

.secondary-button:hover {
  background: var(--surface-muted);
  transform: translateY(-1px);
}

.danger-button {
  color: var(--brand-primary-strong);
  background: #c05c3414;
  border: 1px solid #c05c3447;
  border-radius: 10px;
  padding: 10px 14px;
  transition: background-color .16s, transform .16s;
}

.danger-button:hover {
  background: #c05c3424;
  transform: translateY(-1px);
}

.control-input, .control-textarea {
  border: 1px solid var(--border);
  background: var(--surface-strong);
  width: 100%;
  color: var(--text-primary);
  box-shadow: none;
  padding: 11px 12px;
  transition: border-color .16s, box-shadow .16s, background-color .16s;
}

.control-input:focus, .control-textarea:focus {
  border-color: var(--brand-primary);
  outline: none;
}

@supports (color: color-mix(in lab, red, red)) {
  .control-input:focus, .control-textarea:focus {
    border-color: color-mix(in srgb, var(--brand-primary) 60%, var(--border));
  }
}

.control-input:focus, .control-textarea:focus {
  box-shadow: 0 0 0 4px var(--brand-primary);
}

@supports (color: color-mix(in lab, red, red)) {
  .control-input:focus, .control-textarea:focus {
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--brand-primary) 12%, transparent);
  }
}

.control-textarea {
  resize: vertical;
  border-radius: 10px;
  min-height: 120px;
}

.portal-app-shell {
  background: var(--background);
}

.app-sidebar {
  border-right: 1px solid var(--border);
  background: var(--surface);
}

@supports (color: color-mix(in lab, red, red)) {
  .app-sidebar {
    background: color-mix(in srgb, var(--surface) 90%, var(--background) 10%);
  }
}

.app-sidebar {
  padding: 0;
}

.app-brand {
  border-bottom: 1px solid var(--border);
  place-items: center;
  gap: 0;
  padding: 22px 18px 20px;
  display: grid;
}

.app-brand-caption {
  color: var(--muted);
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: .76rem;
}

.app-installation, .app-status-card {
  border: 1px solid var(--border);
  background: var(--surface);
  gap: 6px;
  margin: 16px 18px 0;
  padding: 14px 14px 13px;
  display: grid;
}

.app-installation-title, .app-status-card strong {
  margin: 0;
  font-size: .98rem;
  font-weight: 600;
}

.app-installation-meta, .app-status-card span {
  color: var(--text-secondary);
  font-size: .86rem;
  line-height: 1.45;
}

.app-nav {
  gap: 4px;
  margin-top: 16px;
  padding: 0 12px 18px;
  display: grid;
}

.app-nav-link, .app-subnav-link {
  min-height: 40px;
  color: var(--text-secondary);
  border: 1px solid #0000;
  border-radius: 6px;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  text-decoration: none;
  transition: background-color .16s, border-color .16s, color .16s;
  display: flex;
}

.app-nav-link:hover, .app-subnav-link:hover, .settings-side-link:hover {
  background: var(--surface-muted);
  color: var(--text-primary);
}

.app-nav-link-active, .app-subnav-link-active, .settings-side-link-active {
  border-color: var(--border);
  background: var(--brand-primary);
}

@supports (color: color-mix(in lab, red, red)) {
  .app-nav-link-active, .app-subnav-link-active, .settings-side-link-active {
    background: color-mix(in srgb, var(--brand-primary) 8%, var(--surface));
  }
}

.app-nav-link-active, .app-subnav-link-active, .settings-side-link-active {
  color: var(--brand-primary);
  font-weight: 600;
}

.app-nav-link-active .app-nav-icon {
  border-color: var(--brand-primary);
}

@supports (color: color-mix(in lab, red, red)) {
  .app-nav-link-active .app-nav-icon {
    border-color: color-mix(in srgb, var(--brand-primary) 22%, var(--border));
  }
}

.app-nav-link-active .app-nav-icon {
  background: var(--brand-primary);
}

@supports (color: color-mix(in lab, red, red)) {
  .app-nav-link-active .app-nav-icon {
    background: color-mix(in srgb, var(--brand-primary) 10%, var(--surface));
  }
}

.app-nav-icon {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  border-radius: 6px;
  place-items: center;
  width: 22px;
  height: 22px;
  display: inline-grid;
}

.app-nav-icon svg, .app-topbar-tab svg, .button-inline-icon svg, .icon-button svg {
  color: currentColor;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.6px;
  stroke-linecap: round;
  stroke-linejoin: round;
  width: 16px;
  height: 16px;
}

.app-nav-group {
  border-top: 1px solid var(--border);
  gap: 8px;
  margin-top: 10px;
  padding-top: 14px;
  display: grid;
}

.app-section-label {
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--muted);
  margin: 0;
  font-size: .72rem;
}

.app-subnav, .settings-side-nav-links {
  gap: 4px;
  display: grid;
}

.app-subnav-link {
  padding-left: 22px;
  font-size: .94rem;
}

.app-topbar {
  z-index: 30;
  border-bottom: 1px solid var(--border);
  background: var(--surface);
  position: sticky;
  top: 0;
}

@supports (color: color-mix(in lab, red, red)) {
  .app-topbar {
    background: color-mix(in srgb, var(--surface) 92%, var(--background) 8%);
  }
}

.app-topbar-main {
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 10px 18px;
  display: flex;
}

.app-topbar-left {
  align-items: center;
  gap: 18px;
  min-width: 0;
  display: flex;
}

.app-topbar-context {
  min-width: 0;
  color: var(--text-secondary);
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  font-size: .8rem;
  display: flex;
}

.app-topbar-context strong {
  color: var(--text-primary);
  font-size: .96rem;
  font-weight: 600;
}

.app-topbar-tabs {
  border-left: 1px solid var(--border);
  align-items: center;
  gap: 8px;
  padding-left: 16px;
  display: flex;
}

.app-topbar-tab, .icon-button {
  border: 1px solid var(--border);
  background: var(--surface);
  width: 36px;
  height: 36px;
  color: var(--text-secondary);
  border-radius: 6px;
  place-items: center;
  text-decoration: none;
  transition: background-color .16s, border-color .16s, color .16s;
  display: inline-grid;
}

.app-topbar-tab:hover, .icon-button:hover {
  background: var(--surface-muted);
  color: var(--text-primary);
}

.app-topbar-tab-active {
  border-color: var(--border);
  background: var(--brand-primary);
}

@supports (color: color-mix(in lab, red, red)) {
  .app-topbar-tab-active {
    background: color-mix(in srgb, var(--brand-primary) 10%, var(--surface));
  }
}

.app-topbar-tab-active {
  color: var(--brand-primary);
}

.app-topbar-tab span, .icon-button span, .button-inline-icon {
  place-items: center;
  display: inline-grid;
}

.app-topbar-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  margin-left: auto;
  display: flex;
}

.topbar-user-label {
  color: var(--text-secondary);
  white-space: nowrap;
  font-size: .88rem;
}

.topbar-user-label strong {
  color: var(--text-primary);
  font-weight: 600;
}

.app-main {
  gap: 18px;
  padding: 16px 18px 18px;
  display: grid;
}

.page-header {
  border: 1px solid var(--border);
  background: var(--surface);
  justify-content: space-between;
  align-items: start;
  gap: 18px;
  padding: 14px 18px;
  display: flex;
}

.page-title {
  letter-spacing: -.03em;
  margin: 0;
  font-size: 1.72rem;
  line-height: 1.1;
}

.page-copy {
  max-width: 82ch;
  color: var(--text-secondary);
  margin: 8px 0 0;
  line-height: 1.5;
}

.page-context {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.workspace-hub-header, .workspace-hub-toolbar, .workspace-card, .workspace-device-table-wrap, .modal-card {
  border: 1px solid var(--border);
  background: var(--surface);
  box-shadow: var(--shadow);
}

.workspace-hub-control, .workspace-hub-header, .workspace-hub-toolbar {
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  padding: 20px 22px;
  display: flex;
}

.workspace-hub-control {
  align-items: center;
}

.workspace-hub-control-head {
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  width: 100%;
  display: flex;
}

.workspace-hub-actions, .workspace-hub-filters, .workspace-card-actions, .workspace-device-actions {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  display: flex;
}

.workspace-hub-actions {
  justify-content: flex-end;
}

.workspace-hub-toolbar {
  align-items: center;
}

.workspace-hub-filters {
  grid-template-columns: minmax(0, 1fr) auto;
  justify-content: flex-end;
  align-items: center;
  gap: 14px;
  display: grid;
}

.workspace-hub-inline-copy {
  color: var(--text-secondary);
  line-height: 1.5;
}

.workspace-card-grid {
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 18px;
  display: grid;
}

.workspace-card {
  gap: 18px;
  padding: 22px;
  display: grid;
}

.workspace-card-top, .workspace-card-footer {
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

.workspace-card-top h2 {
  letter-spacing: -.03em;
  margin: 0;
  font-size: 1.26rem;
  line-height: 1.1;
}

.workspace-card-top p {
  color: var(--text-secondary);
  margin: 6px 0 0;
}

.workspace-card-metric-row {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  display: grid;
}

.workspace-card-metric {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  gap: 4px;
  padding: 14px;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .workspace-card-metric {
    background: color-mix(in srgb, var(--surface-muted) 50%, var(--surface));
  }
}

.workspace-card-metric {
  border-radius: 14px;
}

.workspace-card-metric strong {
  font-size: 1.18rem;
}

.workspace-card-metric small {
  color: var(--text-secondary);
  line-height: 1.45;
}

.workspace-card-footer {
  align-items: end;
}

.workspace-device-table-wrap {
  overflow: auto;
}

.workspace-device-table {
  border-collapse: collapse;
  width: 100%;
  min-width: 920px;
}

.workspace-device-table th, .workspace-device-table td {
  border-bottom: 1px solid var(--border);
  text-align: left;
  vertical-align: middle;
  padding: 14px 16px;
}

.workspace-device-table thead th {
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--muted);
  background: var(--surface-muted);
  font-size: .76rem;
}

@supports (color: color-mix(in lab, red, red)) {
  .workspace-device-table thead th {
    background: color-mix(in srgb, var(--surface-muted) 54%, var(--surface));
  }
}

.workspace-device-table tbody tr:hover {
  background: var(--brand-primary);
}

@supports (color: color-mix(in lab, red, red)) {
  .workspace-device-table tbody tr:hover {
    background: color-mix(in srgb, var(--brand-primary) 4%, var(--surface));
  }
}

.modal-overlay {
  z-index: 80;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  background: #060e187a;
  place-items: center;
  padding: 24px;
  display: grid;
  position: fixed;
  inset: 0;
}

.modal-card {
  gap: 18px;
  width: min(640px, 100%);
  max-height: calc(100vh - 48px);
  padding: 22px;
  display: grid;
  overflow: auto;
}

.modal-card-header {
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

.modal-card-header h2 {
  margin: 0;
  font-size: 1.36rem;
  line-height: 1.1;
}

@media (max-width: 1100px) {
  .workspace-hub-control, .workspace-hub-control-head, .workspace-hub-header, .workspace-hub-toolbar, .workspace-card-top, .workspace-card-footer {
    flex-direction: column;
    align-items: stretch;
  }

  .workspace-hub-actions, .workspace-hub-filters {
    justify-content: flex-start;
  }

  .workspace-hub-filters {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .workspace-card-grid, .workspace-card-metric-row {
    grid-template-columns: minmax(0, 1fr);
  }

  .workspace-device-table {
    min-width: 720px;
  }

  .modal-overlay {
    padding: 14px;
  }

  .modal-card {
    padding: 18px;
  }
}

.settings-shell {
  min-width: 0;
  display: block;
}

.settings-side-nav {
  border: 1px solid var(--border);
  background: var(--surface);
  gap: 14px;
  padding: 16px;
  display: grid;
  position: sticky;
  top: 74px;
}

.settings-side-nav-head {
  border-bottom: 1px solid var(--line);
  gap: 4px;
  padding-bottom: 12px;
  display: grid;
}

.settings-side-nav-head strong {
  font-size: 1rem;
}

.settings-side-nav-head span:last-child {
  color: var(--text-secondary);
  font-size: .86rem;
}

.settings-side-link {
  color: var(--text-secondary);
  border: 1px solid #0000;
  padding: 10px 12px;
  text-decoration: none;
  transition: background-color .16s, border-color .16s, color .16s;
  display: block;
}

.app-notice {
  border: 1px solid var(--border);
  background: var(--surface);
  padding: 12px 14px;
}

.app-notice p {
  color: var(--text-secondary);
  margin: 2px 0 0;
}

.app-notice-warning {
  background: #e6c98b;
}

@supports (color: color-mix(in lab, red, red)) {
  .app-notice-warning {
    background: color-mix(in srgb, #e6c98b 18%, var(--surface));
  }
}

.app-notice-info {
  background: #8bb9e6;
}

@supports (color: color-mix(in lab, red, red)) {
  .app-notice-info {
    background: color-mix(in srgb, #8bb9e6 15%, var(--surface));
  }
}

.app-notice-error {
  background: #d47171;
}

@supports (color: color-mix(in lab, red, red)) {
  .app-notice-error {
    background: color-mix(in srgb, #d47171 16%, var(--surface));
  }
}

.settings-content {
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
  width: 100%;
  min-width: 0;
  display: grid;
}

.settings-page {
  grid-template-columns: minmax(0, 1fr);
  justify-items: stretch;
  gap: 18px;
  width: 100%;
  min-width: 0;
  display: grid;
}

.settings-section {
  border: 1px solid var(--border);
  background: var(--surface);
  grid-template-columns: minmax(0, 1fr);
  justify-items: stretch;
  gap: 18px;
  width: 100%;
  min-width: 0;
  padding: 22px;
  display: grid;
}

.settings-stack {
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
  justify-items: stretch;
  gap: 16px;
  width: 100%;
  min-width: 0;
  display: grid;
}

.settings-form-layout, .settings-list-layout, .settings-map-layout {
  width: 100%;
  min-width: 0;
}

.settings-split-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 18px;
  width: 100%;
  display: grid;
}

.settings-form {
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  width: 100%;
  min-width: 0;
  margin-top: 16px;
  display: grid;
}

.settings-form-header {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: start;
  gap: 12px;
  padding-bottom: 10px;
  display: flex;
}

.settings-form-header h3 {
  margin: 0;
  font-size: 1.08rem;
}

.settings-form-row {
  grid-template-columns: minmax(180px, 220px) minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  display: grid;
}

.settings-form-row-block {
  align-items: start;
}

.settings-form-row > label {
  color: var(--text-primary);
  font-weight: 600;
}

.settings-form-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 6px;
  display: flex;
}

.settings-section-divider {
  background: var(--border);
  height: 1px;
}

.settings-checklist {
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  width: 100%;
  display: grid;
}

.settings-checklist-row {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: start;
  gap: 16px;
  padding: 16px;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .settings-checklist-row {
    background: color-mix(in srgb, var(--surface-muted) 45%, var(--surface));
  }
}

.settings-checklist-order {
  background: var(--brand-primary);
  color: #fff;
  border-radius: 999px;
  place-items: center;
  width: 38px;
  height: 38px;
  font-size: .88rem;
  font-weight: 700;
  display: grid;
}

.settings-checklist-body {
  gap: 6px;
  min-width: 0;
  display: grid;
}

.settings-checklist-body p {
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.5;
}

.control-input-plate {
  letter-spacing: .12em;
  text-transform: uppercase;
  font-size: 1.12rem;
}

.mini-status {
  color: var(--muted);
}

.error-banner {
  color: #9c3615;
  background: #c05c3414;
  border: 1px solid #c05c3433;
  border-radius: 18px;
  padding: 14px 16px;
}

.summary-grid, .board-grid, .config-grid {
  gap: 18px;
  display: grid;
}

.ops-topbar, .ops-now-item, .ops-now-inline, .ops-panel {
  border: 1px solid var(--border);
}

@supports (color: color-mix(in lab, red, red)) {
  .ops-topbar, .ops-now-item, .ops-now-inline, .ops-panel {
    border: 1px solid color-mix(in srgb, var(--border) 88%, transparent);
  }
}

.ops-topbar, .ops-now-item, .ops-now-inline, .ops-panel {
  background: var(--surface);
}

@supports (color: color-mix(in lab, red, red)) {
  .ops-topbar, .ops-now-item, .ops-now-inline, .ops-panel {
    background: color-mix(in srgb, var(--surface) 96%, white 4%);
  }
}

.ops-topbar, .ops-now-item, .ops-now-inline, .ops-panel {
  box-shadow: none;
}

.ops-topbar {
  border-radius: 20px;
  grid-template-columns: minmax(0, 1.4fr) minmax(320px, .86fr);
  gap: 28px;
  padding: 24px 26px;
  display: grid;
}

.ops-context {
  align-content: start;
  gap: 14px;
  display: grid;
}

.ops-title {
  letter-spacing: -.045em;
  margin: 0;
  font-size: clamp(1.7rem, 2.2vw, 2.2rem);
  line-height: 1.02;
}

.ops-copy {
  max-width: 64ch;
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.58;
}

.ops-context-meta, .ops-primary-actions, .operations-quick-actions {
  flex-wrap: wrap;
  gap: 10px;
  display: flex;
}

.ops-topbar-actions {
  align-content: start;
  justify-items: stretch;
  gap: 16px;
  display: grid;
}

.ops-event-switcher {
  gap: 8px;
  display: grid;
}

.ops-now-strip, .ops-secondary-insights {
  gap: 14px;
  display: grid;
}

.ops-now-strip {
  grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(280px, 1.15fr);
  align-items: stretch;
}

.ops-now-item, .ops-now-inline, .ops-panel {
  border-radius: 18px;
}

.ops-now-item {
  gap: 12px;
  padding: 18px;
  display: grid;
}

.ops-now-item-head {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.ops-now-item strong {
  letter-spacing: -.05em;
  font-size: clamp(1.5rem, 2vw, 1.95rem);
  line-height: 1;
}

.ops-now-item p, .ops-now-inline p {
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.5;
}

.ops-now-inline {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 18px 20px;
  display: grid;
}

.ops-now-inline-copy {
  gap: 8px;
  display: grid;
}

.ops-now-inline strong {
  letter-spacing: -.02em;
  font-size: 1rem;
}

.ops-status-badge {
  border: 1px solid var(--border);
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  display: inline-flex;
}

@supports (color: color-mix(in lab, red, red)) {
  .ops-status-badge {
    border: 1px solid color-mix(in srgb, var(--border) 86%, transparent);
  }
}

.ops-status-badge {
  background: var(--surface-muted);
}

@supports (color: color-mix(in lab, red, red)) {
  .ops-status-badge {
    background: color-mix(in srgb, var(--surface-muted) 65%, var(--surface));
  }
}

.ops-status-badge {
  color: var(--text-secondary);
  letter-spacing: .02em;
  text-transform: uppercase;
  font-size: .75rem;
  font-weight: 700;
}

.ops-status-badge-calm {
  background: var(--surface);
}

@supports (color: color-mix(in lab, red, red)) {
  .ops-status-badge-calm {
    background: color-mix(in srgb, var(--surface) 86%, var(--accent-soft));
  }
}

.ops-status-badge-warning {
  color: var(--warning);
  background: #b47b281f;
  border-color: #b47b282e;
}

.ops-status-badge-critical {
  color: var(--exit);
  background: #c05c341f;
  border-color: #c05c342e;
}

.ops-main-grid {
  grid-template-columns: minmax(0, 1.42fr) minmax(320px, .78fr);
  align-items: start;
  gap: 18px;
  display: grid;
}

.ops-primary-column, .ops-secondary-column {
  gap: 18px;
  display: grid;
}

.ops-panel {
  padding: 18px;
}

.ops-panel .panel-intro {
  margin-bottom: 16px;
}

.ops-panel .panel-intro h2 {
  letter-spacing: -.03em;
}

.ops-map-panel {
  gap: 16px;
}

.ops-map-copy {
  color: var(--text-secondary);
  margin: -4px 0 2px;
  line-height: 1.55;
}

.ops-map-panel .map-editor-shell {
  gap: 12px;
}

.ops-map-panel .map-editor-toolbar {
  gap: 8px;
}

.ops-map-panel .map-editor-toolbar h3 {
  font-size: 1.08rem;
}

.ops-map-panel .map-editor-copy {
  max-width: none;
  margin-top: 2px;
  font-size: .95rem;
}

.ops-map-panel .map-canvas, .ops-map-panel .map-canvas-inner {
  min-height: 360px;
}

.ops-map-panel .map-hint-list {
  grid-template-columns: repeat(3, minmax(0, max-content));
  gap: 12px 18px;
}

.ops-list-card {
  border: 1px solid var(--border);
  border-radius: 16px;
}

@supports (color: color-mix(in lab, red, red)) {
  .ops-list-card {
    border: 1px solid color-mix(in srgb, var(--border) 78%, transparent);
  }
}

.ops-list-card {
  background: var(--surface-muted);
}

@supports (color: color-mix(in lab, red, red)) {
  .ops-list-card {
    background: color-mix(in srgb, var(--surface-muted) 36%, var(--surface));
  }
}

.ops-list-card {
  transition: border-color .16s, background .16s, transform .16s;
}

button.ops-list-card:hover, button.ops-list-card:focus-visible {
  border-color: var(--brand-primary);
}

@supports (color: color-mix(in lab, red, red)) {
  button.ops-list-card:hover, button.ops-list-card:focus-visible {
    border-color: color-mix(in srgb, var(--brand-primary) 34%, var(--border));
  }
}

button.ops-list-card:hover, button.ops-list-card:focus-visible {
  background: var(--surface-muted);
}

@supports (color: color-mix(in lab, red, red)) {
  button.ops-list-card:hover, button.ops-list-card:focus-visible {
    background: color-mix(in srgb, var(--surface-muted) 20%, var(--surface));
  }
}

button.ops-list-card:hover, button.ops-list-card:focus-visible {
  transform: translateY(-1px);
}

.ops-secondary-insights {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ops-metrics-inline {
  flex-wrap: wrap;
  gap: 10px;
  display: flex;
}

.ops-metric-chip {
  border: 1px solid var(--border);
  border-radius: 14px;
  gap: 6px;
  min-width: 148px;
  padding: 14px 15px;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .ops-metric-chip {
    border: 1px solid color-mix(in srgb, var(--border) 82%, transparent);
  }
}

.ops-metric-chip {
  background: var(--surface-muted);
}

@supports (color: color-mix(in lab, red, red)) {
  .ops-metric-chip {
    background: color-mix(in srgb, var(--surface-muted) 42%, var(--surface));
  }
}

.ops-metric-chip span {
  color: var(--text-secondary);
  font-size: .8rem;
}

.ops-metric-chip strong {
  letter-spacing: -.03em;
  font-size: 1.1rem;
}

.command-header {
  border: 1px solid var(--border);
  background: var(--surface);
  box-shadow: none;
  border-radius: 8px;
  gap: 18px;
  padding: 18px;
  display: grid;
}

.command-header-main {
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
  gap: 18px;
  display: grid;
}

.installation-header {
  gap: 14px;
}

.installation-summary {
  align-content: start;
  gap: 10px;
  display: grid;
}

.command-title {
  letter-spacing: -.03em;
  margin: 0;
  font-size: clamp(1.7rem, 2.3vw, 2.15rem);
  line-height: 1.08;
}

.command-copy {
  max-width: 68ch;
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.5;
}

.command-context-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  display: grid;
}

.installation-context-grid {
  align-content: start;
}

.command-context-card, .priority-card, .setup-progress-card {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  border-radius: 6px;
  padding: 16px;
}

@supports (color: color-mix(in lab, red, red)) {
  .command-context-card, .priority-card, .setup-progress-card {
    background: color-mix(in srgb, var(--surface-muted) 45%, var(--surface));
  }
}

.command-context-card strong, .priority-card strong {
  margin-top: 8px;
  font-size: 1.08rem;
  display: block;
}

.command-context-card span:last-child, .priority-card p {
  color: var(--text-secondary);
  margin: 6px 0 0;
  line-height: 1.5;
}

.command-actions, .installation-actions {
  flex-wrap: wrap;
  gap: 12px;
  display: flex;
}

.system-notice {
  border: 1px solid var(--line);
  border-radius: 20px;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 14px 16px;
  display: flex;
}

.system-notice strong {
  margin-top: 4px;
  display: block;
}

.system-notice-warning {
  background: var(--accent-amber);
}

@supports (color: color-mix(in lab, red, red)) {
  .system-notice-warning {
    background: color-mix(in srgb, var(--accent-amber) 10%, var(--surface));
  }
}

.system-notice-warning {
  border-color: var(--accent-amber);
}

@supports (color: color-mix(in lab, red, red)) {
  .system-notice-warning {
    border-color: color-mix(in srgb, var(--accent-amber) 28%, var(--line));
  }
}

.system-notice-critical {
  background: #c05c3414;
  border-color: #c05c3433;
}

.priority-strip {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  display: grid;
}

.control-metric-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  display: grid;
}

.control-metric-card {
  border: 1px solid var(--border);
  background: var(--surface);
  box-shadow: none;
  border-radius: 6px;
  padding: 16px;
}

.control-metric-card strong {
  letter-spacing: -.04em;
  margin: 8px 0 6px;
  font-size: 1.7rem;
  display: block;
}

.control-metric-card p {
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.45;
}

.control-layout, .activity-grid {
  gap: 18px;
  display: grid;
}

.control-layout {
  grid-template-columns: minmax(0, 1.3fr) minmax(320px, .92fr);
}

.control-side-column {
  align-content: start;
  gap: 18px;
  display: grid;
}

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

.setup-progress-list {
  gap: 12px;
  display: grid;
}

.setup-progress-card {
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  display: grid;
}

.setup-progress-order {
  background: var(--brand-primary);
  color: #fff;
  border-radius: 999px;
  place-items: center;
  width: 38px;
  height: 38px;
  font-size: .88rem;
  font-weight: 700;
  display: grid;
}

.setup-progress-body p {
  color: var(--text-secondary);
  margin: 6px 0 0;
  line-height: 1.5;
}

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

.summary-card, .board-panel, .visitor-card, .visitor-result-card {
  background: var(--surface);
  box-shadow: none;
  border-radius: 8px;
  padding: 18px;
}

.summary-card strong {
  letter-spacing: -.04em;
  margin-bottom: 8px;
  font-size: 2.2rem;
  display: block;
}

.summary-card p {
  color: var(--muted);
  margin: 0;
  line-height: 1.45;
}

.board-grid {
  grid-template-columns: 1.15fr 1fr .85fr;
  align-items: start;
}

.config-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
}

.config-map-panel {
  width: 100%;
  padding: 0;
  overflow: hidden;
}

.config-map-panel .panel-intro {
  border-bottom: 0;
  margin: 0;
  padding: 22px 22px 0;
}

.config-map-panel .map-editor-shell {
  padding: 0 22px 22px;
}

.map-editor-shell {
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  width: 100%;
  min-width: 0;
  display: grid;
}

.map-editor-toolbar {
  gap: 10px;
  display: grid;
}

.map-editor-toolbar h3 {
  margin: 0;
  font-size: 1.32rem;
}

.map-editor-copy {
  max-width: 62ch;
  color: var(--muted);
  margin: 10px 0 0;
  line-height: 1.5;
}

.map-editor-status-bar {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.map-editor-actions {
  border: 1px solid var(--border);
  background: var(--surface);
  flex-wrap: wrap;
  gap: 10px;
  padding: 8px;
  display: flex;
}

.map-canvas {
  border: 1px solid var(--border);
  min-height: 620px;
  box-shadow: none;
  border-radius: 6px;
  min-width: 0;
  overflow: hidden;
}

.map-canvas-inner {
  width: 100%;
  min-height: 620px;
}

.settings-page > *, .settings-section > *, .settings-stack > *, .settings-form > * {
  min-width: 0;
}

.map-sidebar-section {
  border-bottom: 1px solid var(--border);
  gap: 8px;
  padding-bottom: 12px;
  display: grid;
}

.map-sidebar-section:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.map-sidebar-section p {
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.5;
}

.map-selection-card {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  gap: 4px;
  padding: 12px;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .map-selection-card {
    background: color-mix(in srgb, var(--surface-muted) 45%, var(--surface));
  }
}

.map-stat-grid {
  gap: 8px;
  display: grid;
}

.map-stat {
  background: var(--surface-muted);
  border-radius: 6px;
  padding: 14px;
}

@supports (color: color-mix(in lab, red, red)) {
  .map-stat {
    background: color-mix(in srgb, var(--surface-muted) 45%, var(--surface));
  }
}

.map-stat {
  border: 1px solid var(--border);
}

.map-stat strong {
  margin-top: 6px;
  font-size: 1.5rem;
  display: block;
}

.map-hint-list {
  gap: 10px;
  display: grid;
}

.map-hint-item {
  color: var(--muted);
  align-items: center;
  gap: 10px;
  line-height: 1.4;
  display: flex;
}

.map-hint-swatch {
  border-radius: 999px;
  flex: none;
  width: 14px;
  height: 14px;
}

.map-hint-swatch-area {
  background: var(--accent);
}

.map-hint-swatch-entry {
  background: var(--entry);
}

.map-hint-swatch-exit {
  background: var(--exit);
}

.map-hint-swatch-bi {
  background: var(--warning);
}

.map-hint-swatch-archived {
  background: #8d95a4;
}

.geometry-preview {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  border-radius: 6px;
  gap: 8px;
  padding: 14px;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .geometry-preview {
    background: color-mix(in srgb, var(--surface-muted) 45%, var(--surface));
  }
}

.map-tool-button {
  border: 1px solid var(--border);
  background: var(--surface);
  min-height: 36px;
  color: var(--text-secondary);
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  transition: background-color .16s, border-color .16s, color .16s;
  display: inline-flex;
}

.map-tool-button:hover {
  background: var(--surface-muted);
  color: var(--text-primary);
}

.map-tool-button-active {
  background: var(--brand-primary);
}

@supports (color: color-mix(in lab, red, red)) {
  .map-tool-button-active {
    background: color-mix(in srgb, var(--brand-primary) 8%, var(--surface));
  }
}

.map-tool-button-active {
  border-color: var(--brand-primary);
}

@supports (color: color-mix(in lab, red, red)) {
  .map-tool-button-active {
    border-color: color-mix(in srgb, var(--brand-primary) 24%, var(--border));
  }
}

.map-tool-button-active {
  color: var(--brand-primary);
}

.map-tool-button-secondary {
  background: var(--surface-muted);
}

@supports (color: color-mix(in lab, red, red)) {
  .map-tool-button-secondary {
    background: color-mix(in srgb, var(--surface-muted) 35%, var(--surface));
  }
}

.map-tool-icon {
  border: 1px solid var(--border);
  letter-spacing: .08em;
  background: var(--surface);
  border-radius: 4px;
  place-items: center;
  width: 20px;
  height: 20px;
  font-size: .56rem;
  font-weight: 700;
  display: inline-grid;
}

.geometry-preview code {
  white-space: pre-wrap;
  word-break: break-word;
  color: var(--muted);
  font-family: Menlo, Monaco, monospace;
  font-size: .82rem;
  line-height: 1.45;
  display: block;
}

.map-admin-layout {
  grid-template-columns: minmax(300px, .9fr) minmax(0, 1.65fr) minmax(340px, .95fr);
  align-items: start;
  gap: 18px;
  display: grid;
}

.map-editor-stage, .map-object-browser, .map-object-inspector {
  min-width: 0;
}

.map-object-browser, .map-object-inspector {
  gap: 14px;
  display: grid;
}

.map-browser-toolbar, .map-object-inspector {
  border: 1px solid var(--border);
  background: var(--surface);
  padding: 16px;
}

.map-browser-toolbar {
  gap: 12px;
  display: grid;
}

.map-object-list {
  min-height: 420px;
}

.map-browser-actions, .map-browser-summary, .map-inspector-meta {
  flex-wrap: wrap;
  gap: 10px;
  display: flex;
}

.segmented-control {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  border-radius: 12px;
  align-items: center;
  gap: 4px;
  width: fit-content;
  padding: 4px;
  display: inline-flex;
}

.segmented-control-button {
  color: var(--muted);
  background: none;
  border: 0;
  border-radius: 9px;
  padding: 8px 12px;
  transition: background-color .16s, color .16s;
}

.segmented-control-button-active {
  background: var(--surface);
  color: var(--text-primary);
  box-shadow: inset 0 0 0 1px var(--border);
}

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

.map-inspector-header {
  justify-content: space-between;
  align-items: start;
  gap: 12px;
  display: flex;
}

.map-inspector-header h3 {
  margin: 0;
  font-size: 1.18rem;
}

.map-inspector-form {
  gap: 12px;
}

.map-inspector-fieldset {
  border: 0;
  gap: 12px;
  margin: 0;
  padding: 0;
  display: grid;
}

.map-inspector-fieldset:disabled {
  opacity: .72;
}

.map-inspector-disclosure {
  border-top: 1px solid var(--border);
  gap: 12px;
  padding-top: 8px;
  display: grid;
}

.map-inspector-disclosure summary {
  cursor: pointer;
  font-weight: 700;
}

.map-inspector-context, .inline-notice {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  gap: 6px;
  padding: 12px 14px;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .map-inspector-context, .inline-notice {
    background: color-mix(in srgb, var(--surface-muted) 55%, var(--surface));
  }
}

.inline-notice {
  color: var(--text-secondary);
  line-height: 1.5;
}

.map-metric-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  display: grid;
}

.map-metric-card {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  gap: 6px;
  padding: 12px 14px;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .map-metric-card {
    background: color-mix(in srgb, var(--surface-muted) 50%, var(--surface));
  }
}

.map-metric-card strong {
  letter-spacing: -.03em;
  font-size: 1.3rem;
}

.map-metric-card span:last-child {
  color: var(--text-secondary);
  line-height: 1.4;
}

.device-health-list {
  gap: 10px;
  display: grid;
}

.device-health-row {
  border: 1px solid var(--border);
  background: var(--surface);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  display: flex;
}

.device-health-copy {
  color: var(--text-secondary);
  gap: 4px;
  margin-top: 4px;
  font-size: .85rem;
  display: grid;
}

.panel-intro {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: start;
  gap: 12px;
  margin-bottom: 12px;
  padding-bottom: 12px;
  display: flex;
}

.panel-intro h2 {
  letter-spacing: -.02em;
  margin: 0;
  font-size: 1.5rem;
  line-height: 1.15;
}

.panel-copy {
  max-width: 74ch;
  color: var(--muted);
  margin: 8px 0 0;
  font-size: .95rem;
  line-height: 1.55;
}

.settings-inline-note {
  color: var(--muted);
  margin: 0 0 12px;
  font-size: .92rem;
  line-height: 1.5;
}

.timeline-list, .plate-stream, .heartbeat-stream, .visitor-results {
  gap: 12px;
  display: grid;
}

.timeline-card, .heartbeat-card, .plate-card {
  background: var(--surface);
  border-radius: 10px;
  padding: 14px;
}

.timeline-top, .row, .spread {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  display: flex;
}

.spread, .timeline-top {
  justify-content: space-between;
}

.plate, .heartbeat-name {
  letter-spacing: .06em;
  font-size: 1.18rem;
}

.timeline-caption, .plate-meta, .heartbeat-meta, .timeline-grid {
  color: var(--muted);
  font-size: .88rem;
}

.timeline-grid, .heartbeat-meta, .plate-meta {
  gap: 6px;
  display: grid;
}

.pill {
  letter-spacing: .08em;
  padding: 5px 10px;
  font-family: Menlo, Monaco, monospace;
  font-size: .72rem;
}

.pill-entry, .pill-open, .pill-live {
  color: var(--entry);
  background: #1b7f5e1f;
}

.pill-exit, .pill-closed {
  color: var(--exit);
  background: #c05c3424;
}

.pill-warning, .pill-review, .pill-review_required {
  color: var(--warning);
  background: #b47b2824;
}

.pill-offline, .pill-rejected, .pill-cancelled {
  color: var(--offline);
  background: #8d4f4224;
}

.pill-raw {
  color: var(--foreground);
  background: #13201b14;
}

.soft-tag {
  border: 1px solid var(--line);
  color: var(--muted);
  background: #ffffffa6;
  padding: 6px 10px;
  font-size: .76rem;
}

.soft-tag-live {
  color: var(--entry);
  background: #1b7f5e1a;
}

.soft-tag-offline {
  color: var(--offline);
  background: #8d4f421f;
}

.plate-card {
  grid-template-columns: 116px minmax(0, 1fr);
  gap: 14px;
  display: grid;
}

.capture-grid {
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr);
  align-items: start;
  gap: 18px;
  display: grid;
}

.capture-stage, .capture-side-panel {
  min-width: 0;
}

.capture-list, .device-list {
  gap: 0;
  display: grid;
}

.capture-table-head {
  border-bottom: 1px solid var(--border);
  color: var(--muted);
  letter-spacing: .08em;
  text-transform: uppercase;
  grid-template-columns: 110px 150px minmax(140px, 1fr) 80px 90px 120px 120px 130px 90px;
  gap: 10px;
  padding: 0 14px 8px;
  font-size: .72rem;
  font-weight: 700;
  display: grid;
}

.workspace-grid {
  grid-template-columns: minmax(320px, .88fr) minmax(0, 1.32fr);
  gap: 14px;
  display: grid;
}

.workspace-list, .workspace-detail {
  min-width: 0;
}

.workspace-list {
  border: 1px solid var(--border);
  background: var(--surface);
  align-content: start;
  gap: 0;
  display: grid;
}

.workspace-detail {
  align-content: start;
  gap: 16px;
  display: grid;
}

.workspace-row {
  text-align: left;
  border: 0;
  border-bottom: 1px solid var(--border);
  background: none;
  gap: 10px;
  width: 100%;
  padding: 14px 16px;
  transition: background-color .16s, color .16s;
  display: grid;
}

.workspace-table-head {
  border-bottom: 1px solid var(--border);
  background: var(--surface-muted);
  grid-template-columns: minmax(0, 1.2fr) 120px 120px 160px;
  gap: 10px;
  padding: 10px 16px 8px;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .workspace-table-head {
    background: color-mix(in srgb, var(--surface-muted) 65%, var(--surface));
  }
}

.workspace-table-head {
  color: var(--muted);
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: .72rem;
  font-weight: 700;
}

.workspace-table-head-devices {
  grid-template-columns: minmax(0, 1.15fr) 120px 120px 120px;
}

.workspace-table-head-routing {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) 180px;
}

.device-routing-shell {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 18px;
  display: grid;
}

.device-routing-panel {
  gap: 16px;
  min-width: 0;
  display: grid;
}

.device-routing-panel-head {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  border-radius: 16px;
  justify-content: space-between;
  align-items: start;
  gap: 14px;
  padding: 16px 18px;
  display: flex;
}

@supports (color: color-mix(in lab, red, red)) {
  .device-routing-panel-head {
    background: color-mix(in srgb, var(--surface-muted) 55%, var(--surface));
  }
}

.device-routing-panel-head h3 {
  margin: 0;
  font-size: 1.08rem;
}

.device-routing-summary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  display: grid;
}

.device-routing-stat {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  border-radius: 14px;
  gap: 6px;
  padding: 14px 15px;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .device-routing-stat {
    background: color-mix(in srgb, var(--surface-muted) 42%, var(--surface));
  }
}

.device-routing-stat strong {
  letter-spacing: -.04em;
  font-size: 1.35rem;
}

.device-routing-stat span:last-child {
  color: var(--text-secondary);
  line-height: 1.45;
}

.device-routing-context {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  border-radius: 14px;
  gap: 10px;
  padding: 14px 15px;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .device-routing-context {
    background: color-mix(in srgb, var(--surface-muted) 30%, var(--surface));
  }
}

.device-routing-list {
  min-width: 0;
}

.device-row-copy {
  gap: 8px;
  display: grid;
}

.workspace-row:hover {
  background: var(--surface-muted);
}

@supports (color: color-mix(in lab, red, red)) {
  .workspace-row:hover {
    background: color-mix(in srgb, var(--surface-muted) 72%, transparent);
  }
}

.workspace-row-static {
  cursor: default;
}

.workspace-row-active {
  background: var(--brand-primary);
}

@supports (color: color-mix(in lab, red, red)) {
  .workspace-row-active {
    background: color-mix(in srgb, var(--brand-primary) 7%, var(--surface));
  }
}

.workspace-row-active {
  box-shadow: inset 3px 0 0 0 var(--brand-primary);
}

.workspace-row-head, .workspace-row-grid {
  gap: 8px;
  display: grid;
}

.workspace-row-head {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}

.workspace-row-grid {
  color: var(--muted);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  font-size: .85rem;
}

.workspace-row-grid-devices {
  grid-template-columns: 120px 120px 140px 120px;
}

.workspace-row-grid-routing {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) 180px;
  align-items: center;
}

.capture-filter-grid {
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 14px;
  display: grid;
}

.capture-row {
  text-align: left;
  border: 0;
  border-bottom: 1px solid var(--border);
  background: none;
  grid-template-columns: 110px 150px minmax(140px, 1fr) 80px 90px 120px 120px 130px 90px;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 13px 14px;
  transition: background-color .16s, color .16s;
  display: grid;
}

.capture-row:hover {
  background: var(--surface-muted);
}

@supports (color: color-mix(in lab, red, red)) {
  .capture-row:hover {
    background: color-mix(in srgb, var(--surface-muted) 72%, transparent);
  }
}

.capture-row-active {
  background: var(--brand-primary);
}

@supports (color: color-mix(in lab, red, red)) {
  .capture-row-active {
    background: color-mix(in srgb, var(--brand-primary) 7%, var(--surface));
  }
}

.capture-row-active {
  box-shadow: inset 3px 0 0 0 var(--brand-primary);
}

.capture-row-plate {
  letter-spacing: .08em;
  font-size: 1rem;
  font-weight: 700;
}

.capture-detail {
  gap: 16px;
  display: grid;
}

.capture-card, .device-card {
  border: 1px solid var(--border);
  background: var(--surface);
  box-shadow: none;
  border-radius: 8px;
  gap: 16px;
  padding: 18px;
  display: grid;
}

.workspace-detail-card {
  min-height: 100%;
}

.capture-card-head, .device-card-head {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: start;
  gap: 16px;
  display: flex;
}

.capture-meta-line, .capture-meta-stack, .device-heartbeat-copy, .capture-data-list, .device-stack {
  gap: 6px;
  display: grid;
}

.capture-meta-line, .capture-meta-stack, .device-heartbeat-copy {
  color: var(--muted);
  font-size: .88rem;
}

.capture-images {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  display: grid;
}

.capture-image-panel {
  gap: 10px;
  display: grid;
}

.capture-image-label {
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--muted);
  font-family: Menlo, Monaco, monospace;
  font-size: .72rem;
}

.capture-image-button, .capture-image-empty {
  border: 1px solid var(--line);
  background: linear-gradient(135deg, #dbe5e1c7, #f4e9dae0);
  border-radius: 10px;
  min-height: 220px;
  overflow: hidden;
}

.capture-image-button {
  place-items: center;
  padding: 0;
  display: grid;
}

.capture-image-button img {
  object-fit: contain;
  background: #ffffff80;
  width: 100%;
  height: 100%;
}

.capture-image-empty {
  color: var(--muted);
  text-align: center;
  place-items: center;
  padding: 24px;
  font-size: .9rem;
  display: grid;
}

.capture-data-grid, .device-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  display: grid;
}

.capture-data-card, .device-block {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  border-radius: 6px;
  gap: 10px;
  padding: 14px;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .capture-data-card, .device-block {
    background: color-mix(in srgb, var(--surface-muted) 50%, var(--surface));
  }
}

.capture-data-list {
  color: var(--text-secondary);
  font-size: .92rem;
}

.capture-edit-card {
  align-content: start;
}

.capture-edit-copy {
  color: var(--text-secondary);
  font-size: .92rem;
  line-height: 1.5;
}

.capture-edit-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  display: grid;
}

.capture-edit-grid label, .capture-edit-card > label {
  gap: 8px;
  display: grid;
}

.capture-edit-textarea {
  resize: vertical;
  min-height: 100px;
}

.capture-timeline-item {
  border: 1px solid var(--border);
  background: var(--surface);
  border-radius: 6px;
  grid-template-columns: 1.35fr .7fr 1fr 1fr .7fr;
  gap: 10px;
  padding: 10px 12px;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .capture-timeline-item {
    background: color-mix(in srgb, var(--surface) 92%, transparent);
  }
}

.capture-timeline-item {
  color: var(--text-secondary);
  text-align: left;
}

.capture-timeline-item:hover {
  border-color: var(--brand);
  color: var(--text-primary);
}

.capture-raw {
  border-top: 1px solid var(--line);
  padding-top: 14px;
}

.capture-raw summary {
  cursor: pointer;
  color: var(--text-primary);
  font-weight: 600;
}

.capture-raw pre {
  background: var(--surface-muted);
  border-radius: 10px;
  margin: 12px 0 0;
  padding: 14px;
  overflow: auto;
}

@supports (color: color-mix(in lab, red, red)) {
  .capture-raw pre {
    background: color-mix(in srgb, var(--surface-muted) 82%, transparent);
  }
}

.capture-raw pre {
  border: 1px solid var(--line);
  color: var(--text-secondary);
  font-size: .82rem;
  line-height: 1.45;
}

.review-workspace-card {
  position: sticky;
  top: 18px;
}

.review-toolbar {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  display: flex;
}

.review-toolbar-meta {
  flex-wrap: wrap;
  gap: 10px;
  display: flex;
}

.review-workbench {
  grid-template-columns: minmax(280px, .82fr) minmax(0, 1.2fr) minmax(320px, .9fr);
  align-items: start;
  gap: 18px;
  display: grid;
}

.review-queue-panel, .review-focus-panel, .review-decision-panel {
  min-width: 0;
}

.review-queue-list {
  gap: 10px;
  display: grid;
}

.review-queue-item {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  border-radius: 14px;
  gap: 8px;
  width: 100%;
  padding: 14px 16px;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .review-queue-item {
    background: color-mix(in srgb, var(--surface-muted) 42%, var(--surface));
  }
}

.review-queue-item {
  text-align: left;
  transition: border-color .16s, background-color .16s, transform .16s;
}

.review-queue-item:hover {
  border-color: var(--brand-primary);
  transform: translateY(-1px);
}

@supports (color: color-mix(in lab, red, red)) {
  .review-queue-item:hover {
    border-color: color-mix(in srgb, var(--brand-primary) 32%, var(--border));
  }
}

.review-queue-item-active {
  border-color: var(--brand-primary);
}

@supports (color: color-mix(in lab, red, red)) {
  .review-queue-item-active {
    border-color: color-mix(in srgb, var(--brand-primary) 55%, var(--border));
  }
}

.review-queue-item-active {
  background: var(--surface-muted);
}

@supports (color: color-mix(in lab, red, red)) {
  .review-queue-item-active {
    background: color-mix(in srgb, var(--surface-muted) 18%, var(--surface));
  }
}

.review-queue-item-head, .review-queue-item-meta {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.review-queue-item-meta {
  color: var(--text-secondary);
  font-size: .86rem;
}

.review-focus-images, .review-focus-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  display: grid;
}

.review-decision-form {
  gap: 16px;
  display: grid;
}

.review-correction-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  display: grid;
}

.review-comparison-grid, .device-insight-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  display: grid;
}

.device-insight-card {
  border: 1px solid var(--border);
  background: var(--surface-muted);
  border-radius: 6px;
  gap: 14px;
  padding: 16px;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .device-insight-card {
    background: color-mix(in srgb, var(--surface-muted) 50%, var(--surface));
  }
}

.device-mini-list {
  gap: 10px;
  display: grid;
}

.device-mini-row {
  border: 1px solid var(--line);
  background: var(--surface);
  text-align: left;
  width: 100%;
  color: var(--text-secondary);
  border-radius: 10px;
  gap: 4px;
  padding: 12px 14px;
  transition: transform .16s, background-color .16s;
  display: grid;
}

.device-mini-row:hover {
  background: var(--surface-muted);
  transform: translateY(-1px);
}

@supports (color: color-mix(in lab, red, red)) {
  .device-mini-row:hover {
    background: color-mix(in srgb, var(--surface-muted) 88%, transparent);
  }
}

.device-mini-row.static {
  cursor: default;
}

.device-heartbeat {
  align-items: center;
  gap: 10px;
  display: flex;
}

.status-heart {
  font-size: 1.5rem;
  line-height: 1;
}

.status-heart-live {
  color: var(--entry);
}

.status-heart-delayed {
  color: var(--warning);
}

.status-heart-offline {
  color: var(--offline);
}

.device-assignment, .device-assignment-empty {
  border: 1px solid var(--line);
  background: var(--surface);
  text-align: left;
  border-radius: 10px;
  gap: 4px;
  width: 100%;
  padding: 12px 14px;
  display: grid;
}

.device-assignment {
  transition: transform .16s, background-color .16s;
}

.device-assignment:hover {
  background: var(--surface-muted);
  transform: translateY(-1px);
}

@supports (color: color-mix(in lab, red, red)) {
  .device-assignment:hover {
    background: color-mix(in srgb, var(--surface-muted) 86%, transparent);
  }
}

.device-assignment.static {
  cursor: default;
}

.device-assignment-empty {
  color: var(--muted);
}

.priority-card strong {
  letter-spacing: -.04em;
  font-size: 1.5rem;
}

.plate-card-media {
  background: linear-gradient(135deg, #dbe5e1, #f4e9da);
  border-radius: 18px;
  min-height: 116px;
  overflow: hidden;
}

.plate-image-button {
  background: none;
  border: 0;
  width: 100%;
  height: 100%;
  padding: 0;
}

.plate-image-button img {
  object-fit: contain;
  background: #ffffff80;
  width: 100%;
  height: 100%;
}

.plate-image-empty {
  height: 100%;
  color: var(--muted);
  place-items: center;
  display: grid;
}

.form-grid {
  gap: 12px;
  margin-top: 14px;
  display: grid;
}

.selection-group {
  border: 1px solid var(--line);
  background: var(--surface-muted);
  border-radius: 10px;
  gap: 8px;
  padding: 12px 14px;
  display: grid;
}

.selection-list {
  gap: 8px;
  display: grid;
}

.selection-item {
  color: var(--foreground);
  align-items: center;
  gap: 10px;
  display: flex;
}

.selection-item-inline {
  padding: 0 4px;
}

.button-row {
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
  display: flex;
}

.empty-state {
  border: 1px dashed var(--border);
  background: var(--surface-muted);
  border-radius: 10px;
  place-items: start;
  gap: 12px;
  padding: 22px;
  display: grid;
}

.empty-state-badge {
  background: var(--brand-primary);
  border-radius: 999px;
  padding: 6px 10px;
}

@supports (color: color-mix(in lab, red, red)) {
  .empty-state-badge {
    background: color-mix(in srgb, var(--brand-primary) 10%, transparent);
  }
}

.empty-state-badge {
  color: var(--brand-primary);
  letter-spacing: .12em;
  text-transform: uppercase;
  font-size: .72rem;
  font-weight: 700;
}

.empty-state h3 {
  letter-spacing: -.02em;
  margin: 0;
  font-size: 1.05rem;
}

.empty-state p {
  max-width: 58ch;
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.6;
}

.tag-row {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.invite-link-box {
  background: var(--surface-muted);
  border: 1px solid var(--line);
  border-radius: 10px;
  gap: 8px;
  margin-top: 12px;
  padding: 12px 14px;
  display: grid;
}

.invite-link-box code {
  white-space: nowrap;
  color: var(--muted);
  font-family: Menlo, Monaco, monospace;
  font-size: .8rem;
  display: block;
  overflow-x: auto;
}

.visitor-stage {
  background: linear-gradient(90deg, #24303f 0 calc(50% - 19rem), #314857 calc(50% - 19rem) 100%);
  place-items: stretch stretch;
  min-height: 100vh;
  display: grid;
  position: relative;
  overflow: hidden;
}

.visitor-backdrop {
  pointer-events: none;
  position: absolute;
  inset: 0;
}

.visitor-backdrop-left {
  background: linear-gradient(#141c2759, #141c2726);
}

.visitor-backdrop-right {
  background: radial-gradient(circle at 100% 0, #ffffff14, #0000 30%);
}

.visitor-frame {
  z-index: 1;
  color: #f3f5f7;
  background: #161c25;
  grid-template-rows: auto 1fr auto;
  width: min(100%, 600px);
  min-height: 100vh;
  margin: 0 auto;
  display: grid;
  position: relative;
  box-shadow: 0 0 0 1px #ffffff0d;
}

.visitor-frame-header {
  justify-content: space-between;
  align-items: center;
  padding: 18px 24px;
  display: flex;
}

.visitor-header-side {
  align-items: center;
  min-width: 48px;
  display: flex;
}

.visitor-frame-spacer {
  width: 44px;
  height: 44px;
}

.visitor-icon-button {
  color: #edf2f6;
  background: none;
  border: 0;
  place-items: center;
  width: 44px;
  height: 44px;
  font-size: 2rem;
  line-height: 1;
  display: inline-grid;
}

.visitor-locale-switch {
  letter-spacing: .02em;
  align-items: center;
  gap: 10px;
  font-family: Oswald, Arial Narrow, sans-serif;
  display: inline-flex;
}

.visitor-locale-button {
  color: #eef4f78f;
  background: none;
  border: 0;
  padding: 0;
  font-size: 1.05rem;
  font-weight: 700;
}

.visitor-locale-button.active {
  color: #fff;
  text-underline-offset: .28em;
  text-decoration: underline;
  text-decoration-thickness: .14em;
}

.visitor-frame-body {
  align-content: center;
  gap: 22px;
  padding: 24px 28px 36px;
  display: grid;
}

.visitor-screen {
  gap: 22px;
  display: grid;
}

.visitor-screen-narrow {
  justify-self: center;
  width: 100%;
  max-width: 32rem;
}

.visitor-screen-center {
  text-align: center;
  align-content: center;
  justify-items: center;
  gap: 28px;
  min-height: 100%;
}

.visitor-copy {
  gap: 18px;
  display: grid;
}

.visitor-eyebrow {
  color: #f1f6f8a8;
  letter-spacing: .18em;
  text-transform: uppercase;
  justify-self: center;
  font-family: Oswald, Arial Narrow, sans-serif;
  font-size: .84rem;
}

.visitor-copy h1, .visitor-copy h2, .visitor-copy h3 {
  text-transform: uppercase;
  letter-spacing: -.02em;
  margin: 0;
  font-family: Oswald, Arial Narrow, sans-serif;
  line-height: .98;
}

.visitor-copy h1 {
  font-size: clamp(3.3rem, 7vw, 5.25rem);
}

.visitor-copy h2 {
  font-size: clamp(2.3rem, 4vw, 3.4rem);
}

.visitor-copy h3 {
  font-size: 1.45rem;
}

.visitor-copy p {
  color: #f0f5f8e0;
  margin: 0;
  font-size: 1.15rem;
  line-height: 1.55;
}

.visitor-copy-compact {
  gap: 10px;
}

.visitor-context-bar {
  background: #39505d94;
  border: 1px solid #ffffff14;
  border-radius: 18px;
  gap: 4px;
  padding: 14px 16px;
  display: grid;
}

.visitor-context-bar span {
  color: #f1f6f8a8;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-family: Oswald, Arial Narrow, sans-serif;
  font-size: .82rem;
}

.visitor-context-bar strong {
  font-size: 1.15rem;
}

.visitor-context-bar small {
  color: #f1f6f8c7;
  font-size: .92rem;
}

.visitor-form-lead {
  color: #f0f5f8c2;
  font-size: 1rem;
}

.visitor-form-shell, .visitor-detail-card, .visitor-option-card, .visitor-empty-card, .visitor-session-card {
  background: #39505d;
  border: 1px solid #ffffff14;
  border-radius: 20px;
}

.visitor-form-shell {
  gap: 22px;
  padding: 26px;
  display: grid;
  box-shadow: inset 0 1px #ffffff08;
}

.visitor-form-shell-wide {
  gap: 24px;
}

.visitor-field-stack, .visitor-change-grid {
  gap: 14px;
  display: grid;
}

.visitor-change-grid {
  grid-template-columns: 1fr 1fr;
}

.visitor-field {
  gap: 8px;
  display: grid;
}

.visitor-field span, .visitor-readonly-field span {
  color: #eef4f7e0;
  font-size: .96rem;
}

.visitor-event-preview {
  background: #0c111838;
  border: 1px solid #ffffff14;
  border-radius: 20px;
  gap: 0;
  display: grid;
  overflow: hidden;
}

.visitor-event-preview-row {
  gap: 6px;
  padding: 14px 16px;
  display: grid;
}

.visitor-event-preview-row + .visitor-event-preview-row {
  border-top: 1px solid #ffffff14;
}

.visitor-event-preview-row span {
  color: #f1f6f8a8;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-family: Oswald, Arial Narrow, sans-serif;
  font-size: .82rem;
}

.visitor-event-preview-row strong {
  font-size: 1.04rem;
  line-height: 1.45;
}

.visitor-field input, .visitor-field select, .visitor-field textarea, .visitor-readonly-field {
  color: #15202a;
  background: #d7e3e6;
  border: 0;
  border-radius: 0;
  width: 100%;
  min-height: 58px;
  padding: 14px 16px;
  font-size: 1rem;
}

.visitor-field textarea {
  resize: vertical;
  min-height: 120px;
}

.visitor-readonly-field {
  gap: 6px;
  display: grid;
}

.visitor-readonly-field strong {
  color: #15202a;
}

.visitor-field-full {
  grid-column: 1 / -1;
}

.visitor-actions {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 14px;
  display: flex;
}

.visitor-primary-cta, .visitor-secondary-link, .visitor-square-cta {
  cursor: pointer;
  border: 0;
  transition: transform .12s, opacity .12s, background .12s;
}

.visitor-primary-cta:hover, .visitor-secondary-link:hover, .visitor-square-cta:hover {
  transform: translateY(-1px);
}

.visitor-primary-cta {
  color: #fff;
  background: #f44f42;
  border-radius: 999px;
  min-width: 140px;
  min-height: 58px;
  padding: 0 28px;
  font-size: 1rem;
  font-weight: 700;
}

.visitor-primary-cta-inline {
  justify-self: start;
}

.visitor-primary-cta:disabled {
  opacity: .45;
  cursor: not-allowed;
  transform: none;
}

.visitor-secondary-link {
  color: #f0f5f8d1;
  background: none;
  min-height: 48px;
  padding: 0 8px;
  font-size: .98rem;
}

.visitor-card-list, .visitor-detail-stack, .visitor-choice-grid {
  gap: 12px;
  display: grid;
}

.visitor-choice-card {
  text-align: left;
  color: #f3f5f7;
  background: #0c111838;
  border: 1px solid #ffffff14;
  border-radius: 20px;
  gap: 8px;
  width: 100%;
  padding: 18px 20px;
  display: grid;
  box-shadow: inset 0 1px #ffffff05;
}

.visitor-choice-card strong {
  text-transform: uppercase;
  font-family: Oswald, Arial Narrow, sans-serif;
  font-size: 1.2rem;
}

.visitor-choice-card p {
  color: #f1f6f8d1;
  margin: 0;
  line-height: 1.55;
}

.visitor-choice-card.active {
  border-color: #f44f42b3;
  box-shadow: 0 0 0 1px #f44f422e;
}

.visitor-option-card, .visitor-detail-card, .visitor-session-card {
  padding: 14px;
}

.visitor-option-card, .visitor-detail-card {
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 14px;
  display: grid;
}

.visitor-option-main, .visitor-detail-content {
  gap: 10px;
  display: grid;
}

.visitor-option-main {
  grid-template-columns: auto 1fr;
  align-items: start;
}

.visitor-option-copy {
  gap: 6px;
  display: grid;
}

.visitor-option-copy h3, .visitor-detail-content strong {
  text-transform: uppercase;
  margin: 0;
  font-family: Oswald, Arial Narrow, sans-serif;
  font-size: 1.2rem;
}

.visitor-detail-content strong {
  letter-spacing: .04em;
}

.visitor-option-copy p, .visitor-option-copy small, .visitor-detail-content p, .visitor-empty-card p, .visitor-inline-note {
  color: #f1f6f8eb;
  margin: 0;
  line-height: 1.5;
}

.visitor-option-meta {
  color: #ffffffad;
  display: inline-block;
}

.visitor-option-icon {
  color: #fff;
  background: #0059b7;
  border-radius: 2px;
  place-items: center;
  width: 94px;
  height: 94px;
  font-family: Oswald, Arial Narrow, sans-serif;
  font-size: 2rem;
  display: grid;
}

.visitor-square-cta {
  text-align: center;
  color: #fff;
  text-transform: uppercase;
  background: #f44f42;
  border-radius: 20px;
  align-self: stretch;
  place-items: center;
  min-width: 92px;
  min-height: 92px;
  padding: 14px;
  font-family: Oswald, Arial Narrow, sans-serif;
  font-size: 1.2rem;
  text-decoration: none;
  display: grid;
}

.visitor-card-list-results {
  margin-top: 4px;
}

.visitor-detail-separator {
  color: #f1f6f8d1;
  text-transform: uppercase;
  letter-spacing: .06em;
  background: #0c111838;
  border-radius: 999px;
  justify-self: center;
  padding: 4px 12px;
  font-family: Oswald, Arial Narrow, sans-serif;
  font-size: .9rem;
}

.visitor-session-card {
  gap: 14px;
  display: grid;
}

.visitor-session-header {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.visitor-session-header strong {
  font-family: Oswald, Arial Narrow, sans-serif;
  font-size: 1.35rem;
}

.visitor-session-header span {
  color: #eff4f8cc;
  font-size: .92rem;
}

.visitor-session-grid {
  grid-template-columns: auto 1fr;
  gap: 8px 16px;
  display: grid;
}

.visitor-session-grid span {
  color: #eff4f8b8;
}

.visitor-session-grid strong {
  margin: 0;
}

.visitor-inline-note {
  background: #0c111838;
  border-radius: 16px;
  padding: 12px 14px;
}

.visitor-divider {
  background: #eff4f82e;
  height: 1px;
}

.visitor-error-banner, .visitor-notice-banner {
  border-radius: 16px;
  padding: 14px 16px;
  font-size: .95rem;
  line-height: 1.5;
}

.visitor-error-banner {
  color: #ffd7d2;
  background: #f44f4229;
  border: 1px solid #f44f4247;
}

.visitor-notice-banner {
  color: #e6fff3;
  background: #b7e6cc24;
  border: 1px solid #b7e6cc38;
}

.visitor-frame-footer {
  background: #253945;
  justify-content: space-between;
  align-items: end;
  gap: 16px;
  min-height: 78px;
  padding: 10px 20px 0;
  display: flex;
}

.visitor-footer-nav {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  display: flex;
}

.visitor-footer-nav a {
  color: #ecf3f6db;
  font-size: .92rem;
  text-decoration: none;
}

.visitor-footer-logo {
  align-self: end;
  width: 144px;
}

.visitor-footer-logo img {
  width: 100%;
  height: auto;
}

@media (max-width: 720px) {
  .visitor-frame {
    width: min(100%, 100vw);
  }

  .visitor-frame-body {
    padding: 20px 20px 30px;
  }

  .visitor-change-grid, .visitor-option-card, .visitor-detail-card {
    grid-template-columns: 1fr;
  }

  .visitor-option-main {
    grid-template-columns: 72px 1fr;
  }

  .visitor-option-icon {
    width: 72px;
    height: 72px;
    font-size: 1.5rem;
  }

  .visitor-square-cta {
    border-radius: 18px;
    width: 100%;
    min-height: 64px;
  }
}

.visitor-card {
  padding: 20px;
}

.visitor-form {
  grid-template-columns: minmax(220px, .7fr) minmax(180px, .5fr) auto;
  align-items: center;
  gap: 12px;
  display: grid;
}

.visitor-result-card {
  gap: 12px;
  display: grid;
}

.visitor-result-grid {
  color: var(--muted);
  gap: 6px;
  font-size: .9rem;
  display: grid;
}

.lightbox {
  z-index: 50;
  background: #0b1210c2;
  place-items: center;
  padding: 24px;
  display: grid;
  position: fixed;
  inset: 0;
}

.lightbox-frame {
  gap: 12px;
  width: min(1080px, 100%);
  display: grid;
}

.lightbox-close {
  color: #fff;
  background: #ffffff14;
  border: 1px solid #ffffff2e;
  border-radius: 999px;
  justify-self: end;
  padding: 10px 14px;
}

.lightbox-image {
  object-fit: contain;
  border-radius: 12px;
  width: 100%;
  max-height: calc(100vh - 120px);
}

@media (max-width: 1240px) {
  .summary-grid, .board-grid, .config-grid, .control-layout, .activity-grid, .control-metric-grid, .ops-now-strip, .ops-main-grid, .ops-secondary-insights, .capture-grid, .workspace-grid, .review-workbench, .review-focus-grid, .capture-data-grid, .device-grid, .review-comparison-grid, .device-insight-grid, .priority-strip, .capture-filter-grid {
    grid-template-columns: 1fr 1fr;
  }

  .settings-shell {
    display: block;
  }

  .settings-side-nav {
    position: static;
  }

  .settings-split-grid, .settings-checklist-row, .settings-form-row, .workspace-table-head, .command-header-main, .ops-topbar {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 960px) {
  .masthead, .summary-grid, .board-grid, .config-grid, .map-admin-layout, .control-layout, .activity-grid, .control-metric-grid, .ops-now-strip, .ops-main-grid, .ops-secondary-insights, .capture-grid, .workspace-grid, .review-workbench, .review-focus-grid, .capture-data-grid, .device-grid, .review-comparison-grid, .device-insight-grid, .priority-strip, .capture-filter-grid, .visitor-form, .settings-split-grid, .capture-images, .map-metric-grid, .review-focus-images, .review-correction-grid {
    grid-template-columns: 1fr;
  }

  .app-topbar-main, .page-header {
    flex-direction: column;
    align-items: start;
  }

  .command-context-grid, .setup-progress-card {
    grid-template-columns: 1fr;
  }

  .system-notice {
    flex-direction: column;
    align-items: start;
  }

  .review-toolbar, .review-toolbar-meta, .review-queue-item-head, .review-queue-item-meta {
    flex-direction: column;
    align-items: flex-start;
  }

  .ops-primary-actions, .ops-context-meta, .operations-quick-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .ops-topbar-actions, .ops-now-inline {
    grid-template-columns: 1fr;
  }

  .ops-now-item-head {
    flex-direction: column;
    align-items: flex-start;
  }

  .ops-now-inline {
    justify-items: start;
  }

  .ops-metric-chip {
    min-width: 100%;
  }

  .ops-map-panel .map-hint-list, .device-routing-shell, .device-routing-summary {
    grid-template-columns: 1fr;
  }

  .device-routing-panel-head {
    flex-direction: column;
  }
}

@media (max-width: 720px) {
  .dashboard-shell, .visitor-shell {
    width: min(100% - 16px, 1520px);
    padding-top: 16px;
  }

  .masthead, .visitor-hero, .summary-card, .board-panel, .visitor-card, .visitor-result-card {
    border-radius: 22px;
    padding: 16px;
  }

  .masthead h1, .visitor-hero h1 {
    max-width: none;
    font-size: clamp(2.3rem, 11vw, 3.7rem);
  }

  .plate-card {
    grid-template-columns: 1fr;
  }

  .plate-card-media {
    min-height: 180px;
  }

  .capture-row {
    grid-template-columns: 1fr;
  }

  .capture-table-head {
    display: none;
  }

  .workspace-row-grid, .map-object-grid {
    grid-template-columns: 1fr;
  }

  .capture-card, .device-card {
    padding: 14px;
  }

  .capture-image-button, .capture-image-empty {
    min-height: 180px;
  }

  .map-canvas {
    min-height: 380px;
  }

  .app-main {
    padding: 14px;
  }

  .visitor-frame {
    width: 100%;
  }

  .visitor-frame-body {
    padding: 18px 18px 28px;
  }

  .visitor-copy h1 {
    font-size: clamp(2.8rem, 14vw, 4.2rem);
  }

  .visitor-copy h2 {
    font-size: clamp(2rem, 11vw, 3rem);
  }

  .visitor-change-grid, .visitor-option-card, .visitor-detail-card, .visitor-frame-footer {
    grid-template-columns: 1fr;
  }

  .visitor-square-cta {
    width: 100%;
    min-height: 64px;
  }

  .visitor-footer-logo {
    width: 112px;
  }
}

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

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

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

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

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

@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-blur {
  syntax: "*";
  inherits: false
}

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

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

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

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

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

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

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

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

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

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

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

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

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

/* [project]/node_modules/maplibre-gl/dist/maplibre-gl.css [app-client] (css) */
.maplibregl-map {
  -webkit-tap-highlight-color: #0000;
  font: 12px / 20px Helvetica Neue, Arial, Helvetica, sans-serif;
  position: relative;
  overflow: hidden;
}

.maplibregl-canvas {
  position: absolute;
  top: 0;
  left: 0;
}

.maplibregl-map:fullscreen {
  width: 100%;
  height: 100%;
}

.maplibregl-ctrl-group button.maplibregl-ctrl-compass {
  touch-action: none;
}

.maplibregl-canvas-container.maplibregl-interactive, .maplibregl-ctrl-group button.maplibregl-ctrl-compass {
  cursor: grab;
  -webkit-user-select: none;
  user-select: none;
}

.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer {
  cursor: pointer;
}

.maplibregl-canvas-container.maplibregl-interactive:active, .maplibregl-ctrl-group button.maplibregl-ctrl-compass:active {
  cursor: grabbing;
}

.maplibregl-canvas-container.maplibregl-touch-zoom-rotate, .maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas {
  touch-action: pan-x pan-y;
}

.maplibregl-canvas-container.maplibregl-touch-drag-pan, .maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas {
  touch-action: pinch-zoom;
}

.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan, .maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas {
  touch-action: none;
}

.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures, .maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas {
  touch-action: pan-x pan-y;
}

.maplibregl-ctrl-bottom-left, .maplibregl-ctrl-bottom-right, .maplibregl-ctrl-top-left, .maplibregl-ctrl-top-right {
  pointer-events: none;
  z-index: 2;
  position: absolute;
}

.maplibregl-ctrl-top-left {
  top: 0;
  left: 0;
}

.maplibregl-ctrl-top-right {
  top: 0;
  right: 0;
}

.maplibregl-ctrl-bottom-left {
  bottom: 0;
  left: 0;
}

.maplibregl-ctrl-bottom-right {
  bottom: 0;
  right: 0;
}

.maplibregl-ctrl {
  clear: both;
  pointer-events: auto;
  transform: translate(0);
}

.maplibregl-ctrl-top-left .maplibregl-ctrl {
  float: left;
  margin: 10px 0 0 10px;
}

.maplibregl-ctrl-top-right .maplibregl-ctrl {
  float: right;
  margin: 10px 10px 0 0;
}

.maplibregl-ctrl-bottom-left .maplibregl-ctrl {
  float: left;
  margin: 0 0 10px 10px;
}

.maplibregl-ctrl-bottom-right .maplibregl-ctrl {
  float: right;
  margin: 0 10px 10px 0;
}

.maplibregl-ctrl-group {
  background: #fff;
  border-radius: 4px;
}

.maplibregl-ctrl-group:not(:empty) {
  box-shadow: 0 0 0 2px #0000001a;
}

@media (forced-colors: active) {
  .maplibregl-ctrl-group:not(:empty) {
    box-shadow: 0 0 0 2px buttontext;
  }
}

.maplibregl-ctrl-group button {
  box-sizing: border-box;
  cursor: pointer;
  background-color: #0000;
  border: 0;
  outline: none;
  width: 29px;
  height: 29px;
  padding: 0;
  display: block;
}

.maplibregl-ctrl-group button + button {
  border-top: 1px solid #ddd;
}

.maplibregl-ctrl button .maplibregl-ctrl-icon {
  background-position: 50%;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  display: block;
}

@media (forced-colors: active) {
  .maplibregl-ctrl-icon {
    background-color: #0000;
  }

  .maplibregl-ctrl-group button + button {
    border-top: 1px solid buttontext;
  }
}

.maplibregl-ctrl button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

.maplibregl-ctrl-attrib-button:focus, .maplibregl-ctrl-group button:focus {
  box-shadow: 0 0 2px 2px #0096ff;
}

.maplibregl-ctrl button:disabled {
  cursor: not-allowed;
}

.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon {
  opacity: .25;
}

@media (hover: hover) {
  .maplibregl-ctrl button:not(:disabled):hover {
    background-color: #0000000d;
  }
}

.maplibregl-ctrl button:not(:disabled):active {
  background-color: #0000000d;
}

.maplibregl-ctrl-group button:focus:focus-visible {
  box-shadow: 0 0 2px 2px #0096ff;
}

.maplibregl-ctrl-group button:focus:not(:focus-visible) {
  box-shadow: none;
}

.maplibregl-ctrl-group button:focus:first-child {
  border-radius: 4px 4px 0 0;
}

.maplibregl-ctrl-group button:focus:last-child {
  border-radius: 0 0 4px 4px;
}

.maplibregl-ctrl-group button:focus:only-child {
  border-radius: inherit;
}

.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E");
}

.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E");
}

@media (forced-colors: active) {
  .maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E");
  }

  .maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E");
  }
}

@media (forced-colors: active) and (prefers-color-scheme: light) {
  .maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E");
  }

  .maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E");
  }
}

.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E");
}

.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E");
}

@media (forced-colors: active) {
  .maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E");
  }

  .maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E");
  }
}

@media (forced-colors: active) and (prefers-color-scheme: light) {
  .maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E");
  }

  .maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E");
  }
}

.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E");
}

@media (forced-colors: active) {
  .maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E");
  }
}

@media (forced-colors: active) and (prefers-color-scheme: light) {
  .maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E");
  }
}

.maplibregl-ctrl button.maplibregl-ctrl-globe .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='%23333' viewBox='0 0 22 22'%3E%3Ccircle cx='11' cy='11' r='8.5'/%3E%3Cpath d='M17.5 11c0 4.819-3.02 8.5-6.5 8.5S4.5 15.819 4.5 11 7.52 2.5 11 2.5s6.5 3.681 6.5 8.5Z'/%3E%3Cpath d='M13.5 11c0 2.447-.331 4.64-.853 6.206-.262.785-.562 1.384-.872 1.777-.314.399-.58.517-.775.517s-.461-.118-.775-.517c-.31-.393-.61-.992-.872-1.777C8.831 15.64 8.5 13.446 8.5 11s.331-4.64.853-6.206c.262-.785.562-1.384.872-1.777.314-.399.58-.517.775-.517s.461.118.775.517c.31.393.61.992.872 1.777.522 1.565.853 3.76.853 6.206Z'/%3E%3Cpath d='M11 7.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138q.07-.058.224-.138c.299-.151.763-.302 1.379-.434C7.378 5.666 9.091 5.5 11 5.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138q-.07.058-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428ZM4.486 6.436ZM11 16.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138 1.3 1.3 0 0 1 .224-.138c.299-.151.763-.302 1.379-.434C7.378 14.666 9.091 14.5 11 14.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138a1.3 1.3 0 0 1-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428Zm-6.514-1.064ZM11 12.5c-2.46 0-4.672-.222-6.255-.574-.796-.177-1.406-.38-1.805-.59a1.5 1.5 0 0 1-.39-.272.3.3 0 0 1-.047-.064.3.3 0 0 1 .048-.064c.066-.073.189-.167.389-.272.399-.21 1.009-.413 1.805-.59C6.328 9.722 8.54 9.5 11 9.5s4.672.222 6.256.574c.795.177 1.405.38 1.804.59.2.105.323.2.39.272a.3.3 0 0 1 .047.064.3.3 0 0 1-.048.064 1.4 1.4 0 0 1-.389.272c-.399.21-1.009.413-1.804.59-1.584.352-3.796.574-6.256.574Zm-8.501-1.51v.002zm0 .018v.002zm17.002.002v-.002zm0-.018v-.002z'/%3E%3C/svg%3E");
}

.maplibregl-ctrl button.maplibregl-ctrl-globe-enabled .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='%2333b5e5' viewBox='0 0 22 22'%3E%3Ccircle cx='11' cy='11' r='8.5'/%3E%3Cpath d='M17.5 11c0 4.819-3.02 8.5-6.5 8.5S4.5 15.819 4.5 11 7.52 2.5 11 2.5s6.5 3.681 6.5 8.5Z'/%3E%3Cpath d='M13.5 11c0 2.447-.331 4.64-.853 6.206-.262.785-.562 1.384-.872 1.777-.314.399-.58.517-.775.517s-.461-.118-.775-.517c-.31-.393-.61-.992-.872-1.777C8.831 15.64 8.5 13.446 8.5 11s.331-4.64.853-6.206c.262-.785.562-1.384.872-1.777.314-.399.58-.517.775-.517s.461.118.775.517c.31.393.61.992.872 1.777.522 1.565.853 3.76.853 6.206Z'/%3E%3Cpath d='M11 7.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138q.07-.058.224-.138c.299-.151.763-.302 1.379-.434C7.378 5.666 9.091 5.5 11 5.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138q-.07.058-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428ZM4.486 6.436ZM11 16.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138 1.3 1.3 0 0 1 .224-.138c.299-.151.763-.302 1.379-.434C7.378 14.666 9.091 14.5 11 14.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138a1.3 1.3 0 0 1-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428Zm-6.514-1.064ZM11 12.5c-2.46 0-4.672-.222-6.255-.574-.796-.177-1.406-.38-1.805-.59a1.5 1.5 0 0 1-.39-.272.3.3 0 0 1-.047-.064.3.3 0 0 1 .048-.064c.066-.073.189-.167.389-.272.399-.21 1.009-.413 1.805-.59C6.328 9.722 8.54 9.5 11 9.5s4.672.222 6.256.574c.795.177 1.405.38 1.804.59.2.105.323.2.39.272a.3.3 0 0 1 .047.064.3.3 0 0 1-.048.064 1.4 1.4 0 0 1-.389.272c-.399.21-1.009.413-1.804.59-1.584.352-3.796.574-6.256.574Zm-8.501-1.51v.002zm0 .018v.002zm17.002.002v-.002zm0-.018v-.002z'/%3E%3C/svg%3E");
}

.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E");
}

.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E");
}

.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E");
}

.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E");
}

.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E");
}

.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E");
}

.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E");
}

.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E");
}

.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon {
  animation: 2s linear infinite maplibregl-spin;
}

@media (forced-colors: active) {
  .maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E");
  }

  .maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E");
  }

  .maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E");
  }

  .maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E");
  }

  .maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E");
  }

  .maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E");
  }
}

@media (forced-colors: active) and (prefers-color-scheme: light) {
  .maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E");
  }

  .maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E");
  }
}

@keyframes maplibregl-spin {
  0% {
    transform: rotate(0);
  }

  to {
    transform: rotate(1turn);
  }
}

a.maplibregl-ctrl-logo {
  cursor: pointer;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  width: 88px;
  height: 23px;
  margin: 0 0 -4px -4px;
  display: block;
  overflow: hidden;
}

a.maplibregl-ctrl-logo.maplibregl-compact {
  width: 14px;
}

@media (forced-colors: active) {
  a.maplibregl-ctrl-logo {
    background-color: #0000;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");
  }
}

@media (forced-colors: active) and (prefers-color-scheme: light) {
  a.maplibregl-ctrl-logo {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");
  }
}

.maplibregl-ctrl.maplibregl-ctrl-attrib {
  background-color: #ffffff80;
  margin: 0;
  padding: 0 5px;
}

@media screen {
  .maplibregl-ctrl-attrib.maplibregl-compact {
    box-sizing: content-box;
    color: #000;
    background-color: #fff;
    border-radius: 12px;
    min-height: 20px;
    margin: 10px;
    padding: 2px 24px 2px 0;
    position: relative;
  }

  .maplibregl-ctrl-attrib.maplibregl-compact-show {
    visibility: visible;
    padding: 2px 28px 2px 8px;
  }

  .maplibregl-ctrl-bottom-left > .maplibregl-ctrl-attrib.maplibregl-compact-show, .maplibregl-ctrl-top-left > .maplibregl-ctrl-attrib.maplibregl-compact-show {
    border-radius: 12px;
    padding: 2px 8px 2px 28px;
  }

  .maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner {
    display: none;
  }

  .maplibregl-ctrl-attrib-button {
    box-sizing: border-box;
    cursor: pointer;
    background-color: #ffffff80;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");
    border: 0;
    border-radius: 12px;
    outline: none;
    width: 24px;
    height: 24px;
    display: none;
    position: absolute;
    top: 0;
    right: 0;
  }

  .maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button {
    appearance: none;
    list-style: none;
  }

  .maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker {
    display: none;
  }

  .maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button, .maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button {
    left: 0;
  }

  .maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button, .maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner {
    display: block;
  }

  .maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button {
    background-color: #0000000d;
  }

  .maplibregl-ctrl-bottom-right > .maplibregl-ctrl-attrib.maplibregl-compact:after {
    bottom: 0;
    right: 0;
  }

  .maplibregl-ctrl-top-right > .maplibregl-ctrl-attrib.maplibregl-compact:after {
    top: 0;
    right: 0;
  }

  .maplibregl-ctrl-top-left > .maplibregl-ctrl-attrib.maplibregl-compact:after {
    top: 0;
    left: 0;
  }

  .maplibregl-ctrl-bottom-left > .maplibregl-ctrl-attrib.maplibregl-compact:after {
    bottom: 0;
    left: 0;
  }
}

@media screen and (forced-colors: active) {
  .maplibregl-ctrl-attrib.maplibregl-compact:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");
  }
}

@media screen and (forced-colors: active) and (prefers-color-scheme: light) {
  .maplibregl-ctrl-attrib.maplibregl-compact:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");
  }
}

.maplibregl-ctrl-attrib a {
  color: #000000bf;
  text-decoration: none;
}

.maplibregl-ctrl-attrib a:hover {
  color: inherit;
  text-decoration: underline;
}

.maplibregl-attrib-empty {
  display: none;
}

.maplibregl-ctrl-scale {
  box-sizing: border-box;
  color: #333;
  white-space: nowrap;
  background-color: #ffffffbf;
  border: 2px solid #333;
  border-top: #333;
  padding: 0 5px;
  font-size: 10px;
}

.maplibregl-popup {
  pointer-events: none;
  will-change: transform;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
}

.maplibregl-popup-anchor-top, .maplibregl-popup-anchor-top-left, .maplibregl-popup-anchor-top-right {
  flex-direction: column;
}

.maplibregl-popup-anchor-bottom, .maplibregl-popup-anchor-bottom-left, .maplibregl-popup-anchor-bottom-right {
  flex-direction: column-reverse;
}

.maplibregl-popup-anchor-left {
  flex-direction: row;
}

.maplibregl-popup-anchor-right {
  flex-direction: row-reverse;
}

.maplibregl-popup-tip {
  z-index: 1;
  border: 10px solid #0000;
  width: 0;
  height: 0;
}

.maplibregl-popup-anchor-top .maplibregl-popup-tip {
  border-top: none;
  border-bottom-color: #fff;
  align-self: center;
}

.maplibregl-popup-anchor-top-left .maplibregl-popup-tip {
  border-top: none;
  border-bottom-color: #fff;
  border-left: none;
  align-self: flex-start;
}

.maplibregl-popup-anchor-top-right .maplibregl-popup-tip {
  border-top: none;
  border-bottom-color: #fff;
  border-right: none;
  align-self: flex-end;
}

.maplibregl-popup-anchor-bottom .maplibregl-popup-tip {
  border-top-color: #fff;
  border-bottom: none;
  align-self: center;
}

.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip {
  border-top-color: #fff;
  border-bottom: none;
  border-left: none;
  align-self: flex-start;
}

.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip {
  border-top-color: #fff;
  border-bottom: none;
  border-right: none;
  align-self: flex-end;
}

.maplibregl-popup-anchor-left .maplibregl-popup-tip {
  border-left: none;
  border-right-color: #fff;
  align-self: center;
}

.maplibregl-popup-anchor-right .maplibregl-popup-tip {
  border-left-color: #fff;
  border-right: none;
  align-self: center;
}

[dir="rtl"] .maplibregl-popup-anchor-left {
  flex-direction: row-reverse;
}

[dir="rtl"] .maplibregl-popup-anchor-right {
  flex-direction: row;
}

[dir="rtl"] .maplibregl-popup-anchor-top-left .maplibregl-popup-tip {
  align-self: flex-end;
}

[dir="rtl"] .maplibregl-popup-anchor-top-right .maplibregl-popup-tip {
  align-self: flex-start;
}

[dir="rtl"] .maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip {
  align-self: flex-end;
}

[dir="rtl"] .maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip {
  align-self: flex-start;
}

.maplibregl-popup-close-button {
  cursor: pointer;
  background-color: #0000;
  border: 0;
  border-radius: 0 3px 0 0;
  position: absolute;
  top: 0;
  right: 0;
}

.maplibregl-popup-close-button:hover {
  background-color: #0000000d;
}

.maplibregl-popup-content {
  pointer-events: auto;
  background: #fff;
  border-radius: 3px;
  padding: 15px 10px;
  position: relative;
  box-shadow: 0 1px 2px #0000001a;
}

.maplibregl-popup-anchor-top-left .maplibregl-popup-content {
  border-top-left-radius: 0;
}

.maplibregl-popup-anchor-top-right .maplibregl-popup-content {
  border-top-right-radius: 0;
}

.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content {
  border-bottom-left-radius: 0;
}

.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content {
  border-bottom-right-radius: 0;
}

.maplibregl-popup-track-pointer {
  display: none;
}

.maplibregl-popup-track-pointer * {
  pointer-events: none;
  -webkit-user-select: none;
  user-select: none;
}

.maplibregl-map:hover .maplibregl-popup-track-pointer {
  display: flex;
}

.maplibregl-map:active .maplibregl-popup-track-pointer {
  display: none;
}

.maplibregl-marker {
  will-change: transform;
  transition: opacity .2s;
  position: absolute;
  top: 0;
  left: 0;
}

.maplibregl-user-location-dot, .maplibregl-user-location-dot:before {
  background-color: #1da1f2;
  border-radius: 50%;
  width: 15px;
  height: 15px;
}

.maplibregl-user-location-dot:before {
  content: "";
  animation: 2s infinite maplibregl-user-location-dot-pulse;
  position: absolute;
}

.maplibregl-user-location-dot:after {
  box-sizing: border-box;
  content: "";
  border: 2px solid #fff;
  border-radius: 50%;
  width: 19px;
  height: 19px;
  position: absolute;
  top: -2px;
  left: -2px;
  box-shadow: 0 0 3px #00000059;
}

@media (prefers-reduced-motion: reduce) {
  .maplibregl-user-location-dot:before {
    animation: none;
  }
}

@keyframes maplibregl-user-location-dot-pulse {
  0% {
    opacity: 1;
    transform: scale(1);
  }

  70% {
    opacity: 0;
    transform: scale(3);
  }

  to {
    opacity: 0;
    transform: scale(1);
  }
}

.maplibregl-user-location-dot-stale {
  background-color: #aaa;
}

.maplibregl-user-location-dot-stale:after {
  display: none;
}

.maplibregl-user-location-accuracy-circle {
  background-color: #1da1f233;
  border-radius: 100%;
  width: 1px;
  height: 1px;
}

.maplibregl-crosshair, .maplibregl-crosshair .maplibregl-interactive, .maplibregl-crosshair .maplibregl-interactive:active {
  cursor: crosshair;
}

.maplibregl-boxzoom {
  opacity: .5;
  background: #fff;
  border: 2px dotted #202020;
  width: 0;
  height: 0;
  position: absolute;
  top: 0;
  left: 0;
}

.maplibregl-cooperative-gesture-screen {
  color: #fff;
  opacity: 0;
  pointer-events: none;
  z-index: 99999;
  background: #0006;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  font-size: 1.4em;
  line-height: 1.2;
  transition: opacity 1s 1s;
  display: flex;
  position: absolute;
  inset: 0;
}

.maplibregl-cooperative-gesture-screen.maplibregl-show {
  opacity: 1;
  transition: opacity 50ms;
}

.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message {
  display: none;
}

@media (hover: none), (pointer: coarse) {
  .maplibregl-cooperative-gesture-screen .maplibregl-desktop-message {
    display: none;
  }

  .maplibregl-cooperative-gesture-screen .maplibregl-mobile-message {
    display: block;
  }
}

.maplibregl-pseudo-fullscreen {
  z-index: 99999;
  width: 100% !important;
  height: 100% !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
}

/*# sourceMappingURL=_8842dd59._.css.map*/