*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:var(--font-inter),var(--font-noto-sans-jp),"Hiragino Kaku Gothic ProN","Hiragino Sans",-apple-system,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:SF Mono,Fira Code,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.sr-only{clip:rect(0,0,0,0);border-width:0}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.top-20{top:5rem}.top-3{top:.75rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.flex-shrink,.shrink{flex-shrink:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.break-all{word-break:break-all}.border{border-width:1px}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.grayscale{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale:grayscale(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}:root{--bg-0:#fdfcfc;--bg-1:#f2f2f2;--bg-2:#e5e5e5;--bg-3:#dcdcdc;--bg-warm:#f5f3f1;--bg-warm-2:#ebe8e4;--hover-bg:#ededed;--surface-hover:#fafafa;--text-1:#000;--text-2:#767676;--text-3:#949494;--text-strong:#525252;--ink:#141414;--on-fill:#fff;--accent-deep:#d6551a;--accent-deeper:#b04013;--danger:#d7332b;--danger-h:#b82822;--live-text:#065f41;--accent-s:rgba(245,134,51,.1);--accent-b:rgba(245,134,51,.22);--live:#059661;--live-bg:rgba(5,150,97,.08);--live-b:rgba(5,150,97,.2);--open:#949494;--border:rgba(0,0,0,.06);--border-h:rgba(0,0,0,.12);--shadow-xs:0 1px 2px rgba(0,0,0,.04);--shadow-sm:0 2px 6px rgba(0,0,0,.05);--shadow-md:0 4px 16px rgba(0,0,0,.06);color-scheme:light;--ease:cubic-bezier(.22,1,.36,1);--font-sans:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic Medium",YuGothic,Meiryo,"Helvetica Neue",Helvetica,Arial,sans-serif;--font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;--accent:#f58633;--bg:#fdfcfc;--bg-map:#f2f2f2;--bg-card:#fff;--t100:#000;--t70:rgba(0,0,0,.7);--t55:rgba(0,0,0,.55);--t35:rgba(0,0,0,.35);--t18:rgba(0,0,0,.18);--t10:rgba(0,0,0,.1);--s08:rgba(0,0,0,.08);--s04:rgba(0,0,0,.04);--a35:rgba(245,134,51,.35);--a10:rgba(245,134,51,.1);--shadow-ink:0,0,0;--ink-rgb:0,0,0;--white-rgb:255,255,255;--bg0-rgb:253,252,252;--warm-rgb:245,243,241;--toast-rgb:20,20,20;--live-rgb:5,150,97;--accent-rgb:245,134,51;--ink-1a:#1a1a1a;--ink-2:#0a0a0a;--danger-2:#c0392b;--live-dot:#10b87c;--border-solid:#bdbdbd;--photo-fallback-1:#fbead4;--photo-fallback-2:#f5c88e;--photo-fallback-3:#e8a66a;--surface-rgb:255,255,255;--warm-gray:#777169;--tile-empty:#f7f7f6;--green-700:#15803d;--green-rgb:34,197,94;--scrim-rgb:0,0,0;--on-ink-rgb:255,255,255;--bg-warm-3:#f0edea;--skeleton-1:#f0eeec;--skeleton-2:#eceae8;--ink-333:#333;--ink-666:#666;--amber:#f5a623;--danger-deep:#b91c1c;--danger-rgb:220,38,38;--urgent-bg:#fff7ed;--urgent-text:#bd3f11;--ink-20-rgb:20,20,20;--tiktok:#69c9e0;--tiktok-rgb:105,201,224;--splash-deep:#e07020;--radius:20px;--radius-pill:9999px;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--spring:cubic-bezier(0.32,0.72,0,1);--photo-focus:center 30%;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px}[data-theme=dark]{color-scheme:dark;--bg-0:#1a1a1a;--bg-1:#242424;--bg-2:#2e2e2e;--bg-3:#383838;--bg-warm:#262626;--bg-warm-2:#303030;--hover-bg:#2c2c2c;--surface-hover:#2a2a2a;--text-1:#e8e8e8;--text-2:#a8a8a8;--text-3:#8c8c8c;--text-strong:#c8c8c8;--ink:#e8e8e8;--on-fill:#fff;--accent-deep:#d6551a;--accent-deeper:#b04013;--danger:#e5564e;--danger-h:#f06a62;--live-text:#3fcf8e;--accent-s:rgba(245,134,51,.14);--accent-b:rgba(245,134,51,.3);--live:#3fcf8e;--live-bg:rgba(63,207,142,.14);--live-b:rgba(63,207,142,.3);--open:#8c8c8c;--border:hsla(0,0%,100%,.1);--border-h:hsla(0,0%,100%,.18);--shadow-xs:0 1px 2px rgba(0,0,0,.4);--shadow-sm:0 2px 8px rgba(0,0,0,.45);--shadow-md:0 6px 20px rgba(0,0,0,.55);--accent:#f58633;--bg:#1a1a1a;--bg-map:#242424;--bg-card:#232323;--t100:hsla(0,0%,100%,.92);--t70:hsla(0,0%,100%,.66);--t55:hsla(0,0%,100%,.52);--t35:hsla(0,0%,100%,.34);--t18:hsla(0,0%,100%,.18);--t10:hsla(0,0%,100%,.12);--s08:hsla(0,0%,100%,.08);--s04:hsla(0,0%,100%,.05);--a35:rgba(245,134,51,.4);--a10:rgba(245,134,51,.16);--shadow-ink:0,0,0;--ink-rgb:255,255,255;--white-rgb:255,255,255;--bg0-rgb:26,26,26;--warm-rgb:38,38,38;--toast-rgb:20,20,20;--live-rgb:63,207,142;--accent-rgb:245,134,51;--ink-1a:#d4d4d4;--ink-2:#ededed;--danger-2:#f06a62;--live-dot:#3fcf8e;--border-solid:#4a4a4a;--photo-fallback-1:#3a332c;--photo-fallback-2:#4a3e2e;--photo-fallback-3:#5a4632;--surface-rgb:35,35,35;--warm-gray:#a8a29a;--tile-empty:#2a2a2a;--green-700:#4ade80;--green-rgb:63,207,142;--scrim-rgb:0,0,0;--on-ink-rgb:35,35,35;--bg-warm-3:#2c2c2c;--skeleton-1:#2c2c2c;--skeleton-2:#333;--ink-333:#c8c8c8;--ink-666:#9a9a9a;--amber:#f5a623;--danger-deep:#f87171;--danger-rgb:248,113,113;--urgent-bg:#3a2416;--urgent-text:#ff8a4c;--ink-20-rgb:232,232,232;--tiktok:#69c9e0;--tiktok-rgb:105,201,224;--splash-deep:#e07020}*{-webkit-tap-highlight-color:transparent;scrollbar-width:none}::-webkit-scrollbar{display:none}html{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body,html{overscroll-behavior:none}body{background:var(--bg-0);color:var(--text-1);font-family:var(--font-sans);font-size:17px;line-height:23.8px;font-variant-numeric:tabular-nums;font-feature-settings:"kern" 1,"liga" 1,"calt" 1,"tnum" 1,"palt" 1;text-rendering:optimizeLegibility}input,select,textarea{font-size:16px}body.map-view,body.map-view~html{overflow:hidden;height:100dvh;overscroll-behavior:none}body.map-view{position:fixed;width:100%}body.detail-view{overflow:visible!important;overflow-y:auto!important;position:static!important;width:100%!important;-webkit-overflow-scrolling:touch}body.detail-view,html.detail-view-html{height:auto!important;overscroll-behavior:auto!important}html.detail-view-html{overflow:auto!important}body:after{content:"";position:fixed;inset:0;opacity:.012;pointer-events:none;z-index:9999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:128px 128px}input::placeholder{color:var(--text-3)}input:focus,input:focus-visible{border-color:rgba(var(--ink-rgb),.12)!important;outline:none!important;box-shadow:none!important}[role=button]:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--accent)!important;outline-offset:2px!important}@media (hover:hover) and (pointer:fine){.card-tap:hover,.hero-card:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(var(--shadow-ink),.06);transition:transform .15s ease,box-shadow .2s ease}}.dotted-divider-h{height:2px;width:100%;background-image:repeating-radial-gradient(circle,rgba(var(--ink-rgb),.15) 0,rgba(var(--ink-rgb),.15) 1px,rgba(var(--ink-rgb),0) 1px,rgba(var(--ink-rgb),0) 6px);background-size:6px 100%}.dotted-divider-h,.dotted-divider-v{background-repeat:repeat;pointer-events:none}.dotted-divider-v{width:2px;height:100%;background-image:repeating-radial-gradient(circle,rgba(var(--ink-rgb),.12) 0,rgba(var(--ink-rgb),.12) 1px,rgba(var(--ink-rgb),0) 1px,rgba(var(--ink-rgb),0) 6px);background-size:100% 6px}hr.divider-thin{height:1px;background:rgba(var(--ink-rgb),.06);border:0;margin:28px 20px;padding:0}hr.divider-thick{height:8px;background:var(--bg-warm);border:0;margin:28px 0 0;padding:0}.editorial-caption{margin:24px 20px 0;padding:0;border:0;font-size:18px;font-weight:500;letter-spacing:.005em;line-height:1.65;color:var(--ink)}.editorial-caption p{margin:0}@media (min-width:768px){.editorial-caption{font-size:19px}}.mini-map-link{display:block;margin:0 20px;border-radius:16px;overflow:hidden;text-decoration:none!important;color:inherit;background:var(--bg-warm);border:1px solid rgba(var(--ink-rgb),.04);transition:transform .18s ease-out,box-shadow .18s ease-out}.mini-map-link:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(var(--shadow-ink),.06)}.mini-map-image{display:block;width:100%;aspect-ratio:2/1;object-fit:cover;background:var(--bg-warm)}.mini-map-overlay{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--bg-card);border-top:1px solid rgba(var(--ink-rgb),.06)}.mini-map-info{flex:1;min-width:0}.mini-map-station{font-size:13px;font-weight:600;margin:0 0 2px;color:var(--ink);letter-spacing:.01em}.mini-map-address{font-size:12px;color:var(--text-2);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-shell{display:flex;width:100%}.map-shell,.map-shell-left{height:100dvh;overflow:hidden}.map-shell-left{flex:0 0 420px;width:420px;max-width:420px;position:relative;z-index:2}.map-shell-map{flex:1 1 auto;min-width:0;height:100dvh;position:relative}@media (pointer:coarse){.area-chip{min-height:44px;align-items:center!important}}@media (hover:hover) and (pointer:fine){.map-shell-left .area-chip:not([aria-pressed=true]):hover{background:var(--hover-bg)!important}.map-shell-left .sk-lift{transition:box-shadow .18s ease,transform .18s ease!important}.map-shell-left .sk-lift:hover{box-shadow:0 2px 8px rgba(var(--shadow-ink),.1),0 4px 16px rgba(var(--shadow-ink),.06)!important;transform:translateY(-2px)}.map-shell-left .sk-row:hover{background:var(--hover-bg)!important}.map-shell-left footer a:hover{text-decoration:underline!important}.map-shell-left .detail-footer-btn{transition:background .15s ease}.map-shell-left .detail-footer-btn:hover{background:var(--hover-bg)!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media (min-width:768px){.detail-main{width:420px;height:100dvh;overflow-y:auto;overflow-x:hidden;padding-bottom:84px;position:relative;z-index:2;box-shadow:2px 0 16px rgba(var(--shadow-ink),.08)}.detail-footer{right:auto!important;width:420px}.detail-footer-inner{max-width:none}}.checkin-fab{height:44px;width:auto;padding:0 16px 0 14px;border-radius:9999px;background:rgba(var(--surface-rgb),.96);border:1px solid rgba(var(--ink-rgb),.06);box-shadow:0 2px 10px rgba(var(--shadow-ink),.15);color:var(--ink-1a);display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:7px;cursor:pointer;overflow:visible;-webkit-tap-highlight-color:transparent;transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s ease-out,background .2s ease-out,color .2s ease-out;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.checkin-fab:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(var(--shadow-ink),.14),0 1px 2px rgba(var(--shadow-ink),.06)}.checkin-fab:active{animation:checkin-pop .32s cubic-bezier(.34,1.56,.64,1)}.checkin-fab.is-reported{background:rgba(var(--surface-rgb),.7);color:rgba(var(--toast-rgb),.45);cursor:default}.checkin-fab.is-reported:hover{transform:none;box-shadow:0 6px 16px rgba(var(--shadow-ink),.12),0 1px 2px rgba(var(--shadow-ink),.06)}.checkin-fab:disabled{cursor:default}@keyframes checkin-pop{0%{transform:scale(1)}40%{transform:scale(.88)}60%{transform:scale(1.12)}to{transform:scale(1)}}.checkin-burst{position:absolute;left:50%;top:50%;width:40px;height:40px;margin-left:-20px;margin-top:-20px;pointer-events:none;animation:checkin-burst .7s cubic-bezier(.22,1,.36,1) forwards}@keyframes checkin-burst{0%{transform:translateY(0) scale(.4);opacity:0}20%{transform:translateY(-6px) scale(1.05);opacity:1}to{transform:translateY(-44px) scale(.95);opacity:0}}.checkin-toast{position:absolute;left:50%;bottom:16px;width:fit-content;max-width:calc(100% - 24px);height:56px;transform:translate(-50%) scale(.72);transform-origin:center;background:var(--ink);color:var(--bg-card);font-size:12.5px;font-weight:500;letter-spacing:.02em;padding:0 26px;border-radius:9999px;box-shadow:0 8px 22px rgba(var(--shadow-ink),.18);pointer-events:none;opacity:0;transition:opacity .14s ease-out,transform .34s cubic-bezier(.34,1.56,.45,1);z-index:5;display:inline-flex;align-items:center;justify-content:flex-start;gap:20px}.checkin-toast.is-visible{opacity:1;transform:translate(-50%) scale(1)}.checkin-toast.is-visible .checkin-toast-action{pointer-events:auto}.checkin-toast>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.checkin-toast-action{pointer-events:none;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:5px;height:44px;background:none;border:1px solid rgba(var(--white-rgb),.4);color:var(--on-fill);font-size:12.5px;font-weight:500;letter-spacing:.02em;padding:0 14px;border-radius:9999px;cursor:pointer;white-space:nowrap;flex-shrink:0}.checkin-toast-action:before{content:"";position:absolute;inset:-6px 0}.name-action-btn{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;background:none;border:none;padding:11px;cursor:pointer;border-radius:9999px;-webkit-tap-highlight-color:transparent;transition:background .15s ease-out,transform .12s ease-out}.name-action-btn:hover{background:rgba(var(--ink-rgb),.05)}.name-action-btn:active{transform:scale(.9)}.detail-breadcrumb{margin-bottom:6px}.detail-breadcrumb ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:nowrap;align-items:center;min-width:0;font-size:12px;line-height:1.4}.detail-breadcrumb li{display:inline-flex;align-items:center;min-width:0}.detail-breadcrumb li+li:before{content:"/";color:var(--text-2);opacity:.55;margin:0 8px;flex-shrink:0}.detail-breadcrumb a{color:var(--text-2)!important;text-decoration:none!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:4px 0;transition:color .15s ease-out}@media (hover:hover){.detail-breadcrumb a:hover{color:var(--text-1)!important}}.detail-breadcrumb a:focus-visible{color:var(--text-1)!important;outline:2px solid var(--text-1);outline-offset:2px;border-radius:3px}.hero-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:9999px;border:none;padding:0;background:rgba(var(--shadow-ink),.32);-webkit-backdrop-filter:blur(12px) saturate(120%);backdrop-filter:blur(12px) saturate(120%);box-shadow:inset 0 0 0 1px rgba(var(--white-rgb),.18),0 2px 8px rgba(var(--shadow-ink),.28);color:var(--on-fill);text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background .18s ease,transform .12s ease;cursor:pointer}.hero-icon-btn:active{transform:scale(.94)}@media (hover:hover){.hero-icon-btn:hover{background:rgba(var(--shadow-ink),.46)}}.hero-icon-btn svg{width:20px;height:20px;stroke:var(--on-fill);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}.hero-icon-btn--close{width:44px;height:44px;background:rgba(var(--shadow-ink),.26)}.checkin-fab-wrap{display:inline-flex;z-index:4}.checkin-fab-label{font-size:12.5px;font-weight:500;line-height:1;letter-spacing:.01em;color:inherit;white-space:nowrap;pointer-events:none}.user-photo-thumb{flex:0 0 140px;width:140px;height:140px;padding:0;border:none;border-radius:12px;overflow:hidden;background:var(--bg-warm);cursor:pointer;-webkit-tap-highlight-color:transparent}.user-photo-thumb img{width:100%;height:100%;object-fit:cover;display:block}.photo-modal-overlay{position:fixed;inset:0;z-index:100;background:rgba(var(--shadow-ink),.55);display:flex;align-items:center;justify-content:center;padding:24px;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:fadeIn .2s ease}.photo-modal{position:relative;width:100%;max-width:420px;background:var(--bg-card);border-radius:18px;padding:16px;box-shadow:0 18px 50px rgba(var(--shadow-ink),.3)}.photo-modal-preview{width:100%;max-height:60vh;object-fit:contain;border-radius:12px;display:block;background:var(--bg-warm)}.photo-modal-error{margin:12px 0 0;font-size:13px;color:var(--danger-2);text-align:center}.photo-modal-actions{display:flex;gap:8px;margin-top:16px}.photo-modal-primary,.photo-modal-secondary{flex:1;height:48px;border-radius:9999px;font-size:15px;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}.photo-modal-primary{background:var(--ink);color:var(--bg-card);border:none}.photo-modal-primary:disabled{opacity:.6;cursor:default}.photo-modal-secondary{background:var(--bg-card);color:var(--ink);border:1px solid var(--bg-2)}.photo-modal-close{position:absolute;top:10px;right:10px;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;border:none;background:rgba(var(--white-rgb),.9);color:var(--ink);font-size:15px;line-height:1;cursor:pointer;box-shadow:0 1px 4px rgba(var(--shadow-ink),.2)}.photo-modal-done{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 8px 8px;text-align:center}.photo-modal-done-text{margin:0;font-size:15px;font-weight:500;line-height:1.6;color:var(--ink)}.photo-modal-done .photo-modal-primary{width:100%;flex:none}.photo-lightbox{position:fixed;inset:0;z-index:110;background:rgba(var(--shadow-ink),.9);display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .2s ease}.photo-lightbox img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}.photo-lightbox-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:9999px;border:none;background:rgba(var(--white-rgb),.15);color:var(--on-fill);font-size:18px;line-height:1;cursor:pointer}.sns-scroll{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;padding:0 0 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.sns-scroll::-webkit-scrollbar{display:none}.event-scroll{display:flex;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:0 0 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.event-scroll::-webkit-scrollbar{display:none}.event-card{flex:0 0 80%;scroll-snap-align:start}.event-card:first-child{margin-left:20px;scroll-margin-left:20px}.event-card:last-child{margin-right:20px}@media (min-width:768px){.event-card{flex-basis:300px}}.platform-link{display:inline-flex;align-items:center;gap:2px;font-size:13px;font-weight:500;letter-spacing:.01em;color:var(--text-2)!important;text-decoration:none!important;white-space:nowrap;flex-shrink:0;transition:color .18s ease-out}.platform-link-arrow{display:inline-block;opacity:.6;transition:transform .18s ease-out,opacity .18s ease-out}.platform-link:hover{color:var(--text-1)!important}.platform-link:hover .platform-link-arrow{transform:translateX(2px);opacity:1}.info-row{display:flex;align-items:flex-start;gap:12px;padding:16px 0}.info-row-icon-wrap{width:32px;height:32px;border-radius:9999px;background-color:var(--bg-warm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.info-row-icon{width:16px;height:16px;stroke:var(--text-strong);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;fill:none}.info-row-content{flex:1;min-width:0;padding-top:2px}.info-row-label{font-size:12px;font-weight:400;color:var(--text-3);margin-bottom:2px;letter-spacing:.02em}.info-row-value{font-size:15px;line-height:1.4}.h1,.info-row-value{font-weight:300;letter-spacing:-.02em;color:var(--text-1)}.h1{font-size:24px;line-height:1.2}.h2{font-weight:300;color:var(--text-1)}.h2,.section-title{font-size:18px;letter-spacing:-.01em;line-height:1.3}.section-title{font-weight:700;color:var(--ink);margin:0}.editorial-subhead{font-size:13px;font-weight:600;letter-spacing:.02em;line-height:1.4;color:var(--text-2);margin:0}.h3{font-size:14px;font-weight:400;letter-spacing:0;line-height:1.4;color:var(--text-strong)}.label-eyebrow{font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}svg[data-icon]{stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;fill:none}.filter-dropdown{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 16px;background-color:var(--bg-card);border-radius:9999px;border:1px solid var(--bg-2);box-shadow:0 1px 2px rgba(var(--shadow-ink),.03);font-size:14px;font-weight:400;color:var(--text-1);cursor:pointer;transition:background-color .15s ease}@media (hover:hover) and (pointer:fine){.filter-dropdown:hover{background-color:var(--bg-warm)}}.bubble-user{background:rgba(var(--warm-rgb),.8);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--text-1)}.bubble-assistant,.bubble-user{border-radius:18px;padding:12px 16px;font-size:14px;line-height:1.5}.bubble-assistant{background:var(--text-1);color:var(--bg-card)}.bubble-timestamp{font-size:11px;color:var(--text-3);margin-top:4px}.budget-card{position:relative;padding:20px;border-radius:20px;overflow:hidden;background-color:var(--bg-warm-2);display:flex;flex-direction:column;gap:12px}.budget-card-label{font-size:13px;font-weight:400;color:var(--text-2);letter-spacing:.02em}.budget-card-price{font-size:24px;font-weight:300;letter-spacing:-.02em;color:var(--text-1)}.budget-card-description{font-size:14px;line-height:1.5;color:var(--text-strong)}.budget-card-cta{margin-top:auto;padding:12px 16px;background-color:var(--text-1);color:var(--bg-card);align-self:flex-start}.budget-card-cta,.floating-cta{border-radius:9999px;font-size:14px;font-weight:400;border:none;cursor:pointer}.floating-cta{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;background-color:var(--bg-card);box-shadow:0 0 0 1px rgba(var(--shadow-ink),.08),0 4px 12px rgba(var(--shadow-ink),.08);color:var(--text-1);transition:all .2s ease}@media (hover:hover) and (pointer:fine){.floating-cta:hover{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(var(--shadow-ink),.1),0 6px 16px rgba(var(--shadow-ink),.1)}}.floating-cta-icon{width:24px;height:24px;border-radius:9999px;background:radial-gradient(circle at 30% 30%,var(--accent) 0,var(--accent-deep) 60%,var(--accent-deeper) 100%);box-shadow:inset 0 1px 2px rgba(var(--white-rgb),.3),inset 0 -1px 2px rgba(var(--shadow-ink),.2)}@keyframes pinPulse{0%,to{opacity:1;box-shadow:0 0 12px rgba(var(--shadow-ink),.15)}50%{opacity:.6;box-shadow:0 0 6px rgba(var(--shadow-ink),.08)}}@keyframes selectedPinPulse{0%{transform:scale(1);opacity:.6}to{transform:scale(1.8);opacity:0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes livePulse{0%,to{opacity:1}50%{opacity:.3}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes cardSlideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes searchPillIn{0%{opacity:0;transform:translate(-50%,-16px)}to{opacity:1;transform:translate(-50%)}}.nav-rail-tip{position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%) translateX(-4px);padding:8px 12px;background:rgba(var(--toast-rgb),.92);color:var(--on-fill);font-size:12px;font-weight:500;white-space:nowrap;border-radius:6px;opacity:0;pointer-events:none;transition:opacity .15s ease,transform .15s ease;z-index:100}.nav-rail-tip:before{content:"";position:absolute;left:-4px;top:50%;transform:translateY(-50%);width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-right:4px solid rgba(var(--toast-rgb),.92)}.nav-rail-item:hover .nav-rail-tip{opacity:1;transform:translateY(-50%) translateX(0);transition-delay:.3s}@keyframes liveDotGlow{0%,to{box-shadow:0 0 6px rgba(var(--live-rgb),.4)}50%{box-shadow:0 0 10px rgba(var(--live-rgb),.6)}}@keyframes breathe{0%,to{box-shadow:0 0 0 0 rgba(var(--live-rgb),.3);opacity:1}50%{box-shadow:0 0 6px 2px rgba(var(--live-rgb),.4);opacity:.7}}@keyframes search-logo-arc-outer{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes search-logo-arc-inner{0%{transform:rotate(0deg)}to{transform:rotate(-1turn)}}@keyframes search-logo-dot-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.search-logo-spin .logo-arc-inner,.search-logo-spin .logo-arc-outer,.search-logo-spin .logo-dot{transform-box:view-box;transform-origin:225.39px 378.38px;will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.search-logo-spin .logo-arc-outer{animation:search-logo-arc-outer 12s ease-in-out infinite}.search-logo-spin .logo-arc-inner{animation:search-logo-arc-inner 9s ease-in-out infinite}.search-logo-spin .logo-dot{animation:search-logo-dot-pulse 3s ease-in-out infinite}@keyframes search-mark-spin{to{transform:rotate(1turn)}}.search-mark-spin{transform-origin:center;animation:search-mark-spin 12s linear infinite;will-change:transform}[data-theme=dark] .app-wordmark{filter:invert(1)}@keyframes pinBounce{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes listSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeInSns{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}@keyframes splashSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes toastIn{0%{opacity:0;transform:translateX(-50%) translateY(8px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@keyframes stickySlideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes photoReveal{0%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideOutRight{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@keyframes slideInFromRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(40px)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes heroCardIn{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes heartBounce{0%{transform:scale(1)}30%{transform:scale(1.3)}60%{transform:scale(.95)}to{transform:scale(1)}}@keyframes heartBounceOut{0%{transform:scale(1)}50%{transform:scale(.9)}to{transform:scale(1)}}@keyframes toastSlideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes toastFadeOut{0%{opacity:1}to{opacity:0}}@keyframes skeleton{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes viewerPulse{0%,to{opacity:1;transform:scale(1);box-shadow:0 0 0 0 rgba(var(--live-rgb),.2)}50%{opacity:.5;transform:scale(1.15);box-shadow:0 0 4px 1px rgba(var(--live-rgb),.15)}}[role=button]:active,button:active{opacity:.7!important;transition:opacity .05s ease!important}.chip-tap{transition:transform .12s ease-out}.chip-tap:active{transform:scale(.96)}.chip-tap:not([data-active=true]):hover{color:var(--text-1)!important}.card-tap{transition:background .15s ease}.card-tap:active{background:rgba(var(--ink-rgb),.04)!important}.shop-list-item:active{opacity:.7!important;transition:opacity .05s ease!important}.hero-card:active{opacity:.85!important;transition:opacity .05s ease!important}.mapboxgl-ctrl-logo,.maplibregl-ctrl-logo{opacity:.2!important;transform:scale(.6)!important;transform-origin:bottom left!important;transition:opacity .3s!important}.mapboxgl-ctrl-logo:hover,.maplibregl-ctrl-logo:hover{opacity:.6!important}.mapboxgl-ctrl-attrib,.maplibregl-ctrl-attrib{background:transparent!important;color:rgba(var(--ink-rgb),.15)!important;font-size:7px!important;opacity:.15!important;transition:opacity .3s!important}.mapboxgl-ctrl-attrib:hover,.maplibregl-ctrl-attrib:hover{opacity:.5!important}.mapboxgl-ctrl-attrib a{color:rgba(var(--ink-rgb),.2)!important}.mapboxgl-ctrl-bottom-right{display:none!important}.mapboxgl-ctrl-group button,.maplibregl-ctrl-group button{width:44px!important;height:44px!important}.mapboxgl-ctrl-group button .mapboxgl-ctrl-icon,.maplibregl-ctrl-group button .maplibregl-ctrl-icon{background-position:50%!important}.mapboxgl-canvas,.maplibregl-canvas{outline:none}.map-chip{position:relative}.map-chip:before{content:"";position:absolute;inset:-7px 0}@supports not (backdrop-filter:blur(40px)){.bottom-sheet-fallback{background:rgba(var(--bg0-rgb),.96)!important}}:root{--ease-out-quart:cubic-bezier(0.22,1,0.36,1);--ease-in-out:cubic-bezier(0.45,0,0.55,1);--ease-snappy:cubic-bezier(0.4,0,0.2,1);--ease-material:cubic-bezier(0.4,0,0.2,1);--duration-micro:0.1s;--duration-fast:0.15s;--duration-base:0.25s;--duration-slow:0.4s;--duration-xslow:0.6s;--transition-hover:all var(--duration-fast) var(--ease-snappy);--transition-expand:all var(--duration-base) var(--ease-out-quart);--transition-page:all var(--duration-slow) var(--ease-out-quart)}.badge{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:9999px;font-size:11px;font-weight:400;letter-spacing:.02em;line-height:1;white-space:nowrap}.badge-live{background-color:rgba(var(--live-rgb),.08);color:var(--live-text)}.badge-live:before{content:"";width:6px;height:6px;border-radius:9999px;background-color:var(--live-dot);animation:pulse-live 2s ease-in-out infinite}@keyframes pulse-live{0%,to{opacity:1}50%{opacity:.5}}.badge-new{background-color:var(--accent);color:var(--on-fill);font-weight:500;letter-spacing:.04em}.badge-soon,.badge-visited{background-color:rgba(var(--accent-rgb),.1);color:var(--accent-deeper)}.badge-popular,.badge-visited{font-weight:500}.badge-popular{background-color:var(--text-1);color:var(--bg-card)}.badge-info{background-color:var(--bg-warm);color:var(--text-strong)}.opening-status{display:inline-flex;align-items:center;gap:4px;font-size:14px;font-weight:400;letter-spacing:0}.opening-status--urgent{color:var(--accent);font-weight:500}.opening-status--warning{color:var(--accent-deeper)}.opening-status--normal{color:var(--text-strong)}.opening-status--closed{color:var(--text-3)}.empty-state{flex-direction:column;gap:12px;padding:48px 24px;text-align:center}.empty-state,.empty-state-icon-wrap{display:flex;align-items:center;justify-content:center}.empty-state-icon-wrap{width:64px;height:64px;border-radius:9999px;background-color:var(--bg-warm);margin-bottom:4px}.empty-state-icon{width:28px;height:28px;stroke:var(--text-2);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;fill:none}.empty-state-title{font-size:16px;font-weight:400;color:var(--text-1);letter-spacing:-.01em;margin:0}.empty-state-description{font-size:14px;font-weight:400;color:var(--text-2);line-height:1.5;max-width:280px;margin:0}.empty-state-action{margin-top:8px;padding:12px 20px;border-radius:9999px;background-color:var(--text-1);color:var(--bg-card);font-size:14px;font-weight:400;border:none;cursor:pointer;transition:var(--transition-hover)}.empty-state-action:hover{background-color:var(--ink-1a)}.skeleton{border-radius:8px}.skeleton,.skeleton-line{background:linear-gradient(90deg,var(--bg-warm) 25%,var(--bg-warm-2) 50%,var(--bg-warm) 75%);background-size:200% 100%;animation:skeleton 1.5s ease-in-out infinite}.skeleton-line{height:12px;border-radius:6px}.skeleton-line.short{width:50%}.skeleton-line.medium{width:70%}.skeleton-line.long{width:90%}.hero-card-skeleton{display:flex;align-items:center;gap:12px;padding:12px;width:280px;height:88px;border-radius:14px;background-color:var(--bg-card);border:1px solid var(--bg-2)}.hero-card-skeleton-photo{width:68px;height:68px;border-radius:10px;flex-shrink:0}.hero-card-skeleton-text{flex:1;display:flex;flex-direction:column;gap:8px}.hero-card-skeleton-line{height:10px;width:80%}.hero-card-skeleton-line.short{width:50%}[role=button]:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px rgba(var(--accent-rgb),.15)}input:focus-visible,textarea:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.15)}.card-tap:focus-visible,.hero-card:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:14px}[data-suppress-focus-ring]:focus,[data-suppress-focus-ring]:focus-visible{outline:none!important;box-shadow:none!important}.search-bar-container{transition:var(--transition-expand)}.search-bar-container.is-scrolled{background-color:rgba(var(--bg0-rgb),.8);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.search-bar-container.is-hiding{transform:translateY(-100%)}.quick-actions{position:absolute;bottom:100%;left:50%;transform:translateX(-50%) translateY(-8px);display:flex;gap:4px;padding:4px;border-radius:9999px;background-color:var(--text-1);box-shadow:0 4px 12px rgba(var(--shadow-ink),.2);animation:quick-actions-appear .2s var(--ease-out-quart)}@keyframes quick-actions-appear{0%{opacity:0;transform:translateX(-50%) translateY(0) scale(.8)}to{opacity:1;transform:translateX(-50%) translateY(-8px) scale(1)}}.quick-action{width:32px;height:32px;border-radius:9999px;background:transparent;border:none;color:var(--on-fill);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-hover)}.quick-action:hover{background-color:rgba(var(--white-rgb),.1)}.sticky-bottom-bar{position:fixed;bottom:0;left:0;right:0;z-index:45;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom, 0px));background-color:rgba(var(--bg0-rgb),.85);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(var(--ink-rgb),.06);transform:translateY(100%);transition:transform .3s var(--ease-out-quart);pointer-events:none}.sticky-bottom-bar.is-visible{transform:translateY(0);pointer-events:auto}.sticky-bottom-bar-title{flex:1;min-width:0;font-size:14px;font-weight:400;letter-spacing:-.01em;color:var(--text-1);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sticky-bottom-bar-actions{display:flex;gap:8px;flex-shrink:0}.sticky-bottom-bar-btn{width:36px;height:36px;border-radius:9999px;background-color:var(--bg-card);border:1px solid rgba(var(--ink-rgb),.06);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-1);text-decoration:none;transition:var(--transition-hover)}.sticky-bottom-bar-btn:hover{background-color:var(--bg-warm)}.sticky-bottom-bar-btn.is-primary{background-color:var(--text-1);color:var(--bg-card);border-color:var(--text-1);padding:0 16px;width:auto;gap:8px;font-size:13px;font-weight:400}.sticky-bottom-bar-btn.is-primary:hover{background-color:var(--ink-1a)}.quick-actions-bar{position:absolute;bottom:12px;right:12px;display:flex;flex-direction:column;align-items:center;gap:8px;z-index:5}.quick-action-btn{width:36px;height:36px;border-radius:9999px;background-color:rgba(var(--surface-rgb),.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:none;box-shadow:0 0 1px rgba(var(--shadow-ink),.3),0 2px 4px rgba(var(--shadow-ink),.06);display:flex;align-items:center;justify-content:center;color:var(--text-1);cursor:pointer;text-decoration:none;transition:var(--transition-hover)}.quick-action-btn:hover{background-color:var(--bg-card);transform:translateY(-1px);box-shadow:0 0 1px rgba(var(--shadow-ink),.3),0 4px 8px rgba(var(--shadow-ink),.08)}.quick-action-btn svg{width:16px;height:16px;stroke-width:1.5}.kbd-badge{display:none;align-items:center;justify-content:center;min-width:20px;padding:2px 8px;background-color:rgba(var(--ink-rgb),.05);border:1px solid rgba(var(--ink-rgb),.1);border-radius:6px;font-family:var(--font-mono),"SF Mono",monospace;font-size:12px;font-weight:500;color:var(--text-strong);line-height:1;flex-shrink:0}@media (hover:hover) and (pointer:fine){.kbd-badge{display:inline-flex}}.category-nav{display:flex;gap:2px;padding:4px 0;overflow-x:auto;scrollbar-width:none}.category-nav::-webkit-scrollbar{display:none}.category-nav-item{padding:8px 16px;border-radius:9999px;border:none;background:transparent;color:var(--text-2);font-size:15px;font-weight:400;letter-spacing:-.015em;white-space:nowrap;cursor:pointer;transition:var(--transition-hover)}.category-nav-item:hover{color:var(--text-1)}.category-nav-item.is-active{background-color:var(--bg-card);color:var(--text-1);box-shadow:0 0 1px rgba(var(--shadow-ink),.2),0 2px 4px rgba(var(--shadow-ink),.04)}.announcement-banner{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 16px;background-color:var(--bg-warm);color:var(--text-strong);font-size:13px;font-weight:400;text-align:center;position:sticky;top:0;z-index:40;transition:max-height .3s,opacity .3s,padding .3s;max-height:44px;overflow:hidden}.announcement-banner.is-dismissed{max-height:0;padding-top:0;padding-bottom:0;opacity:0}.announcement-banner-link{color:var(--text-1);text-decoration:underline;font-weight:400}.announcement-banner-close{width:20px;height:20px;border:none;background:transparent;color:var(--text-2);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.inline-code{display:inline-block;padding:1px 8px;margin:0 2px;border-radius:4px;background-color:rgba(var(--ink-rgb),.04);color:var(--text-1);font-family:var(--font-mono),"SF Mono",monospace;font-size:.875em;font-weight:400;letter-spacing:-.02em}.shop-description strong{font-weight:600;color:var(--text-1);background:linear-gradient(180deg,transparent 60%,rgba(var(--accent-rgb),.2) 60%,rgba(var(--accent-rgb),.2) 90%,transparent 90%)}.page-transition-wrapper{animation:page-enter .4s var(--ease-out-quart) both}@keyframes page-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.shop-photo-fallback{width:100%;height:100%;border-radius:inherit;background:linear-gradient(135deg,var(--photo-fallback-1) 0,var(--photo-fallback-2) 50%,var(--photo-fallback-3) 100%);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.shop-photo-fallback:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(90deg,transparent 0,transparent 14px,rgba(var(--white-rgb),.2) 14px,rgba(var(--white-rgb),.2) 16px);opacity:.4;pointer-events:none}.shop-photo-fallback-icon{position:relative;z-index:1;color:rgba(var(--white-rgb),.7);stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;fill:none}.shop-photo-fallback-initial{position:relative;z-index:1;font-weight:300;color:rgba(var(--white-rgb),.85);letter-spacing:-.02em}.link,a:not(.button):not([class*=btn]):not([class*=card]):not(.action-button){color:var(--text-1);text-decoration:underline;text-decoration-style:solid;text-decoration-color:rgba(var(--ink-rgb),.4);text-underline-offset:3px;text-decoration-thickness:1px;transition:color .15s ease,text-decoration-color .15s ease}.link:hover,a:not(.button):not([class*=btn]):not([class*=card]):not(.action-button):hover{color:var(--accent);text-decoration-color:var(--accent)}.link-secondary{color:var(--text-strong);text-decoration-color:rgba(var(--ink-rgb),.2)}.link-secondary:hover{color:var(--text-1);text-decoration-color:var(--text-1)}.modal-overlay{position:fixed;inset:0;z-index:100;background-color:rgba(var(--shadow-ink),.4);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:16px;animation:modal-overlay-fade .2s ease}@keyframes modal-overlay-fade{0%{opacity:0}to{opacity:1}}.modal{width:100%;max-width:400px;background-color:var(--bg-card);border-radius:20px;padding:24px;box-shadow:0 0 0 1px rgba(var(--shadow-ink),.04),0 24px 48px rgba(var(--shadow-ink),.12);animation:modal-enter .25s var(--ease-out-quart)}@keyframes modal-enter{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-title{font-size:18px;font-weight:300;letter-spacing:-.36px;color:var(--text-1);margin:0 0 8px}.modal-description{font-size:14px;font-weight:400;color:var(--text-strong);line-height:1.5;margin:0 0 24px}.modal-actions{display:flex;gap:8px}.modal-actions>button{flex:1;height:40px;border-radius:9999px;font-size:14px;font-weight:400;border:none;cursor:pointer;transition:all .15s ease}.modal-button-cancel{background-color:var(--bg-warm);color:var(--text-1)}.modal-button-cancel:hover{background-color:var(--bg-warm-2)}.modal-button-danger{background-color:var(--danger);color:var(--on-fill)}.modal-button-danger:hover{background-color:var(--danger-h)}.modal-button-primary{background-color:var(--text-1);color:var(--bg-card)}.modal-button-primary:hover{background-color:var(--ink-1a)}.action-button-states{position:relative;transition:all .15s ease}.action-button-states.is-disabled,.action-button-states:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.action-button-states.is-loading{pointer-events:none}.action-button-states.is-loading .action-button-text{opacity:.4}.action-button-states.is-loading:after{content:"";position:absolute;top:50%;left:50%;margin:-8px 0 0 -8px;width:16px;height:16px;border:2px solid;border-top:2px solid transparent;border-radius:9999px;animation:spinner-rotate .6s linear infinite}@keyframes spinner-rotate{to{transform:rotate(1turn)}}.action-button-states:active:not(:disabled):not(.is-loading){transform:scale(.98)}.checkbox{appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:9999px;border:1.5px solid var(--border-solid);background-color:transparent;cursor:pointer;position:relative;flex-shrink:0;transition:all .15s ease}.checkbox:hover{border-color:var(--text-2)}.checkbox:checked{background-color:var(--text-1);border-color:var(--text-1)}.checkbox:checked:after{content:"";position:absolute;top:4px;left:6px;width:4px;height:8px;border:solid var(--bg-card);border-width:0 2px 2px 0;transform:rotate(45deg)}.checkbox:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.checkbox-wrap{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-wrap-label{font-size:14px;font-weight:400;color:var(--text-1)}.eyebrow{display:block;font-weight:500;letter-spacing:.02em;margin-bottom:8px}.eyebrow,.trust-message{font-size:13px;color:var(--warm-gray)}.trust-message{font-weight:400;line-height:1.5;margin-top:12px}.cta-with-logo{display:inline-flex;align-items:center;gap:12px;height:48px;padding:0 20px;border-radius:9999px;background-color:var(--text-1);color:var(--bg-card);border:none;font-size:16px;font-weight:400;cursor:pointer;transition:background .15s ease}.cta-with-logo:hover{background-color:var(--ink-1a)}.cta-with-logo-icon{width:20px;height:20px;flex-shrink:0}.menu-dropdown-trigger{display:inline-flex;align-items:center;gap:4px;background:transparent;border:none;padding:0;color:rgba(var(--ink-rgb),.5);font-size:14px;font-weight:400;cursor:pointer;transition:color .15s ease}.menu-dropdown-trigger:hover{color:var(--text-1)}.menu-dropdown-trigger-icon{width:12px;height:12px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}.menu-dropdown-trigger[aria-expanded=true] .menu-dropdown-trigger-icon{transform:rotate(180deg)}.menu-dropdown-content{position:absolute;top:calc(100% + 8px);right:0;z-index:20;min-width:180px;padding:8px;background-color:var(--bg-card);border-radius:12px;border:1px solid rgba(var(--ink-rgb),.06);box-shadow:0 0 0 1px rgba(var(--shadow-ink),.04),0 12px 24px rgba(var(--shadow-ink),.08);animation:dropdown-enter .15s ease}@keyframes dropdown-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.menu-dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border-radius:8px;background:transparent;border:none;font-size:14px;font-weight:400;color:var(--text-1);text-align:left;cursor:pointer;transition:background .1s ease}.menu-dropdown-item.is-active,.menu-dropdown-item:hover{background-color:var(--bg-warm)}.menu-dropdown-item.is-active:after{content:"✓";margin-left:auto;color:var(--accent);font-weight:500}.page-type-indicator{display:inline-flex;align-items:center;gap:8px;padding:4px 12px 4px 4px;border-radius:9999px;background-color:rgba(var(--surface-rgb),.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:14px;font-weight:400;color:var(--text-1);box-shadow:0 0 0 1px rgba(var(--shadow-ink),.06)}.page-type-indicator-icon{width:24px;height:24px;border-radius:9999px;background:radial-gradient(circle at 30% 30%,var(--accent) 0,var(--accent-deep) 60%,var(--accent-deeper) 100%);display:flex;align-items:center;justify-content:center;color:var(--on-fill);flex-shrink:0}.page-type-indicator-icon svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}.hamburger-button{width:40px;height:40px;border-radius:9999px;background:transparent;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}.hamburger-icon{display:block;width:18px;height:14px;position:relative}.hamburger-icon span{display:block;position:absolute;left:0;width:100%;height:1.5px;background-color:var(--text-1);border-radius:1px;transition:all .3s var(--ease-out-quart)}.hamburger-icon span:first-child{top:0}.hamburger-icon span:nth-child(2){top:50%;transform:translateY(-50%)}.hamburger-icon span:nth-child(3){bottom:0}.hamburger-button[aria-expanded=true] .hamburger-icon span:first-child{top:50%;transform:translateY(-50%) rotate(45deg)}.hamburger-button[aria-expanded=true] .hamburger-icon span:nth-child(2){opacity:0}.hamburger-button[aria-expanded=true] .hamburger-icon span:nth-child(3){bottom:auto;top:50%;transform:translateY(-50%) rotate(-45deg)}.sticky-bottom-bar-icon-btn{width:40px;height:40px;border-radius:9999px;background-color:var(--bg-card);border:1px solid rgba(var(--ink-rgb),.08);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-1);padding:0;flex-shrink:0;transition:var(--transition-hover)}.sticky-bottom-bar-icon-btn:hover{background-color:var(--bg-warm)}.sticky-bottom-bar-icon-btn.is-favorited{background-color:rgba(var(--accent-rgb),.1);border-color:rgba(var(--accent-rgb),.3)}.sticky-bottom-bar-icon-btn svg{width:18px;height:18px}.sticky-bottom-bar-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 20px;border-radius:9999px;background-color:var(--text-1);color:var(--bg-card);text-decoration:none;font-size:14px;font-weight:400;letter-spacing:.01em;border:none;cursor:pointer;flex-shrink:0;transition:var(--transition-hover)}.sticky-bottom-bar-cta:hover{background-color:var(--ink-1a)}.sticky-bottom-bar-cta svg{width:16px;height:16px;stroke-width:1.8}.action-cta-single{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;padding:0 20px;border-radius:9999px;background-color:var(--text-1);color:var(--bg-card);text-decoration:none;font-size:15px;font-weight:400;letter-spacing:.01em;border:none;cursor:pointer;transition:var(--transition-hover)}.action-cta-single:hover{background-color:var(--ink-1a)}.action-cta-single svg{width:18px;height:18px;stroke-width:1.8}.action-secondary-links{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:12px;font-size:13px;font-weight:400;color:var(--text-2)}.action-secondary-links a,.action-secondary-links button{background:none;border:none;padding:0;color:inherit;font-size:inherit;font-weight:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(var(--ink-rgb),.2);transition:color .15s ease}.action-secondary-links a:hover,.action-secondary-links button:hover{color:var(--text-1);text-decoration-color:rgba(var(--ink-rgb),.5)}.action-secondary-links .dot{opacity:.4;text-decoration:none}.shop-meta{font-size:16px;font-weight:400;line-height:1.4;letter-spacing:0;color:var(--text-strong);display:flex;align-items:center;flex-wrap:wrap;gap:8px}.shop-meta .dot{opacity:.4}.action-buttons-row{display:flex;gap:8px;padding:0 20px;margin:16px 0}.action-button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px 0;border-radius:9999px;background-color:var(--bg-card);border:1px solid var(--bg-2);color:var(--text-1);font-size:13px;font-weight:400;text-decoration:none;cursor:pointer;transition:all .15s ease}.action-button:hover{background-color:var(--bg-warm)}.action-button svg{width:18px;height:18px;stroke-width:1.5}.animate-on-scroll{opacity:0;transform:translateY(12px);transition:opacity .6s var(--ease-material),transform .6s var(--ease-material);will-change:opacity,transform}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}.animate-on-scroll-stagger>*{opacity:0;transform:translateY(12px);transition:opacity .6s var(--ease-material),transform .6s var(--ease-material)}.animate-on-scroll-stagger.is-visible>:first-child{transition-delay:0ms;opacity:1;transform:translateY(0)}.animate-on-scroll-stagger.is-visible>:nth-child(2){transition-delay:80ms;opacity:1;transform:translateY(0)}.animate-on-scroll-stagger.is-visible>:nth-child(3){transition-delay:.16s;opacity:1;transform:translateY(0)}.animate-on-scroll-stagger.is-visible>:nth-child(4){transition-delay:.24s;opacity:1;transform:translateY(0)}.animate-on-scroll-stagger.is-visible>:nth-child(n+5){transition-delay:.32s;opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.bottom-sheet{transition-duration:.4s!important;animation-duration:revert!important}.card-tap,.hero-card,.pick-card{animation-duration:revert!important}.card-tap,.hero-card,.mini-map-link,.pick-card{transition-duration:.18s,.18s!important}.checkin-burst,.checkin-fab:active{animation:none!important}.checkin-toast{transition-duration:.01ms!important}.search-logo-spin .logo-arc-inner,.search-logo-spin .logo-arc-outer,.search-logo-spin .logo-dot,.search-mark-spin{animation:none!important;transform:none!important}.bottom-sheet-content [class*=sticky],.bottom-sheet-content section{transition-duration:.3s!important}.mapboxgl-marker,.mapboxgl-popup,.maplibregl-marker,.maplibregl-popup{transition-duration:.2s!important}.bottom-sheet-content{scroll-behavior:smooth!important}}.\[\&_\[stroke-dasharray\=\'1px_1px\'\]\]\:\!\[stroke-dasharray\:1px_0px\] [stroke-dasharray="1px 1px"]{stroke-dasharray:1px 0!important}