.tour-plan{gap:1.5rem;margin-top:2rem;display:grid}.tour-plan .tp-block{border:1px solid var(--border);background:var(--card);border-radius:8px;min-width:0;padding:1.25rem}.tour-plan .tp-h2{font-family:var(--font-display,serif);color:var(--foreground);font-size:1.5rem;font-weight:600;line-height:1.2}.tour-plan .tp-h3{color:var(--foreground);font-size:.875rem;font-weight:600}.tour-plan .tp-map{border:1px solid var(--border);background:var(--muted);border-radius:8px;height:340px;margin-top:1rem;overflow:hidden}@media (width>=768px){.tour-plan .tp-map{height:440px}}.tour-plan .tp-map-fallback{height:100%;color:var(--muted-foreground);place-items:center;font-size:.875rem;display:grid}.tour-plan .tp-legend{color:var(--muted-foreground);flex-wrap:wrap;gap:.5rem 1rem;margin-top:.75rem;font-size:.8125rem;display:flex}.tour-plan .tp-legend li{align-items:center;gap:.4rem;display:inline-flex}.tour-plan .tp-swatch{border-radius:999px;width:.75rem;height:.75rem}.tour-plan .tp-actions{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.tour-plan .tp-actions a,.tour-plan .tp-actions button{white-space:normal;min-height:44px}.tour-plan .tp-btn-primary{background:var(--gold);color:var(--gold-foreground)}.tour-plan .tp-btn-primary:hover{filter:brightness(1.05);background:var(--gold)}.tour-plan .tp-note{color:var(--muted-foreground);margin-top:.75rem;font-size:.875rem}.tour-plan .tp-chip{border:1px solid var(--border);color:var(--foreground);border-radius:999px;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.75rem;padding:.35rem .8rem;font-size:.8125rem;display:inline-flex}.tour-plan .tp-chip svg{width:1rem;height:1rem;color:var(--gold)}.tour-plan .tp-chip-src{color:var(--muted-foreground);font-size:.75rem}.tour-plan .tp-transit{margin-top:1rem}.tour-plan .tp-transit ul{gap:.3rem;margin-top:.4rem;display:grid}.tour-plan .tp-transit li{flex-wrap:wrap;gap:.25rem 1rem;display:flex}.tour-plan .tp-link{min-height:32px;color:var(--gold);text-underline-offset:3px;align-items:center;gap:.3rem;font-size:.875rem;font-weight:600;display:inline-flex}.tour-plan .tp-link:hover{text-decoration:underline}.tour-plan .tp-link svg{width:.875rem;height:.875rem}.tour-plan .tp-list{gap:.75rem;margin-top:1rem;display:grid}.tour-plan .tp-stop{border-top:1px solid var(--border);padding-top:.75rem}.tour-plan .tp-stop:first-child{border-top:0;padding-top:0}.tour-plan .tp-stop.is-start .tp-row{outline:2px solid var(--gold);outline-offset:4px;border-radius:6px}.tour-plan .tp-seq{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground);margin:.5rem 0;font-size:.75rem;font-weight:700}.tour-plan .tp-row{align-items:flex-start;gap:.875rem;display:flex}.tour-plan .tp-num{color:#fbf8f2;border-radius:999px;flex:none;place-items:center;width:2rem;height:2rem;font-size:.8125rem;font-weight:700;display:grid}.tour-plan .tp-title{font-family:var(--font-display,serif);color:var(--foreground);overflow-wrap:anywhere;font-size:1.125rem;font-weight:600}.tour-plan .tp-desc{color:var(--muted-foreground);margin-top:.25rem;font-size:.875rem;line-height:1.55}.tour-plan .tp-meta{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:.25rem 1rem;margin-top:.4rem;font-size:.8125rem;display:flex}.tour-plan .tp-leg{color:var(--muted-foreground);margin-top:.4rem;font-size:.8125rem}.tour-plan .tp-start-pill{background:color-mix(in oklab, var(--gold) 15%, transparent);color:var(--foreground);border-radius:999px;margin-bottom:.25rem;padding:.1rem .55rem;font-size:.75rem;font-weight:600;display:inline-block}.vg-stop-marker{color:#fbf8f2;border:2px solid #fbf8f2;border-radius:999px;place-items:center;width:28px;height:28px;font:700 12px/1 system-ui,sans-serif;display:grid;box-shadow:0 1px 3px #0000004d}.vg-stop-marker.is-start{outline-offset:1px;outline:3px solid #b8842e}.tour-plan .vg-user-dot,.vg-user-dot{background:#2e6f8e;border:3px solid #fbf8f2;border-radius:999px;width:16px;height:16px;box-shadow:0 0 0 2px #2e6f8e59}
