.gourmet-page[data-v-1fd42bd3]{max-width:1200px;margin:0 auto;padding:24px 16px 60px}.gourmet-hero[data-v-1fd42bd3]{text-align:center;padding:32px 16px;margin-bottom:24px;background:linear-gradient(135deg,#8b1a1a14,#d4af371f);border-radius:16px;border:1px solid rgba(139,26,26,.15)}.hero-badge-row[data-v-1fd42bd3]{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:12px}.badge-pill[data-v-1fd42bd3]{font-size:.85rem;font-weight:600;padding:4px 12px;border-radius:20px;background:#fff;color:var(--color-primary, #8B1A1A);border:1px solid rgba(139,26,26,.2);box-shadow:0 1px 3px #0000000d}.badge-pill.highlight[data-v-1fd42bd3]{background:#8b1a1a;color:gold;border-color:#8b1a1a}.hero-title[data-v-1fd42bd3]{font-size:2rem;color:var(--color-primary, #8B1A1A);margin-bottom:8px;letter-spacing:.02em}.hero-subtitle[data-v-1fd42bd3]{font-size:1rem;color:var(--color-text-light, #5D4037);max-width:700px;margin:0 auto}.editorial-note[data-v-1fd42bd3]{padding:20px;margin-bottom:28px;border:1px solid #e0d7cb;border-radius:12px;background:#faf7f2;color:#4a3728;line-height:1.7}.editorial-note h2[data-v-1fd42bd3]{font-size:1.15rem;color:var(--color-primary, #8B1A1A)}.editorial-note p+p[data-v-1fd42bd3]{margin-top:10px}.image-caption[data-v-1fd42bd3]{padding:6px 14px;color:#5d4037;background:#faf7f2;font-size:.75rem}.spot-sources[data-v-1fd42bd3]{margin-bottom:18px;padding-top:12px;border-top:1px solid #eee5d8;color:#5d4037;font-size:.82rem;line-height:1.65;overflow-wrap:anywhere}.spot-sources h4[data-v-1fd42bd3]{font-size:.9rem}.spot-sources ul[data-v-1fd42bd3]{padding-left:20px;margin:8px 0}.spot-sources li+li[data-v-1fd42bd3]{margin-top:8px}.spot-sources li span[data-v-1fd42bd3]{display:block}.spot-sources a[data-v-1fd42bd3]{color:var(--color-primary, #8B1A1A);text-decoration:underline}.map-section[data-v-1fd42bd3]{background:#fff;border-radius:16px;box-shadow:0 4px 16px #00000014;border:1px solid rgba(139,26,26,.12);padding:20px;margin-bottom:32px;scroll-margin-top:8rem}.map-header[data-v-1fd42bd3]{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f0e9df}.map-title[data-v-1fd42bd3]{font-size:1.35rem;color:var(--color-primary, #8B1A1A);margin-bottom:4px}.map-desc[data-v-1fd42bd3]{font-size:.88rem;color:var(--color-text-light, #5D4037)}.map-legend[data-v-1fd42bd3]{display:flex;flex-wrap:wrap;gap:12px;font-size:.85rem;font-weight:600;color:#4a3728}.legend-item[data-v-1fd42bd3]{display:flex;align-items:center;gap:6px}.map-wrapper[data-v-1fd42bd3]{position:relative;border-radius:12px;overflow:hidden;border:1px solid #e0d7cb}.leaflet-map-element[data-v-1fd42bd3]{height:440px;width:100%;z-index:1}.route-overlay-card[data-v-1fd42bd3]{position:absolute;bottom:16px;left:16px;right:16px;z-index:1000;background:#fffffff5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:12px;padding:14px 18px;box-shadow:0 4px 16px #0003;border:1px solid #FFD700;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}.route-badge[data-v-1fd42bd3]{font-size:.88rem;font-weight:700;color:#c41e3a;margin-bottom:2px}.route-spot-name[data-v-1fd42bd3]{font-size:1.1rem;color:#2e1a12;margin-bottom:2px}.route-address[data-v-1fd42bd3]{font-size:.8rem;color:#7a6858}.route-overlay-content[data-v-1fd42bd3]{min-width:0;overflow-wrap:anywhere}.route-actions[data-v-1fd42bd3]{display:flex;align-items:center;gap:8px}.btn-nav-google[data-v-1fd42bd3]{background:#1a73e8;color:#fff;font-size:.85rem;font-weight:600;padding:8px 14px;border-radius:8px;text-decoration:none;transition:background .2s}.btn-nav-google[data-v-1fd42bd3]:hover{background:#1557b0}.btn-clear-selection[data-v-1fd42bd3]{background:#f1ede8;color:#555;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;cursor:pointer}.btn-clear-selection[data-v-1fd42bd3]:hover{background:#e2ddd6}.filter-bar[data-v-1fd42bd3]{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:0 4px}.filter-label[data-v-1fd42bd3]{font-size:1.05rem;font-weight:700;color:var(--color-primary, #8B1A1A)}.filter-buttons[data-v-1fd42bd3]{display:flex;flex-wrap:wrap;gap:8px}.filter-btn[data-v-1fd42bd3]{font-size:.88rem;padding:6px 14px;border-radius:20px;background:#fff;border:1px solid #d4c8b8;color:#5d4037;font-weight:600}.filter-btn[data-v-1fd42bd3]:hover{background:#faf6f0}.filter-btn.active[data-v-1fd42bd3]{background:var(--color-primary, #8B1A1A);color:gold;border-color:var(--color-primary, #8B1A1A)}.spots-list[data-v-1fd42bd3]{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:24px;margin-bottom:40px}.spot-card[data-v-1fd42bd3]{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 4px 12px #0000000f;border:1px solid #eee5d8;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.spot-card[data-v-1fd42bd3]:hover{transform:translateY(-4px);box-shadow:0 8px 24px #8b1a1a1f;border-color:#d4af37}.spot-card.is-selected[data-v-1fd42bd3]{border:2px solid #C41E3A;box-shadow:0 6px 20px #c41e3a33}.card-media[data-v-1fd42bd3]{position:relative;width:100%;height:220px;background:#2a1610;overflow:hidden}.spot-image[data-v-1fd42bd3]{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.spot-card:hover .spot-image[data-v-1fd42bd3]{transform:scale(1.04)}.card-badges[data-v-1fd42bd3]{position:absolute;top:12px;left:12px;right:12px;display:flex;justify-content:space-between;align-items:flex-start;gap:6px;pointer-events:none}.honor-badge[data-v-1fd42bd3]{background:#ffd700f2;color:#8b1a1a;font-size:.78rem;font-weight:800;padding:4px 10px;border-radius:20px;box-shadow:0 2px 6px #00000040}.card-body[data-v-1fd42bd3]{padding:20px;display:flex;flex-direction:column;flex-grow:1}.card-header-row[data-v-1fd42bd3]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.spot-category[data-v-1fd42bd3]{font-size:.78rem;font-weight:700;color:#926315;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:2px}.spot-name[data-v-1fd42bd3]{display:flex;flex-direction:column}.name-chinese[data-v-1fd42bd3]{font-size:1.4rem;font-weight:800;color:var(--color-primary, #8B1A1A);line-height:1.2}.name-kana[data-v-1fd42bd3],.name-en[data-v-1fd42bd3]{font-size:.85rem;color:#666;font-weight:500}.spot-index-tag[data-v-1fd42bd3]{font-size:1.1rem;font-weight:800;color:#d5caa8}.spot-description[data-v-1fd42bd3]{font-size:.9rem;color:#4a3728;line-height:1.6;margin-bottom:16px}.spot-signatures[data-v-1fd42bd3]{background:#faf7f2;border-left:3px solid var(--color-primary, #8B1A1A);padding:10px 12px;border-radius:4px;margin-bottom:16px}.signature-title[data-v-1fd42bd3]{font-size:.85rem;font-weight:700;color:#8b1a1a;display:block;margin-bottom:4px}.signature-list[data-v-1fd42bd3]{list-style:none;padding:0;margin:0}.signature-list li[data-v-1fd42bd3]{font-size:.84rem;color:#3e2723;line-height:1.5;position:relative;padding-left:14px}.signature-list li[data-v-1fd42bd3]:before{content:"•";color:#c41e3a;position:absolute;left:2px;font-weight:700}.spot-meta-details[data-v-1fd42bd3]{font-size:.82rem;color:#6d5b4d;margin-bottom:18px;display:flex;flex-direction:column;gap:6px;border-top:1px dashed #e5dcce;padding-top:12px}.meta-row[data-v-1fd42bd3]{display:flex;align-items:flex-start;gap:6px}.meta-icon[data-v-1fd42bd3]{flex-shrink:0}.meta-text strong[data-v-1fd42bd3]{color:#3e2723}.card-actions[data-v-1fd42bd3]{display:flex;gap:8px;margin-top:auto}.btn-action[data-v-1fd42bd3]{flex:1;text-align:center;font-size:.85rem;font-weight:600;padding:10px 8px;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:4px}.btn-action.view-map[data-v-1fd42bd3]{background:#8b1a1a;color:gold;border:1px solid #8B1A1A}.btn-action.view-map[data-v-1fd42bd3]:hover{background:#a82020}.btn-action.open-nav[data-v-1fd42bd3]{background:#fff;color:#333;border:1px solid #ccc;text-decoration:none}.btn-action.open-nav[data-v-1fd42bd3]:hover{background:#f7f5f0;border-color:#999}.gourmet-bottom-nav[data-v-1fd42bd3]{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid #e0d7cb}.btn-sub-nav[data-v-1fd42bd3]{background:#fff;border:1px solid #d4c8b8;color:var(--color-primary, #8B1A1A);font-weight:600;padding:12px 24px;border-radius:30px;font-size:.95rem;box-shadow:0 2px 6px #0000000d;transition:all .2s ease}.btn-sub-nav[data-v-1fd42bd3]:hover{background:var(--color-primary, #8B1A1A);color:gold;border-color:var(--color-primary, #8B1A1A)}[data-v-1fd42bd3] .custom-map-icon{background:transparent;border:none}[data-v-1fd42bd3] .svg-marker-wrapper{position:relative;width:100%;height:100%;display:flex;justify-content:center;align-items:flex-start}[data-v-1fd42bd3] .svg-pin{display:block;overflow:visible;filter:drop-shadow(0 2px 4px rgba(0,0,0,.25));transition:transform .2s ease}[data-v-1fd42bd3] .custom-map-icon:hover .svg-pin{transform:scale(1.1)}[data-v-1fd42bd3] .marker-label{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:2px;background:#fffffff2;color:#3e2723;font-weight:700;font-size:11px;padding:2px 6px;border-radius:4px;white-space:nowrap;box-shadow:0 1px 4px #0003;border:1px solid #ccc;pointer-events:none}.fade-enter-active[data-v-1fd42bd3],.fade-leave-active[data-v-1fd42bd3]{transition:opacity .25s ease,transform .25s ease}.fade-enter-from[data-v-1fd42bd3],.fade-leave-to[data-v-1fd42bd3]{opacity:0;transform:translateY(10px)}@media (max-width: 768px){.hero-title[data-v-1fd42bd3]{font-size:1.6rem}.leaflet-map-element[data-v-1fd42bd3]{height:340px}.spots-list[data-v-1fd42bd3]{grid-template-columns:1fr}.route-overlay-card[data-v-1fd42bd3]{flex-direction:column;align-items:flex-start}.route-actions[data-v-1fd42bd3]{width:100%;justify-content:space-between}}
