.founder-link {
  min-height: 44px;
  padding: 0 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: 1px solid rgba(255, 255, 255, .5);
  border-radius: 12px;
  background: rgba(17, 24, 39, .22);
  color: var(--white,#fffefa);
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color 160ms, scale 160ms;
}
.founder-link:hover { background: rgba(255, 255, 255, .2); }
.founder-link:active { scale: .96; }
.founder-link__icon { width: 14px; height: 14px; flex: 0 0 auto; }

.route-dock__share {
  min-height: 52px;
  padding: 0 15px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid rgba(17, 24, 39, 0.13);
  border-radius: 13px;
  background: var(--paper,#fff9ed);
  color: var(--ink,#111827);
  font-weight: 750;
  transition: background-color 160ms, scale 160ms;
}
.route-dock__share:hover { background: var(--sky,#dce8ff); }
.route-dock__share:active { scale: .96; }
.route-dock__share svg { width: 18px; height: 18px; flex: 0 0 auto; }

.growth-toast {
  position: fixed;
  z-index: 90;
  left: 50%;
  bottom: max(24px, env(safe-area-inset-bottom));
  max-width: min(90vw, 440px);
  padding: 12px 16px;
  border-radius: 13px;
  background: var(--ink,#111827);
  box-shadow: 0 18px 44px rgba(17, 24, 39, .18);
  color: var(--white,#fffefa);
  font-size: 13px;
  font-weight: 750;
  opacity: 0;
  pointer-events: none;
  translate: -50% 12px;
  transition: opacity 180ms, translate 180ms;
}
.growth-toast[data-visible="true"] { opacity: 1; translate: -50% 0; }

.growth-feedback {
  position: fixed;
  z-index: 80;
  right: max(18px, env(safe-area-inset-right));
  bottom: calc(max(88px, env(safe-area-inset-bottom) + 88px));
  width: min(420px, calc(100vw - 36px));
  padding: 16px;
  border: 1px solid rgba(17, 24, 39, .13);
  border-radius: 18px;
  background: var(--white,#fffefa);
  box-shadow: 0 18px 44px rgba(17, 24, 39, .14);
  color: var(--ink,#111827);
  opacity: 0;
  pointer-events: none;
  translate: 0 10px;
  transition: opacity 180ms, translate 180ms;
}
.growth-feedback[data-visible="true"] {
  opacity: 1;
  pointer-events: auto;
  translate: 0 0;
}
.growth-feedback strong { display: block; font-size: 14px; font-weight: 850; }
.growth-feedback__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.growth-feedback__actions button {
  min-height: 42px;
  padding: 0 13px;
  border: 1px solid rgba(17, 24, 39, .13);
  border-radius: 11px;
  background: var(--paper,#fff9ed);
  color: var(--ink,#111827);
  font-size: 12px;
  font-weight: 750;
}
.growth-feedback__actions button:hover { border-color: rgba(17, 24, 39, .3); }
.growth-feedback__actions button:first-child { background: var(--mint,#b8f2d0); }
.growth-feedback__share {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-left: auto;
  background: var(--sky,#dce8ff)!important;
}
.growth-feedback__share svg { width: 16px; height: 16px; }

.growth-shared-banner {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 18px;
  padding: 14px 16px;
  border: 1px solid rgba(17, 24, 39, .13);
  border-left: 5px solid var(--cobalt,#315cff);
  border-radius: 15px;
  background: var(--sky,#dce8ff);
  color: var(--ink,#111827);
  font-size: 13px;
  font-weight: 700;
}
.growth-shared-banner__text { flex: 1; }
.growth-shared-banner button {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border: 0;
  border-radius: 10px;
  background: rgba(255, 255, 255, .62);
  color: var(--ink,#111827);
  font-size: 22px;
}

@media (max-width: 46rem) {
  .topbar { gap: 10px; }
  .top-actions { gap: 6px; }
  .founder-link {
    width: 44px;
    min-height: 44px;
    padding: 0;
    background: rgba(17, 24, 39, .28);
  }
  .founder-link span {
    position: absolute!important;
    width: 1px!important;
    height: 1px!important;
    overflow: hidden!important;
    clip: rect(0, 0, 0, 0)!important;
    white-space: nowrap!important;
  }
  .founder-link__icon { width: 17px; height: 17px; }
  .language-picker::after { right: 11px; }
  .language-picker select {
    min-width: 56px;
    min-height: 44px;
    padding: 0 27px 0 10px;
  }
  .route-dock__share {
    width: 52px;
    flex: 0 0 52px;
    padding: 0;
  }
  .route-dock__share-label {
    position: absolute!important;
    width: 1px!important;
    height: 1px!important;
    overflow: hidden!important;
    clip: rect(0, 0, 0, 0)!important;
    white-space: nowrap!important;
  }
  .growth-feedback {
    right: max(10px, env(safe-area-inset-right));
    left: max(10px, env(safe-area-inset-left));
    width: auto;
    bottom: calc(max(82px, env(safe-area-inset-bottom) + 82px));
  }
  .growth-feedback__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .growth-feedback__share {
    grid-column: 1 / -1;
    margin-left: 0;
    justify-content: center;
  }
  .growth-shared-banner { margin-top: 0; }
}

@media (max-width: 23rem) {
  .founder-link { width: 42px; min-height: 42px; }
}

@media print {
  .founder-link,
  .growth-feedback,
  .growth-toast,
  .growth-shared-banner,
  .route-dock__share { display: none!important; }
}

@media (prefers-reduced-motion: reduce) {
  .founder-link,
  .growth-feedback,
  .growth-toast,
  .route-dock__share { transition-duration: .01ms!important; }
}
