.food-guide{display:flex;flex-direction:column;gap:32px;padding-top:22px;padding-bottom:56px;scroll-margin-top:105px}.food-guide .breadcrumbs{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:12px}.food-guide .breadcrumbs a{color:var(--navy);text-underline-offset:3px}.food-guide .food-intro{position:relative;display:flex;flex-direction:column;gap:16px;padding:12px 4px 10px}.food-guide .ghost{position:absolute;right:0;top:0;writing-mode:vertical-rl;font-family:var(--font-sign);font-weight:900;font-size:110px;color:#d9302c12;pointer-events:none}.food-guide .label{align-self:flex-start;display:inline-block;background:var(--red);color:#fff;padding:4px 9px;box-shadow:2px 2px 0 var(--ink);font-size:12px;font-weight:800}.food-guide h1{font-size:36px;letter-spacing:-1.3px;position:relative}.food-guide .lead{font-size:15px;color:var(--ink-2);line-height:1.8;position:relative}.food-guide .intro-meta{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:12px;font-weight:700;color:var(--navy)}.food-guide .stamp{display:flex;flex-direction:column;align-items:center;align-self:flex-start;padding:5px 10px;border:2px solid var(--navy);border-radius:8px;transform:rotate(-6deg);color:var(--navy);margin:6px 0}.food-guide .stamp b{font-size:14px}.food-guide .stamp small{font-size:10px;font-weight:700}.food-guide .evidence{padding:13px 16px;background:var(--navy-tint);border-radius:12px;color:var(--ink-3);font-size:12px;line-height:1.8}.food-guide .food-section{display:grid;gap:16px}.food-guide .food-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.food-guide .food-section-head .section-title{font-size:21px}.food-guide .saved-nav{cursor:pointer;background:transparent;gap:6px;white-space:nowrap;font-size:11px;height:42px;padding:0 10px}.food-guide .saved-nav b{font-size:12px}.food-guide .saved-nav[aria-pressed=true]{background:var(--red);border-color:var(--red);color:#fff}.food-guide .icon{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.food-guide .svg-defs{position:absolute;width:0;height:0;overflow:hidden}.food-guide .filter-bar{display:flex;justify-content:space-between;gap:8px;align-items:center}.food-guide .filters{display:flex;gap:6px;flex-wrap:wrap}.food-guide .filter{gap:6px;font-size:12px;padding:0 11px;cursor:pointer;height:40px}.food-guide .filter span{font-size:10px;opacity:.7}.food-guide .filter.selected{background:var(--ink);color:#fff}.food-guide .map-jump{height:40px;font-size:11px;padding:0 10px;white-space:nowrap}.food-guide .results-meta{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:10px}.food-guide .restaurant-grid{display:grid;gap:24px}.food-guide .restaurant-card{border:2px solid var(--ink);border-radius:16px;background:var(--white);box-shadow:3px 3px 0 var(--ink);overflow:hidden;min-width:0}.food-guide .card-visual{height:220px;position:relative;overflow:hidden;background:var(--paper-2)}.food-guide .card-visual>img{width:100%;height:100%;object-fit:cover}.food-guide .card-visual:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#111a);pointer-events:none}.food-guide .number{position:absolute;top:13px;left:16px;font-size:28px;font-weight:800;color:#fff;text-shadow:1px 2px 3px #000a;z-index:1}.food-guide .save-button{position:absolute;right:13px;top:13px;border:1.5px solid var(--ink);height:38px;width:38px;border-radius:10px;background:var(--paper);color:var(--ink);display:grid;place-items:center;cursor:pointer;z-index:2}.food-guide .save-button.saved{color:#fff;background:var(--red)}.food-guide .save-button.saved .icon{fill:currentColor}.food-guide .cover-caption{position:absolute;bottom:14px;left:16px;right:16px;display:flex;align-items:center;justify-content:space-between;gap:10px;z-index:1}.food-guide .area-pill{padding:3px 8px;color:var(--ink);background:var(--paper);font-size:11px;font-weight:800;border-radius:4px}.food-guide .cover-kind{font-size:9px;color:#fff}.food-guide .card-body{padding:20px}.food-guide .card-topline{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:11px}.food-guide .category{font-size:11px;font-weight:700;color:var(--red)}.food-guide .confirmed{font-size:10px;color:var(--navy)}.food-guide .confirmed:before{content:"✓ ";font-weight:800}.food-guide h3{font-size:24px;margin:8px 0 4px}.food-guide .name-en{font-size:10px;color:var(--muted);line-height:1.7}.food-guide .card-description{font-size:13px;color:var(--ink-3);margin:12px 0 19px}.food-guide .food-heading{display:flex;gap:10px;align-items:center;font-size:11px;font-weight:700;color:var(--ink-3);margin-bottom:10px}.food-guide .food-heading span{height:1px;flex:1;background:var(--paper-2)}.food-guide .food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.food-guide .food-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.food-guide .food-item{min-width:0}.food-guide .food-item :is(button,a){display:block;position:relative;width:100%;padding:0;border:0;background:transparent;border-radius:6px;overflow:hidden;cursor:pointer}.food-guide .food-item img{width:100%;height:76px;object-fit:cover}.food-guide .food-grid.two img{height:92px}.food-guide .food-time{position:absolute;right:3px;bottom:3px;background:#111c;color:#fff;padding:2px 4px;font-size:8px;border-radius:3px}.food-guide .food-item p{font-size:10px;margin-top:7px;color:var(--ink-2);line-height:1.5;word-break:keep-all}.food-guide .address-line{display:flex;gap:7px;font-size:10px;line-height:1.7;color:var(--muted);margin:18px 0 14px;padding-top:14px;border-top:1px dashed var(--paper-2);min-height:46px}.food-guide .button{display:inline-flex;gap:6px;align-items:center;justify-content:center;min-height:42px;padding:9px 12px;border:1.5px solid var(--ink);border-radius:9px;background:var(--paper);color:var(--ink);text-decoration:none;font-size:11px;font-weight:700;cursor:pointer}.food-guide .button:hover{background:var(--ink);color:#fff}.food-guide .button.primary{background:var(--red);color:#fff;border-color:var(--red)}.food-guide .card-buttons{display:flex;gap:7px;align-items:center}.food-guide .details-button{margin-left:auto;background:transparent;border:0;font-size:11px;color:var(--navy);font-weight:700;cursor:pointer;min-height:44px;padding:4px}.food-guide .source-credit{display:block;margin-top:12px;color:var(--muted);font-size:9px;text-decoration:none}.food-guide .source-credit:hover{text-decoration:underline}.food-guide .empty{padding:40px 20px;text-align:center}.food-guide .empty p{font-size:13px;margin:12px 0 20px;color:var(--ink-3)}.food-guide .map-section{display:flex;flex-direction:column;gap:16px;scroll-margin-top:105px}.food-guide .map-section .section-title{margin-top:12px}.food-guide .section-lead{font-size:13px;color:var(--ink-3);line-height:1.8}.food-guide .map-shell{overflow:hidden;display:grid;grid-template-columns:1fr;isolation:isolate}.food-guide .map-sidebar{background:#fff}.food-guide .map-sidebar-heading{padding:17px 16px;display:flex;align-items:center;justify-content:space-between;font-size:12px}.food-guide .map-sidebar-heading span{font-size:9px;color:var(--muted);letter-spacing:1px}.food-guide #map-list{display:grid;grid-template-columns:1fr 1fr}.food-guide .map-place{display:flex;gap:8px;align-items:center;text-align:left;width:100%;border:0;border-top:1px solid var(--paper-2);padding:12px;background:transparent;cursor:pointer}.food-guide .map-place:nth-child(odd){border-right:1px solid var(--paper-2)}.food-guide .place-num{display:grid;place-items:center;width:26px;height:26px;border:1.5px solid var(--ink);border-radius:7px;font-size:12px;font-weight:800;flex-shrink:0}.food-guide .map-place strong{font-size:11px;color:var(--ink)}.food-guide .map-place small{display:block;font-size:9px;color:var(--muted);margin-top:3px}.food-guide .map-place.active{background:var(--navy-tint)}.food-guide .map-place.active .place-num{background:var(--navy);color:#fff;border-color:var(--navy)}.food-guide .place-arrow{margin-left:auto;color:var(--navy)}.food-guide .map-note{font-size:10px;color:var(--muted);padding:13px 16px;border-top:1px dashed var(--paper-2);line-height:1.8}.food-guide #food-map{height:350px;background:var(--paper-2);position:relative}.food-guide .map-pin{display:grid!important;place-items:center;border:2px solid var(--ink);border-radius:50%;background:var(--navy);color:#fff;font-size:15px;font-weight:800;box-shadow:2px 2px #fff}.food-guide .map-pin.selected-pin{background:var(--red)}.food-guide .popup-title{font-family:var(--font);font-size:14px;font-weight:800;margin-bottom:6px}.food-guide .popup-info{font-family:var(--font);font-size:11px;color:var(--ink-3);line-height:1.7}.food-guide .popup-link{display:inline-block;font-family:var(--font);font-size:12px;font-weight:700;margin-top:8px;color:var(--navy)!important}.food-guide .map-selection{padding:13px 16px;border-radius:10px;background:var(--navy-tint);color:var(--navy);font-size:12px;line-height:1.8}.food-guide .map-selection a{margin-left:8px;text-decoration:underline}.food-guide .map-footer{display:flex;justify-content:space-between;gap:12px;font-size:9px;color:var(--muted)}.food-guide .map-error{position:absolute;bottom:24px;left:12px;right:12px;z-index:800;padding:10px;border:1px solid var(--ink);border-radius:8px;background:var(--paper);font-size:10px}.food-guide #map-fallback{padding:60px 25px;font-size:13px;color:var(--ink-3)}.food-guide .source-section{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:24px;border:2px dashed var(--ink);border-radius:14px}.food-guide .source-section h2{font-size:20px;margin-top:15px}.food-guide .source-section p{font-size:12px;color:var(--ink-3);line-height:1.8;margin-top:10px}.food-guide .source-section>a{white-space:nowrap}.food-guide .fine{font-size:11px;color:var(--muted);line-height:1.9}.food-guide .back-link{font-size:13px;font-weight:700;align-self:flex-start}.food-guide .toast{position:fixed;bottom:calc(var(--tabbar-h) + 16px);left:50%;transform:translate(-50%,10px);background:var(--ink);color:var(--paper);padding:12px 18px;border-radius:10px;font-size:12px;z-index:1100;opacity:0;pointer-events:none;max-width:90vw;transition:opacity .2s,transform .2s}.food-guide .toast.show{opacity:1;transform:translate(-50%)}.food-guide .detail-dialog{border:2px solid var(--ink);border-radius:16px;max-width:740px;width:calc(100% - 30px);max-height:90dvh;overflow:auto;background:var(--paper);color:var(--ink);padding:0}.food-guide .detail-dialog::backdrop{background:#1c1a1788}.food-guide .close-dialog{position:absolute;top:12px;right:12px;z-index:2;width:40px;height:40px;border:2px solid var(--ink);border-radius:10px;background:var(--paper);font-size:26px;cursor:pointer}.food-guide .dialog-cover{width:100%;height:220px;object-fit:cover}.food-guide .dialog-body{padding:24px}.food-guide .dialog-body h2{font-size:26px;margin:8px 0}.food-guide .dialog-intro{font-size:13px;color:var(--ink-3);line-height:1.8;margin:14px 0 22px}.food-guide .dialog-info{border-top:1px dashed var(--ink);margin-top:22px;padding-top:10px}.food-guide .dialog-info dt{font-size:12px;font-weight:700;color:var(--navy);margin-top:14px}.food-guide .dialog-info dd{font-size:12px;color:var(--ink-3);line-height:1.8;margin:4px 0 0}.food-guide .dialog-actions{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0 16px}.food-guide .dialog-source{font-size:11px;color:var(--navy);text-underline-offset:3px;margin-right:10px}.food-guide .dialog-note{font-size:10px;color:var(--muted);margin-top:16px;line-height:1.8}.food-guide [hidden]{display:none!important}body.dialog-open{overflow:hidden}@media(min-width:900px){.food-guide{padding-top:32px;padding-bottom:80px;gap:42px}.food-guide .food-intro{padding-top:20px;gap:20px}.food-guide h1{font-size:52px;letter-spacing:-2px}.food-guide .lead{font-size:18px}.food-guide .ghost{font-size:160px;right:30px;top:4px}.food-guide .stamp{position:absolute;right:180px;bottom:40px;padding:8px 15px}.food-guide .stamp b{font-size:18px}.food-guide .stamp small{font-size:12px}.food-guide .food-section-head .section-title{font-size:30px}.food-guide .restaurant-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.food-guide .card-visual{height:250px}.food-guide .card-body{padding:24px}.food-guide .food-item img{height:84px}.food-guide .food-grid.two img{height:110px}.food-guide .map-shell{grid-template-columns:285px 1fr}.food-guide #map-list{display:block}.food-guide .map-place{padding:17px}.food-guide .map-place:nth-child(odd){border-right:0}.food-guide #food-map{height:450px}.food-guide .map-note{padding:18px}.food-guide .map-place strong{font-size:13px}.food-guide .source-section h2{font-size:26px}.food-guide .source-section{padding:28px 32px}.food-guide .toast{bottom:24px}.food-guide .dialog-cover{height:280px}}@media(max-width:420px){.food-guide .filter-bar{align-items:start}.food-guide .filters{gap:4px}.food-guide .filter{font-size:11px;padding:0 8px;height:38px}.food-guide .map-jump{font-size:10px;padding:0 8px;height:38px}.food-guide .food-section-head .section-title{font-size:19px}.food-guide .source-section{flex-direction:column;align-items:start}.food-guide .food-item img{height:64px}.food-guide .food-grid.two img{height:85px}}@media(prefers-reduced-motion:reduce){.food-guide .toast{transition:none}}.food-guide .confirmed.uncertain{color:var(--red);font-weight:700}.food-guide .confirmed.uncertain:before{content:"! "}.food-guide .location-pending{font-size:11px;color:var(--red);font-weight:700;line-height:1.6}.food-guide .video-source-list{display:grid;gap:8px}.food-guide .video-source-list small{display:block;font-size:10px;margin-top:3px}.food-guide .series-links{display:flex;flex-wrap:wrap;gap:10px}.food-guide .intro-meta{max-width:760px}.food-guide .food-grid:has(>.food-item:nth-child(4)){grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:600px){.food-guide .food-grid:has(>.food-item:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}.food-guide .filter-bar{align-items:flex-start}.food-guide .filters{max-width:calc(100% - 65px)}.food-guide .food-intro .intro-meta{max-width:100%;padding-right:0}}.restaurant-card .card-visual{height:auto!important;min-height:66px;background:var(--paper-2)}.restaurant-card .card-visual:after{display:none}.restaurant-card .number{top:17px;font-size:22px;color:var(--red);text-shadow:none}.restaurant-card .cover-caption{inset:22px 64px auto 62px}.food-guide .food-grid{display:flex!important;flex-wrap:wrap;gap:8px}.food-guide .food-item{display:flex;align-items:center;gap:7px;padding:4px 12px 4px 4px;border:1px solid var(--paper-2);border-radius:99px;background:#fff;min-width:0}.food-guide .food-item :is(a,button){display:inline-flex!important;width:auto!important;height:auto!important;border-radius:99px;overflow:visible}.food-guide .food-time{position:static!important;display:inline-block;padding:4px 9px;font-size:11px;border-radius:99px;background:var(--navy);color:#fff;white-space:nowrap}.food-guide .food-item p{margin:0!important;font-size:13px;color:var(--ink);white-space:nowrap}
