/* ============ Legal & support document pages ============
   Delightful Florida Recreation — Delight Florida Boating
   Loaded after style.css. Adds only document-page typography;
   does not override any existing site rule.
   ======================================================== */

.legal-hero {
  background: linear-gradient(160deg, var(--deep) 0%, var(--deep-2) 100%);
  color: #fff;
  padding: 4.5rem 0 3rem;
}
.legal-hero h1 {
  font-family: var(--serif);
  font-size: clamp(2rem, 4.5vw, 3rem);
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: -0.01em;
}
.legal-hero .legal-hero__meta {
  margin-top: 1rem;
  font-size: 0.95rem;
  color: rgba(255, 255, 255, 0.78);
}
.legal-hero .legal-hero__meta strong { color: #fff; font-weight: 600; }

.legal-doc {
  max-width: 760px;
  margin: 0 auto;
  padding: 3rem 1.25rem 4.5rem;
}
.legal-doc > p:first-of-type { font-size: 1.075rem; color: var(--ink-2); }

.legal-doc h2 {
  font-family: var(--serif);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.25;
  margin: 2.75rem 0 0.85rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--line);
  color: var(--ink);
}
.legal-doc h2:first-of-type { border-top: 0; padding-top: 0; margin-top: 1.5rem; }

.legal-doc h3 {
  font-size: 1.05rem;
  font-weight: 700;
  margin: 1.75rem 0 0.5rem;
  color: var(--ink);
}

.legal-doc p { margin: 0 0 1rem; color: var(--ink-2); }
.legal-doc ul { margin: 0 0 1.25rem 1.25rem; color: var(--ink-2); }
.legal-doc li { margin: 0 0 0.55rem; }
.legal-doc a { color: var(--deep); text-decoration: underline; text-underline-offset: 2px; }
.legal-doc a:hover { color: var(--hi-orange); }
.legal-doc strong { color: var(--ink); font-weight: 600; }

/* Callout for the safety / non-navigational notice */
.legal-note {
  border-left: 4px solid var(--hi-orange);
  background: #fff;
  border-radius: var(--radius-sm);
  padding: 1.1rem 1.25rem;
  margin: 1.75rem 0;
  box-shadow: var(--shadow-sm);
}
.legal-note p:last-child { margin-bottom: 0; }
.legal-note strong { color: var(--ink); }

/* Plain summary table (data collection / subscription facts) */
.legal-table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.25rem 0 1.75rem;
  font-size: 0.95rem;
  background: #fff;
  border-radius: var(--radius-sm);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
}
.legal-table th,
.legal-table td {
  text-align: left;
  padding: 0.75rem 0.9rem;
  border-bottom: 1px solid var(--line);
  vertical-align: top;
}
.legal-table th {
  background: var(--sand);
  font-weight: 600;
  color: var(--ink);
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.legal-table tr:last-child td { border-bottom: 0; }
.legal-table tr:last-child th { border-bottom: 0; }
/* Row-header cells (used for the subscription fact table) need breathing room */
.legal-table tbody th {
  width: 32%;
  text-transform: none;
  letter-spacing: 0;
  font-size: 0.95rem;
  vertical-align: top;
}

/* Payment provider section */
.pay-status {
  margin: 1.1rem 0 1rem;
  padding: 0.9rem 1rem;
  border-left: 4px solid var(--deep);
  background: #fff;
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-sm);
}
.pay-status--ready { border-color: var(--hi-green); }
.pay-status--partial { border-color: var(--hi-orange); }
.pay-status--blocked { border-color: #b91c1c; }
.pay-status__label {
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--muted);
  margin-bottom: 0.25rem;
}
.pay-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 0.95rem;
  margin: 1.2rem 0;
}
.pay-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  padding: 1rem 1.1rem;
  box-shadow: var(--shadow-sm);
}
.pay-card__head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 0.65rem;
  margin-bottom: 0.45rem;
}
.pay-card__name {
  font-family: var(--serif);
  font-size: 1.2rem;
  line-height: 1.2;
  margin: 0;
}
.pay-card__summary {
  margin: 0.5rem 0;
  color: var(--ink-2);
  font-size: 0.94rem;
  min-height: 2.9rem;
}
.pay-card__status {
  display: inline-block;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #8a2f1b;
  margin-bottom: 0.55rem;
}
.pay-card__status--ready { color: #1f6a2f; }
.pay-card__status--pending { color: #9a4700; }
.pay-card__status--blocked { color: #b11d1d; }
.pay-cta {
  margin-top: auto;
}
.pay-cta a,
.pay-cta button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 0.63rem 0.9rem;
  border-radius: 999px;
  border: 1px solid transparent;
  font: inherit;
  font-weight: 700;
  text-align: center;
  cursor: pointer;
  text-decoration: none;
}
.pay-cta a {
  color: #fff;
  background: var(--deep);
}
.pay-cta a:hover {
  background: var(--deep-2);
  color: #fff;
}
.pay-cta button {
  color: #8a8f96;
  background: #f2f2f2;
  border-color: #d5dae0;
  cursor: not-allowed;
}
.pay-cta button[aria-busy="true"] { opacity: 0.8; cursor: progress; }

/* Optional fallback text when JavaScript is unavailable */
.pay-note {
  margin: 0.25rem 0 1.1rem;
  color: var(--muted);
  font-size: 0.95rem;
}

/* Checklist panel */
.pay-checklist {
  margin-top: 1rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: #fff;
  box-shadow: var(--shadow-sm);
  padding: 0.95rem 1rem;
}
.pay-checklist summary {
  cursor: pointer;
  font-weight: 700;
  color: var(--deep);
}
.pay-checklist ul {
  margin: 0.8rem 0 0.15rem 1.15rem;
  font-size: 0.95rem;
}
.pay-checklist li { margin-bottom: 0.45rem; }

/* Table of contents */
.legal-toc {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  padding: 1.1rem 1.35rem;
  margin: 0 0 2.25rem;
}
.legal-toc h2 {
  border: 0 !important;
  padding: 0 !important;
  margin: 0 0 0.6rem !important;
  font-size: 0.85rem !important;
  font-family: var(--sans) !important;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--muted);
}
.legal-toc ol { margin: 0 0 0 1.1rem; color: var(--ink-2); font-size: 0.95rem; }
.legal-toc li { margin: 0 0 0.3rem; }

.help-language-picker {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  padding: 1rem 1rem 1rem;
  margin: 0.75rem 0 1.5rem;
  box-shadow: var(--shadow-sm);
}

.help-language-picker__title {
  margin: 0 0 0.85rem;
  font-family: var(--serif);
  color: var(--ink);
  font-size: 1.05rem;
}

.language-toggle {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}

.language-toggle__btn {
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 0.45rem 0.9rem;
  color: var(--ink);
  background: #fff;
  font: inherit;
  font-size: 0.95rem;
  line-height: 1;
  cursor: pointer;
  transition: transform var(--transition), background-color var(--transition), color var(--transition), border-color var(--transition);
}

.language-toggle__btn:hover {
  background: #f2f8ff;
  border-color: var(--deep);
  transform: translateY(-1px);
}

.language-toggle__btn:focus-visible {
  outline: 2px solid var(--deep);
  outline-offset: 2px;
}

.language-toggle__btn.is-active,
.language-toggle__btn[aria-pressed="true"] {
  border-color: var(--deep);
  color: #fff;
  background: var(--deep);
  font-weight: 600;
}

@media (max-width: 560px) {
  .language-toggle__btn {
    flex: 1 1 calc(50% - 0.275rem);
    text-align: center;
    min-width: 0;
  }
}

/* Simple back-to-site bar */
.legal-bar {
  border-bottom: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: saturate(140%) blur(8px);
  padding: 0.85rem 0;
  font-size: 0.95rem;
}
.legal-bar a { color: var(--deep); text-decoration: none; font-weight: 500; }
.legal-bar a:hover { color: var(--hi-orange); text-decoration: underline; }
.legal-bar .legal-bar__sep { color: var(--line); margin: 0 0.6rem; }

/* Footer for legal/support pages (mirrors the .footer-mini pattern used on
   steinhatchee.html, defined here so these pages are self-contained) */
.footer-mini-legal {
  background: var(--deep-2);
  color: rgba(255, 255, 255, 0.8);
  padding: 32px 0;
  text-align: center;
  font-size: 13px;
  line-height: 2;
}
.footer-mini-legal a {
  color: #fff;
  text-decoration: none;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
.footer-mini-legal a:hover { border-bottom-color: #fff; }

@media (max-width: 640px) {
  .legal-hero { padding: 3rem 0 2.25rem; }
  .legal-doc { padding: 2rem 1.1rem 3rem; }
  .legal-doc h2 { font-size: 1.3rem; margin-top: 2.25rem; }
  .legal-table { font-size: 0.9rem; }
  .legal-table th, .legal-table td { padding: 0.6rem 0.7rem; }
}

@media print {
  .legal-bar, .footer, .legal-hero { background: #fff !important; color: #000 !important; }
  .legal-hero h1, .legal-hero .legal-hero__meta { color: #000 !important; }
  .legal-doc { max-width: none; }
}

/* ---------------------------------------------------------------
   Setup guide — built to be read by someone who does not enjoy
   fighting a phone. Larger base type, wide line spacing, and a
   reader-controlled text size that persists.
   --------------------------------------------------------------- */
:root { --guide-scale: 1; }

.guide-doc {
  max-width: 46rem;
  margin: 0 auto;
  padding: 2.25rem 1.25rem 4rem;
  font-size: calc(1.0625rem * var(--guide-scale));
  line-height: 1.75;
}
.guide-doc p { margin: 0 0 1.1rem; color: var(--ink-2); }
.guide-doc h2 {
  font-family: 'Fraunces', Georgia, serif;
  font-size: calc(1.6rem * var(--guide-scale));
  line-height: 1.25;
  color: var(--deep);
  margin: 2.75rem 0 0.35rem;
  padding-top: 1.75rem;
  border-top: 1px solid var(--line);
}
.guide-doc h2:first-of-type { border-top: 0; padding-top: 0; margin-top: 0.5rem; }
.guide-doc h3 {
  font-size: calc(1.1rem * var(--guide-scale));
  color: var(--ink);
  margin: 1.9rem 0 0.5rem;
  font-weight: 600;
}
.guide-doc ul, .guide-doc ol { margin: 0 0 1.25rem 1.35rem; color: var(--ink-2); }
.guide-doc li { margin: 0 0 0.7rem; }
.guide-doc strong { color: var(--ink); font-weight: 600; }
.guide-doc a { color: var(--deep); text-decoration: underline; text-underline-offset: 2px; }
.guide-doc a:hover { color: var(--hi-orange); }

/* numbered walk-through */
.guide-steps { list-style: none; margin: 0 0 1.5rem; padding: 0; counter-reset: gs; }
.guide-steps > li {
  counter-increment: gs;
  position: relative;
  padding: 0 0 0 3.1rem;
  margin: 0 0 1.35rem;
  min-height: 2.1rem;
}
.guide-steps > li::before {
  content: counter(gs);
  position: absolute;
  left: 0; top: 0.1rem;
  width: 2.1rem; height: 2.1rem;
  border-radius: 50%;
  background: var(--deep);
  color: #fff;
  font-weight: 700;
  font-size: calc(0.95rem * var(--guide-scale));
  display: flex; align-items: center; justify-content: center;
}
.guide-steps > li p { margin: 0; }

/* status chips */
.chip {
  display: inline-block;
  font-size: calc(0.7rem * var(--guide-scale));
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 0.2rem 0.55rem;
  border-radius: 999px;
  vertical-align: middle;
  margin-left: 0.5rem;
  white-space: nowrap;
}
.chip--now { background: #E3F1E4; color: #2C6B32; }
.chip--soon { background: #FFEBD9; color: #9A4700; }

/* text size control */
.ts-bar { background: var(--sand); border-bottom: 1px solid var(--line); }
.ts-bar .container {
  display: flex; align-items: center; gap: 0.65rem;
  padding: 0.7rem 1.25rem; flex-wrap: wrap;
}
.ts-bar__label { font-size: 0.9rem; color: var(--ink-2); font-weight: 500; }
.ts-btn {
  font: inherit; font-weight: 700; font-size: 1.05rem;
  min-width: 2.9rem; min-height: 2.9rem;
  border: 1px solid var(--deep); background: #fff; color: var(--deep);
  border-radius: 8px; cursor: pointer; line-height: 1;
}
.ts-btn:hover:not(:disabled) { background: var(--deep); color: #fff; }
.ts-btn:disabled { opacity: 0.35; cursor: default; }
.ts-btn:focus-visible { outline: 3px solid var(--hi-orange); outline-offset: 2px; }
#ts-level { font-size: 0.9rem; color: var(--ink-2); min-width: 3.2rem; font-variant-numeric: tabular-nums; }

.guide-note {
  background: var(--sand);
  border-left: 4px solid var(--hi-orange);
  padding: 1.1rem 1.25rem;
  margin: 0 0 1.75rem;
  border-radius: 0 8px 8px 0;
}
.guide-note p:last-child { margin-bottom: 0; }

.guide-toc { background: var(--sand); border: 1px solid var(--line); border-radius: 10px; padding: 1.25rem 1.5rem; margin: 0 0 2.25rem; }
.guide-toc h2 { border-top: 0; padding-top: 0; margin: 0 0 0.6rem; font-size: calc(1.05rem * var(--guide-scale)); }
.guide-toc ol { margin: 0 0 0 1.15rem; }
.guide-toc li { margin: 0 0 0.4rem; }

/* Legal-review gate — features that are researched but blocked from v1
   pending written clearance. Deliberately cooler than chip--soon so it
   never reads as "coming soon". */
.chip--review { background: #E4E9ED; color: #44606F; }

.gate-note {
  border-left: 3px solid #9AA9B3;
  background: #F2F5F7;
  border-radius: 8px;
  padding: 0.9rem 1.15rem;
  margin: 1.1rem 0 1.4rem;
}
.gate-note p { margin: 0; font-size: calc(0.92rem * var(--guide-scale)); line-height: 1.6; }
.gate-note strong { color: #2E4653; }

/* Build-order queue */
.queue { list-style: none; margin: 1.6rem 0; padding: 0; }
.q-item {
  display: flex; gap: 0.9rem; align-items: flex-start;
  padding: 0.95rem 0; border-top: 1px solid rgba(11, 61, 92, 0.12);
}
.q-item:first-child { border-top: 0; }
.q-num {
  flex: 0 0 1.9rem; height: 1.9rem; border-radius: 50%;
  display: grid; place-items: center;
  font-weight: 700; font-size: calc(0.8rem * var(--guide-scale));
  background: rgba(11, 61, 92, 0.09); color: #0B3D5C;
}
.q-item--build .q-num { background: #FF6D00; color: #fff; }
.q-item--early .q-num { background: #0B3D5C; color: #fff; }
.q-item--gap   .q-num { background: #E4E9ED; color: #55707E; }
.q-body { flex: 1 1 auto; min-width: 0; }
.q-body h3 { margin: 0 0 0.15rem; }
.q-body p { margin: 0.3rem 0 0; }
.q-county { opacity: 0.62; font-size: calc(0.85rem * var(--guide-scale)); }
.pl-out { opacity: 0.8; font-size: calc(0.88rem * var(--guide-scale)); }

/* Coverage evidence page */
.cov-stats {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem;
  margin: 1.6rem 0 1.4rem; padding: 1.3rem 1.4rem;
  background: #0B3D5C; border-radius: 12px; color: #fff;
}
.cov-stats > div { display: flex; flex-direction: column; gap: 0.25rem; }
.cov-stat {
  font-family: Fraunces, Georgia, serif; font-weight: 700;
  font-size: calc(2.05rem * var(--guide-scale)); line-height: 1; color: #7FD8F5;
}
.cov-lab {
  font-size: calc(0.78rem * var(--guide-scale)); line-height: 1.35;
  opacity: 0.9; letter-spacing: 0.01em;
}
.cov-table th, .cov-table td { vertical-align: middle; }
.cov-table .cov-n { text-align: right; white-space: nowrap; }
.cov-table thead th { font-size: calc(0.8rem * var(--guide-scale)); opacity: 0.75; }
.cov-table tfoot th, .cov-table tfoot td {
  border-top: 2px solid rgba(11, 61, 92, 0.35); font-weight: 700;
}
.cov-co {
  font-weight: 400; opacity: 0.6;
  font-size: calc(0.78rem * var(--guide-scale));
}
@media (max-width: 720px) {
  .cov-stats { grid-template-columns: repeat(2, 1fr); }
  .cov-table { font-size: calc(0.85rem * var(--guide-scale)); }
}

/* Region waterway lists — charted vs field-verified must read differently */
.q-ways { margin: 0.45rem 0 0; line-height: 1.55; }
.q-ways span { font-size: calc(0.85rem * var(--guide-scale)); }
.w-fd { color: #0B3D5C; font-weight: 600; }
.w-pa { color: #9A4700; }
.w-ch { color: #7C8B95; }
.q-item--charted .q-num { background: #E4E9ED; color: #55707E; }
.q-item--partial .q-num { background: #FFEBD9; color: #9A4700; }

/* Three-tier scope ladder: scope → charted → verified */
.cov-tiers { list-style: none; margin: 1.6rem 0 1.2rem; padding: 0; display: grid; gap: 0.6rem; }
.cov-tier {
  display: grid; grid-template-columns: 7.5rem 1fr; gap: 0.2rem 1.1rem;
  align-items: baseline; padding: 1rem 1.2rem; border-radius: 11px;
  border-left: 4px solid;
}
.cov-tier--scope    { background: #F2F5F7; border-left-color: #9AA9B3; }
.cov-tier--charted  { background: #EAF6FB; border-left-color: #12B6EC; }
.cov-tier--verified { background: #0B3D5C; border-left-color: #FF6D00; color: #fff; }
.cov-tier__n {
  grid-row: span 2; font-family: Fraunces, Georgia, serif; font-weight: 700;
  font-size: calc(2.1rem * var(--guide-scale)); line-height: 1; text-align: right;
}
.cov-tier--scope .cov-tier__n { font-size: calc(1.5rem * var(--guide-scale)); color: #55707E; }
.cov-tier--charted .cov-tier__n { color: #06718F; }
.cov-tier--verified .cov-tier__n { color: #7FD8F5; }
.cov-tier__h { font-weight: 700; font-size: calc(1rem * var(--guide-scale)); }
.cov-tier__d { font-size: calc(0.88rem * var(--guide-scale)); line-height: 1.55; opacity: 0.85; }
@media (max-width: 640px) {
  .cov-tier { grid-template-columns: 1fr; }
  .cov-tier__n { grid-row: auto; text-align: left; }
}
.cov-tier--records { background: #FFF3E8; border-left-color: #FF6D00; }
.cov-tier--records .cov-tier__n { color: #B14A00; }

.tm-notice{font-size:.78rem;line-height:1.55;color:#6a7681;margin:1.1rem 0 0;max-width:60ch}

/* ── build-order status map ─────────────────────────────────────────────── */
.bm-fig { margin: 1.4rem 0 0.6rem; }
.bm-cap { display: flex; flex-wrap: wrap; gap: 0.5rem 1.4rem; align-items: center;
          margin-top: 0.7rem; font-size: 0.86rem; color: var(--muted, #6B7A8C); }
.bm-key { display: inline-flex; align-items: center; gap: 0.45rem;
          font-weight: 600; color: var(--ink, #0F1E2C); }
.bm-sw  { width: 24px; height: 5px; border-radius: 3px; display: inline-block; }
.bm-sw--built { background: #00C2FF; }
.bm-sw--todo  { background: #E02B3D; }
.bm-src { flex: 1 1 100%; font-size: 0.78rem; line-height: 1.5; }

/* ---- Access-point map and trip panel -------------------------------------
   Dot colours come from the owner's marker palette, recorded 23 Jul 2026 and
   chosen for readability in direct sun on water. Set in the SVG, not here, so
   the generator stays the single source for them. */

.amap { margin: 2.5rem 0; }
.amap__fig { margin: 1.25rem 0 0.75rem; }
.amap__svg {
  width: 100%; height: auto; display: block;
  border: 1px solid #C9B99A; border-radius: 6px;
  background: #E4F1F8;
}
.amap__cap { font-size: 0.82rem; color: #5A6B75; margin-top: 0.5rem; }
.amap__dot { cursor: pointer; transition: r 90ms ease-out; }
.amap__dot:hover, .amap__dot:focus {
  r: 8; stroke-width: 2; outline: none;
}

.amap-key {
  list-style: none; padding: 0; margin: 1rem 0 0;
  display: flex; flex-wrap: wrap; gap: 0.4rem 1.4rem;
  font-size: 0.9rem;
}
.amap-key__item { display: flex; align-items: center; gap: 0.45rem; }
.amap-key__dot {
  width: 13px; height: 13px; border-radius: 50%;
  border: 1px solid; display: inline-block; flex: 0 0 auto;
}

.amap-trip {
  margin: 1.5rem 0 0; padding: 1.25rem 1.4rem;
  border: 1px solid #C9D6DE; border-left: 4px solid #00639B;
  border-radius: 6px; background: #F7FBFD; position: relative;
}
.amap-trip__close {
  position: absolute; top: 0.5rem; right: 0.7rem;
  background: none; border: 0; font-size: 1.5rem; line-height: 1;
  color: #5A6B75; cursor: pointer;
}
.amap-trip__name { margin: 0 1.5rem 0.25rem 0; font-size: 1.15rem; }
.amap-trip__meta { margin: 0 0 0.5rem; color: #4A5B65; font-size: 0.92rem; }
.amap-trip__coords { margin: 0 0 0.75rem; }
.amap-trip__coords code {
  background: #E8F2F7; padding: 0.15rem 0.45rem; border-radius: 3px;
  font-size: 0.92rem;
}
.amap-trip__advisory {
  margin: 0 0 0.75rem; padding: 0.6rem 0.8rem;
  background: #FFF4E5; border-left: 3px solid #FF6D00;
  font-size: 0.9rem; border-radius: 3px;
}
.amap-trip__actions {
  display: flex; flex-wrap: wrap; gap: 0.6rem; margin: 0 0 1rem;
}
.amap-trip__btn {
  display: inline-block; padding: 0.5rem 0.9rem;
  border: 1px solid #00639B; border-radius: 4px;
  background: #fff; color: #00639B; text-decoration: none;
  font-size: 0.9rem; cursor: pointer; font-family: inherit;
}
.amap-trip__btn:hover { background: #00639B; color: #fff; }

.amap-trip__qr {
  display: flex; align-items: center; gap: 1rem;
  padding: 0.9rem 0; border-top: 1px solid #DCE7ED;
}
.amap-trip__qrimg svg { width: 104px; height: 104px; display: block; }
.amap-trip__qrcap { margin: 0; font-size: 0.86rem; color: #4A5B65; }

.amap-trip__warn {
  margin: 0.75rem 0 0; padding-top: 0.75rem;
  border-top: 1px solid #DCE7ED;
  font-size: 0.86rem; color: #6A2E00;
}

@media (max-width: 560px) {
  .amap-trip__qr { flex-direction: column; align-items: flex-start; }
  .amap-key { gap: 0.35rem 1rem; font-size: 0.85rem; }
}
