/* src/go/go.css */
:root[data-go-active=true] {
  overflow: hidden;
  color-scheme: dark;
}
:root[data-go-active=true] body {
  overflow: hidden;
  background: #061116;
}
.go-shell {
  --cockpit: #061116;
  --panel: #0b1b22;
  --panel-hi: #10242d;
  --border: #284654;
  --text: #f4f7f8;
  --muted: #a9bac5;
  --red: #e31c2a;
  --green: #18d9a1;
  --blue: #18a9ff;
  --stale: #7f93a2;
  height: 100dvh;
  min-height: 620px;
  overflow: hidden;
  color: var(--text);
  background: var(--cockpit);
  font: 500 15px/1.35 "DM Sans", sans-serif;
  isolation: isolate;
}
.go-map-feature-cue {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 54px;
  align-items: stretch;
  border: 1px solid #315463;
  border-radius: 14px;
  background:
    linear-gradient(
      100deg,
      #0b2028,
      #102830);
  color: #f4f7f8;
  overflow: hidden;
}
.go-map-feature-target {
  min-width: 0;
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 13px 16px;
  text-align: left;
}
.go-map-feature-target > svg {
  flex: 0 0 auto;
  color: #18d9a1;
}
.go-map-feature-target span {
  min-width: 0;
  display: grid;
  gap: 2px;
}
.go-map-feature-target small,
.go-map-feature-target em {
  color: #a9bac5;
  font-style: normal;
  font-size: .78rem;
}
.go-map-feature-target strong {
  overflow: hidden;
  font-size: .98rem;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.go-map-feature-dismiss {
  display: grid;
  place-items: center;
  border-left: 1px solid #315463;
  color: #d8e2e6;
  background: rgba(2, 13, 18, .18);
}
.go-map-feature-dismiss:hover {
  background: rgba(255, 255, 255, .08);
}
.motus-search-results {
  display: grid;
  gap: 5px;
  margin: -6px 0 10px;
  padding: 6px;
  border: 1px solid #294a57;
  border-radius: 12px;
  background: #07181f;
}
.motus-search-results button {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 9px 10px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #eef5f6;
  text-align: left;
  cursor: pointer;
}
.motus-search-results button:hover,
.motus-search-results button:focus-visible {
  background: #102b34;
}
.motus-search-results button > svg {
  flex: 0 0 auto;
  color: #12d9a0;
}
.motus-search-results button span {
  display: grid;
  gap: 2px;
}
.motus-search-results button small {
  color: #90a6af;
}
.motus-search-status {
  margin: 7px 2px;
  color: var(--muted);
  font-size: 12px;
}
.motus-search-status.is-error {
  color: #ff9e6d;
}
.motus-progress.is-temporary {
  border-color: #2b7569;
}
.motus-objective-complete {
  margin: 10px 0 0;
  color: #18d9a1;
  font-size: .78rem;
}
.go-shell *,
.go-shell *::before,
.go-shell *::after {
  box-sizing: border-box;
}
.go-shell button,
.go-shell input,
.go-shell select {
  font: inherit;
}
.go-shell button {
  color: inherit;
}
.go-shell button:focus-visible,
.go-shell input:focus-visible,
.go-shell select:focus-visible {
  outline: 2px solid var(--blue);
  outline-offset: 2px;
}
.go-shell h1,
.go-shell h2,
.go-shell strong {
  font-family: Manrope, sans-serif;
}
.go-shell::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -2;
  background-image:
    linear-gradient(
      180deg,
      rgba(6, 17, 22, .24) 0,
      rgba(6, 17, 22, .8) 25%,
      #061116 64%),
    var(--go-hero);
  background-size: cover;
  background-position: center 25%;
  filter: saturate(.78);
}
.go-shell::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(
      circle at 47% 26%,
      transparent 0 14%,
      rgba(1, 8, 12, .3) 46%,
      rgba(1, 8, 12, .68) 100%);
}
.go-preview-notice {
  position: fixed;
  z-index: 16;
  top: 80px;
  right: 18px;
  width: min(390px, calc(100vw - 36px));
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  align-items: start;
  padding: 13px 15px;
  border: 1px solid rgba(255, 255, 255, .2);
  border-left: 4px solid var(--red);
  border-radius: 10px;
  background: rgba(5, 18, 24, .94);
  box-shadow: 0 14px 40px rgba(0, 0, 0, .42);
  backdrop-filter: blur(18px);
}
.go-preview-notice > span {
  margin-top: 1px;
  padding: 4px 7px;
  border-radius: 5px;
  color: #fff;
  background: var(--red);
  font: 750 11px/1 Manrope, sans-serif;
  letter-spacing: .04em;
  text-transform: uppercase;
  white-space: nowrap;
}
.go-preview-notice strong {
  display: block;
  color: #fff;
  font-size: 14px;
}
.go-preview-notice p {
  margin: 3px 0 0;
  color: #b8c7cf;
  font-size: 12px;
  line-height: 1.35;
}
.go-shell.is-preview .go-primary,
.go-shell.is-preview .go-ptt,
.go-shell.is-preview .go-ride-actions button,
.go-shell.is-preview .go-join-request button,
.go-shell.is-preview .go-channel-controls form button {
  cursor: not-allowed;
  filter: saturate(.55);
}
.go-header {
  height: 68px;
  padding: 0 clamp(22px, 3vw, 52px);
  display: grid;
  grid-template-columns: minmax(210px, 1fr) auto minmax(280px, 1fr);
  align-items: center;
  gap: 24px;
  border-bottom: 1px solid rgba(97, 136, 153, .35);
  background: rgba(4, 15, 20, .68);
  backdrop-filter: blur(18px);
}
.go-brand {
  justify-self: start;
  padding: 0;
}
.go-brand img {
  display: block;
  width: 202px;
  height: 44px;
  object-fit: contain;
  object-position: left center;
  filter: brightness(0) invert(1);
}
.go-header nav {
  display: flex;
  align-self: stretch;
  gap: 42px;
}
.go-header nav button {
  position: relative;
  min-width: 72px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 3px;
  font: 600 16px/1 Manrope, sans-serif;
  color: #d7e1e7;
}
.go-nav-art {
  width: 22px;
  height: 22px;
  object-fit: cover;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .18);
}
.go-header nav button::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  background: transparent;
}
.go-header nav button.is-active {
  color: #fff;
}
.go-header nav button.is-active .go-nav-art {
  box-shadow: 0 0 0 2px rgba(227, 28, 42, .72);
}
.go-header nav button.is-active::after {
  background: var(--red);
}
.go-tools {
  justify-self: end;
  display: flex;
  align-items: center;
  gap: 11px;
}
.go-tools > button {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 50%;
}
.go-tools > button:hover {
  background: rgba(255, 255, 255, .07);
}
.go-notifications {
  position: relative;
}
.go-notifications i {
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--red);
  right: 6px;
  top: 5px;
}
.go-tools .go-profile {
  width: auto;
  display: flex;
  gap: 8px;
  padding: 0 2px 0 0;
  border-radius: 24px;
}
.go-profile img {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  border: 1px solid #a7bcc6;
}
.go-profile span {
  white-space: nowrap;
}
.go-tools .go-mobile-live {
  display: none;
}
.go-workspace {
  height: calc(100dvh - 68px);
  min-height: 552px;
  display: grid;
  grid-template-rows: 92px minmax(0, 1fr) clamp(142px, 17.5vh, 168px);
  gap: 12px;
  padding: 14px clamp(16px, 1.45vw, 24px) 16px;
  overflow: hidden;
}
.go-ride-top {
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(430px, 1.05fr) minmax(600px, 1.08fr);
  gap: 20px;
  align-items: end;
}
.go-ride-header {
  min-width: 0;
  align-self: center;
}
.go-eyebrow {
  margin: 0 0 1px;
  display: flex;
  align-items: center;
  gap: 7px;
  color: #ff3542;
  font: 750 14px/1 Manrope, sans-serif;
  letter-spacing: .16em;
}
.go-scramble-indicator,
.mobile-scramble-indicator {
  display: inline-grid;
  place-items: center;
  color: #fff;
  background:
    linear-gradient(
      145deg,
      #e7354b,
      #a90f22);
  border: 1px solid #ff7182;
  border-radius: 50%;
  box-shadow: 0 0 12px #e31c2a55;
}
.go-scramble-indicator {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
}
.mobile-scramble-indicator {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  margin-right: 9px;
  vertical-align: middle;
}
.go-ride-header h1 {
  color: #fff;
  font: 750 clamp(30px, 3vw, 45px)/1 Manrope, sans-serif;
  letter-spacing: -.045em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.go-ride-sub {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 5px;
  color: #d2dde3;
  font-size: 17px;
}
.go-live-dot {
  width: 9px;
  height: 9px;
  background: var(--green);
  border-radius: 50%;
  box-shadow: 0 0 12px rgba(24, 217, 161, .68);
}
.go-mobile-rider-count,
.go-mobile-progress {
  display: none;
}
.go-status-summary {
  height: 82px;
  display: grid;
  grid-template-columns: 1fr 1.1fr 1fr auto;
  border: 1px solid var(--border);
  border-radius: 14px;
  background:
    linear-gradient(
      115deg,
      rgba(6, 21, 28, .91),
      rgba(7, 20, 26, .75));
  box-shadow: 0 8px 25px rgba(0, 0, 0, .2);
  overflow: hidden;
}
.go-status-summary > div {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 10px 18px;
}
.go-status-summary > div + div {
  border-left: 1px solid var(--border);
}
.go-status-summary svg {
  color: #bacbeb;
}
.go-status-summary p {
  min-width: 0;
  margin: 0;
}
.go-status-summary strong,
.go-status-summary span {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.go-status-summary strong {
  color: #fff;
  font-size: 14px;
}
.go-status-summary span {
  color: var(--muted);
  font-size: 12px;
  margin-top: 3px;
}
.go-status-summary .go-summary-progress {
  width: 178px;
  display: block;
}
.go-summary-progress progress {
  width: 100%;
  height: 8px;
  border: 0;
  border-radius: 10px;
  overflow: hidden;
  appearance: none;
}
.go-summary-progress progress::-webkit-progress-bar {
  background: #213845;
}
.go-summary-progress progress::-webkit-progress-value {
  background:
    linear-gradient(
      90deg,
      #44c992,
      var(--green));
  border-radius: 10px;
}
.go-main-grid {
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(345px, .98fr) minmax(410px, 1.12fr) minmax(290px, .76fr);
  gap: 14px;
}
.go-panel {
  border: 1px solid var(--border);
  border-radius: 13px;
  background:
    linear-gradient(
      135deg,
      rgba(7, 24, 31, .94),
      rgba(5, 18, 24, .87));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .02), 0 10px 30px rgba(0, 0, 0, .16);
  overflow: hidden;
}
.go-panel-heading {
  height: 45px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 0 14px;
}
.go-panel-heading h2 {
  font-size: 15px;
  letter-spacing: -.02em;
}
.go-panel-heading > span {
  color: var(--muted);
}
.go-segmented {
  display: flex;
  padding: 2px;
  border: 1px solid var(--border);
  border-radius: 8px;
}
.go-segmented button {
  width: 70px;
  padding: 4px 8px;
  border-radius: 6px;
  font-size: 12px;
  color: #c4d1d7;
}
.go-segmented button.is-active {
  color: #fff;
  background: linear-gradient(#bd1c28, #7d1018);
  border: 1px solid var(--red);
}
.go-position {
  min-height: 0;
  display: grid;
  grid-template-rows: 45px minmax(0, 1fr);
}
.go-radar {
  min-height: 0;
  position: relative;
  padding: 0 5px 7px;
}
.go-radar svg {
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
}
.radar-ring {
  fill: none;
  stroke: #234553;
  stroke-width: 1;
}
.radar-ring.outer {
  stroke: #49616d;
  stroke-width: 1.3;
}
.radar-axis {
  stroke: #17323d;
  stroke-width: 1;
}
.radar-cardinal {
  fill: #eef4f7;
  font: 700 14px Manrope, sans-serif;
}
.radar-degree {
  fill: #8fa6b0;
  font: 650 8px Manrope, sans-serif;
  paint-order: stroke;
  stroke: #07161c;
  stroke-width: 2px;
}
.radar-arrival-ring {
  fill: none;
  stroke: #18d9a1;
  filter: drop-shadow(0 0 5px rgba(24, 217, 161, .45));
  transition: opacity .5s ease, stroke-width .5s ease;
}
.radar-proximity-halo {
  fill: none;
  stroke: #18a9ff;
  stroke-width: 5;
  stroke-linecap: round;
  filter: drop-shadow(0 0 9px rgba(24, 169, 255, .82));
  animation: radar-halo 1.9s ease-in-out infinite;
}
@keyframes radar-halo {
  50% {
    opacity: .48;
  }
}
.radar-target line,
.mobile-radar-target line {
  stroke: #e31c2a;
  stroke-width: 2.2;
  stroke-linecap: round;
}
.radar-target circle,
.mobile-radar-target circle {
  fill: #0b1b22;
  stroke: #e31c2a;
  stroke-width: 2.4;
}
.radar-target image,
.mobile-radar-target image {
  pointer-events: none;
}
.radar-target-icon {
  fill: none;
  stroke: #f4f7f8;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.radar-target text,
.radar-rider text {
  fill: #f4f7f8;
  font: 600 11px "DM Sans", sans-serif;
  paint-order: stroke;
  stroke: #07161c;
  stroke-width: 3px;
  stroke-linejoin: round;
}
.radar-target text + text,
.radar-rider text + text {
  fill: #cedae0;
  font-weight: 400;
}
.radar-rider circle,
.mobile-radar-rider circle {
  stroke-width: 2;
  filter: drop-shadow(0 0 6px currentColor);
}
.radar-rider image,
.mobile-radar-rider image {
  pointer-events: none;
}
.radar-initials {
  fill: #f4f7f8 !important;
  stroke: none !important;
  font: 750 7px Manrope, sans-serif !important;
}
.radar-rider.is-green {
  color: var(--green);
}
.radar-rider.is-green circle {
  fill: var(--green);
  stroke: #a5ffe5;
}
.radar-rider.is-blue {
  color: var(--blue);
}
.radar-rider.is-blue circle {
  fill: var(--blue);
  stroke: #aadfff;
}
.radar-rider.is-red {
  color: var(--red);
}
.radar-rider.is-red circle {
  fill: #ff3542;
  stroke: #ffc0c5;
}
.radar-rider.is-stale {
  color: var(--stale);
}
.radar-rider.is-stale circle {
  fill: var(--stale);
  stroke: #c6d1d8;
}
.radar-rider.is-relevant circle,
.mobile-radar-rider.is-relevant circle {
  stroke: #18a9ff;
  stroke-width: 3;
  filter: drop-shadow(0 0 8px rgba(24, 169, 255, .9));
}
.radar-rider .movement {
  fill: currentColor;
}
.radar-you path:first-child {
  fill: #4fc3ff;
  stroke: #d7f4ff;
  stroke-width: 1.3;
  filter: drop-shadow(0 0 5px rgba(79, 195, 255, .8));
}
.radar-you path:last-child {
  stroke: #d7f4ff;
  stroke-width: 1;
}
.go-radar-bearing {
  position: absolute;
  z-index: 4;
  right: 12px;
  bottom: 8px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 10px;
  border: 1px solid #1c3b48;
  background: rgba(3, 14, 19, .9);
  border-radius: 8px;
  font: 600 12px Manrope, sans-serif;
}
.go-radar-bearing small {
  padding-left: 10px;
  border-left: 1px solid #31505c;
  color: #a9bac5;
  font-size: 11px;
}
.radar-relevance {
  position: absolute;
  z-index: 4;
  top: 58px;
  left: 50%;
  display: grid;
  gap: 2px;
  min-width: 210px;
  padding: 8px 12px;
  transform: translateX(-50%);
  border: 1px solid rgba(24, 169, 255, .55);
  border-radius: 10px;
  background: rgba(6, 17, 22, .9);
  box-shadow: 0 8px 25px rgba(0, 0, 0, .3);
  text-align: center;
  pointer-events: none;
}
.radar-relevance strong {
  color: #d8f2ff;
  font-size: 11px;
}
.radar-relevance small {
  color: #18a9ff;
  font-size: 10px;
}
.mobile-radar-scale {
  position: absolute;
  z-index: 5;
  right: 12px;
  bottom: 52px;
  color: #a9bac5;
  font: 650 11px Manrope, sans-serif;
}
.go-map {
  width: 100%;
  height: 100%;
  min-height: 0;
  background: #10252e;
}
.go-map-frame {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 0;
  overflow: hidden;
  border-radius: inherit;
}
.go-map-frame > .go-map {
  position: absolute;
  inset: 0;
}
.go-map-feature-marker {
  position: absolute;
  z-index: 500;
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  transform: translate(-50%, -50%);
  border: 2px solid #fff4c7;
  border-radius: 50%;
  color: #162126;
  background: #ffbd2e;
  box-shadow: 0 0 0 4px rgba(255, 189, 46, .24), 0 5px 14px rgba(0, 0, 0, .32);
  pointer-events: none;
}
.go-map-fallback {
  display: grid;
  place-items: center;
  background-size: cover;
  background-position: center;
}
.go-map-fallback span {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 20px;
  background: rgba(4, 15, 20, .82);
}
.go-center-stack,
.go-right-stack {
  min-height: 0;
  display: grid;
  gap: 10px;
}
.go-center-stack {
  grid-template-rows: minmax(0, 1fr) 55px;
}
.go-center-stack:has(.go-join-request) {
  grid-template-rows: minmax(150px, .96fr) minmax(122px, .72fr) 55px;
}
.go-primary-cards {
  min-height: 0;
  display: grid;
  grid-template-rows: minmax(0, 1.15fr) minmax(84px, .85fr);
  gap: 10px;
}
.go-center-stack:has(.go-join-request) .go-primary-cards {
  grid-template-columns: 1.35fr .75fr;
  grid-template-rows: 1fr;
}
.go-right-stack {
  grid-template-rows: minmax(0, 1fr) auto;
}
.go-target-card {
  min-height: 0;
  position: relative;
  display: grid;
  grid-template-rows: minmax(74px, 1fr) auto;
  isolation: isolate;
}
.go-target-card::before {
  content: "";
  position: absolute;
  inset: 0 0 36% 43%;
  z-index: -1;
  background:
    linear-gradient(
      90deg,
      #081c23 0,
      transparent 44%),
    linear-gradient(
      0deg,
      #081c23,
      transparent 58%),
    var(--target-image) center/cover;
  opacity: .9;
}
.go-target-title {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 17px;
  padding: 13px 20px;
}
.go-target-title > svg {
  color: #ff3442;
}
.go-target-title div {
  min-width: 0;
}
.go-target-title span {
  color: var(--muted);
}
.go-target-title h2 {
  font-size: clamp(24px, 2.2vw, 35px);
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.target-chevron {
  margin-left: auto;
  display: none;
}
.go-target-stats {
  min-height: 63px;
  margin: 0 15px 13px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  border: 1px solid #1f3b47;
  border-radius: 8px;
  background: rgba(4, 16, 22, .76);
}
.go-target-stats > div {
  min-width: 0;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: 1fr 1fr;
  align-items: center;
  column-gap: 10px;
  padding: 8px 13px;
}
.go-target-stats > div + div {
  border-left: 1px solid var(--border);
}
.go-target-stats svg,
.go-road-symbol,
.go-coffee {
  grid-row: 1/3;
  color: #bbc8e5;
  font-size: 27px;
}
.go-target-stats strong {
  align-self: end;
  font-size: 23px;
  line-height: 1;
  white-space: nowrap;
}
.go-target-stats strong small {
  font-size: 14px;
}
.go-target-stats span:last-child {
  align-self: start;
  color: var(--muted);
  font-size: 12px;
}
.go-heading-card {
  min-height: 0;
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 12px 22px;
}
.go-heading-dial {
  flex: 0 0 62px;
  aspect-ratio: 1;
  border: 1px solid #8ba4b4;
  border-radius: 50%;
  display: grid;
  place-items: center;
  position: relative;
}
.go-heading-dial::before,
.go-heading-dial::after {
  content: "";
  position: absolute;
  width: 1px;
  height: 9px;
  background: #7d96a4;
  left: 50%;
  top: -4px;
  box-shadow: 0 60px #18d9a1;
}
.go-heading-card > div:last-child {
  min-width: 0;
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 18px;
  align-items: center;
}
.go-heading-card span {
  color: var(--muted);
}
.go-heading-card strong {
  grid-column: 2;
  grid-row: 1;
  font-size: clamp(24px, 2.8vw, 38px);
  white-space: nowrap;
}
.go-heading-card em {
  grid-column: 1/3;
  margin-top: 7px;
  color: #aab9c4;
  font-size: 14px;
  font-style: italic;
}
.go-join-request {
  min-height: 0;
  display: grid;
  grid-template-columns: 178px 1fr;
  padding: 12px;
  gap: 15px;
}
.go-join-request > img {
  width: 100%;
  height: 100%;
  min-height: 0;
  border-radius: 6px;
  object-fit: cover;
}
.go-join-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.go-join-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.go-join-title h2 {
  font-size: 16px;
}
.go-join-title span {
  color: var(--muted);
  font-size: 12px;
  white-space: nowrap;
}
.go-join-title i {
  display: inline-block;
  width: 9px;
  height: 9px;
  background: var(--green);
  border-radius: 50%;
  margin-right: 7px;
}
.go-join-copy p {
  margin: 2px 0;
  color: #d6dfe4;
  font-size: 13px;
}
.go-join-copy blockquote {
  margin: 3px 0 7px;
  color: #99aab4;
  font-style: italic;
  font-size: 12px;
}
.go-join-copy > div:last-child {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 10px;
}
.go-join-copy button,
.go-actions button {
  min-height: 42px;
  border: 1px solid var(--border);
  border-radius: 9px;
  background: rgba(7, 24, 31, .8);
  font: 700 14px Manrope, sans-serif;
}
.go-primary,
.go-actions .go-primary,
.go-join-copy .go-primary {
  border-color: #ff3341;
  background:
    linear-gradient(
      120deg,
      #e51c2a,
      #b51320);
}
.go-riders {
  min-height: 0;
  display: grid;
  grid-template-rows: 45px minmax(0, 1fr);
}
.go-rider-scroll {
  min-height: 0;
  overflow: auto;
  scrollbar-width: thin;
  scrollbar-color: #34525e transparent;
  padding: 0 13px;
}
.go-rider-status {
  min-height: 67px;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 8px 0;
  border-top: 1px solid rgba(50, 82, 95, .58);
}
.go-rider-status:first-child {
  border-top: 0;
}
.go-avatar {
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  position: relative;
  display: grid;
  place-items: center;
  border: 1px solid #79909c;
  border-radius: 50%;
  background: #dce9e8;
  color: #27434c;
  font: 750 15px Manrope, sans-serif;
}
.go-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}
.go-avatar i {
  position: absolute;
  width: 11px;
  height: 11px;
  left: -4px;
  top: 2px;
  border-radius: 50%;
  background: var(--stale);
  box-shadow: 0 0 0 2px #07161d;
}
.go-avatar.is-green i {
  background: var(--green);
}
.go-avatar.is-blue i {
  background: var(--blue);
}
.go-avatar.is-red i {
  background: #ff3542;
}
.go-rider-status > div {
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.go-rider-status strong {
  font-size: 14px;
}
.go-rider-status span,
.go-rider-status em,
.go-rider-status small {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.go-rider-status span {
  color: #b8c7ce;
  font-size: 12px;
}
.go-rider-status em {
  font-size: 12px;
  font-style: normal;
}
.go-rider-status em.is-green {
  color: var(--green);
}
.go-rider-status em.is-blue {
  color: var(--blue);
}
.go-rider-status em.is-red {
  color: #ff3542;
}
.go-rider-status em.is-stale {
  color: var(--stale);
}
.go-rider-status small {
  color: #c1cdd3;
  font-size: 10px;
}
.rider-chevron {
  margin-left: auto;
  color: #b9c9d1;
}
.go-rider-status.is-unchecked {
  opacity: .62;
}
.go-connectivity {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
  min-height: 38px;
  padding: 6px 10px;
  font-size: 12px;
}
.go-connectivity span {
  display: flex;
  align-items: center;
  gap: 7px;
  white-space: nowrap;
}
.go-connectivity i {
  width: 8px;
  height: 8px;
  background: var(--green);
  border-radius: 50%;
}
.go-connectivity.is-offline i {
  background: var(--red);
}
.go-connectivity button {
  color: var(--blue);
  font-size: 11px;
}
.go-actions {
  min-height: 0;
  display: grid;
  grid-template-columns: 1.1fr 1fr 1fr;
  gap: 10px;
}
.go-actions button {
  min-width: 0;
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.go-actions .go-danger {
  border-color: #ff3341;
  background:
    linear-gradient(
      120deg,
      #df1725,
      #b30f1b);
}
.go-actions button.is-active {
  border-color: var(--green);
  color: #baffeb;
}
.go-channel {
  min-height: 0;
  display: grid;
  grid-template-columns: 265px minmax(0, 1fr) minmax(430px, .95fr);
  padding: 12px 16px;
  gap: 18px;
}
.go-channel-title {
  min-width: 0;
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 5px 16px 0 3px;
  border-right: 1px solid var(--border);
}
.go-channel-title h2 {
  font-size: 19px;
  white-space: nowrap;
}
.go-channel-title span {
  display: block;
  margin-top: 8px;
  color: var(--muted);
  font-size: 12px;
}
.go-channel-title i {
  display: inline-block;
  width: 9px;
  height: 9px;
  margin-right: 8px;
  border-radius: 50%;
  background: #ff3542;
}
.go-channel-title > button {
  display: none;
  margin-left: auto;
}
.go-message-list {
  min-height: 0;
  overflow: auto;
  scrollbar-width: thin;
}
.go-message-list article {
  display: flex;
  gap: 11px;
  margin-bottom: 4px;
}
.go-message-avatar {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #42372a;
  background: #f0dfc3;
  font: 700 11px Manrope, sans-serif;
}
.go-message-list article:nth-child(even) .go-message-avatar {
  background: #d8e9ea;
  color: #26434b;
}
.go-message-list p {
  min-width: 0;
  margin: 0;
  font-size: 12px;
  line-height: 1.25;
}
.go-message-list strong {
  margin-right: 9px;
}
.go-message-list time {
  color: #8196a2;
}
.go-message-list p > span {
  display: block;
  margin-top: 1px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.go-message-list small {
  display: block;
  color: #e9ad4e;
}
.go-channel-controls {
  min-width: 0;
  display: grid;
  grid-template-columns: 62px minmax(250px, 1fr) 62px;
  align-items: center;
  gap: 10px;
}
.go-channel-controls > button,
.go-channel-controls form > button {
  height: 58px;
  border: 1px solid var(--border);
  border-radius: 10px;
  display: grid;
  place-items: center;
}
.go-channel-controls form {
  position: absolute;
  z-index: 4;
  right: 95px;
  left: max(320px, 22vw);
  bottom: 14px;
  display: grid;
  grid-template-columns: 1fr 54px;
  gap: 7px;
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: #0a1b22;
}
.go-channel-controls form input {
  min-width: 0;
  border: 1px solid #35515d;
  border-radius: 8px;
  padding: 0 12px;
  color: white;
  background: #061116;
}
.go-ptt-wrap {
  min-width: 0;
  position: relative;
}
.go-ptt,
.go-ptt * {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}
.go-ptt {
  width: 100%;
  height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  border: 1px solid #ff3b47;
  border-radius: 14px;
  background:
    linear-gradient(
      120deg,
      #df1725,
      #bd1521);
  font: 700 19px Manrope, sans-serif;
  box-shadow: inset 0 1px rgba(255, 255, 255, .15);
  touch-action: none;
}
.go-ptt.is-listening {
  background:
    linear-gradient(
      120deg,
      #f02d39,
      #a90f1a);
  box-shadow: 0 0 0 4px rgba(227, 28, 42, .2), 0 0 24px rgba(227, 28, 42, .35);
}
.go-ptt.is-transcribing {
  background: #203c47;
  border-color: #79a5b8;
}
.go-ptt.is-failed {
  background: #5b252b;
}
.go-ptt-review {
  position: absolute;
  z-index: 5;
  left: 0;
  right: 0;
  bottom: 66px;
  padding: 9px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #0b1b22;
  box-shadow: 0 8px 24px #000;
  font-size: 12px;
}
.go-ptt-review span {
  display: block;
  margin-bottom: 7px;
}
.go-ptt-review button {
  padding: 5px 9px;
  margin-right: 5px;
  border: 1px solid #496571;
  border-radius: 6px;
}
.go-ptt-error {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 62px;
  padding: 7px;
  color: #ffd5d8;
  background: #49151b;
  border-radius: 7px;
}
.go-demo-settings {
  position: fixed;
  z-index: 20;
  top: 78px;
  right: 18px;
  width: min(360px, calc(100vw - 36px));
  padding: 18px;
  border: 1px solid #456471;
  border-radius: 14px;
  background: rgba(7, 23, 30, .97);
  box-shadow: 0 22px 60px #000;
}
.go-demo-settings > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.go-demo-settings h2 {
  font-size: 18px;
}
.go-demo-settings label {
  display: grid;
  gap: 7px;
  margin-top: 16px;
  color: #c4d0d6;
  font-size: 13px;
}
.go-demo-settings select {
  width: 100%;
  padding: 10px;
  border: 1px solid #456471;
  border-radius: 8px;
  color: white;
  background: #0d2731;
}
.go-demo-settings .go-check {
  display: flex;
  grid-template-columns: auto 1fr;
  align-items: center;
}
.go-demo-settings p {
  margin: 14px 0 0;
  color: var(--muted);
  font-size: 12px;
}
.mobile-go {
  display: none;
}
@media (max-width: 1260px) {
  .go-header {
    grid-template-columns: 190px 1fr auto;
    padding-inline: 22px;
  }
  .go-brand img {
    width: 175px;
  }
  .go-header nav {
    gap: 20px;
  }
  .go-tools > button:first-child,
  .go-notifications,
  .go-profile span {
    display: none;
  }
  .go-ride-top {
    grid-template-columns: minmax(360px, .8fr) minmax(570px, 1.2fr);
  }
  .go-main-grid {
    grid-template-columns: minmax(330px, .9fr) minmax(390px, 1.1fr) minmax(260px, .72fr);
  }
  .go-channel {
    grid-template-columns: 230px minmax(0, 1fr) minmax(370px, .9fr);
  }
}
@media (max-width: 1023px) and (min-width: 701px) {
  .go-workspace {
    grid-template-rows: 118px minmax(0, 1fr) 146px;
  }
  .go-ride-top {
    grid-template-columns: 1fr;
    align-items: center;
  }
  .go-ride-header {
    position: absolute;
    top: 78px;
    left: 18px;
    z-index: 1;
  }
  .go-ride-header h1 {
    font-size: 31px;
  }
  .go-status-summary {
    margin-left: 340px;
  }
  .go-status-summary > div {
    padding: 8px 10px;
  }
  .go-status-summary > div:nth-child(3),
  .go-summary-progress {
    display: none !important;
  }
  .go-main-grid {
    grid-template-columns: minmax(340px, 1.05fr) minmax(330px, .95fr);
    grid-template-rows: minmax(0, 1fr) 42px;
  }
  .go-position {
    grid-row: 1/3;
  }
  .go-center-stack {
    grid-column: 2;
    grid-row: 1;
  }
  .go-right-stack {
    grid-column: 2;
    grid-row: 2;
  }
  .go-riders {
    display: none;
  }
  .go-connectivity {
    height: 42px;
  }
  .go-channel {
    grid-template-columns: 210px minmax(0, 1fr) minmax(330px, .9fr);
  }
}
@media (max-width: 700px) {
  .go-preview-notice {
    top: 72px;
    left: 12px;
    right: 12px;
    width: auto;
    padding: 10px 12px;
  }
  .go-preview-notice > span {
    font-size: 9px;
  }
  .go-preview-notice strong {
    font-size: 12px;
  }
  .go-preview-notice p {
    font-size: 10px;
  }
  .go-shell {
    min-height: 600px;
    font-size: 13px;
  }
  .go-shell::before {
    background-image:
      linear-gradient(
        180deg,
        rgba(6, 17, 22, .45),
        #061116 27%),
      var(--go-hero);
    background-position: center top;
  }
  .go-header {
    height: 66px;
    padding: 8px 14px;
    grid-template-columns: 1fr auto;
    gap: 8px;
    border: 0;
    background:
      linear-gradient(
        180deg,
        rgba(4, 15, 20, .7),
        transparent);
    backdrop-filter: none;
  }
  .go-brand img {
    width: 174px;
    height: 42px;
  }
  .go-header nav {
    display: none;
  }
  .go-tools {
    gap: 7px;
  }
  .go-tools > button {
    display: none;
    width: 38px;
    height: 38px;
    border: 1px solid var(--border);
  }
  .go-tools .go-profile {
    display: none;
  }
  .go-tools > button:nth-child(2),
  .go-tools > button:nth-child(3),
  .go-tools .go-mobile-live {
    display: grid;
  }
  .go-tools .go-mobile-live {
    width: 76px;
    display: flex;
    border-radius: 24px;
    background:
      linear-gradient(
        120deg,
        #db1523,
        #9e101a);
    border-color: #ff3542;
    font: 700 16px Manrope, sans-serif;
    gap: 7px;
  }
  .go-broadcast {
    font-size: 19px;
  }
  .go-workspace {
    height: calc(100dvh - 66px);
    min-height: 534px;
    grid-template-rows: 112px minmax(0, 1fr) clamp(174px, 25.5vh, 205px);
    gap: 7px;
    padding: 4px 8px max(7px, env(safe-area-inset-bottom));
  }
  .go-ride-top {
    display: block;
    min-height: 0;
  }
  .go-ride-header {
    height: 100%;
    position: relative;
  }
  .go-eyebrow {
    font-size: 10px;
    margin-bottom: 2px;
  }
  .go-ride-header h1 {
    font-size: clamp(25px, 7.5vw, 31px);
  }
  .go-ride-sub {
    margin-top: 4px;
    font-size: 13px;
    gap: 6px;
  }
  .go-ride-sub svg {
    width: 20px;
  }
  .go-mobile-rider-count {
    position: absolute;
    right: 0;
    bottom: 35px;
    display: flex;
    align-items: center;
    gap: 6px;
    color: #c6d2d8;
    font-size: 12px;
  }
  .go-mobile-progress {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 3px 8px;
    font-size: 11px;
  }
  .go-mobile-progress > div {
    grid-column: 1/3;
    height: 6px;
    border-radius: 6px;
    background: #344955;
    overflow: hidden;
  }
  .go-mobile-progress i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background:
      linear-gradient(
        90deg,
        #4ed09c,
        var(--green));
  }
  .go-mobile-progress span {
    justify-self: end;
    color: var(--muted);
  }
  .go-status-summary {
    display: none;
  }
  .go-main-grid {
    min-height: 0;
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.62fr) minmax(118px, 1fr);
    grid-template-rows: 84px minmax(0, 1fr) 49px;
    grid-template-areas: "center center" "position right" "actions actions";
    gap: 7px;
  }
  .go-position {
    grid-area: position;
    grid-template-rows: 1fr;
    border: 0;
    background: transparent;
    box-shadow: none;
    overflow: visible;
  }
  .go-position > .go-panel-heading {
    display: none;
  }
  .go-radar {
    padding: 0;
  }
  .go-radar svg {
    width: 115%;
    max-width: none;
    transform: translateX(-7%);
  }
  .radar-target text,
  .radar-rider text {
    font-size: 13px;
  }
  .go-radar-bearing {
    display: none;
  }
  .go-center-stack {
    grid-area: center;
    display: contents;
  }
  .go-primary-cards {
    grid-area: center;
    display: grid;
    grid-template-columns: minmax(0, 1.62fr) minmax(118px, 1fr);
    grid-template-rows: 84px;
    gap: 7px;
  }
  .go-target-card {
    grid-column: 1;
    grid-row: 1;
    grid-template-rows: 45px 39px;
    border-radius: 10px;
  }
  .go-target-card::before {
    inset: 0 0 0 55%;
    opacity: .74;
  }
  .go-target-title {
    gap: 8px;
    padding: 7px 10px;
  }
  .go-target-title > svg {
    width: 25px;
  }
  .go-target-title span {
    font-size: 10px;
  }
  .go-target-title h2 {
    font-size: 17px;
  }
  .target-chevron {
    display: block;
    width: 15px;
  }
  .go-target-stats {
    min-height: 0;
    height: 39px;
    margin: 0 6px 4px;
    border: 0;
    background: transparent;
  }
  .go-target-stats > div {
    padding: 2px 6px;
    column-gap: 4px;
  }
  .go-target-stats svg,
  .go-road-symbol,
  .go-coffee {
    font-size: 16px;
    width: 17px;
  }
  .go-target-stats strong {
    font-size: 14px;
  }
  .go-target-stats strong small,
  .go-target-stats span:last-child {
    font-size: 9px;
  }
  .go-heading-card {
    grid-column: 2;
    grid-row: 1;
    padding: 8px;
    gap: 7px;
    border-radius: 10px;
  }
  .go-heading-dial {
    flex-basis: 38px;
  }
  .go-heading-dial svg {
    width: 19px;
  }
  .go-heading-dial::before,
  .go-heading-dial::after {
    height: 5px;
  }
  .go-heading-card > div:last-child {
    display: block;
  }
  .go-heading-card span {
    display: block;
    font-size: 10px;
  }
  .go-heading-card strong {
    display: block;
    font-size: 18px;
  }
  .go-heading-card em {
    display: none;
  }
  .go-right-stack {
    grid-area: right;
    grid-template-rows: minmax(0, 1fr) 62px;
    gap: 7px;
  }
  .go-riders {
    grid-template-rows: 34px minmax(0, 1fr);
    border-radius: 10px;
  }
  .go-panel-heading {
    height: 34px;
    padding: 0 8px;
  }
  .go-panel-heading h2 {
    font-size: 11px;
  }
  .go-panel-heading > span {
    font-size: 10px;
  }
  .go-rider-scroll {
    padding: 0 7px;
  }
  .go-rider-status {
    min-height: 52px;
    gap: 6px;
    padding: 5px 0;
  }
  .go-avatar {
    flex-basis: 34px;
    width: 34px;
    height: 34px;
    font-size: 11px;
  }
  .go-avatar i {
    width: 8px;
    height: 8px;
  }
  .go-rider-status strong {
    font-size: 11px;
  }
  .go-rider-status span,
  .go-rider-status em {
    font-size: 9px;
  }
  .go-rider-status small {
    display: none;
  }
  .rider-chevron {
    display: none;
  }
  .go-connectivity {
    min-height: 0;
    display: grid;
    align-content: center;
    justify-content: start;
    gap: 5px;
    padding: 5px 7px;
    border-radius: 10px;
    font-size: 9px;
  }
  .go-connectivity svg {
    width: 16px;
    height: 16px;
  }
  .go-connectivity button {
    font-size: 9px;
    text-align: left;
  }
  .go-actions {
    grid-area: actions;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 7px;
  }
  .go-actions button {
    min-height: 0;
    border-radius: 10px;
    gap: 5px;
    padding: 0 4px;
    font-size: 10px;
  }
  .go-actions svg {
    width: 18px;
  }
  .go-actions .go-danger {
    font-size: 0;
  }
  .go-actions .go-danger::after {
    content: "Unplanned stop";
    font-size: 10px;
  }
  .has-safe-stop .go-actions .go-danger::after {
    content: "Resume ride";
  }
  .go-join-request {
    position: absolute;
    z-index: 8;
    inset: 0 0 auto;
    height: 142px;
    display: grid;
    grid-template-columns: 34% 1fr;
    gap: 8px;
    padding: 7px;
    border-color: #537381;
    box-shadow: 0 15px 35px #000;
  }
  .go-join-copy {
    justify-content: flex-start;
  }
  .go-join-title h2 {
    font-size: 13px;
  }
  .go-join-title span {
    display: none;
  }
  .go-join-copy p {
    margin: 1px 0;
    font-size: 10px;
  }
  .go-join-copy blockquote {
    display: none;
  }
  .go-join-copy > div:last-child {
    margin-top: auto;
    gap: 6px;
  }
  .go-join-copy button {
    min-height: 32px;
    font-size: 11px;
  }
  .go-channel {
    min-height: 0;
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 40px minmax(0, 1fr) 48px;
    padding: 0 7px 7px;
    gap: 3px;
    border-radius: 12px;
  }
  .go-channel-title {
    align-items: center;
    gap: 10px;
    padding: 0 3px;
    border-right: 0;
    border-bottom: 1px solid rgba(40, 70, 84, .7);
  }
  .go-channel-title svg {
    width: 22px;
  }
  .go-channel-title h2 {
    font-size: 15px;
  }
  .go-channel-title span {
    position: absolute;
    right: 34px;
    top: 10px;
    margin: 0;
    font-size: 10px;
  }
  .go-channel-title > button {
    display: block;
  }
  .go-message-list {
    padding: 4px 6px;
  }
  .go-message-list article {
    margin-bottom: 4px;
    gap: 8px;
  }
  .go-message-avatar {
    flex-basis: 29px;
    width: 29px;
    height: 29px;
    font-size: 9px;
  }
  .go-message-list p {
    font-size: 10px;
  }
  .go-message-list p > span {
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
  }
  .go-channel-controls {
    grid-template-columns: 46px minmax(0, 1fr) 46px;
    gap: 7px;
  }
  .go-channel-controls > button {
    height: 44px;
    border-radius: 10px;
  }
  .go-ptt {
    height: 44px;
    border-radius: 12px;
    gap: 8px;
    font-size: 14px;
  }
  .go-ptt svg {
    width: 23px;
  }
  .go-channel-controls form {
    left: 6px;
    right: 6px;
    bottom: 4px;
    height: 46px;
    padding: 4px;
  }
  .go-ptt-review {
    bottom: 49px;
  }
  .go-ptt-error {
    bottom: 48px;
  }
  .go-demo-settings {
    top: 62px;
    right: 8px;
  }
}
@media (max-width: 420px), (max-height: 700px) and (max-width:700px) {
  .go-workspace {
    grid-template-rows: 103px minmax(0, 1fr) 166px;
  }
  .go-main-grid {
    grid-template-rows: 76px minmax(0, 1fr) 45px;
  }
  .go-primary-cards {
    grid-template-rows: 76px;
  }
  .go-target-card {
    grid-template-rows: 41px 35px;
  }
  .go-target-stats {
    height: 35px;
  }
  .go-message-list article:nth-child(n+3) {
    display: none;
  }
}
@media (max-width: 700px) {
  .go-shell {
    min-height: 0;
  }
  .go-shell > .go-header,
  .go-shell > .go-workspace {
    display: none;
  }
  .mobile-go {
    height: 100dvh;
    display: grid;
    grid-template-rows: 58px minmax(0, 1fr) 42px 91px;
    gap: 7px;
    padding: max(5px, env(safe-area-inset-top)) 12px max(8px, env(safe-area-inset-bottom));
    overflow: hidden;
  }
  .mobile-go-header {
    position: relative;
    display: grid;
    grid-template-columns: 48px 1fr 48px;
    align-items: center;
  }
  .mobile-go-header > button {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
  }
  .mobile-go-header > button:last-of-type {
    justify-self: end;
  }
  .mobile-go-header > img {
    justify-self: center;
    width: min(235px, 62vw);
    height: 45px;
    object-fit: contain;
    filter: brightness(0) invert(1);
  }
  .mobile-go-menu {
    position: absolute;
    z-index: 30;
    top: 52px;
    left: 0;
    width: 190px;
    display: grid;
    padding: 7px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: rgba(6, 17, 22, .98);
    box-shadow: 0 18px 45px #000;
  }
  .mobile-go-menu button {
    min-height: 44px;
    padding: 0 12px;
    border-radius: 8px;
    text-align: left;
  }
  .mobile-go-menu button:hover {
    background: #102a34;
  }
  .mobile-instrument-card {
    min-height: 0;
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    grid-template-rows: 59px 1fr;
    padding: 13px 14px 12px;
    border: 1px solid rgba(54, 82, 94, .72);
    border-radius: 13px;
    background:
      linear-gradient(
        135deg,
        rgba(8, 22, 28, .95),
        rgba(4, 15, 20, .82));
    box-shadow: inset 0 1px rgba(255, 255, 255, .025);
  }
  .mobile-ride-name {
    grid-column: 1/3;
    min-width: 0;
  }
  .mobile-ride-name h1 {
    overflow: hidden;
    color: #fff;
    font-size: clamp(24px, 7.7vw, 34px);
    line-height: 1;
    letter-spacing: -.045em;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .mobile-ride-name p {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 5px 0 0;
    color: #aab9c8;
    font: 650 clamp(13px, 4vw, 17px)/1 Manrope, sans-serif;
  }
  .mobile-ride-name p i {
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: var(--green);
    box-shadow: 0 0 12px rgba(24, 217, 161, .45);
  }
  .mobile-heading-readout {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 12px;
    border-right: 1px solid #33505c;
  }
  .mobile-heading-orbit {
    width: 58px;
    height: 58px;
    flex: 0 0 58px;
    display: grid;
    place-items: center;
    border: 2px solid var(--red);
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-radius: 50%;
    transform: rotate(-22deg);
  }
  .mobile-heading-orbit svg {
    transform: rotate(22deg);
  }
  .mobile-heading-readout > strong {
    display: flex;
    flex-direction: column;
    font-size: clamp(34px, 11vw, 48px);
    line-height: .78;
  }
  .mobile-heading-readout strong small {
    margin-top: 9px;
    color: #9fb0c0;
    font-size: .78em;
  }
  .mobile-target-readout {
    min-width: 0;
    display: flex;
    align-items: flex-start;
    gap: 9px;
    padding: 8px 0 0 13px;
  }
  .mobile-target-readout > svg {
    flex: 0 0 30px;
    width: 30px;
  }
  .mobile-target-readout p {
    min-width: 0;
    margin: 0;
    display: grid;
  }
  .mobile-target-readout span {
    color: #9fb1c1;
    font: 600 10px/1 Manrope, sans-serif;
    letter-spacing: .12em;
    text-transform: uppercase;
  }
  .mobile-target-readout strong {
    margin-top: 3px;
    overflow: hidden;
    font-size: clamp(14px, 4.3vw, 19px);
    line-height: 1.05;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .mobile-target-readout b {
    margin-top: 4px;
    font: 750 clamp(27px, 8vw, 38px)/.95 Manrope, sans-serif;
    white-space: nowrap;
  }
  .mobile-target-readout small {
    margin-top: 4px;
    color: #a8bac7;
    font: 600 11px/1 Manrope, sans-serif;
  }
  .mobile-go-center {
    min-height: 0;
    position: relative;
    overflow: hidden;
  }
  .mobile-rider-list {
    height: 100%;
    min-height: 0;
    display: grid;
    grid-template-rows: repeat(4, minmax(0, 1fr));
    gap: 7px;
    overflow: hidden;
  }
  .mobile-rider-row {
    min-height: 0;
    width: 100%;
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) 42px auto 16px;
    align-items: center;
    gap: 9px;
    padding: 6px 8px;
    border: 1px solid rgba(47, 73, 84, .67);
    border-radius: 12px;
    background:
      linear-gradient(
        110deg,
        rgba(8, 23, 29, .95),
        rgba(7, 19, 24, .82));
    text-align: left;
  }
  .mobile-rider-row .go-avatar {
    width: 50px;
    height: 50px;
    flex-basis: 50px;
    font-size: 14px;
  }
  .mobile-rider-copy {
    min-width: 0;
    display: grid;
  }
  .mobile-rider-copy strong {
    overflow: hidden;
    font-size: clamp(17px, 5.4vw, 24px);
    line-height: 1.05;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .mobile-rider-copy small {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: 5px;
    color: #9fb0bd;
    font-size: clamp(11px, 3.5vw, 15px);
    white-space: nowrap;
  }
  .mobile-rider-copy small i {
    width: 11px;
    height: 11px;
    flex: 0 0 11px;
    border-radius: 50%;
    background: currentColor;
  }
  .mobile-rider-row.is-green .mobile-rider-copy small,
  .mobile-rider-row.is-green .mobile-trend {
    color: #2ee39f;
  }
  .mobile-rider-row.is-blue .mobile-trend {
    color: #aab9c6;
  }
  .mobile-rider-row.is-red .mobile-rider-copy small,
  .mobile-rider-row.is-red .mobile-trend {
    color: #ff3342;
  }
  .mobile-trend {
    justify-self: center;
    font: 800 clamp(34px, 9vw, 46px)/1 Manrope, sans-serif;
  }
  .mobile-distance {
    display: grid;
    justify-items: start;
    min-width: 73px;
  }
  .mobile-distance strong {
    font-size: clamp(18px, 5.5vw, 25px);
    white-space: nowrap;
  }
  .mobile-distance small {
    color: #9fb0bd;
    font-size: clamp(13px, 4vw, 17px);
  }
  .mobile-rider-row > svg {
    color: #7d929f;
  }
  .mobile-radar {
    height: 100%;
    min-height: 0;
    padding: 0 5px;
  }
  .mobile-radar svg {
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
  }
  .mobile-radar .radar-ring.outer {
    fill: rgba(5, 19, 25, .55);
    stroke: #5595b2;
  }
  .mobile-radar .radar-ring {
    stroke: #294b5a;
  }
  .mobile-radar-target circle {
    fill: #0b1b22;
    stroke: #e31c2a;
    stroke-width: 2.4;
  }
  .mobile-target-mark {
    fill: none;
    stroke: #fff;
    stroke-width: 2.5;
    stroke-linecap: round;
    stroke-linejoin: round;
  }
  .mobile-radar-target text,
  .mobile-radar-rider text {
    fill: #f4f7f8;
    font: 700 14px Manrope, sans-serif;
    paint-order: stroke;
    stroke: #061116;
    stroke-width: 4px;
  }
  .mobile-radar-rider .movement {
    fill: currentColor;
    font-size: 11px;
  }
  .mobile-radar-rider circle {
    fill: #172b34;
    stroke-width: 4;
  }
  .mobile-radar-rider.is-green circle {
    stroke: var(--green);
  }
  .mobile-radar-rider.is-red circle {
    stroke: #ff3342;
  }
  .mobile-radar-rider.is-stale circle {
    stroke: var(--stale);
  }
  .mobile-radar-you circle {
    fill: #061116;
    stroke: var(--red);
    stroke-width: 3;
    filter: drop-shadow(0 0 9px rgba(227, 28, 42, .8));
  }
  .mobile-radar-you path {
    fill: var(--red);
    stroke: #ff626c;
    stroke-width: 1;
  }
  .mobile-go-center > .go-map {
    height: 100%;
    border: 1px solid var(--border);
    border-radius: 15px;
  }
  .mobile-comms-takeover {
    position: absolute;
    z-index: 12;
    inset: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    padding: 24px;
    border: 1px solid #4d7180;
    border-radius: 17px;
    background:
      radial-gradient(
        circle at 50% 30%,
        #153440,
        #061116 72%);
    box-shadow: 0 18px 45px #000;
  }
  .mobile-comms-takeover > button:first-child {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 38px;
    height: 38px;
  }
  .mobile-comms-takeover > p {
    min-width: 0;
    margin: 0;
    display: grid;
    gap: 9px;
  }
  .mobile-comms-takeover p span {
    color: var(--green);
    font: 750 20px Manrope, sans-serif;
  }
  .mobile-comms-takeover p strong {
    font-size: clamp(22px, 6.5vw, 30px);
    line-height: 1.18;
  }
  .mobile-comms-takeover p small {
    color: #a9bac5;
    font-size: 14px;
  }
  .mobile-comms-takeover.is-listening > svg {
    color: #ff3947;
    filter: drop-shadow(0 0 15px rgba(227, 28, 42, .65));
  }
  .mobile-comms-takeover > button:last-child {
    align-self: flex-end;
    padding: 9px 13px;
    border: 1px solid #496572;
    border-radius: 9px;
  }
  .mobile-connectivity {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    border-top: 1px solid rgba(64, 93, 105, .6);
    color: #a9bac5;
    font: 600 13px Manrope, sans-serif;
  }
  .mobile-connectivity span {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
  }
  .mobile-connectivity span + span {
    border-left: 1px solid #45606b;
  }
  .mobile-connectivity i {
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: var(--green);
  }
  .mobile-connectivity i.is-offline {
    background: var(--red);
  }
  .mobile-bottom-actions {
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(118px, .9fr);
    gap: 9px;
  }
  .mobile-bottom-actions > .go-ptt-wrap {
    height: 100%;
  }
  .mobile-bottom-actions .go-ptt,
  .mobile-primary-action {
    height: 100%;
    min-height: 0;
    border-radius: 22px;
    text-transform: uppercase;
    letter-spacing: .065em;
    font-size: clamp(16px, 4.8vw, 21px);
  }
  .mobile-bottom-actions .go-ptt svg {
    width: 34px;
    height: 34px;
  }
  .mobile-primary-action {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    border: 1px solid #ff3b47;
    background:
      linear-gradient(
        120deg,
        #df1725,
        #b91421);
    font: 750 19px Manrope, sans-serif;
  }
  .mobile-primary-action:disabled {
    opacity: .58;
  }
  .mobile-secondary-action {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    border: 1px solid rgba(47, 73, 84, .7);
    border-radius: 22px;
    background: rgba(7, 20, 26, .86);
    color: #aebdca;
    font: 750 13px Manrope, sans-serif;
    letter-spacing: .06em;
    text-transform: uppercase;
  }
  .mobile-bottom-actions .go-ptt-review,
  .mobile-bottom-actions .go-ptt-error {
    display: none;
  }
  .go-demo-settings {
    top: 66px;
  }
}
@media (max-width: 370px), (max-height: 680px) and (max-width:700px) {
  .mobile-go {
    grid-template-rows: 52px minmax(0, 1fr) 36px 76px;
    gap: 5px;
    padding-inline: 8px;
  }
  .mobile-instrument-card {
    grid-template-rows: 48px 1fr;
    padding: 10px;
  }
  .mobile-heading-orbit {
    width: 49px;
    height: 49px;
    flex-basis: 49px;
  }
  .mobile-rider-row {
    grid-template-columns: 47px minmax(0, 1fr) 34px auto 12px;
    gap: 6px;
    padding: 4px 6px;
  }
  .mobile-rider-row .go-avatar {
    width: 43px;
    height: 43px;
  }
  .mobile-connectivity {
    font-size: 11px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .go-shell * {
    scroll-behavior: auto !important;
    animation-duration: .001ms !important;
    transition-duration: .001ms !important;
  }
}
.go-course-readout strong {
  color: #18d9a1;
}
.go-return-start {
  margin: 0 20px 18px;
  padding: 9px 14px;
  border: 1px solid var(--go-border);
  border-radius: 999px;
  color: var(--go-text);
  background: transparent;
}
.mobile-course-warning {
  height: 100%;
  min-height: 360px;
  display: grid;
  place-content: center;
  text-align: center;
  padding: 28px;
  border: 2px solid #e31c2a;
  border-radius: 28px;
  background: #0b1b22;
}
.mobile-course-warning strong {
  color: #ff5964;
  letter-spacing: .12em;
}
.mobile-course-warning p {
  font-size: clamp(24px, 7vw, 38px);
  font-weight: 800;
  line-height: 1.12;
}
.mobile-course-warning b {
  font-size: 32px;
}
@media (prefers-reduced-motion:no-preference) {
  .mobile-course-warning {
    animation: course-in .25s ease-out;
  }
  @keyframes course-in {
    from {
      opacity: 0;
      transform: scale(.98);
    }
  }
}
.course-simulator {
  min-height: 100dvh;
  background: #061116;
  color: #f4f7f8;
  padding: clamp(24px, 5vw, 72px);
  font-family: Manrope, sans-serif;
}
.course-simulator header p {
  color: #18d9a1;
  text-transform: uppercase;
  letter-spacing: .14em;
}
.course-simulator header h1 {
  font-size: clamp(36px, 6vw, 72px);
  margin: .2em 0;
}
.course-lab-grid {
  display: grid;
  grid-template-columns: minmax(240px, 340px) 1fr;
  gap: 32px;
  margin-top: 32px;
}
.course-lab-grid aside,
.course-lab-grid > div {
  background: #0b1b22;
  border: 1px solid #284654;
  border-radius: 24px;
  padding: 24px;
}
.course-lab-grid label {
  display: grid;
  gap: 6px;
  margin-bottom: 16px;
  color: #a9bac5;
}
.course-lab-grid input,
.course-lab-grid select {
  background: #061116;
  color: #f4f7f8;
  border: 1px solid #284654;
  border-radius: 10px;
  padding: 10px;
}
.course-path {
  width: 100%;
  max-height: 480px;
  background: #07151b;
  border-radius: 18px;
}
.course-path line {
  stroke: #284654;
  stroke-dasharray: 5 6;
}
.course-path polyline {
  fill: none;
  stroke: #18d9a1;
  stroke-width: 4;
}
.course-path circle {
  fill: #e31c2a;
}
.course-metrics {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 12px;
  margin-top: 18px;
}
.course-metrics > * {
  padding: 12px;
  background: #061116;
  border-radius: 10px;
}
.course-metrics strong {
  color: #18d9a1;
  text-transform: uppercase;
}
@media (max-width:800px) {
  .course-lab-grid {
    grid-template-columns: 1fr;
  }
}
.go-objective-actions {
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}
.go-skip-objective {
  border: 1px solid var(--go-warning,#e4a84d);
  color: var(--go-warning,#e4a84d);
  background: transparent;
  border-radius: 999px;
  padding: 10px 16px;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
@media (min-width:701px) {
  .go-shell {
    background: #041015;
  }
  .go-shell::before {
    background-image:
      linear-gradient(
        180deg,
        rgba(2, 12, 17, .08) 0,
        rgba(3, 14, 19, .78) 29%,
        #041015 66%),
      var(--go-hero);
    background-position: center 38%;
  }
  .go-header {
    height: 76px;
    background: rgba(3, 15, 21, .78);
  }
  .go-workspace {
    height: calc(100dvh - 76px);
    min-height: 650px;
    grid-template-rows: 112px minmax(0, 1fr);
    gap: 14px;
    padding: 18px clamp(18px, 2.15vw, 34px) 24px;
  }
  .go-ride-top {
    grid-template-columns: minmax(420px, 1fr) auto;
    align-items: center;
  }
  .go-ride-header h1 {
    margin-top: 5px;
    font-size: clamp(34px, 3vw, 48px);
  }
  .go-ride-sub {
    margin-top: 9px;
  }
  .go-ride-sub svg {
    color: var(--green);
  }
  .motus-status-strip {
    min-width: 560px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0;
    padding: 0 7px;
    border: 1px solid #294957;
    border-radius: 15px;
    background:
      linear-gradient(
        110deg,
        rgba(9, 29, 37, .94),
        rgba(5, 21, 28, .82));
    box-shadow: 0 16px 36px rgba(0, 0, 0, .22);
  }
  .motus-status-strip span {
    height: 54px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 0 17px;
    color: #eef5f7;
    font-weight: 650;
    white-space: nowrap;
  }
  .motus-status-strip span + span {
    border-left: 1px solid rgba(54, 83, 95, .65);
  }
  .motus-status-strip svg {
    color: #dce9ee;
  }
  .motus-dashboard {
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(275px, .9fr) minmax(430px, 1.08fr) minmax(300px, .9fr);
    gap: 14px;
  }
  .motus-left-column,
  .motus-right-column {
    min-height: 0;
    display: grid;
    gap: 14px;
  }
  .motus-left-column {
    grid-template-rows: auto auto minmax(0, 1fr);
  }
  .motus-right-column {
    grid-template-rows: minmax(230px, .78fr) minmax(285px, 1.22fr);
  }
  .go-panel {
    border-color: #274955;
    background:
      linear-gradient(
        140deg,
        rgba(7, 25, 32, .95),
        rgba(4, 18, 24, .9));
    border-radius: 18px;
    box-shadow: inset 0 1px rgba(255, 255, 255, .025), 0 15px 32px rgba(0, 0, 0, .12);
  }
  .motus-panel-title {
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 18px;
  }
  .motus-panel-title > span {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #fff;
    font: 750 20px/1 Manrope, sans-serif;
  }
  .motus-panel-title > span svg {
    color: var(--green);
  }
  .motus-panel-title > button {
    color: #ced9dd;
    font-weight: 650;
  }
  .motus-destination {
    padding-bottom: 15px;
  }
  .motus-destination .motus-panel-title > span svg {
    color: #ff3542;
  }
  .motus-destination form {
    height: 58px;
    margin: 0 16px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0 15px;
    border: 1px solid #315361;
    border-radius: 12px;
    background: rgba(5, 19, 25, .78);
  }
  .motus-destination form svg {
    flex: 0 0 auto;
    color: #bed0d8;
  }
  .motus-destination input {
    min-width: 0;
    width: 100%;
    border: 0;
    outline: 0;
    color: #fff;
    background: transparent;
    font: 500 14px Manrope, sans-serif;
  }
  .motus-destination input::placeholder {
    color: #9aadb6;
  }
  .motus-current-target {
    width: calc(100% - 32px);
    margin: 10px 16px 0;
    padding: 9px 12px;
    display: grid;
    gap: 2px;
    border: 1px solid rgba(38, 217, 161, .35);
    border-radius: 9px;
    text-align: left;
    background: rgba(24, 217, 161, .06);
  }
  .motus-current-target small {
    color: var(--muted);
  }
  .motus-shortcuts {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    padding: 13px 16px 0;
  }
  .motus-shortcuts button {
    min-width: 0;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 0 7px;
    border: 1px solid #31515e;
    border-radius: 18px;
    color: #dae4e8;
    font-size: 11px;
    white-space: nowrap;
  }
  .motus-progress {
    padding-bottom: 13px;
  }
  .motus-progress-bar {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 12px;
    padding: 1px 18px 13px;
  }
  .motus-progress-bar::before {
    content: "";
    grid-column: 1;
    grid-row: 1;
    height: 12px;
    border: 1px solid #385967;
    border-radius: 9px;
    background: #0b2630;
  }
  .motus-progress-bar i {
    grid-column: 1;
    grid-row: 1;
    z-index: 1;
    height: 12px;
    max-width: 100%;
    border-radius: 9px;
    background:
      linear-gradient(
        90deg,
        #1ee7b0,
        #19b9a2);
    box-shadow: 0 0 14px rgba(30, 231, 176, .2);
  }
  .motus-progress-bar b {
    color: #fff;
    font-size: 22px;
  }
  .motus-progress-facts {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    padding: 0 18px;
  }
  .motus-progress-facts p {
    margin: 0;
    padding: 0 12px;
    display: grid;
    gap: 3px;
    border-left: 1px solid #23424f;
  }
  .motus-progress-facts p:first-child {
    padding-left: 0;
    border-left: 0;
  }
  .motus-progress-facts strong {
    font-size: 16px;
  }
  .motus-progress-facts span {
    color: var(--muted);
    font-size: 10px;
  }
  .motus-nearby {
    min-height: 0;
    overflow: hidden;
  }
  .motus-nearby > div:last-child {
    padding: 0 16px 8px;
  }
  .motus-place-row {
    width: 100%;
    display: grid;
    grid-template-columns: 55px minmax(0, 1fr) auto 16px;
    align-items: center;
    gap: 11px;
    padding: 11px 0;
    border-top: 1px solid rgba(50, 82, 95, .55);
    text-align: left;
  }
  .motus-place-row img {
    width: 55px;
    height: 49px;
    border-radius: 8px;
    object-fit: cover;
  }
  .motus-place-row > span,
  .motus-place-row > em {
    min-width: 0;
    display: grid;
    gap: 3px;
    font-style: normal;
  }
  .motus-place-row strong {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .motus-place-row small {
    color: var(--muted);
    font-size: 11px;
  }
  .motus-place-row > em {
    justify-items: end;
    font-size: 12px;
  }
  .motus-place-row > em small {
    color: var(--green);
  }
  .motus-course {
    min-height: 0;
    display: grid;
    grid-template-rows: 54px 64px minmax(0, 1fr) 34px 76px;
    padding: 10px 14px 14px;
  }
  .motus-course-toolbar {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
  }
  .motus-course-toolbar .go-segmented {
    width: 230px;
    height: 42px;
    padding: 4px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    border: 1px solid #315260;
    border-radius: 22px;
  }
  .motus-course-toolbar .go-segmented button {
    border-radius: 18px;
    font-weight: 700;
  }
  .motus-course-toolbar .go-segmented button.is-active {
    border-color: #ff4a55;
    background:
      linear-gradient(
        120deg,
        #e72a39,
        #b91623);
    box-shadow: 0 0 0 2px rgba(227, 28, 42, .16);
  }
  .motus-locate {
    position: absolute;
    right: 0;
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border: 1px solid #315260;
    border-radius: 12px;
  }
  .motus-heading-facts {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 22px;
  }
  .motus-heading-facts p {
    margin: 0;
    display: flex;
    align-items: center;
    gap: 12px;
  }
  .motus-heading-facts p > svg {
    color: #e8f4f8;
    transform: rotate(-15deg);
  }
  .motus-heading-facts p > span:not(.motus-heading-orb) {
    display: grid;
    color: #a9bac5;
    font-size: 11px;
  }
  .motus-heading-facts strong {
    color: #fff;
    font-size: 25px;
    line-height: 1.05;
  }
  .motus-heading-facts strong small {
    font-size: 13px;
  }
  .motus-heading-orb {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border: 1px solid #587684;
    border-radius: 50%;
  }
  .motus-course-body {
    min-height: 0;
    overflow: hidden;
  }
  .motus-course-body .go-radar,
  .motus-course-body .go-map {
    height: 100%;
    min-height: 0;
  }
  .motus-course-body .go-radar {
    padding: 0;
  }
  .motus-course-body .go-radar-bearing {
    display: none;
  }
  .motus-center-list {
    height: 100%;
    padding: 8px 18px;
    overflow: auto;
  }
  .motus-scale {
    display: flex;
    justify-content: flex-end;
    align-items: end;
    padding-right: 8px;
  }
  .motus-scale span {
    margin-right: -46px;
    margin-bottom: 10px;
    color: #afc1c8;
    font-size: 10px;
  }
  .motus-scale i {
    width: 100px;
    height: 9px;
    border: solid #c4d5dc;
    border-width: 0 1px 1px;
  }
  .motus-course .go-actions {
    gap: 10px;
  }
  .motus-course .go-actions button {
    min-height: 58px;
    border-radius: 11px;
    padding: 0 10px;
    font-size: 12px;
    white-space: normal;
  }
  .motus-right-column .go-riders {
    grid-template-rows: 58px minmax(0, 1fr);
  }
  .motus-right-column .go-panel-heading {
    height: 58px;
    padding: 0 20px;
  }
  .motus-right-column .go-panel-heading h2 {
    font-size: 20px;
  }
  .motus-right-column .go-rider-status {
    min-height: 69px;
  }
  .motus-right-column .go-channel {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 55px minmax(0, 1fr) auto;
    gap: 7px;
    padding: 0 15px 15px;
  }
  .motus-right-column .go-channel-title {
    align-items: center;
    padding: 0 3px;
    border-right: 0;
    border-bottom: 1px solid #294754;
  }
  .motus-right-column .go-channel-title h2 {
    font-size: 20px;
  }
  .motus-right-column .go-channel-title span {
    position: absolute;
    right: 18px;
    margin: 0;
  }
  .motus-right-column .go-message-list {
    padding: 3px 4px;
  }
  .motus-right-column .go-message-list p > span {
    white-space: normal;
  }
  .motus-right-column .go-channel-controls {
    grid-template-columns: minmax(0, 1fr) 48px;
    grid-template-rows: 46px 58px;
  }
  .motus-right-column .go-channel-controls > button:first-child {
    grid-column: 2;
    grid-row: 1;
    height: 46px;
  }
  .motus-right-column .go-channel-controls > .go-ptt-wrap {
    grid-column: 1/3;
    grid-row: 2;
  }
  .motus-right-column .go-channel-controls > button:last-child {
    display: none;
  }
  .motus-right-column .go-channel-controls form {
    position: static;
    grid-column: 1;
    grid-row: 1;
    height: 46px;
    display: grid;
    grid-template-columns: 1fr 40px;
    padding: 0;
    border: 0;
    background: transparent;
  }
  .motus-right-column .go-channel-controls:not(:has(form))::before {
    content: "Type a message\2026";
    grid-column: 1;
    grid-row: 1;
    display: flex;
    align-items: center;
    padding: 0 13px;
    border: 1px solid #31515e;
    border-radius: 9px;
    color: #718a95;
    font-size: 12px;
  }
  .motus-right-column .go-ptt {
    height: 58px;
  }
  .go-workspace > .go-join-request {
    position: fixed;
    z-index: 18;
    left: 50%;
    top: 50%;
    width: min(680px, calc(100vw - 40px));
    height: 260px;
    transform: translate(-50%, -50%);
    box-shadow: 0 30px 90px #000;
  }
  .go-workspace > .go-map-feature-cue {
    position: fixed;
    z-index: 12;
    left: 50%;
    bottom: 24px;
    transform: translateX(-50%);
  }
}
@media (min-width:701px) and (max-width:1180px) {
  .go-header {
    grid-template-columns: 170px 1fr auto;
    padding-inline: 18px;
  }
  .go-header nav {
    gap: 11px;
  }
  .go-header nav button {
    min-width: 62px;
    font-size: 13px;
  }
  .go-tools > button:nth-child(-n+3),
  .go-profile span {
    display: none;
  }
  .motus-status-strip {
    min-width: 0;
  }
  .motus-status-strip span {
    padding-inline: 11px;
    font-size: 12px;
  }
  .motus-dashboard {
    grid-template-columns: minmax(235px, .78fr) minmax(385px, 1.22fr);
    overflow: auto;
  }
  .motus-right-column {
    grid-column: 1/3;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 260px;
  }
  .motus-left-column {
    grid-row: 1;
  }
  .motus-course {
    grid-row: 1;
  }
}
.radar-feature path {
  fill: #ffbd2e;
  stroke: #fff4c7;
  stroke-width: 2;
  filter: drop-shadow(0 0 8px rgba(255, 189, 46, .8));
}
.radar-feature text {
  fill: #fff6d7;
  font: 750 11px Manrope, sans-serif;
  paint-order: stroke;
  stroke: #07161c;
  stroke-width: 3px;
}
.motus-course-progress {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 10px;
  min-height: 28px;
  padding: 4px 8px;
}
.motus-course-progress > span {
  height: 9px;
  overflow: hidden;
  border: 1px solid #385967;
  border-radius: 999px;
  background: #0b2630;
}
.motus-course-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background:
    linear-gradient(
      90deg,
      #1ee7b0,
      #19b9a2);
}
.motus-course-progress b {
  font-size: 13px;
}
.motus-course-progress small {
  color: var(--muted);
  font-size: 10px;
  white-space: nowrap;
}
.motus-course-facts {
  position: absolute;
  z-index: 5;
  top: 8px;
  bottom: 34px;
  left: 14px;
  right: 14px;
  pointer-events: none;
}
.motus-course-facts p {
  position: absolute;
  margin: 0;
  display: grid;
  gap: 1px;
  padding: 6px 8px;
  border-radius: 9px;
  background:
    linear-gradient(
      90deg,
      rgba(4, 16, 22, .88),
      rgba(4, 16, 22, .12));
}
.motus-course-facts span {
  color: #9fb1ba;
  font-size: 10px;
}
.motus-course-facts strong {
  font-size: 19px;
  line-height: 1;
  color: #eef5f7;
}
.motus-course-facts small {
  font-size: 11px;
}
.motus-course-facts .is-heading {
  top: 0;
  left: 0;
}
.motus-course-facts .is-heading strong {
  color: #4fc3ff;
}
.motus-course-facts .is-altitude {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  background:
    linear-gradient(
      90deg,
      rgba(4, 16, 22, .15),
      rgba(4, 16, 22, .88),
      rgba(4, 16, 22, .15));
}
.motus-course-facts .is-altitude span {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
.motus-course-facts .is-altitude svg {
  color: #f5b942;
}
.motus-course-facts .is-distance {
  top: 0;
  right: 0;
  text-align: right;
  background:
    linear-gradient(
      270deg,
      rgba(4, 16, 22, .88),
      rgba(4, 16, 22, .12));
}
.motus-course-facts .is-target {
  left: 0;
  bottom: 0;
}
.motus-course-facts .is-target strong {
  color: #ff4b55;
}
@media (min-width:701px) {
  .motus-left-column {
    grid-template-rows: auto minmax(0, 1fr);
  }
  .motus-course {
    position: relative;
    grid-template-rows: minmax(0, 1fr) 30px;
    padding-top: 8px;
  }
  .motus-course:has(> .go-map-feature-cue) {
    grid-template-rows: auto minmax(0, 1fr) 30px;
  }
  .motus-course > .go-map-feature-cue {
    width: calc(100% + 28px);
    margin: -8px -14px 0;
    border-width: 0 0 1px;
    border-radius: 17px 17px 0 0;
    background:
      linear-gradient(
        90deg,
        #10343b,
        #0a252d);
    box-shadow: none;
  }
  .motus-course:has(> .go-map-feature-cue) > .motus-course-facts {
    top: 66px;
  }
  .motus-course-toolbar {
    position: absolute;
    z-index: 4;
    top: 10px;
    right: 14px;
    height: 40px;
    justify-content: flex-end;
  }
  .motus-course:has(> .go-map-feature-cue) .motus-course-toolbar {
    top: 70px;
  }
  .motus-course-toolbar .go-segmented {
    display: none;
  }
  .motus-locate {
    position: static;
    width: 38px;
    height: 38px;
  }
  .motus-course-body .go-radar svg {
    max-width: 100%;
    aspect-ratio: 1/1;
    margin: auto;
  }
  .motus-scale {
    display: none;
  }
}
.motus-stop-signal {
  position: absolute;
  z-index: 6;
  right: 16px;
  bottom: 48px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px 7px 7px;
  border: 1px solid #ff5964;
  border-radius: 12px;
  background: rgba(8, 25, 32, .92);
  color: #fff;
  font: 800 11px Manrope, sans-serif;
  box-shadow: 0 8px 22px #0007;
}
.motus-stop-signal > span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  clip-path: polygon(29% 0, 71% 0, 100% 29%, 100% 71%, 71% 100%, 29% 100%, 0 71%, 0 29%);
  background: #e51c2a;
  color: #fff;
  font-size: 9px;
  letter-spacing: .04em;
}
.motus-stop-signal:disabled {
  opacity: 1;
  cursor: default;
}
.motus-stop-signal.is-safe {
  border-color: #20c996;
  background: #0b382f;
}
.motus-stop-signal.is-safe > span {
  background: #159a72;
}
.motus-stop-signal.can-confirm {
  animation: stop-pulse 1.8s ease-in-out infinite;
}
@keyframes stop-pulse {
  50% {
    box-shadow: 0 0 0 5px rgba(229, 28, 42, .18), 0 8px 22px #0007;
  }
}
@media (max-width:700px) {
  .mobile-go {
    grid-template-rows: 58px minmax(0, 1fr) 42px 91px;
  }
  .mobile-go-center {
    position: relative;
    display: grid;
    grid-template-rows: minmax(0, 1fr);
    gap: 6px;
  }
  .mobile-go-center > .go-map-feature-cue {
    position: absolute;
    z-index: 7;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    min-height: 58px;
    border-radius: 12px;
    background:
      linear-gradient(
        90deg,
        #10343b,
        #0a252d);
    box-shadow: 0 8px 20px rgba(0, 0, 0, .22);
  }
  .mobile-course-carousel {
    min-height: 0;
    min-width: 0;
    width: 100%;
    height: 100%;
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
    touch-action: pan-x pan-y;
    -webkit-overflow-scrolling: touch;
  }
  .mobile-course-carousel::-webkit-scrollbar {
    display: none;
  }
  .mobile-course-slide {
    box-sizing: border-box;
    flex: 0 0 100%;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    min-height: 0;
    display: grid;
    grid-template-rows: minmax(0, 1fr) 30px;
    scroll-snap-align: center;
    scroll-snap-stop: always;
    overflow: hidden;
  }
  .mobile-course-slide:last-child {
    display: block;
  }
  .mobile-search-slide,
  .mobile-activity-slide {
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 2px 3px 10px;
    scrollbar-width: none;
  }
  .mobile-search-slide::-webkit-scrollbar,
  .mobile-activity-slide::-webkit-scrollbar {
    display: none;
  }
  .mobile-search-slide .go-panel,
  .mobile-activity-slide .go-panel {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin-bottom: 10px;
    border: 1px solid var(--border);
    border-radius: 16px;
    background: var(--panel);
    overflow: hidden;
  }
  .mobile-search-slide .motus-panel-title {
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 14px;
  }
  .mobile-search-slide .motus-panel-title > span {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 9px;
    color: var(--text);
    font: 800 18px/1 Manrope, sans-serif;
  }
  .mobile-search-slide .motus-panel-title > span svg {
    flex: 0 0 auto;
    color: var(--green);
  }
  .mobile-search-slide .motus-destination .motus-panel-title > span svg {
    color: var(--red);
  }
  .mobile-search-slide .motus-panel-title > button {
    flex: 0 0 auto;
    color: var(--muted);
    font-size: 13px;
    font-weight: 750;
  }
  .mobile-search-slide .motus-destination {
    padding-bottom: 12px;
  }
  .mobile-search-slide .motus-destination form {
    height: 52px;
    margin: 0 12px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 13px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: rgba(5, 19, 25, .72);
  }
  .mobile-search-slide .motus-destination form svg {
    flex: 0 0 auto;
    color: var(--muted);
  }
  .mobile-search-slide .motus-destination input {
    min-width: 0;
    width: 100%;
    border: 0;
    outline: 0;
    color: var(--text);
    background: transparent;
    font: 500 16px/1.2 Manrope, sans-serif;
  }
  .mobile-search-slide .motus-destination input::placeholder {
    color: var(--muted);
  }
  .mobile-search-slide .motus-search-results {
    box-sizing: border-box;
    max-width: calc(100% - 24px);
    margin: 8px 12px 0;
  }
  .mobile-search-slide .motus-current-target {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 9px 12px 0;
    padding: 10px 12px;
    display: grid;
    gap: 3px;
    border: 1px solid rgba(24, 217, 161, .38);
    border-radius: 10px;
    color: var(--text);
    text-align: left;
    background: rgba(24, 217, 161, .07);
  }
  .mobile-search-slide .motus-current-target strong {
    overflow: hidden;
    font-size: 14px;
    line-height: 1.25;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .mobile-search-slide .motus-current-target small {
    overflow: hidden;
    color: var(--muted);
    font-size: 12px;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .mobile-search-slide .motus-shortcuts {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    padding: 11px 12px 0;
  }
  .mobile-search-slide .motus-shortcuts button {
    min-width: 0;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 0 5px;
    border: 1px solid var(--border);
    border-radius: 999px;
    color: var(--text);
    font-size: 11px;
    white-space: nowrap;
  }
  .mobile-search-slide .motus-nearby > div:last-child {
    padding: 0 12px 7px;
  }
  .mobile-search-slide .motus-place-row {
    box-sizing: border-box;
    width: 100%;
    min-height: 68px;
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) auto 16px;
    align-items: center;
    gap: 10px;
    padding: 9px 0;
    border-top: 1px solid var(--border);
    color: var(--text);
    text-align: left;
  }
  .mobile-search-slide .motus-place-row img {
    display: block;
    width: 58px;
    height: 50px;
    max-width: 58px;
    border-radius: 9px;
    object-fit: cover;
  }
  .mobile-search-slide .motus-place-row > span,
  .mobile-search-slide .motus-place-row > em {
    min-width: 0;
    display: grid;
    gap: 3px;
    font-style: normal;
  }
  .mobile-search-slide .motus-place-row strong {
    overflow: hidden;
    font-size: 14px;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .mobile-search-slide .motus-place-row small {
    color: var(--muted);
    font-size: 11px;
  }
  .mobile-search-slide .motus-place-row > em {
    justify-items: end;
    font-size: 12px;
    white-space: nowrap;
  }
  .mobile-search-slide .motus-place-row > em small {
    color: var(--green);
  }
  .mobile-search-slide .motus-place-row > svg {
    color: var(--muted);
  }
  .mobile-search-slide .motus-destination,
  .mobile-search-slide .motus-nearby {
    display: block;
  }
  .mobile-activity-slide .go-riders,
  .mobile-activity-slide .go-channel {
    display: block;
    min-height: 0;
    margin-bottom: 8px;
  }
  .mobile-course-slide > .go-map {
    height: 100%;
    min-height: 0;
    border: 1px solid var(--border);
    border-radius: 15px;
  }
  .mobile-course-warning {
    position: absolute;
    z-index: 8;
    inset: 0;
    margin: 0;
    min-height: 0;
  }
  .mobile-radar {
    height: 100%;
    padding: 0;
  }
  .mobile-radar {
    position: relative;
  }
  .mobile-radar .motus-stop-signal {
    right: 8px;
    bottom: 8px;
  }
  .mobile-radar .motus-course-facts {
    top: 8px;
    bottom: 8px;
    left: 8px;
    right: 8px;
  }
  .mobile-radar svg {
    max-width: 100%;
    aspect-ratio: 1/1;
    margin: auto;
  }
  .mobile-bottom-actions {
    grid-template-columns: 1fr;
  }
  .motus-course-progress {
    padding-inline: 5px;
  }
  .motus-course-progress small {
    font-size: 9px;
  }
  .mobile-activity-slide .go-panel-heading h2,
  .mobile-activity-slide .go-channel-title h2 {
    font-size: 19px;
  }
  .mobile-activity-slide .go-rider-status strong {
    font-size: 15px;
  }
  .mobile-activity-slide .go-rider-status span,
  .mobile-activity-slide .go-rider-status em {
    font-size: 13px;
  }
  .mobile-activity-slide .go-message-list p {
    font-size: 14px;
    line-height: 1.35;
  }
  .mobile-activity-slide .go-message-list time {
    font-size: 12px;
  }
  .mobile-activity-slide .go-channel-title span {
    font-size: 12px;
  }
}
:root[data-theme=light][data-go-active=true] {
  color-scheme: light;
}
:root[data-theme=light][data-go-active=true] body {
  background: #f5f7f6;
}
:root[data-theme=light] .go-shell {
  --cockpit:#f5f7f6;
  --panel:#fff;
  --panel-hi:#f4f7f6;
  --border:#bac8cc;
  --text:#17282e;
  --muted:#607178;
  --green:#087c62;
  --blue:#087eb6;
  color: var(--text);
  background: var(--cockpit);
}
:root[data-theme=light] .go-shell::before {
  background-image:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, .45),
      rgba(245, 247, 246, .9) 34%,
      #f5f7f6 70%),
    var(--go-hero);
  filter: saturate(.7);
}
:root[data-theme=light] .go-shell::after {
  background: linear-gradient(rgba(255, 255, 255, .06), rgba(255, 255, 255, .35));
}
:root[data-theme=light] .go-header {
  background: rgba(255, 255, 255, .9);
  border-color: #c6d1d3;
}
:root[data-theme=light] .go-brand img {
  filter: none;
}
:root[data-theme=light] .go-header nav button,
:root[data-theme=light] .go-tools {
  color: #53666d;
}
:root[data-theme=light] .go-header nav button.is-active {
  color: #17282e;
}
:root[data-theme=light] .mobile-go-header > img {
  filter: none;
}
:root[data-theme=light] .mobile-go-menu {
  border-color: #b9c8cc;
  background: #fff;
  box-shadow: 0 18px 45px rgba(34, 58, 65, .18);
}
:root[data-theme=light] .mobile-go-menu button:hover {
  background: #edf3f2;
}
:root[data-theme=light] .go-panel,
:root[data-theme=light] .mobile-instrument-card,
:root[data-theme=light] .mobile-rider-row {
  color: #17282e;
  border-color: #b9c8cc;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 8px 24px rgba(34, 58, 65, .08);
}
:root[data-theme=light] .motus-status-strip {
  border-color: #b9c8cc;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 8px 20px rgba(34, 58, 65, .08);
}
:root[data-theme=light] .motus-status-strip span,
:root[data-theme=light] .motus-panel-title > span,
:root[data-theme=light] .motus-heading-facts strong,
:root[data-theme=light] .mobile-ride-name h1,
:root[data-theme=light] .motus-progress-bar b {
  color: #17282e;
}
:root[data-theme=light] .motus-heading-facts p {
  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, .92),
      rgba(255, 255, 255, .18));
}
:root[data-theme=light] .motus-heading-facts p:last-child {
  background:
    linear-gradient(
      270deg,
      rgba(255, 255, 255, .92),
      rgba(255, 255, 255, .18));
}
:root[data-theme=light] .motus-destination form,
:root[data-theme=light] .motus-search-results {
  border-color: #b9c8cc;
  background: #fff;
}
:root[data-theme=light] .motus-destination input,
:root[data-theme=light] .motus-search-results button {
  color: #17282e;
}
:root[data-theme=light] .radar-ring {
  stroke: #9bb1b8;
}
:root[data-theme=light] .radar-ring.outer {
  stroke: #587985;
}
:root[data-theme=light] .radar-axis {
  stroke: #c7d3d6;
}
:root[data-theme=light] .radar-cardinal {
  fill: #17282e;
}
:root[data-theme=light] .radar-target text,
:root[data-theme=light] .radar-rider text,
:root[data-theme=light] .mobile-radar-target text,
:root[data-theme=light] .mobile-radar-rider text {
  fill: #17282e;
  stroke: #fff;
}
:root[data-theme=light] .radar-relevance {
  border-color: rgba(8, 126, 182, .42);
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 8px 24px rgba(34, 58, 65, .13);
}
:root[data-theme=light] .radar-relevance strong {
  color: #24444f;
}
:root[data-theme=light] .radar-relevance small {
  color: #087eb6;
}
:root[data-theme=light] .go-radar-bearing {
  color: #17282e;
  border-color: #a9bbc0;
  background: rgba(255, 255, 255, .92);
}
:root[data-theme=light] .go-radar-bearing small {
  color: #607178;
  border-color: #b9c8cc;
}
:root[data-theme=light] .mobile-radar-scale {
  color: #526b75;
}
:root[data-theme=light] .radar-you path:first-child {
  fill: #fff;
  stroke: #607b84;
  filter: drop-shadow(0 2px 2px rgba(0, 0, 0, .25));
}
:root[data-theme=light] .mobile-radar .radar-ring.outer {
  fill: rgba(255, 255, 255, .68);
}
:root[data-theme=light] .go-map-feature-cue,
:root[data-theme=light] .motus-course > .go-map-feature-cue,
:root[data-theme=light] .mobile-go-center > .go-map-feature-cue {
  color: #17282e;
  border-color: #a8bfc4;
  background:
    linear-gradient(
      90deg,
      #e4f4f0,
      #f5faf8);
}
:root[data-theme=light] .go-map-feature-target small,
:root[data-theme=light] .go-map-feature-target em {
  color: #607178;
}
:root[data-theme=light] .go-map-feature-dismiss {
  color: #314950;
  border-left-color: #a8bfc4;
}
:root[data-theme=light] .motus-course-facts p {
  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, .94),
      rgba(255, 255, 255, .2));
}
:root[data-theme=light] .motus-course-facts .is-altitude {
  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, .2),
      rgba(255, 255, 255, .94),
      rgba(255, 255, 255, .2));
}
:root[data-theme=light] .motus-course-facts .is-distance {
  background:
    linear-gradient(
      270deg,
      rgba(255, 255, 255, .94),
      rgba(255, 255, 255, .2));
}
:root[data-theme=light] .motus-course-facts strong {
  color: #17282e;
}
:root[data-theme=light] .motus-course-facts .is-heading strong {
  color: #087bb0;
}
:root[data-theme=light] .motus-course-facts .is-target strong {
  color: #c71f2b;
}
:root[data-theme=light] .radar-degree {
  fill: #526b75;
  stroke: #fff;
}
:root[data-theme=light] .motus-course-progress > span {
  border-color: #9eb1b7;
  background: #dce6e8;
}
:root[data-theme=light] .go-actions button,
:root[data-theme=light] .go-channel-controls form,
:root[data-theme=light] .mobile-secondary-action {
  color: #17282e;
  border-color: #b9c8cc;
  background: #fff;
}
:root[data-theme=light] .go-message-list time,
:root[data-theme=light] .go-message-list small,
:root[data-theme=light] .go-rider-status span {
  color: #607178;
}
:root[data-theme=light] .mobile-connectivity {
  color: #53666d;
  border-color: #b9c8cc;
}
:root[data-theme=light] .mobile-connectivity span + span {
  border-color: #b9c8cc;
}
:root[data-theme=light] .mobile-radar-you circle {
  fill: #fff;
  stroke: #607b84;
}
:root[data-theme=light] .mobile-radar-you path {
  fill: #607b84;
}
:root[data-theme=light] .go-map-fallback {
  color: #17282e;
  background-blend-mode: screen;
}
:root[data-theme=light] .motus-stop-signal {
  color: #17282e;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 8px 20px rgba(34, 58, 65, .18);
}
:root[data-theme=light] .motus-stop-signal.is-safe {
  background: #dff5ed;
}
.go-simulated-location {
  position: fixed;
  z-index: 40;
  top: 86px;
  left: 50%;
  transform: translateX(-50%);
  padding: 8px 14px;
  border: 2px solid #ffcf33;
  border-radius: 8px;
  background: #251d00;
  color: #fff3b0;
  font: 800 12px/1 Manrope, sans-serif;
  letter-spacing: .12em;
  box-shadow: 0 8px 28px #0008;
}
.motus-course-facts {
  position: relative;
  inset: auto !important;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  width: 100%;
  padding: 10px 4px;
  pointer-events: none;
  z-index: 5;
}
.motus-course-facts p,
.motus-course-facts .is-altitude {
  position: static;
  transform: none !important;
  left: auto;
  top: auto;
  padding: 4px;
  text-align: center;
  background: none !important;
  min-width: 0;
  align-content: start;
}
.motus-course-facts span {
  font-size: 12px;
  line-height: 1.3;
}
.motus-course-facts strong {
  font-size: 38px;
  line-height: 1.12;
  font-variant-numeric: tabular-nums;
  letter-spacing: -1px;
}
.motus-course-facts strong small {
  font-size: 14px;
  letter-spacing: 0;
}
.motus-course-facts .is-altitude strong {
  font-size: 22px;
  line-height: 1.9;
}
.motus-course-facts .is-altitude svg {
  width: 10px;
  height: 10px;
  flex-shrink: 0;
}
.motus-course-facts .is-target {
  grid-column: 1/4;
  text-align: left;
}
.modus-destination-list {
  max-height: 390px;
  overflow: auto;
}
.modus-destination-row {
  display: flex;
  align-items: center;
  gap: 8px;
}
.modus-destination-row > .motus-place-row {
  flex: 1;
  min-width: 0;
}
.modus-destination-row > .legacy-favorite {
  font-size: 26px;
  min-width: 44px;
  min-height: 44px;
}
.motus-shortcuts button[aria-pressed=true] {
  border-color: var(--go-accent,#ba1b2b);
  background: rgba(180, 24, 44, .16);
}
.modus-home-actions {
  padding: 12px;
}
.modus-home-actions button {
  padding: 12px;
  border: 1px solid #607079;
  border-radius: 12px;
  margin: 4px;
}
.modus-destination-list > p,
.modus-map-picker p {
  padding: 14px;
  line-height: 1.5;
}
.modus-map-picker {
  position: relative;
}
.modus-map-picker .go-primary {
  width: 100%;
  margin-top: 10px;
}
.modus-show-riders {
  width: 100%;
  min-height: 44px;
  margin-top: 12px;
  font-size: 17px;
}
.modus-riders-face {
  min-height: 520px;
}
.modus-riders-face > .go-primary {
  width: 100%;
  min-height: 48px;
}
.modus-riders-face .go-rider-scroll {
  height: 430px;
  overflow: auto;
}
.go-rider-status {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) 20px;
  gap: 12px;
  cursor: pointer;
}
.go-rider-status > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  width: 100%;
}
.go-rider-status strong {
  font-size: 22px !important;
}
.go-rider-status span,
.go-rider-status em {
  font-size: 18px !important;
}
.go-rider-status small {
  font-size: 15px;
}
.go-rider-status .rider-avatar {
  width: 72px;
  height: 72px;
}
.go-rider-status .rider-avatar img {
  width: 100%;
  height: 100%;
}
.go-rider-scroll .is-self {
  outline: 2px solid #45b9df;
  border-radius: 14px;
  background: rgba(50, 180, 230, .1);
}
.go-rider-status em {
  justify-self: end;
}
.mobile-activity-slide .go-channel {
  min-height: 520px;
  display: flex;
  flex-direction: column;
}
.mobile-activity-slide .go-channel-title h2 {
  font-size: 26px;
}
.mobile-activity-slide .go-message-list {
  flex: 1;
  max-height: none;
  min-height: 330px;
}
.mobile-activity-slide .go-message-list p {
  font-size: 22px;
  line-height: 1.45;
}
.mobile-activity-slide .go-message-list time {
  font-size: 15px;
}
.mobile-activity-slide .go-channel-controls {
  margin-top: auto;
}
.radar-rider[role=button],
.mobile-radar-rider[role=button] {
  cursor: pointer;
  pointer-events: all;
}
.modus-profile-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, .65);
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 24px;
}
.modus-profile {
  position: relative;
  width: min(430px, 100%);
  max-height: 80dvh;
  overflow: auto;
  padding: 28px;
  text-align: center;
}
.modus-profile h2 {
  font-size: 28px;
}
.modus-profile p {
  font-size: 20px;
  line-height: 1.5;
}
.modus-profile-close {
  position: absolute;
  right: 12px;
  top: 8px;
  font-size: 32px;
  min-width: 44px;
  min-height: 44px;
}
.modus-profile .go-primary {
  margin-top: 20px;
  min-height: 48px;
}
.modus-flip-card {
  transition: opacity .15s;
}
.go-rider-status .rider-chevron {
  justify-self: end;
}
.go-rider-status .go-avatar {
  width: 72px;
  height: 72px;
  min-width: 72px;
}
.go-rider-status > div:not(.go-avatar) {
  grid-template-columns: minmax(0, 1fr) auto;
}
.go-rider-status > div:not(.go-avatar) > strong {
  grid-column: 1/3;
}
.go-rider-status > div:not(.go-avatar) > small {
  grid-column: 1/3;
}
.mobile-activity-slide .go-message-list article:nth-child(n) {
  display: flex;
}
.mobile-activity-slide .go-message-list p > span {
  white-space: normal;
  display: block;
  overflow: visible;
  -webkit-line-clamp: unset;
}
.mobile-activity-slide .go-channel {
  height: 100%;
  min-height: 480px;
}
.mobile-activity-slide .go-message-list {
  min-height: 0;
}
.mobile-search-slide .motus-place-row {
  grid-template-columns: minmax(0, 1fr) auto;
}
.mobile-search-slide .motus-place-row:has(img) {
  grid-template-columns: 58px minmax(0, 1fr) auto;
}
.modus-flip-card {
  display: block;
  overflow-y: auto;
  scrollbar-width: none;
}
.modus-flip-card > .modus-radar-content {
  display: flex;
  flex-direction: column;
  min-height: 0;
}
.modus-flip-card .mobile-radar {
  height: auto;
  display: flex;
  flex-direction: column;
}
.modus-flip-card .mobile-radar > svg {
  height: auto;
  width: 100%;
  flex: none;
  max-height: 380px;
}
.modus-flip-card .mobile-radar .motus-stop-signal {
  position: relative;
  right: auto;
  bottom: auto;
  align-self: flex-end;
  margin: 0 8px 5px;
}
.modus-flip-card .motus-course-progress {
  flex: none;
}
.mobile-radar .motus-course-facts .is-target {
  text-align: center;
}
.modus-riders-face {
  min-height: 100%;
  padding: 3px;
}
.modus-riders-face .go-rider-scroll {
  height: 400px;
}
.mobile-activity-slide .go-channel-title h2 {
  font-size: 26px;
}
@media (max-width:700px) {
  .modus-flip-card .mobile-radar > svg {
    max-height: min(360px, calc(100dvh - 520px));
    min-height: 230px;
  }
  .mobile-radar .motus-course-facts .is-altitude svg {
    margin: 0;
    display: inline-block;
    width: 10px;
    height: 10px;
  }
  .mobile-radar .motus-course-facts .is-altitude span {
    gap: 4px;
  }
  .mobile-radar .mobile-radar-scale {
    position: static;
    text-align: center;
    margin-top: 0;
  }
  .mobile-activity-slide .go-channel-controls input {
    font-size: 20px;
  }
  .modus-flip-card .radar-relevance {
    position: static;
    text-align: center;
    max-width: none;
    margin: 0 10px;
  }
  .mobile-radar svg {
    overflow: visible;
  }
  .modus-riders-face .go-panel-heading h2 {
    font-size: 24px;
  }
  .mobile-activity-slide .go-channel-controls {
    flex: none;
  }
}
@media (max-width:700px) {
  .modus-flip-card .mobile-radar > svg {
    max-height: min(340px, calc(100dvh - 560px));
    min-height: 230px;
  }
  .modus-show-riders {
    margin-top: 0;
  }
  .modus-riders-face .go-rider-status > div {
    grid-template-columns: minmax(0, 1fr) auto;
  }
  .modus-riders-face .go-rider-status strong {
    white-space: normal;
  }
  .modus-riders-face .go-rider-status span,
  .modus-riders-face .go-rider-status em {
    white-space: normal;
    line-height: 1.4;
  }
  .modus-riders-face .go-rider-status em {
    font-style: normal;
    text-align: right;
  }
}
.motus-destination form > button {
  flex: none;
  min-height: 40px;
  padding: 10px 14px;
  border: 0;
  border-radius: 10px;
  background: var(--red);
  color: white;
  font: 800 15px Manrope, sans-serif;
}
.motus-shortcuts button {
  background: transparent;
  color: var(--text);
}
.modus-destination-row .motus-place-row {
  background: transparent;
  color: var(--text);
  border: 0;
  min-height: 64px;
}
.modus-destination-row > .legacy-favorite {
  flex: none;
  width: 48px;
  min-height: 48px;
  background: transparent;
  border: 0;
  color: var(--red);
  font-size: 28px;
}
.modus-riders-face .go-rider-status .go-avatar {
  border-radius: 14px;
}
.modus-riders-face .go-rider-status .go-avatar img {
  border-radius: inherit;
}
.modus-home-actions button {
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 10px 12px;
  background: var(--panel);
  color: var(--text);
  font-size: 16px;
  margin: 6px 0;
}
.modus-home-actions p {
  color: var(--muted);
  padding: 0 4px;
  line-height: 1.5;
}
.mobile-radar-rider .radar-rider-hit {
  fill: transparent;
  stroke: none;
  pointer-events: all;
}
.mobile-radar-rider circle.radar-rider-hit {
  fill: transparent !important;
  stroke: none !important;
}
.modus-riders-face .go-avatar {
  font-size: 32px;
}
.modus-riders-face > .go-primary {
  color: white;
  font-size: 18px;
  font-weight: 800;
  border-radius: 12px;
}
.mobile-radar .motus-course-facts,
.motus-course > .motus-course-facts {
  position: absolute;
  display: block;
  inset: 8px 8px 10px !important;
  width: auto;
  padding: 0;
}
.mobile-radar .motus-course-facts p,
.motus-course > .motus-course-facts p {
  position: absolute;
  display: grid;
  padding: 4px;
  background: var(--panel);
  border-radius: 8px;
}
.mobile-radar .motus-course-facts .is-heading {
  top: 0;
  left: 0;
  text-align: left;
}
.mobile-radar .motus-course-facts .is-altitude {
  top: 0;
  left: 50%;
  transform: translateX(-50%) !important;
  text-align: center;
}
.mobile-radar .motus-course-facts .is-distance {
  top: 0;
  right: 0;
  text-align: right;
}
.mobile-radar .motus-course-facts .is-target {
  bottom: 0;
  left: 0;
  top: auto;
  text-align: left;
}
.mobile-radar .motus-course-facts strong {
  font-size: 38px;
}
.mobile-radar .motus-course-facts .is-altitude strong {
  font-size: 22px;
}
.modus-flip-card .mobile-radar > svg {
  max-height: none;
  min-height: 0;
  height: auto;
  width: 100%;
}
.modus-flip-card .mobile-radar .motus-stop-signal {
  position: absolute;
  right: 8px;
  bottom: 8px;
  margin: 0;
}
.mobile-radar .mobile-radar-scale {
  position: static;
}
.motus-course-progress {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 52px;
}
.motus-trip-meter {
  flex: none;
  font-size: 20px;
  font-variant-numeric: tabular-nums;
  color: var(--text);
}
.motus-trip-meter small {
  display: block;
  font-size: 12px;
  color: var(--muted);
}
.motus-course-progress > span {
  flex: 1;
}
.modus-audio-route {
  background: rgba(93, 131, 140, .12);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 8px 12px;
  text-align: left;
  color: var(--muted);
  font-size: 14px;
  max-width: 100%;
  display: grid;
  gap: 4px;
}
.modus-audio-route strong {
  color: var(--text);
  font-size: 15px;
}
.modus-audio-picker {
  padding: 15px;
}
.modus-audio-picker select {
  width: 100%;
  font-size: 18px;
  padding: 12px;
  background: var(--panel);
  color: var(--text);
}
.mobile-activity-slide .go-channel-controls {
  flex-wrap: wrap;
}
.motus-destination [role=status] {
  padding: 8px 14px;
  font-size: 16px;
  color: var(--green);
}
.mobile-go-header {
  align-items: center;
  min-height: 88px;
}
.modus-top-instruments {
  display: flex;
  gap: 24px;
  align-items: center;
  justify-content: center;
  flex: 1;
  color: var(--text);
}
.modus-top-instruments p {
  margin: 0;
  display: grid;
  text-align: center;
  gap: 4px;
}
.modus-top-instruments span {
  color: var(--muted);
  font-size: 13px;
}
.modus-top-instruments strong {
  font-size: 30px;
  font-weight: 800;
}
.radar-correction-sector {
  fill: #35a8c9;
  opacity: .17;
  stroke: none;
  pointer-events: none;
}
.radar-correction-sector.is-left {
  fill: #f1b24a;
}
.mobile-radar .motus-course-facts .is-correction {
  top: 0;
  left: 0;
  text-align: left;
}
.mobile-radar .motus-course-facts .is-correction strong {
  color: var(--text);
  font-size: 38px;
}
.motus-course-facts .is-correction small {
  font-size: 14px;
  color: var(--muted);
}
.mobile-radar .motus-course-facts .is-distance strong {
  font-size: 32px;
}
.modus-appearance {
  margin: 18px 0;
  display: grid;
  gap: 12px;
  border: 1px solid var(--border);
  padding: 16px;
}
.modus-appearance label {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 18px;
}
.modus-lean-panel {
  border-top: 1px solid var(--border);
  padding-top: 16px;
}
.modus-lean-panel button {
  background: var(--panel);
  color: var(--text);
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 12px;
  font-size: 16px;
}
.go-demo-settings {
  box-sizing: border-box;
  max-height: 85dvh;
  overflow-y: auto;
}
.modus-top-instruments strong,
.motus-course-facts .is-correction strong {
  font-variant-numeric: tabular-nums;
}
.go-ptt {
  color: #fff;
}
.modus-destination-row .motus-place-row {
  min-height: 84px;
  gap: 12px;
}
.modus-destination-row .motus-place-row span {
  min-width: 0;
  flex: 1;
}
.modus-destination-row .motus-place-row strong {
  font-size: 26px;
  line-height: 1.2;
  white-space: normal;
}
.modus-destination-row .motus-place-row em {
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  flex-shrink: 0;
  color: var(--muted);
}
.modus-destination-row .motus-place-row img {
  width: 54px;
  height: 54px;
  object-fit: cover;
}
.modus-audio-status {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 14px 0;
}
.modus-audio-status > div {
  min-width: 0;
  padding: 13px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel);
}
.modus-audio-status span {
  display: block;
  font-size: 13px;
  color: var(--muted);
  margin-bottom: 6px;
}
.modus-audio-status strong {
  font-size: 17px;
  line-height: 1.3;
  overflow-wrap: anywhere;
  color: var(--text);
}
.modus-audio-status p {
  grid-column: 1/-1;
}
.go-message-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
.go-channel-controls {
  display: flex !important;
  gap: 10px;
  padding: 0;
}
.go-channel-controls::before {
  display: none !important;
}
.go-channel-controls > button:first-child {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 62px;
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 15px;
  font-size: 20px;
}
.go-channel-controls > button:first-child:has(+ form) {
  width: 54px;
}
.go-channel-controls > button:first-child:has(+ form) span {
  display: none;
}
.go-channel-controls form {
  position: static !important;
  display: flex !important;
  flex: 1;
  min-height: 62px !important;
  gap: 8px;
  border: 1px solid var(--border) !important;
  border-radius: 15px;
  padding: 6px !important;
  background: var(--panel) !important;
}
.go-channel-controls input {
  width: 100%;
  min-width: 0;
  font-size: 20px !important;
}
.go-channel-controls form button {
  min-width: 44px;
}
.modus-destination-confirmation {
  pointer-events: none;
  position: fixed;
  z-index: 180;
  top: 95px;
  left: 20px;
  right: 20px;
  max-width: 540px;
  margin: auto;
  padding: 16px 20px;
  border: 1px solid #0cae87;
  border-radius: 15px;
  background: var(--panel);
  color: var(--text);
  font-size: 20px;
  box-shadow: 0 8px 24px #0003;
}
.modus-stop-octagon {
  display: flex;
  align-items: center;
  justify-content: center;
  clip-path: polygon(29% 0, 71% 0, 100% 29%, 100% 71%, 71% 100%, 29% 100%, 0 71%, 0 29%);
  background: #cf1025;
  width: 100%;
  height: 100%;
  padding: 10px;
  box-sizing: border-box;
}
.motus-stop-signal.is-safe .modus-stop-octagon {
  background: #0cae87;
}
.motus-stop-signal .modus-stop-octagon strong {
  color: white;
  text-align: center;
  font-size: 16px;
  line-height: 1.1;
}
@media (max-width:760px) {
  .mobile-bottom-actions {
    display: grid;
    grid-template-columns: 3fr 1fr;
    gap: 10px;
  }
  .mobile-bottom-actions .motus-stop-signal {
    position: static;
    display: block;
    inset: auto;
    width: 100%;
    height: 100%;
    min-width: 0;
    border: 0 !important;
    background: transparent !important;
    padding: 0;
    border-radius: 0;
  }
  .mobile-bottom-actions .motus-stop-signal .modus-stop-octagon {
    width: 100%;
    height: 100%;
    border-radius: 0;
  }
  .mobile-bottom-actions .go-ptt {
    font-size: 18px;
    letter-spacing: 0;
    gap: 8px;
  }
  .mobile-bottom-actions .go-ptt svg {
    width: 27px;
    height: 27px;
  }
  .mobile-activity-slide .go-channel-controls {
    grid-template-columns: none;
  }
  .mobile-activity-slide .go-message-avatar {
    width: 45px;
    height: 45px;
    flex-shrink: 0;
  }
}
.go-shell .go-ptt {
  color: white;
}
.mobile-bottom-actions .motus-stop-signal {
  box-shadow: none;
}
.go-shell .go-announcer.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.mobile-go {
  position: relative;
}
.modus-radar-detail {
  position: absolute;
  z-index: 8;
  top: calc(88px + min(62vw, 310px));
  bottom: calc(108px + env(safe-area-inset-bottom));
  left: 14px;
  right: 14px;
  overflow: auto;
  border-radius: 22px;
  background: var(--panel);
  color: var(--text);
  box-shadow: 0 8px 36px #0005;
  border: 1px solid #829ba755;
}
.modus-detail-photos {
  display: flex;
  height: 220px;
}
.modus-detail-photos img {
  width: 100%;
  min-width: 0;
  flex: 1;
  object-fit: cover;
}
.modus-detail-placeholder {
  width: 100%;
  display: grid;
  place-items: center;
  background: var(--panel-hi);
}
.modus-detail-close {
  position: absolute;
  right: 12px;
  top: 12px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #071317bb;
  color: white;
  font-size: 30px;
  z-index: 1;
}
.modus-detail-copy {
  padding: 18px;
}
.modus-detail-copy h2 {
  margin: 0;
  font-size: 28px;
}
.modus-detail-copy p {
  font-size: 18px;
  line-height: 1.5;
}
.mobile-bottom-actions {
  position: relative;
  z-index: 10;
}
.mobile-comms-takeover {
  z-index: 15;
}
.modus-flip-space {
  display: block;
  width: 100%;
  min-height: 100px;
  background: transparent !important;
  border: 0 !important;
}
.go-message-avatar {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px;
  max-height: 46px;
  flex: 0 0 46px !important;
  align-self: flex-start;
  aspect-ratio: 1;
  border-radius: 50%;
  overflow: hidden;
}
.go-message-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.modus-destination-row .motus-place-row span {
  min-width: 0;
  overflow: hidden;
}
.modus-destination-row .motus-place-row strong {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.motus-shortcuts {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.motus-shortcuts button span {
  font-size: 22px !important;
}
.motus-search-results strong {
  display: block;
  font-size: 24px;
}
.motus-search-results small {
  display: block;
  font-size: 17px;
  line-height: 1.4;
}
.modus-radar-target {
  cursor: pointer;
}
.modus-audio-status > button {
  flex: 1;
  min-width: 0;
  padding: 13px;
  text-align: left;
  border: 1px solid #829ba744;
  border-radius: 12px;
  background: transparent;
  color: inherit;
}
.modus-audio-status > button span,
.modus-audio-status > button strong {
  display: block;
}
.modus-audio-picker {
  border: 1px solid #829ba755;
  border-radius: 16px;
  padding: 16px;
}
.modus-audio-picker > button {
  display: block;
  width: 100%;
  min-height: 48px;
  margin: 8px 0;
  font-size: 18px;
}
.modus-audio-picker p {
  font-size: 16px;
}
.go-shell .modus-detail-close {
  color: #fff;
  background: #071317cc;
  border: 1px solid #ffffff80;
}
.go-shell .go-ptt,
.go-shell .motus-destination form > button {
  background:
    linear-gradient(
      155deg,
      rgba(255, 255, 255, .25),
      rgba(255, 255, 255, .02) 42%),
    linear-gradient(
      135deg,
      rgba(232, 28, 47, .86),
      rgba(140, 9, 31, .76));
  border: 1px solid rgba(255, 190, 190, .55);
  box-shadow:
    inset 0 1px 1px #ffffff70,
    inset 0 -2px 8px #49001150,
    0 8px 22px #0003;
  backdrop-filter: blur(16px);
  color: white;
}
.go-shell .go-ptt:disabled {
  opacity: .9;
}
.go-shell .motus-stop-signal {
  background: transparent !important;
  border: 0 !important;
  opacity: 1 !important;
  box-shadow: none !important;
}
.go-shell .modus-stop-octagon {
  background:
    linear-gradient(
      145deg,
      #ffffff28,
      #ffffff02 50%),
    linear-gradient(
      145deg,
      #471922bb,
      #160e17cc);
  box-shadow: inset 0 2px 4px #ffffff55;
  backdrop-filter: blur(14px);
  color: #f1dce0;
}
.go-shell .is-stopping_soon .modus-stop-octagon {
  background:
    linear-gradient(
      145deg,
      #ffffff60,
      #ffffff08 45%),
    linear-gradient(
      145deg,
      #ff334ddf,
      #ba102edd);
  color: white;
  animation: modus-stop-heartbeat 1s ease-in-out infinite;
}
.go-shell .is-safe .modus-stop-octagon {
  background:
    linear-gradient(
      145deg,
      #ffffff60,
      #ffffff08 45%),
    linear-gradient(
      145deg,
      #19c895dd,
      #08785cdd);
  color: white;
}
@keyframes modus-stop-heartbeat {
  0%, 100% {
    filter: brightness(1);
    opacity: .82;
  }
  50% {
    filter: brightness(1.25);
    opacity: 1;
  }
}
@media (prefers-reduced-motion:reduce) {
  .go-shell .is-stopping_soon .modus-stop-octagon {
    animation: none;
  }
}
.mobile-radar {
  padding-top: 24px;
}
.motus-course-progress > span {
  height: 14px !important;
  border-radius: 20px;
  background:
    linear-gradient(
      180deg,
      #254451,
      #07151c);
  box-shadow: inset 0 2px 4px #0006;
  border: 1px solid #86a7b65e;
}
.motus-course-progress > span > i {
  height: 100%;
  background:
    linear-gradient(
      180deg,
      #97dfed,
      #2598b2);
  border-radius: 20px;
  box-shadow: 0 0 10px #49b7cf55;
}
.modus-odometer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 8px;
  margin-top: 8px;
  border-top: 1px solid var(--border);
  color: var(--muted);
  font-size: 18px;
}
.modus-odometer strong {
  font-size: 25px;
  color: var(--text);
}
.modus-meter-settings p {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  font-size: 17px;
}
.modus-meter-settings strong {
  display: block;
  font-size: 21px;
}
.modus-meter-settings button {
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 12px;
}
.modus-meter-settings small {
  color: var(--muted);
}
@media (max-width:700px) {
  .mobile-go {
    grid-template-rows: 58px minmax(0, 1fr) 91px;
  }
}
.go-shell .motus-shortcuts {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
.go-shell .motus-shortcuts button {
  min-height: 72px;
  display: grid;
  place-items: center;
  padding: 12px;
  border-radius: 18px;
}
.modus-place-image {
  position: relative;
  width: 56px;
  height: 56px;
  flex: 0 0 56px;
  border-radius: 12px;
  background: var(--panel-hi);
  display: grid;
  place-items: center;
}
.modus-place-image > img {
  width: 56px;
  height: 56px;
  object-fit: cover;
  border-radius: 12px;
}
.modus-place-image > svg {
  width: 30px;
  height: 30px;
  color: var(--muted);
}
.go-shell .modus-save-place {
  position: absolute;
  bottom: -2px;
  left: -2px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid var(--muted);
  background: var(--panel);
  color: var(--text);
  font-size: 23px;
  line-height: 1;
  padding: 0;
  display: grid;
  place-items: center;
}
.modus-destination-row {
  gap: 10px;
}
.modus-destination-row > .motus-place-row {
  flex: 1;
  min-width: 0;
  padding-left: 0;
}
.modus-top-instruments strong {
  transform: translateY(-8px);
}
.go-shell .is-stopping_soon .modus-stop-octagon {
  animation-duration: 2s;
}
.modus-lean-peaks {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 4px 14px 12px;
  color: var(--muted);
  font-size: 16px;
}
.modus-lean-peaks strong {
  display: block;
  color: var(--text);
  font-size: 24px;
}
.modus-lean-peaks > span:last-child {
  text-align: right;
}
.go-shell .mobile-comms-takeover {
  background: #fff !important;
  color: #152a33 !important;
}
.go-shell .mobile-comms-takeover p,
.go-shell .mobile-comms-takeover p strong,
.go-shell .mobile-comms-takeover p span,
.go-shell .mobile-comms-takeover p small {
  color: #152a33 !important;
}
.go-shell .go-ptt-review {
  color: #152a33;
  background: #fff;
}
.modus-selected-destination {
  display: grid;
  grid-template-columns: 32px 1fr;
  column-gap: 10px;
  margin-top: 16px;
}
.modus-selected-destination > span {
  color: #0ba77b;
  font-size: 28px;
  grid-row: span 2;
}
.modus-selected-destination > strong {
  font-size: 27px;
  color: var(--text);
  line-height: 1.25;
}
.modus-selected-destination > small {
  font-size: 17px;
  color: var(--muted);
}
.modus-map-picker {
  padding-top: 0;
  margin-top: 0;
}
.modus-riders-detail {
  padding: 20px 12px;
}
.modus-riders-detail .go-panel {
  border: 0;
  margin: 0;
  background: transparent;
}
.modus-riders-detail .modus-detail-close {
  position: sticky;
  float: right;
  top: 0;
}
.modus-destination-confirmation {
  font-size: 26px !important;
  line-height: 1.3;
}
.modus-destination-confirmation > span {
  color: #10b981;
}
.modus-destination-confirmation strong {
  font-weight: 800;
}
.modus-flip-card {
  position: relative;
  isolation: isolate;
}
.modus-flip-card > .modus-radar-content {
  position: relative;
  z-index: 1;
}
.modus-active-vehicle {
  position: absolute;
  top: 4px;
  left: 50%;
  transform: translateX(-50%);
  pointer-events: auto;
  border: 1px solid var(--border);
  border-radius: 20px;
  background: var(--panel);
  color: var(--text);
  padding: 7px 14px;
  font-size: 14px;
  max-width: 75%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  z-index: 4;
}
.modus-flip-card .mobile-radar {
  background: transparent;
}
.modus-home-actions {
  display: grid;
  gap: 12px;
}
.modus-home-actions button {
  padding: 14px;
  border-radius: 14px;
  font-size: 18px;
  color: var(--text);
  background: var(--panel);
  border: 1px solid var(--border);
}
.go-shell .motus-shortcuts button {
  padding: 5px;
  min-height: 78px;
}
.go-shell .motus-shortcuts button img {
  display: block;
  width: 68px;
  height: 68px;
  max-width: 100%;
  object-fit: contain;
}
.modus-destination-row .motus-place-row small {
  display: block;
  margin-top: 5px;
  font-size: 14px;
  line-height: 1.3;
  color: var(--muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.modus-destination-list {
  overscroll-behavior-y: contain;
  min-height: 90px;
}
.mobile-search-slide {
  overscroll-behavior-y: contain;
}
.modus-refresh-status {
  display: grid;
  place-items: center;
  color: var(--muted);
  font-size: 14px;
  overflow: hidden;
  transition: height .15s;
}
.modus-place-preview-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
  background: #020b10a8;
  backdrop-filter: blur(8px);
}
.modus-place-preview {
  position: relative;
  width: 100%;
  max-width: 540px;
  max-height: 100%;
  min-height: 0;
  overflow-y: auto;
  touch-action: pan-y;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  border: 1px solid var(--border);
  border-radius: 24px;
  background: var(--panel);
  color: var(--text);
  box-shadow: 0 15px 60px #0005;
}
.modus-preview-image {
  display: block;
  width: 100%;
  height: 240px;
  object-fit: cover;
}
.modus-preview-placeholder {
  height: 140px;
  display: grid;
  place-items: center;
  font-size: 72px;
  background: var(--panel-hi);
  color: var(--muted);
}
.modus-preview-copy {
  padding: 20px;
}
.modus-preview-copy small {
  color: var(--muted);
  font-size: 15px;
}
.modus-preview-copy h2 {
  font-size: 30px;
  margin: 8px 0;
  line-height: 1.2;
}
.modus-preview-copy p {
  font-size: 17px;
  line-height: 1.5;
}
.modus-preview-copy .go-primary {
  width: 100%;
  margin-top: 16px;
  min-height: 56px;
  font-size: 20px;
}
.go-ptt-wrap.has-cancel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
  gap: 6px;
}
.go-shell .go-ptt-cancel {
  height: 100%;
  min-height: 58px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background:
    linear-gradient(
      145deg,
      #ffffff22,
      #ffffff05),
    var(--panel);
  color: var(--text);
  font-size: 16px;
  font-weight: 700;
}
.go-ptt-wrap.has-cancel .go-ptt {
  font-size: 18px;
  gap: 5px;
  letter-spacing: 0;
}
.go-ptt-wrap.has-cancel .go-ptt svg {
  width: 22px;
  height: 22px;
  flex: none;
}
.mobile-comms-takeover > small {
  display: block;
  font-size: 18px;
  margin: 8px 0;
  color: #243740;
}
@media (min-width:701px) {
  .go-shell {
    position: relative;
  }
  .modus-place-preview-backdrop {
    position: fixed;
  }
}
.modus-map-picker {
  isolation: isolate;
  z-index: 0;
}
.modus-preview-copy .go-primary {
  border: 1px solid #ffc5c580;
  border-radius: 16px;
  background:
    linear-gradient(
      150deg,
      #ffffff35,
      #ffffff03 45%),
    linear-gradient(
      135deg,
      #d71b32,
      #901226);
  color: #fff;
  font: 800 20px Manrope, sans-serif;
  box-shadow: inset 0 1px #ffffff60, 0 8px 18px #0002;
}
.go-shell .motus-nearby .motus-panel-title button[aria-label="Refresh nearby places"] {
  min-width: 44px;
  min-height: 44px;
  border-radius: 12px;
  font-size: 26px;
}
.modus-destination-intent {
  border: 0;
  padding: 12px 0;
  margin: 8px 0;
}
.modus-destination-intent legend {
  font-size: 18px;
  font-weight: 800;
}
.modus-destination-intent label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 8px 20px 0 0;
  font-size: 18px;
}
.modus-destination-intent p {
  color: var(--muted);
  font-size: 15px;
}
.modus-lean-peaks {
  flex-wrap: wrap;
}
.modus-lean-peaks .modus-live-lean {
  flex-basis: 100%;
  text-align: center;
}
.modus-live-lean strong {
  font-size: 20px;
}
.go-group-control {
  position: relative;
  z-index: 5;
  margin: 14px 28px;
  padding: 16px 20px;
  border: 1px solid #465257;
  border-radius: 14px;
  background: #24343b;
  color: #fff;
}
.go-group-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}
.go-group-control button {
  padding: 9px 14px;
  border: 1px solid #69777d;
  border-radius: 8px;
  background: #34474f;
  color: #fff;
  cursor: pointer;
}
.go-group-control .go-primary {
  background: #a61b26;
  border-color: #a61b26;
}
.go-group-control button:disabled {
  opacity: .6;
}
.go-group-settings {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: end;
  margin-top: 12px;
}
.go-group-settings label {
  font-size: 12px;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.go-group-settings select,
.go-group-chat input {
  padding: 8px;
  border-radius: 7px;
  background: #f7f7f5;
  color: #293940;
}
.go-group-settings .go-group-notify {
  flex-direction: row;
  align-items: center;
  padding: 10px 0;
}
.go-group-control p {
  font-size: 13px;
  line-height: 1.5;
  margin: 10px 0 0;
}
.go-group-control a {
  color: #fff;
  text-decoration: underline;
}
.go-group-history {
  max-height: 180px;
  overflow: auto;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.go-group-chat form {
  display: flex;
  gap: 12px;
  margin-top: 12px;
}
.go-group-chat label {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
@media (max-width:760px) {
  .go-group-control {
    margin: 8px 12px;
    padding: 12px;
  }
  .go-group-control ~ .mobile-go {
    height: auto;
    min-height: calc(100dvh - 220px);
  }
  .go-group-settings {
    gap: 8px;
  }
  .go-group-title button {
    font-size: 12px;
  }
  .go-group-settings select {
    max-width: 180px;
  }
}
.go-demo-settings {
  box-sizing: border-box;
  max-height: calc(100dvh - 94px - env(safe-area-inset-bottom));
  overflow-y: auto;
  background: var(--panel);
  color: var(--text);
  border-color: var(--border);
  overscroll-behavior: contain;
}
.go-demo-settings label {
  color: var(--text);
  font-size: 16px;
}
.go-demo-settings h3 {
  font-size: 20px;
}
.go-demo-settings input:not([type=radio]):not([type=checkbox]),
.go-demo-settings select {
  box-sizing: border-box;
  width: 100%;
  min-height: 44px;
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel-hi);
  color: var(--text);
  font-size: 16px;
}
.modus-group-settings {
  padding: 12px 0;
  border-block: 1px solid var(--border);
  margin: 16px 0;
}
.modus-group-settings button,
.modus-group-picker button {
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 10px 14px;
  margin-top: 10px;
  background: var(--panel-hi);
  color: var(--text);
  min-height: 44px;
}
.modus-group-member {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 0;
}
.modus-group-picker {
  padding: 8px 0;
}
.modus-group-picker label {
  display: grid;
  gap: 8px;
  font-size: 16px;
}
.modus-group-picker select {
  width: 100%;
  min-height: 44px;
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel-hi);
  color: var(--text);
}
.modus-group-picker small {
  display: block;
  margin-top: 8px;
  color: var(--muted);
}
.modus-group-settings .modus-group-notify {
  display: flex;
  align-items: center;
  gap: 8px;
}
.go-demo-settings > div:first-child {
  position: sticky;
  top: -18px;
  background: var(--panel);
  z-index: 1;
  padding: 8px 0;
}
.modus-radar-zone {
  position: relative;
  isolation: isolate;
}
.modus-radar-zone > .mobile-radar,
.modus-radar-zone > .motus-course-progress {
  position: relative;
  z-index: 1;
}
.modus-flip-card .modus-radar-gauges {
  position: absolute;
  inset: 20% 9px 54px;
  height: auto;
  z-index: 0;
  pointer-events: none;
}
.modus-vertical-gauge {
  position: absolute;
  top: 0;
  bottom: 0;
  border-radius: 14px;
  overflow: hidden;
  background:
    linear-gradient(
      90deg,
      #091b22cc,
      #34515b99,
      #091b22cc);
  border: 1px solid #97bbc26b;
  box-shadow: inset 0 1px 5px #0007;
}
.modus-vertical-gauge > i {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  transition: height .6s ease;
  background:
    linear-gradient(
      90deg,
      #218ba68c,
      #9ae7efbd,
      #218ba68c);
  border-radius: 12px;
  box-shadow: 0 -2px 10px #59c9de55;
}
.modus-vertical-gauge.is-progress {
  left: 0;
  width: 29px;
}
.modus-vertical-gauge.is-fuel {
  right: 0;
  width: 29px;
}
.modus-vertical-gauge.is-fuel > i {
  background:
    linear-gradient(
      90deg,
      #bf6b1688,
      #ffd45ecc,
      #e69c26aa);
}
.modus-vertical-gauge.is-low > i {
  background:
    linear-gradient(
      90deg,
      #a9582188,
      #f6be62aa,
      #a9582188);
}
.modus-vertical-gauge.is-fuel > small,
.modus-vertical-gauge.is-fuel > b {
  position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  text-align: center;
  color: var(--text);
  font-size: 10px;
  font-weight: 800;
  text-shadow: 0 1px 3px var(--panel);
}
.modus-vertical-gauge.is-fuel > small:first-child {
  top: 5px;
}
.modus-vertical-gauge.is-fuel > small:last-child {
  bottom: 5px;
}
.modus-vertical-gauge.is-fuel > b {
  top: 48%;
  font-size: 9px;
}
.modus-vertical-gauge.is-unset {
  background:
    repeating-linear-gradient(
      135deg,
      #34515b55 0 5px,
      #091b2255 5px 10px);
}
.modus-flip-card .motus-course-progress {
  justify-content: space-between;
  padding: 0 10px;
}
.motus-course-progress > b {
  font-size: 16px;
  color: var(--muted);
}
.modus-fuel-range {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  align-items: end;
  margin: 18px 0;
}
.modus-fuel-range label {
  display: grid;
  gap: 8px;
  font-size: 17px;
}
.modus-fuel-range input {
  width: 100%;
  box-sizing: border-box;
  padding: 12px;
  background: var(--panel);
  color: var(--text);
  border: 1px solid var(--border);
  border-radius: 10px;
  font-size: 20px;
}
.modus-fuel-range small {
  grid-column: 1/-1;
}
.go-shell .motus-shortcuts button img {
  width: 54.4px;
  height: 54.4px;
}
.modus-lean-peaks {
  display: grid;
  grid-template-columns: 1fr 1.2fr 1fr;
  gap: 8px;
  align-items: start;
  font-size: 13px;
  padding: 4px 8px 10px;
}
.modus-lean-peaks .modus-live-lean {
  flex-basis: auto;
  min-width: 0;
  text-align: center;
}
.modus-lean-peaks > span:first-child {
  text-align: left;
}
.modus-lean-peaks > span:last-child {
  text-align: right;
}
.modus-lean-peaks .modus-live-lean strong {
  font-size: 17px;
  line-height: 1.25;
}
.modus-lean-peaks strong {
  font-size: 22px;
}
.modus-message-audio-test {
  text-align: center;
  padding: 4px 8px 10px;
}
.modus-message-audio-test button {
  border: 1px solid var(--border);
  background: var(--panel);
  color: var(--text);
  border-radius: 12px;
  padding: 8px 16px;
  font-size: 15px;
  min-height: 40px;
}
.modus-message-audio-test small {
  display: block;
  font-size: 12px;
  color: var(--muted);
  margin-top: 4px;
}
.go-shell .modus-audio-status {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin: 5px 0 9px;
  flex-wrap: wrap;
}
.go-shell .modus-audio-status > button {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 4px;
  min-height: 44px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #00d96a;
  min-width: 0;
}
.modus-audio-status > button > img {
  width: 28px;
  height: 28px;
  object-fit: contain;
  flex: 0 0 28px;
}
.go-shell .modus-audio-status > button > strong {
  color: #00d96a;
  font-size: 12px;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}
.go-shell .modus-audio-status > p {
  width: 100%;
  margin: 0;
  font-size: 14px;
}
@media (max-width:700px) {
  .modus-flip-card {
    display: flex;
    flex-direction: column;
    min-height: 0;
  }
  .modus-destination-title {
    flex: none;
    text-align: center;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.25;
    padding: 8px 55px 6px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--text);
  }
  .modus-flip-card > .modus-radar-content {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
  }
  .modus-flip-card .modus-radar-zone {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
  }
  .modus-flip-card .mobile-radar {
    flex: 1;
    min-height: 0;
    padding-top: 12px;
    display: flex;
    flex-direction: column;
  }
  .modus-flip-card .mobile-radar > svg {
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: 100%;
    flex: 1;
    object-fit: contain;
  }
  .modus-flip-card .modus-active-vehicle {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    align-self: center;
    flex: none;
    margin: 2px 0 4px;
    padding: 4px 14px;
    font-size: 14px;
  }
  .modus-flip-card .motus-course-progress {
    flex: none;
    min-height: 42px;
    padding-top: 2px;
    padding-bottom: 2px;
  }
  .modus-flip-card .modus-message-audio-test {
    flex: none;
    padding: 2px 8px 4px;
  }
  .modus-message-audio-test small {
    font-size: 11px;
    line-height: 1.2;
    max-height: 27px;
    overflow: hidden;
  }
  .modus-flip-card .modus-lean-peaks {
    flex: none;
    padding: 4px 8px 6px;
    min-height: 54px;
  }
  .modus-flip-card .modus-show-riders {
    flex: none;
    min-height: 28px;
    margin-top: 0;
    padding: 2px;
    font-size: 13px;
  }
}
@media (max-width:700px) {
  .modus-flip-card {
    overflow: hidden;
  }
  .mobile-course-slide.modus-flip-card > .modus-destination-title {
    display: block;
    min-height: 0;
  }
  .mobile-course-slide.modus-flip-card > .modus-radar-content {
    min-height: 0;
  }
  .modus-radar-detail {
    top: 48%;
  }
}
@media (max-width:700px) {
  .mobile-go.is-android {
    padding-inline: 4px;
    gap: 3px;
  }
  .is-android .modus-destination-title {
    font-size: 20px;
    padding-top: 4px;
    padding-bottom: 4px;
  }
  .is-android .modus-message-audio-test button {
    min-height: 30px;
    padding: 4px 12px;
    font-size: 13px;
  }
  .is-android .modus-lean-peaks {
    min-height: 45px;
    padding-bottom: 2px;
  }
  .is-android .modus-show-riders {
    min-height: 24px;
    font-size: 12px;
  }
  .is-android .mobile-radar {
    padding-top: 4px;
  }
  .is-android .motus-course-progress {
    min-height: 34px;
  }
}
.modus-voice-settings {
  border-top: 1px solid var(--border);
  padding: 14px 0;
  margin: 12px 0;
}
.modus-voice-settings label {
  display: grid;
  gap: 7px;
  margin: 14px 0;
  font-size: 18px;
  font-weight: 700;
}
.modus-voice-settings select {
  width: 100%;
  font-size: 17px;
  padding: 12px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel);
  color: var(--text);
}
.modus-voice-preview {
  display: flex;
  gap: 10px;
}
.modus-voice-settings button {
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 11px 16px;
  background: var(--panel);
  color: var(--text);
  font-size: 17px;
  min-height: 44px;
}
.modus-voice-settings button:disabled {
  opacity: .45;
}
.modus-voice-settings p,
.modus-voice-settings details {
  font-size: 15px;
  line-height: 1.5;
  color: var(--muted);
}
.modus-voice-settings summary {
  cursor: pointer;
  color: var(--text);
}
.mobile-search-slide .motus-destination {
  padding-top: 6px;
  padding-bottom: 5px;
}
.mobile-search-slide .motus-shortcuts {
  margin-top: 4px;
  margin-bottom: 0;
}
.modus-place-preview-backdrop * {
  box-sizing: border-box;
}
.modus-place-preview-backdrop button,
.modus-place-preview-backdrop input {
  font: inherit;
}
.modus-preview-copy h2 {
  font-family: Manrope, sans-serif;
}
.modus-google-maps {
  display: block;
  flex: none;
  text-align: center;
  color: var(--muted);
  font-size: 14px;
  padding: 7px 8px;
  text-decoration: underline;
}
.mobile-search-slide:has(.modus-map-picker) {
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.mobile-search-slide:has(.modus-map-picker) > .modus-destination-title,
.mobile-search-slide:has(.modus-map-picker) > .motus-destination {
  flex: none;
}
.mobile-search-slide:has(.modus-map-picker) > .motus-nearby {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  margin-bottom: 0;
}
.mobile-search-slide .modus-map-picker {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
.mobile-search-slide .modus-map-canvas {
  height: 100% !important;
  flex: 1;
  min-height: 0;
}
.modus-bottom-altitude {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  margin: 8px 0;
  color: var(--text);
  font-size: 24px;
}
.modus-bottom-altitude small {
  color: var(--muted);
  font-size: 14px;
}
.modus-route-order {
  flex: none;
  margin: 4px 0;
  padding-left: 24px;
  font-size: 14px;
}
.modus-route-order li {
  padding: 4px;
}
.modus-route-order small {
  color: var(--muted);
  margin-left: 8px;
}
.modus-route-order button {
  padding: 2px 8px;
  margin-left: 8px;
}
.modus-vehicle-controls {
  display: flex;
  flex: none;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
}
.modus-vehicle-controls .modus-active-vehicle {
  margin: 0;
}
.modus-feature-audio-test {
  border: 1px solid var(--border);
  border-radius: 20px;
  background: var(--panel);
  color: var(--green);
  padding: 7px 10px;
  font-size: 12px;
}
.modus-vehicle-controls > small {
  flex-basis: 100%;
  text-align: center;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.3;
}
.audio-footer-controls {
  flex: none;
  display: flex;
  justify-content: center;
  gap: 24px;
  margin: 4px 12px 6px;
  min-height: 28px;
}
.modus-audio-status.audio-footer-controls button {
  display: flex;
  align-items: center;
  gap: 7px;
  border: 0;
  background: none;
  color: #00df84;
  min-width: 0;
  max-width: 45%;
  padding: 3px;
}
.modus-audio-status.audio-footer-controls img {
  width: 20px;
  height: 20px;
  object-fit: contain;
}
.modus-audio-status.audio-footer-controls strong {
  font-size: 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.audio-sheet-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1800;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  background: #0008;
  backdrop-filter: blur(4px);
  color: var(--go-text,#f3f7f8);
  font-family: inherit;
}
.audio-device-sheet {
  width: min(100%, 560px);
  max-height: 90dvh;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  padding: 12px 20px calc(16px + env(safe-area-inset-bottom));
  border: 1px solid #49717d88;
  border-radius: 28px 28px 0 0;
  background:
    linear-gradient(
      130deg,
      #112b32ef,
      #03171eef);
  box-shadow: 0 -12px 60px #0005;
  backdrop-filter: blur(24px);
  color: #eef7f8;
}
.audio-sheet-handle {
  width: 44px;
  height: 5px;
  border-radius: 6px;
  background: #72899180;
  margin: 0 auto 14px;
}
.audio-device-sheet header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.audio-device-sheet h2 {
  font-size: 27px;
  margin: 0;
}
.audio-device-sheet header button {
  border: 1px solid #526f7980;
  background: #243e4670;
  color: inherit;
  border-radius: 50%;
  width: 42px;
  height: 42px;
  font-size: 29px;
}
.audio-sheet-intro {
  color: #b7cbd0;
  margin: 8px 0 18px;
  font-size: 15px;
}
.audio-sheet-scroll {
  overflow: auto;
  min-height: 0;
  overscroll-behavior: contain;
  touch-action: pan-y;
  padding-bottom: 8px;
}
.audio-section-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 16px 0 10px;
  gap: 12px;
}
.audio-section-title h3 {
  font-size: 18px;
  margin: 0;
}
.audio-section-title button,
.audio-test-status button,
.audio-device-details button {
  border: 1px solid #547e8e;
  border-radius: 22px;
  padding: 9px 17px;
  background: #16384780;
  color: inherit;
  font-size: 15px;
}
.audio-device-row {
  display: flex;
  border: 1px solid #54717e77;
  border-radius: 15px;
  margin-bottom: 6px;
  background: #0a202b66;
  min-height: 58px;
}
.audio-device-row.is-active {
  border-color: #00df84;
}
.audio-device-row > button:first-child {
  display: flex;
  align-items: center;
  gap: 13px;
  text-align: left;
  flex: 1;
  min-width: 0;
  background: none;
  color: inherit;
  border: 0;
  padding: 10px 13px;
}
.audio-device-row button:disabled {
  opacity: .4;
}
.audio-device-icon {
  width: 27px;
  flex: none;
}
.audio-device-icon svg {
  width: 27px;
  height: 27px;
}
.audio-device-label {
  flex: 1;
  min-width: 0;
}
.audio-device-label strong {
  display: block;
  font-size: 16px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.audio-device-label small {
  font-size: 12px;
  color: #9eb3bc;
  display: block;
  margin-top: 3px;
}
.audio-device-edit {
  border: 0;
  background: none;
  color: #b7cbd0;
  font-size: 23px;
  width: 34px;
}
.audio-radio,
.audio-check {
  width: 23px;
  height: 23px;
  border: 1px solid #8ea3ac;
  border-radius: 50%;
  display: grid;
  place-items: center;
  flex: none;
}
.audio-check {
  color: #06271b;
  background: #00df84;
  border-color: #00df84;
  font-weight: bold;
}
.audio-current,
.audio-test-status,
.audio-device-details {
  margin: 16px 0 0;
  padding: 12px;
  border: 1px solid #44657166;
  border-radius: 15px;
  background: #17333b55;
  font-size: 14px;
}
.audio-current p,
.audio-test-status p {
  margin: 7px 0;
  color: #b7cbd0;
}
.audio-route-error {
  color: #ffd0c4;
}
.audio-device-details label {
  display: block;
  margin: 10px 0;
}
.audio-device-details input,
.audio-device-details select {
  display: block;
  box-sizing: border-box;
  width: 100%;
  border: 1px solid #54717e;
  border-radius: 8px;
  padding: 8px;
  background: #112b32;
  color: #eef7f8;
  margin-top: 5px;
}
.audio-device-details small {
  display: block;
  margin-bottom: 10px;
}
.audio-sheet-done {
  flex: none;
  border: 0;
  border-radius: 22px;
  padding: 16px;
  background:
    linear-gradient(
      120deg,
      #00d77a,
      #00e196);
  color: #04241a;
  font-weight: 700;
  font-size: 19px;
  margin-top: 12px;
}
:root[data-theme=light] .go-shell {
  --panel: #f7fbfa;
  --panel-hi: #edf4f3;
  --border: rgba(79, 110, 120, .28);
  --muted: #526971;
  background: transparent;
}
:root[data-theme=light] .go-shell::before {
  background-image:
    linear-gradient(
      180deg,
      rgba(237, 245, 245, .28),
      rgba(237, 245, 245, .68) 48%,
      rgba(237, 245, 245, .86)),
    var(--go-hero);
  filter: saturate(.8);
}
:root[data-theme=light] .go-shell::after {
  background: rgba(240, 248, 247, .12);
}
:root[data-theme=light] .go-header {
  background: rgba(248, 252, 251, .14);
  border-color: rgba(255, 255, 255, .32);
  backdrop-filter: blur(10px) saturate(135%);
  -webkit-backdrop-filter: blur(10px) saturate(135%);
}
:root[data-theme=light] .go-shell :is(.go-panel, .mobile-instrument-card, .mobile-rider-row, .motus-status-strip) {
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, .76),
      rgba(247, 252, 251, .56));
  border-color: var(--border);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9), 0 10px 28px rgba(30, 64, 73, .09);
  backdrop-filter: blur(20px) saturate(125%);
  -webkit-backdrop-filter: blur(20px) saturate(125%);
}
:root[data-theme=light] .go-shell .go-header nav button,
:root[data-theme=light] .go-shell .go-tools {
  color: #2d454f;
}
:root[data-theme=light] .go-shell .go-header nav button.is-active {
  color: #152a33;
}
:root[data-theme=light] .go-ride-header h1 {
  color: var(--text);
}
:root[data-theme=light] .go-ride-sub {
  color: #38565f;
}
:root[data-theme=light] .go-shell :is(.motus-status-strip svg, .motus-panel-title > button, .motus-destination input::placeholder, .motus-course-facts span) {
  color: var(--muted);
}
:root[data-theme=light] .go-shell :is(.motus-destination form, .go-channel-controls > button:first-child, .motus-shortcuts button) {
  background: rgba(255, 255, 255, .42);
  border-color: var(--border);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .7);
}
:root[data-theme=light] .go-shell .modus-audio-status > button > strong {
  color: var(--green);
}
:root[data-theme=light] .go-shell .modus-audio-status > button > img {
  filter: brightness(.55) saturate(.85);
}
:root[data-theme=light] .go-shell .go-rider-status.is-unchecked {
  opacity: 1;
}
:root[data-theme=light] .go-shell .go-rider-status.is-unchecked strong {
  color: var(--muted);
}
:root[data-theme=light] .go-shell .go-rider-status.is-self {
  background: rgba(46, 167, 201, .09);
  outline-color: rgba(22, 144, 184, .45);
}
.go-shell .modus-destination-row > .motus-place-row {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
}
.go-shell .modus-destination-row .motus-place-row strong {
  font-size: 18px;
  line-height: 1.3;
  white-space: normal;
  overflow-wrap: anywhere;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.go-shell .modus-destination-row .motus-place-row em {
  font-size: 16px;
  white-space: nowrap;
}
.go-shell .modus-destination-row .motus-place-row small {
  font-size: 12px;
}
@media (min-width:701px) {
  .go-shell .motus-nearby {
    display: flex;
    flex-direction: column;
  }
  .go-shell .motus-nearby > .motus-panel-title {
    flex: none;
  }
  .go-shell .motus-nearby > .modus-destination-list {
    flex: 1;
    min-height: 0;
    max-height: none;
    overflow-y: auto;
  }
  .go-shell .motus-course {
    position: relative;
  }
  .go-shell .motus-course > .motus-stop-signal {
    right: 20px;
    bottom: 62px;
    padding: 0;
  }
  .go-shell .motus-course > .motus-stop-signal > .modus-stop-octagon {
    width: 86px;
    height: 86px;
    padding: 16px;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  .go-shell .motus-course > .motus-stop-signal strong {
    font-size: 13px;
  }
  .go-shell .motus-course-progress {
    min-height: 54px;
    align-self: end;
    padding-bottom: 4px;
  }
  .go-shell .motus-right-column .go-channel-title {
    position: relative;
    flex-wrap: wrap;
    gap: 8px;
  }
  .go-shell .motus-right-column .go-channel-title > div {
    display: flex;
    flex: 1;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
  }
  .go-shell .motus-right-column .go-channel-title span {
    position: static;
    font-size: 11px;
    white-space: nowrap;
  }
  .go-shell .motus-right-column .go-channel-title h2 {
    font-size: 20px;
  }
  .go-shell .motus-right-column .go-rider-status {
    grid-template-columns: 56px minmax(0, 1fr) 16px;
    gap: 10px;
  }
  .go-shell .motus-right-column .go-rider-status .go-avatar {
    width: 56px;
    height: 56px;
    min-width: 56px;
  }
  .go-shell .motus-right-column .go-rider-status strong {
    font-size: 18px !important;
  }
  .go-shell .motus-right-column .go-rider-status :is(span, em) {
    font-size: 14px !important;
  }
  .go-shell .motus-right-column .go-rider-status small {
    font-size: 12px;
  }
}
@supports not (backdrop-filter: blur(1px)) {
  :root[data-theme=light] .go-shell :is(.go-panel, .mobile-instrument-card, .mobile-rider-row, .motus-status-strip) {
    background: rgba(250, 253, 252, .92);
  }
}
@media (max-width:700px) {
  .go-shell .modus-destination-row .motus-place-row strong {
    font-size: 26px;
  }
  .go-shell .modus-destination-row .motus-place-row small {
    font-size: 14px;
  }
  .go-shell .modus-destination-row .motus-place-row em {
    font-size: 20px;
  }
}
:root[data-theme=light] .modus-audio-status.audio-footer-controls button {
  color: #087c62;
}
.audio-device-never {
  flex: none;
  background: none;
  border: 0;
  color: #a9bbc1;
  font-size: 11px;
  padding: 8px;
  max-width: 60px;
  line-height: 1.25;
}
.audio-device-never:hover {
  color: #fff;
}
.audio-current-simple {
  font-size: 12px;
  color: #a9bbc1;
  margin: 14px 0;
}
.audio-hidden-devices {
  margin-top: 15px;
}
.audio-hidden-devices button {
  background: none;
  color: #a9bbc1;
  border: 0;
  padding: 8px;
  font-size: 12px;
}
.audio-hidden-devices > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 13px;
}
@media (max-width:700px) {
  .mobile-go.is-dashboard {
    grid-template-rows: 46px minmax(0, 1fr) 38px 78px;
    gap: 5px;
    padding-inline: 10px;
  }
  .is-dashboard .mobile-go-header {
    min-height: 0;
    height: 46px;
    justify-content: space-between;
  }
  .modus-dashboard-brand {
    width: 130px;
    height: 40px;
    object-fit: contain;
  }
  .is-dashboard .modus-flip-card {
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .modus-dashboard-destination {
    display: grid;
    grid-template-columns: 70px minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
    border: 1px solid #648b9b77;
    border-radius: 14px;
    background:
      linear-gradient(
        125deg,
        #16313a88,
        #071b2388);
    padding: 9px 10px;
    flex: none;
    min-height: 64px;
    box-sizing: border-box;
    backdrop-filter: blur(10px);
    color: var(--text);
  }
  .modus-dashboard-destination p {
    margin: 0;
    display: grid;
    gap: 3px;
  }
  .modus-dashboard-destination p:last-child {
    text-align: right;
    border-left: 1px solid var(--border);
    padding-left: 8px;
  }
  .modus-dashboard-destination strong {
    font-size: 29px;
    line-height: 1.05;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
  }
  .modus-dashboard-destination small {
    font-size: 13px;
    color: var(--muted);
  }
  .modus-dashboard-destination .modus-destination-title {
    font-size: 23px;
    line-height: 1.12;
    padding: 0;
    text-align: left;
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .is-dashboard .modus-flip-card > .modus-radar-content {
    gap: 7px;
    flex: 1;
    min-height: 510px;
  }
  .is-dashboard .modus-radar-zone {
    flex: 1;
    min-height: 280px;
  }
  .is-dashboard .mobile-radar {
    padding: 58px 23px 0;
    position: relative;
  }
  .is-dashboard .mobile-radar > svg {
    width: 100%;
    height: 100%;
    min-height: 200px;
    max-height: none;
    flex: 1;
    overflow: visible;
  }
  .is-dashboard .mobile-radar .motus-course-facts {
    inset: 2px 0 auto !important;
    height: 55px;
    pointer-events: none;
  }
  .is-dashboard .mobile-radar .motus-course-facts p {
    background: none;
    padding: 0;
  }
  .is-dashboard .mobile-radar .motus-course-facts .is-correction {
    top: 0;
    left: 0;
  }
  .is-dashboard .mobile-radar .motus-course-facts .is-distance {
    top: 0;
    right: 0;
    text-align: right;
  }
  .is-dashboard .mobile-radar .motus-course-facts strong {
    font-size: 32px;
    line-height: 1.05;
  }
  .is-dashboard .mobile-radar .motus-course-facts span {
    font-size: 14px;
  }
  .is-dashboard .mobile-radar .motus-course-facts small {
    font-size: 13px;
  }
  .is-dashboard .modus-radar-gauges {
    inset: 85px 3px 49px;
  }
  .is-dashboard .modus-vertical-gauge {
    width: 23px;
  }
  .is-dashboard .modus-vertical-gauge.is-fuel > b {
    font-size: 12px;
    writing-mode: vertical-rl;
    top: 40%;
  }
  .is-dashboard .modus-vertical-gauge.is-fuel > small {
    font-size: 13px;
  }
  .is-dashboard .mobile-radar-scale {
    font-size: 14px;
  }
  .is-dashboard .motus-course-progress {
    min-height: 32px;
    margin: 0;
    padding: 0 2px;
  }
  .is-dashboard .motus-trip-meter {
    font-size: 25px;
  }
  .is-dashboard .motus-trip-meter small {
    font-size: 13px;
  }
  .is-dashboard .motus-course-progress > b {
    font-size: 21px;
  }
  .modus-dashboard-instruments {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    flex: none;
  }
  .modus-dashboard-instruments > div,
  .modus-dashboard-instruments > button {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-width: 0;
    min-height: 76px;
    border: 1px solid #6494a688;
    border-radius: 14px;
    background:
      linear-gradient(
        140deg,
        #163b4580,
        #081b2480);
    color: var(--text);
    backdrop-filter: blur(12px);
    padding: 5px 2px;
    box-sizing: border-box;
  }
  .modus-dashboard-instruments svg {
    width: 25px;
    height: 25px;
  }
  .modus-dashboard-instruments strong {
    font-size: 24px;
    line-height: 1.05;
    font-weight: 800;
    white-space: nowrap;
    letter-spacing: -.04em;
    font-variant-numeric: tabular-nums;
  }
  .modus-dashboard-instruments small {
    font-size: 12px;
    color: var(--muted);
  }
  .modus-lean-instrument > span {
    height: 25px;
    font-size: 21px;
  }
  .modus-dashboard-links {
    display: flex;
    gap: 8px;
    align-items: stretch;
    min-height: 42px;
    flex: none;
  }
  .modus-dashboard-links > * {
    flex: 1;
    min-width: 0;
    border: 1px solid #6494a677;
    border-radius: 14px;
    background: #0a253077;
  }
  .modus-dashboard-links .modus-active-vehicle {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 0;
    background: none;
    font-size: 17px;
    padding: 7px;
    max-width: 100%;
    width: 100%;
    margin: 0;
  }
  .modus-dashboard-links .modus-active-vehicle svg {
    width: 20px;
    flex: none;
  }
  .modus-dashboard-links .modus-google-maps {
    display: grid;
    place-items: center;
    text-decoration: none;
    padding: 7px;
    font-size: 17px;
    font-weight: 650;
  }
  .modus-quick-messages {
    border: 1px solid #6494a677;
    border-radius: 14px;
    background: #0a253066;
    padding: 8px;
    flex: none;
    backdrop-filter: blur(10px);
  }
  .modus-quick-messages header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 7px;
    gap: 8px;
  }
  .modus-quick-messages header strong {
    font-size: 18px;
  }
  .modus-quick-messages header small,
  .modus-quick-messages > small {
    font-size: 12px;
    color: var(--muted);
  }
  .modus-quick-messages > div {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
  }
  .modus-quick-messages button {
    display: grid;
    place-items: center;
    gap: 5px;
    min-height: 65px;
    border: 1px solid #88b6c488;
    border-radius: 13px;
    background:
      linear-gradient(
        145deg,
        #52758777,
        #13313d88);
    color: var(--text);
    padding: 7px 2px;
  }
  .modus-quick-messages button span {
    font-size: 16px;
    line-height: 1.12;
    font-weight: 700;
  }
  .modus-quick-messages svg {
    width: 27px;
    height: 27px;
  }
  .is-dashboard .modus-show-riders {
    font-size: 16px;
    min-height: 30px;
    margin: 0;
  }
  .is-dashboard .audio-footer-controls {
    margin: 0;
    min-height: 38px;
  }
  .is-dashboard .audio-footer-controls > button {
    min-height: 38px;
  }
  .is-dashboard .audio-footer-controls strong {
    font-size: 13px;
  }
  :root[data-theme=light] .modus-dashboard-brand {
    filter: brightness(.2);
  }
  :root[data-theme=light] :is(.modus-dashboard-destination, .modus-dashboard-instruments > div, .modus-dashboard-instruments > button, .modus-dashboard-links > *, .modus-quick-messages) {
    background:
      linear-gradient(
        130deg,
        #f7fcfadd,
        #e4f1eee0);
    border-color: #6d8d9d88;
  }
  :root[data-theme=light] .modus-quick-messages button {
    background:
      linear-gradient(
        145deg,
        #f8fffc,
        #cce1e2);
  }
}
:root[data-go-active=true] :is(.mobile-bottom-nav, .bottom-nav, .mobile-nav, .site-bottom-nav) {
  display: none !important;
}
@media (max-width:700px) {
  .mobile-go.is-dashboard:not(:has(.audio-footer-controls)) {
    grid-template-rows: 46px minmax(0, 1fr) 78px;
  }
  .is-dashboard .mobile-go-header > button {
    background: none;
    border: 0;
    border-radius: 12px;
    color: var(--text);
    min-width: 44px;
    min-height: 44px;
    padding: 7px;
  }
  .is-dashboard .mobile-radar .radar-degree.is-cardinal {
    font-size: 17px;
    font-weight: 800;
    fill: var(--text);
  }
  .is-dashboard .mobile-radar-rider text {
    font-size: 16px;
  }
  .is-dashboard .mobile-radar-rider text.movement {
    font-size: 13px;
  }
  .go-shell:has(.is-dashboard)::before {
    background-image:
      linear-gradient(
        180deg,
        #06111655,
        #06111680 48%,
        #061116ef 90%),
      var(--go-hero);
    background-size: cover;
    background-position: center 35%;
    height: 100%;
  }
  :root[data-theme=light] .go-shell:has(.is-dashboard)::before {
    background-image:
      linear-gradient(
        180deg,
        #edf5f5bb,
        #edf5f5cc 48%,
        #edf5f5f0 90%),
      var(--go-hero);
  }
  .is-dashboard .modus-dashboard-destination .modus-destination-title {
    font-size: 22px;
  }
}
@media (max-width:700px) {
  .is-dashboard .mobile-radar > svg {
    min-height: 240px;
  }
  .is-dashboard .modus-radar-zone {
    min-height: 320px;
  }
  .is-dashboard .modus-quick-messages > small.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }
  .is-dashboard .modus-show-riders {
    background: none;
    border: 0;
    color: var(--muted);
    border-top: 1px solid var(--border);
  }
  .is-dashboard .modus-quick-messages > div button {
    height: 82px;
    min-height: 82px;
    box-sizing: border-box;
  }
  .is-dashboard .modus-quick-messages header {
    margin-bottom: 6px;
    line-height: 1.1;
  }
}
.go-narration {
  margin: 16px 0;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 14px;
}
.go-narration button {
  margin: 6px 8px 0 0;
  min-height: 44px;
  padding: 8px 14px;
  border-radius: 12px;
}
.go-narration p {
  font-size: 14px;
}
.go-narration-bar {
  position: fixed;
  left: 12px;
  right: 12px;
  bottom: 120px;
  z-index: 90;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  background: var(--paper);
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 10px;
}
.go-narration-bar span {
  flex: 1;
}
.go-narration-bar button {
  min-height: 44px;
  padding: 8px 14px;
  border-radius: 12px;
}
.go-narration-bar small {
  flex-basis: 100%;
}
@media (max-width:700px) {
  .is-dashboard .modus-quick-messages header .modus-show-riders {
    min-height: 0;
    height: auto;
    border: 0;
    padding: 0;
    font-size: 13px;
    color: var(--muted);
    background: none;
  }
}
@media (max-width:700px) {
  .is-dashboard .modus-quick-messages header .modus-show-riders {
    width: auto;
    flex: none;
  }
  .is-dashboard .modus-quick-messages header strong {
    white-space: nowrap;
  }
}
@media (max-width:700px) {
  .mobile-go {
    grid-template-rows: 58px minmax(0, 1fr) 90px;
  }
  .mobile-go.is-dashboard,
  .mobile-go.is-dashboard:not(:has(.audio-footer-controls)) {
    grid-template-rows: 46px minmax(0, 1fr) 90px;
  }
  .mobile-communication-dock {
    display: grid;
    grid-template-columns: 81px minmax(0, 1fr) 81px;
    gap: 7px;
    align-items: center;
    position: relative;
    z-index: 10;
  }
  .mobile-communication-dock .audio-footer-controls {
    display: contents !important;
  }
  .mobile-communication-dock .audio-footer-controls > button {
    grid-row: 1;
    display: flex;
    flex-direction: column;
    gap: 3px;
    border: 1px solid #517b8b88;
    border-radius: 32px;
    background:
      linear-gradient(
        130deg,
        #14344188,
        #071a2488);
    padding: 10px 4px;
    min-height: 72px;
  }
  .mobile-communication-dock .audio-footer-controls > button:first-child {
    grid-column: 1;
  }
  .mobile-communication-dock .audio-footer-controls > button:last-child {
    grid-column: 3;
  }
  .mobile-communication-dock .audio-footer-controls > button img {
    width: 39px;
    height: 39px;
  }
  .mobile-communication-dock .audio-footer-controls > button strong {
    font-size: 11px;
    max-width: 100%;
  }
  .mobile-communication-dock .mobile-bottom-actions {
    grid-column: 2;
    grid-row: 1;
    display: block;
    height: 78px;
    min-width: 0;
  }
  .mobile-communication-dock:not(:has(.audio-footer-controls)) {
    grid-template-columns: 1fr;
  }
  .mobile-communication-dock:not(:has(.audio-footer-controls)) .mobile-bottom-actions {
    grid-column: 1;
  }
  .mobile-communication-dock .go-ptt,
  .mobile-communication-dock .mobile-primary-action {
    border-radius: 999px !important;
    border: 2px solid #ee829488;
    background:
      linear-gradient(
        135deg,
        #e94a6077,
        #c11f35ee 48%,
        #8f1227e8);
    box-shadow:
      inset 0 2px 2px #ffffff66,
      inset 0 -3px 12px #69061d55,
      0 0 0 4px #0a1920,
      0 0 0 5px #86a6b255;
    color: #fff;
    font-size: clamp(17px, 4.7vw, 23px);
    font-weight: 800;
    letter-spacing: 0;
    padding: 10px 12px;
    gap: 9px;
    backdrop-filter: blur(14px);
  }
  .mobile-communication-dock .go-ptt > svg {
    width: 32px;
    height: 32px;
    flex: none;
  }
  .is-dashboard .modus-radar-zone {
    flex: 1;
    min-height: 0;
  }
  .is-dashboard .mobile-radar {
    padding-inline: 20px;
    flex: 1;
    height: 100%;
    min-height: 0;
  }
  .is-dashboard .mobile-radar > svg {
    flex: 1;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: 100%;
  }
  .is-dashboard .modus-radar-gauges {
    inset: 94px 3px 56px;
  }
  .is-dashboard .modus-flip-card {
    touch-action: pan-x;
    overflow: hidden;
  }
  .is-dashboard .modus-flip-card > .modus-radar-content {
    flex: 1;
    min-height: 0;
    gap: 5px;
  }
  .is-dashboard .modus-quick-messages {
    margin-bottom: 8px;
  }
}
body:has(.mobile-go) .feedback-tab {
  display: none !important;
}
@media (max-width:700px) {
  .is-dashboard .modus-vertical-gauge {
    width: 18.4px;
  }
  .is-dashboard .modus-quick-messages {
    margin-bottom: 0;
    padding: 6px;
  }
  .modus-quick-messages header:empty {
    display: none;
  }
  .is-dashboard .modus-quick-messages header {
    position: absolute;
    right: 8px;
    bottom: calc(100% + 4px);
    margin: 0;
  }
  .is-dashboard .modus-quick-messages button {
    min-height: 70px;
  }
}
@media (max-width:700px) {
  .is-dashboard .mobile-radar {
    padding-top: 12px;
    padding-inline: 16px;
  }
  .is-dashboard .mobile-radar .motus-course-facts {
    display: none;
  }
  .is-dashboard .modus-radar-gauges {
    inset: 42px 3px 42px;
  }
  .radar-correction-readout {
    pointer-events: none;
  }
  .radar-correction-readout text {
    fill: var(--text);
    font-size: 30px;
    font-weight: 800;
    paint-order: stroke;
    stroke: var(--bg);
    stroke-width: 3px;
  }
  .radar-correction-readout .radar-correction-direction {
    font-size: 12px;
    font-weight: 600;
  }
}
.modus-vertical-gauge.is-elevation {
  position: absolute;
  right: 0;
  width: 29px;
  background:
    linear-gradient(
      90deg,
      #081b2cdd,
      #143c5099,
      #081b2cdd);
  overflow: visible;
}
.modus-vertical-gauge.is-elevation > i {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  max-height: 100%;
  border-radius: inherit;
  background:
    linear-gradient(
      90deg,
      #167fc5,
      #61d3ff,
      #238abf);
  box-shadow: 0 0 16px #38b9ff55;
}
.modus-vertical-gauge.is-elevation > b {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  writing-mode: vertical-rl;
  font-size: 13px;
  white-space: nowrap;
  color: #e5faff;
  text-shadow: 0 1px 3px #001723;
}
.elevation-extreme {
  position: absolute;
  right: 0;
  display: grid;
  gap: 2px;
  text-align: right;
  white-space: nowrap;
  color: var(--text);
  z-index: 2;
}
.elevation-extreme small {
  font-size: 12px;
  color: var(--muted);
}
.elevation-extreme strong {
  font-size: 18px;
  line-height: 1.05;
  font-variant-numeric: tabular-nums;
}
.elevation-extreme.is-max {
  bottom: calc(100% + 5px);
}
.elevation-extreme.is-min {
  top: calc(100% + 5px);
}
@media (max-width:700px) {
  .is-dashboard .modus-dashboard-instruments {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .is-dashboard .modus-dashboard-instruments strong {
    font-size: 28px;
  }
  .is-dashboard .modus-radar-gauges {
    inset: 50px 3px 50px;
  }
}
@media (max-width:700px) {
  .is-dashboard .modus-vertical-gauge.is-elevation {
    width: 18.4px;
  }
}
.go-adventure-completion {
  margin: 16px auto;
  max-width: 1100px;
  padding: 18px;
}
.go-adventure-completion h2 {
  font-size: 20px;
}
.go-adventure-completion button,
.go-adventure-completion a {
  margin-right: 12px;
  padding: 10px 16px;
  border: 1px solid var(--go-line,#647078);
  border-radius: 12px;
}
.go-adventure-completion p {
  max-width: 65ch;
}
.modus-manage-destinations {
  cursor: pointer;
  color: var(--text);
  background: transparent;
  border: 0;
  text-align: left;
}
.mobile-search-slide > .modus-manage-destinations {
  display: grid;
  gap: 4px;
  width: 100%;
  min-height: 72px;
  padding: 12px 18px;
  text-align: center;
  white-space: normal;
}
.modus-manage-destinations strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.modus-manage-destinations small {
  color: var(--muted);
  font-size: 13px;
  font-weight: 500;
}
.modus-destination-manager {
  padding: 0 12px 16px;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.modus-destination-manager > p {
  color: var(--muted);
  font-size: 13px;
}
.modus-destination-manager ol {
  list-style: none;
  margin: 0;
  padding: 0;
}
.modus-destination-manager li {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 44px 44px 44px;
  align-items: center;
  gap: 3px;
  min-height: 76px;
  border-top: 1px solid var(--border);
  border-radius: 8px;
}
.modus-destination-manager li.is-drop-target {
  background: var(--panel-hi);
  outline: 2px solid var(--green);
}
.modus-destination-manager li > span {
  display: grid;
  gap: 5px;
  min-width: 0;
}
.modus-destination-manager strong {
  overflow-wrap: anywhere;
  font-size: 14px;
}
.modus-destination-manager small {
  color: var(--muted);
  font-size: 11px;
}
.modus-destination-manager button {
  min-width: 44px;
  min-height: 44px;
  color: var(--text);
  font-size: 24px;
  background: transparent;
  border: 0;
  border-radius: 8px;
}
.modus-destination-manager button:disabled {
  opacity: .3;
}
.modus-destination-manager .modus-destination-handle {
  touch-action: none;
  cursor: grab;
  user-select: none;
}
.mobile-search-slide:has(.modus-destination-manager) {
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.mobile-search-slide:has(.modus-destination-manager) > .motus-nearby {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}
.mobile-search-slide:has(.modus-destination-manager) > .motus-destination {
  flex: none;
}
.go-landing,
.go-return-introduction {
  display: none;
}
@media (min-width:701px) {
  .go-shell.desktop-introduction,
  .go-shell.desktop-ride-open {
    overflow-y: auto;
  }
  .desktop-introduction::before,
  .desktop-introduction::after {
    display: none;
  }
  .desktop-introduction > .go-workspace,
  .desktop-introduction > .go-group-control,
  .desktop-introduction > .go-adventure-completion,
  .desktop-introduction > .go-preview-notice,
  .desktop-introduction > p[role=status] {
    display: none;
  }
  .desktop-introduction > .go-landing {
    display: block;
  }
  .go-landing {
    min-height: calc(100dvh - 76px);
    color: #f4f7f8;
    background: #061116;
    position: relative;
  }
  .go-landing::before {
    content: "";
    position: absolute;
    inset: 0 0 140px;
    background:
      linear-gradient(
        90deg,
        rgba(2, 13, 20, .58),
        transparent 54%),
      var(--landing-art) center top/cover no-repeat;
    pointer-events: none;
  }
  .go-landing-hero {
    position: relative;
    min-height: 540px;
    height: clamp(500px, 61vh, 700px);
    padding: clamp(32px, 4vw, 65px) clamp(28px, 3.7vw, 72px) 28px;
  }
  .go-landing-copy {
    width: 36%;
    max-width: 570px;
  }
  .go-landing-eyebrow {
    display: flex;
    align-items: center;
    gap: 13px;
    margin: 0 0 16px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .25em;
  }
  .go-landing-eyebrow::before {
    content: "";
    width: 30px;
    height: 4px;
    background: #ff122e;
    flex-shrink: 0;
  }
  .go-landing h1 {
    margin: 0 0 12px;
    font-size: clamp(50px, 5.1vw, 86px);
    font-weight: 850;
    line-height: 1;
    letter-spacing: -.055em;
    white-space: nowrap;
  }
  .go-landing h1 em {
    color: #ff122e;
    font-style: italic;
  }
  .go-landing h2 {
    margin: 0;
    font-size: clamp(23px, 2.05vw, 35px);
    line-height: 1.2;
    letter-spacing: -.035em;
  }
  .go-landing-description {
    margin: 20px 0 24px;
    color: #d0dce6;
    font-size: clamp(14px, 1.1vw, 18px);
    line-height: 1.55;
    max-width: 49ch;
  }
  .go-store-badges {
    display: flex;
    gap: 16px;
  }
  .go-store-badges > div {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 16px;
    min-height: 64px;
    border: 1px solid #b5c7d2;
    border-radius: 10px;
    background: #041019d9;
  }
  .go-store-badges small {
    display: block;
    font-size: 11px;
  }
  .go-store-badges strong {
    font-size: clamp(17px, 1.5vw, 25px);
    white-space: nowrap;
    letter-spacing: -.03em;
  }
  .go-store-symbol {
    font-size: 36px;
    line-height: 1;
    color: white;
  }
  .go-landing-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 22px;
    margin-top: 20px;
  }
  .go-landing-links button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 0;
    padding: 0;
    background: none;
    color: #d7eeff;
    text-decoration: underline;
    text-underline-offset: 4px;
    cursor: pointer;
    font-size: 14px;
  }
  .go-landing-preview-note {
    max-width: 50ch;
    color: #afc2d0;
    font-size: 11px;
    line-height: 1.5;
    margin: 16px 0 0;
  }
  .go-landing-manifesto {
    position: absolute;
    right: 3.8%;
    top: 24px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .29em;
    line-height: 1.8;
  }
  .go-landing-manifesto span {
    display: block;
    width: 54px;
    height: 3px;
    background: #ff122e;
    margin-top: 12px;
  }
  .go-art-caption {
    position: absolute;
    left: 55%;
    bottom: 15px;
    color: #d2e2eb;
    font-size: 10px;
    letter-spacing: .12em;
  }
  .go-landing-features {
    position: relative;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    margin: 0 2.9% 20px;
    padding: 24px 12px;
    border: 1px solid #849aa9;
    border-radius: 17px;
    background: #06141bce;
    backdrop-filter: blur(14px);
  }
  .go-landing-features article {
    text-align: center;
    padding: 0 17px;
  }
  .go-landing-features article + article {
    border-left: 1px solid #35515f;
  }
  .go-landing-features h3 {
    font-size: 15px;
    line-height: 1.2;
    margin: 12px 0 8px;
  }
  .go-landing-features p {
    color: #c0cfdc;
    font-size: 13px;
    line-height: 1.4;
    margin: 0 auto;
    max-width: 21ch;
  }
  .go-landing-footer {
    position: relative;
    display: grid;
    grid-template-columns: 40% 1fr 16%;
    align-items: center;
    gap: 32px;
    background: #041018;
  }
  .go-landing-road {
    min-height: 160px;
    background:
      linear-gradient(
        90deg,
        transparent,
        #04101866),
      var(--landing-road) center 70%/cover;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 25px;
  }
  .go-landing-road p {
    margin: 0;
    font-style: italic;
    font-weight: 800;
    font-size: 24px;
    line-height: 1.1;
    transform: rotate(-9deg);
    text-transform: uppercase;
    border-bottom: 3px solid #ff122e;
    padding-bottom: 12px;
  }
  .go-landing-footer-copy {
    padding: 22px 0;
  }
  .go-landing-footer-copy .go-landing-eyebrow {
    font-size: 9px;
    margin-bottom: 10px;
  }
  .go-landing-footer-copy h2 {
    font-size: clamp(21px, 1.8vw, 30px);
  }
  .go-landing-footer-copy > p:last-child {
    color: #b9cbd9;
    font-size: 14px;
    line-height: 1.5;
    max-width: 65ch;
    margin: 10px 0 0;
  }
  .go-landing-footer > img {
    width: 90%;
    max-width: 175px;
    filter: brightness(0) invert(1);
    padding-right: 20px;
  }
  .desktop-ride-open > .go-return-introduction {
    display: block;
    margin: 12px 28px;
    padding: 8px 12px;
    border: 1px solid #425e6e;
    border-radius: 8px;
    background: #0b1b22;
    cursor: pointer;
  }
  .go-sign-in-mobile {
    display: none;
  }
}
@media (min-width:701px) and (max-width:1100px) {
  .go-landing-hero {
    min-height: 535px;
    padding-top: 38px;
  }
  .go-landing-copy {
    width: 43%;
  }
  .go-landing::before {
    background-image:
      linear-gradient(
        90deg,
        rgba(2, 13, 20, .96),
        rgba(2, 13, 20, .8) 40%,
        rgba(2, 13, 20, .2) 65%,
        transparent),
      var(--landing-art);
  }
  .go-landing h1 {
    font-size: 54px;
  }
  .go-landing h2 {
    font-size: 25px;
  }
  .go-store-badges {
    gap: 10px;
  }
  .go-store-badges > div {
    padding: 9px;
    gap: 8px;
  }
  .go-store-badges strong {
    font-size: 18px;
  }
  .go-landing-features {
    grid-template-columns: repeat(3, 1fr);
    gap: 24px 0;
  }
  .go-landing-features article:nth-child(4) {
    border-left: 0;
  }
  .go-landing-footer {
    grid-template-columns: 35% 1fr;
    gap: 22px;
  }
  .go-landing-footer > img {
    display: none;
  }
  .go-landing-footer-copy {
    padding-right: 22px;
  }
}
@media (max-width:700px) {
  .go-signed-out > .go-header,
  .go-signed-out > .go-sign-in-mobile {
    display: grid;
  }
}
.scramble-panel {
  color: var(--go-text,#eef8fb);
  padding: 14px;
  overflow-y: auto;
  max-height: 100%;
  overscroll-behavior: contain;
}
.scramble-panel header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.scramble-panel h2 {
  font-size: 24px;
}
.scramble-panel h3 {
  font-size: 20px;
  margin: 18px 0 10px;
}
.scramble-panel label {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin: 10px 0;
}
.scramble-panel input,
.scramble-panel select {
  min-height: 44px;
  padding: 8px;
  color: inherit;
  background: var(--go-panel);
  border: 1px solid var(--go-border);
  border-radius: 10px;
  max-width: 100%;
}
.scramble-panel button {
  min-height: 44px;
  padding: 8px 12px;
  color: inherit;
  background: var(--go-panel);
  border: 1px solid var(--go-border);
  border-radius: 12px;
  margin: 4px;
  font-size: 16px;
}
.scramble-panel button:disabled {
  opacity: .5;
}
.scramble-rider,
.scramble-discovery {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  border-bottom: 1px solid #365867;
  padding: 10px 0;
}
.scramble-rider span,
.scramble-discovery span {
  flex-basis: 100%;
}
.scramble-actions {
  display: flex;
  flex-wrap: wrap;
}
.modus-group-dialog .scramble-panel {
  max-height: 55dvh;
}
.modus-riders-detail .scramble-panel {
  max-height: 100%;
}
.scramble-panel button:focus-visible,
.scramble-panel input:focus-visible,
.scramble-panel select:focus-visible {
  outline: 2px solid #62cfff;
  outline-offset: 3px;
}
.modus-detail-photos {
  position: relative;
}
.modus-rider-card .modus-detail-photos > img:first-child {
  width: 100%;
  object-fit: cover;
}
.modus-rider-card .modus-detail-photos .modus-rider-photo {
  position: absolute;
  top: 14px;
  left: 14px;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  border: 2px solid #6dc5ec;
  object-fit: cover;
}
.modus-rider-introduction {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.modus-rider-actions {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}
.modus-rider-actions button,
.modus-rider-actions a {
  padding: 10px 14px;
  min-height: 44px;
}
.go-narration.is-image-controls {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  padding: 10px;
  background: linear-gradient(#061923e8, transparent);
}
.go-narration.is-image-controls > div {
  display: grid;
  grid-template-columns: 1fr 1fr 44px;
  gap: 8px;
}
.go-narration.is-image-controls button {
  min-height: 44px;
  border-radius: 12px;
  background: #092633de;
  color: #f3f8fa;
}
.go-narration.is-image-controls button:disabled {
  color: #84959c;
  background: #17232bdd;
  opacity: .7;
  cursor: default;
}
.modus-rider-card .modus-detail-close {
  z-index: 3;
}
.modus-navigation-notice {
  position: fixed;
  z-index: 90;
  top: calc(env(safe-area-inset-top) + 18px);
  left: 5%;
  right: 5%;
  padding: 16px 20px;
  background: #102f40f5;
  border: 1px solid #6dc5ec;
  border-radius: 18px;
  color: #fff;
  font-size: 20px;
  text-align: center;
  pointer-events: none;
}
.go-conversation-ride {
  border-block: 1px solid #365665;
  margin-bottom: 8px;
  flex: none;
}
.go-conversation-ride-summary {
  display: flex;
  justify-content: space-between;
  width: 100%;
  text-align: left;
  padding: 10px 12px;
  background: transparent;
  border: 0;
  color: inherit;
}
.go-conversation-ride-summary strong,
.go-conversation-ride-summary small {
  display: block;
}
.go-conversation-ride-summary strong {
  font-size: 17px;
}
.go-conversation-ride-summary small {
  font-size: 14px;
  color: #a8c4d0;
}
.go-conversation-ride-expanded {
  padding: 10px 12px;
  max-height: 32vh;
  overflow: auto;
}
.go-conversation-ride-expanded button {
  min-height: 44px;
  margin: 3px;
  padding: 9px 12px;
}
.go-conversation-ride-expanded select {
  max-width: 100%;
  padding: 8px;
}
.go-destination-suggestion {
  border-top: 1px solid #365665;
  padding-block: 8px;
}
.mobile-go:has(.go-narration-bar) .modus-radar-detail {
  bottom: calc(220px + env(safe-area-inset-bottom));
}
.modus-rider-card .modus-detail-photos {
  height: clamp(120px, 22dvh, 200px);
}
.modus-rider-card .go-primary {
  width: 100%;
  min-height: 44px;
  margin-top: 8px;
}
.mobile-go:has(.go-narration-bar) .modus-rider-card .modus-detail-photos {
  height: 96px;
}
.go-audience-select {
  display: block;
  width: 100%;
  padding: 12px 16px;
  border: 1px solid var(--go-line,#3b4d52);
  border-radius: 16px;
  background: transparent;
  color: inherit;
  font: inherit;
  font-weight: 600;
  margin-bottom: 8px;
}
.go-ptt {
  touch-action: manipulation;
  -webkit-touch-callout: none;
  user-select: none;
  text-transform: uppercase;
}
.go-message-state {
  display: block;
  font-size: 12px;
  text-transform: none;
  line-height: 16px;
}
.modus-spatial-overview {
  position: relative;
  z-index: 12;
  margin: 0 12px;
  color: inherit;
  font: inherit;
  max-height: 38vh;
  overflow: auto;
}
.modus-spatial-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid currentColor;
  border-radius: 12px;
  background: var(--panel,#0b1b22);
  color: inherit;
}
.modus-cohort-strip {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 6px 0;
}
.modus-cohort-strip button {
  flex: 0 0 auto;
  display: grid;
  gap: 3px;
  text-align: left;
  padding: 8px 12px;
  border-radius: 10px;
  background: var(--panel,#0b1b22);
  color: inherit;
  border: 1px solid currentColor;
}
.modus-spatial-roster {
  padding: 12px;
  background: var(--panel,#0b1b22);
  border: 1px solid currentColor;
  border-radius: 12px;
}
.modus-spatial-roster form {
  display: flex;
  align-items: end;
  gap: 8px;
}
.modus-spatial-roster label {
  display: grid;
  gap: 4px;
  flex: 1;
  min-width: 0;
}
.modus-spatial-roster input {
  width: 100%;
  min-width: 0;
}
.modus-spatial-roster > button {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  min-height: 44px;
  width: 100%;
  text-align: left;
  background: transparent;
  color: inherit;
  border: 0;
  border-bottom: 1px solid #74838a;
  padding: 8px 0;
}
.modus-spatial-overview button:focus-visible {
  outline: 3px solid #f4c465;
  outline-offset: 2px;
}
.modus-cohort-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: visible;
}
.modus-cohort-strip button {
  min-width: 0;
  padding: 8px;
  font-size: 12px;
  border-color: var(--border,#284654);
}
.modus-spatial-heading {
  border-color: var(--border,#284654);
}
.modus-spatial-attention {
  min-height: 44px;
  width: 100%;
  padding: 8px 12px;
  background: var(--panel,#0b1b22);
  color: var(--text,#f4f7f8);
  border: 1px solid #b88b40;
  border-radius: 10px;
  text-align: left;
  font: inherit;
}
.audio-device-row:has(.audio-prefer-connection) {
  flex-wrap: wrap;
}
.audio-prefer-connection {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1 0 100%;
  box-sizing: border-box;
  padding: 8px 13px;
  color: #c4e4dd;
  font-size: 14px;
}
.audio-prefer-connection input {
  width: 20px;
  height: 20px;
  accent-color: #00df84;
}
.audio-prefer-connection small {
  font-size: 12px;
  color: #a9bbc1;
}
.audio-input-unavailable {
  font-size: 14px;
  line-height: 1.4;
  color: #bad0d9;
}
.adventure-sharing {
  box-sizing: border-box;
  width: min(640px, 94vw);
  max-height: 90dvh;
  margin: auto;
  padding: 24px;
  border: 1px solid #284654;
  border-radius: 16px;
  background: #0b1b22;
  color: #f4f7f8;
  font: 500 15px/1.5 "DM Sans", sans-serif;
  overflow: auto;
  text-align: left;
}
.adventure-sharing::backdrop {
  background: rgba(2, 10, 15, .75);
}
.adventure-sharing h2 {
  font-size: 26px;
  line-height: 1.15;
  margin: 18px 0 12px;
}
.adventure-sharing h3 {
  font-size: 19px;
  margin: 24px 0 10px;
}
.adventure-sharing p {
  max-width: 68ch;
  color: #c4d2db;
}
.adventure-sharing fieldset {
  display: grid;
  gap: 14px;
  padding: 18px 0;
  border: 0;
  border-top: 1px solid #284654;
}
.adventure-sharing legend {
  padding: 0 10px 0 0;
  font-weight: 700;
}
.adventure-sharing label {
  display: grid;
  gap: 6px;
}
.adventure-sharing input,
.adventure-sharing select {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 10px;
  border: 1px solid #446271;
  border-radius: 8px;
  background: #061116;
  color: #f4f7f8;
  font: inherit;
}
.adventure-sharing button {
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid #446271;
  border-radius: 8px;
  background: #10242d;
  color: #f4f7f8;
  font: inherit;
  cursor: pointer;
}
.adventure-sharing button:disabled {
  opacity: .45;
  cursor: default;
}
.adventure-sharing .adventure-sharing-primary {
  background: #cf1727;
  border-color: #f34754;
  font-weight: 700;
}
.adventure-sharing :focus-visible {
  outline: 3px solid #18a9ff;
  outline-offset: 3px;
}
.adventure-sharing article {
  padding: 12px 0;
  border-top: 1px solid #284654;
}
.adventure-sharing [role=alert] {
  color: #ffb8bf;
}
.adventure-sharing a {
  color: #83ceff;
}
.adventure-observer {
  box-sizing: border-box;
  margin: auto;
  font: 500 16px/1.5 "DM Sans", sans-serif;
  color: #132733;
}
.adventure-observer button {
  min-height: 44px;
  padding: 10px 16px;
}
.adventure-observer [role=alert] {
  padding: 12px;
  border: 1px solid #ad2430;
  border-radius: 8px;
}
@media (max-width:480px) {
  .adventure-sharing {
    padding: 18px;
  }
  .adventure-sharing h2 {
    font-size: 23px;
  }
}
.adventure-sharing fieldset[hidden] {
  display: none;
}
.observer-map-pin {
  background: none;
  border: 0;
}
.observer-map-pin span {
  display: block;
  width: 16px;
  height: 16px;
  border: 3px solid white;
  border-radius: 50%;
  background: #e31c2a;
  box-shadow: 0 1px 5px #18303c;
}
.go-shell .modus-home-setup {
  padding: 12px 0 4px;
}
.go-shell .modus-home-setup h2 {
  font-size: 22px;
  line-height: 1.2;
  margin: 0 0 8px;
}
.go-shell .modus-home-setup p {
  font-size: 17px;
  line-height: 1.45;
  margin: 0 0 12px;
}
.go-shell .modus-home-setup button {
  min-height: 48px;
  font-size: 18px;
  padding: 10px 16px;
  margin: 0 8px 8px 0;
}
.go-recovery {
  box-sizing: border-box;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 28px;
  background: #061923;
  color: #edf8ff;
  text-align: center;
  font-family: system-ui, sans-serif;
}
.go-recovery h1 {
  font-size: 26px;
}
.go-recovery p {
  max-width: 340px;
  font-size: 18px;
  line-height: 1.5;
}
.go-recovery button {
  min-height: 48px;
  padding: 12px 24px;
  border: 1px solid #68d4ff;
  border-radius: 14px;
  background: #123b4c;
  color: inherit;
  font: 700 18px system-ui, sans-serif;
}
.go-lean-dialog {
  position: fixed;
  inset: 0;
  box-sizing: border-box;
  width: min(520px, calc(100% - 24px));
  max-height: calc(100dvh - 32px);
  margin: auto;
  overflow: auto;
  padding: 20px;
  border: 1px solid #66c5e5;
  border-radius: 24px;
  background:
    linear-gradient(
      145deg,
      var(--panel,#0b2632),
      var(--bg,#061923));
  color: var(--text,#edf8ff);
  font:
    16px/1.5 Inter,
    system-ui,
    sans-serif;
  box-shadow: 0 16px 56px #0008;
}
.go-lean-dialog::backdrop {
  background: #020c14bb;
}
.go-lean-dialog > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.go-lean-dialog h2 {
  margin: 0;
  font-size: 26px;
  line-height: 1.2;
}
.go-lean-dialog > header > button {
  flex: none;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid var(--border,#477386);
  border-radius: 50%;
  background: transparent;
  color: inherit;
  font: 30px/1 system-ui, sans-serif;
}
.go-lean-dialog .modus-lean-panel p {
  margin: 10px 0;
  color: var(--muted,#bed1da);
  font-size: 16px;
  line-height: 1.5;
}
.go-lean-dialog .modus-lean-panel .lean-calibration-instruction {
  color: inherit;
  font-size: 18px;
  margin: 0 0 16px;
}
.go-lean-dialog .modus-lean-panel button {
  box-sizing: border-box;
  min-height: 48px;
  padding: 11px 16px;
  border: 1px solid var(--border,#477386);
  border-radius: 14px;
  background: transparent;
  color: inherit;
  font:
    600 16px/1.3 Inter,
    system-ui,
    sans-serif;
}
.go-lean-dialog .modus-lean-panel .go-lean-calibrate {
  display: block;
  width: 100%;
  background: linear-gradient(#c61b3d, #97152b);
  border-color: #ef6a83;
  color: #fff;
  font-size: 19px;
}
.go-lean-calibrate:disabled {
  opacity: .6;
}
.go-lean-dialog .lean-side-stand {
  font-size: 15px !important;
}
.go-lean-dialog .lean-calibration-state {
  margin-top: 18px;
  padding-top: 8px;
  border-top: 1px solid var(--border,#35576b);
}
.go-lean-dialog .lean-calibration-state strong {
  color: var(--text,#edf8ff);
}
.go-lean-dialog h3 {
  margin: 20px 0 8px;
  font-size: 18px;
}
.go-lean-dialog .go-lean-delete {
  margin: 8px 0;
}
.go-lean-dialog .lean-learn-more {
  margin-top: 16px;
  font-size: 14px;
  color: var(--muted,#bed1da);
}
.go-lean-dialog .lean-learn-more summary {
  width: fit-content;
  cursor: pointer;
  min-height: 44px;
  display: flex;
  align-items: center;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.go-lean-dialog .lean-learn-more p {
  font-size: 14px;
}
.go-lean-dialog :is(button, summary):focus-visible {
  outline: 2px solid #6bd6ff;
  outline-offset: 3px;
}
.go-lean-dialog {
  --lean-line:#4397b5;
  --lean-ice:#d7f6ff;
  --lean-muted:#afd0e0;
  width: min(560px, calc(100% - 24px));
  max-height: calc(100dvh - 24px);
  padding: 18px 16px;
  border: 1px solid #64e4ff;
  border-radius: 24px;
  color: #f2f9ff;
  background:
    radial-gradient(
      ellipse at 0 0,
      #26556877,
      transparent 55%),
    linear-gradient(
      145deg,
      #082534f5,
      #02121efb 70%,
      #061f2df5);
  box-shadow:
    inset 0 2px 4px #c5f8ff99,
    inset 0 0 20px #27bded22,
    0 0 20px #09b7e433,
    0 18px 55px #000b;
}
.go-lean-dialog > header {
  margin: 0 4px 0;
  align-items: flex-start;
}
.go-lean-dialog h2 {
  font-size: clamp(26px, 7vw, 34px);
  letter-spacing: -.7px;
}
.go-lean-dialog .lean-dialog-subtitle {
  margin: 2px 0 0;
  font-size: 14px;
  color: var(--lean-muted);
}
.go-lean-dialog > header > button {
  background:
    linear-gradient(
      145deg,
      #25566b,
      #031724 65%);
  border-color: #63e4ff;
  color: #f2faff;
  box-shadow: inset 0 1px 3px #d7f6ff66, 0 0 12px #04c5ff44;
}
.lean-calibration-visual {
  text-align: center;
  margin: 0 0 10px;
}
.lean-calibration-dial {
  display: block;
  width: 100%;
  height: clamp(135px, 38vw, 185px);
  overflow: visible;
  fill: none;
  stroke: #339bda;
  stroke-width: 1.4;
  stroke-linecap: round;
}
.lean-calibration-dial text {
  fill: #8ecfff;
  stroke: none;
  font: 600 13px system-ui, sans-serif;
}
.lean-calibration-inner {
  stroke: #2586a4;
  stroke-dasharray: 5 6;
  opacity: .7;
}
.lean-calibration-right {
  stroke: #ff657d;
}
.lean-calibration-horizon {
  stroke: #5be2ff;
  stroke-width: 2;
}
.lean-calibration-motorcycle {
  stroke: var(--lean-ice);
  stroke-width: 1.7;
  fill: #082334;
}
.lean-calibration-visor {
  fill: #174257;
}
.lean-calibration-headlight {
  fill: #8cecff;
  stroke: #c5f8ff;
}
.lean-calibration-number {
  font-size: clamp(40px, 12vw, 60px);
  font-weight: 750;
  line-height: 1.05;
  letter-spacing: -1.5px;
  font-variant-numeric: tabular-nums;
  text-shadow: 0 0 18px #35c8ff33;
}
.lean-calibration-caption {
  margin-top: 3px;
  font-size: 11px;
  letter-spacing: 2px;
  color: #8ecfff;
  text-transform: uppercase;
}
.lean-calibration-visual[data-ready=false] .lean-calibration-motorcycle {
  opacity: .45;
}
.go-lean-dialog .modus-lean-panel .go-lean-calibrate {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 50px;
  margin: 12px 0 8px;
  border: 1px solid #ff809b;
  border-radius: 15px;
  background:
    linear-gradient(
      155deg,
      #ec2854,
      #bb0b35 50%,
      #8c0629);
  box-shadow: inset 0 2px 3px #ffb8c7aa, 0 0 12px #ee164f33;
  color: #fff;
  font-size: 19px;
}
.go-lean-calibrate > svg {
  width: 26px;
  height: 26px;
  flex: none;
}
.go-lean-dialog .lean-calibration-guidance {
  text-align: center;
  margin: 8px 0 12px;
}
.go-lean-dialog .modus-lean-panel .lean-calibration-guidance p {
  margin: 3px 0;
  color: var(--lean-muted);
  font-size: 12px;
  line-height: 1.45;
}
.go-lean-dialog .modus-lean-panel .lean-calibration-guidance .lean-calibration-instruction {
  font-size: 14px;
  color: inherit;
}
.go-lean-dialog .modus-lean-panel .lean-calibration-guidance .lean-side-stand {
  font-size: 12px !important;
}
.go-lean-dialog .lean-calibration-state {
  margin: 0;
  padding: 10px 0 0;
  border-color: #368ead;
}
.lean-status-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.lean-glass-card {
  border: 1px solid var(--lean-line);
  border-radius: 12px;
  background:
    linear-gradient(
      150deg,
      #32647d55,
      #051b29df 45%,
      #03131ff2);
  box-shadow: inset 0 1px 2px #c1f7ff66;
  min-width: 0;
}
.lean-status-grid .lean-glass-card {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 64px;
  padding: 8px 10px;
}
.lean-glass-card > svg {
  flex: none;
  width: 27px;
  height: 30px;
  color: var(--lean-ice);
}
.lean-glass-card > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.lean-glass-card span {
  color: var(--lean-muted);
  font-size: 12px;
}
.go-lean-dialog .lean-glass-card strong {
  color: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
}
.lean-sensor-card > svg {
  color: #00eab4;
}
.lean-sensor-card i {
  flex: none;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  margin-left: auto;
  background: #8b9da8;
}
.lean-sensor-card[data-connected=true] i {
  background: #00e6a3;
  box-shadow: 0 0 10px #00e6a366;
}
.lean-peak-card {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  margin-top: 8px;
  min-height: 62px;
}
.lean-peak-card > svg {
  color: #53cfff;
}
.lean-peak-card > div {
  margin-right: auto;
}
.lean-peak-card b {
  font-size: clamp(20px, 5.6vw, 29px);
  white-space: nowrap;
  letter-spacing: -.5px;
}
.lean-peak-left {
  color: #77ceff;
}
.lean-peak-right {
  color: #ff7387;
  border-left: 1px solid var(--lean-line);
  padding-left: 10px;
}
.lean-history-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin: 14px 4px 6px;
}
.go-lean-dialog .lean-history-heading h3 {
  margin: 0;
  font-size: 16px;
}
.lean-history-heading > span {
  color: var(--lean-muted);
  font-size: 12px;
}
.lean-recordings {
  list-style: none;
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
}
.lean-recordings li {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  min-height: 40px;
  font-size: 12px;
}
.lean-recordings li > svg {
  height: 21px;
  width: 21px;
}
.lean-recordings li > span {
  margin-left: auto;
  font-variant-numeric: tabular-nums;
}
.lean-recordings time {
  color: var(--lean-muted);
}
.go-lean-dialog .modus-lean-panel .go-lean-delete {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  margin: 12px 0 4px;
  border-color: #6edbfa;
  background:
    linear-gradient(
      150deg,
      #32647d77,
      #051b29df 55%);
  box-shadow: inset 0 1px 3px #b9f1ff88;
  font-size: 15px;
}
.go-lean-delete > svg {
  height: 24px;
  width: 24px;
}
.go-lean-dialog .lean-learn-more {
  margin: 4px 4px 0;
  color: var(--lean-muted);
}
.go-lean-dialog .lean-learn-more summary {
  min-height: 36px;
}
:root[data-theme=light] .go-lean-dialog {
  --lean-line:#6dabc4;
  --lean-ice:#204c65;
  --lean-muted:#416a80;
  background:
    linear-gradient(
      145deg,
      #f0faff,
      #d8edf6);
  color: #102f41;
  border-color: #439bbf;
  box-shadow: inset 0 2px 3px #fff, 0 18px 55px #123b5a66;
}
:root[data-theme=light] .lean-glass-card {
  background:
    linear-gradient(
      150deg,
      #fff,
      #cce6f3);
}
:root[data-theme=light] .lean-calibration-motorcycle {
  fill: #d5eaf4;
}
:root[data-theme=light] .lean-calibration-visor {
  fill: #89c0d8;
}
:root[data-theme=light] .lean-calibration-caption {
  color: #2a6e97;
}
:root[data-theme=light] .lean-peak-left {
  color: #126d9e;
}
:root[data-theme=light] .lean-peak-right {
  color: #b92e4b;
}
:root[data-theme=light] .go-lean-dialog .modus-lean-panel .go-lean-delete {
  background: linear-gradient(#fff, #c5e3f2);
}
:root[data-theme=light] .lean-sensor-card > svg {
  color: #007b67;
}
@media (max-width:350px) {
  .go-lean-dialog {
    padding: 14px 12px;
  }
  .lean-status-grid .lean-glass-card {
    padding: 8px 6px;
    gap: 6px;
  }
  .lean-glass-card > svg {
    width: 21px;
  }
  .go-lean-dialog .lean-glass-card strong {
    font-size: 12px;
  }
  .lean-peak-card {
    gap: 7px;
    padding: 9px 8px;
  }
  .lean-peak-card b {
    font-size: 20px;
  }
  .lean-recordings li {
    gap: 7px;
    padding: 9px 8px;
    font-size: 11px;
  }
  .lean-recordings li > span {
    font-size: 11px;
  }
}
.go-lean-dialog {
  --lean-line:#56cef0;
  --lean-ice:#edfcff;
  --lean-muted:#b5d8e9;
  border: 2px solid #7bedff;
  background-image:
    linear-gradient(
      165deg,
      #0b263adb 0%,
      #031625bf 34%,
      #02131cf0 66%,
      #02121afc),
    var(--go-hero,url(/assets/go/mountain-cockpit-daylight.webp));
  background-size: cover;
  background-position: center 35%;
  box-shadow:
    inset 0 3px 5px #e3fcffbb,
    inset 2px 0 12px #1acfff66,
    inset -2px 0 12px #1acfff44,
    0 0 6px #62e8ff99,
    0 0 26px #09b7e44d,
    0 18px 55px #000c;
}
.go-lean-dialog > header {
  border-bottom: 0;
  padding-top: 2px;
}
.go-lean-dialog h2 {
  font-size: clamp(29px, 8vw, 38px);
}
.go-lean-dialog > header > button {
  border: 2px solid #72eaff;
  background:
    radial-gradient(
      ellipse at 28% 0,
      #3d87a7,
      #072334 55%,
      #020f1a);
  box-shadow:
    inset 0 2px 3px #c7f8ff99,
    0 0 7px #5ce4ff99,
    0 0 18px #0db9ed55;
}
.lean-calibration-visual {
  background:
    radial-gradient(
      ellipse at 50% 57%,
      #20caff18,
      transparent 64%);
  margin-top: 6px;
}
.lean-calibration-dial {
  height: clamp(165px, 48vw, 225px);
  stroke: #42b9ff;
  stroke-width: 1.7;
}
.lean-calibration-dial text {
  fill: #a1dcff;
  font-weight: 700;
}
.lean-calibration-arc {
  filter: drop-shadow(0 0 3px #2baeff88);
}
.lean-calibration-inner {
  stroke: #46badc;
  opacity: .8;
}
.lean-calibration-horizon {
  stroke: #92f5ff;
  stroke-width: 2.8;
  filter: drop-shadow(0 0 4px #23dfff);
}
.lean-calibration-motorcycle {
  fill: url(#lean-bike-metal);
  stroke: #e3faff;
  stroke-width: 2;
  filter: drop-shadow(0 0 3px #62dcff66);
}
.lean-calibration-visor {
  fill: url(#lean-bike-visor);
}
.lean-calibration-headlight {
  fill: #d4fbff;
  stroke: #fff;
  filter: drop-shadow(0 0 3px #36dfff);
}
.lean-calibration-number {
  font-size: clamp(48px, 14vw, 68px);
  text-shadow: 0 2px 2px #0008, 0 0 22px #50dfff55;
}
.lean-calibration-caption {
  color: #8cdeff;
  letter-spacing: 2.6px;
  font-weight: 600;
}
.go-lean-dialog .modus-lean-panel .go-lean-calibrate {
  border: 1.5px solid #ff9bb1;
  background:
    linear-gradient(
      175deg,
      #ff6486 0%,
      #e51b4b 10%,
      #c50839 55%,
      #8f032b 100%);
  box-shadow:
    inset 0 3px 3px #ffd0dccc,
    inset 0 -2px 4px #64052588,
    0 0 6px #ff426888,
    0 0 18px #ed194c33;
  min-height: 54px;
  font-size: 20px;
}
.go-lean-dialog .lean-glass-card {
  border-color: #57d3f6;
  background:
    linear-gradient(
      165deg,
      #5f9eb54d 0%,
      #1e526942 13%,
      #031b2ae8 47%,
      #02131ee8 80%,
      #164c6266);
  box-shadow:
    inset 0 2px 3px #c4f4ff99,
    inset 0 -1px 2px #43c6f533,
    0 0 8px #16bded22;
}
.go-lean-dialog .lean-status-grid .lean-glass-card {
  border-color: #6bdfff;
}
.lean-sensor-card[data-connected=true] i {
  width: 9px;
  height: 9px;
  box-shadow: 0 0 5px #00ffc4, 0 0 14px #00e6a377;
}
.lean-peak-card b {
  font-size: clamp(23px, 6.2vw, 32px);
  text-shadow: 0 0 12px #49bfff33;
}
.lean-peak-right {
  text-shadow: 0 0 12px #ff567755 !important;
}
.go-lean-dialog .modus-lean-panel .go-lean-delete {
  border-color: #85eaff;
  background:
    linear-gradient(
      165deg,
      #528caa88,
      #103548aa 22%,
      #021827 70%,
      #16475d);
  box-shadow: inset 0 2px 3px #ccf7ff99, 0 0 9px #20c9ff22;
}
:root[data-theme=light] .go-lean-dialog {
  --lean-ice:#204c65;
  --lean-muted:#365e73;
  background:
    linear-gradient(
      145deg,
      #f0faff,
      #d8edf6);
  border-color: #329bc5;
  box-shadow:
    inset 0 2px 3px #fff,
    0 0 15px #21b9ee44,
    0 18px 55px #123b5a66;
}
:root[data-theme=light] .go-lean-dialog .lean-glass-card {
  background:
    linear-gradient(
      165deg,
      #fff,
      #c4e4f3);
  border-color: #409abf;
  box-shadow: inset 0 2px 3px #fff, 0 0 6px #1c9cd422;
}
:root[data-theme=light] .lean-calibration-motorcycle {
  fill: #d5eaf4;
  stroke: #204c65;
  filter: none;
}
:root[data-theme=light] .lean-calibration-visor {
  fill: #89c0d8;
}
:root[data-theme=light] .lean-calibration-number {
  text-shadow: none;
}
:root[data-theme=light] .lean-calibration-caption {
  color: #28698c;
}
:root[data-theme=light] .lean-calibration-dial text {
  fill: #28698c;
}
:root[data-theme=light] .lean-peak-card b {
  text-shadow: none !important;
}
:root[data-theme=light] .go-lean-dialog .modus-lean-panel .go-lean-delete {
  background: linear-gradient(#fff, #b8def1);
}
@media (max-width:350px) {
  .go-lean-dialog .lean-peak-card b {
    font-size: 20px;
  }
  .go-lean-dialog .lean-peak-card {
    gap: 6px;
  }
}
.go-lean-dialog .lean-glass-card {
  box-sizing: border-box;
}

/* src/go/messages.css */
.go-messages {
  --message-line: #294753;
  --message-muted: #a9bdc7;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  height: 100%;
  overflow: hidden;
  background: rgba(6, 17, 22, 0.94);
  color: #f4f7f8;
  font: 500 16px/1.4 "DM Sans", sans-serif;
  text-align: left;
}
.go-messages button,
.go-messages input,
.go-messages textarea,
.go-messages select {
  font: inherit;
  color: inherit;
}
.go-messages button {
  cursor: pointer;
  border: 0;
  background: none;
  min-height: 44px;
}
.go-messages button:disabled {
  opacity: 0.45;
  cursor: default;
}
.go-messages button:focus-visible,
.go-messages input:focus-visible,
.go-messages textarea:focus-visible,
.go-messages select:focus-visible {
  outline: 2px solid #69c9ee;
  outline-offset: -2px;
}
.messages-header {
  display: flex;
  gap: 12px;
  align-items: center;
  flex: 0 0 auto;
  min-height: 64px;
  padding: 10px 16px;
  border-bottom: 1px solid var(--message-line);
}
.messages-header > div {
  flex: 1;
  min-width: 0;
}
.messages-header h2 {
  font-size: 24px;
  line-height: 1.15;
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.messages-header small {
  font-size: 12px;
  color: var(--message-muted);
}
.messages-header > button {
  font-size: 27px;
  min-width: 44px;
}
.messages-inbox,
.messages-thread {
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior-x: auto;
  overscroll-behavior-y: contain;
  flex: 1;
  min-height: 0;
  touch-action: auto;
}
.messages-inbox-row {
  position: relative;
  border-bottom: 1px solid rgba(75, 111, 126, 0.25);
}
.messages-open {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 14px 44px 14px 14px;
  text-align: left;
}
.messages-avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  flex: 0 0 auto;
  background: #16313d;
  display: grid;
  place-items: center;
  color: #d3e3ea;
  overflow: hidden;
  font-weight: 700;
}
.messages-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.messages-row-copy {
  flex: 1;
  min-width: 0;
  display: grid;
  gap: 2px;
}
.messages-row-copy strong {
  font-size: 17px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.messages-row-copy > small {
  color: #91b9c9;
  font-size: 11px;
}
.messages-row-copy > span {
  color: var(--message-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 14px;
}
.messages-row-status {
  align-self: stretch;
  display: flex;
  align-items: flex-end;
  flex-direction: column;
  gap: 4px;
  min-width: 45px;
}
.messages-row-status time {
  font-size: 10px;
  color: var(--message-muted);
}
.messages-row-status b {
  background: #18d9a1;
  color: #062019;
  padding: 1px 6px;
  border-radius: 20px;
  font-size: 11px;
}
.messages-audience-badge {
  color: #42e8aa;
  display: flex;
  align-items: center;
}
.messages-row-options {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 40px;
  color: #8fa9b6 !important;
}
.messages-pages {
  display: flex;
  gap: 12px;
  justify-content: center;
}
.messages-empty {
  text-align: center;
  padding: 45px 20px;
  color: var(--message-muted);
}
.messages-empty svg {
  color: #6cc8e4;
}
.messages-empty h3 {
  color: #f4f7f8;
}
.messages-empty button {
  color: #62dfb5;
  background: #183c3d;
  padding: 8px 18px;
  border-radius: 20px;
}
.messages-thread {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  padding: 14px;
}
.messages-bubble {
  position: relative;
  background: #17313d;
  border-radius: 16px 16px 16px 4px;
  max-width: 88%;
  padding: 10px 14px;
  flex-shrink: 0;
  overflow-wrap: anywhere;
}
.messages-bubble.is-mine {
  align-self: flex-end;
  background: #17463f;
  border-radius: 16px 16px 4px 16px;
}
.messages-bubble > strong {
  color: #94d9ed;
  font-size: 12px;
}
.messages-bubble p {
  margin: 4px 0 5px;
  white-space: pre-wrap;
  font-size: 16px;
}
.messages-bubble footer {
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  font-size: 10px;
  color: #b3c4cc;
}
.messages-report-action {
  position: absolute;
  top: 0;
  right: -8px;
  width: 30px;
  min-height: 30px !important;
  opacity: 0;
}
.messages-bubble:focus-within .messages-report-action,
.messages-bubble:hover .messages-report-action {
  opacity: 1;
}
.messages-older {
  align-self: center;
  font-size: 12px !important;
  color: var(--message-muted) !important;
}
.messages-composer {
  flex: 0 0 auto;
  display: flex;
  align-items: flex-end;
  gap: 10px;
  padding: 10px 12px max(12px, env(safe-area-inset-bottom));
  border-top: 1px solid var(--message-line);
  background: #0a1d25;
}
.messages-composer textarea {
  min-width: 0;
  flex: 1;
  resize: none;
  max-height: 120px;
  min-height: 44px;
  padding: 10px 14px;
  background: #15303b;
  border: 1px solid #315463;
  border-radius: 22px;
}
.messages-composer button {
  color: #43e6ae;
  background: #123b34;
  padding: 0 14px;
  border-radius: 22px;
}
.messages-error {
  font-size: 13px;
  padding: 10px 14px;
  margin: 0;
  background: #441c24;
  color: #ffcfcc;
}
.messages-error button {
  margin-left: 10px;
  text-decoration: underline;
}
.messages-heading {
  container-type: inline-size;
}
.messages-heading-line {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.messages-heading-line h2 {
  flex: 1;
  min-width: 0;
}
.messages-heading-line .messages-loading {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 0 0 96px;
  height: 28px;
  margin: 0;
  font-size: 12px;
  line-height: 14px;
  text-align: right;
  color: var(--message-muted);
}
@container (max-width: 205px) {
  .messages-heading-line .messages-loading {
    flex-basis: 24px;
  }
  .messages-loading-text {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }
  .messages-loading[data-loading=true]::after {
    content: "\2026";
    font-size: 20px;
  }
}
.messages-modal-backdrop {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: max(18px, env(safe-area-inset-top)) 12px max(16px, env(safe-area-inset-bottom));
  background: rgba(0, 8, 12, 0.75);
  z-index: 2300;
}
.messages-dialog {
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: min(100%, 480px);
  max-height: 85dvh;
  overflow: auto;
  border: 1px solid #426679;
  border-radius: 24px;
  background: #0a202a;
  padding: 20px;
  color: #f4f7f8;
  box-shadow: 0 15px 70px #0008;
}
.messages-dialog header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}
.messages-dialog h3 {
  font-size: 21px;
  margin: 0;
}
.messages-dialog header button {
  font-size: 24px;
}
.messages-dialog > button {
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 8px 10px;
  text-align: left;
  background: #15323e;
  border-radius: 12px;
}
.messages-dialog label {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 44px;
}
.messages-dialog small {
  font-size: 12px;
  color: #b4c6d0;
}
.messages-dialog select {
  margin-left: auto;
  max-width: 50%;
  padding: 10px;
  background: #17343f;
  border: 1px solid #426679;
  border-radius: 12px;
}
.messages-dialog > input,
.messages-dialog textarea {
  padding: 12px;
  background: #102c37;
  border: 1px solid #3c5d6a;
  border-radius: 12px;
  min-width: 0;
}
.messages-dialog input[type=checkbox] {
  accent-color: #19dba2;
  width: 19px;
  height: 19px;
}
.messages-danger {
  color: #ffb9b6 !important;
}
.messages-people {
  max-height: 32dvh;
  overflow: auto;
}
.messages-ride-context {
  flex: 0 0 auto;
  max-height: 28%;
  overflow: auto;
  background: #102e39;
  border-bottom: 1px solid #315361;
  font-size: 13px;
}
.messages-ride-context summary {
  padding: 12px;
  cursor: pointer;
}
.messages-ride-context summary small {
  float: right;
  color: #9edac8;
}
.messages-ride-context > div {
  padding: 10px 14px;
  border-top: 1px solid #315361;
  display: grid;
  gap: 3px;
}
.messages-ride-context span,
.messages-ride-context small {
  color: #b2c8d3;
}
.go-messages.is-standalone {
  height: 100dvh;
}
.audience-selector {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.messages-dialog .audience-selector button {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  min-height: 110px;
  padding: 12px;
  border: 1px solid #3e6575;
  border-radius: 18px;
  background: #14303d;
}
.audience-selector button svg {
  color: #61e5b1;
}
.messages-dialog .audience-selector button[aria-pressed=true] {
  border-color: #38dba0;
  background: #14443c;
}
.audience-selector small {
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.audience-choice {
  border-bottom: 1px solid #345260;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px !important;
}
.audience-choice span {
  display: grid;
  flex: 1;
  min-width: 0;
}
.audience-choice strong {
  font-size: 17px;
  white-space: normal;
}
.audience-choice small {
  font-size: 12px;
  color: #a5beca;
}
.audience-dialog-search {
  width: 100%;
  box-sizing: border-box;
}
.audience-selector-label {
  display: flex;
  align-items: center;
  gap: 12px;
}
.audience-empty {
  color: #afc4cd;
}
.audience-unavailable {
  opacity: 0.55;
}
.go-ptt .go-audience-icon {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
}
.go-ptt .go-ptt-audience-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  flex: 1;
  gap: 2px;
}
.go-ptt-audience-copy strong {
  font-size: clamp(16px, 4.4vw, 23px);
  font-weight: 800;
  line-height: 1.15;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.go-ptt-audience-copy small {
  font-size: 11px;
  font-weight: 500;
  line-height: 1.15;
  opacity: 0.9;
}
.go-ptt-audience-copy .go-audience-kind {
  font-size: 10px;
}
.mobile-activity-slide > .go-messages {
  height: 100%;
  border: 1px solid #315361;
  border-radius: 18px;
}
.mobile-go:not(.is-dashboard) .mobile-go-center {
  padding-bottom: 0;
}
.mobile-go.is-dashboard .modus-dashboard-links {
  grid-template-columns: 1fr 1fr;
}
@media (max-width: 360px) {
  .messages-open {
    gap: 9px;
    padding-left: 9px;
  }
  .messages-avatar {
    width: 40px;
    height: 40px;
  }
  .messages-row-copy strong {
    font-size: 15px;
  }
  .messages-row-copy > span {
    font-size: 13px;
  }
  .go-ptt .go-audience-icon {
    width: 34px;
    height: 34px;
  }
  .go-ptt-audience-copy strong {
    font-size: 16px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .go-messages * {
    scroll-behavior: auto !important;
  }
}
.messages-retry {
  font-size: 13px !important;
  color: #9edac8 !important;
  border-top: 1px solid var(--message-line) !important;
}
.go-messages .go-conversation-ride {
  flex: 0 0 auto;
  max-height: 28%;
  overflow: auto;
  border-radius: 0;
  border-width: 0 0 1px;
  margin: 0;
  font-size: 13px;
}
.messages-bubble footer {
  flex-wrap: wrap;
}
.messages-pull {
  flex: none;
  display: grid;
  place-items: center;
  color: var(--message-muted);
  font-size: 13px;
}
.messages-offline {
  font-size: 13px;
  color: var(--message-muted);
  margin: 4px 14px;
}
.messages-thread,
.messages-inbox {
  overscroll-behavior-y: contain;
}
.message-receipt {
  display: inline-flex;
  color: #a9bdc7;
}
.message-receipt svg {
  width: 25px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.message-receipt.is-read {
  color: #55bfff;
}
.messages-inbox-row,
.messages-inbox-row *,
.messages-dialog,
.messages-dialog * {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}
.messages-dialog input,
.messages-dialog textarea,
.messages-dialog [contenteditable=true] {
  -webkit-user-select: text;
  user-select: text;
  -webkit-touch-callout: default;
}
.messages-composer-wrap {
  flex: 0 0 auto;
  min-width: 0;
}
.messages-composer {
  gap: 8px;
  align-items: center;
}
.go-messages .messages-composer button {
  display: grid;
  place-items: center;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 0;
  border: 0;
  border-radius: 50%;
}
.go-messages .messages-composer .message-voice,
.go-messages .messages-composer .message-send {
  background: #c41532;
  color: white;
}
.go-messages .messages-composer .message-camera {
  background: transparent;
  color: var(--message-text,#eaf3f6);
}
.messages-composer textarea {
  font-size: 16px;
}
.message-file-input {
  display: none;
}
.message-photo {
  display: block;
  max-width: 100%;
  max-height: 320px;
  object-fit: contain;
  border-radius: 12px;
}
.message-photo-preview {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 14px;
  background: #15303b;
}
.message-photo-preview img {
  height: 64px;
  width: 64px;
  object-fit: cover;
  border-radius: 8px;
}
.message-photo-preview button {
  margin-left: auto;
}
.message-photo-picker button {
  min-height: 52px;
  display: flex;
  align-items: center;
  gap: 12px;
}
.conversation-voice-takeover {
  position: fixed;
  z-index: 3500;
  inset: max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom));
  border: 1px solid #a9bec8;
  border-radius: 28px;
  background: #fff;
  color: #172f39;
  padding: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
  overflow: auto;
  font-family: inherit;
}
.conversation-voice-takeover header {
  position: absolute;
  top: 16px;
  left: 20px;
  right: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.conversation-voice-takeover header span {
  overflow-wrap: anywhere;
}
.conversation-voice-takeover > svg {
  width: 64px;
  height: 64px;
  color: #bd1630;
}
.conversation-voice-takeover h2 {
  font-size: 28px;
  text-align: center;
}
.conversation-voice-takeover p {
  font-size: 20px;
  text-align: center;
  overflow-wrap: anywhere;
  max-height: 45%;
  overflow: auto;
}
.conversation-voice-takeover button {
  color: #172f39;
  background: #edf2f4;
  border: 1px solid #819da9;
  border-radius: 18px;
  min-height: 48px;
  padding: 12px 22px;
}
.conversation-voice-takeover button:disabled {
  opacity: .45;
}
.conversation-voice-takeover header button {
  padding: 10px;
}
.go-messages button:focus-visible,
.conversation-voice-takeover button:focus-visible {
  outline: 3px solid #52bfe8;
  outline-offset: 2px;
}
.message-photo-frame {
  min-height: 180px;
  min-width: 180px;
  max-width: 100%;
  display: grid;
  place-items: center;
}
.message-photo-frame > a {
  display: block;
  max-width: 100%;
}
.go-messages .message-photo-open {
  padding: 0;
  border: 0;
  background: transparent;
  max-width: 100%;
  display: block;
}
.message-photo-viewer {
  z-index: 3600;
  padding: 24px;
  background: rgba(0, 0, 0, .94);
}
.message-photo-viewer > img {
  max-width: 100%;
  max-height: 90dvh;
  object-fit: contain;
}
.message-photo-viewer > button {
  position: absolute;
  right: 16px;
  top: max(16px, env(safe-area-inset-top));
  z-index: 1;
  border-radius: 50%;
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  background: #fff;
  color: #172f39;
  border: 0;
}
.messages-audio-toggle {
  display: grid;
  place-items: center;
  flex: none;
  min-width: 44px;
  min-height: 44px;
  padding: 8px;
  background: transparent;
  border: 0;
  border-radius: 12px;
  color: inherit;
  cursor: pointer;
}
.messages-audio-toggle[aria-pressed=false] {
  opacity: .65;
}
.messages-audio-toggle:disabled {
  opacity: .4;
  cursor: wait;
}
.messages-audio-toggle:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 1px;
}
.messages-settings {
  margin-top: 10px;
}
.messages-settings summary {
  padding: 12px;
  cursor: pointer;
  font-weight: 700;
}
.messages-settings > button,
.messages-settings > label {
  margin-block: 8px;
}
.messages-row-status {
  flex-shrink: 0;
}
.messages-row-copy {
  min-width: 0;
}
.messages-inbox-row .messages-open {
  padding-right: 88px;
}
.messages-audio-toggle {
  position: absolute;
  right: 36px;
  top: 50%;
  transform: translateY(-50%);
}
.messages-row-copy > span {
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.go-messages {
  font-family:
    Manrope,
    "DM Sans",
    sans-serif;
}
.messages-inbox-avatar {
  position: relative;
  display: block;
  flex: none;
}
.messages-unread-count {
  position: absolute;
  bottom: -3px;
  right: -3px;
  display: grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  padding: 0 5px;
  border: 2px solid #09212d;
  border-radius: 20px;
  background: #10dfae;
  color: #02271e;
  font-size: 11px;
  box-shadow: 0 0 9px #16e9b04d;
}
.go-messages .messages-inbox-row .messages-open {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 12px;
  min-height: 102px;
  padding: 13px 94px 13px 10px;
}
.messages-inbox-avatar .messages-avatar {
  box-sizing: border-box;
  width: 54px;
  height: 54px;
  border: 1px solid #a8eaff;
  box-shadow:
    0 0 0 2px #2d829b55,
    0 0 13px #4ed4ff33,
    inset 0 1px 2px #fff6;
}
.messages-inbox-row .messages-row-copy {
  gap: 3px;
}
.messages-inbox-row .messages-row-copy > strong {
  font-size: 18px;
  line-height: 1.2;
}
.messages-inbox-row .messages-row-copy > small {
  font-size: 12px;
  line-height: 1.3;
}
.messages-inbox-row .messages-row-copy > span {
  font-size: 14px;
  line-height: 1.3;
}
.messages-inbox-row .messages-row-status {
  position: absolute;
  right: 10px;
  top: 12px;
  bottom: 12px;
  min-width: 0;
  pointer-events: none;
}
.messages-inbox-row .messages-row-status time {
  font-size: 11px;
  line-height: 1.3;
  font-variant-numeric: tabular-nums;
}
.messages-inbox-row .messages-audience-badge {
  position: absolute;
  right: 78px;
  top: 30px;
}
.go-messages .messages-inbox-row .messages-audio-toggle {
  right: 38px;
  width: 44px;
  height: 44px;
  padding: 8px;
  opacity: 1;
}
.messages-inbox-row .messages-audio-toggle svg {
  width: 25px;
  height: 25px;
}
.go-messages .messages-row-options {
  width: 38px;
  font-size: 18px;
  letter-spacing: 1px;
}
.messages-inbox-row .messages-row-copy > small:has(.messages-notification-muted) {
  white-space: normal;
}
:root:not([data-theme=light]) .go-messages {
  --message-line:#4bbada77;
  --message-muted:#afd3e2;
  border-color: #57cfff;
  border-radius: 20px;
  background:
    linear-gradient(
      180deg,
      #c6f3ff23,
      transparent 20px),
    radial-gradient(
      ellipse at 0 0,
      #7ddfff19,
      transparent 65%),
    linear-gradient(
      115deg,
      #092332b5,
      #020e18d9);
  box-shadow:
    inset 0 1px 2px #dcf7ff80,
    inset 0 -1px 3px #2879a260,
    0 0 12px #27b9ff2b;
}
:root:not([data-theme=light]) .go-messages .messages-header {
  border-color: #64d5f270;
  background:
    linear-gradient(
      180deg,
      #8bddff12,
      transparent);
  box-shadow: 0 1px 8px #0002;
}
:root:not([data-theme=light]) .go-messages .messages-inbox {
  padding: 3px 7px 8px;
}
:root:not([data-theme=light]) .go-messages .messages-inbox-row {
  border: 1px solid transparent;
  border-bottom-color: #65cbe88c;
  background:
    linear-gradient(
      180deg,
      #92dbff08,
      transparent 25px);
  border-radius: 0;
}
:root:not([data-theme=light]) .go-messages .messages-inbox-row:last-of-type {
  border-bottom-color: transparent;
}
:root:not([data-theme=light]) .go-messages .messages-row-copy > small {
  color: #a3d6e7;
}
:root:not([data-theme=light]) .go-messages .messages-audience-badge {
  color: #06edc0;
  filter: drop-shadow(0 0 4px #00e4c04d);
}
:root:not([data-theme=light]) .go-messages .messages-inbox-row[data-selected-audience=true] .messages-avatar {
  border-color: #87ffe7;
  box-shadow: 0 0 0 2px #01bda044, 0 0 14px #09e9bb4d;
}
:root:not([data-theme=light]) .go-messages .messages-audio-toggle {
  color: #e5f5fc;
}
:root:not([data-theme=light]) .go-messages .messages-row-options {
  color: #abe5f6 !important;
  text-shadow: 0 0 6px #42ceff80;
}
:root:not([data-theme=light]) .go-messages .messages-inbox-row:is([data-audio-muted=true], [data-notifications-muted=true]) {
  border: 1px solid #d79d60cc;
  border-radius: 15px;
  background:
    linear-gradient(
      180deg,
      #ffd3a423,
      transparent 16px),
    radial-gradient(
      ellipse at 0 0,
      #d9904826,
      transparent 65%),
    linear-gradient(
      110deg,
      #352114c4,
      #100e0ce6);
  box-shadow:
    inset 0 1px 1px #ffe0b84d,
    inset 0 -1px 2px #8e582b55,
    0 0 10px #ed9b3720;
}
:root:not([data-theme=light]) .go-messages .messages-inbox-row[data-audio-muted=true] .messages-audio-toggle,
:root:not([data-theme=light]) .go-messages .messages-notification-muted {
  color: #ffc18e;
}
:root:not([data-theme=light]) .go-messages .messages-inbox-row:is([data-audio-muted=true], [data-notifications-muted=true]) time {
  color: #e6bb98;
}
:root:not([data-theme=light]) .go-messages .messages-inbox-row:is([data-audio-muted=true], [data-notifications-muted=true]) .messages-avatar {
  border-color: #f2bd87;
  box-shadow: 0 0 0 2px #c68a3f33, 0 0 12px #e8a15133;
}
:root:not([data-theme=light]) .go-messages .messages-bubble {
  border: 1px solid #4d9bb975;
  background:
    linear-gradient(
      180deg,
      #aee9ff18,
      transparent 18px),
    #0c2937dc;
  box-shadow: inset 0 1px 1px #c6f3ff2b, 0 2px 6px #0003;
}
:root:not([data-theme=light]) .go-messages .messages-bubble.is-mine {
  border-color: #40d4b785;
  background:
    linear-gradient(
      180deg,
      #b0ffdf18,
      transparent 18px),
    #0c3c36df;
}
:root:not([data-theme=light]) .go-messages .messages-composer {
  background:
    linear-gradient(
      180deg,
      #87ddff12,
      transparent 14px),
    #061e2ada;
  border-color: #4bbadaba;
}
:root:not([data-theme=light]) .go-messages .messages-composer textarea {
  background: #082635bc;
  border-color: #56b9d7;
  box-shadow: inset 0 1px 2px #c6f3ff25;
}
:root:not([data-theme=light]) .go-messages .messages-composer :is(.message-voice, .message-send) {
  background:
    linear-gradient(
      180deg,
      #fff5,
      transparent 50%),
    linear-gradient(
      135deg,
      #ed2c50,
      #a0042c);
  box-shadow: inset 0 1px 1px #fff8, 0 0 10px #eb29434d;
}
@media (max-width:360px) {
  .go-messages .messages-inbox-row .messages-open {
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 8px;
    padding-left: 7px;
    padding-right: 88px;
  }
  .messages-inbox-avatar .messages-avatar {
    width: 46px;
    height: 46px;
  }
  .messages-inbox-row .messages-row-copy > strong {
    font-size: 16px;
  }
  .messages-inbox-row .messages-row-copy > span {
    font-size: 13px;
  }
  .messages-inbox-row .messages-audience-badge {
    right: 72px;
  }
}
.message-keyboard-bar {
  display: flex;
  justify-content: flex-end;
  flex: none;
  padding: 0 12px;
  border-top: 1px solid var(--message-line);
  background: #061e2a;
  color: #c6efff;
}
.go-messages .message-keyboard-bar button {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 4px 8px;
  font-size: 14px;
  font-weight: 700;
}
.message-keyboard-bar button > span {
  font-size: 24px;
  line-height: 1;
}
.message-keyboard-bar + .messages-composer {
  border-top: 0;
}
.go-ptt-audience-copy strong.is-select-audience {
  display: flex;
  flex-direction: column;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  line-height: 1.03;
}
.go-ptt-audience-copy strong.is-select-audience > span {
  display: block;
  white-space: normal;
}
.audience-selector button,
.audience-selector button * {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}
.go-ptt-audience-copy small[role=status] {
  white-space: normal;
  line-height: 1.1;
}
.messages-create-dialog {
  box-sizing: border-box;
  gap: 16px;
  padding: 20px;
  width: min(100%, 480px);
  color: var(--text,#eaf3f6);
  border-color: #55c9f4;
  background:
    linear-gradient(
      180deg,
      #c6f3ff29,
      transparent 24px),
    radial-gradient(
      ellipse at 0 0,
      #8bd9ff1c,
      transparent 65%),
    linear-gradient(
      115deg,
      #0c2938f2,
      #030f19fa);
  box-shadow:
    inset 0 1px 1px #e2f8ff85,
    inset 0 -1px 2px #1c729e55,
    0 0 13px #27b9ff22,
    0 15px 50px #0008;
}
.messages-create-dialog > header {
  flex: none;
  padding-bottom: 12px;
  border-bottom: 1px solid #4bbada80;
}
.messages-create-dialog header button {
  display: grid;
  place-items: center;
  flex: none;
  width: 44px;
  height: 44px;
  padding: 0;
  line-height: 1;
  border: 1px solid #65bad7;
  border-radius: 50%;
  color: inherit;
  background:
    linear-gradient(
      180deg,
      #b8eaff20,
      transparent),
    #092633;
}
.messages-create-dialog > input {
  flex: none;
  min-height: 48px;
  box-sizing: border-box;
  font: inherit;
  font-size: 16px;
  color: inherit;
  border-color: #56b9d7;
  background:
    linear-gradient(
      180deg,
      #aee9ff12,
      transparent 15px),
    #082635bc;
  box-shadow: inset 0 1px 2px #c6f3ff25;
}
.messages-create-dialog > input::placeholder {
  color: #a8c9d9;
  opacity: 1;
}
.messages-create-dialog p {
  margin: 0;
  line-height: 1.45;
  font-size: 14px;
  color: #a8c9d9;
}
.messages-create-dialog .messages-people {
  min-height: 0;
  max-height: 32dvh;
  flex: 0 1 auto;
  overscroll-behavior: contain;
}
.messages-create-dialog .messages-people label {
  padding: 12px 4px;
  gap: 14px;
  border-bottom: 1px solid #4bbada60;
  cursor: pointer;
}
.messages-create-dialog .messages-people label:last-child {
  border-bottom: 0;
}
.messages-create-dialog .messages-people label:has(:checked) {
  background: #28c9aa14;
}
.messages-create-dialog .messages-people input {
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
  margin: 0;
  accent-color: #19dba2;
}
.messages-create-dialog .messages-people label > span {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 18px;
  line-height: 1.3;
}
.messages-create-dialog .messages-people small {
  display: block;
  margin-top: 3px;
  font-size: 13px;
  color: #a8c9d9;
}
.messages-create-dialog > .messages-create-submit {
  flex: none;
  justify-content: center;
  min-height: 48px;
  font-size: 17px;
  font-weight: 700;
  color: #fff;
  border: 1px solid #ff8495;
  background:
    linear-gradient(
      180deg,
      #ffffff42,
      transparent 8px),
    linear-gradient(
      135deg,
      #ed2c50,
      #a0042c);
  box-shadow: inset 0 1px 1px #fff8, 0 0 10px #eb294333;
}
.messages-create-dialog > .messages-create-submit:disabled {
  opacity: .45;
  box-shadow: none;
}
.messages-create-dialog :is(button, input):focus-visible {
  outline: 3px solid #91e3ff;
  outline-offset: 2px;
}
.messages-cast-button {
  font-size: 14px !important;
  font-weight: 700;
  padding: 8px !important;
  border: 1px solid #63cce5 !important;
  border-radius: 12px !important;
  min-height: 40px;
}
.messages-cast-button:disabled {
  opacity: .4;
}
.messages-cast-preview {
  flex: none;
  max-height: 28dvh;
  overflow: auto;
  padding: 12px 14px;
  background: var(--panel,#082635);
  border-top: 1px solid #55c9f4;
  color: var(--text,#eaf3f6);
}
.messages-cast-preview header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.messages-cast-preview button {
  min-height: 44px;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
}
.destination-cast-stops {
  font-size: 15px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
.destination-cast-stops ol {
  padding-left: 24px;
  margin: 8px 0;
}
.destination-cast-stops summary {
  cursor: pointer;
  padding: 8px 0;
  color: var(--muted,#a8d9eb);
}
.messages-bubble > .destination-cast-stops + button,
.messages-bubble > button:not(.messages-report-action) {
  min-height: 44px;
  color: inherit;
  background: transparent;
  border: 1px solid var(--message-line,#4bbada);
  border-radius: 10px;
  padding: 8px 12px;
}
.messages-bubble > button:disabled {
  opacity: .6;
}
.messages-cast-conversations {
  overflow: auto;
  max-height: 50dvh;
  min-height: 0;
}
.messages-cast-conversations .messages-open {
  padding: 12px !important;
  min-height: 76px !important;
  width: 100%;
  color: inherit;
  text-align: left;
}
.messages-cast-conversations .messages-row-copy {
  display: grid;
  gap: 4px;
}
.messages-cast-conversations .messages-row-copy > span {
  font-size: 13px;
  color: var(--muted,#a8c9d9);
}
.go-messages .messages-loading.is-offline {
  visibility: visible;
  opacity: 1;
}
.messages-offline-indicator {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 6px;
  border-radius: 999px;
  border: 1px solid #88a7b355;
  background: #8cb6c614;
  color: var(--muted,#a6c2cd);
  font-size: 10px;
  line-height: 14px;
  white-space: nowrap;
}
.messages-offline-indicator svg {
  width: 13px;
  height: 13px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  flex-shrink: 0;
}
.go-messages .messages-header {
  position: relative;
}
.go-messages .messages-loading.is-offline .messages-offline-indicator {
  position: absolute;
  z-index: 1;
  right: 12px;
  top: 100%;
  transform: translateY(-50%);
  background: var(--message-surface,#102b38);
  box-shadow: 0 2px 6px #00000014;
}
:root[data-theme=light] .go-messages .messages-offline-indicator {
  background: #f7f5f1;
  color: #526779;
  border-color: #d7ddd9;
}
.go-messages .messages-inbox-row.is-swipeable {
  overflow: hidden;
  touch-action: pan-y;
}
.messages-inbox-row.is-swipeable :is(.messages-open, .messages-audio-toggle, .messages-row-options) {
  translate: var(--message-swipe-x,0) 0;
}
.go-messages .messages-inbox-row .messages-swipe-delete {
  position: absolute;
  inset: 0 0 0 auto;
  z-index: 2;
  width: 80px;
  min-width: 44px;
  min-height: 44px;
  border-radius: 0;
  background: #d70732;
  color: #fff;
  font-weight: 700;
  clip-path: inset(0 0 0 calc(80px + var(--message-swipe-x,0px)));
}
.go-messages .messages-inbox-row .messages-swipe-delete[aria-hidden=true] {
  pointer-events: none;
}

/* src/go/mountain-dashboard.css */
@media (max-width:700px) {
  .go-shell:has(.is-dashboard)::before {
    background-image:
      linear-gradient(
        180deg,
        #03121911,
        #03121944 64%,
        #020c1333),
      var(--mountain-hero);
    background-position: center;
    background-size: cover;
    filter: saturate(.9);
  }
  .go-shell:has(.is-dashboard)::after {
    background:
      radial-gradient(
        ellipse at 50% 34%,
        transparent,
        #010b1266 80%);
  }
  .mobile-go.is-dashboard,
  .mobile-go.is-dashboard:not(:has(.audio-footer-controls)) {
    grid-template-rows: 64px minmax(0, 1fr) 78px;
    gap: 7px;
    padding: max(6px, env(safe-area-inset-top)) 10px max(10px, env(safe-area-inset-bottom));
  }
  .is-dashboard .mobile-go-header {
    display: grid;
    height: 64px;
    grid-template-columns: 38px minmax(0, 1fr) 38px;
    gap: 7px;
    overflow: visible;
  }
  .is-dashboard .mobile-go-header > button {
    height: 36px;
    min-height: 36px;
    min-width: 36px;
    width: 36px;
    padding: 0;
    display: grid;
    place-items: center;
    box-sizing: border-box;
    line-height: 0;
    border: 1px solid #62b5da88;
    border-radius: 50%;
    background:
      linear-gradient(
        145deg,
        #0c2835bb,
        #02121cb5);
    box-shadow: inset 0 1px 2px #b3e3ff22;
  }
  .is-dashboard .mobile-go-header > button svg {
    width: 25px;
    height: 25px;
  }
  .modus-dashboard-destination {
    grid-template-columns: 48px minmax(0, 1fr) auto;
    gap: 6px;
    min-height: 54px;
    height: 100%;
    border-radius: 10px;
    padding: 7px;
    background:
      linear-gradient(
        120deg,
        #05212fbb,
        #041722c9);
    border-color: #56b1d377;
    box-shadow: inset 0 1px 1px #aee6ff14;
  }
  .modus-dashboard-destination p {
    gap: 3px;
  }
  .modus-dashboard-destination small {
    font-size: 10px;
    line-height: 1.15;
    color: #a7c5d4;
  }
  .modus-dashboard-destination strong {
    font-size: clamp(20px, 5.5vw, 27px);
    line-height: 1.12;
  }
  .modus-dashboard-destination p:first-child {
    border-right: 1px solid #30708788;
    padding-right: 4px;
  }
  .modus-dashboard-destination p:last-child {
    padding-left: 6px;
  }
  .dashboard-target-name {
    display: flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
  }
  .dashboard-target-name > svg {
    width: 25px;
    height: 29px;
    flex: none;
    fill: #c4e3f022;
    stroke: #e4f6ff;
  }
  .dashboard-target-name > div {
    min-width: 0;
  }
  .modus-dashboard-destination .modus-destination-title {
    font-size: clamp(14px, 3.9vw, 20px);
    font-weight: 800;
    line-height: 1.16;
    padding: 0;
    -webkit-line-clamp: 2;
  }
  .dashboard-target-name small {
    font-size: 10px;
    white-space: nowrap;
  }
  .is-dashboard .modus-flip-card > .modus-radar-content {
    gap: 7px;
    min-height: 0;
    flex: 1;
  }
  .is-dashboard .modus-radar-zone {
    flex: 1;
    min-height: 0;
    overflow: visible;
  }
  .is-dashboard .mobile-radar {
    padding: 0 39px;
    min-height: 0;
    height: 100%;
    position: relative;
  }
  .is-dashboard .mobile-radar > svg {
    height: 100%;
    width: 100%;
    min-height: 0;
    max-height: 100%;
    overflow: visible;
  }
  .is-dashboard .mobile-radar-scale,
  .is-dashboard .mobile-radar .radar-relevance {
    display: none;
  }
  .is-dashboard .mobile-radar .radar-ring {
    stroke: #389bcb;
    stroke-width: .75;
    opacity: .65;
    fill: none;
  }
  .is-dashboard .mobile-radar .radar-ring.outer {
    stroke: #58c7ff;
    stroke-width: 1.3;
    opacity: 1;
  }
  .is-dashboard .radar-range-dashed {
    stroke-dasharray: 6 5;
    opacity: .65;
  }
  .is-dashboard .radar-tick {
    stroke: #3a94bd;
    stroke-width: .6;
    opacity: .7;
  }
  .is-dashboard .radar-axis {
    stroke: #3796bc;
    stroke-width: .6;
    opacity: .6;
  }
  .is-dashboard .radar-correction-sector {
    fill: #3dcaff !important;
    opacity: .19;
  }
  .is-dashboard .mobile-radar .radar-degree:not(.is-cardinal) {
    display: none;
  }
  .is-dashboard .mobile-radar .radar-degree.is-cardinal {
    font-size: 16px;
    fill: #f1fbff;
    font-weight: 800;
    paint-order: stroke;
    stroke: #02141d;
    stroke-width: 2px;
  }
  .is-dashboard .mobile-radar-you circle {
    stroke: #5fcfff;
    fill: #021723aa;
    stroke-width: 1.6;
  }
  .is-dashboard .mobile-radar-you path {
    fill: #fa334b;
    stroke: #fff;
    stroke-width: 1;
    filter: drop-shadow(0 1px 4px #ef284088);
  }
  .is-dashboard .mobile-radar-rider > text:not(.radar-initials):not(.dashboard-rider-distance) {
    display: none;
  }
  .is-dashboard .mobile-radar-rider .dashboard-rider-distance {
    font-size: 14px;
    fill: #fff;
    font-weight: 800;
    paint-order: stroke;
    stroke: #03131e;
    stroke-width: 3px;
  }
  .is-dashboard .mobile-radar-rider circle:not(.radar-rider-hit) {
    stroke-width: 2.4;
  }
  .is-dashboard .mobile-radar-rider.is-blue circle {
    stroke: #49b6ff;
  }
  .is-dashboard .mobile-radar-rider.is-green circle {
    stroke: #36ffc0;
  }
  .is-dashboard .mobile-radar-rider.is-red circle {
    stroke: #ff4755;
  }
  .is-dashboard .radar-correction-readout text {
    font-size: 25px;
    stroke: #041824aa;
  }
  .is-dashboard .radar-correction-readout .radar-correction-direction {
    font-size: 10px;
  }
  .is-dashboard .modus-radar-gauges {
    inset: 84px 8px 28px;
  }
  .is-dashboard .modus-vertical-gauge,
  .is-dashboard .modus-vertical-gauge.is-elevation {
    width: 22px;
    border: 1px solid #82d4fa88;
    border-radius: 17px;
    background:
      linear-gradient(
        90deg,
        #03131bdd,
        #22506c99,
        #00131ddc);
    overflow: visible;
    box-shadow: inset 0 2px 7px #0009, 0 0 0 3px #02111b55;
  }
  .is-dashboard .modus-vertical-gauge > i {
    background:
      linear-gradient(
        90deg,
        #0598da,
        #3fcfff,
        #087fb6);
    border-radius: 15px;
    box-shadow: 0 0 10px #27b8ff66;
  }
  .is-dashboard .modus-vertical-gauge > i::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    transform: translate(-50%, -50%);
    width: 13px;
    height: 13px;
    border-radius: 50%;
    border: 1px solid #e1f7ff;
    background: #adE9ff;
    box-shadow: 0 0 12px #70dfff;
  }
  .gauge-heading {
    position: absolute;
    bottom: calc(100% + 8px);
    left: 0;
    display: grid;
    gap: 3px;
    width: 48px;
    text-align: left;
    color: #f2faff;
  }
  .gauge-heading small {
    font-size: 12px;
    color: #b9d5e3;
  }
  .gauge-heading strong {
    font-size: 18px;
    font-weight: 800;
    line-height: 1.05;
    white-space: normal;
    word-break: normal;
  }
  .is-elevation .gauge-heading {
    left: auto;
    right: -3px;
    text-align: right;
    width: max-content;
    white-space: nowrap;
  }
  .is-elevation .gauge-heading strong {
    font-size: 27px;
  }
  .is-dashboard .is-elevation > svg {
    position: absolute;
    top: 6px;
    left: 3px;
    width: 16px;
    height: 16px;
    stroke: #b3d6e8;
    z-index: 2;
  }
  .is-dashboard .is-elevation > b {
    display: none;
  }
  .is-dashboard .elevation-extreme {
    right: -17px;
    white-space: normal;
    width: 28px;
    gap: 1px;
    text-align: center;
  }
  .is-dashboard .elevation-extreme strong {
    font-size: 10px;
    line-height: 1.12;
    word-break: normal;
  }
  .is-dashboard .elevation-extreme small {
    font-size: 16px;
    color: #c9e8f8;
  }
  .is-dashboard .elevation-extreme.is-max {
    top: 34px;
    bottom: auto;
  }
  .is-dashboard .elevation-extreme.is-min {
    bottom: 8px;
    top: auto;
  }
  .is-dashboard .modus-dashboard-instruments {
    grid-template-columns: 1fr 1fr;
    gap: 7px;
    flex: none;
  }
  .is-dashboard .modus-dashboard-instruments > div,
  .is-dashboard .modus-dashboard-instruments > button {
    height: 88px;
    min-height: 88px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 3px;
    border: 1px solid #69bcdd77;
    border-radius: 12px;
    background:
      linear-gradient(
        135deg,
        #09263399,
        #04141ccc);
    padding: 25px 3px 7px;
    box-shadow: inset 0 1px 2px #bbeaff12;
  }
  .is-dashboard .modus-dashboard-instruments strong {
    font-size: 29px;
    line-height: 1.1;
    z-index: 1;
    letter-spacing: -.035em;
  }
  .is-dashboard .modus-dashboard-instruments small {
    font-size: 13px;
    line-height: 1.1;
    z-index: 1;
    color: #b9d5e3;
  }
  .is-dashboard .modus-dashboard-instruments strong em {
    font-size: .78em;
    font-style: normal;
  }
  .is-dashboard .modus-dashboard-instruments .instrument-dial {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
  }
  .instrument-dial .dial-track {
    fill: none;
    stroke: #3d647a77;
    stroke-width: 7;
    stroke-dasharray: 11 2;
  }
  .instrument-dial .dial-fill {
    fill: none;
    stroke: #29baff;
    stroke-width: 7;
  }
  .instrument-dial .lean-peak {
    fill: #bedce9;
    font-size: 11px;
  }
  .instrument-dial .lean-rider {
    fill: none;
    stroke: #ebfaff;
    stroke-width: 1.5;
  }
  .is-dashboard .modus-speed-instrument > svg:not(.instrument-dial) {
    position: absolute;
    top: 5px;
    left: calc(50% - 15px);
    width: 30px;
    height: 27px;
    color: #edf9ff;
  }
  .is-dashboard .modus-dashboard-links {
    height: 45px;
    min-height: 45px;
    gap: 6px;
    flex: none;
  }
  .is-dashboard .modus-dashboard-links > * {
    flex: 1;
    border: 1px solid #69bcdd77;
    border-radius: 11px;
    background:
      linear-gradient(
        130deg,
        #0a29369c,
        #02131edc);
    overflow: hidden;
    box-shadow: inset 0 1px 1px #abdfff11;
  }
  .is-dashboard .modus-dashboard-links .modus-active-vehicle {
    font-size: 12px;
    gap: 4px;
    padding: 6px;
    height: 100%;
    font-weight: 750;
  }
  .is-dashboard .modus-dashboard-links .modus-active-vehicle svg:first-child {
    width: 25px;
  }
  .is-dashboard .modus-dashboard-links .modus-active-vehicle svg:last-child {
    width: 10px;
  }
  .modus-dashboard-group {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 6px;
    color: var(--text);
    text-align: left;
  }
  .modus-dashboard-group > svg {
    width: 23px;
    flex: none;
  }
  .modus-dashboard-group > svg:last-child {
    width: 10px;
    margin-left: auto;
  }
  .modus-dashboard-group span {
    min-width: 0;
    display: grid;
    gap: 3px;
  }
  .modus-dashboard-group strong {
    font-size: 11px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
  }
  .modus-dashboard-group small {
    font-size: 9px;
    color: #a7c8d8;
    white-space: nowrap;
  }
  .is-dashboard .modus-dashboard-links .modus-google-maps {
    display: flex;
    gap: 5px;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    padding: 5px;
  }
  .is-dashboard .modus-quick-messages {
    padding: 7px;
    border: 1px solid #69bcdd66;
    border-radius: 14px;
    background:
      linear-gradient(
        130deg,
        #062431b0,
        #02111bec);
    margin: 0;
    flex: none;
  }
  .is-dashboard .modus-quick-messages header {
    position: static;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 7px;
    margin: 0 3px 5px;
    min-height: 17px;
  }
  .is-dashboard .modus-quick-messages header > strong {
    font-size: 14px;
    color: #f5fbff;
  }
  .is-dashboard .modus-quick-messages .modus-show-riders {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 0;
    border: 0;
    background: none;
    font-size: 10px;
    font-weight: 400;
    min-height: 0;
    color: #b6d3e3;
  }
  .modus-show-riders svg {
    width: 14px;
    height: 14px;
  }
  .is-dashboard .modus-quick-messages > div {
    gap: 5px;
  }
  .is-dashboard .modus-quick-messages > div button {
    min-height: 65px;
    height: 65px;
    border-radius: 12px;
    border: 1px solid #79c1e1aa;
    background:
      linear-gradient(
        145deg,
        #294d60b8,
        #082531c4);
    padding: 7px 2px;
    gap: 4px;
    box-shadow: inset 0 1px 2px #c7efff18;
  }
  .is-dashboard .modus-quick-messages > div button svg {
    width: 27px;
    height: 27px;
  }
  .is-dashboard .modus-quick-messages > div button span {
    font-size: 12px;
    line-height: 1.05;
    font-weight: 750;
  }
  .mobile-communication-dock {
    grid-template-columns: minmax(0, 1fr) minmax(0, 2.18fr) minmax(0, 1fr);
    gap: 9px;
  }
  .mobile-communication-dock:not(:has(.audio-footer-controls)) {
    grid-template-columns: 1fr;
  }
  .mobile-communication-dock .audio-footer-controls > button {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 4px;
    min-height: 56px;
    height: 56px;
    border-radius: 999px;
    padding: 7px 5px;
    border: 1px solid #64c5ec88;
    background:
      linear-gradient(
        145deg,
        #092b37a6,
        #02131ccc);
    overflow: hidden;
  }
  .mobile-communication-dock .audio-footer-controls > button img {
    width: 32px;
    height: 32px;
    border: 1px solid #14e78e;
    border-radius: 50%;
    padding: 3px;
    flex: none;
    box-shadow: 0 0 0 2px #041821;
  }
  .audio-control-copy {
    display: grid;
    gap: 4px;
    min-width: 0;
  }
  .audio-control-copy small {
    font-size: 9px;
    color: #bdd6e3;
    text-align: left;
  }
  .mobile-communication-dock .audio-footer-controls > button strong {
    font-size: 10px;
    color: #aecfe0;
    font-weight: 500;
    text-align: left;
  }
  .audio-control-chevron {
    font-size: 20px;
    color: #e7f6ff;
    margin-left: auto;
    flex: none;
  }
  .mobile-communication-dock .mobile-bottom-actions {
    height: 68px;
  }
  .mobile-communication-dock .go-ptt,
  .mobile-communication-dock .mobile-primary-action {
    height: 68px;
    min-height: 68px;
    padding: 8px;
    gap: 7px;
    font-size: 14px;
    border-radius: 25px !important;
    border: 1px solid #ff647cbb;
    background:
      linear-gradient(
        135deg,
        #ee576acc,
        #c81935f0 50%,
        #940c27f2);
    box-shadow:
      inset 0 2px 1px #ffc0cba6,
      inset 0 -2px 12px #67071b88,
      0 0 0 4px #03131a,
      0 0 0 5px #83c9ea77;
  }
  .mobile-communication-dock .go-ptt > svg {
    width: 25px;
    height: 30px;
  }
  .mobile-communication-dock .go-ptt span {
    white-space: nowrap;
  }
  .modus-group-dialog-backdrop {
    position: fixed;
    inset: 0;
    background: #0008;
    z-index: 55;
    display: flex;
    align-items: flex-end;
  }
  .modus-group-dialog {
    width: 100%;
    max-height: 80dvh;
    overflow: auto;
    padding: 18px;
    border: 1px solid #62a6c588;
    border-radius: 22px 22px 0 0;
    background: #061d29f5;
    color: var(--text);
    backdrop-filter: blur(20px);
  }
  .modus-group-dialog header {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .modus-group-dialog button {
    padding: 9px;
    border: 1px solid #7bc6e477;
    border-radius: 9px;
    background: #133848;
    color: #fff;
  }
  .modus-group-dialog h2 {
    margin: 0;
    font-size: 22px;
  }
  :root[data-theme=light] .is-dashboard :is(.modus-dashboard-destination, .modus-dashboard-instruments > div, .modus-dashboard-instruments > button, .modus-dashboard-links > *, .modus-quick-messages) {
    background:
      linear-gradient(
        135deg,
        #f4fcf8e0,
        #dbeef0dd);
    color: #142d38;
    border-color: #467d9999;
  }
  :root[data-theme=light] .is-dashboard :is(.gauge-heading, .modus-dashboard-destination small, .modus-dashboard-instruments small, .modus-dashboard-group small, .modus-show-riders) {
    color: #254b61;
  }
  :root[data-theme=light] .is-dashboard .modus-quick-messages > div button {
    background:
      linear-gradient(
        135deg,
        #eaf8fc,
        #a8cbdc);
    color: #132f40;
  }
}
@media (max-width:360px) {
  .dashboard-target-name > svg {
    display: none;
  }
  .is-dashboard .mobile-go-header {
    grid-template-columns: 32px minmax(0, 1fr) 32px;
    gap: 5px;
  }
  .mobile-communication-dock .audio-footer-controls > button img {
    width: 25px;
    height: 25px;
  }
  .audio-control-chevron {
    display: none;
  }
  .mobile-communication-dock .go-ptt {
    font-size: 12px;
  }
}
@media (max-height:720px) and (max-width:700px) {
  .mobile-go.is-dashboard,
  .mobile-go.is-dashboard:not(:has(.audio-footer-controls)) {
    grid-template-rows: 58px minmax(0, 1fr) 66px;
    gap: 5px;
  }
  .is-dashboard .mobile-go-header {
    height: 58px;
  }
  .is-dashboard .modus-dashboard-instruments > div,
  .is-dashboard .modus-dashboard-instruments > button {
    min-height: 72px;
    height: 72px;
    padding-top: 22px;
  }
  .is-dashboard .modus-dashboard-instruments strong {
    font-size: 25px;
  }
  .is-dashboard .modus-dashboard-links {
    height: 40px;
    min-height: 40px;
  }
  .is-dashboard .modus-quick-messages > div button {
    height: 54px;
    min-height: 54px;
  }
  .is-dashboard .modus-quick-messages > div button svg {
    width: 22px;
    height: 22px;
  }
  .is-dashboard .modus-radar-gauges {
    inset: 67px 8px 10px;
  }
  .mobile-communication-dock .mobile-bottom-actions,
  .mobile-communication-dock .go-ptt {
    height: 56px;
    min-height: 56px;
  }
}
@media (max-width:700px) {
  .is-dashboard .modus-dashboard-destination .modus-destination-title {
    font-size: clamp(13px, 3.6vw, 18px);
    line-height: 1.15;
    white-space: nowrap;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .is-dashboard .modus-google-maps > svg:first-child {
    width: 23px;
    height: 29px;
    flex: none;
  }
  .is-dashboard .modus-google-maps > svg:last-child {
    width: 10px;
    height: 18px;
    flex: none;
  }
  .is-dashboard .elevation-extreme {
    width: 36px;
    right: -16px;
  }
  .is-dashboard .elevation-extreme strong {
    font-size: 10px;
    overflow-wrap: normal;
    white-space: normal;
  }
  .is-dashboard .modus-active-vehicle {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .is-dashboard .modus-active-vehicle svg {
    flex: none;
  }
}
@media (max-width:700px) {
  .is-dashboard .modus-dashboard-destination {
    grid-template-columns: 40px minmax(0, 1fr) auto;
  }
  .dashboard-target-name > svg {
    width: 21px;
    height: 25px;
  }
  .is-dashboard .modus-dashboard-destination .modus-destination-title {
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .is-dashboard .modus-radar-gauges {
    top: 50%;
    bottom: auto;
    left: 8px;
    right: 8px;
    height: calc(72vw - 80.64px);
    max-height: 70%;
    transform: translateY(-50%);
  }
  .is-dashboard .modus-dashboard-instruments .modus-speed-instrument .dial-fill {
    stroke-width: 6;
  }
  .mobile-communication-dock .go-ptt {
    border-radius: 28px !important;
  }
}
@media (max-width:700px) {
  .is-dashboard .mobile-radar .motus-course-facts {
    display: none !important;
  }
  :root[data-theme=light] .is-dashboard .modus-quick-messages header > strong,
  :root[data-theme=light] .is-dashboard .elevation-extreme,
  :root[data-theme=light] .is-dashboard .instrument-dial .lean-peak {
    color: #21485a;
    fill: #21485a;
  }
  :root[data-theme=light] .is-dashboard .dashboard-target-name > svg,
  :root[data-theme=light] .is-dashboard .lean-rider,
  :root[data-theme=light] .is-dashboard .modus-speed-instrument > svg:not(.instrument-dial) {
    stroke: #264f64;
    color: #264f64;
  }
  :root[data-theme=light] .go-shell:has(.is-dashboard)::before {
    background-image:
      linear-gradient(
        180deg,
        #edf5f5aa,
        #edf5f5bb 65%,
        #edf5f5dd),
      var(--mountain-hero);
  }
}
@media (max-width:700px) {
  .mobile-go:not(.is-dashboard) {
    grid-template-rows: 64px minmax(0, 1fr);
    gap: 7px;
    padding: max(6px, env(safe-area-inset-top)) 10px max(10px, env(safe-area-inset-bottom));
  }
}
@media (max-height:720px) and (max-width:700px) {
  .mobile-go:not(.is-dashboard) {
    grid-template-rows: 58px minmax(0, 1fr);
    gap: 5px;
  }
}
@media (max-width:700px) {
  .is-dashboard .modus-dashboard-instruments > .modus-low-energy {
    padding: 7px;
    display: flex;
    flex-direction: column;
    gap: 2px;
  }
  .modus-low-energy > svg {
    width: 28px;
    height: 28px;
    position: static;
    color: #ffbc45;
    animation: energy-glow 4s ease-in-out infinite;
  }
  .is-dashboard .modus-low-energy small {
    font-size: 12px;
  }
  .is-dashboard .modus-low-energy strong {
    font-size: 29px;
    color: #ffd080;
  }
  .modus-low-energy em {
    font-size: 10px;
    font-style: normal;
    color: var(--muted);
  }
}
@keyframes energy-glow {
  0%, 100% {
    opacity: .55;
    filter: drop-shadow(0 0 1px #ff9c24);
  }
  50% {
    opacity: 1;
    filter: drop-shadow(0 0 7px #ffae38);
  }
}
@media (prefers-reduced-motion:reduce) {
  .modus-low-energy > svg {
    animation: none;
  }
}
.elevation-range-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1100;
  background: #020d17bb;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}
.elevation-range-dialog {
  width: min(440px, 100%);
  max-height: 85dvh;
  overflow: auto;
  background: var(--panel,#09202b);
  color: var(--text,#ecf7ff);
  border: 1px solid #69b8d8;
  border-radius: 24px;
  padding: 24px;
  box-shadow: 0 20px 70px #0008;
  font-family:
    Inter,
    system-ui,
    sans-serif;
}
.elevation-range-dialog h2 {
  font-size: 26px;
}
.elevation-range-dialog p {
  line-height: 1.5;
  color: var(--muted,#bdd0dc);
}
.elevation-range-dialog label {
  display: grid;
  gap: 8px;
  margin: 16px 0;
  font-size: 18px;
}
.elevation-range-dialog input {
  font: inherit;
  padding: 12px;
  border-radius: 12px;
  border: 1px solid #719dae;
  background: #fff;
  color: #172b36;
  width: 100%;
  box-sizing: border-box;
}
.elevation-range-dialog form > div {
  display: flex;
  gap: 12px;
}
.elevation-range-dialog button {
  flex: 1;
  border: 1px solid #6db4d5;
  border-radius: 14px;
  background: #113344;
  color: white;
  padding: 14px;
  font: inherit;
}
.elevation-range-dialog button[type=submit] {
  background: #126591;
}
.is-elevation {
  cursor: pointer;
}
.is-elevation:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 4px;
}
.is-dashboard .modus-flip-card .modus-radar-gauges {
  z-index: 3;
}
.modus-vertical-gauge.is-elevation {
  pointer-events: auto;
}
.modus-vertical-gauge.is-elevation > i,
.modus-vertical-gauge.is-elevation > svg {
  pointer-events: none;
}
.modus-message-confirmation {
  position: fixed;
  z-index: 240;
  left: 50%;
  top: 42%;
  transform: translate(-50%, -50%);
  box-sizing: border-box;
  width: min(340px, 86vw);
  display: grid;
  justify-items: center;
  gap: 10px;
  padding: 26px 22px;
  border: 1px solid #5adba89c;
  border-radius: 26px;
  background:
    linear-gradient(
      145deg,
      #123a3cef,
      #05161ff2);
  color: #fff;
  text-align: center;
  box-shadow: 0 12px 48px #0009, inset 0 1px 1px #ffffff25;
  backdrop-filter: blur(16px);
  pointer-events: none;
  font-family: system-ui, sans-serif;
}
.modus-message-confirmation strong {
  font-size: 29px;
  line-height: 1.15;
}
.modus-message-confirmation > span:not(.message-confirmation-icon) {
  font-size: 23px;
  line-height: 1.2;
}
.modus-message-confirmation small {
  font-size: 16px;
  line-height: 1.35;
  color: #ffe0bd;
}
.message-confirmation-icon {
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: #12d39720;
  color: #46edb4;
  border: 2px solid #46edb4;
}
.message-confirmation-icon svg {
  width: 38px;
  height: 38px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.modus-message-confirmation.is-sending {
  border-color: #65c4ee;
}
.is-sending .message-confirmation-icon {
  color: #8adfff;
  border-color: #65c4ee;
  background: #65c4ee20;
}
.modus-message-confirmation.is-failed {
  border-color: #f3ac60;
}
.is-failed .message-confirmation-icon {
  color: #ffc47d;
  border-color: #f3ac60;
  background: #f3ac6020;
}
@media (max-width:700px) {
  .is-dashboard .mobile-course-slide.modus-flip-card {
    overflow: clip;
  }
  .mobile-communication-dock .modus-audio-status.audio-footer-controls > button {
    width: 100%;
    max-width: none;
    min-width: 0;
    box-sizing: border-box;
  }
  .mobile-communication-dock .audio-control-copy {
    flex: 1;
    overflow: hidden;
  }
}
.mobile-comms-takeover.is-failed {
  box-sizing: border-box;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 18px;
  overflow: auto;
  text-align: center;
}
.mobile-comms-takeover.is-failed > svg {
  flex: none;
  width: 44px;
  height: 44px;
}
.mobile-comms-takeover.is-failed > p {
  width: 100%;
  min-width: 0;
  max-width: 360px;
  overflow-wrap: anywhere;
}
.mobile-comms-takeover.is-failed p span {
  font-size: 24px;
}
.mobile-comms-takeover.is-failed p small {
  font-size: 18px;
  line-height: 1.45;
  white-space: normal;
}
.mobile-comms-takeover.is-failed > button:last-child {
  position: static;
  width: auto;
  height: auto;
  align-self: center;
  flex: none;
}
@media (max-width:700px) {
  .mobile-go .mobile-go-header {
    display: grid;
    height: 64px;
    min-height: 0;
    grid-template-columns: 38px minmax(0, 1fr) 38px;
    gap: 7px;
    overflow: visible;
    align-items: center;
  }
  .mobile-go .mobile-go-header > button {
    height: 36px;
    min-height: 36px;
    min-width: 36px;
    width: 36px;
    padding: 0;
    display: grid;
    place-items: center;
    box-sizing: border-box;
    line-height: 0;
    border: 1px solid #62b5da88;
    border-radius: 50%;
    background:
      linear-gradient(
        145deg,
        #0c2835bb,
        #02121cb5);
    box-shadow: inset 0 1px 2px #b3e3ff22;
    color: var(--text);
  }
  .mobile-go .mobile-go-header > button svg {
    display: block;
    width: 24px;
    height: 24px;
    flex: none;
    margin: 0;
  }
  .mobile-go .mobile-go-header > .modus-dashboard-destination {
    width: 100%;
    height: 100%;
    min-height: 54px;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px;
    padding: 7px 8px;
    border-radius: 10px;
    text-align: left;
    cursor: pointer;
  }
  .mobile-go .modus-dashboard-destination .modus-destination-title {
    font-size: clamp(18px, 5.1vw, 24px);
    font-weight: 800;
    line-height: 1.12;
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .mobile-go .modus-dashboard-destination p {
    border-right: 0;
    border-left: 1px solid var(--border);
    padding: 0 0 0 7px;
    margin: 0;
    gap: 3px;
  }
  .mobile-go .modus-dashboard-destination p strong {
    font-size: clamp(23px, 6.2vw, 30px);
    line-height: 1.1;
  }
  .mobile-go .modus-dashboard-destination:focus-visible {
    outline: 3px solid var(--green);
    outline-offset: 2px;
  }
  .mobile-go-menu {
    top: 68px;
  }
}
@media (max-height:720px) and (max-width:700px) {
  .mobile-go .mobile-go-header {
    height: 58px;
  }
}
@media (max-width:360px) {
  .mobile-go .mobile-go-header {
    grid-template-columns: 32px minmax(0, 1fr) 32px;
    gap: 5px;
  }
}
.go-destination-dialog {
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 22px;
  background: var(--panel);
  color: var(--text);
  width: min(560px, calc(100vw - 24px));
  max-height: calc(100dvh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
  overflow: auto;
  overscroll-behavior: contain;
  box-shadow: 0 18px 60px #0008;
}
.go-destination-dialog::backdrop {
  background: #020b13bb;
  backdrop-filter: blur(6px);
}
.go-destination-dialog > section > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 16px;
}
.go-destination-dialog h2 {
  font-size: 22px;
  margin: 0;
}
.go-destination-dialog header button {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 0;
  background: transparent;
  color: inherit;
  border-radius: 50%;
}
.go-destination-done {
  display: block;
  margin: 0 12px 16px auto;
  padding: 10px 22px;
  min-height: 44px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel-hi);
  color: inherit;
  font: inherit;
}
.mobile-go .mobile-go-menu {
  box-sizing: border-box;
  width: min(360px, calc(100vw - 32px));
  max-height: calc(100dvh - 108px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 8px;
  border-radius: 18px;
  border-color: #62b5da88;
  background: #06151cfb;
  box-shadow: 0 14px 40px #0009;
}
.mobile-go .mobile-go-menu button {
  border: 0;
  background: transparent;
  box-shadow: none;
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 72px;
  width: 100%;
  padding: 12px;
  text-align: left;
  font-size: 28px;
  font-weight: 650;
  line-height: 1.15;
  color: var(--text);
  border-radius: 12px;
}
.mobile-go .mobile-go-menu button + button {
  border-top: 1px solid #85bdd322;
}
.mobile-go .mobile-go-menu button > svg {
  flex: none;
  width: 36px;
  height: 36px;
  color: #8ddcff;
  stroke-width: 1.8;
}
.mobile-go .mobile-go-menu button > span {
  min-width: 0;
  overflow-wrap: anywhere;
}
.mobile-go .mobile-go-menu button[aria-current=page] {
  background: #21404c;
  color: #fff;
}
.mobile-go .mobile-go-menu button:focus-visible {
  outline: 3px solid #8ddcff;
  outline-offset: -3px;
}
:root[data-theme=light] .mobile-go .mobile-go-menu {
  background: #f7fbfcfc;
  border-color: #6d8d9d88;
  box-shadow: 0 14px 40px #16313a33;
}
:root[data-theme=light] .mobile-go .mobile-go-menu button > svg {
  color: #235870;
}
:root[data-theme=light] .mobile-go .mobile-go-menu button[aria-current=page] {
  background: #d7eaf2;
  color: #132b37;
}
.mobile-go .mobile-go-menu button:hover {
  background: #16313e;
}
:root[data-theme=light] .mobile-go .mobile-go-menu button:hover {
  background: #dcebf0;
  color: #132b37;
}
.ride-roster {
  display: flex;
  flex: 1;
  min-height: 0;
  min-width: 0;
  flex-direction: column;
  border: 1px solid #59b7da80;
  border-radius: 18px;
  background:
    linear-gradient(
      135deg,
      #082838e8,
      #03151ee8);
  box-shadow: inset 0 1px 1px #b5e6ff20, 0 10px 30px #0004;
  color: var(--text);
  overflow: hidden;
}
.ride-roster-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 12px 8px;
  flex: none;
}
.ride-roster-heading-icon {
  color: #bdeeff;
  flex: none;
}
.ride-roster-header > div {
  min-width: 0;
  flex: 1;
}
.ride-roster h2 {
  margin: 0;
  font-size: clamp(22px, 5.8vw, 28px);
  line-height: 1.12;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ride-roster-header p {
  margin: 5px 0 0;
  color: #a8c9d9;
  font-size: 15px;
  display: flex;
  gap: 7px;
  align-items: center;
}
.ride-roster-header p i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #2adea4;
  flex: none;
}
.ride-roster button {
  font: inherit;
  cursor: pointer;
  color: inherit;
}
.ride-roster button:disabled {
  opacity: .45;
  cursor: default;
}
.ride-roster button:focus-visible {
  outline: 3px solid #8ddcff;
  outline-offset: -3px;
}
.ride-roster-close {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  flex: none;
  border: 1px solid #6ba7c260;
  border-radius: 50%;
  background: #092331;
}
.ride-roster-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 12px 10px;
  flex: none;
  flex-wrap: wrap;
}
.ride-roster-toolbar > span {
  color: #a8c9d9;
  font-size: 13px;
}
.ride-roster-toolbar button {
  display: flex;
  align-items: center;
  gap: 7px;
  border: 1px solid #5aa6c780;
  border-radius: 10px;
  padding: 9px 10px;
  background: #092331;
  min-height: 44px;
  font-size: 14px;
  font-weight: 650;
}
.ride-roster-list {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 0 10px;
  scrollbar-width: thin;
  touch-action: pan-y;
}
.ride-roster-row {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) 28px auto 14px;
  align-items: center;
  gap: 8px;
  width: 100%;
  height: 86px;
  margin: 0 0 8px;
  padding: 10px 8px;
  border: 1px solid #4b92ae88;
  border-radius: 14px;
  background:
    linear-gradient(
      115deg,
      #17415077,
      #07212b99);
  text-align: left;
}
.ride-roster-avatar {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 1px solid #9acbdfaa;
  background: #153747;
  color: #beddea;
  overflow: hidden;
}
.ride-roster-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ride-roster-person {
  min-width: 0;
  display: grid;
  gap: 7px;
}
.ride-roster-person strong {
  font-size: 21px;
  line-height: 1.1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ride-roster-person small {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #a8c9d9;
  font-size: 12px;
  line-height: 1.2;
}
.ride-roster-person i {
  width: 7px;
  height: 7px;
  flex: none;
  border-radius: 50%;
  background: #8baebe;
}
.ride-roster-trend {
  display: flex;
  justify-content: center;
  color: #91c3d9;
}
.ride-roster-row.is-green .ride-roster-trend {
  color: #26db9e;
}
.ride-roster-row.is-green .ride-roster-person i {
  background: #26db9e;
}
.ride-roster-row.is-amber .ride-roster-trend {
  color: #ffbc62;
}
.ride-roster-row.is-amber .ride-roster-person i {
  background: #ffbc62;
}
.ride-roster-row.is-muted .ride-roster-trend {
  color: #93adba;
}
.ride-roster-distance {
  display: grid;
  gap: 5px;
  justify-items: end;
  white-space: nowrap;
}
.ride-roster-distance strong {
  font-size: 23px;
  line-height: 1.1;
}
.ride-roster-distance small {
  font-size: 15px;
  color: #a8c9d9;
}
.ride-roster-row > svg:last-child {
  color: #8cabb9;
}
.ride-roster-page {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex: none;
  padding: 8px 12px;
  margin: 0;
  font-size: 13px;
  color: #a8c9d9;
}
.ride-roster-page button {
  border: 1px solid #5aa6c780;
  border-radius: 9px;
  background: #092331;
  padding: 8px;
  min-height: 44px;
}
.ride-roster-empty {
  padding: 24px 12px;
  font-size: 18px;
  line-height: 1.5;
  color: #b3cfdb;
}
.ride-roster-map-wrap {
  position: relative;
  flex: 1;
  min-height: 0;
  display: flex;
}
.ride-roster-map {
  flex: 1;
  min-height: 0;
  height: 100%;
  width: 100%;
  background: #061721;
}
.ride-roster-fit {
  position: absolute;
  bottom: 15px;
  right: 12px;
  z-index: 500;
  border: 1px solid #5aa6c7;
  border-radius: 12px;
  background: #092331 !important;
  padding: 10px 14px;
  min-height: 44px;
  color: #fff !important;
}
:root[data-theme=light] .ride-roster {
  background:
    linear-gradient(
      135deg,
      #f4fbfdf5,
      #e3f0f5f2);
  border-color: #729aae;
}
:root[data-theme=light] .ride-roster-row {
  background:
    linear-gradient(
      115deg,
      #fff9,
      #e9f3f8bb);
  border-color: #9dbdcc;
}
:root[data-theme=light] .ride-roster :is(.ride-roster-heading-icon, .ride-roster-toolbar > span, .ride-roster-header p, .ride-roster-person small, .ride-roster-distance small, .ride-roster-page, .ride-roster-empty) {
  color: #3c6175;
}
:root[data-theme=light] .ride-roster :is(.ride-roster-toolbar button, .ride-roster-close, .ride-roster-page button) {
  background: #eef7fa;
  color: #193e51;
}
@media (max-width:370px) {
  .ride-roster-row {
    grid-template-columns: 44px minmax(0, 1fr) 22px auto 12px;
    gap: 6px;
    padding-inline: 6px;
  }
  .ride-roster-avatar {
    width: 44px;
    height: 44px;
  }
  .ride-roster-person strong {
    font-size: 19px;
  }
  .ride-roster-distance strong {
    font-size: 21px;
  }
  .ride-roster-trend svg {
    width: 25px;
  }
  .ride-roster-header {
    padding-inline: 10px;
  }
}
.ride-roster-list > [role=listitem] {
  height: 94px;
}
@media (max-width:700px) {
  .mobile-go.is-dashboard:has(.audio-footer-controls) {
    grid-template-rows: 64px minmax(0, 1fr) 90px;
  }
  .mobile-communication-dock:has(.audio-footer-controls) {
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr) minmax(0, 1fr);
    gap: 8px;
  }
  .mobile-communication-dock .modus-audio-status.audio-footer-controls > button {
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    align-content: center;
    justify-content: center;
    column-gap: 4px;
    row-gap: 3px;
    height: 84px;
    min-height: 84px;
    padding: 4px 2px;
    border-radius: 32px;
  }
  .mobile-communication-dock .audio-footer-controls > button img {
    box-sizing: border-box;
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    padding: 2px;
  }
  .mobile-communication-dock .audio-control-copy {
    display: block;
    flex: 0 1 auto;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
  }
  .mobile-communication-dock .audio-footer-controls > button strong {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-size: 18px;
    line-height: 20px;
    font-weight: 650;
    color: #ecf7ff;
    text-align: center;
    white-space: normal;
    overflow-wrap: anywhere;
    text-wrap: balance;
    overflow: hidden;
    text-overflow: clip;
    max-width: 100%;
  }
  .mobile-communication-dock .audio-footer-controls > button[data-short-name] {
    flex-direction: row;
  }
  .mobile-communication-dock .audio-footer-controls > button[data-short-name] strong {
    font-size: 22px;
    line-height: 26px;
  }
  .mobile-communication-dock .audio-footer-controls > button[data-short-name=three] strong {
    font-size: 18px;
    line-height: 22px;
  }
  .mobile-communication-dock .audio-control-chevron {
    display: none;
  }
}
@media (max-height:720px) and (max-width:700px) {
  .mobile-go.is-dashboard:has(.audio-footer-controls) {
    grid-template-rows: 58px minmax(0, 1fr) 90px;
  }
}
@media (max-width:700px) {
  .mobile-course-carousel {
    overflow-x: hidden;
    scroll-snap-type: none;
    scroll-behavior: auto;
    touch-action: pan-y;
    overscroll-behavior-x: none;
    -webkit-overflow-scrolling: auto;
  }
  .mobile-course-slide {
    scroll-snap-align: none;
  }
  .modus-dashboard-links .modus-google-maps {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-width: 0;
    overflow: hidden;
  }
  .modus-dashboard-links .modus-google-maps > svg:first-child {
    width: 23px;
    height: 29px;
    min-width: 23px;
    max-width: 23px;
    max-height: 29px;
    flex: 0 0 23px;
  }
  .modus-dashboard-links .modus-google-maps > svg:last-child {
    width: 10px;
    height: 18px;
    min-width: 10px;
    max-width: 10px;
    max-height: 18px;
    flex: 0 0 10px;
  }
}
@media (max-width:700px) {
  .go-shell .mobile-go.radar-footer-pane.is-dashboard {
    grid-template-rows: 64px minmax(0, 1fr);
  }
  .radar-footer-pane .modus-flip-card {
    display: flex;
    flex-direction: column;
    gap: 7px;
  }
  .radar-footer-pane .modus-flip-card > .modus-radar-content {
    flex: 1;
    min-height: 0;
  }
  .radar-footer-pane .modus-flip-card > .mobile-communication-dock {
    flex: 0 0 78px;
    min-height: 0;
  }
  .radar-footer-pane .modus-flip-card > .mobile-communication-dock:has(.audio-footer-controls) {
    flex-basis: 90px;
  }
}
@media (max-height:720px) and (max-width:700px) {
  .go-shell .mobile-go.radar-footer-pane.is-dashboard {
    grid-template-rows: 58px minmax(0, 1fr);
  }
  .radar-footer-pane .modus-flip-card {
    gap: 5px;
  }
  .radar-footer-pane .modus-flip-card > .mobile-communication-dock:not(:has(.audio-footer-controls)) {
    flex-basis: 66px;
  }
}
.is-dashboard .modus-dashboard-instruments .modus-lean-instrument:not([data-lean-state=ready]) > strong {
  font-size: clamp(14px, 4.2vw, 19px);
  line-height: 1.15;
  letter-spacing: 0;
  white-space: normal;
  text-wrap: balance;
}
.go-shell .mobile-go.radar-footer-pane.is-dashboard.has-ride-mode {
  grid-template-rows: 64px auto minmax(0, 1fr);
}
.go-ride-mode {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid #427a90;
  border-radius: 16px;
  background: #061820;
  color: #f1f7fa;
  font-family: inherit;
  min-width: 0;
}
.go-ride-mode > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.go-ride-mode strong {
  font-size: 21px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}
.go-ride-mode span {
  font-size: 17px;
  line-height: 1.25;
}
.go-ride-mode small {
  font-size: 14px;
  line-height: 1.3;
  color: #b4c9d3;
}
.go-ride-mode small.is-warning {
  color: #ffcf76;
}
.go-ride-mode p {
  margin: 4px 0;
  color: #ffcf76;
}
.go-ride-mode button {
  min-height: 44px;
  max-width: 140px;
  padding: 9px 12px;
  border-radius: 12px;
  border: 1px solid #64b3d1;
  background: #163c4c;
  color: #fff;
  font-family: inherit;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
  white-space: normal;
}
.go-ride-mode button:focus-visible {
  outline: 3px solid #ffcf76;
  outline-offset: 2px;
}
.go-ride-mode button:disabled {
  opacity: .55;
}
.go-ride-mode.is-following {
  margin-bottom: 14px;
  grid-template-columns: 30px minmax(0, 1fr);
}
@media (max-width:420px) {
  .go-ride-mode {
    grid-template-columns: 24px minmax(0, 1fr) 102px;
    gap: 7px;
    padding: 9px;
  }
  .go-ride-mode > button {
    max-width: 102px;
    padding: 8px;
    font-size: 15px;
  }
  .go-ride-mode strong {
    font-size: 19px;
  }
  .go-ride-mode span {
    font-size: 16px;
  }
}
@media (max-height:720px) and (max-width:700px) {
  .go-shell .mobile-go.radar-footer-pane.is-dashboard.has-ride-mode {
    grid-template-rows: 58px auto minmax(0, 1fr);
  }
}
.has-ride-mode .modus-radar-zone {
  overflow: hidden;
}
.has-ride-mode .go-ride-mode {
  z-index: 2;
}
.is-dashboard .modus-dashboard-instruments > .modus-lean-instrument {
  padding: 0;
  display: block;
  position: relative;
}
.is-dashboard .modus-lean-instrument > .lean-dial {
  top: -8px;
  bottom: 24px;
  height: calc(100% - 16px);
  width: 100%;
}
.is-dashboard .modus-lean-instrument > .lean-racer-icon {
  position: absolute;
  top: 3px;
  left: calc(50% - 23px);
  width: 46px;
  height: 34px;
  z-index: 1;
}
.is-dashboard .modus-lean-instrument > .lean-live-value {
  position: absolute;
  top: 37%;
  left: 4px;
  right: 4px;
  text-align: center;
  line-height: 1.05;
  font-size: 29px;
}
.is-dashboard .modus-lean-instrument > .lean-session-footer {
  position: absolute;
  left: 6px;
  right: 6px;
  bottom: 5px;
  height: 30px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: end;
  gap: 3px;
  z-index: 1;
}
.lean-session-peak {
  display: grid;
  gap: 1px;
  text-align: left;
  min-width: 0;
}
.lean-session-peak:last-child {
  text-align: right;
}
.lean-session-peak b {
  font-size: 20px;
  line-height: 1;
  font-weight: 750;
  letter-spacing: -.02em;
  font-variant-numeric: tabular-nums;
}
.is-dashboard .modus-lean-instrument .lean-session-peak small {
  font-size: 9px;
  line-height: 1;
}
.is-dashboard .modus-lean-instrument .lean-tile-label {
  font-size: 12px;
  line-height: 1.15;
  align-self: end;
  padding-bottom: 1px;
}
:root[data-theme=light] .lean-racer-icon {
  filter: brightness(0);
}
@media (max-width:380px) {
  .is-dashboard .tire-instruments > .modus-lean-instrument > .lean-session-footer {
    left: 4px;
    right: 4px;
    gap: 2px;
  }
  .is-dashboard .tire-instruments .lean-tile-label {
    font-size: 10px;
  }
  .tire-instruments .lean-session-peak b {
    font-size: 19px;
  }
}
.is-dashboard .tire-instruments .lean-tile-label {
  max-width: 36px;
  white-space: normal;
  text-align: center;
}
.is-dashboard .modus-dashboard-instruments:not(.tire-instruments) > .modus-lean-instrument > .lean-racer-icon {
  top: 0;
  height: 28px;
}
.is-dashboard .modus-dashboard-instruments:not(.tire-instruments) > .modus-lean-instrument > .lean-live-value {
  top: 28px;
  font-size: 24px;
}
.ride-menu-shield {
  position: fixed;
  inset: 0;
  z-index: 2500;
  isolation: isolate;
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}
.ride-menu-shield > .ride-menu-dismiss {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  touch-action: none;
  z-index: 0;
}
.ride-menu-shield > .mobile-go-menu {
  z-index: 1;
  touch-action: pan-y;
  max-height: calc(100dvh - 104px - env(safe-area-inset-bottom));
}
.is-dashboard .radar-correction-readout text,
.is-dashboard .radar-speed-readout text {
  fill: var(--text);
  font-size: 60px;
  font-weight: 800;
  paint-order: stroke;
  stroke: #041824aa;
  stroke-width: 3px;
  pointer-events: none;
}
.is-dashboard .radar-correction-readout .radar-correction-direction,
.is-dashboard .radar-speed-readout .radar-speed-unit {
  font-size: 12px;
  font-weight: 600;
}
:root[data-theme=light] .go-shell .radar-speed-readout text {
  stroke: #f2f8fccc;
}
.tire-speed-strip .modus-destination-audio {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 96px;
  min-height: 44px;
  padding: 7px 12px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: var(--panel);
  color: var(--text);
  font: 600 14px Manrope, sans-serif;
}
.tire-speed-strip .modus-destination-audio svg {
  width: 25px;
  height: 25px;
  flex: none;
}
.tire-speed-strip .modus-destination-audio[aria-pressed=false] {
  color: var(--muted);
}
.tire-speed-strip .modus-destination-audio:disabled {
  opacity: .6;
}
.modus-flip-card > .modus-radar-content {
  position: relative;
}
.modus-incoming-radar-message {
  position: absolute;
  z-index: 18;
  top: 48%;
  bottom: calc(96px + env(safe-area-inset-bottom));
  left: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  padding: 18px;
  border: 1px solid var(--border);
  border-radius: 20px;
  background: var(--panel);
  color: var(--text);
  box-shadow: 0 -8px 30px #0006;
  overflow: hidden;
  touch-action: pan-y;
}
.modus-incoming-radar-message header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex: none;
}
.modus-incoming-radar-message header strong {
  font-size: 22px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.modus-incoming-radar-message header button {
  width: 46px;
  height: 46px;
  flex: none;
  border: 1px solid var(--border);
  border-radius: 50%;
  background: var(--panel-hi);
  color: var(--text);
  font-size: 30px;
}
.modus-incoming-radar-message p {
  font-size: clamp(28px, 7.2vw, 36px);
  font-weight: 750;
  line-height: 1.22;
  margin: 14px 0 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.modus-message-sound label {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  font-size: 20px;
}
.modus-message-sound input {
  width: 22px;
  height: 22px;
  accent-color: var(--red);
}
.modus-message-sound p {
  font-size: 15px;
  line-height: 1.5;
  color: var(--muted);
}
@media (max-width:700px) {
  .radar-footer-pane .mobile-search-slide {
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }
  .radar-footer-pane .mobile-search-slide > .motus-destination {
    flex: 0 0 auto;
  }
  .radar-footer-pane .mobile-search-slide > .motus-nearby {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    margin-bottom: 0;
  }
  .radar-footer-pane .mobile-search-slide .motus-nearby > .motus-panel-title,
  .radar-footer-pane .mobile-search-slide .motus-nearby > .modus-refresh-status {
    flex: none;
  }
  .radar-footer-pane .mobile-search-slide .motus-nearby > .modus-destination-list {
    flex: 1;
    min-height: 0;
    max-height: none;
    overflow-y: auto;
  }
}
@media (max-width:700px) {
  .radar-footer-pane .mobile-search-slide {
    gap: 12px;
    padding-top: 4px;
  }
  .radar-footer-pane .mobile-search-slide > .motus-destination {
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    overflow: visible;
    box-shadow: none;
  }
  .radar-footer-pane .mobile-search-slide .motus-destination form {
    height: 58px;
    margin: 0;
    gap: 9px;
    padding: 5px 6px 5px 12px;
    border: 1px solid #428bad;
    border-radius: 17px;
    background:
      linear-gradient(
        135deg,
        #092432ee,
        #04121beb);
    box-shadow: inset 0 1px 3px #7edcff26, 0 3px 12px #0003;
  }
  .radar-footer-pane .destination-search-icon {
    width: 23px;
    height: 23px;
    flex: none;
    fill: none;
    stroke: var(--muted);
    stroke-width: 1.8;
    stroke-linecap: round;
  }
  .radar-footer-pane .mobile-search-slide .motus-destination input {
    flex: 1;
    width: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    font-size: 15px;
  }
  .radar-footer-pane .mobile-search-slide .motus-destination form > button[type=submit] {
    flex: none;
    min-height: 44px;
    padding: 0 17px;
    border: 1px solid #ff8190;
    border-radius: 12px;
    background:
      linear-gradient(
        145deg,
        #e02a47,
        #980721);
    box-shadow: inset 0 2px 2px #ffffff55, 0 0 12px #ef173e45;
    color: #fff;
    font-size: 17px;
    font-weight: 800;
  }
  .radar-footer-pane .mobile-search-slide .motus-destination form > button[aria-label="Clear destination search"] {
    flex: none;
    width: 30px;
    min-height: 40px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--muted);
    font-size: 24px;
  }
  .radar-footer-pane .mobile-search-slide .motus-shortcuts {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
    margin: 14px 0 0;
    padding: 0;
  }
  .radar-footer-pane .mobile-search-slide .motus-shortcuts button {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 2px;
    min-width: 0;
    min-height: 86px;
    padding: 5px 3px;
    border: 1px solid #357a9b;
    border-radius: 19px;
    background:
      linear-gradient(
        145deg,
        #122d3be8,
        #03121deb);
    box-shadow: inset 0 1px 3px #8edfff25;
  }
  .radar-footer-pane .mobile-search-slide .motus-shortcuts button[aria-pressed=true] {
    border-color: #83d9fb;
    box-shadow: inset 0 0 15px #43b3e32c, 0 0 0 1px #67d4ff50;
  }
  .radar-footer-pane .mobile-search-slide .motus-shortcuts button img {
    width: 56px;
    height: 56px;
  }
  .radar-footer-pane .mobile-search-slide .motus-shortcuts .destination-shortcut-label {
    font-size: 12px !important;
    font-weight: 600;
    line-height: 1.3;
    color: var(--text);
  }
  .radar-footer-pane .mobile-search-slide > .motus-nearby {
    border: 1px solid #428bad;
    border-radius: 21px;
    padding: 8px;
    background:
      linear-gradient(
        135deg,
        #0a202bea,
        #04131bec);
    box-shadow: inset 0 1px 3px #7edcff25, 0 4px 15px #0003;
  }
  .radar-footer-pane .mobile-search-slide .motus-nearby > .motus-panel-title {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    margin: 0;
    padding: 0 5px 8px;
    font-size: 21px;
    font-weight: 800;
  }
  .radar-footer-pane .mobile-search-slide .motus-nearby > .motus-panel-title:before {
    content: "";
    flex: none;
    width: 3px;
    height: 23px;
    border-radius: 3px;
    background: #f32346;
    box-shadow: 0 0 8px #f3234655;
  }
  .radar-footer-pane .mobile-search-slide .motus-nearby > .motus-panel-title > span {
    flex: 1;
    min-width: 0;
  }
  .radar-footer-pane .mobile-search-slide .motus-nearby > .motus-panel-title > button {
    display: grid;
    place-items: center;
    flex: none;
    min-width: 44px;
    min-height: 44px;
    padding: 4px;
    border: 0;
    background: transparent;
    color: var(--muted);
  }
  .radar-footer-pane .motus-panel-title > button[aria-label="Refresh nearby places"] svg {
    width: 26px;
    height: 26px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
  }
  .radar-footer-pane .motus-panel-title > button[aria-busy=true] {
    opacity: .5;
  }
  .radar-footer-pane .mobile-search-slide .modus-destination-list {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 1px 0 4px;
    scrollbar-width: thin;
  }
  .radar-footer-pane .mobile-search-slide .modus-destination-row {
    flex: none;
    gap: 10px;
    min-height: 84px;
    padding: 4px;
    border: 1px solid #476b7d;
    border-radius: 15px;
    background:
      linear-gradient(
        120deg,
        #142d3988,
        #06151ebb);
    box-shadow: inset 0 1px 2px #b4e6ff12;
  }
  .radar-footer-pane .mobile-search-slide .modus-place-image {
    width: 32%;
    height: 74px;
    flex: 0 0 32%;
    border-radius: 11px;
    overflow: visible;
  }
  .radar-footer-pane .mobile-search-slide .modus-place-image > img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 11px;
    object-fit: cover;
  }
  .radar-footer-pane .mobile-search-slide .modus-save-place {
    width: 40px;
    height: 40px;
    bottom: 2px;
    left: 2px;
    border: 1px solid #c0d9e5;
    background: #071a25f2;
    color: #fff;
    font-size: 26px;
    box-shadow: 0 1px 5px #0008;
  }
  .radar-footer-pane .mobile-search-slide .modus-save-place:after {
    content: "";
    position: absolute;
    inset: -2px;
    border-radius: 50%;
  }
  .radar-footer-pane .mobile-search-slide .modus-save-place:is([aria-pressed=true], [data-saved=true]) {
    background:
      linear-gradient(
        145deg,
        #f3324d,
        #b00926);
    border-color: #fff;
    box-shadow: 0 0 8px #f3234645;
  }
  .radar-footer-pane .mobile-search-slide .modus-destination-row > .motus-place-row {
    align-self: stretch;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto 10px;
    align-items: center;
    gap: 5px;
    padding: 4px 3px 4px 0;
    border: 0;
    border-radius: 8px;
    background: transparent;
    text-align: left;
  }
  .radar-footer-pane .mobile-search-slide .modus-destination-row .motus-place-row strong {
    font-size: 17px;
    font-weight: 800;
    line-height: 1.2;
    overflow-wrap: normal;
  }
  .radar-footer-pane .mobile-search-slide .modus-destination-row .motus-place-row small {
    margin-top: 5px;
    font-size: 11px;
    line-height: 1.3;
  }
  .radar-footer-pane .mobile-search-slide .modus-destination-row .motus-place-row em {
    font-size: 14px;
    font-weight: 750;
    font-style: normal;
    color: var(--muted);
    font-variant-numeric: tabular-nums;
  }
  .radar-footer-pane .destination-preview-chevron {
    width: 10px;
    height: 18px;
    fill: none;
    stroke: var(--muted);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
  }
  .radar-footer-pane .mobile-search-slide button:focus-visible {
    outline: 2px solid #9de5ff;
    outline-offset: 2px;
  }
}
@media (max-width:700px) {
  :root:not([data-theme=light]) .radar-footer-pane {
    --destination-glass-rim:#55c9f4;
    --destination-glass-reflection:linear-gradient(
        180deg,#c6f3ff29 0,#9fe4ff0b 5px,transparent 22px),radial-gradient(
        ellipse at 8% 0,#8bd9ff24,transparent 58%);
    --destination-glass-shadow:inset 0 1px 1px #e2f8ff85,inset 1px 0 2px #8adcff28,inset 0 -1px 2px #1c729e55,0 0 0 1px #04121d99,0 0 13px #27b9ff22,0 5px 12px #0005;
  }
  :root:not([data-theme=light]) .radar-footer-pane .mobile-search-slide .motus-destination form,
  :root:not([data-theme=light]) .radar-footer-pane .mobile-search-slide > .motus-nearby {
    border-color: var(--destination-glass-rim);
    background:
      var(--destination-glass-reflection),
      linear-gradient(
        115deg,
        #09212eb8,
        #030e17ce);
    box-shadow: var(--destination-glass-shadow);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
  }
  :root:not([data-theme=light]) .radar-footer-pane .mobile-search-slide .motus-shortcuts button {
    border-color: var(--destination-glass-rim);
    background:
      var(--destination-glass-reflection),
      linear-gradient(
        135deg,
        #143546bb,
        #03111dd9);
    box-shadow: var(--destination-glass-shadow);
  }
  :root:not([data-theme=light]) .radar-footer-pane .mobile-search-slide .motus-shortcuts button[aria-pressed=true] {
    border-color: #bcf1ff;
    background:
      var(--destination-glass-reflection),
      linear-gradient(
        135deg,
        #236486b8,
        #062236e6);
    box-shadow: var(--destination-glass-shadow), inset 0 0 20px #3bc7ff30;
  }
  :root:not([data-theme=light]) .radar-footer-pane .mobile-search-slide .modus-destination-row {
    border-color: #76bed6b3;
    background:
      linear-gradient(
        180deg,
        #ddf8ff1c,
        transparent 18px),
      radial-gradient(
        ellipse at 0 0,
        #8fdfff17,
        transparent 65%),
      linear-gradient(
        115deg,
        #16313e66,
        #03111ba6);
    box-shadow:
      inset 0 1px 1px #d1f4ff4d,
      inset 0 -1px 2px #1d638433,
      0 2px 5px #0004;
  }
  :root:not([data-theme=light]) .radar-footer-pane .mobile-search-slide .motus-destination form > button[type=submit] {
    border-color: #ff8495;
    background:
      linear-gradient(
        180deg,
        #ffffff52,
        transparent 7px),
      radial-gradient(
        ellipse at 15% 0,
        #ff9bad55,
        transparent 65%),
      linear-gradient(
        145deg,
        #f21d48,
        #98001f);
    box-shadow:
      inset 0 1px 2px #fff9,
      inset 0 -2px 4px #63051d66,
      0 0 0 1px #fa2a4c55,
      0 0 16px #f41a4660;
  }
  :root:not([data-theme=light]) .radar-footer-pane .mobile-search-slide .modus-save-place {
    border-color: #c6f3ff;
    background:
      linear-gradient(
        180deg,
        #87dfff44,
        transparent 50%),
      #051824;
    box-shadow:
      inset 0 1px 1px #fff8,
      0 0 5px #4dcfff33,
      0 2px 5px #0009;
  }
  :root:not([data-theme=light]) .radar-footer-pane .mobile-search-slide .modus-save-place:is([aria-pressed=true], [data-saved=true]) {
    background:
      linear-gradient(
        180deg,
        #fff5,
        transparent 45%),
      linear-gradient(
        145deg,
        #f3324d,
        #b00926);
    border-color: #fff;
  }
}
@media (max-width:700px) {
  :root:not([data-theme=light]) .is-dashboard .mobile-go-header > button,
  :root:not([data-theme=light]) .is-dashboard .modus-dashboard-destination {
    border-color: #55c9f4;
    background:
      linear-gradient(
        180deg,
        #c6f3ff26,
        transparent 14px),
      radial-gradient(
        ellipse at 12% 0,
        #8bd9ff26,
        transparent 65%),
      linear-gradient(
        120deg,
        #092838bb,
        #03121ed9);
    box-shadow:
      inset 0 1px 1px #dcf7ff70,
      inset 0 -1px 2px #2178a344,
      0 0 8px #27b9ff20,
      0 3px 8px #0005;
  }
}
@media (max-width:700px) {
  :root:not([data-theme=light]) .radar-footer-pane .modus-flip-card .modus-dashboard-instruments > :is(button, div),
  :root:not([data-theme=light]) .radar-footer-pane .modus-dashboard-links > *,
  :root:not([data-theme=light]) .radar-footer-pane .modus-quick-messages,
  :root:not([data-theme=light]) .radar-footer-pane .mobile-communication-dock .audio-footer-controls > button,
  :root:not([data-theme=light]) .radar-footer-pane .tire-speed-strip .modus-destination-audio {
    border-color: var(--destination-glass-rim);
    background:
      var(--destination-glass-reflection),
      linear-gradient(
        115deg,
        #0d3041b8,
        #03121dd9);
    box-shadow: var(--destination-glass-shadow);
  }
  :root:not([data-theme=light]) .radar-footer-pane .modus-quick-messages > div button {
    border-color: #79d7fb;
    background:
      var(--destination-glass-reflection),
      linear-gradient(
        135deg,
        #27536bd2,
        #082333dd);
    box-shadow:
      inset 0 1px 2px #e2f8ff88,
      inset 0 -1px 3px #123e5a77,
      0 0 7px #27b9ff26,
      0 3px 7px #0004;
  }
  :root:not([data-theme=light]) .radar-footer-pane .modus-vertical-gauge {
    border-color: #82e2ff;
    background:
      linear-gradient(
        90deg,
        #c6f3ff26,
        transparent 30%,
        #03131b99 75%),
      linear-gradient(
        90deg,
        #03131bdd,
        #22506c99,
        #00131ddc);
    box-shadow:
      inset 1px 0 2px #d5f6ff99,
      inset -1px 0 3px #061621,
      0 0 8px #27b9ff33,
      0 0 0 2px #02111b66;
  }
  :root:not([data-theme=light]) .radar-footer-pane .mobile-communication-dock .go-ptt:is(.is-idle, .is-listening, .is-ready),
  :root:not([data-theme=light]) .radar-footer-pane .mobile-communication-dock .mobile-primary-action {
    border-color: #ff9baa;
    background:
      linear-gradient(
        180deg,
        #fff5,
        transparent 8px),
      radial-gradient(
        ellipse at 15% 0,
        #ffbbc755,
        transparent 65%),
      linear-gradient(
        135deg,
        #ed2e50ed,
        #b2092df5 60%,
        #7f0a25f5);
    box-shadow:
      inset 0 1px 2px #ffe3e9cc,
      inset 0 -2px 6px #63051d77,
      0 0 0 4px #03131a,
      0 0 0 5px #7dd9fa99,
      0 0 17px #ee20483b;
  }
  :root:not([data-theme=light]) .radar-footer-pane .mobile-communication-dock .go-ptt.is-listening {
    border-color: #fff;
    background:
      linear-gradient(
        180deg,
        #fff6,
        transparent 12px),
      linear-gradient(
        135deg,
        #ff4161,
        #c10832);
    box-shadow:
      inset 0 1px 2px #fff9,
      0 0 0 4px #03131a,
      0 0 0 5px #ffb0bf,
      0 0 22px #ff244b88;
  }
}
:root[data-adventura-native=true][data-go-active=true] .go-shell .motus-destination input {
  font-size: 16px;
}
:root[data-adventura-native=true][data-go-active=true] .go-shell {
  touch-action: pan-x pan-y;
}

/* src/go/light-cockpit.css */
:root[data-theme=light] .go-shell {
  --cockpit:#f1eee8;
  --text:#081b2c;
  --muted:#526779;
  --panel:#fff;
  --panel-hi:#f4f2ee;
  --border:#d8d6d2;
  --blue:#188fc7;
  --green:#00835a;
  --light-glass:linear-gradient(
      145deg,#fff,#fcfbf9);
  --light-glass-shadow:inset 0 1px 2px #fff,0 4px 12px #28313b12;
  --day-red:#ef123d;
  --day-shadow:0 4px 13px #28313b12;
  color: var(--text);
  background: var(--cockpit);
}
:root[data-theme=light] .go-shell::before,
:root[data-theme=light] .go-shell:has(.is-dashboard)::before {
  background-image: none;
  background-color: var(--cockpit);
  filter: none;
  height: 100%;
}
:root[data-theme=light] .go-shell::after,
:root[data-theme=light] .go-shell:has(.is-dashboard)::after {
  background: none;
}
:root[data-theme=light] .go-shell :is(.go-panel, .mobile-instrument-card, .mobile-rider-row, .motus-status-strip, .modus-dashboard-destination, .modus-dashboard-instruments > div, .modus-dashboard-instruments > button, .modus-dashboard-links > *, .modus-quick-messages, .mobile-go-header > button, .mobile-communication-dock .audio-footer-controls > button, .go-destination-dialog, .modus-destination-manager, .ride-roster) {
  color: var(--text);
  background: var(--light-glass);
  border-color: var(--border);
  box-shadow: var(--light-glass-shadow);
  backdrop-filter: none;
}
:root[data-theme=light] .go-shell :is(.dashboard-target-name > svg, .gauge-heading, .gauge-heading strong, .modus-dashboard-destination strong, .modus-dashboard-instruments strong, .modus-quick-messages header > strong, .motus-panel-title > span, .modus-destination-title, .motus-place-row strong) {
  color: var(--text);
  stroke: currentColor;
}
:root[data-theme=light] .go-shell :is(.gauge-heading small, .modus-dashboard-destination small, .modus-dashboard-instruments small, .modus-dashboard-group small, .modus-quick-messages .modus-show-riders, .audio-control-copy strong, .motus-place-row small, .motus-place-row em, .mobile-radar-scale, .motus-course-facts span, .motus-course-progress, .motus-course-progress small) {
  color: var(--muted);
}
:root[data-theme=light] .go-shell .dashboard-target-name > svg {
  fill: none;
  color: #ef123d;
}
:root[data-theme=light] .go-shell .modus-dashboard-destination {
  border-radius: 16px;
}
:root[data-theme=light] .go-shell .modus-dashboard-destination p {
  border-color: #b9c1c7;
}
:root[data-theme=light] .go-shell .mobile-go-header > button:not(.modus-dashboard-destination) {
  border: 1px solid #d8d6d2;
  border-radius: 50%;
  background: linear-gradient(#fff, #faf9f7);
  color: #081b2c;
  box-shadow: 0 3px 10px #28313b16;
}
:root[data-theme=light] .go-shell :is(.radar-ring, .mobile-radar .radar-ring) {
  stroke: #9ca7b0;
  fill: none;
  opacity: 1;
}
:root[data-theme=light] .go-shell :is(.radar-ring.outer, .mobile-radar .radar-ring.outer) {
  stroke: #182c3b;
  fill: var(--cockpit);
  stroke-width: 1.2;
}
:root[data-theme=light] .go-shell :is(.radar-axis, .radar-tick) {
  stroke: #9ca7b0;
  opacity: 1;
}
:root[data-theme=light] .go-shell .radar-tick.is-major {
  stroke: #ef123d;
  stroke-width: 1.7;
}
:root[data-theme=light] .go-shell :is(.radar-cardinal, .radar-degree, .mobile-radar .radar-degree.is-cardinal) {
  fill: #081b2c;
  stroke: none;
  paint-order: normal;
}
:root[data-theme=light] .go-shell .radar-correction-readout text {
  fill: #081b2c;
  stroke: #fff;
  stroke-width: 2px;
  paint-order: stroke;
}
:root[data-theme=light] .go-shell :is(.radar-target text, .radar-rider text, .mobile-radar-target text, .mobile-radar-rider .dashboard-rider-distance) {
  fill: #081b2c;
  stroke: #fff;
  stroke-width: 2px;
}
:root[data-theme=light] .go-shell .radar-initials {
  fill: #fff !important;
  stroke: none !important;
}
:root[data-theme=light] .go-shell .mobile-radar-you circle {
  fill: #fffffff0;
  stroke: #273c4d;
  filter: none;
}
:root[data-theme=light] .go-shell .mobile-radar-you path {
  fill: #ef123d;
  stroke: #fff;
  filter: none;
}
:root[data-theme=light] .go-shell :is(.radar-target circle, .mobile-radar-target circle) {
  fill: #fff;
  stroke: #ef123d;
}
:root[data-theme=light] .go-shell .radar-correction-sector {
  fill: #a9bbc8 !important;
  opacity: .16;
}
:root[data-theme=light] .go-shell :is(.modus-vertical-gauge, .modus-vertical-gauge.is-elevation) {
  background:
    linear-gradient(
      90deg,
      #e3e3e1,
      #fff 50%,
      #e9e8e5);
  border-color: #fff;
  box-shadow:
    inset 0 1px 4px #24374620,
    0 0 0 1px #d8d6d2,
    0 3px 10px #28313b12;
}
:root[data-theme=light] .go-shell .modus-vertical-gauge > i {
  background: linear-gradient(#ff3659, #ed0637);
  box-shadow: 0 0 0 2px #fff, 0 2px 6px #72162b26;
}
:root[data-theme=light] .go-shell :is(.elevation-extreme, .elevation-extreme small, .modus-vertical-gauge > small, .modus-vertical-gauge > b) {
  color: #344a5c;
  text-shadow: none;
}
:root[data-theme=light] .go-shell .is-elevation > svg {
  stroke: #081b2c;
}
:root[data-theme=light] .go-shell .instrument-dial .dial-track {
  stroke: #c9ced2;
}
:root[data-theme=light] .go-shell .instrument-dial .dial-fill {
  stroke: #188fc7;
}
:root[data-theme=light] .go-shell .instrument-dial .lean-rider {
  stroke: #081b2c;
}
:root[data-theme=light] .go-shell .instrument-dial .lean-peak {
  fill: #526779;
}
:root[data-theme=light] .go-shell .lean-racer-icon {
  filter: brightness(0);
}
:root[data-theme=light] .go-shell .modus-speed-instrument > svg:not(.instrument-dial) {
  color: #081b2c;
  stroke: currentColor;
}
:root[data-theme=light] .go-shell :is(.modus-destination-audio, .modus-dashboard-links > *, .modus-quick-messages > div button) {
  background: var(--light-glass);
  border-color: #d8d6d2;
  color: #081b2c;
  box-shadow: var(--light-glass-shadow);
}
:root[data-theme=light] .go-shell .modus-low-energy :is(svg, strong) {
  color: #7b5006;
}
:root[data-theme=light] .go-shell .modus-low-energy > svg {
  animation: none;
}
:root[data-theme=light] .go-shell .tire-instruments > .tire-card {
  background: var(--light-glass);
  border-color: #d8d6d2;
  box-shadow: inset 0 0 0 3px #fff, 0 3px 10px #28313b12;
  color: #081b2c;
}
:root[data-theme=light] .go-shell .tire-instruments .tire-card::after {
  border-color: #becbd2;
  box-shadow: inset 0 0 5px #c5d8df66;
}
:root[data-theme=light] .go-shell .tire-instruments .tire-card :is(.tire-card-value, .tire-card-temperature) {
  color: #081b2c;
}
:root[data-theme=light] .go-shell .tire-instruments .tire-card .tire-pressure-estimate {
  color: #081b2c !important;
}
:root[data-theme=light] .go-shell .tire-card :is(.tire-card-source, .tire-card-estimate) {
  color: #526779;
}
:root[data-theme=light] .go-shell .tire-card .tire-card-due {
  color: #9a5600;
}
:root[data-theme=light] .go-shell .mobile-communication-dock :is(.go-ptt, .mobile-primary-action),
:root[data-theme=light] .go-shell .go-actions .go-primary,
:root[data-theme=light] .go-shell .motus-destination form > button[type=submit] {
  color: #fff;
  border: 1px solid #ff8ca4;
  background:
    linear-gradient(
      165deg,
      #ff718c 0%,
      #f5214a 18%,
      #cf0631 100%);
  box-shadow: inset 0 1px 2px #fff9, 0 4px 12px #d91a3a22;
}
:root[data-theme=light] .go-shell .mobile-communication-dock .audio-footer-controls > button strong {
  color: #081b2c;
}
:root[data-theme=light] .go-shell .mobile-communication-dock .audio-footer-controls > button img {
  filter: none;
  background: #fff;
  border-color: #00a85f;
}
:root[data-theme=light] .go-shell .mobile-communication-dock .audio-footer-controls > button {
  border-color: #d8d6d2;
  box-shadow: var(--light-glass-shadow);
}
:root[data-theme=light] .go-shell .mobile-search-slide > .motus-destination {
  background: transparent;
  box-shadow: none;
  border: 0;
}
:root[data-theme=light] .go-shell :is(.motus-destination form, .motus-shortcuts button, .motus-nearby, .modus-destination-row, .motus-search-results, .modus-home-setup) {
  background: var(--light-glass);
  border-color: #d8d6d2;
  color: #081b2c;
  box-shadow: var(--light-glass-shadow);
  backdrop-filter: none;
}
:root[data-theme=light] .go-shell .motus-destination input {
  color: #081b2c;
  background: transparent;
  text-overflow: ellipsis;
  font-size: 16px;
}
:root[data-theme=light] .go-shell .motus-destination input::placeholder {
  color: #526779;
  opacity: 1;
}
:root[data-theme=light] .go-shell .motus-shortcuts button[aria-pressed=true] {
  background: #fff0f2;
  border-color: #ee506c;
  box-shadow: inset 0 1px 2px #fff, 0 3px 10px #c91c3b12;
}
:root[data-theme=light] .go-shell .motus-shortcuts .destination-shortcut-label {
  color: #081b2c;
}
:root[data-theme=light] .go-shell .modus-destination-list {
  gap: 7px;
}
:root[data-theme=light] .go-shell .modus-destination-row:has(.modus-save-place:is([aria-pressed=true], [data-saved=true])) {
  border-color: #f34d6b;
  background:
    linear-gradient(
      135deg,
      #fff8f8,
      #ffe8ec);
  box-shadow: inset 2px 0 0 #ef123d, 0 3px 10px #c91c3b12;
}
:root[data-theme=light] .go-shell .modus-save-place {
  min-width: 44px;
  min-height: 44px;
  border-color: #fff;
  background: #122936;
  color: #fff;
  box-shadow: 0 2px 5px #28313b33;
}
:root[data-theme=light] .go-shell .modus-save-place:is([aria-pressed=true], [data-saved=true]) {
  background: linear-gradient(#ff3658, #d70732);
  border-color: #fff;
  box-shadow: 0 2px 7px #d91a3a33;
}
:root[data-theme=light] .go-shell .modus-destination-row > .motus-place-row {
  background: transparent;
  box-shadow: none;
  color: #081b2c;
}
:root[data-theme=light] .go-shell :is(.motus-place-row em, .motus-place-row small, .motus-search-results button small) {
  color: #526779;
}
:root[data-theme=light] .go-shell .motus-nearby > .motus-panel-title:before {
  background: #ef123d;
  box-shadow: none;
}
:root[data-theme=light] .go-shell .motus-panel-title > button[aria-label="Refresh nearby places"] {
  min-width: 44px;
  min-height: 44px;
  border: 1px solid #d8d6d2;
  border-radius: 50%;
  color: #1c3446;
  background: var(--light-glass);
  box-shadow: 0 2px 6px #28313b12;
}
:root[data-theme=light] .go-shell :is(.motus-search-results button, .modus-destination-manager button, .modus-home-setup button) {
  color: #081b2c;
  background: #fff;
  border-color: #d8d6d2;
  min-height: 44px;
}
:root[data-theme=light] .go-shell .motus-search-results button:is(:hover, :focus-visible) {
  background: #f4f2ee;
}
:root[data-theme=light] .go-shell :is(.go-destination-dialog input, .go-destination-dialog select) {
  color: #081b2c;
  background: #fff;
  border-color: #c4c5c6;
  color-scheme: light;
}
:root[data-theme=light] .go-shell .modus-destination-manager li {
  border-color: #deddd9;
}
:root[data-theme=light] .go-shell .modus-home-setup .go-primary {
  background: #d70732;
  color: #fff;
  border-color: #f86e88;
}
:root[data-theme=light] .modus-place-preview-backdrop {
  backdrop-filter: none;
  background: #25344355;
}
:root[data-theme=light] .modus-place-preview {
  --text:#081b2c;
  --muted:#526779;
  --border:#d8d6d2;
  background: #fff;
  color: #081b2c;
  border-color: #d8d6d2;
  box-shadow: 0 15px 45px #24374733;
}
:root[data-theme=light] .modus-place-preview :is(button, fieldset) {
  border-color: #d8d6d2;
  color: #081b2c;
}
:root[data-theme=light] .modus-place-preview .go-primary {
  background: linear-gradient(#ff3658, #d70732);
  color: #fff;
}
:root[data-theme=light] .go-messages {
  --message-line:#deddd9;
  --message-muted:#526779;
  --message-text:#081b2c;
  background:
    linear-gradient(
      145deg,
      #fff,
      #faf8f5);
  border: 1px solid #d8d6d2;
  border-radius: 20px;
  color: #081b2c;
  box-shadow: 0 4px 12px #28313b12;
  backdrop-filter: none;
}
:root[data-theme=light] .go-shell .go-messages {
  background:
    linear-gradient(
      145deg,
      #fff,
      #faf8f5);
  color: #081b2c;
  border-color: #d8d6d2;
}
:root[data-theme=light] .go-messages .messages-header {
  border-bottom: 0;
  padding: 10px 12px;
  gap: 8px;
}
:root[data-theme=light] .go-messages .messages-header h2 {
  color: #081b2c;
  font-weight: 800;
}
:root[data-theme=light] .go-messages .messages-header:has([aria-label="New conversation"]) .messages-heading-line:before {
  content: "";
  height: 23px;
  width: 4px;
  flex: none;
  border-radius: 4px;
  background: #ef123d;
  margin-right: 2px;
}
:root[data-theme=light] .go-messages .messages-header > button[aria-label="New conversation"] {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  min-width: 44px;
  padding: 0;
  border-radius: 50%;
  background: linear-gradient(#ff4264, #ec0637);
  color: #fff;
  box-shadow: inset 0 1px 2px #ffb6c5, 0 3px 8px #d91a3a22;
  font-size: 30px;
}
:root[data-theme=light] .go-messages .messages-inbox {
  padding: 0 7px 8px;
}
:root[data-theme=light] .go-messages .messages-inbox-row {
  border: 1px solid #e3e0db;
  border-radius: 15px;
  margin-bottom: 7px;
  background:
    linear-gradient(
      145deg,
      #fff,
      #fcfaf8);
  box-shadow: 0 3px 9px #28313b0f;
}
:root[data-theme=light] .go-messages .messages-inbox-row .messages-open {
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 11px;
  min-height: 100px;
  padding: 12px 98px 12px 9px;
}
:root[data-theme=light] .go-messages .messages-avatar {
  background:
    linear-gradient(
      145deg,
      #f4fbff,
      #d9e8ee);
  color: #365e73;
  border: 2px solid #c2e0e9;
  box-shadow: inset 0 1px 3px #fff, 0 1px 3px #4f869a22;
}
:root[data-theme=light] .go-messages .messages-unread-count {
  border-color: #fff;
  box-shadow: none;
  color: #043a2c;
}
:root[data-theme=light] .go-messages .messages-row-copy > strong {
  color: #081b2c;
  font-size: 17px;
  line-height: 1.2;
}
:root[data-theme=light] .go-messages :is(.messages-row-copy > small, .messages-row-copy > span, .messages-row-status time) {
  color: #526779;
}
:root[data-theme=light] .go-shell .go-messages .messages-row-copy > small {
  color: #526779;
}
:root[data-theme=light] .go-messages .messages-row-options {
  right: 0;
  width: 44px;
  min-width: 44px;
  color: #607787 !important;
  letter-spacing: 0;
}
:root[data-theme=light] .go-messages .messages-inbox-row .messages-audio-toggle {
  right: 44px;
  width: 44px;
  height: 44px;
  color: #081b2c;
  opacity: 1;
}
:root[data-theme=light] .go-messages .messages-inbox-row .messages-audience-badge {
  right: 90px;
}
:root[data-theme=light] .go-shell .go-messages .messages-inbox-row:is([data-audio-muted=true], [data-notifications-muted=true]),
:root[data-theme=light] .go-messages .messages-inbox-row:is([data-audio-muted=true], [data-notifications-muted=true]) {
  background:
    linear-gradient(
      145deg,
      #fff8ee,
      #fff1df);
  border-color: #edb97e;
  box-shadow: 0 3px 9px #9f62300d;
}
:root[data-theme=light] .go-messages .messages-inbox-row[data-audio-muted=true] .messages-audio-toggle,
:root[data-theme=light] .go-shell .go-messages .messages-inbox-row[data-audio-muted=true] .messages-audio-toggle,
:root[data-theme=light] .go-messages .messages-notification-muted,
:root[data-theme=light] .go-shell .go-messages .messages-notification-muted {
  color: #985018;
}
:root[data-theme=light] :is(.messages-dialog, .messages-dialog.messages-create-dialog) {
  --message-line:#deddd9;
  --message-muted:#526779;
  background:
    linear-gradient(
      145deg,
      #fff,
      #faf8f5);
  color: #081b2c;
  border-color: #d8d6d2;
  box-shadow: 0 12px 40px #24374733;
  backdrop-filter: none;
}
:root[data-theme=light] .go-shell :is(.messages-dialog, .messages-dialog.messages-create-dialog) {
  background:
    linear-gradient(
      145deg,
      #fff,
      #faf8f5);
  color: #081b2c;
  border-color: #d8d6d2;
  box-shadow: 0 12px 40px #24374733;
}
:root[data-theme=light] .go-messages :is(.messages-dialog header, .messages-ride-context, .messages-settings, .messages-people label) {
  border-color: #deddd9;
}
:root[data-theme=light] .go-messages :is(.messages-dialog > button, .messages-dialog header button, .messages-empty button, .audience-selector button) {
  background: var(--light-glass,linear-gradient(#fff,#faf9f7));
  color: #081b2c;
  border: 1px solid #d8d6d2;
  box-shadow: inset 0 1px 2px #fff;
}
:root[data-theme=light] .go-messages .audience-selector button[aria-pressed=true] {
  background: #fff0f2;
  color: #9f1230;
  border-color: #ef607b;
}
:root[data-theme=light] .go-messages :is(.messages-dialog input, .messages-dialog textarea, .messages-dialog select, .messages-composer textarea) {
  background: #fff;
  color: #081b2c;
  border: 1px solid #c7c6c2;
  box-shadow: none;
  font-size: 16px;
  color-scheme: light;
}
:root[data-theme=light] .go-messages :is(.messages-dialog p, .messages-dialog small, .messages-empty p) {
  color: #526779;
}
:root[data-theme=light] .go-messages .messages-dialog input::placeholder {
  color: #526779;
}
:root[data-theme=light] .go-messages .messages-create-dialog > .messages-create-submit {
  background: #d70732;
  color: #fff;
  border-color: #ff8ca4;
}
:root[data-theme=light] .go-messages .messages-thread {
  background: var(--cockpit,#f1eee8);
}
:root[data-theme=light] .go-messages .messages-bubble {
  background: linear-gradient(#fff, #fcfbf9);
  color: #081b2c;
  border: 1px solid #deddd9;
  box-shadow: 0 2px 5px #28313b0b;
}
:root[data-theme=light] .go-messages .messages-bubble.is-mine {
  background: linear-gradient(#eef6f2, #e0eee6);
  border-color: #c1d9ce;
}
:root[data-theme=light] .go-messages :is(.messages-bubble small, .messages-bubble time) {
  color: #526779;
}
:root[data-theme=light] .go-messages .messages-composer {
  background: #fff;
  border-color: #deddd9;
  box-shadow: none;
}
:root[data-theme=light] .go-messages .messages-composer textarea {
  border-radius: 22px;
  background: #faf9f7;
  color: #081b2c;
}
:root[data-theme=light] .go-messages .messages-composer textarea::placeholder {
  color: #526779;
}
:root[data-theme=light] .go-messages .messages-composer .message-camera {
  color: #081b2c;
  background: transparent;
}
:root[data-theme=light] .go-messages .messages-composer :is(.message-voice, .message-send) {
  background: linear-gradient(#ff4264, #d80634);
  color: #fff;
  box-shadow: inset 0 1px 2px #ffb6c5, 0 2px 6px #d91a3a22;
}
:root[data-theme=light] .go-messages .message-keyboard-bar {
  background: #fff;
  color: #081b2c;
  border-color: #deddd9;
}
:root[data-theme=light] .go-messages .message-photo-preview {
  background: #f4f2ee;
  color: #081b2c;
}
:root[data-theme=light] .go-messages .messages-error {
  background: #fff0f2;
  color: #9f1733;
  border-color: #edb2bf;
}
:root[data-theme=light] .go-shell :is(button, input, textarea, select):focus-visible,
:root[data-theme=light] .modus-place-preview :is(button, input):focus-visible {
  outline: 2px solid #bd1234;
  outline-offset: 2px;
}
@media (max-width:360px) {
  :root[data-theme=light] .go-messages .messages-inbox-row .messages-open {
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 8px;
    padding-left: 7px;
    padding-right: 94px;
  }
  :root[data-theme=light] .go-messages .messages-row-copy > strong {
    font-size: 16px;
  }
  :root[data-theme=light] .go-messages .messages-row-copy > span {
    font-size: 13px;
  }
}
:root[data-theme=light] .go-shell .is-dashboard .mobile-go-header > .modus-dashboard-destination {
  border-radius: 16px;
  background: var(--light-glass);
  border-color: #d8d6d2;
  box-shadow: var(--light-glass-shadow);
}
:root[data-theme=light] .go-shell .is-dashboard .dashboard-target-name > svg {
  color: #ef123d;
  stroke: #ef123d;
}
:root[data-theme=light] .go-shell .radar-footer-pane .mobile-search-slide > .motus-destination {
  background: transparent;
  border: 0;
  box-shadow: none;
  backdrop-filter: none;
}
:root[data-theme=light] .go-messages .messages-bubble > strong {
  color: #365e73;
}
:root[data-theme=light] .go-shell .messages-dialog :is(button, select, input, textarea) {
  color: #081b2c;
  background: #fff;
  border-color: #d8d6d2;
  min-height: 44px;
  color-scheme: light;
}
:root[data-theme=light] .go-shell .messages-dialog .audience-selector button {
  border: 1px solid #d8d6d2;
  background: linear-gradient(#fff, #faf9f7);
  color: #081b2c;
}
:root[data-theme=light] .go-shell .messages-dialog .audience-selector button[aria-pressed=true] {
  background: #fff0f2;
  border-color: #ef607b;
  color: #9f1230;
}
:root[data-theme=light] .go-shell .messages-dialog .messages-create-submit {
  background: #d70732;
  color: #fff;
  border-color: #ff8ca4;
}
:root[data-theme=light] .go-shell .modus-vertical-gauge > i::after {
  background: #ef123d;
  border: 2px solid #fff;
  box-shadow: 0 1px 5px #72162b33;
}
:root[data-theme=light] .go-shell .go-demo-settings {
  color: #0a2032;
  background:
    linear-gradient(
      135deg,
      #ffffffeb,
      #e7f2fad9);
  border-color: #a8c9df;
  box-shadow: inset 0 1px 1px #fff, 0 5px 16px #365a7312;
}
:root[data-theme=light] .go-shell .go-demo-settings :is(input, select, textarea) {
  color: #0a2032;
  background: #fff;
  border-color: #8db4cf;
  color-scheme: light;
}
:root[data-theme=light] .go-shell .go-demo-settings label {
  color: #0a2032;
}
@media (max-width:700px) {
  :root[data-theme=light] .go-shell .is-dashboard .mobile-go-header {
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    gap: 6px;
  }
  :root[data-theme=light] .go-shell .is-dashboard .mobile-go-header > button:not(.modus-dashboard-destination) {
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
  }
  :root[data-theme=light] .go-shell .radar-footer-pane .mobile-search-slide .motus-destination form > button[aria-label="Clear destination search"] {
    width: 44px;
    min-height: 44px;
  }
}
:root[data-theme=light] .go-shell .messages-dialog :is(p, small, .audience-empty) {
  color: #526779;
}
:root[data-theme=light] .go-shell .messages-dialog .audience-selector button svg {
  color: #00835a;
}
:root[data-theme=light] .go-shell .messages-dialog header button {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 6px;
  border: 1px solid #d8d6d2;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 6px #28313b12;
}
:root[data-theme=light] .go-shell .go-messages .messages-cast-button {
  min-height: 44px;
  border-color: #d8d6d2 !important;
  color: #081b2c;
  background: #fff;
}
:root[data-theme=light] .go-shell .go-messages .messages-cast-preview {
  background: #fff;
  border-color: #deddd9;
  color: #081b2c;
}
@media (max-width:700px) {
  :root[data-theme=light] .go-messages .messages-header:has([aria-label="New conversation"]) h2 {
    font-size: 22px;
  }
  :root[data-theme=light] .go-messages .messages-header:has([aria-label="New conversation"]) .messages-loading {
    flex-basis: 24px;
  }
  :root[data-theme=light] .go-messages .messages-header:has([aria-label="New conversation"]) .messages-loading-text {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }
  :root[data-theme=light] .go-messages .messages-header:has([aria-label="New conversation"]) .messages-loading[data-loading=true]::after {
    content: "\2026";
    font-size: 20px;
  }
}
@media (max-width:360px) {
  :root[data-theme=light] .go-messages .messages-header:has([aria-label="New conversation"]) h2 {
    font-size: 20px;
  }
}

/* src/go/tires.css */
.is-dashboard .modus-dashboard-instruments.tire-instruments {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr) minmax(0, 1fr);
  gap: 6px;
}
.tire-instruments .tire-card {
  padding: 9px 4px;
  gap: 3px;
  min-height: 118px;
  text-align: center;
}
.tire-instruments .tire-card .tire-thermal {
  color: #aed7f5;
  font-size: clamp(16px, 4.8vw, 23px);
  white-space: normal;
  letter-spacing: 0;
}
.tire-instruments .tire-card .tire-estimated {
  font-size: 10px;
  color: var(--muted);
}
.tire-instruments .tire-card .tire-pressure {
  font-size: 15px;
  line-height: 1.3;
  margin-top: 4px;
}
.tire-instruments .tire-card small {
  font-size: 11px;
  white-space: normal;
}
.tire-attention {
  color: #efc47a;
  font-size: 11px;
  line-height: 1.3;
}
.tire-speed-strip {
  display: flex;
  justify-content: flex-end;
  margin: 0 0 5px;
}
.tire-speed-strip .modus-speed-instrument {
  display: flex;
  align-items: baseline;
  gap: 6px;
  padding: 4px 12px;
  border: 1px solid #6494a688;
  border-radius: 12px;
  background: var(--panel, #0e1820);
  color: var(--text);
}
.tire-speed-strip strong {
  font-size: 18px;
}
.tire-speed-strip small,
.tire-speed-strip em {
  font-size: 12px;
  font-style: normal;
}
.tire-sheet {
  box-sizing: border-box;
  color: var(--text, #f1f4f5);
  background: var(--bg, #0e1820);
  border: 1px solid #6494a6;
  border-radius: 22px 22px 0 0;
  width: min(100%, 600px);
  max-width: 100%;
  max-height: 88dvh;
  margin: auto auto 0;
  padding: 0;
  overscroll-behavior: contain;
  box-shadow: 0 -15px 60px #0008;
}
.tire-sheet::backdrop {
  background: #02090ec9;
}
.tire-sheet-body {
  padding: 20px 18px max(24px, env(safe-area-inset-bottom));
  font: inherit;
  line-height: 1.45;
}
.tire-sheet header,
.tire-sheet footer,
.tire-sheet nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.tire-sheet h2 {
  margin: 0;
  font-size: 26px;
}
.tire-sheet h3 {
  margin: 0 0 8px;
}
.tire-sheet p {
  font-size: 14px;
}
.tire-sheet small {
  color: var(--muted, #a9b5be);
}
.tire-sheet button {
  min-height: 44px;
  border: 1px solid #6494a688;
  background: var(--panel, #20303a);
  color: inherit;
  border-radius: 10px;
  padding: 9px 12px;
  font: inherit;
  cursor: pointer;
}
.tire-sheet button:disabled {
  opacity: 0.5;
}
.tire-sheet :focus-visible {
  outline: 3px solid #aed7f5;
  outline-offset: 3px;
}
.tire-sheet nav {
  justify-content: flex-start;
  margin: 16px 0;
}
.tire-sheet nav [aria-pressed=true] {
  border-color: #aed7f5;
  background: #39728955;
}
.tire-summary {
  border-bottom: 1px solid #6494a644;
  padding-bottom: 10px;
}
.tire-summary > strong {
  display: block;
  font-size: 30px;
  color: #aed7f5;
}
.tire-summary > span {
  font-size: 12px;
  color: var(--muted, #a9b5be);
}
.tire-sheet form {
  display: grid;
  gap: 12px;
  margin: 14px 0;
}
.tire-quick {
  padding: 16px;
  border: 1px solid #6494a688;
  border-radius: 16px;
}
.tire-sheet label {
  display: flex;
  flex-direction: column;
  gap: 5px;
  font-size: 13px;
}
.tire-sheet input,
.tire-sheet select {
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
  min-height: 44px;
  font-size: 16px;
  color: inherit;
  background: var(--panel, #20303a);
  border: 1px solid #6494a688;
  border-radius: 8px;
  padding: 9px;
}
.tire-inline {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.tire-sheet .tire-check {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
}
.tire-sheet input[type=checkbox] {
  width: 22px;
  min-height: 22px;
  flex-shrink: 0;
}
.tire-sheet details {
  border-top: 1px solid #6494a644;
  padding: 14px 0;
}
.tire-sheet summary {
  cursor: pointer;
  min-height: 30px;
  font-weight: 600;
}
.tire-sheet fieldset {
  border: 1px solid #6494a655;
  border-radius: 12px;
  display: grid;
  gap: 8px;
}
.tire-patches {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  text-align: center;
}
.tire-patches svg {
  display: block;
  width: 100%;
  height: 90px;
  color: #aed7f5;
}
.tire-sheet [role=alert] {
  color: #efc47a;
}
.tire-sheet a {
  color: inherit;
}
:root[data-theme=light] .tire-thermal,
:root[data-theme=light] .tire-summary > strong {
  color: #225d80;
}
:root[data-theme=light] .tire-attention,
:root[data-theme=light] .tire-sheet [role=alert] {
  color: #835300;
}
@media (max-width: 350px) {
  .tire-instruments .tire-card small {
    font-size: 10px;
  }
  .tire-instruments .tire-card .tire-pressure {
    font-size: 13px;
  }
  .tire-sheet-body {
    padding: 14px;
  }
  .tire-inline {
    gap: 8px;
  }
}
.is-dashboard .modus-dashboard-instruments.tire-instruments > .tire-card {
  height: auto;
  min-height: 118px;
  padding: 8px 3px;
  overflow: visible;
}
.is-dashboard .modus-dashboard-instruments.tire-instruments > .modus-lean-instrument,
.is-dashboard .modus-dashboard-instruments.tire-instruments > .modus-low-energy {
  height: 100%;
  min-height: 118px;
}
:root[data-theme=light] .tire-sheet {
  --text:#0a2032;
  --muted:#49677d;
  --panel:#eff7fc;
  --bg:#eaf3fa;
  color: var(--text);
  background: var(--bg);
}
.tire-comparison {
  display: block;
  margin-top: 4px;
}
.tire-comparison-near {
  color: #78d5af;
}
.tire-comparison-attention {
  color: #efc47a;
}
.tire-comparison-far {
  color: #ff969d;
}
[data-theme=light] .tire-comparison-near {
  color: #176345;
}
[data-theme=light] .tire-comparison-attention {
  color: #805600;
}
[data-theme=light] .tire-comparison-far {
  color: #ab2434;
}
.tire-sheet {
  --tire-ink:#f3f8fb;
  --tire-muted:#9bb8c9;
  --tire-line:#28556c;
  --tire-panel:#071e2a;
  --tire-glass:linear-gradient(
      135deg,#12364499,#03141ee8 65%,#12364460);
  color: var(--tire-ink);
  background:
    linear-gradient(
      135deg,
      #071e29,
      #020e16 65%);
  border-color: #376d86;
  border-radius: 28px 28px 0 0;
  max-height: 92dvh;
  box-shadow: 0 -8px 45px #0009;
}
.tire-sheet-body {
  padding: 20px 20px max(20px, env(safe-area-inset-bottom));
  color: var(--tire-ink);
}
.tire-sheet header {
  position: sticky;
  top: -20px;
  padding: 10px 0 14px;
  z-index: 3;
  background: #061721f5;
  justify-content: flex-start;
}
.tire-sheet h2 {
  font-size: 28px;
  font-weight: 750;
  letter-spacing: -.6px;
}
.tire-sheet header > button:last-child {
  margin-left: auto;
}
.tire-sheet header button {
  width: 44px;
  height: 44px;
  padding: 8px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  background: #061a26;
}
.tire-sheet :is(button, input, select) {
  border-color: var(--tire-line);
  color: var(--tire-ink);
  background: var(--tire-glass);
}
.tire-sheet button {
  touch-action: manipulation;
  min-height: 46px;
  transition: background .15s, border-color .15s;
}
.tire-sheet button:hover:not(:disabled) {
  border-color: #66ceef;
}
.tire-sheet button:active:not(:disabled) {
  filter: brightness(1.15);
}
.tire-sheet nav,
.tire-entry-tabs {
  display: flex;
  gap: 8px;
  margin: 6px 0 14px;
}
.tire-sheet nav button,
.tire-entry-tabs button {
  flex: 1;
  font-size: 17px;
  min-height: 46px;
  border-radius: 13px;
}
.tire-sheet :is(nav, .tire-entry-tabs, .tire-presets) button[aria-pressed=true] {
  background:
    linear-gradient(
      130deg,
      #1b94bd,
      #2385aa 65%,
      #126886);
  box-shadow: inset 0 1px 5px #c0faff88, 0 0 10px #4cc8ff22;
  border-color: #7deaff;
  color: #fff;
}
.tire-art {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  height: 240px;
  --tire-glow:#6f9aaf;
}
.tire-art img {
  position: relative;
  z-index: 1;
  object-fit: contain;
  width: 100%;
  height: 100%;
  user-select: none;
  pointer-events: none;
}
.tire-art::after {
  content: "";
  position: absolute;
  z-index: 2;
  left: 23%;
  right: 23%;
  top: 35%;
  height: 30%;
  border-left: 3px solid var(--tire-glow);
  border-right: 3px solid var(--tire-glow);
  border-radius: 50%;
  filter: drop-shadow(0 0 5px var(--tire-glow));
  opacity: .9;
  pointer-events: none;
}
.tire-art.band-near {
  --tire-glow:#21eb66;
}
.tire-art.band-attention {
  --tire-glow:#ffb84c;
}
.tire-art.band-far {
  --tire-glow:#ff474b;
}
.tire-art.band-neutral::after {
  opacity: .3;
}
.tire-detail-hero {
  display: grid;
  grid-template-columns: 43% minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  margin: 10px 0 16px;
}
.tire-detail-values {
  min-width: 0;
}
.tire-detail-values > svg {
  display: block;
  margin-bottom: 6px;
}
.tire-detail-values > strong {
  font-size: clamp(40px, 12vw, 60px);
  font-weight: 750;
  line-height: 1.15;
  letter-spacing: -1px;
  display: block;
  white-space: nowrap;
}
.tire-detail-values > strong small {
  font-size: 22px;
  letter-spacing: 0;
  font-weight: 500;
  color: var(--tire-ink);
}
.tire-detail-values p {
  margin: 8px 0 3px;
  color: var(--tire-muted);
  line-height: 1.5;
}
.tire-detail-values p b {
  color: var(--tire-ink);
}
.tire-detail-values > small {
  font-size: 12px;
  line-height: 1.5;
  display: block;
  color: var(--tire-muted);
}
.tire-detail-temperature {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 22px;
}
.tire-detail-temperature b {
  font-size: 30px;
}
.tire-health {
  display: flex;
  align-items: center;
  gap: 14px;
  border: 1px solid var(--tire-line);
  border-radius: 16px;
  background: var(--tire-glass);
  padding: 16px;
}
.tire-health > span {
  width: 44px;
  height: 44px;
  border: 1px solid currentColor;
  border-radius: 50%;
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.tire-health.tire-comparison-near > span {
  background: #24ec6b;
  color: #061e14;
  border: none;
}
.tire-health strong {
  display: block;
  font-size: 20px;
}
.tire-health small {
  display: block;
  font-size: 13px;
  margin-top: 4px;
  color: var(--tire-muted);
}
.tire-thermal-note {
  color: var(--tire-muted);
  font-size: 12px !important;
  margin: 8px 0 16px;
}
.tire-log-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.tire-log-actions button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 90px;
  font-size: 17px;
  font-weight: 600;
  border-radius: 15px;
  padding: 14px 6px;
}
.tire-sheet .tire-history-link {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px;
  margin-top: 16px;
  min-height: 60px;
  border-radius: 15px;
  text-align: left;
  font-size: 17px;
}
.tire-history-link > svg:last-child {
  margin-left: auto;
}
.tire-park-note {
  color: var(--tire-muted);
}
.tire-sheet .tire-advanced[hidden] {
  display: none;
}
.tire-sheet .tire-advanced {
  margin-top: 18px;
}
.tire-sheet details > summary {
  font-size: 15px;
  color: var(--tire-muted);
}
.tire-sheet footer {
  margin-top: 18px;
}
.tire-sheet footer button:last-child {
  margin-left: auto;
  min-width: 95px;
}
.tire-sheet .tire-reading-entry {
  gap: 18px;
  margin: 8px 0;
}
.tire-entry-panel {
  padding: 22px 16px;
  border-radius: 28px;
  border: 1px solid var(--tire-line);
  background: var(--tire-glass);
  min-height: 235px;
  text-align: center;
}
.tire-entry-panel p {
  color: var(--tire-muted);
  font-size: 14px;
  margin: 18px 0 6px;
}
.tire-entry-panel small {
  display: block;
  font-size: 11px;
  line-height: 1.5;
  color: var(--tire-muted);
}
.tire-stepper {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr) 54px;
  align-items: center;
  gap: 8px;
}
.tire-sheet .tire-stepper > button {
  border-radius: 50%;
  width: 54px;
  height: 54px;
  padding: 0;
  font-size: 34px;
  background: #031824;
}
.tire-sheet .tire-stepper label {
  display: flex;
  align-items: center;
  gap: 0;
  font-size: 22px;
  color: var(--tire-muted);
}
.tire-sheet .tire-stepper input {
  font-size: clamp(40px, 13vw, 62px);
  text-align: center;
  border: 0;
  background: none;
  padding: 0;
  font-weight: 750;
  line-height: 1.3;
  appearance: textfield;
  min-height: 78px;
  box-shadow: none;
}
.tire-stepper input::-webkit-inner-spin-button,
.tire-stepper input::-webkit-outer-spin-button {
  appearance: none;
  margin: 0;
}
.tire-entry-scale {
  position: relative;
  height: 12px;
  border-radius: 8px;
  margin-top: 25px;
  background:
    linear-gradient(
      90deg,
      #f34849 0 var(--band-a),
      #ffb452 var(--band-a) var(--band-b),
      #21e86a var(--band-b) var(--band-c),
      #ffb452 var(--band-c) var(--band-d),
      #f34849 var(--band-d) 100%);
}
.tire-entry-scale i {
  position: absolute;
  top: -7px;
  width: 7px;
  height: 26px;
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 0 10px #eaffff88;
  transform: translateX(-50%);
}
.tire-scale-ticks {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  margin-top: 9px;
  color: var(--tire-muted);
}
.tire-presets > span {
  display: block;
  font-size: 15px;
  margin-bottom: 10px;
}
.tire-presets > div {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.tire-presets button {
  font-size: 19px;
  padding: 12px 3px;
  border-radius: 13px;
  min-width: 0;
}
.tire-reading-entry > small {
  color: var(--tire-muted);
  font-size: 12px;
  line-height: 1.5;
}
.tire-sheet .tire-save {
  font-size: 21px;
  font-weight: 650;
  min-height: 58px;
  border-color: #63e9ff;
  border-radius: 15px;
  background: linear-gradient(#1aa6fb, #087ac4);
  color: #fff;
  margin-top: 8px;
}
.is-dashboard .modus-dashboard-instruments.tire-instruments > .tire-card {
  height: 108px;
  min-height: 108px;
  padding: 4px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0;
  overflow: hidden;
  border-color: #346f89;
  background:
    linear-gradient(
      135deg,
      #0e2b3a99,
      #02121b);
}
.tire-card .tire-art.is-small {
  height: 35px;
  width: 48px;
  flex-shrink: 0;
}
.tire-art.is-small::after {
  border-width: 2px;
  left: 24%;
  right: 24%;
  top: 22%;
  height: 55%;
}
.tire-instruments .tire-card .tire-card-value {
  font-size: 20px !important;
  line-height: 23px;
  white-space: nowrap;
  color: #f3f8fb;
}
.tire-instruments .tire-card small {
  font-size: 11px;
  line-height: 13px;
  margin: 0;
}
.tire-card-name {
  display: flex;
  align-items: center;
  gap: 2px;
  font-size: 12px;
  line-height: 15px;
}
.tire-card-status {
  font-size: 10px;
  line-height: 13px;
  font-weight: 600;
}
.is-dashboard .modus-dashboard-instruments.tire-instruments > .modus-lean-instrument,
.is-dashboard .modus-dashboard-instruments.tire-instruments > .modus-low-energy {
  min-height: 108px;
}
:root[data-theme=light] .tire-sheet {
  --tire-ink:#0a2032;
  --tire-muted:#49677d;
  --tire-line:#92bad2;
  --tire-panel:#edf6fc;
  --tire-glass:linear-gradient(
      135deg,#fff,#e4f0f8);
  background: #edf6fc;
}
.tire-sheet button:focus-visible {
  outline: 2px solid #7deaff;
  outline-offset: 2px;
}
:root[data-theme=light] .tire-sheet header {
  background: #edf6fcf5;
}
:root[data-theme=light] .tire-sheet header button,
:root[data-theme=light] .tire-sheet .tire-stepper > button {
  background: #edf6fc;
}
:root[data-theme=light] .tire-instruments .tire-card {
  background:
    linear-gradient(
      135deg,
      #fff,
      #e5f1fa);
}
:root[data-theme=light] .tire-instruments .tire-card .tire-card-value {
  color: #0a2032;
}
@media (max-width:350px) {
  .tire-sheet-body {
    padding: 16px 12px 20px;
  }
  .tire-detail-hero {
    gap: 8px;
    grid-template-columns: 40% minmax(0, 1fr);
  }
  .tire-detail-hero .tire-art {
    height: 200px;
  }
  .tire-detail-values > strong {
    font-size: 40px;
  }
  .tire-detail-values > strong small {
    font-size: 18px;
  }
  .tire-log-actions button {
    font-size: 15px;
  }
  .tire-stepper {
    grid-template-columns: 44px minmax(0, 1fr) 44px;
  }
  .tire-sheet .tire-stepper > button {
    width: 44px;
    height: 44px;
  }
  .tire-instruments .tire-card .tire-card-value {
    font-size: 18px !important;
  }
}
@media (prefers-reduced-motion:reduce) {
  .tire-sheet button {
    transition: none;
  }
}
.tire-art::before,
.tire-art::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 36%;
  height: 30%;
  width: 3px;
  left: 26%;
  right: auto;
  border: 0;
  border-radius: 50%;
  background: var(--tire-glow);
  box-shadow: 0 0 9px var(--tire-glow);
  filter: none;
  opacity: .85;
  pointer-events: none;
}
.tire-art::after {
  left: auto;
  right: 26%;
}
.tire-art.band-neutral::before,
.tire-art.band-neutral::after {
  opacity: .25;
}
.tire-art.is-small::before,
.tire-art.is-small::after {
  top: 20%;
  height: 60%;
  width: 2px;
  left: 29%;
  right: auto;
  border: 0;
}
.tire-art.is-small::after {
  left: auto;
  right: 29%;
}
.tire-sheet .tire-presets button[aria-pressed=true] {
  background:
    linear-gradient(
      130deg,
      #1b94bd,
      #2385aa 65%,
      #126886);
  border-color: #7deaff;
  color: #fff;
}
.tire-sheet .tire-reading-entry {
  gap: 14px;
}
.tire-entry-panel {
  padding-top: 16px;
  padding-bottom: 16px;
  min-height: 225px;
}
.tire-sheet details {
  scroll-margin-top: 78px;
}
.tire-stacked-entry {
  display: grid;
  gap: 20px;
}
.tire-stacked-entry .tire-reading-entry {
  gap: 9px;
}
.tire-stacked-entry h3 {
  margin: 0;
  font-size: 19px;
}
.tire-stacked-entry .tire-entry-panel {
  min-height: 0;
  padding: 14px;
}
.tire-stacked-entry .tire-presets > span {
  display: none;
}
.tire-stacked-entry .tire-presets button {
  padding: 8px 3px;
}
.tire-stacked-entry .tire-reading-entry > small {
  font-size: 11px;
}
.tire-autosave-note {
  color: var(--tire-muted);
  text-align: center;
}
.tire-entry-footer {
  display: flex;
  gap: 12px;
  margin-top: 16px;
}
.tire-entry-footer button {
  flex: 1;
}
.is-dashboard .modus-dashboard-instruments.tire-instruments > .tire-card {
  position: relative;
  gap: 1px;
}
.tire-card .tire-art.is-small {
  height: 23px;
  width: 35px;
}
.tire-instruments .tire-card .tire-card-value {
  font-size: 27px !important;
  line-height: 28px !important;
  letter-spacing: -.7px;
}
.tire-instruments .tire-card .tire-card-temperature {
  font-size: 23px !important;
  line-height: 24px !important;
  color: var(--text,#f3f8fb);
}
.tire-instruments .tire-card :is(.tire-card-value, .tire-card-temperature) small {
  font-size: 11px;
  letter-spacing: 0;
}
.tire-instruments .tire-card .tire-card-source,
.tire-card-estimate {
  font-size: 9px !important;
  line-height: 11px !important;
  white-space: nowrap;
}
.tire-card-due {
  position: absolute;
  right: 5px;
  top: 3px;
  color: #efc47a;
  font-weight: 800;
}
@media (max-width:350px) {
  .tire-instruments .tire-card .tire-card-value {
    font-size: 23px !important;
  }
  .tire-instruments .tire-card .tire-card-temperature {
    font-size: 21px !important;
  }
}
.is-dashboard .modus-dashboard-instruments.tire-instruments > .tire-card {
  padding: 8px 5px;
  min-height: 132px;
  height: 132px;
  isolation: isolate;
}
.tire-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 3px solid #38bfff;
  border-radius: inherit;
  box-shadow: inset 0 0 16px #38bfff99, 0 0 9px #38bfff;
  opacity: var(--cold-emphasis,0);
  pointer-events: none;
  transition: opacity 1s ease;
}
.tire-card .tire-art.is-small {
  position: absolute;
  width: 42px;
  height: 98px;
  top: 5px;
  opacity: .95;
  z-index: -1;
}
.tire-card-front .tire-art.is-small {
  right: -4px;
}
.tire-card-rear .tire-art.is-small {
  left: -4px;
}
.tire-card-front :is(.tire-card-value, .tire-card-temperature) {
  align-self: flex-start;
}
.tire-card-rear :is(.tire-card-value, .tire-card-temperature) {
  align-self: flex-end;
}
.tire-card .tire-art::before,
.tire-card .tire-art::after {
  display: none;
}
.tire-card .tire-card-source {
  margin-top: 8px !important;
}
.tire-condition-choices {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 14px;
}
.tire-sheet .tire-condition-choices button {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  padding: 8px 14px;
  border: 2px solid #52626b;
  border-radius: 18px;
  background: #142c3b;
  color: #b8d5e5;
  min-height: 104px;
}
.tire-condition-choices .tire-art {
  height: 88px;
  grid-row: 1/3;
}
.tire-condition-choices .tire-art::before,
.tire-condition-choices .tire-art::after {
  display: none;
}
.tire-condition-choices span {
  font-size: 28px;
}
.tire-condition-choices b {
  font-size: 16px;
}
.tire-sheet .tire-condition-cold {
  color: #75d6ff;
  background:
    radial-gradient(
      ellipse at bottom,
      #126ba8,
      #112737);
}
.tire-sheet .tire-condition-warm {
  color: #f2c28d;
  background:
    radial-gradient(
      ellipse at bottom,
      #785333,
      #282522);
}
.tire-sheet .tire-condition-cold[aria-pressed=true] {
  border-color: #58ccff;
  box-shadow: inset 0 0 18px #38bfff66;
}
.tire-sheet .tire-condition-warm[aria-pressed=true] {
  border-color: #edb77c;
  box-shadow: inset 0 0 18px #edb77c55;
}
.tire-sheet .tire-use-ambient {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 16px;
  margin-top: 14px;
  border: 1px solid #4fadc9;
  border-radius: 14px;
  background: #164257;
  color: #edfaff;
  font-size: 16px;
}
.tire-use-ambient strong {
  white-space: nowrap;
}
.tire-use-ambient[aria-pressed=true] {
  outline: 2px solid #63d6ff;
}
@media (prefers-reduced-motion:reduce) {
  .tire-card::after {
    transition: none;
  }
}
.tire-card .tire-art.is-small img {
  width: 210%;
  max-width: none;
  height: 100%;
  object-fit: contain;
}
.tire-sheet .tire-condition-choices .tire-condition-cold {
  color: #75d6ff;
  background:
    radial-gradient(
      ellipse at bottom,
      #126ba8,
      #112737);
}
.tire-sheet .tire-condition-choices .tire-condition-warm {
  color: #f2c28d;
  background:
    radial-gradient(
      ellipse at bottom,
      #785333,
      #282522);
}
.tire-condition-cold .tire-art img {
  filter: drop-shadow(0 0 6px #48caff);
}
.tire-condition-warm .tire-art img {
  filter: drop-shadow(0 0 6px #edb77c);
}
@media (max-width:350px) {
  .tire-card .tire-art.is-small {
    width: 30px;
    height: 90px;
    top: 10px;
  }
}
.tire-card-front .tire-art img {
  transform: scaleX(-1);
}
.tire-instruments .tire-card .tire-card-value.tire-pressure-estimate {
  color: #c6afff !important;
}
:root[data-theme=light] .tire-instruments .tire-card .tire-card-value.tire-pressure-estimate {
  color: #7350b5 !important;
}
.tire-card .tire-pressure-bar {
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 9px;
  height: 8px;
  border-radius: 3px;
  background: var(--pressure-bar-color);
  box-shadow: 0 0 7px color-mix(in srgb, var(--pressure-bar-color) 65%, transparent);
  transition: background-color .25s ease, box-shadow .25s ease;
  pointer-events: none;
}
.tire-card .tire-pressure-bar.band-neutral {
  box-shadow: none;
  opacity: .55;
}
@media (prefers-reduced-motion:reduce) {
  .tire-card .tire-pressure-bar {
    transition: none;
  }
}
.tire-study-inputs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin: 20px 0;
}
.tire-study-inputs input {
  width: 100%;
  box-sizing: border-box;
  min-height: 72px;
  font-size: 32px !important;
  text-align: center;
}
.tire-sheet .tire-study-record {
  width: 100%;
  min-height: 54px;
  background: #176984;
  color: #fff;
  font-size: 18px;
  margin-bottom: 12px;
}
.tire-cooldown-study ul {
  padding-left: 20px;
  line-height: 1.8;
}
.tire-entry-footer {
  flex-wrap: wrap;
}
.tire-card .tire-pressure-bar.band-far,
.tire-card .tire-pressure-bar.band-attention {
  opacity: 1;
}
.tire-sheet [hidden] {
  display: none !important;
}
.tire-sheet {
  --tire-line:#4097b7;
  --tire-muted:#afcedd;
  --tire-glass:linear-gradient(
      155deg,#27546a99 0%,#082333ed 30%,#03131ff5 72%,#16445a99 100%);
  border-color: #53d8ff;
  background:
    radial-gradient(
      ellipse at 0 0,
      #174760 0,
      transparent 58%),
    linear-gradient(
      150deg,
      #071f2c,
      #020e17);
  box-shadow:
    inset 0 2px 2px #c1f7ff99,
    inset 0 0 22px #22b8ed25,
    0 -6px 28px #009cdb22,
    0 -16px 48px #0009;
}
.tire-sheet header {
  background:
    linear-gradient(
      100deg,
      #10354af5,
      #03131ff5);
  border-bottom: 1px solid #53d8ff66;
  border-radius: 14px 14px 0 0;
  padding: 10px 8px 14px;
}
.tire-sheet header button {
  border-color: #70e0ff;
  box-shadow: inset 0 2px 3px #c1f7ff66, 0 0 9px #27c2ff33;
}
.tire-sheet :is(nav button, .tire-presets button, .tire-entry-footer button) {
  box-shadow: inset 0 2px 3px #b4edff55, inset 0 -1px 2px #02101bcc;
  border-color: #4097b7;
}
.tire-sheet :is(nav, .tire-presets) button[aria-pressed=true] {
  background:
    linear-gradient(
      155deg,
      #65dfff 0%,
      #149bd1 22%,
      #08618d 78%,
      #168fbd);
  border-color: #9aefff;
  box-shadow:
    inset 0 2px 4px #e4ffffaa,
    inset 0 -2px 4px #03496c,
    0 0 12px #20bfff44;
}
.tire-sheet .tire-entry-panel {
  border-color: #45b1d5;
  box-shadow:
    inset 0 2px 4px #b5eeff66,
    inset 0 0 18px #0089c525,
    0 0 10px #00a6d51a;
}
.tire-sheet .tire-stepper > button {
  background:
    linear-gradient(
      150deg,
      #28566c,
      #072536 45%,
      #03131f);
  border-color: #56c6eb;
  box-shadow: inset 0 2px 3px #b5eeff66, 0 0 8px #0aa8df22;
  color: #edfbff;
}
.tire-sheet .tire-stepper input {
  color: #f3fcff;
  text-shadow: 0 0 16px #32c4ff33;
}
.tire-sheet .tire-stepper input::placeholder {
  color: #afcedd;
  opacity: 1;
}
.tire-sheet .tire-entry-scale {
  box-shadow: inset 0 1px 2px #fff7, 0 0 7px #22d69333;
}
.tire-sheet .tire-condition-choices .tire-condition-cold {
  border-color: #399ed0;
  color: #a0e6ff;
  background:
    linear-gradient(
      155deg,
      #5ac8f244,
      transparent 35%),
    radial-gradient(
      ellipse at bottom,
      #087dc0,
      #072339 85%);
  box-shadow: inset 0 2px 3px #c1f7ff66;
}
.tire-sheet .tire-condition-choices .tire-condition-warm {
  border-color: #b78148;
  color: #ffcf8f;
  background:
    linear-gradient(
      155deg,
      #ffd18f44,
      transparent 35%),
    radial-gradient(
      ellipse at bottom,
      #9f6025,
      #302016 85%);
  box-shadow: inset 0 2px 3px #ffe3ae66;
}
.tire-sheet .tire-condition-choices .tire-condition-cold[aria-pressed=true] {
  border-color: #84e8ff;
  box-shadow:
    inset 0 2px 4px #e0ffffaa,
    inset 0 0 14px #38bfff66,
    0 0 10px #19b9ff44;
}
.tire-sheet .tire-condition-choices .tire-condition-warm[aria-pressed=true] {
  border-color: #ffd08a;
  box-shadow:
    inset 0 2px 4px #fff0c6aa,
    inset 0 0 14px #e8a24c66,
    0 0 10px #f6a33744;
}
.tire-sheet .tire-use-ambient {
  background:
    linear-gradient(
      155deg,
      #216a87,
      #0a344a 65%,
      #14516a);
  border-color: #53c8ed;
  box-shadow: inset 0 2px 3px #b5eeff66;
}
.tire-sheet .tire-entry-footer .tire-unit-switch {
  white-space: nowrap;
  border-color: #83e6ff;
  background:
    linear-gradient(
      155deg,
      #258fba,
      #075b83 65%,
      #123e54);
  font-weight: 700;
  color: #f3fcff;
}
:root[data-theme=light] .tire-sheet {
  --tire-muted:#365e73;
  --tire-line:#4390b0;
  --tire-glass:linear-gradient(
      155deg,#fff,#d9eef8 65%,#bce5f5);
  background:
    linear-gradient(
      150deg,
      #edfaff,
      #d3eaf5);
  border-color: #2586ae;
  box-shadow: inset 0 2px 3px #fff, 0 -8px 30px #143f5a33;
}
:root[data-theme=light] .tire-sheet header {
  background:
    linear-gradient(
      100deg,
      #e5f6ff,
      #d4ebf6);
}
:root[data-theme=light] .tire-sheet .tire-stepper > button {
  background: linear-gradient(#fff, #cce7f5);
  color: #123e54;
}
:root[data-theme=light] .tire-sheet .tire-stepper input {
  color: #123e54;
  text-shadow: none;
}
:root[data-theme=light] .tire-sheet .tire-stepper input::placeholder {
  color: #49677d;
}
:root[data-theme=light] .tire-sheet header > button:last-child {
  background: linear-gradient(#fff, #cce7f5);
  color: #123e54;
}
.tire-wet-caution {
  color: #ffd36b;
  font-weight: 700;
  margin-right: auto;
  padding: .35rem .6rem;
  border-bottom: 2px solid #ffd36b;
  font-size: .85rem;
}
.tire-rain-controls {
  margin: .8rem 0;
  display: grid;
  gap: .4rem;
}
.tire-rain-controls > div {
  display: flex;
  gap: .4rem;
  flex-wrap: wrap;
}
.tire-rain-controls button {
  flex: 1;
  min-height: 44px;
}
.tire-rain-controls button[aria-pressed=true] {
  border-color: #ffd36b;
  background: #493b22;
  color: #fff;
}
.tire-rain-controls small {
  opacity: .75;
}
.tire-study-conditions {
  display: flex;
  gap: 8px;
  margin: 12px 0 6px;
}
.tire-study-conditions button {
  flex: 1;
  min-height: 52px;
}
.tire-cooldown-study [role=group] button[aria-pressed=true] {
  background: #125d78;
  border-color: #a0edff;
  outline: 2px solid #a0edff;
  outline-offset: -3px;
  color: #fff;
}
.tire-study-graphs {
  margin: 20px 0;
  color: var(--text,#edf7ff);
}
.tire-study-graphs h3 {
  margin: 0 0 10px;
  font-size: 18px;
}
.tire-study-chart {
  margin: 0 0 18px;
  padding: 12px 0;
  border-top: 1px solid #718ca655;
}
.tire-study-chart figcaption {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
  font-size: 14px;
}
.tire-study-chart figcaption strong {
  font-size: 18px;
}
.tire-study-chart svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}
.tire-study-chart svg text {
  fill: currentColor;
  font: 11px system-ui, sans-serif;
}
.tire-study-chart .study-grid {
  stroke: currentColor;
  opacity: .15;
}
.tire-study-chart .study-ambient {
  stroke: currentColor;
  stroke-dasharray: 2 4;
  opacity: .4;
}
.tire-study-chart path {
  fill: none;
  stroke-width: 2.5;
  vector-effect: non-scaling-stroke;
}
.tire-study-chart .study-estimate {
  stroke: #c9a8ff;
  stroke-dasharray: 6 5;
}
.tire-study-chart .study-fit {
  stroke: #ffbf69;
}
.tire-study-chart .study-reading {
  fill: #68dcff;
  stroke: #102c40;
  stroke-width: 1.5;
}
.tire-chart-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin: 4px 0 8px;
  font-size: 13px;
}
.tire-chart-legend span {
  display: flex;
  align-items: center;
  gap: 5px;
}
.tire-chart-legend span::before {
  content: "";
  width: 18px;
  border-top: 3px solid #ffbf69;
}
.tire-chart-legend .legend-estimate::before {
  border-color: #c9a8ff;
  border-top-style: dashed;
}
.tire-chart-legend .legend-reading::before {
  width: 7px;
  height: 7px;
  border: 0;
  border-radius: 50%;
  background: #68dcff;
}
.tire-study-chart small {
  display: block;
  margin-top: 4px;
}
.tire-study-chart-empty {
  font-size: 14px;
  margin: 12px 0;
}
.tire-study-graphs details {
  font-size: 13px;
  line-height: 1.5;
}
[data-theme=light] .tire-study-chart .study-estimate {
  stroke: #7446a6;
}
[data-theme=light] .tire-study-chart .study-fit {
  stroke: #aa5700;
}
[data-theme=light] .tire-study-chart .study-reading {
  fill: #007f9e;
  stroke: #fff;
}
[data-theme=light] .legend-estimate::before {
  border-color: #7446a6;
}
[data-theme=light] .legend-fit::before {
  border-color: #aa5700;
}
[data-theme=light] .legend-reading::before {
  background: #007f9e;
}

/* src/go/web-go.css */
.focused-observer-shell.go-shell {
  height: auto;
  min-height: 100dvh;
  overflow: visible;
  background: var(--bg,#06141b);
  color: var(--text,#f4f7f8);
}
.focused-observer-shell::before,
.focused-observer-shell::after {
  display: none;
}
@media (max-width:700px) {
  .desktop-introduction.go-shell {
    height: auto;
    overflow: visible;
    background: #061116;
  }
  .desktop-introduction > .go-landing {
    display: block;
    position: relative;
    color: #f4f7f8;
    background: #061116;
  }
  .go-landing-hero {
    padding: 32px 20px;
    background: linear-gradient(#06111688, #061116), var(--landing-art) 60% top/auto 480px no-repeat;
  }
  .go-landing h1 {
    font-size: 54px;
    color: #f4f7f8;
    margin: 0 0 16px;
  }
  .go-landing h1 em {
    color: #ff122e;
  }
  .go-landing h2 {
    font-size: 26px;
    color: #f4f7f8;
    line-height: 1.25;
  }
  .go-landing-description {
    line-height: 1.6;
    color: #d0dce6;
  }
  .go-store-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
  }
  .go-store-badges > div {
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid #849aa9;
    border-radius: 10px;
    padding: 10px;
  }
  .go-store-badges span {
    display: grid;
  }
  .go-landing-links {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 24px;
  }
  .go-landing-links button {
    color: #d7eeff;
    border: 0;
    background: none;
    padding: 8px 0;
    text-decoration: underline;
  }
  .go-landing-preview-note {
    font-size: 12px;
    color: #afc2d0;
    line-height: 1.5;
  }
  .go-landing-manifesto,
  .go-art-caption {
    display: none;
  }
  .go-landing-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 20px;
    gap: 24px;
  }
  .go-landing-features h3 {
    color: #f4f7f8;
    font-size: 17px;
  }
  .go-landing-features p {
    color: #c0cfdc;
    font-size: 14px;
    line-height: 1.5;
  }
  .go-landing-footer {
    padding: 20px;
  }
  .go-landing-footer > img {
    width: 180px;
    margin-top: 24px;
  }
  .go-landing-road {
    display: none;
  }
}
