:root{--bg:#000;--sheet:#1c1c1ebd;--card:#2c2c2eb8;--card-solid:#1c1c1e;--fill:#7676803d;--fill2:#76768029;--sep:#5454588c;--text:#fff;--muted:#ebebf599;--muted2:#ebebf54d;--pink:#ff2bd6;--cyan:#22e4ff;--purple:#bf5af2;--green:#30d158;--blue:#0a84ff;--gold:#ffd60a;--red:#ff453a;--orange:#ff9f0a;--glow-pink:0 0 4px #fff, 0 0 10px var(--pink), 0 0 22px var(--pink), 0 0 42px var(--pink);--glow-cyan:0 0 4px #fff, 0 0 10px var(--cyan), 0 0 22px var(--cyan), 0 0 42px var(--cyan);--glow-purple:0 0 4px #fff, 0 0 10px var(--purple), 0 0 22px var(--purple);--blur:saturate(180%) blur(22px);--r-card:14px;--tabbar-h:56px;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;letter-spacing:-.01em;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Helvetica Neue,PingFang HK,Noto Sans CJK TC,system-ui,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0;overflow:hidden}button,input,select{font:inherit;color:inherit}a{color:var(--blue);text-decoration:none}.muted{color:var(--muted)}.small{font-size:12.5px;line-height:1.45}.neon-pink{color:#ffe3fa;text-shadow:var(--glow-pink)}.neon-cyan{color:#e3fcff;text-shadow:var(--glow-cyan)}.neon-purple{color:#f1e3ff;text-shadow:var(--glow-purple)}.app{position:fixed;top:0;bottom:0;left:0;right:0}.city-bg{background:#111;position:absolute;top:0;bottom:0;left:0;right:0}.map{background:#1a1a1a;position:absolute;top:0;bottom:0;left:0;right:0}.app .leaflet-container{background:#1a1a1a;font-family:inherit}.leaflet-control-attribution{-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border-radius:8px 0 0;font-size:10px;color:var(--muted)!important;background:#1c1c1eb3!important}.leaflet-control-attribution a{text-decoration:underline;color:var(--muted)!important}.leaflet-bar{overflow:hidden;border:none!important;border-radius:12px!important;box-shadow:0 4px 16px #00000059!important}.leaflet-bar a{-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);background:var(--sheet)!important;color:#fff!important;border-color:var(--sep)!important;width:38px!important;height:38px!important;line-height:38px!important}.leaflet-top.leaflet-right{top:70px}.topbar{top:max(10px, env(safe-area-inset-top));z-index:900;pointer-events:none;position:absolute;left:12px}.logo-link{pointer-events:auto;text-decoration:none}.neon-logo{-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);background:#141416c7;border:1px solid #bf5af28c;border-radius:16px;align-items:center;gap:8px;padding:6px 14px 6px 8px;display:inline-flex;box-shadow:0 0 10px #bf5af273,0 6px 18px #00000059}.logo-text{letter-spacing:1px;white-space:nowrap;font-family:Monoton,-apple-system,sans-serif;font-size:22px}.neon-logo.big{border-width:2px;padding:14px 26px 14px 14px}.neon-logo.big .logo-text{font-size:clamp(30px,8vw,56px)}.logo-dog{filter:drop-shadow(0 0 6px var(--pink));animation:2.4s ease-in-out infinite bob;display:inline-flex}.flicker{animation:4s infinite flicker}.flicker2{animation:6.5s 1.3s infinite flicker}.flicker3{animation:5.2s .6s infinite flicker}@keyframes flicker{0%,18%,22%,25%,53%,57%,to{opacity:1}20%,24%,55%{opacity:.2;text-shadow:none}}@keyframes bob{50%{transform:translateY(-3px)rotate(-4deg)}}.panel{z-index:800;background:var(--sheet);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border:.5px solid #ffffff1f;flex-direction:column;display:flex;position:absolute;box-shadow:0 10px 40px #00000073}.grabber{display:none}.panel-body{overscroll-behavior:contain;flex:1;overflow-y:auto}.segmented,.seg{background:var(--fill);border-radius:10px;gap:2px;margin:12px 16px 4px;padding:2px;display:flex}.segmented a,.seg button{text-align:center;color:#fff;white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:4px;padding:6px 4px;font-size:13px;font-weight:600;transition:background .2s;display:inline-flex;position:relative}.segmented a .tab-ic{display:none}.segmented a.active,.seg button.on{background:#636366;box-shadow:0 3px 8px #00000040,0 0 10px #ff2bd659}.seg{margin:10px 0}.badge{background:var(--red);color:#fff;border-radius:9px;min-width:17px;padding:0 5px;font-size:11px;font-weight:700;line-height:17px;display:inline-block}.tabbar{display:none}@media (min-width:900px){.panel{border-radius:16px;width:410px;top:78px;bottom:12px;left:12px;overflow:hidden}}@media (max-width:899px){.panel{--sheet:#1c1c1ed1;left:0;right:0;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));height:var(--sheet-h,30vh);will-change:height;border-bottom:none;border-radius:14px 14px 0 0;box-shadow:0 -4px 30px #00000073,0 -1px #ff2bd62e}.panel.snap-peek .panel-body,.panel.snap-half .panel-body{overflow-y:hidden}.panel.snap-full .panel-body{-webkit-overflow-scrolling:touch;overflow-y:auto}.grabber-zone{cursor:grab;touch-action:none;background:0 0;border:none;flex:none;width:100%;height:20px;padding:0;display:block}.grabber{background:#ebebf552;border-radius:3px;width:36px;height:5px;margin:7px auto 0;transition:background .2s,width .2s;display:block}.grabber-zone:active .grabber{background:#ebebf599;width:44px}.segmented.tabs{display:none}.tabbar{z-index:850;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border-top:.5px solid var(--sep);background:#161618db;display:flex;position:absolute;bottom:0;left:0;right:0}.tabbar a{color:#8e8e93;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:10.5px;font-weight:600;display:flex;position:relative}.tabbar a.active{color:var(--pink)}.tabbar a.active .tab-ic{filter:drop-shadow(0 0 6px #ff2bd6bf)}.tabbar .badge{position:absolute;top:4px;left:calc(50% + 6px)}.panel-body{padding-top:0}.page{padding-bottom:24px}.logo-text{font-size:18px}.leaflet-control-attribution{max-width:78vw;font-size:8.5px;line-height:1.25}.leaflet-top.leaflet-right{top:64px}.leaflet-bottom.leaflet-right{bottom:calc(var(--sheet-h,30vh) + var(--tabbar-h))}}.locate-btn{z-index:850;cursor:pointer;background:var(--sheet);width:44px;height:44px;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);color:var(--blue);border:.5px solid #ffffff26;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;right:10px;box-shadow:0 4px 16px #0006}@media (min-width:900px){.locate-btn{bottom:34px}}@media (max-width:899px){.locate-btn{right:max(10px, env(safe-area-inset-right));bottom:calc(var(--sheet-h,30vh) + var(--tabbar-h) + env(safe-area-inset-bottom) + 14px)}}.neon-btn{cursor:pointer;background:var(--pink);color:#fff;border:none;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:11px 16px;font-size:15px;font-weight:600;text-decoration:none;transition:transform .1s,opacity .2s;display:inline-flex;box-shadow:0 0 14px #ff2bd673}.neon-btn:active{opacity:.85;transform:scale(.97)}.neon-btn.secondary,.neon-btn.cyan{color:var(--blue);box-shadow:none;background:#0a84ff2e}.neon-btn.plain,.neon-btn.ghost{background:var(--fill);color:#fff;box-shadow:none}.neon-btn.on{color:var(--pink);box-shadow:none;background:#ff2bd62e}.neon-btn.wide{width:100%;margin-top:12px}.link-btn{color:var(--blue);cursor:pointer;background:0 0;border:none;padding:0 4px;font-weight:500}.filters{flex-direction:column;gap:10px;display:flex}.search{background:var(--fill);height:38px;color:var(--muted);border-radius:10px;align-items:center;gap:8px;padding:0 10px;display:flex}.search input{color:var(--text);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:16px}.search input::placeholder{color:var(--muted)}.search .clear{background:var(--muted2);cursor:pointer;color:#1c1c1e;border:none;border-radius:50%;width:18px;height:18px;padding:0;font-size:13px;line-height:18px}.chips{scrollbar-width:none;gap:6px;padding:1px 0 2px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{background:var(--fill);color:#fff;cursor:pointer;border:none;border-radius:999px;flex:none;align-items:center;gap:5px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.chip small{color:var(--muted);font-weight:500}.chip .dot{width:8px;height:8px;box-shadow:none;margin:0}.chip.on{color:#000;background:#fff}.chip.gold.on{background:var(--gold);color:#1c1c1e}.chip.gold.on small{color:#5a4a00}.filter-row{align-items:center;gap:8px;display:flex}.filter-row select{background:var(--fill);min-width:0;height:34px;color:var(--text);border:none;border-radius:9px;flex:1;padding:0 10px;font-size:14px}.filter-row select option{background:#2c2c2e}.ios-switch{cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;height:34px;font-size:14px;font-weight:600;display:inline-flex}.ios-switch input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.sw-track{background:#78788052;border-radius:16px;flex:none;width:51px;height:31px;transition:background .25s;position:relative}.sw-thumb{background:#fff;border-radius:50%;width:27px;height:27px;transition:transform .28s cubic-bezier(.3,1.4,.5,1),width .15s;position:absolute;top:2px;left:2px;box-shadow:0 3px 8px #00000026,0 3px 1px #0000000f}.ios-switch:active .sw-thumb{width:31px}.ios-switch.on:active .sw-thumb{transform:translate(16px)}.ios-switch input:focus-visible+.sw-track{outline:2px solid var(--blue);outline-offset:2px}.count-pill{cursor:pointer;background:var(--card);border-radius:12px;margin:12px 0 4px;padding:10px 14px;font-size:14px}.count-pill b{margin-right:3px;font-size:17px}.bar-list{margin:8px 0 0;padding:0;list-style:none}.card-list{background:var(--card);border-radius:var(--r-card);overflow:hidden}.bar-row{cursor:pointer;align-items:center;gap:10px;padding:11px 12px;display:flex;position:relative}.card-list .bar-row+.bar-row,.card-list>div+div .bar-row{box-shadow:inset 0 .5px 0 var(--sep)}.row-main{flex:1;min-width:0}.row-title{white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:600;overflow:hidden}.zh{color:var(--muted);font-weight:400}.row-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:3px;font-size:12.5px;display:flex}.row-awards:empty{display:none}.row-awards{flex-wrap:wrap;gap:5px;margin-top:5px;display:flex}.chev{color:var(--muted2);font-size:22px;line-height:1}.cat-badge{background:color-mix(in srgb, var(--c) 18%, transparent);color:var(--c);border-radius:6px;align-items:center;gap:4px;padding:1px 7px;font-weight:600;display:inline-flex}.open-badge{font-weight:600}.open-badge.open{color:var(--green)}.open-badge.closed{color:var(--red)}.open-badge.unk{color:var(--muted);font-weight:500}.award-pill{color:var(--gold);white-space:nowrap;background:#ffd60a29;border-radius:6px;align-items:center;gap:3px;padding:2px 8px;font-size:11.5px;font-weight:700;display:inline-flex}.award-pill.world{color:#64d2ff;background:#64d2ff26}.award-pill.big{border-radius:8px;padding:5px 10px;font-size:13px}.trend-pill{color:var(--orange);background:#ff9f0a26;border-radius:6px;padding:2px 8px;font-size:11.5px;font-weight:600}.pick-pill{color:var(--pink);background:#ff2bd629;border-radius:6px;padding:1px 7px;font-weight:600}.mini-flag{color:var(--pink);font-weight:700}.mini-flag.v{color:var(--green)}.mini-flag.h{color:var(--blue);border:1px solid;border-radius:5px;padding:0 4px;font-size:10px}.row-num,.hopnum{color:#fff;background:var(--pink);border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:grid}.empty{text-align:center;color:var(--muted);padding:22px 10px}.neon-title{letter-spacing:-.02em;color:#fff;margin:6px 0 12px;font-size:28px;font-weight:700}.neon-title .muted{font-size:15px;font-weight:500}.card{background:var(--card);border-radius:var(--r-card);margin:12px 0;padding:12px 14px}.card h3{text-transform:uppercase;letter-spacing:.02em;color:var(--muted);margin:2px 0 8px;font-size:13px;font-weight:600}.card p{margin:4px 0;line-height:1.45}.detail{padding:0 0 40px}.detail>.card{margin:12px 16px}.photo{background:#111;height:210px;position:relative;overflow:hidden}.photo img{object-fit:cover;width:100%;height:100%;display:block}.photo-attr{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#ddd;background:#0000008c;border-radius:8px;padding:3px 8px;font-size:11px;text-decoration:none;position:absolute;bottom:8px;right:8px}.back-btn{width:34px;height:34px;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);color:#fff;cursor:pointer;background:#1c1c1e99;border:none;border-radius:50%;place-items:center;padding:0 2px 0 0;display:grid;position:absolute;top:10px;left:10px}.back-btn:active{background:#3c3c40cc;transform:scale(.92)}.ph-placeholder{background:radial-gradient(circle at 50% 30%,#ff2bd647,#0000 60%),linear-gradient(#1b0b33,#0b0616);flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex}.ph-sign{font-family:Monoton,cursive;font-size:30px;animation:5s infinite flicker}.ph-dog{height:110px;margin-top:-4px;animation:2s ease-in-out infinite bob}.ph-label{color:var(--muted);margin-top:-6px;font-size:12px}.detail-head{padding:14px 16px 4px}.bar-name{letter-spacing:-.02em;color:#fff;margin:0;font-size:26px;font-weight:700;line-height:1.15}.alt-name{color:var(--muted);margin-top:2px;font-size:16px}.detail-head .row-meta{margin-top:8px;font-size:13px}.detail-awards{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.detail-awards:empty{display:none}.notice{color:#cfe6ff;background:#0a84ff24;border-radius:12px;margin:8px 16px 0;padding:10px 12px;font-size:13.5px;line-height:1.4}.notice.reopening{color:#ffd9a0;background:#ff9f0a26}.notice.unconfirmed{color:#ffc9c5;background:#ff453a24}.action-bar{gap:8px;padding:12px 16px 8px;display:flex}.action-bar .neon-btn{flex:1}.icon-btn{background:var(--fill);color:#fff;cursor:pointer;border:none;border-radius:12px;place-items:center;width:44px;height:44px;padding:0;font-size:18px;transition:transform .12s,background .2s;display:grid}.icon-btn:active{transform:scale(.92)}.icon-btn.on.pink{color:#fff;background:var(--pink)}.icon-btn.on.green{color:#002b0f;background:var(--green)}.links{flex-wrap:wrap;gap:8px;padding:0 16px 4px;display:flex}.links .neon-btn{flex:auto;padding:9px 12px;font-size:14px}.why p{font-size:15px}.award-list{margin:0;padding:0;list-style:none}.award-list li{align-items:baseline;gap:10px;padding:8px 0;font-size:14px;display:flex}.award-list li+li{box-shadow:inset 0 .5px 0 var(--sep)}.award-list .yr{width:38px;color:var(--muted);font-variant-numeric:tabular-nums;font-weight:600}.award-list .ln{flex:1}.award-list .rk{color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.award-list li.y2026 .yr,.award-list li.y2026 .rk{color:var(--gold)}.award-list li.y2026{background:linear-gradient(90deg,#ffd60a1a,#0000);border-radius:8px;margin:0 -8px;padding-left:8px;padding-right:8px}.special{font-size:14px}.info h3{margin-top:12px}.info h3:first-child{margin-top:2px}.hours{border-collapse:collapse;width:100%;font-size:14px}.hours td{box-shadow:inset 0 -.5px 0 var(--sep);padding:5px 2px}.hours td:first-child{width:52px;color:var(--muted);font-weight:600}.hours tr.today td{color:#fff;font-weight:700}.sources ul{margin:0;padding-left:18px;font-size:13.5px;line-height:1.6}.hop-stats{text-align:center;justify-content:space-around;padding:12px;display:flex}.hop-stats b{font-size:20px;font-weight:700;display:block}.hop-stats small{color:var(--muted)}.hop-list{padding:0}.leg{color:var(--muted);box-shadow:inset 0 .5px 0 var(--sep);padding:4px 0 4px 50px;font-size:12px}.reorder{gap:4px;display:flex}.reorder button{background:var(--fill);width:30px;height:30px;color:var(--text);cursor:pointer;border:none;border-radius:8px;font-size:12px}.reorder button:disabled{opacity:.3}.hop-actions{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.hop-actions>*{flex:1}.shared-banner{justify-content:space-between;align-items:center;gap:8px;display:flex}.about-dog{height:90px;margin:6px auto;display:block}.about-counts{margin:0;padding-left:0;list-style:none}.about-counts li{margin:5px 0}.dot{border-radius:50%;width:10px;height:10px;margin-right:8px;display:inline-block}.dicon .mk{transform-origin:50% 96%;width:46px;height:46px;transition:transform .18s cubic-bezier(.3,1.4,.5,1);position:relative}.mk-art{filter:drop-shadow(0 0 1px #fff)drop-shadow(0 0 .6px #fff)drop-shadow(0 3px 4px #0009);display:block;overflow:visible}.mk.sel{transform:scale(1.3)}.mk.sel .mk-art{filter:drop-shadow(0 0 1.2px #fff) drop-shadow(0 0 6px var(--c)) drop-shadow(0 0 14px var(--c))}.mk-award{background:var(--gold);color:#1c1c1e;text-align:center;border:1.5px solid #1c1c1e;border-radius:9px;min-width:17px;height:17px;padding:0 4px;font:800 10px/17px -apple-system,system-ui,sans-serif;position:absolute;top:-4px;right:-6px}.mk-vis{background:var(--green);border:1.5px solid #1c1c1e;border-radius:50%;place-items:center;width:16px;height:16px;display:grid;position:absolute;top:-4px;left:-5px}.leaflet-marker-icon.dicon{overflow:visible}.dmarker{width:60px;height:50px}.dicon{background:0 0;border:none}.dcluster{background:0 0}.ncluster{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1c1c1ed9;border:2px solid #ffffffd9;border-radius:50%;place-items:center;font-size:14px;font-weight:700;display:grid;box-shadow:0 4px 12px #00000080}.ncluster.c-m{border-color:var(--purple)}.ncluster.c-l,.ncluster.c-xl{border-color:var(--pink);font-size:16px}.hopnum{width:28px;height:28px;font-size:14px}.route-hop .leaflet-marker-pane .dicon:not(.hop-icon),.route-hop .leaflet-marker-pane .dcluster{opacity:.35!important}.leaflet-hopline-pane{pointer-events:none}.toast{z-index:1500;left:50%;top:max(70px, calc(env(safe-area-inset-top) + 60px));white-space:nowrap;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);background:#2c2c2ee0;border-radius:999px;padding:10px 18px;font-size:14px;font-weight:600;animation:.25s toastin;position:absolute;transform:translate(-50%);box-shadow:0 8px 24px #0006}@keyframes toastin{0%{opacity:0;transform:translate(-50%,-10px)}}.dachshund{display:block;overflow:visible}.dachshund .dh-leg{transform-box:fill-box;transform-origin:50% 8%}.dachshund.running .leg-f1,.dachshund.running .leg-b2{animation:.32s ease-in-out infinite alternate legA}.dachshund.running .leg-f2,.dachshund.running .leg-b1{animation:.32s ease-in-out infinite alternate legB}.dachshund .dh-ear{transform-box:fill-box;transform-origin:55% 4%}.dachshund.running .dh-ear{animation:.32s ease-in-out infinite alternate ear}.dachshund .dh-tail{transform-box:fill-box;transform-origin:100% 100%;animation:.3s ease-in-out infinite alternate wag}.dachshund.running .dh-head{animation:.32s ease-in-out infinite alternate headbob}@keyframes legA{0%{transform:rotate(32deg)}to{transform:rotate(-32deg)}}@keyframes legB{0%{transform:rotate(-32deg)}to{transform:rotate(32deg)}}@keyframes ear{0%{transform:rotate(-7deg)}to{transform:rotate(6deg)}}@keyframes wag{0%{transform:rotate(-14deg)}to{transform:rotate(16deg)}}@keyframes headbob{0%{transform:translateY(-2px)}to{transform:translateY(2px)}}.dachshund.hopping .leg-f1,.dachshund.hopping .leg-f2{animation:.45s ease-in-out infinite alternate tuckF}.dachshund.hopping .leg-b1,.dachshund.hopping .leg-b2{animation:.45s ease-in-out infinite alternate tuckB}@keyframes tuckF{0%{transform:rotate(10deg)}to{transform:rotate(-38deg)}}@keyframes tuckB{0%{transform:rotate(-10deg)}to{transform:rotate(38deg)}}.t-hop .walker-dog{animation-name:hopbounce;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes hopbounce{0%{transform:translateY(0)scale(1.06,.9)}12%{transform:translateY(calc(var(--hop-h) * -.6)) scale(.96, 1.05) rotate(-4deg)}50%{transform:translateY(calc(var(--hop-h) * -1)) scale(1, 1) rotate(0)}88%{transform:translateY(calc(var(--hop-h) * -.5)) rotate(4deg)}to{transform:translateY(0)scale(1.06,.9)}}.dachshund.dancing{transform-origin:50% 90%;animation:1.2s ease-in-out infinite dance}.dachshund.dancing .dh-head{animation:.3s ease-in-out infinite alternate headbob}.dachshund.dancing .leg-f1,.dachshund.dancing .leg-b2{animation:.3s ease-in-out infinite alternate legA}.dachshund.dancing .leg-f2,.dachshund.dancing .leg-b1{animation:.3s ease-in-out infinite alternate legB}.dachshund.dancing .dh-tail{animation-duration:.15s}@keyframes dance{0%,to{transform:rotate(0)translateY(0)}15%{transform:rotate(-7deg)translateY(-6%)}30%{transform:rotate(6deg)}45%{transform:rotate(-4deg)translateY(-10%)scaleX(1)}55%{transform:translateY(-12%)scaleX(-1)}65%{transform:translateY(-6%)scaleX(1)}80%{transform:rotate(6deg)translateY(-4%)}}.dachshund .dh-wineglass{transform-box:view-box}.dachshund.sipping .dh-wineglass{animation:1.1s ease-in-out infinite sip}.dachshund.sipping .dh-head{animation:1.1s ease-in-out infinite siphead}.dachshund .dh-head{transform-box:view-box}.dachshund.sipping .dh-wine-liquid{transform-box:fill-box;transform-origin:50% 100%;animation:2.2s ease-in forwards wineLevel}@keyframes sip{0%,to{transform:rotate(0)}40%,65%{transform:rotate(-32deg)translate(-4%,-2%)}}@keyframes siphead{0%,to{transform:rotate(0)}40%,65%{transform:rotate(-9deg)}}@keyframes wineLevel{to{transform:scaleY(.45)}}.loading{z-index:3000;background:radial-gradient(at 50% 20%,#2a0d4a,#0b0616 65%);flex-direction:column;justify-content:center;align-items:center;gap:28px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.skyline{opacity:.55;clip-path:polygon(0 60%,6% 60%,6% 30%,12% 30%,12% 50%,18% 50%,18% 12%,23% 12%,23% 45%,30% 45%,30% 25%,36% 25%,36% 55%,44% 55%,44% 5%,48% 5%,48% 40%,56% 40%,56% 20%,63% 20%,63% 50%,70% 50%,70% 15%,76% 15%,76% 42%,84% 42%,84% 28%,90% 28%,90% 55%,100% 55%,100% 100%,0 100%);background:linear-gradient(#0000 0 0),repeating-linear-gradient(90deg,#160a2a 0 38px,#1d0d36 38px 60px,#120822 60px 96px,#1a0b30 96px 130px);height:38%;position:absolute;bottom:0;left:0;right:0}.runner-track{width:min(560px,92vw);height:150px;position:relative}.runner{width:220px;animation:3.2s linear infinite run;position:absolute;bottom:14px;left:0}.runner .dachshund{width:100%;animation:1.6s cubic-bezier(.3,0,.7,1) infinite jump}.hurdle{background:var(--cyan);width:10px;height:30px;box-shadow:var(--glow-cyan);border-radius:4px;position:absolute;bottom:14px}.hurdle.h1{left:38%}.hurdle.h2{left:78%}.ground{background:var(--pink);height:3px;box-shadow:var(--glow-pink);border-radius:2px;position:absolute;bottom:10px;left:0;right:0}@keyframes run{0%{transform:translate(-240px)}to{transform:translate(min(600px,96vw))}}@keyframes jump{0%,30%,70%,to{transform:translateY(0)rotate(0)}42%{transform:translateY(-58px)rotate(-8deg)}55%{transform:translateY(-48px)rotate(6deg)}}.loading-text{text-align:center;z-index:1;padding:0 20px;font-size:16px;font-weight:800}.dots i{font-style:normal;animation:1.2s infinite dot}.dots i:nth-child(2){animation-delay:.2s}.dots i:nth-child(3){animation-delay:.4s}@keyframes dot{0%,55%{transform:scale(0)}65%,92%{transform:scale(1)}to{transform:scale(0)}}.loading .neon-logo{z-index:1}.walk-overlay{z-index:2500;pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.walker{will-change:transform;animation-name:walk;animation-timing-function:linear;animation-fill-mode:forwards;position:absolute;top:0;bottom:0;left:0}@keyframes walk{0%{transform:translateX(var(--from))}to{transform:translateX(var(--to))}}.curtain{border-right:6px solid var(--pink);box-shadow:0 0 30px var(--pink), inset -20px 0 40px #ff2bd680;background:radial-gradient(circle at 30% 30%,#ff2bd659,#0000 35%),radial-gradient(circle at 70% 70%,#22e4ff4d,#0000 35%),repeating-linear-gradient(90deg,#1a0a33 0 80px,#140828 80px 160px);border-radius:0 50vh 50vh 0;align-items:center;display:flex;position:absolute;top:0;bottom:0;overflow:hidden}.curtain-text{white-space:nowrap;letter-spacing:6px;opacity:.9;word-spacing:30px;background:0 0;font-family:Monoton,cursive;font-size:clamp(28px,7vw,64px);position:absolute;top:18%;left:0;right:0}.walker-dog{filter:drop-shadow(0 0 1.5px #fff)drop-shadow(0 0 12px #ff2bd68c);transform-origin:70% 100%;position:absolute;bottom:8%;left:0}.walker-dog .dachshund{width:auto;height:100%}.curtain-text.two{opacity:.75;font-size:clamp(18px,4vw,34px);top:36%}.stage-curtain{animation:stageCurtain var(--dur) cubic-bezier(.6, 0, .4, 1) forwards;background:radial-gradient(circle at 30% 30%,#ff2bd652,#0000 38%),radial-gradient(circle at 72% 70%,#22e4ff42,#0000 38%),repeating-linear-gradient(90deg,#1a0a33 0 80px,#140828 80px 160px);position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;box-shadow:inset 0 0 60px #ff2bd659}.stage-curtain:before,.stage-curtain:after{content:"";background:var(--pink);width:6px;box-shadow:0 0 24px var(--pink);position:absolute;top:0;bottom:0}.stage-curtain:before{left:0}.stage-curtain:after{right:0}.stage-curtain .spotlight{background:radial-gradient(at 50% 80%,#ffffff2e,#ff2bd614 45%,#0000 70%);border-radius:50%;width:min(90vw,900px);height:40%;position:absolute;bottom:6%;left:50%;transform:translate(-50%)}@keyframes stageCurtain{0%{transform:translate(-102%)}22%,80%{transform:translate(0)}to{transform:translate(102%)}}.stage-dog{animation:stageMove var(--dur) linear forwards;will-change:transform;position:absolute;bottom:11%;left:0}.stage-dog .dachshund{filter:drop-shadow(0 0 1.5px #fff)drop-shadow(0 0 12px #ff2bd680);width:auto;height:100%}.stage-act{height:100%}@keyframes stageMove{0%{transform:translateX(var(--from))}28%{transform:translateX(var(--mid));animation-timing-function:linear}74%{transform:translateX(var(--mid));animation-timing-function:ease-in}to{transform:translateX(var(--to))}}.t-dance .stage-dog{animation-timing-function:ease-out}.notes{pointer-events:none;position:absolute;top:-30%;bottom:40%;left:0;right:0}.note{opacity:0;color:#fff;font-size:clamp(26px,6vw,56px);font-weight:700;position:absolute;bottom:30%}.phase-act .note{animation:1.3s ease-out infinite noteUp}.note.n0{color:#ffe3fa;text-shadow:var(--glow-pink);left:10%}.note.n1{color:#e3fcff;text-shadow:var(--glow-cyan);left:30%;animation-delay:.25s!important}.note.n2{color:#fff6c9;text-shadow:0 0 10px var(--gold);left:52%;animation-delay:.5s!important}.note.n3{color:#ffe3fa;text-shadow:var(--glow-pink);left:70%;animation-delay:.75s!important}.note.n4{color:#f1e3ff;text-shadow:var(--glow-purple);left:86%;animation-delay:.15s!important}.note.n5{color:#e3fcff;text-shadow:var(--glow-cyan);left:42%;animation-delay:.95s!important}@keyframes noteUp{0%{opacity:0;transform:translateY(20px)rotate(-10deg)scale(.7)}20%{opacity:1}to{opacity:0;transform:translateY(-120px)rotate(14deg)scale(1.1)}}.sip-bubble{color:#1c1c1e;background:#fff;border:3px solid #141014;border-radius:18px;padding:6px 14px;font:800 clamp(16px,3.4vw,28px) "Baloo 2",ui-rounded,sans-serif;animation:.25s toastin;position:absolute;top:-16%;right:-2%;box-shadow:0 0 14px #ff2bd680}.walk-overlay.back,.walk-overlay.back .curtain-text,.walk-overlay.back .note,.walk-overlay.back .sip-bubble{transform:scaleX(-1)}.walk-overlay.back .phase-act .note,.walk-overlay.back.phase-act .note{animation-name:noteUpBack}@keyframes noteUpBack{0%{opacity:0;transform:scaleX(-1)translateY(20px)scale(.7)}20%{opacity:1}to{opacity:0;transform:scaleX(-1)translateY(-120px)scale(1.1)}}.leaflet-control-attribution{display:none!important}.credit-btn{z-index:850;cursor:pointer;width:30px;height:30px;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);color:#ebebf5bf;background:#1c1c1e99;border:.5px solid #ffffff24;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;box-shadow:0 2px 8px #00000059}.credit-btn.on{color:#fff;background:#48484ad9}.credit-pop{z-index:860;width:min(290px,100vw - 24px);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);color:#ebebf5d9;background:#2c2c2eeb;border:.5px solid #ffffff1f;border-radius:14px;padding:10px 12px;font-size:12px;line-height:1.45;animation:.18s toastin;position:absolute;box-shadow:0 8px 24px #00000073}.credit-pop a{color:var(--blue)}.credit-title{color:#fff;margin-bottom:4px;font-size:13px;font-weight:600}.credit-text+.credit-text{margin-top:6px}@media (min-width:900px){.credit-btn{bottom:41px;right:64px}.credit-pop{bottom:80px;right:64px}}@media (max-width:899px){.credit-btn{left:max(12px, env(safe-area-inset-left));bottom:calc(var(--sheet-h,30vh) + var(--tabbar-h) + env(safe-area-inset-bottom) + 21px)}.credit-pop{left:max(12px, env(safe-area-inset-left));bottom:calc(var(--sheet-h,30vh) + var(--tabbar-h) + env(safe-area-inset-bottom) + 60px)}}.sf{vertical-align:-.15em;flex:none;display:inline-block}.chip .sf{margin-right:1px}.award-pill .sf,.trend-pill .sf,.mini-flag .sf{vertical-align:-2px}.chev{color:#ebebf54d;display:inline-flex}.neon-title{letter-spacing:.01em;margin:4px 0 12px;font-size:34px;font-weight:700;line-height:1.1}.neon-title .muted{letter-spacing:-.01em;margin-top:2px;font-size:15px;font-weight:500;display:block}.inset-group{border-radius:var(--r-card);background:var(--card);margin:12px 16px;padding:0;list-style:none;overflow:hidden}.inset-group li+li{position:relative}.inset-group li+li:before{content:"";background:var(--sep);height:.5px;position:absolute;top:0;left:52px;right:0}.inset-group li+li a{box-shadow:none}.inset-group a{color:#fff;align-items:center;gap:12px;min-height:46px;padding:8px 14px;font-size:16px;transition:background .15s;display:flex}.inset-group a:active{background:#ffffff17}.inset-group .lbl{flex:1;position:static}.inset-group .val{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:45%;font-size:15px;overflow:hidden}.inset-group .trail{color:#ebebf54d}.ic-sq{color:#fff;border-radius:7px;flex:none;place-items:center;width:29px;height:29px;display:grid}.bar-row{-webkit-user-select:none;user-select:none;transition:background .15s}.bar-row:active{background:#ffffff17}.chip,.seg button,.segmented a,.count-pill,.link-btn{transition:transform .12s,background .2s,opacity .2s}.chip:active,.seg button:active,.count-pill:active{opacity:.8;transform:scale(.96)}.link-btn:active{opacity:.5}.tabbar a{transition:color .2s,transform .12s}.tabbar a:active{transform:scale(.92)}.locate-btn:active,.credit-btn:active{transform:scale(.9)}.count-pill{align-items:baseline;gap:4px;display:flex}.count-pill .muted{margin-left:auto}.pack-grid{grid-template-columns:repeat(2,1fr);gap:6px 12px;display:grid}.pack-grid figure{text-align:center;margin:0}.pack-grid .dachshund{width:100%;height:62px}.pack-grid figcaption{color:var(--muted);font-size:12px;font-weight:600}.about-dog{height:100px}.photo{height:230px}.photo:after{content:"";pointer-events:none;background:linear-gradient(#0000,#1c1c1e8c);height:70px;position:absolute;top:auto;bottom:0;left:0;right:0}.photo-attr{z-index:1;text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 16px);overflow:hidden}.neon-btn .sf{margin-left:-2px}.topbar{left:max(12px, env(safe-area-inset-left))}@media (min-width:900px){.panel{left:max(12px, env(safe-area-inset-left))}}:root{--ink:#16122a;--night:#1a1046;--navy:#22186b;--plum:#2d2270;--plum2:#3a2d8f;--plum3:#4a3aa8;--yellow:#ffd23f;--pink:#ff4f9a;--orange:#ff8a3d;--cyan:#3fd8ff;--green:#4ee08a;--cream:#fff3d6;--violet:#9b7bff;--blue:#3fd8ff;--gold:#ffd23f;--red:#ff5a4f;--purple:#9b7bff;--sheet:var(--plum);--card:var(--plum2);--card-solid:var(--plum2);--fill:#fff3d61f;--fill2:#fff3d614;--sep:#fff3d629;--muted:#fff3d6ad;--muted2:#fff3d659;--display:"Lilita One", "Fredoka", ui-rounded, system-ui, sans-serif;--round:"Fredoka", ui-rounded, "SF Pro Rounded", -apple-system, "PingFang HK", "Noto Sans CJK TC", system-ui, sans-serif;--hand:"Caveat", "Patrick Hand", "LXGW WenKai TC", cursive;--hand-zh:"LXGW WenKai TC", "Caveat", cursive;--pop:0 4px 0 var(--ink);--r-card:18px;font-family:var(--round);letter-spacing:0;background:var(--night)}a{color:var(--cyan)}.city-bg,.map,.app .leaflet-container{background:var(--night)}.map:not([data-basemap=ofm]) .leaflet-tile-pane{filter:saturate(.9)brightness(.92)contrast(1.05)}.map:not([data-basemap=ofm]):after{content:"";z-index:250;pointer-events:none;mix-blend-mode:multiply;background:linear-gradient(#2b147838,#1a10461f);position:absolute;top:0;bottom:0;left:0;right:0}.map[data-basemap=ofm]{background:#16122e}.basemap-gl{image-rendering:auto}.topbar{right:max(12px, env(safe-area-inset-right));justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.neon-logo{-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(180deg, var(--pink), #e8357f);border:3.5px solid var(--ink);box-shadow:0 4px 0 var(--ink), 0 0 16px #ff4f9a8c;border-radius:16px;gap:6px;padding:4px 14px 5px 6px;position:relative}.neon-logo:before{content:"";pointer-events:none;background:radial-gradient(circle, var(--yellow) 1.6px, transparent 2.2px) 0 0 / 9px 100% repeat-x;opacity:.9;border-radius:11px;height:4px;position:absolute;top:2px;bottom:3px;left:3px;right:3px}.logo-text{font-family:var(--display);letter-spacing:.5px;color:var(--yellow);white-space:nowrap;-webkit-text-stroke:1.6px var(--ink);paint-order:stroke fill;text-shadow:0 3px 0 var(--ink), 0 0 12px #ffd23f8c;padding-top:3px;font-size:25px;line-height:1}.logo-me{color:var(--cyan)}.logo-star{color:var(--yellow);-webkit-text-stroke:1.5px var(--ink);font-size:18px;animation:1.6s ease-in-out infinite twinkle;position:absolute;top:-10px;right:-9px}.logo-dog{filter:none}.neon-logo.big{box-shadow:0 8px 0 var(--ink), 0 0 40px #ff4f9a99;border-width:5px;border-radius:26px;padding:10px 26px 12px 12px}.neon-logo.big .logo-text{-webkit-text-stroke:3px var(--ink);text-shadow:0 6px 0 var(--ink), 0 0 26px #ffd23f99;font-size:clamp(44px,13vw,84px)}.neon-logo.big .logo-star{font-size:34px;top:-18px;right:-16px}@keyframes twinkle{50%{opacity:.6;transform:scale(.6)rotate(30deg)}}.about-btn{pointer-events:auto;width:42px;height:42px;color:var(--ink);background:radial-gradient(circle at 35% 30%, #9cf0ff, var(--cyan) 55%, #19a9d6);border:3.5px solid var(--ink);box-shadow:0 4px 0 var(--ink);border-radius:50%;place-items:center;transition:transform .1s,box-shadow .1s;display:grid}.about-btn:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.about-btn.active{background:radial-gradient(circle at 35% 30%, #fff1a8, var(--yellow) 55%, #e0a800)}.about-btn .tab-ic{stroke-width:2.4px}.panel{background:linear-gradient(180deg, var(--plum) 0, var(--navy) 100%);-webkit-backdrop-filter:none;backdrop-filter:none;border:4px solid var(--ink);box-shadow:0 0 0 3px var(--yellow), 0 0 0 6.5px var(--ink), 0 0 28px #3fd8ff59}.panel:before{content:"";z-index:2;pointer-events:none;background:repeating-linear-gradient(90deg, var(--pink) 0 22px, var(--orange) 22px 44px, var(--yellow) 44px 66px, var(--cyan) 66px 88px);border-bottom:3px solid var(--ink);height:8px;position:absolute;top:0;left:0;right:0}.panel-body{background:radial-gradient(circle at 15% 0,#ff4f9a1f,#0000 40%),radial-gradient(circle at 100% 30%,#3fd8ff1a,#0000 45%)}@media (min-width:900px){.panel{border-radius:26px;width:400px;top:74px;bottom:18px;left:18px}.panel>.tabs{margin-top:18px}}@media (max-width:899px){.panel{--sheet:var(--plum);box-shadow:0 0 0 3px var(--yellow), 0 0 0 6.5px var(--ink), 0 -6px 30px #3fd8ff4d;border-bottom:none;border-radius:26px 26px 0 0;left:4px;right:4px}.panel:before{border-radius:22px 22px 0 0}.grabber-zone{height:24px;margin-top:6px}.grabber{background:var(--cream);border:2px solid var(--ink);border-radius:4px;width:46px;height:7px;margin-top:8px}.grabber-zone:active .grabber{background:var(--yellow);width:56px}}.page{padding:10px 16px 40px}.neon-title{font-family:var(--display);letter-spacing:.5px;color:var(--yellow);-webkit-text-stroke:1.4px var(--ink);paint-order:stroke fill;text-shadow:0 3px 0 var(--ink), 3px 4px 0 var(--pink);font-size:32px;font-weight:400}.neon-title .muted{font-family:var(--round);-webkit-text-stroke:0;text-shadow:none;color:var(--muted);font-weight:500}.segmented{background:var(--ink);border-radius:999px;gap:4px;margin:14px 14px 6px;padding:4px}.segmented a{color:var(--cream);border-radius:999px;padding:7px 4px;font-size:13px;font-weight:600}.segmented a.active{background:var(--yellow);color:var(--ink);box-shadow:inset 0 -3px #0003}.segmented a.tab-gacha:not(.active){color:var(--pink)}.seg{background:var(--ink);border-radius:999px;padding:3px}.seg button{color:var(--cream);border-radius:999px}.seg button.on{background:var(--cyan);color:var(--ink);box-shadow:none}@media (max-width:899px){:root{--tabbar-h:64px}.tabbar{background:linear-gradient(180deg, #ff6aa9, var(--pink) 40%, #d8327a);-webkit-backdrop-filter:none;backdrop-filter:none;border-top:4px solid var(--ink)}.tabbar:before{content:"";background:#ffffff59;height:3px;position:absolute;top:4px;left:0;right:0}.tabbar a{color:var(--ink);gap:1px;font-size:10.5px;font-weight:600}.tabbar a .tab-ic{background:var(--cream);border:3px solid var(--ink);width:34px;height:34px;box-shadow:0 3px 0 var(--ink);stroke-width:2.2px;border-radius:50%;padding:5px;transition:transform .1s,box-shadow .1s,background .2s}.tabbar a.active{color:var(--ink)}.tabbar a.active .tab-ic{background:var(--yellow);filter:none;box-shadow:0 1px 0 var(--ink), 0 0 12px #ffd23fe6;transform:translateY(2px)}.tabbar a:active .tab-ic{box-shadow:0 0 0 var(--ink);transform:translateY(3px)}.tabbar a.tab-gacha .tab-ic{background:radial-gradient(circle at 35% 30%, #9cf0ff, var(--cyan) 55%, #19a9d6);width:50px;height:50px;box-shadow:0 5px 0 var(--ink);margin-top:-22px;padding:9px}.tabbar a.tab-gacha.active .tab-ic{background:radial-gradient(circle at 35% 30%, #fff1a8, var(--yellow) 55%, #e0a800);box-shadow:0 2px 0 var(--ink), 0 0 16px #ffd23fe6}.tabbar .badge{top:2px;left:calc(50% + 8px)}.logo-text{font-size:22px}}.badge{background:var(--yellow);color:var(--ink);border:2px solid var(--ink);font-weight:700;line-height:14px}.neon-btn,.arcade-btn{cursor:pointer;font-family:var(--display);letter-spacing:.4px;color:#fff;background:linear-gradient(180deg, #ff86bd, var(--pink) 45%, #e0377f);border:3px solid var(--ink);box-shadow:0 5px 0 var(--ink);-webkit-text-stroke:0;text-shadow:0 2px 0 var(--ink);border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:10px 18px;font-size:16px;font-weight:400;text-decoration:none;transition:transform 80ms,box-shadow 80ms,filter .2s;display:inline-flex}.neon-btn:active,.arcade-btn:active{box-shadow:0 1px 0 var(--ink);opacity:1;transform:translateY(4px)}.neon-btn.secondary,.neon-btn.cyan,.arcade-btn.cyan{background:linear-gradient(180deg, #9cf0ff, var(--cyan) 45%, #19a9d6);color:var(--ink);text-shadow:none;box-shadow:0 5px 0 var(--ink)}.neon-btn.plain,.neon-btn.ghost,.arcade-btn.plain{background:linear-gradient(180deg, #fff9ea, var(--cream));color:var(--ink);text-shadow:none;box-shadow:0 5px 0 var(--ink)}.neon-btn.on{background:linear-gradient(180deg, #8ff0b6, var(--green) 45%, #2bb86a);color:var(--ink);text-shadow:none;box-shadow:0 5px 0 var(--ink)}.neon-btn.wide{margin-top:14px}.icon-btn{border:3px solid var(--ink);background:var(--cream);color:var(--ink);box-shadow:0 4px 0 var(--ink);border-radius:50%}.icon-btn:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.icon-btn.on.pink{background:var(--pink);color:#fff}.icon-btn.on.green{background:var(--green);color:var(--ink)}.link-btn{color:var(--cyan)}.locate-btn,.credit-btn{-webkit-backdrop-filter:none;backdrop-filter:none;border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink)}.locate-btn{background:radial-gradient(circle at 35% 30%, #fff1a8, var(--yellow) 55%, #e0a800);color:var(--ink);width:46px;height:46px}.credit-btn{background:var(--cream);color:var(--ink)}.credit-btn.on{background:var(--yellow);color:var(--ink)}.credit-pop{background:var(--plum);border:3px solid var(--ink);box-shadow:0 0 0 2px var(--yellow), 0 6px 0 var(--ink);color:var(--cream);-webkit-backdrop-filter:none;backdrop-filter:none}.leaflet-bar{border:3px solid var(--ink)!important;box-shadow:0 4px 0 var(--ink)!important;border-radius:14px!important}.leaflet-bar a{-webkit-backdrop-filter:none;backdrop-filter:none;font-weight:700;background:var(--cream)!important;color:var(--ink)!important;border-color:var(--ink)!important}.leaflet-bar a:active{background:var(--yellow)!important}.card,.card-list,.inset-group,.count-pill{background:var(--plum2);border:3px solid var(--ink);box-shadow:var(--pop)}.card h3{color:var(--yellow);font-family:var(--display);letter-spacing:.6px;text-transform:uppercase;font-size:14px;font-weight:400}.row-title{font-weight:600}.bar-row:active,.bar-row:hover{background:#ffd23f14}.search{background:var(--ink);border:2.5px solid var(--plum3);border-radius:999px}.search:focus-within{border-color:var(--cyan);box-shadow:0 0 10px #3fd8ff80}.chip{background:var(--plum2);border:2.5px solid var(--ink);color:var(--cream);box-shadow:0 2.5px 0 var(--ink);font-weight:600}.chip.on{background:var(--yellow);color:var(--ink)}.chip.on small{color:#16122aa6}.chip.gold.on{background:var(--yellow)}.chip:active{box-shadow:0 .5px 0 var(--ink);transform:translateY(2px)}.filter-row select,.gf-area select{background:var(--ink);border:2.5px solid var(--plum3);color:var(--cream);border-radius:999px}.ios-switch.on .sw-track{background:var(--green);box-shadow:0 0 10px #4ee08a80}.sw-track{border:2.5px solid var(--ink);background:var(--plum3)}.sw-thumb{border:2.5px solid var(--ink);width:26px;height:26px;top:0;left:0}.ios-switch.on .sw-thumb{transform:translate(20px)}.row-num,.hopnum{background:var(--pink);border:2.5px solid var(--ink);color:#fff;font-family:var(--display);font-weight:400}.award-pill{background:var(--yellow);color:var(--ink);border:2px solid var(--ink)}.award-pill.world{background:var(--cyan);color:var(--ink)}.trend-pill{background:var(--orange);color:var(--ink);border:2px solid var(--ink)}.cat-badge{border:1.5px solid color-mix(in srgb, var(--c) 70%, transparent)}.toast{background:var(--yellow);color:var(--ink);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink), 0 0 18px #ffd23f99;-webkit-backdrop-filter:none;backdrop-filter:none;font-weight:600}.notice{color:var(--cream);background:#3fd8ff24;border:2px solid #3fd8ff66}.photo{background:var(--ink);border-bottom:4px solid var(--ink)}.ph-placeholder{background:radial-gradient(circle at 50% 30%, #ff4f9a59, transparent 60%), linear-gradient(var(--navy), var(--night))}.ph-sign{font-family:var(--display);color:var(--yellow);-webkit-text-stroke:1.5px var(--ink);paint-order:stroke fill;text-shadow:0 3px 0 var(--ink);animation:none}.ph-dog{height:92px}.bar-name{font-family:var(--display);letter-spacing:.4px;color:var(--cream);font-weight:400}.back-btn{background:var(--cream);color:var(--ink);border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none}.hours tr.today td:first-child,.award-list li.y2026 .yr,.award-list li.y2026 .rk{color:var(--yellow)}.ncluster{background:radial-gradient(circle at 35% 30%, #fff1a8, var(--yellow) 60%, #e0a800);color:var(--ink);border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);font-family:var(--display);-webkit-backdrop-filter:none;backdrop-filter:none;font-weight:400}.ncluster.c-m{border-color:var(--ink);background:radial-gradient(circle at 35% 30%, #9cf0ff, var(--cyan) 60%, #19a9d6)}.ncluster.c-l,.ncluster.c-xl{border-color:var(--ink);background:radial-gradient(circle at 35% 30%, #ff9dc8, var(--pink) 60%, #d8327a);color:#fff}.leaflet-marker-pane .hop-icon .hopnum{border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink), 0 0 10px #ff4f9acc}.leaflet-marker-pane .hop-icon.preview .hopnum,.hop-icon.preview .hopnum{background:var(--cyan);color:var(--ink)}.empty{color:var(--muted)}.empty .dachshund,.empty-dog{width:auto;max-width:100%;height:70px;margin:0 auto 8px;display:block}.hop-empty svg{height:70px}.route-walker{pointer-events:none}.route-walker .rw{filter:drop-shadow(0 2px #16122a99);transition:transform .2s;overflow:visible}.route-walker.flip .rw{transform:scaleX(-1)}.rw-legs path{transform-box:fill-box;transform-origin:50% 0;animation:.28s ease-in-out infinite alternate legA}.rw-legs .l2,.rw-legs .l3{animation-name:legB}.rw-tail{transform-box:fill-box;transform-origin:100% 100%;animation:.25s ease-in-out infinite alternate wag}.ptr{opacity:0;height:54px;transform:translateY(calc(var(--pull,0) * 8px));pointer-events:none;z-index:3;flex-direction:column;justify-content:flex-end;align-items:center;gap:2px;transition:opacity .2s;display:flex;position:absolute;top:-58px;left:0;right:0}.ptr.show{opacity:1}.ptr .dachshund{width:auto;height:30px}.ptr span{font:400 12px/1 var(--display);letter-spacing:.5px;color:var(--yellow);-webkit-text-stroke:.6px var(--ink);text-shadow:0 2px 0 var(--ink)}.ptr.ready span{color:var(--green)}.ptr.ready .dachshund{animation:.4s ease-in-out infinite bob}.section-title{font:400 18px/1.2 var(--display);letter-spacing:.4px;color:var(--cream);text-shadow:0 2px 0 var(--ink);align-items:center;gap:8px;margin:14px 0 8px;display:flex}.coin{background:radial-gradient(circle at 35% 30%, #fff1a8, var(--yellow) 60%, #e0a800);border:2.5px solid var(--ink);border-radius:50%;width:20px;height:20px;animation:2.4s linear infinite coinspin;position:relative}.coin:after{content:"";background:#b07d00;border-radius:2px;width:2.5px;margin-left:-1.2px;position:absolute;top:3px;bottom:3px;left:50%}@keyframes coinspin{0%,to{transform:scaleX(1)}50%{transform:scaleX(.15)}}.theme-list{flex-direction:column;gap:10px;display:flex}.theme-card{border:3px solid var(--ink);background:var(--plum2);box-shadow:0 4px 0 var(--ink);border-radius:18px;overflow:hidden}.theme-card.open{box-shadow:0 4px 0 var(--ink), 0 0 16px color-mix(in srgb, var(--tc) 55%, transparent)}.theme-head{background:linear-gradient(90deg, color-mix(in srgb, var(--tc) 30%, transparent), transparent 70%);cursor:pointer;text-align:left;border:none;align-items:center;gap:10px;width:100%;padding:9px 10px;display:flex}.theme-emoji{background:var(--tc);border:2.5px solid var(--ink);width:40px;height:40px;box-shadow:0 3px 0 var(--ink);border-radius:12px;flex:none;place-items:center;font-size:22px;display:grid}.theme-txt{flex-direction:column;flex:1;min-width:0;display:flex}.theme-txt b{font:400 17px/1.15 var(--display);letter-spacing:.3px;color:var(--cream)}.theme-txt small{color:var(--muted);margin-top:2px;font-size:12.5px}.theme-go{font:400 12px/1 var(--display);letter-spacing:.6px;background:var(--ink);color:var(--tc);border-radius:999px;flex:none;padding:7px 10px}.theme-body{padding:4px 12px 14px;animation:.25s ease-out unfold}.theme-body p{margin:6px 0;font-size:14px;line-height:1.45}.theme-rule{color:var(--muted);font-size:12.5px!important}.theme-stops{margin:8px 0 12px;padding:0;list-style:none}.theme-stops li{flex-direction:column;display:flex}.theme-stops button{text-align:left;width:100%;color:var(--cream);cursor:pointer;background:0 0;border:none;align-items:baseline;gap:8px;padding:6px 4px;font-size:15px;font-weight:600;display:flex}.theme-stops button small{color:var(--muted);font-weight:400}.theme-stops i{background:var(--tc);width:24px;height:24px;color:var(--ink);border:2px solid var(--ink);font-style:normal;font:400 13px/1 var(--display);border-radius:50%;flex:none;place-items:center;display:grid}.theme-leg{color:var(--muted);border-left:2.5px dotted var(--tc);margin-left:15px;padding-left:15px;font-size:11.5px;line-height:18px}.load-theme{width:100%}@keyframes unfold{0%{opacity:0;transform:translateY(-6px)}}.gacha-hint{color:var(--muted);min-height:2.6em;margin:-4px 0 8px;font-size:14px}.gacha-stage{--gm-w:min(270px, 74vw);padding:124px 0 6px;padding-top:calc(var(--gm-w) * .56 * 1.4 - var(--gm-w) * 1.333 * .026 + 8px);justify-content:center;display:flex;position:relative}@media (min-width:768px){.gacha-stage{--gm-w:clamp(190px, calc((100vh - 300px) / 2.12), 270px)}}.gacha-machine{width:var(--gm-w,min(270px, 74vw));aspect-ratio:300/400;position:relative}.gm-svg{filter:drop-shadow(0 6px #16122a8c);width:100%;height:100%;display:block;overflow:visible}.gm-marquee{font:400 25px var(--display);letter-spacing:1px;fill:var(--yellow);stroke:var(--pink);stroke-width:1px;paint-order:stroke;animation:1.2s steps(2,end) infinite marq}@keyframes marq{50%{fill:var(--cyan)}}.gm-coin{font:400 16px var(--display);fill:var(--ink)}.gm-label{font:400 11px var(--display);letter-spacing:1px;fill:var(--yellow)}.gm-label.ink{fill:var(--ink);letter-spacing:.5px;font-size:8.5px}.gm-dog{aspect-ratio:160/224;z-index:2;pointer-events:none;transform-origin:50% 100%;width:56%;position:absolute;top:2.6%;left:50%;transform:translate(-50%,-100%)}.gm-dog .topper,.gm-dog .liberty{filter:drop-shadow(0 3px #16122a73);width:100%;height:100%;display:block;overflow:visible}.liberty .ld-flame{transform-box:fill-box;transform-origin:50% 100%;animation:.5s ease-in-out infinite alternate flame}@keyframes flame{0%{transform:scale(1)rotate(-3deg)}to{transform:scale(.92,1.1)rotate(3deg)}}.liberty .ld-flame path:first-child{filter:drop-shadow(0 0 4px #ffd23fe6)}.phase-turning .gm-dog,.phase-shaking .gm-dog{animation:.26s ease-in-out infinite alternate libWobble}@keyframes libWobble{0%{transform:translate(-50%,-100%)rotate(-4deg)}to{transform:translate(-50%,-102%)rotate(4deg)}}.phase-drop .liberty .ld-torch{transform-box:view-box;transform-origin:98px 108px;animation:.3s ease-in-out 3 alternate cheer}@keyframes cheer{to{transform:rotate(8deg)}}.gm-knob{aspect-ratio:1;cursor:grab;touch-action:none;z-index:3;background:0 0;border:none;border-radius:50%;width:18.667%;padding:0;transition:transform .6s cubic-bezier(.3,1.2,.5,1);position:absolute;top:79.25%;left:61.333%}.gm-knob svg{width:100%;height:100%;display:block;overflow:visible}.gm-knob:active{cursor:grabbing;transition:none}.gm-knob:disabled{cursor:default}.gm-knob:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}.gm-knob:before{content:"";box-shadow:0 0 12px 4px var(--yellow);opacity:0;pointer-events:none;z-index:-1;border-radius:50%;position:absolute;top:-8%;bottom:-8%;left:-8%;right:-8%}.phase-idle .gm-knob:not(:disabled):before{animation:2.2s ease-in-out infinite knobHint}@keyframes knobHint{0%,70%,to{opacity:0}80%{opacity:.85}}.phase-turning .gm-knob{transition:transform var(--turn,.9s) cubic-bezier(.2, 1.35, .45, 1)}.phase-turning .gacha-machine{animation:.11s linear infinite rattle}@keyframes rattle{0%,to{transform:translate(0)}50%{transform:translate(1px,-1px)rotate(.4deg)}}.phase-shaking .gacha-machine{animation:.13s linear infinite shake}@keyframes shake{0%{transform:translate(0)rotate(0)}25%{transform:translate(-4px,1px)rotate(-2deg)}50%{transform:translate(3px,-1px)rotate(1.5deg)}75%{transform:translate(-2px,2px)rotate(-1deg)}to{transform:translate(0)rotate(0)}}.pile-cap{transform-box:fill-box}.gm-flap{transform-box:fill-box;transform-origin:50% 0;transition:transform .25s}.phase-drop .gm-flap{animation:flap var(--drop,1.3s) ease-out forwards}@keyframes flap{0%{transform:scaleY(1)}12%,60%{transform:scaleY(.12)}75%{transform:scaleY(1.06)}to{transform:scaleY(1)}}.gm-capsule{z-index:4;pointer-events:none;position:absolute;top:82%;left:33.3%;transform:translate(-50%,-50%)}.gm-capsule.drop{animation:capDrop var(--drop,1.3s) linear forwards}.gm-capsule.drop .gm-cap-spin{animation:capSpin var(--drop,1.3s) linear forwards}.gm-cap-spin{transform-origin:50%}@keyframes capDrop{0%{opacity:0;animation-timing-function:cubic-bezier(.5,0,1,.6);transform:translate(-50%,-190%)scale(.55)}8%{opacity:1}26%{animation-timing-function:cubic-bezier(0,.5,.5,1);transform:translate(-50%,-30%)scaleY(.82)}38%{animation-timing-function:cubic-bezier(.5,0,1,.5);transform:translate(-50%,-85%)scale(.96,1.05)}48%{animation-timing-function:cubic-bezier(0,.5,.5,1);transform:translate(-50%,-30%)scale(1.04,.9)}55%{animation-timing-function:cubic-bezier(.5,0,1,.5);transform:translate(-50%,-52%)scale(1)}60%{animation-timing-function:cubic-bezier(.25,.6,.4,1);transform:translate(-50%,-30%)scale(1)}88%{transform:translate(-145%,40%)scale(1.2)}94%{transform:translate(-138%,38%)scale(1.2)}to{transform:translate(-142%,40%)scale(1.2)}}@keyframes capSpin{0%{transform:rotate(0)}26%{transform:rotate(160deg)}48%{transform:rotate(250deg)}60%{transform:rotate(300deg)}88%{transform:rotate(-260deg)}94%{transform:rotate(-232deg)}to{transform:rotate(-246deg)}}.gm-capsule.open{animation:capRise var(--open,.8s) ease-out forwards;top:52%;left:50%}@keyframes capRise{0%{transform:translate(-50%,-50%)translate(-70px,150px)scale(.45)rotate(-246deg)}45%{transform:translate(-50%,-50%)scale(1.12)rotate(14deg)}70%{transform:translate(-50%,-50%)scale(.96)rotate(-6deg)}to{transform:translate(-50%,-50%)scale(1)rotate(0)}}.capsule-svg{filter:drop-shadow(0 3px #16122a99);display:block;overflow:visible}.capsule-svg .cap-top,.capsule-svg .cap-bottom{transform-box:fill-box;transition:transform .45s cubic-bezier(.3,1.4,.5,1) .25s}.capsule-svg.open .cap-top{transform-origin:0 100%;transform:translate(-6px,-12px)rotate(-38deg)}.capsule-svg.open .cap-bottom{transform-origin:100% 0;transform:translate(5px,7px)rotate(16deg)}.gm-burst{z-index:3;pointer-events:none;width:0;height:0;position:absolute;top:52%;left:50%}.gm-burst i{background:var(--yellow);border:2px solid var(--ink);width:10px;height:10px;transform:rotate(var(--a)) translateX(0);opacity:0;border-radius:50%;animation:.7s ease-out .3s forwards burst;position:absolute;top:-5px;left:-5px}.gm-burst i:nth-child(3n){background:var(--pink)}.gm-burst i:nth-child(3n+1){background:var(--cyan)}@keyframes burst{0%{opacity:1;transform:rotate(var(--a)) translateX(0) scale(1)}to{opacity:0;transform:rotate(var(--a)) translateX(110px) scale(.4)}}.gacha-note{z-index:6;background:radial-gradient(circle,#1a10468c,#1a1046d9 70%);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:8px;animation:.2s fadeIn;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}@keyframes fadeIn{0%{opacity:0}}.note-paper{text-align:center;color:#2a2238;transform-origin:50% 0;border:3px solid var(--ink);width:min(300px,86vw);box-shadow:0 6px 0 var(--ink), 0 0 30px #ffd23f80;background:linear-gradient(#0000 0 29px,#3f78d82e 29px 30px) 0 8px/100% 30px,#fffaf0;border-radius:6px;padding:20px 20px 18px;animation:.9s cubic-bezier(.3,1.2,.5,1) forwards noteUnfold;position:relative;rotate:-2deg}@keyframes noteUnfold{0%{opacity:0;transform:scale(.25)scaleY(.08)rotate(-12deg)}30%{opacity:1;transform:scale(.6)scaleY(.08)rotate(-6deg)}65%{transform:scale(.95)scaleY(.55)}to{transform:scale(1)scaleY(1)}}.note-fold{background:#16122a1f;height:2px;position:absolute;left:0;right:0}.note-fold.f1{top:33%}.note-fold.f2{top:66%}.note-hand{font:700 22px/1.1 var(--hand);color:#6b5a86}.note-name{font:700 clamp(34px, 10vw, 46px)/1.02 var(--hand);color:#d1206e;overflow-wrap:anywhere;margin:6px 0 2px;animation:1s ease-out .55s both writeIn}.note-zh{font:700 26px/1.2 var(--hand-zh);color:#3a2d8f;animation:.8s ease-out .9s both writeIn}@keyframes writeIn{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.note-meta{font:600 13px/1.3 var(--round);color:#4b4060;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin-top:8px;display:flex}.note-meta i{border:1.5px solid var(--ink);border-radius:50%;width:10px;height:10px}.note-paw{opacity:.5;font-size:18px;position:absolute;bottom:6px;right:10px;rotate:18deg}.note-actions{flex-wrap:wrap;justify-content:center;gap:10px;animation:.3s .8s both fadeIn;display:flex}.note-actions .arcade-btn{padding:9px 14px;font-size:15px}.gacha-filters{background:var(--plum2);border:3px solid var(--ink);box-shadow:var(--pop);border-radius:18px;flex-direction:column;gap:10px;margin-top:14px;padding:12px;display:flex}.gf-count{color:var(--muted);font-size:14px}.gf-count b{font:400 22px var(--display);color:var(--yellow);text-shadow:0 2px 0 var(--ink);margin-right:4px}.gf-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.gf-area{align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.gf-area select{height:34px;padding:0 10px;font-size:14px}.dachshund.eating .dh-head{animation:.36s ease-in-out infinite alternate eat}@keyframes eat{0%{transform:rotate(4deg)}to{transform:rotate(16deg)translateY(4px)}}.dachshund.sleepy .dh-tail{animation-duration:1.4s}.empty-dog{transform-origin:50% 100%;animation:2.6s ease-in-out infinite breathe}@keyframes breathe{50%{transform:scaleY(1.04)}}.confetti{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.confetti svg{animation:1.8s ease-in-out infinite twinkle;position:absolute;overflow:visible}.confetti svg:nth-child(3n){animation-delay:.5s}.confetti svg:nth-child(3n+1){animation-delay:1s}.curtain,.stage-curtain{background:radial-gradient(circle at 25% 30%, #ff4f9a73, transparent 32%), radial-gradient(circle at 75% 70%, #3fd8ff59, transparent 32%), repeating-linear-gradient(135deg, var(--navy) 0 46px, var(--plum) 46px 92px);box-shadow:none}.curtain{border-right:10px solid var(--ink);box-shadow:inset -10px 0 0 var(--yellow), inset -20px 0 0 var(--ink)}.stage-curtain:before,.stage-curtain:after{background:var(--yellow);width:12px;box-shadow:0 0 0 4px var(--ink)}.curtain-text{font-family:var(--display);letter-spacing:3px;word-spacing:10px;color:var(--yellow);-webkit-text-stroke:2px var(--ink);paint-order:stroke fill;text-shadow:0 5px 0 var(--ink), 4px 6px 0 var(--pink);opacity:1}.curtain-text.two{color:var(--cyan);text-shadow:0 4px 0 var(--ink);opacity:1}.curtain-text.neon-pink,.curtain-text.neon-cyan{text-shadow:0 5px 0 var(--ink), 4px 6px 0 var(--pink)}.walker-dog,.stage-dog .dachshund{filter:drop-shadow(0 0 14px #ffd23f73)}.sip-bubble{font-family:var(--hand);background:var(--cream);color:var(--ink);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink)}.note.n0,.note.n1,.note.n2,.note.n3,.note.n4,.note.n5{text-shadow:0 3px 0 var(--ink);-webkit-text-stroke:1.5px var(--ink)}.note.n0{color:var(--pink)}.note.n1{color:var(--cyan)}.note.n2{color:var(--yellow)}.note.n3{color:var(--green)}.note.n4{color:var(--orange)}.note.n5{color:var(--cream)}.intro{z-index:3000;background:var(--night);cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .38s,transform .38s;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.intro.leaving{opacity:0;transform:scale(1.06)}.intro-bg{width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.intro-logo{left:0;right:0;top:max(7%, calc(env(safe-area-inset-top) + 20px));z-index:3;flex-direction:column;align-items:center;gap:10px;animation:.7s cubic-bezier(.3,1.5,.5,1) both logoDrop;display:flex;position:absolute}@keyframes logoDrop{0%{transform:translateY(-140%)rotate(-6deg)}}.intro-sub{font:600 14px/1.2 var(--round);color:var(--cream);background:var(--ink);border:2px solid var(--cyan);border-radius:999px;padding:5px 14px;box-shadow:0 0 12px #3fd8ff8c}.intro-bottom{left:0;right:0;bottom:max(4%, calc(env(safe-area-inset-bottom) + 14px));z-index:3;justify-content:center;display:flex;position:absolute}.insert-coin{font:400 clamp(17px, 4.6vw, 26px)/1 var(--display);letter-spacing:1.5px;color:var(--yellow);-webkit-text-stroke:1.6px var(--ink);paint-order:stroke fill;text-shadow:0 3px 0 var(--ink), 0 0 14px #ffd23fcc;text-align:center;background:#16122ab3;border-radius:999px;margin-top:10px;padding:9px 18px;animation:1s steps(2,jump-none) infinite blink}@keyframes blink{50%{opacity:.5}}.intro-skip{z-index:4;right:max(12px, env(safe-area-inset-right));top:max(12px, env(safe-area-inset-top));font:400 14px/1 var(--display);letter-spacing:1px;background:var(--cream);color:var(--ink);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);cursor:pointer;border-radius:999px;padding:9px 14px;position:absolute}.intro-skip:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.intro .confetti{z-index:2}.intro-walker{z-index:2;will-change:transform;animation-timing-function:linear;animation-fill-mode:both;position:absolute;left:0}.intro-walker .dachshund{width:auto;height:100%;display:block}.harbour-walker{animation-name:introWalk}@keyframes introWalk{0%{transform:translateX(var(--from))}to{transform:translateX(var(--to))}}.dimsum-walker{animation-name:dimsumWalk}@keyframes dimsumWalk{0%{transform:translateX(var(--from))}28%{transform:translateX(var(--mid))}86%{transform:translateX(var(--mid));animation-timing-function:ease-in}to{transform:translateX(var(--to))}}.lkf-walker{animation-name:lkfWalk}@keyframes lkfWalk{0%{transform:translate(var(--from), var(--y0)) rotate(-8.9deg)}to{transform:translate(var(--to), var(--y1)) rotate(-8.9deg)}}.intro-tag{font:400 22px var(--display);fill:var(--yellow);stroke:var(--ink);stroke-width:5px;paint-order:stroke;letter-spacing:1px}.intro-tag.small{stroke-width:3px;fill:var(--cream);font-size:12px}.intro-zh{font:700 34px "LXGW WenKai TC", var(--round);fill:var(--yellow);stroke:var(--ink);stroke-width:4px;paint-order:stroke}.intro-zh.small{fill:var(--cream);font-size:24px}.twinkle circle{transform-box:fill-box;transform-origin:50%;animation:1.6s ease-in-out infinite twinkle}.harbour-lights rect{transform-box:fill-box;transform-origin:50% 0;animation:1.2s ease-in-out infinite alternate shimmer}@keyframes shimmer{0%{opacity:.25;transform:scaleY(.7)}to{opacity:.7;transform:scaleY(1.05)}}.boat.junk{animation:3.4s linear both junkSail}@keyframes junkSail{0%{transform:translate(120px,450px)}to{transform:translate(560px,450px)}}.boat.ferry{animation:3.4s linear both ferrySail}@keyframes ferrySail{0%{transform:translate(760px,488px)}to{transform:translate(300px,488px)}}.boat{animation-timing-function:linear}.dimsum-item{transform-box:fill-box;transform-origin:50% 100%}.dimsum-item.ds0{animation:.35s ease-in 1.5s both eaten}.dimsum-item.ds1{animation:.35s ease-in 2.05s both eaten}.dimsum-item.ds2{animation:.35s ease-in 2.6s both eaten}@keyframes eaten{0%{scale:1}40%{scale:1.15 .85}to{opacity:0;scale:0}}.nom{font:400 34px var(--display);fill:var(--pink);stroke:var(--ink);stroke-width:5px;paint-order:stroke;opacity:0}.nom.n0{animation:.7s 1.5s both nomPop}.nom.n1{animation:.7s 2.05s both nomPop}.nom.n2{font-family:"LXGW WenKai TC", var(--display);fill:var(--yellow);animation:.7s 2.6s both nomPop}@keyframes nomPop{0%{opacity:0;transform:translateY(20px)}30%{opacity:1}to{opacity:0;transform:translateY(-40px)}}.lantern{transform-box:fill-box;transform-origin:50% 0;animation:2s ease-in-out infinite alternate swing}@keyframes swing{0%{rotate:-5deg}to{rotate:5deg}}.steam path{animation:1.4s ease-in-out infinite steam}@keyframes steam{0%{opacity:0;transform:translateY(10px)}50%{opacity:.8}to{opacity:0;transform:translateY(-16px)}}.neon-txt{font:400 46px var(--display);letter-spacing:3px;fill:none;stroke-width:3px}.neon-txt.zh{font:700 46px "LXGW WenKai TC", var(--round)}.neon-txt.sm{font-size:30px}.neon-txt.pink{stroke:var(--pink);fill:#ffd0e6;filter:drop-shadow(0 0 6px var(--pink))}.neon-txt.cyan{stroke:var(--cyan);fill:#d6f7ff;filter:drop-shadow(0 0 6px var(--cyan))}.neon-txt.yellow{stroke:var(--yellow);fill:#fff3c4;filter:drop-shadow(0 0 6px var(--yellow))}.neon-txt.orange{stroke:var(--orange);fill:#ffe0c8;filter:drop-shadow(0 0 6px var(--orange))}.ns{filter:drop-shadow(0 0 8px #ffffff40)}.ns1 rect,.ns3 path,.ns5 rect{filter:drop-shadow(0 0 6px)}.ns2{animation:3.2s infinite flicker}.ns4{animation:4.4s .8s infinite flicker}.ns3{animation:5s 1.6s infinite flicker}.street-zh{font:700 22px "LXGW WenKai TC", var(--round);fill:var(--ink)}.street-en{font:600 13px var(--round);fill:var(--ink);letter-spacing:1px}.person{transform-box:fill-box;animation:.5s ease-in-out infinite alternate crowdBob}@keyframes crowdBob{to{transform:translateY(-6px)}}.pack-grid .dachshund{height:54px}.about-dog{width:auto;height:84px}@media (prefers-reduced-motion:reduce){.intro-walker,.boat,.gm-capsule,.gm-cap-spin,.gm-flap,.confetti svg{animation-duration:10ms!important}.gacha-machine,.gm-dog,.liberty .ld-flame,.liberty .ld-torch,.phase-idle .gm-knob:before{animation:none!important}.gm-knob{transition:none!important}}@media (max-width:899px){.leaflet-control-zoom{display:none}}.gacha-note{border-radius:22px}.empty-card{flex-direction:column;align-items:center;gap:4px;padding:18px 10px;display:flex}.empty-art{width:min(240px,70%);position:relative}.empty-art .dachshund{width:100%;height:auto}.empty-bubble{font:400 18px/1 var(--display);color:var(--ink);background:var(--cream);border:2.5px solid var(--ink);box-shadow:0 3px 0 var(--ink);border-radius:14px;padding:5px 9px;animation:1.6s ease-in-out infinite bob;position:absolute;top:-14px;right:-6px}.mood-sleep .empty-bubble{font-family:var(--hand);font-size:20px}.dachshund.sniffing .dh-head{animation:.5s ease-in-out infinite alternate sniff}@keyframes sniff{0%{transform:rotate(6deg)}to{transform:rotate(18deg)translateY(3px)}}.empty-card p{max-width:300px;margin:4px 0 0}.dicon .mk{transform-origin:50% 60%;width:36px;height:36px;box-shadow:none;background:0 0;border:0;border-radius:0;place-items:center;transition:transform .18s cubic-bezier(.3,1.4,.5,1);display:grid;position:relative}.dicon .mk svg.mk-art{width:34px;height:34px;filter:drop-shadow(1.3px 0 0 var(--ink)) drop-shadow(-1.3px 0 0 var(--ink)) drop-shadow(0 1.3px 0 var(--ink)) drop-shadow(0 -1.3px 0 var(--ink)) drop-shadow(0 0 1px #fff3d68c) drop-shadow(0 3px 3px #000000bf);display:block;overflow:visible}.dicon .mk.award svg.mk-art{filter:drop-shadow(1.3px 0 0 var(--ink)) drop-shadow(-1.3px 0 0 var(--ink)) drop-shadow(0 1.3px 0 var(--ink)) drop-shadow(0 -1.3px 0 var(--ink)) drop-shadow(0 0 4px #ffd23fb3) drop-shadow(0 3px 3px #000000bf)}.dicon:hover .mk{transform:scale(1.12)}.dicon .mk.sel{box-shadow:none;transform:scale(1.3)}.dicon .mk.sel svg.mk-art{filter:drop-shadow(1.3px 0 0 var(--ink)) drop-shadow(-1.3px 0 0 var(--ink)) drop-shadow(0 1.3px 0 var(--ink)) drop-shadow(0 -1.3px 0 var(--ink)) drop-shadow(0 0 5px var(--c)) drop-shadow(0 0 10px var(--c))}.dicon .mk .mk-award{background:0 0;border:0;border-radius:0;width:15px;min-width:0;height:15px;padding:0;position:absolute;top:-3px;right:-4px;overflow:visible}.dicon .mk .mk-vis{background:0 0;border:0;border-radius:0;width:13px;height:13px;display:block;position:absolute;top:-2px;left:-3px}.ncluster.ccoin{cursor:pointer;color:var(--ink);font:400 15px/1 var(--display);letter-spacing:.3px;background:radial-gradient(circle at 34% 28%, #fff6c2 0 14%, var(--yellow) 42%, #e3a600 100%);border:3px solid var(--ink);box-shadow:inset 0 0 0 2.5px #fff1a8, inset 0 0 0 4.5px #d99a00, 0 3px 0 var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:50%;place-items:center;display:grid;position:relative}.ncluster.ccoin span{-webkit-text-stroke:0;text-shadow:0 1px #fff6c2}.ncluster.ccoin.c-m{background:radial-gradient(circle at 34% 28%, #e6fcff 0 14%, var(--cyan) 42%, #129fcc 100%);box-shadow:inset 0 0 0 2.5px #bff6ff, inset 0 0 0 4.5px #0f8fbb, 0 3px 0 var(--ink);font-size:17px}.ncluster.ccoin.c-l{color:#fff;background:radial-gradient(circle at 34% 28%, #ffd6ea 0 14%, var(--pink) 42%, #c92a6f 100%);box-shadow:inset 0 0 0 2.5px #ffb3d6, inset 0 0 0 4.5px #b0225f, 0 3px 0 var(--ink);font-size:19px}.ncluster.ccoin.c-l span{text-shadow:0 1.5px 0 var(--ink)}.coin-star{background:var(--yellow);width:16px;height:16px;color:var(--ink);border:1.8px solid var(--ink);font:400 9px/1 var(--display);border-radius:50%;place-items:center;display:grid;position:absolute;top:-6px;right:-6px}.dcluster:hover .ncluster.ccoin{transform:scale(1.08)}.leaflet-mklabels-pane{pointer-events:none;transition:opacity .18s}.leaflet-mklabels-pane.hide{opacity:0;transition:none}.lbl-root{pointer-events:none;position:absolute;top:0;left:0}.lbl-root .lbl{pointer-events:auto;cursor:pointer;white-space:nowrap;max-width:none;font:600 11px/14px var(--round);color:var(--cream);border:1.5px solid var(--c,var(--pink));box-shadow:0 2px 0 var(--ink);background:#16122af0;border-radius:8px;align-items:center;gap:4px;margin:0;padding:1px 6px;display:inline-flex;position:absolute;top:0;left:0}.lbl-root .lbl.off{display:none}.lbl-root .lbl.award{border-color:var(--yellow)}.lbl-root .lbl i{font:400 10px/13px var(--display);color:var(--ink);background:var(--yellow);border-radius:5px;margin-left:-3px;padding:0 3.5px;font-style:normal}.lbl-root .lbl.sel{background:var(--c);color:var(--ink);z-index:2;font-weight:700}.leaflet-container:not(.show-labels) .lbl-root{display:none}button.neon-logo{-webkit-appearance:none;appearance:none;font:inherit;color:inherit;cursor:pointer;pointer-events:auto;text-align:left;overflow:visible}button.neon-logo:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}button.neon-logo:active{box-shadow:0 2px 0 var(--ink), 0 0 16px #ff4f9a8c;transform:translateY(2px)}.neon-logo .logo-dog{z-index:1;filter:none;margin:-7px -2px -6px -3px;animation:none;display:inline-flex;position:relative}.neon-logo.big .logo-dog{margin:-10px -2px -8px -4px}.sippy-dog{display:block;overflow:visible}.sippy-dog *{transform-box:fill-box}.sd-head{transform-origin:20% 85%}.sd-tail{transform-origin:100% 100%}.sd-all{transform-origin:50% 100%}.sd-ear{transform-origin:50% 10%}.sd-glass{transform-origin:50% 100%;opacity:0;transform:translateY(10px)scale(0)}.sd-liquid{transform-origin:50% 100%}.sd-heart,.sd-hic{transform-origin:50% 100%;opacity:0}.sd-bub{opacity:0}.sippy-dog:not(.sip-play) .sd-tail{animation:2.8s ease-in-out infinite sdWagIdle}.sippy-dog:not(.sip-play) .sd-ear{animation:2.8s ease-in-out infinite sdEarIdle}@keyframes sdWagIdle{0%,70%,to{transform:rotate(0)}78%{transform:rotate(-14deg)}86%{transform:rotate(10deg)}94%{transform:rotate(-6deg)}}@keyframes sdEarIdle{0%,70%,to{transform:rotate(0)}80%{transform:rotate(8deg)}90%{transform:rotate(-4deg)}}.sip-play .sd-glass{animation:2.6s cubic-bezier(.3,1.3,.5,1) both sdGlass}.sip-play .sd-head{animation:2.6s ease-in-out both sdHead}.sip-play .sd-ear{animation:2.6s ease-in-out both sdEar}.sip-play .sd-liquid{animation:2.6s ease-in-out both sdLiquid}.sip-play .sd-bub.b1{animation:2.6s linear both sdBub}.sip-play .sd-bub.b2{animation:2.6s linear .18s both sdBub}.sip-play .sd-blush{transform-origin:50%;animation:2.6s ease-in-out both sdBlush}.sip-play .sd-tail{animation:2.6s ease-in-out both sdWag}.sip-play .sd-all{animation:2.6s ease-in-out both sdWiggle}.sip-play .sd-heart{animation:2.6s ease-out both sdHeart}.sip-play .sd-hic{animation:2.6s ease-out both sdHic}@keyframes sdGlass{0%{opacity:0;transform:translateY(10px)scale(0)}10%{opacity:1;transform:translateY(-2px)scale(1.12)}15%,70%{opacity:1;transform:none}80%,to{opacity:0;transform:translateY(8px)scale(0)}}@keyframes sdHead{0%,14%{transform:none}22%,64%{transform:rotate(9deg)translate(1px,1px)}28%,40%,52%{transform:rotate(10.5deg)translate(1px,1.6px)}34%,46%,58%{transform:rotate(8.5deg)translate(1px,.6px)}72%{transform:rotate(-7deg)}80%,to{transform:none}}@keyframes sdEar{0%,14%{transform:none}24%,62%{transform:rotate(-10deg)}74%{transform:rotate(14deg)}84%{transform:rotate(-6deg)}92%,to{transform:none}}@keyframes sdLiquid{0%,22%{transform:scaleY(1)}64%,to{transform:scaleY(.12)}}@keyframes sdBub{0%,24%{opacity:0;transform:none}30%{opacity:1}40%{opacity:0;transform:translateY(-5px)}41%{transform:none}46%{opacity:1}56%,to{opacity:0;transform:translateY(-5px)}}@keyframes sdBlush{0%,22%{transform:scale(1)}40%,62%{transform:scale(1.45)}74%,to{transform:scale(1)}}@keyframes sdWag{0%,66%{transform:none}70%{transform:rotate(-22deg)}74%{transform:rotate(16deg)}78%{transform:rotate(-20deg)}82%{transform:rotate(14deg)}86%{transform:rotate(-12deg)}92%,to{transform:none}}@keyframes sdWiggle{0%,68%{transform:none}72%{transform:rotate(-3deg)translateY(-2px)}76%{transform:rotate(3deg)}80%{transform:rotate(-2.5deg)translateY(-1px)}84%{transform:rotate(2deg)}90%,to{transform:none}}@keyframes sdHeart{0%,70%{opacity:0;transform:translateY(4px)scale(0)}77%{opacity:1;transform:translateY(-3px)scale(1.25)}82%{opacity:1;transform:translateY(-4px)scale(1)}to{opacity:0;transform:translateY(-16px)scale(.9)}}@keyframes sdHic{0%,80%{opacity:0;transform:scale(0)rotate(-8deg)}85%{opacity:1;transform:scale(1.15)rotate(4deg)}89%,96%{opacity:1;transform:scale(1)rotate(-3deg)}to{opacity:0;transform:translateY(-4px)scale(.95)}}@media (prefers-reduced-motion:reduce){.sippy-dog:not(.sip-play) .sd-tail,.sippy-dog:not(.sip-play) .sd-ear,.sip-play .sd-head,.sip-play .sd-ear,.sip-play .sd-tail,.sip-play .sd-all,.sip-play .sd-blush,.sip-play .sd-bub.b1,.sip-play .sd-bub.b2{animation:none}.sip-play .sd-glass{animation:2.2s linear both sdGlassR}.sip-play .sd-liquid{animation:2.2s step-end both sdLiquidR}.sip-play .sd-heart{animation:2.2s linear both sdHeartR}.sip-play .sd-hic{animation:2.2s linear both sdHicR}@keyframes sdGlassR{0%{opacity:0;transform:none}8%,70%{opacity:1;transform:none}80%,to{opacity:0;transform:none}}@keyframes sdLiquidR{0%{transform:scaleY(1)}40%,to{transform:scaleY(.15)}}@keyframes sdHeartR{0%,60%{opacity:0;transform:none}66%,92%{opacity:1;transform:none}to{opacity:0;transform:none}}@keyframes sdHicR{0%,72%{opacity:0;transform:none}78%,94%{opacity:1;transform:none}to{opacity:0;transform:none}}}.empty-art{padding-top:50px}.empty-bubble{animation:1.8s ease-in-out infinite bubbleBob;top:0;right:2%}.empty-dots{pointer-events:none;height:50px;position:absolute;top:0;left:0;right:0}.empty-dots i{background:var(--cream);border:2px solid var(--ink);border-radius:50%;position:absolute}.empty-dots i:first-child{width:9px;height:9px;top:33px;right:19%}.empty-dots i:nth-child(2){width:6px;height:6px;top:42px;right:24%}@keyframes bubbleBob{50%{transform:translateY(-3px)}}.sip-bubble{top:-44%;right:-8%}.sip-bubble:before,.sip-bubble:after{content:"";background:var(--cream);border:2.5px solid var(--ink);border-radius:50%;position:absolute}.sip-bubble:before{width:12px;height:12px;bottom:-20px;left:18%}.sip-bubble:after{width:7px;height:7px;bottom:-32px;left:10%}@media (prefers-reduced-motion:reduce){.empty-bubble,.logo-star{animation:none}}.panel:before{display:none;content:none!important}.sheet-stripe{z-index:20;pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;contain:paint;background:linear-gradient(var(--ink), var(--ink)) 0 8px / 100% 3px no-repeat, linear-gradient(180deg, #ffffff59, transparent 60%) 0 0 / 100% 8px no-repeat, linear-gradient(90deg, var(--pink) 0 22px, var(--orange) 22px 44px, var(--yellow) 44px 66px, var(--cyan) 66px 88px) 0 0 / 88px 8px repeat-x;border-radius:22px 22px 0 0;flex:none;height:22px;margin:0 0 -22px;animation:2.2s linear infinite stripeMarch;position:relative;overflow:hidden;transform:translateZ(0)}@keyframes stripeMarch{0%{background-position:0 8px,0 0,0 0}to{background-position:0 8px,0 0,88px 0}}@media (min-width:900px){.sheet-stripe{border-radius:22px 22px 0 0}}@media (prefers-reduced-motion:reduce){.sheet-stripe{animation:none}}.new-badge{font:400 10.5px var(--display);letter-spacing:.5px;vertical-align:2px;color:var(--ink);background:var(--yellow);border:2px solid var(--ink);box-shadow:0 2px 0 var(--ink);border-radius:6px;margin-left:6px;padding:1px 6px 0;display:inline-block}.chip.tag-chip svg{color:var(--c)}.chip.tag-chip.on{background:var(--c);color:var(--ink)}.chip.tag-chip.on svg{color:var(--ink)}.price-chips{align-items:center;margin-top:6px}.chips-lbl{font:400 12px var(--display);letter-spacing:.5px;color:var(--muted);text-transform:uppercase;flex:none;padding:0 2px}.chip.price-chip b{font:400 14px var(--display);letter-spacing:1px;color:var(--green)}.chip.price-chip.on b{color:var(--ink)}.price-help{flex:none;position:relative}.price-help summary{cursor:pointer;width:24px;height:24px;font:400 13px var(--display);color:var(--ink);background:var(--cyan);border:2.5px solid var(--ink);border-radius:50%;place-items:center;list-style:none;display:grid}.price-help summary::-webkit-details-marker{display:none}.price-help p{z-index:30;background:var(--cream);width:min(280px,78vw);color:var(--ink);border:3px solid var(--ink);box-shadow:var(--pop);border-radius:12px;margin:0;padding:8px 10px;font-size:12.5px;line-height:1.4;position:absolute;top:30px;right:0}.price-chips .price-help p{position:fixed;top:auto;right:12px}.tag-badge{background:color-mix(in srgb, var(--c) 22%, transparent)}.price-pill{font:400 12.5px var(--display);letter-spacing:.5px;color:var(--green);background:#4ee08a24;border-radius:6px;align-items:baseline;gap:2px;padding:0 6px;display:inline-flex}.price-pill.est{background:0 0;border:1.5px dashed #4ee08a99}.price-pill i{font:italic 500 10px var(--round);color:var(--muted);letter-spacing:0}.price-line{flex-wrap:wrap;align-items:center;gap:6px 8px;margin-top:8px;font-size:13.5px;display:flex}.price-sign{font:400 19px var(--display);letter-spacing:1.5px;color:var(--green);-webkit-text-stroke:1px var(--ink);paint-order:stroke fill}.price-sign.est{text-underline-offset:4px;-webkit-text-decoration:underline dashed #4ee08a99;text-decoration:underline dashed #4ee08a99;text-decoration-thickness:1.5px}.price-txt{color:var(--cream)}.price-src{font-size:12px}.price-line .price-help p{left:auto;right:0}.card.recs{background:linear-gradient(160deg, color-mix(in srgb, var(--c,#ff4f9a) 26%, var(--plum2)), var(--plum2) 60%);border:3px solid var(--ink);box-shadow:var(--pop)}.card.recs h3{color:var(--yellow);font:400 16px var(--display);letter-spacing:.5px;text-transform:none}.card.recs h3 .zh{font-family:var(--round);color:var(--cream);margin-left:4px;font-weight:700}.rec-group h4{color:var(--muted);margin:8px 0 6px;font-size:13px;font-weight:600}.rec-list{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rec-list li a{background:var(--cream);color:var(--ink);border:2.5px solid var(--ink);box-shadow:0 2.5px 0 var(--ink);border-radius:999px;padding:5px 11px;font-size:13.5px;font-weight:600;text-decoration:none;display:inline-block}.rec-list.food li a{background:#ffe1a8}.rec-src{margin-top:10px!important}.gm-dog .topper{overflow:visible}.topper .tp-bob{transform-box:view-box;transform-origin:80px 190px;animation:1.8s ease-in-out infinite alternate tpBob}@keyframes tpBob{0%{transform:translateY(0)}to{transform:translateY(-3px)scaleY(1.01)}}.topper .tp-tail{transform-box:view-box;transform-origin:104px 168px;animation:.42s ease-in-out infinite alternate tpWag}@keyframes tpWag{0%{transform:rotate(-12deg)}to{transform:rotate(14deg)}}.topper .tp-lid{transform-box:fill-box;transform-origin:50% 0;animation:4.2s infinite tpBlink;transform:scaleY(0)}@keyframes tpBlink{0%,90%,to{transform:scaleY(0)}93%,95%{transform:scaleY(1)}}.tp-liberty .ld-flame{animation:.5s ease-in-out infinite alternate flame,1.9s step-end infinite flick}@keyframes flick{0%,to{opacity:1}47%{opacity:.82}52%{opacity:1}78%{opacity:.9}}.tp-liberty .ld-spark{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out infinite spark;transform:scale(0)}.tp-liberty .ld-spark.k2{animation-delay:.8s}.tp-liberty .ld-spark.k3{animation-delay:1.6s}@keyframes spark{0%,60%,to{transform:scale(0)rotate(0)}75%{transform:scale(1.15)rotate(45deg)}88%{transform:scale(.6)rotate(80deg)}}.tp-liberty .ld-sip{transform-box:view-box;transform-origin:68px 108px;animation:7s ease-in-out infinite libSip}@keyframes libSip{0%,62%,to{transform:rotate(0)}70%,82%{transform:rotate(48deg)translate(-2px,-10px)}90%{transform:rotate(0)}}.tp-liberty .ld-sipfx{opacity:0;animation:7s ease-out infinite sipFx}@keyframes sipFx{0%,72%,to{opacity:0;transform:translateY(0)}76%{opacity:1}86%{opacity:0;transform:translateY(-8px)}}.tp-liberty .tp-lid{animation-duration:3.6s}.phase-turning .tp-liberty .ld-flame,.phase-shaking .tp-liberty .ld-flame{animation-duration:.12s}.phase-turning .tp-liberty .ld-spark,.phase-shaking .tp-liberty .ld-spark{animation-duration:.6s}.tp-windmill .wm-sails{transform-box:view-box;transform-origin:131px 92px;animation:6s linear infinite sails}@keyframes sails{to{transform:rotate(360deg)}}.tp-windmill .wm-tulips{transform-box:view-box;transform-origin:54px 134px;animation:1.6s ease-in-out infinite alternate sway}@keyframes sway{0%{transform:rotate(-5deg)}to{transform:rotate(6deg)}}.tp-windmill .wm-wave{transform-box:view-box;transform-origin:98px 108px;animation:1.1s ease-in-out infinite alternate wave}@keyframes wave{0%,40%{transform:rotate(0)}to{transform:rotate(-16deg)}}.tp-windmill .wm-clog-r{transform-box:fill-box;transform-origin:85% 100%;animation:2.4s ease-in-out infinite clog}@keyframes clog{0%,70%,to{transform:rotate(0)}78%{transform:rotate(-14deg)}86%{transform:rotate(0)}}.tp-windmill .wm-bed path{transform-box:fill-box;transform-origin:50% 100%}.phase-turning .tp-windmill .wm-sails,.phase-shaking .tp-windmill .wm-sails{animation-duration:.45s}.phase-turning .tp-windmill .wm-wave,.phase-shaking .tp-windmill .wm-wave{animation-duration:.2s}.phase-drop .tp-windmill .wm-tulips{animation:.15s ease-in-out 6 alternate sway}.tp-artist .ar-brush{transform-box:view-box;transform-origin:68px 108px;animation:1.2s ease-in-out infinite dab}@keyframes dab{0%,to{transform:rotate(0)}30%{transform:rotate(-7deg)translate(-1px,2px)}55%{transform:rotate(4deg)}75%{transform:rotate(-3deg)translateY(-2px)}}.tp-artist .ar-paint.p1{stroke-dasharray:1;stroke-dashoffset:1px;animation:4.8s ease-in-out infinite paint}@keyframes paint{0%{stroke-dashoffset:1px}55%,90%{stroke-dashoffset:0}to{stroke-dashoffset:0;opacity:0}}.tp-artist .ar-paint.p2{transform-box:fill-box;transform-origin:50%;animation:4.8s ease-in-out infinite dot}.tp-artist .ar-beret{transform-box:view-box;transform-origin:90px 64px;animation:2.6s ease-in-out infinite beret}@keyframes beret{0%,to{transform:rotate(0)}50%{transform:rotate(-5deg)}}.tp-artist .ar-palette{transform-box:view-box;transform-origin:98px 110px;animation:2.2s ease-in-out infinite alternate sway}.tp-artist .ar-splats circle{transform-box:fill-box;transform-origin:50%;transform:scale(0)}.phase-turning .tp-artist .ar-brush,.phase-shaking .tp-artist .ar-brush{animation-duration:.22s}.phase-turning .tp-artist .ar-splats circle,.phase-shaking .tp-artist .ar-splats circle,.phase-drop .tp-artist .ar-splats circle{animation:.5s ease-out infinite alternate splat}.tp-artist .ar-splats circle:nth-child(2){animation-delay:.12s}.tp-artist .ar-splats circle:nth-child(3){animation-delay:.25s}.tp-artist .ar-splats circle:nth-child(4){animation-delay:.37s}@keyframes splat{0%{transform:scale(0)}to{transform:scale(1.4)}}.gm-dog.topper-long{aspect-ratio:auto;transform-origin:50% 60%;width:140%;height:57.5%;top:-12.5%;left:-21.8%;transform:none}.gacha-stage.stage-long{padding-top:calc(var(--gm-w) * 1.333 * .06 + 12px)}.tp-long .tp-tail{transform-origin:-30px 146px;animation-duration:.38s}.tp-long .ln-head{transform-origin:318px 100px;animation:3.2s ease-in-out infinite lnHead}@keyframes lnHead{0%,to{transform:rotate(0)}35%{transform:rotate(-6deg)translateY(-3px)}70%{transform:rotate(3deg)}}.tp-long .ln-ear{transform-box:fill-box;transform-origin:55% 5%;animation:1.6s ease-in-out infinite alternate ear}.tp-long .ln-legs{transform-box:view-box}.tp-long .ln-front{transform-origin:298px 102px;animation:3.2s ease-in-out infinite lnPaw}.tp-long .ln-hind{transform-origin:-10px 140px;animation:3.2s ease-in-out infinite reverse lnPaw}@keyframes lnPaw{0%,to{transform:rotate(0)}40%{transform:rotate(-8deg)}70%{transform:rotate(5deg)}}.phase-turning .gm-dog.topper-long,.phase-shaking .gm-dog.topper-long{animation:.22s ease-in-out infinite alternate longWiggle}@keyframes longWiggle{0%{transform:translate(-2px)rotate(-1.2deg)}to{transform:translate(2px)translateY(-2px)rotate(1.2deg)}}.phase-turning .tp-long .ln-front,.phase-shaking .tp-long .ln-front{animation:.2s ease-in-out infinite alternate clutchF}.phase-turning .tp-long .ln-hind,.phase-shaking .tp-long .ln-hind{animation:.2s ease-in-out infinite alternate clutchH}@keyframes clutchF{0%{transform:rotate(14deg)}to{transform:rotate(24deg)}}@keyframes clutchH{0%{transform:rotate(-14deg)}to{transform:rotate(-24deg)}}.phase-turning .tp-long .tp-tail,.phase-shaking .tp-long .tp-tail{animation-duration:.12s}.phase-drop .tp-long .ln-head{animation:.3s ease-in-out 4 alternate lnCheer}@keyframes lnCheer{to{transform:rotate(-12deg)translateY(-6px)}}.surprise{z-index:4000;pointer-events:none;animation:2.6s ease-in-out forwards spFade;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}@keyframes spFade{0%{opacity:0}8%,85%{opacity:1}to{opacity:0}}.surprise .sp-art{filter:drop-shadow(0 6px #16122a73);display:block;position:absolute;overflow:visible}.sp-word{font:400 24px var(--display);fill:var(--yellow);color:var(--yellow);stroke:var(--ink);stroke-width:6px;paint-order:stroke fill;-webkit-text-stroke:3px var(--ink);letter-spacing:1px}.sp-hug-root{background:radial-gradient(circle at 50% 60%,#ff4f9a40,#0000 60%)}.sp-hug{width:min(78vw,340px);animation:2.6s cubic-bezier(.3,1.4,.5,1) both hugIn;bottom:8%;left:50%;translate:-50%}@keyframes hugIn{0%{transform:translateY(70%)scale(.6)}22%{transform:translateY(0)scale(1)}40%,60%{transform:scale(1.05,.96)}50%,70%{transform:scale(.97,1.04)}to{transform:scale(1)}}.sp-hug .sp-h{transform-box:fill-box;transform-origin:50%;opacity:0;animation:1.6s ease-in infinite heartUp}.sp-hug .sp-h.b{animation-delay:.5s}.sp-hug .sp-h.c{animation-delay:.9s}.sp-hug .sp-tail{transform-box:view-box;transform-origin:206px 262px;animation:.22s ease-in-out infinite alternate tpWag}.sp-hug .sp-head{transform-box:view-box;transform-origin:160px 180px;animation:.5s ease-in-out infinite alternate nuzzle}@keyframes nuzzle{0%{transform:rotate(-3deg)}to{transform:rotate(3deg)translateY(-2px)}}.sp-kiss-root{background:#1a10462e}.sp-kiss-wrap{place-items:center;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.sp-kiss{width:min(96vw,520px);animation:2.6s ease-in-out both kissIn;top:50%;left:50%;translate:-50% -50%}@keyframes kissIn{0%{opacity:0;transform:scale(.35)translateY(30%)}18%{opacity:1}34%{transform:scale(1.35)}42%,56%{transform:scale(1.5,1.38)}72%{opacity:1;transform:scale(.7)translateY(10%)}84%,to{opacity:0;transform:scale(.4)translateY(40%)}}.sp-kiss .sp-nose{transform-box:fill-box;transform-origin:50%;animation:2.6s ease-in-out both squish}@keyframes squish{0%,34%{transform:scale(1)}42%,56%{transform:scale(1.5,.7)}70%,to{transform:scale(1)}}.sp-kiss .sp-lips{transform-box:fill-box;transform-origin:50%;animation:2.6s ease-in-out both pucker}@keyframes pucker{0%,30%{transform:scale(.8)}42%,56%{transform:scale(1.6,1.2)}70%,to{transform:scale(1)}}.sp-smudge{z-index:2;opacity:0;width:min(58vw,260px);animation:2.6s ease-out both smudge;position:absolute;top:52%;left:50%;translate:-50% -50%}@keyframes smudge{0%,44%{opacity:0;transform:scale(.8)}58%{opacity:1;transform:scale(1)}88%{opacity:.9}to{opacity:0}}.sp-glare{background:linear-gradient(115deg,#0000 40%,#ffffff29 46%,#0000 52%);animation:2.6s ease-in-out both glare;position:absolute;top:-20%;bottom:-20%;left:-20%;right:-20%}@keyframes glare{0%{transform:translate(-30%)}to{transform:translate(30%)}}.sp-mwah{text-align:center;opacity:0;font-size:34px;animation:2.6s ease-out both mwah;position:absolute;top:18%;left:0;right:0}@keyframes mwah{0%,44%{opacity:0;transform:scale(.4)rotate(-8deg)}54%{opacity:1;transform:scale(1.15)rotate(-4deg)}85%{opacity:1;transform:scale(1)rotate(-4deg)}to{opacity:0}}.sp-peek{width:min(86vw,380px);animation:2.6s cubic-bezier(.3,1.3,.5,1) both peekUp;bottom:-2px;left:50%;translate:-50%}@keyframes peekUp{0%{transform:translateY(100%)}22%,78%{transform:translateY(18%)}to{transform:translateY(100%)}}.sp-peek .sp-toast{transform-box:view-box;transform-origin:232px 214px;animation:2.6s ease-in-out both toast}@keyframes toast{0%,28%{transform:rotate(10deg)}40%{transform:rotate(-8deg)}48%{transform:rotate(4deg)}56%,to{transform:rotate(-4deg)}}.sp-peek .sp-clink,.sp-peek .sp-cheers{opacity:0;transform-box:fill-box;transform-origin:50%;animation:2.6s ease-out both mwah}.sp-parade{width:100%;position:absolute;bottom:14%;left:0}.sp-parade .dachshund{filter:drop-shadow(0 5px #16122a66);width:min(72vw,330px);height:auto;animation:2.6s linear both trot;display:block}@keyframes trot{0%{transform:translate(-105%)}to{transform:translate(calc(100vw + 5%))}}.sp-notes{font-size:26px;animation:2.6s ease-out both mwah;position:absolute;top:-34px;left:50%}@media (prefers-reduced-motion:reduce){.topper *,.topper,.gm-dog{animation:none!important}.topper .tp-lid{transform:scaleY(0)}.surprise{display:none!important}}.dachshund .dh-slosh{transform-box:view-box;animation:2.2s ease-in-out infinite alternate slosh}.dachshund.running .dh-slosh{animation:.32s ease-in-out infinite alternate slosh}@keyframes slosh{0%{transform:rotate(-6deg)}to{transform:rotate(6deg)}}.dachshund .dh-glass{transform-box:view-box}.dachshund.running .dh-glass{animation:.32s ease-in-out infinite alternate glassSway}@keyframes glassSway{0%{transform:rotate(-2.5deg)}to{transform:rotate(2.5deg)}}@media (prefers-reduced-motion:reduce){.dachshund .dh-slosh,.dachshund .dh-glass{animation:none!important}}.sp-cool{position:absolute;bottom:16%;left:0;right:0}.sp-cool-root{background:radial-gradient(circle at 50% 75%,#3fd8ff2e,#0000 60%)}.sp-cool-move{width:min(90vw,390px);animation:2.6s cubic-bezier(.25,.9,.3,1) both coolSlide;position:relative}@keyframes coolSlide{0%{transform:translate(-105%)}20%,80%{transform:translate(calc(50vw - 50%))}to{transform:translate(calc(100vw + 5%))}}.sp-cool-dog{filter:drop-shadow(0 5px #16122a66);width:100%;height:auto}.sp-cool-dog .leg-f1,.sp-cool-dog .leg-b2{animation:.13s ease-in-out 4 alternate legA}.sp-cool-dog .leg-f2,.sp-cool-dog .leg-b1{animation:.13s ease-in-out 4 alternate legB}.sp-cool-dog .dh-head{animation:2.6s ease-in-out both coolNod}@keyframes coolNod{0%,50%{transform:rotate(0)}54%{transform:rotate(7deg)}58%{transform:rotate(-2deg)}62%{transform:rotate(6deg)}66%,to{transform:rotate(0)}}.sp-cool-dog .dh-specs{transform-box:fill-box;transform-origin:50%;animation:2.6s ease-in-out both shadesDown}@keyframes shadesDown{0%,26%{transform:translateY(0)}32%,46%{transform:translate(1.5px,11.5px)rotate(5deg)}52%,to{transform:translateY(0)}}.sp-cool-dog .dh-brow{opacity:0;animation:2.6s ease-in-out both browUp}@keyframes browUp{0%,28%{opacity:0;transform:translateY(2px)}34%,44%{opacity:1;transform:translateY(-1.5px)}50%,to{opacity:0}}.sp-cool-dog .dh-lens-spark{transform-box:fill-box;transform-origin:50%;animation:2.6s ease-out both lensGlint;scale:0}@keyframes lensGlint{0%,62%{rotate:0deg;scale:0}68%{rotate:45deg;scale:1.8}76%{rotate:90deg;scale:1.2}84%,to{scale:0}}.sp-pew{opacity:0;font-size:26px;animation:2.6s ease-out both pew;position:absolute;top:-18%;right:2%}@keyframes pew{0%,64%{opacity:0;transform:scale(.4)rotate(-10deg)}70%{opacity:1;transform:scale(1.15)rotate(-6deg)}80%{opacity:1;transform:scale(1)rotate(-6deg)}88%,to{opacity:0}}.dachshund .dh-gunpaw{opacity:0}.sp-cool-dog .dh-gunpaw{transform-box:view-box;animation:2.6s ease-in-out both gunPaw}@keyframes gunPaw{0%,56%{opacity:0;transform:rotate(50deg)}61%{opacity:1;transform:rotate(-8deg)}66%{transform:rotate(-14deg)}70%,78%{opacity:1;transform:rotate(-6deg)}84%,to{opacity:0;transform:rotate(50deg)}}.sp-cool-dog .dh-gun-spark{transform-box:fill-box;transform-origin:50%;animation:2.6s ease-out both lensGlint}.seg.sort{scrollbar-width:none;-webkit-overflow-scrolling:touch;overflow-x:auto}.seg.sort::-webkit-scrollbar{display:none}.seg.sort button{flex:1 0 auto;padding-left:10px;padding-right:10px}.dist-pill{background:var(--cyan);color:var(--ink);border:1.5px solid var(--ink);border-radius:999px;padding:1px 7px;font-size:11.5px;font-weight:700}.is-native body{-webkit-touch-callout:none}.owner-link{margin-top:4px;display:inline-block}.back-btn:after,.credit-btn:after,.about-btn:after,.price-help summary:after,.reorder button:after,.seg button:after,.chip:after,.grabber-zone:after{content:"";position:absolute}.price-help summary,.reorder button,.chip,.grabber-zone,.seg button{position:relative}.back-btn:after{top:-5px;bottom:-5px;left:-5px;right:-5px}.credit-btn:after{top:-7px;bottom:-7px;left:-7px;right:-7px}.about-btn{position:relative}.about-btn:after{top:-2px;bottom:-2px;left:-2px;right:-2px}.price-help summary:after{top:-10px;bottom:-10px;left:-10px;right:-10px}.reorder{gap:8px}.reorder button{width:36px;height:36px}.reorder button:after{top:-4px;bottom:-4px;left:-4px;right:-4px}.seg button{min-height:36px}.seg button:after{top:-4px;bottom:-4px;left:0;right:0}.chips{margin-top:-6px;margin-bottom:-6px;padding-top:7px;padding-bottom:8px}.chip:after{top:-6px;bottom:-6px;left:-4px;right:-4px}.grabber-zone{height:36px!important;margin-top:0!important}.grabber-zone:after{top:-4px;bottom:-4px;left:0;right:0}.price-src{margin:0 -4px;padding:14px 4px}.arcade-btn,.neon-btn,.note-actions .arcade-btn{min-height:44px}.cat-badge{color:color-mix(in srgb, var(--c) 55%, #fff)}.search{height:44px}.search input{align-self:stretch}.search .clear{position:relative}.search .clear:after{content:"";position:absolute;top:-13px;bottom:-13px;left:-13px;right:-13px}.filters select,.intro-skip,.neon-logo{min-height:44px}@media (min-width:900px){.segmented a:after{content:"";position:absolute;top:-7px;bottom:-7px;left:0;right:0}}.filter-row select,.gf-area select{-webkit-appearance:none;appearance:none;background-color:var(--ink);color:var(--cream);border:2.5px solid var(--plum3);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23ffd23f' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;border-radius:999px;padding:0 34px 0 14px;font-weight:600}:is(.filter-row select:focus-visible,.gf-area select:focus-visible){border-color:var(--cyan);outline:none;box-shadow:0 0 10px #3fd8ff80}.app .map,.app .map.leaflet-container{top:0;bottom:0;left:0;right:0;position:absolute!important}@media (max-width:899px){.tabbar,.panel{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}.theme-stops button{align-items:center;min-height:44px}.price-src{padding:15px 4px}@media (min-width:900px){.leaflet-bar a{width:44px!important;height:44px!important;line-height:44px!important}}@media (max-width:899px) and (max-height:500px){.neon-title{margin:0 0 6px;font-size:24px}}.gf-area select{flex:1;min-width:0;max-width:100%;min-height:44px}.gf-area{min-width:0;max-width:100%}.chip.tag-chip .tag-zh{opacity:.8;margin-left:3px;font-size:11px}.chip.tag-chip.on .tag-zh{opacity:1}.card.info .gmaps-link{min-height:36px;font:400 13px var(--display);letter-spacing:.4px;color:var(--ink);border:2.5px solid var(--ink);box-shadow:0 3px 0 var(--ink);background:#30d158;border-radius:10px;align-items:center;gap:6px;margin:2px 0 6px;padding:6px 12px;text-decoration:none;display:inline-flex}.card.info .gmaps-link:active{box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}.card.info .live-note{margin:2px 0 0}.tp-long{overflow:visible}.gm-longreach{pointer-events:none;z-index:4;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0;overflow:visible}.gm-longreach .paw-say{font:400 17px var(--display);fill:var(--yellow);stroke:var(--ink);stroke-width:5px;paint-order:stroke fill;opacity:0;transform-box:fill-box;transform-origin:50%;animation:pawSay var(--twist,.45s) ease-out calc(var(--reach,.9s) + var(--twist,.45s) * var(--i)) both}@keyframes pawSay{0%{opacity:0;transform:scale(.4)rotate(-12deg)}35%{opacity:1;transform:scale(1.18)rotate(6deg)}to{opacity:1;transform:scale(1)rotate(0)}}.phase-reach .tp-long .ln-head,.phase-reach .tp-long .ln-front{opacity:0}.phase-turning .tp-long{transform-box:view-box;transform-origin:160px 150px;animation:.42s cubic-bezier(.3,1.6,.5,1) both longLand}@keyframes longLand{0%{transform:translateY(-7px)scaleY(1.04)}55%{transform:translateY(2px)scaleY(.97)}to{transform:none}}.tp-long .ln-puff,.tp-long .ln-say,.tp-long .ln-zzz{opacity:0}.tp-long .ln-puff circle{transform-box:fill-box;transform-origin:50% 20%}.tp-long .ln-yawn{transform-box:fill-box;transform-origin:50% 20%;transform:scale(0)}.tp-long .ln-say-txt{font:400 17px var(--display);fill:var(--yellow);stroke:var(--ink);stroke-width:5px;paint-order:stroke fill}.tp-long .ln-say-txt.small{fill:#fff3d6;stroke-width:4px;font-size:12px}.tp-long .ln-say,.tp-long .ln-zzz{transform-box:fill-box;transform-origin:50% 100%}.gm-dog[data-mood=sneeze] .tp-long .ln-head{animation:1.4s ease-in-out both lnSneeze}@keyframes lnSneeze{0%{transform:rotate(0)}30%{transform:rotate(-11deg)translateY(-4px)}36%{transform:rotate(-12deg)translateY(-5px)}40%{transform:rotate(13deg)translateY(4px)}48%{transform:rotate(7deg)translateY(1px)}56%{transform:rotate(10deg)translateY(3px)}to{transform:rotate(0)}}.gm-dog[data-mood=sneeze] .tp-long .tp-lid{animation:1.4s ease-in-out both lidShut}@keyframes lidShut{0%,18%{transform:scaleY(0)}26%,52%{transform:scaleY(1)}62%,to{transform:scaleY(0)}}.gm-dog[data-mood=sneeze] .tp-long .ln-puff{animation:1.4s ease-out both lnPuffShow}@keyframes lnPuffShow{0%,38%{opacity:0}42%{opacity:1}80%{opacity:.9}to{opacity:0}}.gm-dog[data-mood=sneeze] .tp-long .ln-puff circle{animation:1.4s ease-out both lnPuff}@keyframes lnPuff{0%,38%{transform:translateY(-10px)scale(.2)}50%{transform:translateY(0)scale(1.15)}to{transform:translate(-4px,6px)scale(1.35)}}.gm-dog[data-mood=sneeze] .tp-long .ln-say{animation:1.4s ease-out both lnSayPop}@keyframes lnSayPop{0%,38%{opacity:0;transform:scale(.4)rotate(-10deg)}46%{opacity:1;transform:scale(1.2)rotate(5deg)}56%,86%{opacity:1;transform:scale(1)rotate(-2deg)}to{opacity:0;transform:scale(.9)}}.gm-dog[data-mood=sneeze]{animation:1.4s ease-in-out both longSneezeJolt}@keyframes longSneezeJolt{0%,38%{transform:none}41%{transform:translateY(3px)rotate(.8deg)}46%{transform:translateY(-1px)rotate(-.5deg)}52%,to{transform:none}}.page.gacha:has(.gm-dog[data-mood=sneeze]) .gm-pile{animation:1.4s ease-in-out both pileJiggle}@keyframes pileJiggle{0%,38%{transform:none}42%{transform:translate(2px,-4px)}47%{transform:translate(-2px,2px)}52%{transform:translate(1px,-2px)}58%,to{transform:none}}.gm-dog[data-mood=wag] .tp-long .tp-tail{animation:.14s ease-in-out 10 alternate both lnWagBig}@keyframes lnWagBig{0%{transform:rotate(-22deg)}to{transform:rotate(26deg)}}.gm-dog[data-mood=wag] .tp-long .ln-hind{animation:.14s ease-in-out 10 alternate both lnHipWag}@keyframes lnHipWag{0%{transform:rotate(-5deg)}to{transform:rotate(6deg)}}.gm-dog[data-mood=blink] .tp-long .tp-lid{animation:.7s ease-in-out both lnBlink2}@keyframes lnBlink2{0%,to{transform:scaleY(0)}18%,28%{transform:scaleY(1)}42%{transform:scaleY(0)}62%,72%{transform:scaleY(1)}86%{transform:scaleY(0)}}.gm-dog[data-mood=yawn] .tp-long .ln-head{animation:1.9s ease-in-out both lnYawnHead}@keyframes lnYawnHead{0%,to{transform:rotate(0)}25%,65%{transform:rotate(-13deg)translateY(-4px)}}.gm-dog[data-mood=yawn] .tp-long .ln-yawn{animation:1.9s ease-in-out both lnYawn}@keyframes lnYawn{0%,to{transform:scale(0)}25%{transform:scaleY(.7)}40%,62%{transform:scale(1.15,1.35)}80%{transform:scale(.3)}}.gm-dog[data-mood=yawn] .tp-long .tp-lid{animation:1.9s ease-in-out both lidShut}.gm-dog[data-mood=yawn] .tp-long .ln-zzz{animation:1.9s ease-out both lnSayPop}@media (prefers-reduced-motion:reduce){.gm-longreach,.gm-longreach *,.gm-dog[data-mood],.gm-dog[data-mood] *,.gm-pile{animation:none!important}.tp-long .ln-puff,.tp-long .ln-say,.tp-long .ln-zzz{opacity:0!important}}.gm-dog .tp-long{filter:none}.leaflet-cluster-anim .leaflet-marker-icon,.leaflet-cluster-anim .leaflet-marker-shadow{-webkit-transition:-webkit-transform .3s ease-out,opacity .3s ease-in;-o-transition:-o-transform .3s ease-out, opacity .3s ease-in;-moz-transition:-moz-transform .3s ease-out,opacity .3s ease-in;transition:transform .3s ease-out,opacity .3s ease-in}.leaflet-cluster-spider-leg{-webkit-transition:-webkit-stroke-dashoffset .3s ease-out,-webkit-stroke-opacity .3s ease-in;-o-transition:-o-stroke-dashoffset .3s ease-out, -o-stroke-opacity .3s ease-in;-moz-transition:-moz-stroke-dashoffset .3s ease-out,-moz-stroke-opacity .3s ease-in;transition:stroke-dashoffset .3s ease-out,stroke-opacity .3s ease-in}
