html{background:var(--jm-bg)}body{color:var(--jm-ink);background:var(--jm-bg);letter-spacing:0;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}.app-frame{min-height:100vh}.app-header{z-index:50;border-bottom:1px solid var(--jm-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;position:sticky;top:0}.app-header-inner{align-items:center;gap:22px;width:min(100% - 48px,1320px);height:68px;margin:0 auto;display:flex}.location-control{min-width:0;color:var(--jm-ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.location-control>span:first-child{width:36px;height:36px;color:var(--jm-mint);background:var(--jm-mint-soft);border-radius:8px;place-items:center;display:grid}.location-control>span:last-child{text-align:left;display:grid}.location-control small{color:var(--jm-text-muted);font-size:10px}.location-control strong{text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:13px;overflow:hidden}.app-header .jm-icon-button{margin-left:0}.locale-menu{flex:none;position:relative}.locale-trigger{border:1px solid var(--jm-border);min-width:112px;height:40px;color:var(--jm-text-secondary);background:var(--jm-surface);font:inherit;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:0 10px;transition:border-color .16s,background .16s,box-shadow .16s;display:inline-flex}.locale-trigger:hover{border-color:var(--jm-border-strong);background:var(--jm-surface-muted)}.locale-trigger:focus-visible,.locale-menu.open .locale-trigger{border-color:var(--jm-accent);box-shadow:0 0 0 3px var(--jm-accent-soft);outline:0}.locale-trigger-label,.locale-trigger-code{color:var(--jm-ink);white-space:nowrap;font-size:12px;font-weight:750}.locale-trigger-code{display:none}.locale-trigger-chevron{transition:transform .16s}.locale-menu.open .locale-trigger-chevron{transform:rotate(180deg)}.locale-menu-backdrop{display:none}.locale-popover{z-index:70;top:var(--locale-menu-top);right:auto;left:var(--locale-menu-left);border:1px solid var(--jm-border);background:var(--jm-surface);border-radius:8px;width:190px;padding:7px;animation:.15s ease-out locale-menu-in;position:fixed;box-shadow:0 14px 36px #14182129}.locale-popover-heading{display:none}.locale-options{gap:3px;display:grid}.locale-option{width:100%;height:44px;color:var(--jm-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;grid-template-columns:34px minmax(0,1fr) 22px;align-items:center;gap:9px;padding:0 9px;display:grid}.locale-option:hover,.locale-option:focus-visible{background:var(--jm-surface-muted);outline:0}.locale-option.selected{color:var(--jm-accent);background:var(--jm-accent-soft)}.locale-option-code{border:1px solid var(--jm-border);height:26px;color:var(--jm-text-muted);background:var(--jm-surface);border-radius:6px;place-items:center;font-size:10px;font-weight:800;display:grid}.locale-option-label{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:750;overflow:hidden}.locale-option-check{place-items:center;display:grid}@keyframes locale-menu-in{0%{opacity:0;transform:translateY(-5px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.desktop-nav{align-items:center;gap:4px;margin-left:auto;display:flex}.desktop-nav a{min-width:68px;height:40px;color:var(--jm-text-muted);border-radius:8px;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.desktop-nav a:hover{color:var(--jm-ink);background:var(--jm-surface-muted)}.desktop-nav a.active{color:var(--jm-accent);background:var(--jm-accent-soft)}.app-nav{display:none}.app-nav a{width:150px;height:100%;color:var(--jm-text-muted);justify-content:center;align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.app-nav a.active{color:var(--jm-accent)}.home-main{background:var(--jm-bg);width:100%}.home-hero{border-bottom:1px solid var(--jm-border);background:var(--jm-surface);overflow:hidden}.home-hero-inner{background-color:#fff;width:min(100% - 48px,1320px);min-height:282px;margin:0 auto;position:relative}.home-hero-inner:before{content:"";filter:brightness(1.025);pointer-events:none;background:url(/home/hero-food-friends.webp?v=2) 50%/cover no-repeat;position:absolute;inset:0}.hero-copy{z-index:2;max-width:590px;padding:58px 0 52px;position:relative}.hero-copy span{color:var(--jm-mint);font-size:12px;font-weight:800}.hero-copy h1{letter-spacing:0;margin:10px 0 8px;font-size:clamp(32px,5vw,48px);line-height:1.16}.hero-copy p{color:var(--jm-text-secondary);margin:0;font-size:15px}.discovery{border-bottom:1px solid var(--jm-border);background:var(--jm-surface)}.discovery-inner{grid-template-columns:minmax(420px,680px) minmax(0,1fr);align-items:center;gap:24px;width:min(100% - 48px,1320px);margin:0 auto;padding:20px 0;display:grid}.discovery form{gap:10px;display:flex}.discovery .jm-search{flex:1}.quick-filters{flex-wrap:wrap;justify-content:flex-end;gap:9px;margin-top:0;display:flex}.content-section{background:var(--jm-bg);padding:42px 24px}.content-section+.content-section{border-top:1px solid var(--jm-border)}.content-inner{width:min(100%,1320px);margin:0 auto}.featured-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px;display:grid}.nearby-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px;display:grid}.home-results-layout{grid-template-columns:minmax(0,1fr) 440px;align-items:start;gap:24px;margin-top:20px;display:grid}.home-results-layout .nearby-grid{margin-top:0}.nearby-feed{overscroll-behavior:contain;scrollbar-gutter:stable;min-width:0;height:min(690px,100vh - 120px);min-height:510px;padding-right:8px;overflow-y:auto}.nearby-feed:focus-visible{outline:3px solid var(--jm-accent-soft);outline-offset:4px}.nearby-feed::-webkit-scrollbar{width:6px}.nearby-feed::-webkit-scrollbar-thumb{background:var(--jm-border-strong);border-radius:6px}.nearby-feed::-webkit-scrollbar-track{background:0 0}.nearby-load-sentinel{justify-content:center;align-items:center;gap:5px;height:56px;display:flex}.nearby-load-sentinel span{background:var(--jm-accent);border-radius:50%;width:6px;height:6px;animation:1s ease-in-out infinite nearby-loading-dot}.nearby-load-sentinel span:nth-child(2){animation-delay:.13s}.nearby-load-sentinel span:nth-child(3){animation-delay:.26s}@keyframes nearby-loading-dot{0%,60%,to{opacity:.32;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.home-map-preview{border:1px solid var(--jm-border);background:var(--jm-surface);border-radius:8px;position:sticky;top:92px;overflow:hidden}.home-map-preview-header{border-bottom:1px solid var(--jm-border);justify-content:space-between;align-items:center;gap:16px;min-height:70px;padding:12px 14px 12px 18px;display:flex}.home-map-preview-header>div{gap:3px;min-width:0;display:grid}.home-map-preview-header strong{font-size:14px}.home-map-preview-header span{color:var(--jm-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.home-map-canvas{height:min(620px,100vh - 190px);min-height:440px;position:relative}.result-total{color:var(--jm-accent);font-size:13px;font-weight:800}.place-card-link{min-width:0;display:block}.place-card{height:100%;box-shadow:none;transition:transform .18s,box-shadow .18s;position:relative}.place-card-copy-link{color:inherit;display:block}.place-card-copy-link:focus-visible{outline:3px solid var(--jm-accent);outline-offset:-3px}.place-card-link:hover .place-card{box-shadow:var(--jm-shadow-card);transform:translateY(-2px)}.nearby-grid .place-card-link.selected .place-card{border-color:var(--jm-accent);box-shadow:0 0 0 3px var(--jm-accent-soft), var(--jm-shadow-card);transform:translateY(-2px)}.place-card-image{background:var(--jm-surface-muted);height:132px;position:relative;overflow:hidden}.jonmat-tier{--tier-bg:#fffffff0;--tier-border:#e6e7eb;--tier-label:#34363c;--tier-mark:var(--jm-accent);border:1px solid var(--tier-border);min-width:0;height:28px;color:var(--tier-label);background:var(--tier-bg);white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:0 8px 0 7px;display:inline-flex;box-shadow:0 1px 3px #18191d14}.jonmat-tier--level-2{--tier-bg:#fff9e8;--tier-border:#edda96;--tier-label:#645019;--tier-mark:#d29a00}.jonmat-tier--level-3{--tier-bg:#202126;--tier-border:#202126;--tier-label:#fff;--tier-mark:#ff7068}.jonmat-tier-marks{color:var(--tier-mark);align-items:center;gap:1px;display:inline-flex}.jonmat-tier-marks svg{flex:0 0 13px;width:13px;height:13px}.jonmat-tier strong{color:var(--tier-label);text-overflow:ellipsis;font-size:11px;font-weight:700;line-height:1;overflow:hidden}.jonmat-tier--card{z-index:2;max-width:calc(100% - 20px);position:absolute;top:10px;left:10px}.jonmat-tier--detail{flex:none;height:30px;padding-right:9px}.jonmat-tier--detail .jonmat-tier-marks svg{flex-basis:16px;width:16px;height:16px}.jonmat-tier--detail strong{font-size:12px}.featured .place-card-image{height:190px}.place-card-image img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.place-card-link:hover img{transform:scale(1.025)}.place-card-image .jm-badge{text-overflow:ellipsis;white-space:nowrap;max-width:68%;position:absolute;top:12px;left:12px;overflow:hidden}.place-card-image .distance{color:var(--jm-ink);left:auto;right:12px}.thumbnail-carousel{width:100%;height:100%;position:relative;overflow:hidden}.thumbnail-carousel-track{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain;width:100%;height:100%;display:flex;overflow:auto hidden}.thumbnail-carousel-track::-webkit-scrollbar{display:none}.thumbnail-carousel-slide{scroll-snap-align:start;scroll-snap-stop:always;background:var(--jm-surface-muted);flex:0 0 100%;width:100%;height:100%;position:relative}.thumbnail-carousel-link{z-index:1;position:absolute;inset:0}.thumbnail-carousel-link:focus-visible{outline:3px solid var(--jm-accent);outline-offset:-3px}.thumbnail-carousel-arrow{z-index:5;color:#fff;opacity:0;background:#191a1ead;border:1px solid #ffffff6b;width:30px;height:30px;transition:opacity .16s,background .16s;position:absolute;top:50%;translate:0 -50%;box-shadow:0 3px 10px #18191d29}.thumbnail-carousel:hover .thumbnail-carousel-arrow,.thumbnail-carousel-arrow:focus-visible{opacity:1}.thumbnail-carousel-arrow:hover{background:#191a1ee6}.thumbnail-carousel-arrow--previous{left:10px}.thumbnail-carousel-arrow--next{right:10px}.thumbnail-carousel-count{z-index:5;color:#fff;text-align:center;pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#191a1eb8;border:1px solid #ffffff3d;border-radius:6px;min-width:36px;padding:4px 7px;font-size:10px;font-weight:700;line-height:1;position:absolute;bottom:11px;left:50%;translate:-50%}.thumbnail-source-link{z-index:4;color:#fff;max-width:calc(100% - 20px);height:28px;font:inherit;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#191a1ed6;border:1px solid #ffffff3d;border-radius:6px;align-items:center;gap:6px;padding:0 8px;font-size:11px;font-weight:700;transition:background .16s,border-color .16s;display:inline-flex;position:absolute;bottom:10px;right:10px}.thumbnail-source-link svg{color:#ff4e45;flex:none}.thumbnail-source-link span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.thumbnail-source-link:hover,.thumbnail-source-link:focus-visible{background:#191a1ef5;border-color:#ffffff7a;outline:none}.place-card-copy{grid-template-columns:minmax(0,1fr) 36px;padding:16px;display:grid;position:relative}.place-card-copy h3{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:17px;line-height:24px;overflow:hidden}.place-card-copy p{color:var(--jm-text-secondary);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:12px;line-height:18px;overflow:hidden}.place-card-arrow{color:var(--jm-accent);place-self:center end}.place-card-address{min-width:0;color:var(--jm-text-muted);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;align-items:center;gap:5px;margin-top:12px;font-size:12px;display:flex;overflow:hidden}.map-page{flex-direction:column;height:calc(100vh - 72px);display:flex}.map-toolbar{justify-content:space-between;align-items:center;gap:20px;width:min(100% - 40px,1180px);min-height:76px;margin:0 auto;display:flex}.map-toolbar h1{margin:0;font-size:18px}.map-toolbar-copy{min-width:0}.map-toolbar p{color:var(--jm-text-muted);text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:12px;overflow:hidden}.map-toolbar .jm-segmented{flex:none}.map-layout{border-top:1px solid var(--jm-border);flex:1;grid-template-columns:minmax(300px,380px) minmax(0,1fr);min-height:0;display:grid}.map-sidebar{border-right:1px solid var(--jm-border);background:var(--jm-surface);min-height:0;overflow:auto}.map-search{z-index:4;border-bottom:1px solid var(--jm-border);background:var(--jm-surface);padding:14px;position:sticky;top:0}.map-list{display:grid}.map-list .place-card-link{border-bottom:1px solid var(--jm-border)}.map-list .place-card-link.selected{box-shadow:inset 3px 0 0 var(--jm-accent)}.map-list .place-card-link.selected .place-card{background:var(--jm-accent-soft)}.map-list .place-card{border:0;border-radius:0;grid-template-columns:112px minmax(0,1fr);display:grid}.map-list .place-card-image{border-radius:8px;height:112px;margin:14px 0 14px 14px}.map-list .place-card-image .jm-badge{display:none}.map-list .place-card-copy{align-content:center}.map-canvas{min-width:0;min-height:0;position:relative}.map-canvas-inner{position:absolute;inset:0}.map-canvas-fallback{color:var(--jm-text-muted);background:var(--jm-surface-muted);text-align:center;place-content:center;justify-items:center;gap:10px;padding:24px;font-size:13px;display:grid;position:absolute;inset:0}.map-canvas-loading{background:linear-gradient(90deg, transparent, #ffffff85, transparent), var(--jm-surface-muted);background-size:220% 100%,100% 100%;animation:1.2s ease-in-out infinite map-loading;position:absolute;inset:0}@keyframes map-loading{0%{background-position:120% 0,0 0}to{background-position:-120% 0,0 0}}@media (max-width:900px){.map-toolbar{width:calc(100% - 32px);min-height:70px}.map-toolbar .jm-segmented button{width:40px;padding:0;font-size:0}.map-layout{display:block;position:relative}.map-sidebar{z-index:5;border-right:0;position:absolute;inset:0}.map-sidebar.hidden{display:none}.map-canvas{position:absolute;inset:0}.map-canvas.hidden,.map-selection-panel{display:none}}.map-selection-panel{z-index:6;border:1px solid var(--jm-border);background:var(--jm-surface);border-radius:8px;width:min(360px,100% - 36px);position:absolute;top:18px;left:18px;overflow:hidden;box-shadow:0 18px 48px #18191d2e}.map-selection-image{background:var(--jm-surface-muted);height:190px;position:relative;overflow:hidden}.map-selection-image img{object-fit:cover;width:100%;height:100%;display:block}.map-selection-image .thumbnail-source-link{max-width:calc(100% - 96px);bottom:12px;right:12px}.map-selection-distance{color:var(--jm-ink);background:#fffffff0;border-radius:6px;padding:7px 9px;font-size:12px;font-weight:800;position:absolute;bottom:12px;left:12px;box-shadow:0 3px 12px #18191d24}.map-selection-close{background:#fffffff0;position:absolute;top:10px;right:10px;box-shadow:0 3px 12px #18191d24}.map-selection-content{padding:18px}.map-selection-category{color:var(--jm-accent);font-size:11px;font-weight:800}.map-selection-content h2{margin:6px 0 5px;font-size:23px;line-height:30px}.map-selection-content>p{color:var(--jm-text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:20px;display:-webkit-box;overflow:hidden}.map-selection-address{color:var(--jm-text-muted);align-items:flex-start;gap:7px;margin-top:16px;font-size:12px;line-height:18px;display:flex}.map-selection-address svg{flex:none;margin-top:1px}.map-selection-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:18px;display:grid}.restaurant-marker{cursor:pointer;filter:drop-shadow(0 4px 7px #18191d38);background:url(/map/restaurant-marker.png) 50%/contain no-repeat;border:0;width:42px;height:42px;transition:filter .16s;position:absolute}.restaurant-marker:hover,.restaurant-marker:focus-visible{filter:drop-shadow(0 0 1px var(--jm-accent)) drop-shadow(0 5px 8px #18191d42);outline:none}.restaurant-marker.selected{filter:drop-shadow(0 0 .5px var(--jm-accent)) drop-shadow(0 7px 10px #18191d47)}.restaurant-marker.selected:after{content:"";border:3px solid var(--jm-accent);pointer-events:none;border-radius:50%;position:absolute;inset:-5px}.user-location-marker{pointer-events:none;place-items:center;width:50px;height:50px;display:grid;position:absolute}.user-location-marker:before{content:"";background:#159a701f;border:2px solid #159a7057;border-radius:50%;animation:1.9s ease-out infinite user-location-pulse;position:absolute;inset:3px}.user-location-marker-icon{z-index:1;background:var(--jm-mint);color:#fff;border:3px solid #fff;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:relative;box-shadow:0 4px 12px #18191d3d}.user-location-marker-icon:after{content:"";background:#ffffff3d;border:2px solid #fff;border-radius:50%;width:10px;height:10px}@keyframes user-location-pulse{0%{opacity:.9;transform:scale(.66)}70%,to{opacity:0;transform:scale(1.22)}}.map-popup{min-width:180px}.map-popup strong{display:block}.map-popup span{color:#646a73;margin-top:4px;font-size:12px;display:block}.detail-page{background:var(--jm-surface);width:min(100%,980px);min-height:calc(100vh - 72px);margin:0 auto}.detail-hero{background:var(--jm-surface-muted);height:min(52vw,480px);min-height:300px;position:relative}.detail-hero img{object-fit:cover;width:100%;height:100%}.detail-hero:after{content:"";background:linear-gradient(#18191d66,#0000);height:120px;position:absolute;inset:0 0 auto}.detail-hero .thumbnail-source-link{bottom:20px;right:20px}.detail-back{z-index:2;position:absolute;top:20px;left:20px}.detail-content{padding:34px 40px 80px}.detail-kicker{color:var(--jm-text-muted);justify-content:space-between;gap:16px;font-size:12px;font-weight:800;display:flex}.detail-content h1{margin:14px 0 4px;font-size:34px}.detail-title-row{flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0 4px;display:flex}.detail-title-row h1{min-width:0;margin:0}.detail-menu{color:var(--jm-text-secondary);margin:0}.detail-action-bar{align-items:center;gap:9px;margin:26px 0;display:flex;position:relative}.detail-action-button,.detail-action-more{border:1px solid var(--jm-border);height:44px;color:var(--jm-ink);background:var(--jm-surface);font:inherit;white-space:nowrap;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:800;transition:filter .14s,border-color .14s,box-shadow .14s;display:inline-flex;overflow:hidden}.detail-action-button{flex:1 1 0;min-width:0;max-width:150px}.detail-action-overflow{flex:0 0 44px;position:relative}.detail-action-overflow>summary{list-style:none}.detail-action-overflow>summary::-webkit-details-marker{display:none}.detail-action-button svg,.detail-action-more svg{flex:none;width:19px;height:19px}.detail-action-more{flex:0 0 44px;width:44px;padding:0;position:relative}.detail-action-overflow[open] .detail-action-more{z-index:22}.detail-action-button:hover,.detail-action-more:hover{filter:brightness(.96)}.detail-action-button:focus-visible,.detail-action-more:focus-visible,.detail-action-menu-item:focus-visible{box-shadow:0 0 0 3px var(--jm-accent-soft);outline:0}.detail-action-button.detail-action-naver{color:#fff;background:#03c75a;border-color:#03b753}.detail-action-button.detail-action-kakao{color:#191919;background:#fee500;border-color:#e6cf00}.detail-action-button.detail-action-line{color:#fff;background:#06c755;border-color:#05aa49}.detail-action-button.detail-action-wechat{color:#fff;background:#07c160;border-color:#069f50}.detail-action-button.detail-action-google{color:#3c4043;background:#fff;border-color:#dadce0}.detail-action-button.detail-action-url{border-color:var(--jm-ink);background:var(--jm-ink);color:var(--jm-bg)}.detail-action-menu{z-index:21;border:1px solid var(--jm-border);background:var(--jm-surface);border-radius:8px;gap:2px;width:238px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 40px #18191d29}.detail-action-menu-item{width:100%;min-height:42px;color:var(--jm-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:11px;padding:8px 10px;font-size:13px;font-weight:700;display:flex}.detail-action-menu-item:hover{background:var(--jm-surface-muted)}.detail-action-menu-icon{flex:0 0 25px;place-items:center;width:25px;height:25px;display:grid}.detail-action-menu-icon svg{width:18px;height:18px}.detail-action-menu-item.detail-action-naver .detail-action-menu-icon{color:#03c75a}.detail-action-menu-item.detail-action-kakao .detail-action-menu-icon{color:#391b1b}.detail-action-menu-item.detail-action-line .detail-action-menu-icon{color:#06c755}.detail-action-menu-item.detail-action-wechat .detail-action-menu-icon{color:#07c160}.detail-action-menu-item.detail-action-url .detail-action-menu-icon{color:var(--jm-text-secondary)}.detail-action-menu-item.detail-action-map .detail-action-menu-icon{color:var(--jm-accent)}.detail-action-menu-item.detail-action-google .detail-action-menu-icon{color:#4285f4}.detail-action-bar .detail-share-feedback{position:absolute;top:calc(100% + 8px);left:0}.detail-share-feedback{color:var(--jm-text-muted);font-size:13px;font-weight:700}.wechat-share-backdrop{z-index:1000;background:#18191d9e;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.wechat-share-dialog{border:1px solid var(--jm-border);background:var(--jm-surface);border-radius:8px;justify-items:center;gap:18px;width:min(100%,360px);padding:18px 20px 24px;display:grid;box-shadow:0 20px 56px #18191d3d}.wechat-share-header{justify-content:space-between;align-items:center;width:100%;display:flex}.wechat-share-header>div{color:#069f50;align-items:center;gap:8px;display:flex}.wechat-share-qr{aspect-ratio:1;border:1px solid var(--jm-border);border-radius:4px;width:240px;max-width:100%}.wechat-share-place{color:var(--jm-text-primary);text-align:center}.detail-info{border-top:1px solid var(--jm-border);border-bottom:1px solid var(--jm-border);gap:0;display:grid}.detail-row{min-height:58px;color:var(--jm-text-secondary);align-items:center;gap:12px;display:flex}.detail-row+.detail-row{border-top:1px solid var(--jm-border)}.detail-address-row{position:relative}.detail-address-row>svg{flex:none}.detail-address-text{overflow-wrap:anywhere;flex:1;min-width:0;padding:10px 0}.detail-address-copy{border:1px solid var(--jm-border);width:40px;height:40px;color:var(--jm-text-secondary);background:var(--jm-surface);cursor:pointer;border-radius:8px;flex:0 0 40px;place-items:center;transition:border-color .16s,color .16s,background .16s;display:grid}.detail-address-copy:hover,.detail-address-copy:focus-visible{color:#167f6d;background:#eef9f6;border-color:#8dcfc0;outline:0}.detail-address-copy.copied{color:#167f6d;background:#e7f8f3;border-color:#8dcfc0}.detail-copy-status{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.detail-contact-link{text-decoration:none;transition:color .16s}.detail-contact-link:hover,.detail-contact-link:focus-visible{color:var(--jm-mint);outline:0}.detail-contact-link>span{overflow-wrap:anywhere;flex:1;gap:2px;min-width:0;display:grid}.detail-contact-link small{color:var(--jm-text-muted);font-size:11px;font-weight:700}.detail-contact-link>svg:last-child{color:var(--jm-text-muted);flex:none}.detail-description{border-left:3px solid var(--jm-sky);color:var(--jm-text-secondary);margin-top:30px;padding-left:18px;line-height:1.75}.detail-taste{border-top:1px solid var(--jm-border);border-bottom:1px solid var(--jm-border);margin-top:32px;padding:24px 0 8px}.detail-taste-heading,.detail-recommendations-title{align-items:flex-start;gap:10px;display:flex}.detail-taste-heading>svg{color:var(--jm-accent);margin-top:1px}.detail-taste-heading p{color:var(--jm-text-muted);margin:4px 0 0;font-size:13px}.detail-taste-summary{border-left:3px solid var(--jm-accent);color:var(--jm-text-primary);background:var(--jm-accent-soft);margin:18px 0 0;padding:14px 16px;font-size:15px;font-weight:650;line-height:1.7}.detail-recommendations{margin-top:24px}.detail-recommendations-title{color:var(--jm-text-primary);align-items:center}.detail-recommendations-title>svg{color:var(--jm-mint)}.detail-recommendation-list{margin-top:10px}.detail-recommendation{border-top:1px solid var(--jm-border);grid-template-columns:34px minmax(0,1fr);gap:12px;padding:16px 0;display:grid}.detail-recommendation-number{color:var(--jm-accent);font-size:12px;font-weight:850}.detail-recommendation-name{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.detail-recommendation-name strong{font-size:16px}.detail-recommendation-name span{color:var(--jm-mint);background:var(--jm-mint-soft);border-radius:4px;padding:3px 6px;font-size:10px;font-weight:800}.detail-recommendation p{color:var(--jm-text-secondary);margin:6px 0 0;line-height:1.6}.detail-recommendation small{color:var(--jm-text-muted);gap:6px;margin-top:6px;line-height:1.55;display:flex}.detail-recommendation small b{color:var(--jm-sky);flex:none}.visit-records{margin-top:34px}.visit-records-heading{align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.visit-records-heading p{color:var(--jm-text-muted);margin:4px 0 0;font-size:13px}.visit-record-list{gap:12px;display:grid}.visit-record{border:1px solid var(--jm-border);background:var(--jm-surface);width:100%;min-height:64px;color:var(--jm-text-primary);text-align:left;border-radius:8px;padding:14px 16px}.visit-record.rich{border-color:color-mix(in srgb, var(--jm-mint) 35%, var(--jm-border));padding:18px}.visit-record-header{align-items:center;gap:12px;display:flex}.visit-record-icon{background:var(--jm-mint);color:#fff;border-radius:8px;flex:none;place-items:center;width:38px;height:38px;display:grid}.visit-record-source{flex:1;gap:3px;min-width:0;display:grid}.visit-record-source small{color:var(--jm-text-muted);align-items:center;gap:5px;font-size:12px;display:flex}.visit-record-link{border:1px solid var(--jm-border);min-height:36px;color:var(--jm-text-secondary);background:var(--jm-bg);border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:0 11px;font-size:12px;font-weight:750;text-decoration:none;transition:border-color .16s,color .16s,background .16s;display:inline-flex}.visit-record-link:hover,.visit-record-link:focus-visible{border-color:var(--jm-mint);color:var(--jm-mint);background:var(--jm-mint-soft);outline:0}.visit-record-body{border-top:1px solid var(--jm-border);margin:16px 0 0 50px;padding-top:16px}.visit-record-body h3{margin:0;font-size:17px;line-height:1.45}.visit-record-body>p{color:var(--jm-text-secondary);margin:8px 0 0;font-size:14px;line-height:1.65}.visit-record-body .visit-record-lead{color:var(--jm-text-primary);font-weight:650}.visit-taste-note{border-left:3px solid var(--jm-accent);background:var(--jm-accent-soft);align-items:flex-start;gap:10px;margin-top:16px;padding:13px 14px;display:flex}.visit-taste-note>svg{color:var(--jm-accent);flex:none;margin-top:2px}.visit-taste-note strong,.visit-key-points>strong,.visit-menus>strong{font-size:12px}.visit-taste-note p{color:var(--jm-text-secondary);margin:4px 0 0;font-size:13px;line-height:1.65}.visit-key-points,.visit-menus{margin-top:18px}.visit-key-points>strong,.visit-menus>strong{color:var(--jm-text-secondary);align-items:center;gap:7px;display:flex}.visit-key-points>strong svg,.visit-menus>strong svg{color:var(--jm-mint)}.visit-key-points ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 22px;margin:10px 0 0;padding:0;list-style:none;display:grid}.visit-key-points li{color:var(--jm-text-secondary);padding-left:13px;font-size:13px;line-height:1.55;position:relative}.visit-key-points li:before{content:"";background:var(--jm-mint);border-radius:50%;width:5px;height:5px;position:absolute;top:.58em;left:0}.visit-menus>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin-top:10px;display:grid}.visit-menus>div>span{border-left:2px solid var(--jm-sky);gap:3px;min-width:0;padding-left:10px;display:grid}.visit-menus b{font-size:13px}.visit-menus small{color:var(--jm-text-muted);font-size:12px;line-height:1.5}.detail-data-notice{border-top:1px solid var(--jm-border);color:var(--jm-text-muted);align-items:flex-start;gap:10px;margin-top:34px;padding-top:18px;display:flex}.detail-data-notice>svg{color:var(--jm-sky);flex:none;margin-top:2px}.detail-data-notice strong{color:var(--jm-text-secondary);font-size:13px}.detail-data-notice p{margin:4px 0 0;font-size:12px;line-height:1.65}.about-page{background:var(--jm-bg);width:100%}.about-page h1,.about-page h2,.about-page h3,.about-page p{margin-top:0}.about-page p{color:var(--jm-text-secondary);line-height:1.7}.about-section-inner,.about-hero-inner{width:min(100% - 48px,1120px);margin:0 auto}.about-page [data-reveal]{opacity:0;transition:opacity .68s,transform .68s cubic-bezier(.22,1,.36,1);transform:translateY(28px)}.about-page [data-reveal].is-visible{opacity:1;transform:translateY(0)}.about-eyebrow{color:var(--jm-mint);letter-spacing:0;margin-bottom:12px;font-size:12px;font-weight:800;display:block}.about-hero{border-bottom:1px solid var(--jm-border);background:#fff;min-height:600px;position:relative;overflow:hidden}.about-hero-art{background:url(/home/hero-food-friends.webp?v=2) center bottom 20px/min(2038px,100vw) no-repeat;animation:7s ease-in-out infinite about-food-stage;position:absolute;inset:-12px}.about-hero-sushi{z-index:2;filter:drop-shadow(0 10px 12px #181c221f);width:74px;height:auto;animation:4.5s ease-in-out infinite about-sushi-drift;position:absolute;top:72px;right:max(40px,50vw - 600px)}.about-hero-inner{z-index:1;padding:100px 0 86px;position:relative}.about-intro>*{opacity:0;animation:.72s cubic-bezier(.22,1,.36,1) forwards about-intro-up;transform:translateY(24px)}.about-intro>:nth-child(2){animation-delay:90ms}.about-intro>:nth-child(3){animation-delay:.18s}.about-intro>:nth-child(4){animation-delay:.27s}.about-intro>:nth-child(5){animation-delay:.36s}.about-intro>.about-eyebrow{transform:translateY(-18px)}.about-hero h1{margin-bottom:18px;font-size:clamp(54px,7vw,80px);line-height:.98}.about-hero strong{max-width:510px;font-size:21px;line-height:1.5;display:block}.about-hero p{max-width:500px;margin:18px 0 30px;font-size:15px}.about-primary-cta{isolation:isolate;position:relative;overflow:hidden;box-shadow:0 12px 28px #ff58583d}.about-primary-cta:after{z-index:-1;content:"";background:linear-gradient(90deg,#0000,#ffffffad,#0000);width:34%;height:380%;animation:3.2s ease-in-out infinite about-cta-shine;position:absolute;top:-140%;left:-40%;transform:translate(-180%)rotate(18deg)}.about-name-story{border-bottom:1px solid var(--jm-border);background:#fff;padding:92px 0}.about-name-heading{max-width:650px}.about-name-heading h2{margin-bottom:46px}.about-name-equation{grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr) 42px minmax(0,1.12fr);align-items:stretch;display:grid}.about-name-term{border-top:3px solid #ff7171;border-bottom:1px solid var(--jm-border);min-width:0;padding:26px 24px 28px}.about-name-term:nth-of-type(2){border-top-color:#1fae96}.about-name-term strong{margin-bottom:16px;font-size:27px;line-height:1.2;display:block}.about-name-term p{margin-bottom:0;font-size:14px}.about-name-operator{color:var(--jm-text-muted);place-items:center;font-size:24px;font-weight:800;display:grid}.about-name-result{background:#fff8df;border-top-color:#f2bd35}.about-name-result strong{color:#b23e46}.about-name-note{max-width:820px;margin:30px 0 0;font-size:15px}.about-promise,.about-occasions,.about-how{padding:100px 0}.about-promise{background:#f4faf8;overflow:hidden}.about-promise-grid{grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr);align-items:center;gap:88px;display:grid}.about-page h2{margin-bottom:34px;font-size:34px;line-height:1.28}.about-promise h2{margin-bottom:22px}.about-promise p{margin-bottom:0;font-size:16px}.about-route-demo{background:#fff;border:1px solid #d9e8e3;border-radius:8px;height:340px;position:relative;overflow:hidden;box-shadow:0 20px 50px #2448411a}.about-route-grid{opacity:.58;background-image:linear-gradient(#edf3f1 1px,#0000 1px),linear-gradient(90deg,#edf3f1 1px,#0000 1px);background-size:34px 34px;position:absolute;inset:0}.about-route-line{border-top:3px dashed #55bca7;border-radius:50%;width:255px;height:82px;position:absolute;top:154px;left:90px;transform:rotate(-15deg)}.about-route-origin,.about-route-pin{z-index:2;color:#fff;border-radius:50%;place-items:center;display:grid;position:absolute;box-shadow:0 8px 18px #1e39332e}.about-route-origin{background:#1fae96;width:54px;height:54px;animation:2.4s ease-out infinite about-location-pulse;bottom:68px;left:60px}.about-route-pin{background:#ff6262;width:46px;height:46px}.about-route-pin-one{top:62px;left:44%}.about-route-pin-two{color:#332b20;background:#ffd86b;top:102px;right:68px}.about-route-sushi{filter:drop-shadow(0 10px 12px #181c221f);width:90px;height:auto;animation:3.4s ease-in-out infinite about-sushi-bob;position:absolute;bottom:-36px;right:17px}.about-occasions{border-top:1px solid var(--jm-border);border-bottom:1px solid var(--jm-border);background:#fff;position:relative;overflow:hidden}.about-section-heading{justify-content:space-between;align-items:flex-end;gap:40px;min-height:124px;display:flex}.about-heading-sushi{filter:drop-shadow(0 10px 10px #181c221a);width:66px;height:auto;margin:0 38px -6px 0;animation:3.8s ease-in-out .4s infinite about-sushi-bob}.about-occasion-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.about-occasion-card{min-height:236px;padding:26px;transition:opacity .68s,transform .68s cubic-bezier(.22,1,.36,1),border-color .22s,box-shadow .22s}.about-occasion-card:hover{border-color:#ffc2ca;transform:translateY(-7px);box-shadow:0 18px 34px #262c341a}.about-occasion-card>span{color:#c53b61;background:#ffedf2;border-radius:8px;place-items:center;width:46px;height:46px;margin-bottom:34px;display:grid}.about-occasion-card:nth-child(2)>span{color:#167d70;background:#e4f7f2}.about-occasion-card:nth-child(3)>span{color:#3b63b7;background:#ebf1ff}.about-occasion-card:nth-child(4)>span{color:#8b6715;background:#fff5d6}.about-occasion-card h3,.about-step h3{margin-bottom:10px;font-size:17px}.about-occasion-card p,.about-step p{margin-bottom:0;font-size:14px}.about-how{background:#fff8df;overflow:hidden}.about-how-heading{max-width:560px}.about-step-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid;position:relative}.about-step-grid:before{content:"";background:#e3c45b;height:2px;position:absolute;top:37px;left:17%;right:17%}.about-step{background:#fffdf5;border:1px solid #eadcaa;border-radius:8px;min-height:248px;padding:26px;position:relative;box-shadow:0 12px 28px #71571412}.about-step-number{color:#8a7221;font-size:12px;font-weight:800;position:absolute;top:26px;right:24px}.about-step-icon{z-index:1;color:#7a5d00;background:#ffe58b;border:1px solid #efd26f;border-radius:50%;place-items:center;width:50px;height:50px;margin-bottom:34px;display:grid;position:relative}.about-principle{color:#fff;background:#20242b;padding:58px 0;overflow:hidden}.about-principle .about-section-inner{grid-template-columns:108px minmax(0,.72fr) minmax(0,1.28fr);align-items:center;gap:50px;display:grid}.about-principle-sushi{filter:drop-shadow(0 12px 15px #00000040);width:74px;height:auto;animation:4s ease-in-out infinite about-sushi-drift}.about-principle strong{font-size:22px;line-height:1.4}.about-principle p{color:#d8dce2;margin-bottom:0}.about-cta{background:#e7f8f2;min-height:390px;padding:92px 0 118px;position:relative;overflow:hidden}.about-cta-art{background:url(/home/hero-food-friends.webp?v=2) center bottom 24px/min(2038px,100vw) no-repeat;position:absolute;inset:0}.about-cta .about-section-inner{z-index:1;justify-content:space-between;align-items:center;gap:36px;display:flex;position:relative}.about-cta .about-section-inner>div{max-width:520px}.about-cta h2{margin-bottom:8px}.about-cta p{margin-bottom:0}@keyframes about-intro-up{to{opacity:1;transform:translateY(0)}}@keyframes about-food-stage{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes about-sushi-drift{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-14px)rotate(4deg)}}@keyframes about-sushi-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes about-location-pulse{0%{box-shadow:0 0 #1fae9657}70%,to{box-shadow:0 0 0 18px #1fae9600}}@keyframes about-cta-shine{0%,45%{transform:translate(-180%)rotate(18deg)}75%,to{transform:translate(560%)rotate(18deg)}}.app-footer{color:#f5f7fa;background:#20242b;position:relative;overflow:hidden}.app-footer-inner{grid-template-columns:minmax(240px,.9fr) 150px minmax(360px,1.25fr);gap:64px;width:min(100% - 48px,1120px);margin:0 auto;padding:68px 0 54px;display:grid;position:relative}.app-footer .jm-brand{color:#fff}.app-footer-brand p,.app-footer-data p{color:#aeb6c2;line-height:1.65}.app-footer-brand p{max-width:330px;margin:18px 0 0;font-size:14px}.app-footer-nav{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.app-footer-nav a{color:#dfe3e9;font-size:14px;font-weight:700;text-decoration:none;transition:color .18s,transform .18s}.app-footer-nav a:hover{color:#fff;transform:translate(3px)}.app-footer-data{z-index:1;position:relative}.app-footer-data strong{color:#fff;margin-bottom:12px;font-size:15px;display:block}.app-footer-data p{margin:0 0 8px;font-size:13px}.app-footer-data .app-footer-source{color:#8f99a7;font-size:12px}.app-footer-policy-link{color:#8fe0ce;text-underline-offset:4px;background:0 0;border:0;align-items:center;gap:6px;margin-top:8px;padding:0;font-size:13px;font-weight:800;text-decoration:underline;display:inline-flex}.app-footer-policy-link:hover{color:#c8f3e9}.app-footer-sushi{opacity:.82;filter:drop-shadow(0 12px 16px #00000047);width:72px;height:auto;animation:4.5s ease-in-out infinite about-sushi-drift;position:absolute;bottom:-56px;right:-12px}.app-footer-copyright{border-top:1px solid #343941}.app-footer-copyright span{color:#7f8997;width:min(100% - 48px,1120px);margin:0 auto;padding:20px 0 24px;font-size:11px;display:block}.footer-dialog{z-index:80;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.footer-dialog-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#15191fa8;border:0;width:100%;height:100%;position:absolute;inset:0}.footer-dialog-panel{z-index:1;border:1px solid var(--jm-border);background:#fff;border-radius:8px;width:min(100%,720px);max-height:min(760px,100dvh - 48px);padding:30px;position:relative;overflow-y:auto;box-shadow:0 28px 80px #10141a47}.footer-dialog-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.footer-dialog-heading span{color:var(--jm-mint);margin-bottom:7px;font-size:11px;font-weight:800;display:block}.footer-dialog-heading h2{margin:0;font-size:25px}.footer-dialog-lead{color:var(--jm-text-secondary);margin:18px 0 24px;line-height:1.7}.footer-rule-list{border-top:1px solid var(--jm-border)}.footer-rule-list section{border-bottom:1px solid var(--jm-border);grid-template-columns:42px minmax(0,1fr);gap:16px;padding:22px 0;display:grid}.footer-rule-list section>span{color:#157968;background:#e7f8f3;border-radius:8px;place-items:center;width:42px;height:42px;display:grid}.footer-rule-list h3{margin:0 0 7px;font-size:15px}.footer-rule-list p{color:var(--jm-text-secondary);margin:0;font-size:13px;line-height:1.65}.footer-dialog-actions{justify-content:flex-end;padding-top:24px;display:flex}.policy-page{background:#fff;min-height:70vh}.policy-inner{width:min(100% - 48px,1040px);margin:0 auto}.policy-hero{border-bottom:1px solid var(--jm-border);background:#fff;padding:76px 0 66px}.policy-eyebrow{color:#167f6d;align-items:center;gap:7px;margin-bottom:18px;font-size:11px;font-weight:850;display:inline-flex}.policy-hero h1{margin:0 0 20px;font-size:42px;line-height:1.2}.policy-hero p{max-width:760px;color:var(--jm-text-secondary);margin:0 0 24px;font-size:17px;line-height:1.75}.policy-hero small{color:var(--jm-text-muted);font-size:12px}.policy-summary{background:#eaf8f4;border-bottom:1px solid #bfe7dc}.policy-summary .policy-inner{color:#135f53;grid-template-columns:44px minmax(0,1fr);gap:18px;padding:28px 0;display:grid}.policy-summary .policy-inner>svg{margin-top:2px}.policy-summary h2{margin:0 0 6px;font-size:17px}.policy-summary p{color:#356e65;max-width:850px;margin:0;font-size:14px;line-height:1.7}.policy-document{padding:20px 0 80px}.policy-section{border-bottom:1px solid var(--jm-border);grid-template-columns:280px minmax(0,1fr);gap:54px;padding:48px 0;display:grid}.policy-section:last-child{border-bottom:0}.policy-section-heading{align-items:flex-start;gap:13px;display:flex}.policy-section-heading>span{border:1px solid var(--jm-border);color:#4c596b;background:var(--jm-surface-muted);border-radius:8px;flex:none;place-items:center;width:40px;height:40px;display:grid}.policy-section-heading h2{margin:8px 0 0;font-size:19px;line-height:1.4}.policy-section--allowed .policy-section-heading>span{color:#167f6d;background:#eaf8f4;border-color:#bfe7dc}.policy-section--prohibited .policy-section-heading>span{color:#c44949;background:#fff1f1;border-color:#ffd0d0}.policy-section-body>p{color:var(--jm-text-secondary);margin:0;font-size:14px;line-height:1.78}.policy-section-body ul{gap:12px;margin:22px 0 0;padding:0;list-style:none;display:grid}.policy-section-body li{color:#354052;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:9px;font-size:14px;line-height:1.65;display:grid}.policy-section-body li>svg{color:#167f6d;stroke-width:2.5px;margin-top:4px}.policy-section--prohibited .policy-section-body li>svg{color:#c44949}.policy-note{background:#f5f6f8;border-left:3px solid #7a8799;padding:15px 17px;color:#4c596b!important;margin-top:24px!important;font-size:13px!important}.policy-source-links{flex-wrap:wrap;gap:8px;margin-top:22px;display:flex}.policy-source-links a{border:1px solid var(--jm-border-strong);height:40px;color:var(--jm-ink);background:#fff;border-radius:8px;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:750;display:inline-flex}.policy-source-links a:hover{color:#167f6d;background:#f3fbf8;border-color:#88cbbb}@media (max-width:1080px){.discovery-inner{grid-template-columns:minmax(360px,1fr) auto}.home-results-layout{display:block}.home-map-preview{display:none}.nearby-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.app-footer-inner{grid-template-columns:minmax(220px,.8fr) 120px minmax(320px,1.2fr);gap:40px}}@media (max-width:880px){.discovery-inner{display:block}.quick-filters{justify-content:flex-start;margin-top:14px}.nearby-grid,.about-occasion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-footer-inner{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}.app-footer-nav{display:none}}@media (max-width:760px){.thumbnail-carousel-arrow{display:none}.nearby-feed{height:min(680px,100dvh - 150px);min-height:480px;padding-right:4px}.app-frame{padding-bottom:68px}.desktop-nav{display:none}.app-header .jm-icon-button{margin-left:0}.app-nav{z-index:40;border-top:1px solid var(--jm-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;justify-content:center;align-items:center;height:68px;display:flex;position:fixed;bottom:0;left:0;right:0}.app-header-inner{gap:14px;width:calc(100% - 32px);height:64px}.app-header .jm-brand{font-size:21px}.locale-menu{margin-left:auto}.locale-trigger{gap:5px;width:70px;min-width:70px;height:42px;padding:0 7px}.locale-trigger-label{display:none}.locale-trigger-code{font-size:11px;display:inline}.locale-menu-backdrop{z-index:60;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#12161e6b;border:0;padding:0;display:block;position:fixed;inset:0}.locale-popover{z-index:61;top:auto;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));border-radius:12px;width:auto;padding:18px;animation:.18s ease-out locale-sheet-in;position:fixed;left:12px;box-shadow:0 22px 54px #0a0e1647}.locale-popover-heading{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.locale-popover-heading>div{gap:3px;display:grid}.locale-popover-heading small{color:var(--jm-mint);font-size:10px;font-weight:800}.locale-popover-heading strong{font-size:18px}.locale-menu-close{border:1px solid var(--jm-border);width:40px;height:40px;color:var(--jm-text-secondary);background:var(--jm-surface);border-radius:8px;place-items:center;display:grid}.locale-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.locale-option{border:1px solid var(--jm-border);background:var(--jm-surface);border-radius:8px;height:60px;padding:0 11px}.locale-option.selected{border-color:var(--jm-accent)}@keyframes locale-sheet-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.app-nav a{flex-direction:column;flex:1;gap:2px;width:auto;font-size:10px}.home-hero{min-height:212px}.home-hero-inner{width:100%;min-height:212px}.home-hero-inner:before{background-image:linear-gradient(90deg,#fff 0% 62%,#fffffff0 70%,#fff0 100%),url(/home/hero-food-friends.webp?v=2);background-position:50%,100% 100%;background-repeat:no-repeat;background-size:100% 100%,auto 104px}.hero-copy{max-width:278px;padding:30px 20px 28px}.hero-copy h1{font-size:28px;line-height:1.18}.hero-copy p{font-size:12px}.discovery{padding:0}.discovery-inner{width:calc(100% - 40px);padding:20px 0}.discovery form .jm-button{width:48px;padding:0;font-size:0}.quick-filters{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.quick-filters .jm-chip{min-width:0;padding:0 6px;font-size:12px}.content-section{padding:28px 20px}.content-inner{width:100%}.featured-grid{scroll-snap-type:x mandatory;margin-right:-20px;padding-right:20px;display:flex;overflow-x:auto}.featured-grid .place-card-link{scroll-snap-align:start;flex:0 0 82vw;width:310px}.featured .place-card-image{height:178px}.nearby-grid{grid-template-columns:1fr}.place-card-image{height:170px}.map-page{height:calc(100dvh - 68px)}.detail-hero{height:360px;min-height:0}.detail-content{padding:26px 20px 80px}.detail-content h1{font-size:28px}.detail-action-bar{gap:6px}.detail-action-button{padding:0 10px;font-size:12px}.detail-taste-summary{padding:12px 13px;font-size:14px}.detail-recommendation{grid-template-columns:28px minmax(0,1fr);gap:8px}.detail-recommendation small{display:block}.detail-recommendation small b{margin-bottom:2px;display:block}.visit-record.rich{padding:15px}.visit-record-header{align-items:flex-start}.visit-record-link{width:38px;min-width:38px;padding:0}.visit-record-link span,.visit-record-link svg:last-child{display:none}.visit-record-body{margin-left:0}.visit-record-body h3{font-size:16px}.visit-key-points ul,.visit-menus>div{grid-template-columns:1fr}.about-section-inner,.about-hero-inner{width:calc(100% - 40px)}.about-hero{min-height:650px}.about-hero-art{background-position:center bottom 18px;background-size:auto 210px;inset:-8px}.about-hero-sushi{display:none}.about-hero-inner{padding:58px 0 230px}.about-hero h1{font-size:52px}.about-hero strong,.about-hero p{max-width:100%}.about-promise,.about-name-story,.about-occasions,.about-how{padding:58px 0}.about-name-heading h2{margin-bottom:30px}.about-name-equation{grid-template-columns:1fr;gap:10px}.about-name-operator{height:26px}.about-name-term{padding:22px 20px 24px}.about-name-term strong{font-size:23px}.about-name-note{margin-top:24px}.about-promise-grid,.about-principle .about-section-inner{grid-template-columns:1fr;gap:28px}.about-page h2{margin-bottom:26px;font-size:26px}.about-route-demo{height:286px}.about-route-line{width:58%;top:132px;left:58px}.about-route-origin{bottom:48px;left:34px}.about-route-pin-one{top:48px}.about-route-pin-two{top:82px;right:42px}.about-route-sushi{width:76px;right:4px}.about-section-heading{align-items:flex-start;min-height:0}.about-heading-sushi{width:50px;margin:0 8px 0 0}.about-occasion-grid,.about-step-grid{grid-template-columns:1fr;gap:12px}.about-step-grid:before{display:none}.about-occasion-card{min-height:0}.about-occasion-card>span{margin-bottom:18px}.about-step{min-height:0;padding:24px 24px 24px 82px}.about-step-icon{width:44px;height:44px;margin:0;position:absolute;top:24px;left:20px}.about-step-number{top:24px;right:20px}.about-principle-sushi{width:58px}.about-cta{min-height:520px;padding:58px 0 228px}.about-cta-art{background-position:center bottom 28px;background-size:auto 185px}.about-cta .about-section-inner{flex-direction:column;align-items:flex-start}.app-footer-inner{grid-template-columns:1fr;gap:34px;width:calc(100% - 40px);padding:48px 0 42px}.app-footer-brand p{max-width:100%}.app-footer-sushi{width:58px;bottom:-62px;right:4px}.app-footer-copyright span{width:calc(100% - 40px);padding-bottom:86px}.policy-inner{width:calc(100% - 40px)}.policy-hero{padding:50px 0 44px}.policy-hero h1{font-size:31px}.policy-hero p{font-size:15px}.policy-summary .policy-inner{grid-template-columns:32px minmax(0,1fr);gap:12px;padding:24px 0}.policy-summary .policy-inner>svg{width:24px;height:24px}.policy-document{padding:8px 0 46px}.policy-section{grid-template-columns:1fr;gap:20px;padding:38px 0}.policy-section-heading{align-items:center}.policy-section-heading h2{margin-top:0}.policy-source-links{display:grid}.policy-source-links a{justify-content:space-between}.footer-dialog{align-items:end;padding:12px}.footer-dialog-panel{max-height:calc(100dvh - 24px);padding:24px 20px}}@media (max-width:350px){.detail-action-button{gap:0;padding:0}.detail-action-button>span{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}}@media (max-width:520px){.location-control>span:last-child{display:none}.about-hero{min-height:680px}.about-hero h1{font-size:46px}.about-hero strong{font-size:18px}.about-section-heading{display:block}.about-heading-sushi{display:none}}@media (prefers-reduced-motion:reduce){.about-page *,.about-page :before,.about-page :after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.about-page [data-reveal],.about-intro>*{opacity:1;transform:none}}
