@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/playfair-display-600-vietnamese.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/playfair-display-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/playfair-display-700-vietnamese.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/playfair-display-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Dancing Script;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/dancing-script-600-vietnamese.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Dancing Script;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/dancing-script-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Dancing Script;font-style:normal;font-weight:700;font-display:block;src:url(/fonts/dancing-script-700-vietnamese.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Dancing Script;font-style:normal;font-weight:700;font-display:block;src:url(/fonts/dancing-script-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/be-vietnam-pro-400-vietnamese.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/be-vietnam-pro-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/be-vietnam-pro-500-vietnamese.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/be-vietnam-pro-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/be-vietnam-pro-600-vietnamese.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/be-vietnam-pro-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--safe-top: 0px;--gold:#e8c473;--gold-soft:#c2a25c;--purple:#7d5a9c;--purple-deep:#4a315f;--red:#b23a46;--jade:#3c8577;--green:#8fb36a;--cream:#faf3e6;--ink:#100c15;--ink-2:#171221;--line:rgba(232,196,115,.16);--text:#f6efe4;--muted:#a99aa8;--panel:rgba(20,14,26,.86);--radius:14px;--font:"Playfair Display","Iowan Old Style",Georgia,serif;--script:"Dancing Script",cursive;--sans:"Be Vietnam Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}*{box-sizing:border-box}html,body{height:100%}html,body{overscroll-behavior:none;overflow:hidden;touch-action:none}body{margin:0;background:var(--ink);color:var(--text);font:15px/1.55 var(--sans);overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;-webkit-font-smoothing:antialiased}#app{position:fixed;top:0;right:0;bottom:0;left:0;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}#scene{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;outline:none;touch-action:none}.topbar{position:absolute;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;gap:14px;padding:14px 16px;background:linear-gradient(180deg,#0c141a6b,#0c141a00);pointer-events:none}.topbar>*{pointer-events:auto}.title{flex:1;min-width:0;text-align:center}.title h1{margin:0;font:700 23px/1.15 var(--script);letter-spacing:.5px;color:var(--gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.title p{margin:2px 0 0;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ghost,.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:10px;background:#14121ae6;color:var(--text);padding:8px 13px;font:500 12.5px var(--sans);cursor:pointer;transition:border-color .15s,background .15s,transform .1s}.ghost:hover,.pill:hover{border-color:#e8c47399;background:#2b1e38d9}.ghost:active,.pill:active{transform:scale(.97)}.pill.icon{padding:8px 10px}.actions .pill.zoom{min-width:44px;height:44px;justify-content:center;padding:0 12px;font-size:19px;font-weight:600;line-height:1}.actions .pill.icon svg{width:18px;height:18px}.pill[aria-pressed=true]{border-color:#d9b871a6;color:var(--gold)}.pill{position:relative}.pill-badge[hidden],.plan-count[hidden]{display:none!important}.pill-badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--red,#b23a46);color:#fff;font:700 10.5px/1 var(--sans);border:1px solid rgba(16,12,21,.85);box-shadow:0 2px 8px #00000080}.actions{display:flex;gap:8px}.pill[hidden],.ghost[hidden]{display:none!important}.panel{position:absolute;z-index:15;right:16px;top:78px;bottom:16px;width:330px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:auto;box-shadow:0 20px 60px #00000073}.panel-body{padding:18px}.panel-toggle{display:none;position:absolute;top:6px;left:50%;transform:translate(-50%);border:0;background:transparent;color:var(--muted);font-size:16px;line-height:1;cursor:pointer;padding:4px 18px}.desc{margin:0 0 18px;font:14.5px/1.75 var(--sans);color:var(--cream)}.card p{font:13.5px/1.6 var(--sans);color:var(--cream);margin:0}.panel-h{color:var(--gold-soft)}.panel-h-old{margin:0 0 10px;font:600 10.5px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-soft)}.spots{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.spots button{width:100%;text-align:left;display:flex;gap:10px;align-items:baseline;border:0;background:transparent;color:inherit;cursor:pointer;padding:9px 8px;border-radius:9px;font:14px/1.4 var(--sans)}.spots button:hover{background:#d9b87117}.spots .n{flex:0 0 18px;height:18px;border-radius:50%;border:1px solid var(--gold-soft);color:var(--gold);font:600 10px/17px var(--sans);text-align:center}.spots small{display:block;color:var(--muted);font-size:11.5px;margin-top:1px}.hint{position:absolute;z-index:14;left:16px;bottom:16px;font-size:11.5px;color:var(--muted);background:#0c0a1099;border:1px solid var(--line);padding:7px 11px;border-radius:999px;pointer-events:none}.card{position:absolute;z-index:30;left:12px;top:54px;bottom:auto;height:auto;transform:none;width:min(360px,calc(100vw - 24px));max-height:calc(100vh - 150px);overflow:auto;background:#141119f5;border:1px solid rgba(217,184,113,.32);border-radius:var(--radius);padding:14px 16px 12px;box-shadow:0 24px 70px #0009;animation:pop .16s ease-out}@keyframes pop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.card h3{margin:0 44px 6px 0;font:700 23px/1.2 var(--script);color:var(--gold)}.card p{margin:0;font-size:14px;color:#e2d8c8}.card-x{position:absolute;top:10px;right:10px;z-index:2;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(232,196,115,.45);background:#100c15d1;color:var(--cream);font-size:24px;line-height:1;cursor:pointer;padding:0;box-shadow:0 6px 18px #00000080;transition:background .15s,border-color .15s,transform .1s}.card-x:hover{background:#b23a46e6;border-color:#e8c473cc;color:#fff}.card-x:active{transform:scale(.94)}.map{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;background:radial-gradient(120% 90% at 50% -10%,#1b2230,#0b0a0e 62%);display:flex;flex-direction:column;align-items:center;padding:46px 20px 22px;overflow:auto}.map[hidden]{display:none}.map-head{text-align:center;margin-bottom:6px}.map-head h1{margin:0;font:600 27px/1.2 var(--font);letter-spacing:.5px}.map-head p{margin:6px 0 0;color:var(--muted);font-size:12.5px;letter-spacing:.06em}.map-canvas{position:relative;width:min(940px,100%);aspect-ratio:16/10;margin:14px 0 8px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(160deg,#121a22,#0d1014 60%);overflow:hidden}.map-canvas svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.pin{position:absolute;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;border:0;background:transparent;padding:0;color:inherit;transition:transform .15s}.pin:hover,.pin:focus-visible{transform:translate(-50%,-100%) scale(1.06);outline:none}.pin .dot{width:14px;height:14px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px #d9b8712e,0 0 18px #d9b87199}.pin .lbl{pointer-events:none;font:600 11.5px/1.2 var(--sans);white-space:nowrap;background:#0a090dc7;border:1px solid rgba(217,184,113,.28);padding:4px 8px;border-radius:999px}.pin .lbl small{display:block;font-weight:400;color:var(--muted);font-size:10px;letter-spacing:.04em}.map-legend{margin:2px 0 0;color:#6f6a61;font-size:11.5px}@media (max-width:820px){.panel{left:10px;right:10px;top:auto;bottom:56px;width:auto;max-height:34vh;transition:max-height .25s ease}.panel-toggle{display:block}.panel.collapsed{max-height:44px;overflow:hidden}.panel.collapsed .panel-toggle{transform:translate(-50%) rotate(180deg)}.hint{display:none}.title h1{font-size:16px}.title p{font-size:10px}.map-head h1{font-size:21px}.map-canvas{aspect-ratio:4/5}.map{padding:64px 12px 16px}.pin .lbl{pointer-events:none;font-size:10.5px;padding:3px 7px}}@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}.map-mode .title,.map-mode #btn-map,.map-mode .panel,.map-mode .hint{display:none}.map-mode .actions{margin-left:auto}.hidden{display:none!important}.map-hud{position:absolute;z-index:16;left:0;right:0;bottom:18px;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.map-hud[hidden]{display:none}.chips{display:flex;gap:8px;padding:0 14px;max-width:100%;overflow-x:auto;pointer-events:auto;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-start;gap:1px;border:1px solid rgba(232,196,115,.32);border-radius:10px;background:linear-gradient(180deg,#2b1e38eb,#16101eeb);color:var(--text);cursor:pointer;padding:8px 13px;transition:border-color .15s,background .15s,transform .1s}.chip b{font:600 13px/1.2 var(--sans);white-space:nowrap;color:var(--cream)}.chip span{font-size:10.5px;color:var(--muted);white-space:nowrap}.chip:hover{border-color:var(--gold);background:linear-gradient(180deg,#46305af2,#1e1628f2)}.chip:active{transform:scale(.98)}.chip.active{border-color:var(--gold);box-shadow:0 0 0 1px #d9b87159,0 0 24px #d9b8712e}.map-tip{margin:0;font-size:11.5px;color:#8d8578;text-align:center;padding:0 20px}.stick{display:none;position:absolute;z-index:18;left:18px;bottom:96px;width:104px;height:104px;border-radius:50%;border:1px solid rgba(217,184,113,.28);background:#0c0a10b8;touch-action:none}.stick span{position:absolute;left:50%;top:50%;width:42px;height:42px;margin:-21px 0 0 -21px;border-radius:50%;background:#d9b8718c;box-shadow:0 0 18px #d9b87159;transition:transform .05s linear}@media (pointer:coarse){.stick{display:block}.hint{display:none}}.fade{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;background:#07080a;opacity:0;pointer-events:none;transition:opacity .26s ease}.refbox{position:absolute;z-index:22;left:16px;top:86px;width:250px;background:#100e14e6;border:1px solid rgba(217,184,113,.28);border-radius:14px;overflow:hidden;box-shadow:0 18px 50px #00000080;animation:pop .18s ease-out}.refbox[hidden]{display:none}.refbox img{display:block;width:100%;height:150px;object-fit:cover;background:#1a1720}.ref-cap{padding:9px 12px;font-size:11.5px;color:var(--muted);line-height:1.4}.ref-x{position:absolute;top:6px;right:8px;border:0;background:#00000073;color:#fff;width:24px;height:24px;border-radius:50%;font-size:16px;line-height:1;cursor:pointer}.toast{position:absolute;z-index:40;left:50%;bottom:120px;transform:translate(-50%,10px);background:#e8c473f5;color:#1a1410;font:600 13px/1 var(--sans);padding:9px 16px;border-radius:999px;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s}.toast.show{opacity:1;transform:translate(-50%)}.stick-g{display:none;position:absolute;z-index:18;right:18px;bottom:104px;width:52px;height:52px;border-radius:50%;align-items:center;justify-content:center;border:1px solid rgba(217,184,113,.35);background:#100e14e6;color:var(--gold)}@media (pointer:coarse){.stick-g{display:flex}}.chip.minor{border-color:#96beb447}.chip.minor b{font-weight:500;color:#d6e6df}@media (min-width:821px){.refbox{top:86px}}html,body{overscroll-behavior:none}#scene{touch-action:none}button,.pill,.chip,.fopt{touch-action:manipulation}.camctl.off{display:none}.camctl{position:absolute;z-index:19;right:16px;top:78px;display:flex;flex-direction:column;align-items:center;gap:6px}.camctl .row{display:flex;gap:6px}.camctl button{width:44px;height:44px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:#100e14e6;color:var(--text);font-size:15px;line-height:1;cursor:pointer;transition:background .12s,border-color .12s}.camctl button#cam-tilt{font-size:19px;border-color:#d9b87173}.camctl button:hover{border-color:#d9b8718c;background:#1c1923d9}.camctl button:active{transform:scale(.94)}@media (max-width:820px){.camctl{top:auto;bottom:180px;right:14px}.camctl button{width:42px;height:42px;font-size:14px}}.prompt{position:absolute;z-index:24;left:50%;bottom:96px;transform:translate(-50%);border:0;cursor:pointer;font-family:var(--sans);background:linear-gradient(180deg,var(--gold),#c9a24a);color:#1b1410;font:600 13.5px/1 var(--sans);padding:10px 18px;border-radius:999px;box-shadow:0 10px 30px #00000073;animation:pop .16s ease-out;white-space:nowrap}.prompt small,.prompt .p-arrow{display:none}.prompt[hidden]{display:none!important}@media (max-width:820px),(pointer:coarse){.prompt{left:12px;right:auto;bottom:auto;top:calc(72px + var(--safe-top));transform:none;display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:auto;min-width:132px;max-width:min(58vw,220px);padding:10px 26px 11px 12px;border-radius:14px;white-space:normal;text-align:left;background:linear-gradient(180deg,#22192cf5,#100c16f5);border:1px solid rgba(232,196,115,.38);color:var(--cream);box-shadow:0 16px 40px #0000008c}.prompt b{font:700 17px/1.2 var(--font);color:var(--gold);display:block;max-width:100%;overflow-wrap:anywhere}.prompt small{display:block;font:500 10.5px/1.3 var(--sans);color:var(--muted);letter-spacing:.02em}.prompt .p-arrow{display:block;position:absolute;right:10px;bottom:9px;font:600 13px/1 var(--sans);color:var(--gold-soft)}.prompt:active{transform:scale(.985)}.refbox{top:calc(152px + var(--safe-top))}}.site-mode .camctl{right:auto;left:16px;top:auto;bottom:18px}.site-mode .hint{display:none}@media (max-width:820px){.site-mode .camctl{left:14px;bottom:158px;top:auto;right:auto}.site-mode .panel{max-height:34vh}}.card-img{display:block;width:100%;height:118px;object-fit:cover;background:#1a1520;margin:-20px -22px 12px;width:calc(100% + 44px)}.card-img[hidden]{display:none}.card-actions{display:flex;gap:8px;margin:2px 0 10px;flex-wrap:wrap}.card-actions>*{flex:1 1 46%;min-width:0}.card-actions>*{white-space:nowrap;text-align:center;justify-content:center}.card-actions a.card-walk{flex:1 1 100%}.card-actions:empty{display:none}.card-enter{flex:1 1 46%;border:0;border-radius:10px;padding:9px 12px;cursor:pointer;background:linear-gradient(180deg,var(--gold),#c9a24a);color:#1b1410;font:600 13.5px var(--sans)}.card-enter:hover{filter:brightness(1.06)}.card-walk{border:1px solid rgba(232,196,115,.35);border-radius:10px;padding:9px 12px;cursor:pointer;background:transparent;color:var(--gold);font:600 13px var(--sans)}.card-walk:hover{background:#e8c4731a}.card-enter[hidden],.card-walk[hidden]{display:none}.map-mode .title h1{font-family:var(--script);font-size:30px;font-weight:700;letter-spacing:.5px;color:var(--gold)}.map-head h1{font-family:var(--script);font-size:34px;color:var(--gold)}.panel{border-color:#e8c47347;background:linear-gradient(180deg,#23162eeb,#120d18eb)}.spots button:hover{background:#7d5a9c38}.spots .n{border-color:var(--gold);color:var(--gold)}.prompt{box-shadow:0 10px 30px #b23a4640}.hint{color:#bcae9f;border-color:#e8c47333;background:#18102099}@media (max-width:820px){.card{left:10px;right:10px;top:72px;width:auto;max-height:52vh}.card-img{height:104px}.card h3{font-size:22px}.card p{font-size:13.5px}.card{max-height:calc(100vh - 112px)}.card-embed{height:140px}}a.card-walk{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.pill[aria-pressed=true]#btn-food{border-color:var(--red);color:var(--red);background:#b23a461f}.food-filter{position:fixed;z-index:30;left:16px;top:70px;width:max-content;min-width:210px;display:flex;flex-direction:column;gap:1px;flex-wrap:nowrap;justify-content:flex-start;max-width:min(300px,94vw);max-height:min(70vh,520px);overflow-y:auto;background:#140e1af2;border:1px solid rgba(232,196,115,.25);padding:7px;border-radius:14px;box-shadow:0 18px 44px #0000008c}.food-filter[hidden]{display:none}#btn-flood.flood-on{border-color:#7fd0e8!important;color:#bfe9f7!important;background:#3f97b838!important;box-shadow:0 0 0 2px #7fd0e859,0 6px 18px #00000073}.pill[aria-pressed=true]#btn-stay{border-color:var(--jade,#3f6b5a);color:#8fd3bb;background:#3f6b5a29}.fopt{display:flex;align-items:center;gap:9px;width:100%;padding:7px 9px;border:0;border-radius:9px;background:transparent;font:500 12.5px var(--sans);color:var(--cream);cursor:pointer;white-space:nowrap;text-align:left;opacity:.62;transition:opacity .12s,background .12s}.fopt:hover{opacity:1;background:#ffffff12}.fopt.on{opacity:1;background:#e8c47329;color:var(--gold)}.fopt em{margin-left:auto;font-style:normal;font-size:11px;opacity:.75}.fopt.on em{opacity:1}.fsep{height:1px;margin:5px 6px;background:#e8c47338}.fclear{opacity:.75;font-size:12px;color:#e0a0a6}.fclear:hover{opacity:1;background:#b23a4629}.fcat input{accent-color:#b23a46;width:14px;height:14px}.stay-filter .fcat input{accent-color:#3f6b5a}.fcat em{font-style:normal;opacity:.55;font-size:11px}.card-plan-btn{display:inline-flex;align-items:center;gap:5px;margin:2px 0 6px;border:1px solid rgba(232,196,115,.35);background:#e8c47314;color:var(--gold);font:600 11.5px/1 var(--sans);padding:7px 11px;border-radius:999px;cursor:pointer}.card-plan-btn:hover{background:#e8c47329;border-color:var(--gold)}.card-plan-btn[hidden]{display:none}.card-addr{display:flex;gap:6px;align-items:flex-start;margin:9px 0 0;font:400 12.5px/1.45 var(--sans);color:var(--text)}.card-addr[hidden]{display:none}.card-addr svg{flex:0 0 auto;margin-top:2px;color:var(--gold-soft)}.card-more{display:flex;align-items:center;min-height:26px;margin-top:8px;font:500 12.5px/1.4 var(--sans);color:var(--gold-soft);text-decoration:none}.card-more:hover{color:var(--gold);text-decoration:underline}.card-rating{font:500 13px var(--sans);color:var(--gold);margin:2px 0 8px}.card-rating[hidden]{display:none}.card-embed{width:100%;height:160px;border:0;border-radius:10px;margin-top:4px;background:#1a1520}.card-embed[hidden]{display:none}@media (max-width: 700px){.food-filter{min-width:196px;max-width:min(260px,86vw);max-height:min(62vh,440px)}.fcat{font-size:12px;padding:7px 8px}}.flood-panel{position:fixed;z-index:30;left:16px;top:70px;width:max-content;display:flex;align-items:center;gap:10px;background:#0c1a22e6;border:1px solid rgba(120,196,216,.35);border-radius:14px;padding:8px 10px;box-shadow:0 16px 44px #00000080}.flood-panel[hidden]{display:none}.fp-gauge{position:relative;width:34px;height:170px;flex:0 0 auto}.fp-gauge:before{content:"";position:absolute;left:50%;top:2px;bottom:2px;width:6px;margin-left:-3px;border-radius:999px;background:linear-gradient(180deg,#1f5f8f,#8fd3e8)}.fp-gauge input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;position:absolute;left:50%;top:50%;width:170px;height:24px;margin:0;transform:translate(-50%,-50%) rotate(-90deg);cursor:pointer;outline:none}.fp-gauge input[type=range]::-webkit-slider-runnable-track{height:24px;background:transparent}.fp-gauge input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;margin-top:2px;border-radius:50%;background:#eaf7ff;border:2px solid #3f97b8;box-shadow:0 2px 10px #0000008c}.fp-gauge input[type=range]::-moz-range-track{height:24px;background:transparent;border:0}.fp-gauge input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#eaf7ff;border:2px solid #3f97b8}.fp-gauge input[type=range]:focus-visible{outline:2px solid #8fd3e8;outline-offset:6px;border-radius:999px}.fp-val{font:700 13px var(--sans);color:#d6f2ff;min-width:44px;text-align:left}@media (max-width:700px){.flood-panel{top:64px;padding:7px 9px}.fp-gauge{height:150px}.fp-gauge input[type=range]{width:150px}}.legal-foot{position:absolute;left:auto;right:12px;bottom:6px;z-index:24;width:max-content;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:4px 9px;border-radius:999px;background:#0e0b12d9;font:400 10.5px/1.4 var(--sans);color:#e2d8c89e;pointer-events:none;text-shadow:0 1px 3px rgba(0,0,0,.75);max-width:calc(100vw - 24px)}.lf-links{display:flex;align-items:center;gap:0;pointer-events:auto}.lf-links a{color:inherit;text-decoration:none;padding:0 8px;transition:color .15s}.lf-links a+a{border-left:1px solid rgba(232,196,115,.28)}.lf-links a:hover{color:var(--gold);text-decoration:underline;text-underline-offset:3px}.lf-copy{padding-right:4px}@media (max-width:700px){.legal-foot{font-size:9px;gap:4px;flex-wrap:wrap;justify-content:flex-end;text-align:right;line-height:1.35;padding:3px 7px}.lf-links{flex-wrap:wrap;justify-content:flex-end}.lf-links a{padding:0 5px}.lf-links a[href="/lien-he"]{border-left:0}.lf-copy{padding-right:2px}}@media (max-width:820px){.legal-foot{flex-wrap:wrap;justify-content:flex-end;row-gap:0;font-size:9.5px}.lf-links a{padding:0 6px}}@media (max-width:820px){.legal-foot{right:10px;bottom:5px;font-size:10px;gap:7px}.map-hud{bottom:38px}.map-tip{display:none}}@media (min-width:821px){.legal-foot{bottom:6px}.map-hud{bottom:44px}}.site-mode .legal-foot{right:370px}@media (max-width:820px){.site-mode .legal-foot{right:10px}}.menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:190;display:flex;justify-content:flex-end;align-items:flex-start;background:#08060c8c;padding:calc(72px + var(--safe-top)) 16px 16px}.menu[hidden]{display:none}.menu-card{width:min(370px,100%);max-height:calc(100vh - 96px);overflow:auto;background:#16111dfa;border:1px solid rgba(232,196,115,.3);border-radius:16px;padding:14px 16px 16px;box-shadow:0 30px 80px #0009;animation:pop .16s ease-out}.menu-h{display:flex;align-items:center;gap:10px;margin-bottom:10px}.menu-h b{flex:1;min-width:0;font:700 20px/1.2 var(--script);color:var(--gold)}.menu-x{flex:0 0 auto;width:32px;height:32px;border-radius:8px;border:1px solid rgba(232,196,115,.4);background:#100c15cc;color:var(--cream);font-size:19px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.menu-x:hover{background:#b23a46d9;color:#fff}.menu-label{margin:12px 2px 7px;font:600 10.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.menu .menu-item{display:flex;align-items:center;gap:9px;width:100%;padding:10px 11px;border-radius:10px;font:500 12.5px/1.15 var(--sans);text-align:left}.menu .menu-item svg{flex:0 0 auto;width:17px;height:17px;opacity:.9}.menu .menu-item .mi-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu .menu-item .mi-value{font:700 11px var(--sans);letter-spacing:.08em;color:var(--gold)}.menu .menu-item.is-off{opacity:.42;cursor:not-allowed}.menu .menu-item .pill-badge{position:static;min-width:18px;height:18px;margin-left:auto;padding:0 5px;border:0;box-shadow:none}.menu .menu-item .plan-count{position:static;margin-left:auto;min-width:19px;height:19px;font:700 11px/19px var(--sans)}@media (max-width:700px){.menu{align-items:flex-end;padding:0}.menu-card{width:100%;max-height:78vh;border-radius:16px 16px 0 0;border-bottom:0;padding:14px 14px calc(16px + env(safe-area-inset-bottom,0px))}}.simbar{position:absolute;z-index:52;left:50%;bottom:96px;transform:translate(-50%);display:flex;align-items:center;gap:10px;max-width:min(92vw,420px);padding:9px 10px 9px 14px;border-radius:14px;background:linear-gradient(180deg,#22192cf7,#100c16f7);border:1px solid rgba(232,196,115,.4);box-shadow:0 16px 40px #00000080;animation:pop .18s ease-out}.simbar[hidden]{display:none!important}.simbar-dot{width:9px;height:9px;border-radius:50%;background:var(--gold);flex:0 0 auto;box-shadow:0 0 0 4px #e8c4732e;animation:pop .9s ease-in-out infinite alternate}.simbar-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.simbar-txt b{font:600 12.5px/1.2 var(--sans);color:var(--gold)}.simbar-txt span{font:400 11px/1.25 var(--sans);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.simbar-x{flex:0 0 auto;width:30px;height:30px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid rgba(232,196,115,.4);background:#100c15cc;color:var(--cream);font-size:17px;line-height:1;transition:background .15s,border-color .15s}.simbar-x:hover{background:#b23a46d9;border-color:#e8c473cc;color:#fff}.card.compact{top:calc(96px + var(--safe-top));bottom:auto;left:10px;right:10px;width:auto;max-height:34vh;padding-bottom:12px;animation:none}.card.compact .card-img,.card.compact .card-embed,.card.compact .card-rating,.card.compact .card-actions,.card.compact .card-plan-btn,.card.compact .card-addr,.card.compact .card-more,.card.compact .card-x{display:none!important}.card.compact h3{font-size:19px;margin:0 0 4px}.card.compact #card-body{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0;font-size:13px;line-height:1.45}.plan-count{position:absolute;top:-6px;right:-6px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--gold);color:#1b1410;font:700 10.5px/17px var(--sans);text-align:center}#btn-plan{position:relative}.plan{position:absolute;z-index:26;left:16px;top:86px;width:356px;max-height:calc(100vh - 200px);display:flex;flex-direction:column;background:linear-gradient(180deg,#1e1628f5,#100c16f7);border:1px solid rgba(232,196,115,.35);border-radius:16px;box-shadow:0 20px 50px #0000008c;overflow:hidden;animation:pop .18s ease-out}.plan[hidden]{display:none!important}.plan-h{display:flex;align-items:center;gap:8px;padding:12px 12px 8px}.plan-h b{flex:1;font:700 16px/1.2 var(--font);color:var(--gold)}.plan-back{display:none}.plan-x{flex:0 0 auto;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;border:1px solid rgba(232,196,115,.4);background:#100c15cc;color:var(--cream);font-size:20px;line-height:1;padding:0;transition:background .15s,border-color .15s,transform .1s}.plan-x:hover{background:#b23a46d9;border-color:#e8c473cc;color:#fff}.plan-x:active{transform:scale(.94)}.plan-tip{margin:0 12px 8px;font:400 11.5px/1.4 var(--sans);color:var(--muted)}.plan-list{list-style:none;margin:0;padding:0 8px;overflow-y:auto;flex:1}.plan-row{display:flex;align-items:center;gap:6px;padding:7px 6px;border-radius:10px;background:#ffffff0a;margin-bottom:6px}.plan-row input[type=time]{width:106px;flex:0 0 auto;background:#0c0a10b3;border:1px solid rgba(232,196,115,.25);border-radius:8px;color:var(--gold);font:600 12.5px var(--sans);padding:5px 6px;text-align:center}.plan-row input[type=time]:focus-visible{outline:2px solid var(--gold);outline-offset:1px}.plan-name{flex:1;min-width:0}.plan-name b{display:block;font:600 13px/1.25 var(--sans);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-name span{font:400 10.5px/1.2 var(--sans);color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.plan-ctl{display:flex;gap:2px}.plan-ctl button{border:0;background:transparent;color:var(--gold-soft);cursor:pointer;width:22px;height:22px;border-radius:6px;font-size:13px;line-height:1}.plan-ctl button:hover{background:#e8c4731f;color:var(--gold)}.plan-empty{margin:6px 12px 10px;font:400 12px/1.4 var(--sans);color:var(--muted);text-align:center}.plan-f{padding:8px 12px 12px;border-top:1px solid rgba(232,196,115,.12)}.plan-f{display:flex;flex-direction:column;gap:6px}.plan-f button{width:100%;border:1px solid rgba(232,196,115,.3);background:transparent;color:var(--muted);font:500 12px var(--sans);padding:8px;border-radius:10px;cursor:pointer}.plan-f button:hover{border-color:var(--gold);color:var(--gold)}.plan-f .plan-sim{background:linear-gradient(180deg,var(--gold),#c9a24a);color:#1b1410;border:0;font:700 12.5px var(--sans)}.plan-f .plan-sim:hover{filter:brightness(1.05)}.plan-f .plan-sim[disabled]{opacity:.5;cursor:not-allowed}.plan-grip{flex:0 0 auto;width:18px;color:var(--gold-soft);opacity:.55;cursor:grab;font:700 12px/1 var(--sans);text-align:center;touch-action:none;-webkit-user-select:none;user-select:none}.plan-grip:active{cursor:grabbing}.plan-row.dragging{opacity:.55;border:1px dashed rgba(232,196,115,.5)}.plan-row.drop-target{border-top:2px solid var(--gold)}@media (max-width:820px),(pointer:coarse){.plan{left:0;right:0;top:0;bottom:0;width:auto;max-height:none;border-radius:0;border:0;padding-top:calc(8px + var(--safe-top));z-index:70;background:#100c15}.plan-f{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.plan-back{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid rgba(232,196,115,.3);border-radius:10px;background:transparent;color:var(--gold);font-size:16px;cursor:pointer;flex:0 0 auto}.plan-x{display:none}.plan-list{padding:0 14px}.plan-row{padding:9px 8px}.plan-name b{font-size:14px}.plan-h b{font-size:18px}}.pos-readout{position:absolute;z-index:24;left:16px;bottom:64px;display:flex;align-items:center;gap:8px;padding:7px 11px;border-radius:10px;background:#0e0b12b8;border:1px solid rgba(232,196,115,.28);font:500 11.5px/1.4 var(--sans);color:var(--cream);box-shadow:0 10px 26px #00000073;white-space:nowrap}.pos-readout[hidden]{display:none}.pos-readout b{color:var(--gold);font-weight:600}.pr-copy{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-left:2px;border-radius:7px;cursor:pointer;border:1px solid rgba(232,196,115,.45);background:#e8c4731f;color:var(--gold)}.pr-copy:hover{background:#e8c47340}.pr-copy:active{transform:scale(.94)}.pr-dot{width:7px;height:7px;border-radius:50%;background:#8fd3bb;box-shadow:0 0 0 3px #8fd3bb2e}@media (max-width:820px){.pos-readout{left:12px;bottom:56px;font-size:11px}}.settings{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#08060cd1;padding:20px}.settings[hidden]{display:none}.settings-card{position:relative;width:min(440px,100%);max-height:86vh;overflow:auto;background:#16111dfa;border:1px solid rgba(232,196,115,.3);border-radius:14px;padding:22px 20px 18px;box-shadow:0 30px 80px #0009;animation:pop .16s ease-out}.settings-card h2{margin:0 0 16px;font:700 22px/1.2 var(--script);color:var(--gold)}.settings-x{position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:8px;border:1px solid rgba(232,196,115,.4);background:#100c15cc;color:var(--cream);font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.settings-x:hover{background:#b23a46d9;color:#fff}.set-row{display:flex;align-items:center;gap:14px;padding:12px 2px;border-bottom:1px solid rgba(232,196,115,.14);cursor:pointer}.set-row:last-of-type{border-bottom:0}.set-label{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.set-label b{font:600 14px var(--sans);color:var(--cream)}.set-label em{font-style:normal;font-size:11.5px;color:var(--muted)}.set-note{margin:10px 0 0;font-size:11.5px;color:var(--muted)}.set-group{margin:16px 0 2px;font:700 11px/1 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--gold)}.set-row.set-slider{cursor:default;flex-wrap:wrap;gap:8px 10px}.set-row.set-slider .set-label{flex:1 1 100%}.set-row.set-slider input[type=range]{flex:1;min-width:0;height:26px;margin:0;cursor:pointer;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.set-row.set-slider input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:linear-gradient(90deg,#e8c473d9,#e8c47347)}.set-row.set-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;margin-top:-7px;border-radius:50%;background:#f4e9d3;border:2px solid #b98f4a;box-shadow:0 2px 8px #00000080}.set-row.set-slider input[type=range]::-moz-range-track{height:6px;border-radius:999px;background:#e8c47366}.set-row.set-slider input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#f4e9d3;border:2px solid #b98f4a}.set-val{flex:0 0 auto;min-width:64px;text-align:right;font:700 12px var(--sans);color:var(--gold)}.set-actions{display:flex;gap:8px;margin:12px 0 2px}.set-test,.set-reset{flex:1;cursor:pointer;border-radius:9px;padding:9px 12px;font:600 12.5px var(--sans)}.set-test{border:0;color:#1b1410;background:linear-gradient(180deg,var(--gold),#c9a24a)}.set-test:hover{filter:brightness(1.06)}.set-reset{border:1px solid rgba(232,196,115,.4);background:transparent;color:var(--cream)}.set-reset:hover{border-color:var(--gold);color:var(--gold)}.set-row[hidden]{display:none}.set-select{flex:0 0 auto;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#100c15e6 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23e8c473' stroke-width='1.6' stroke-linecap='round'/></svg>") no-repeat right 10px center;border:1px solid rgba(232,196,115,.4);border-radius:9px;color:var(--cream);font:600 12.5px var(--sans);padding:8px 30px 8px 11px;cursor:pointer}.set-select:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.switch{-moz-appearance:none;appearance:none;-webkit-appearance:none;flex:0 0 auto;width:44px;height:24px;border-radius:6px;position:relative;cursor:pointer;background:#ffffff24;border:1px solid rgba(255,255,255,.2);transition:background .15s,border-color .15s}.switch:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:5px;background:#cfc6b8;transition:transform .16s,background .15s}.switch:checked{background:#d9b87159;border-color:#e8c473b3}.switch:checked:after{transform:translate(20px);background:var(--gold)}.switch:focus-visible{outline:2px solid var(--gold);outline-offset:3px}@media (max-width:700px){.actions{gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:calc(100vw - 24px)}.actions .pill,.actions .pill.zoom{min-width:40px;width:40px;height:40px;padding:0;justify-content:center;font-size:17px}.actions .pill svg{width:16px;height:16px}}@media (max-width:820px),(pointer:coarse){.topbar{padding:calc(14px + env(safe-area-inset-top,0px)) 12px 8px;gap:8px}.topbar .title{display:none}.topbar .actions{flex:1;justify-content:flex-end;max-width:none;flex-wrap:nowrap}}@media (max-width:430px){.actions{gap:5px}.actions .pill,.actions .pill.zoom{min-width:36px;width:36px;height:36px}.actions .pill svg{width:15px;height:15px}.actions .pill-badge{min-width:16px;height:16px;font-size:10px;top:-4px;right:-4px}}@media (max-width:365px){.actions{gap:4px}.actions .pill,.actions .pill.zoom{min-width:32px;width:32px;height:32px}.actions .pill svg{width:14px;height:14px}}@media (max-width:820px){.site-mode .panel{display:none!important}.site-mode #cam-up,.site-mode #cam-down,.site-mode #cam-left,.site-mode #cam-right{display:none}.site-mode .camctl{left:14px;right:auto;bottom:18px;top:auto}.site-mode .card{max-height:62vh}}.pill.on{border-color:#e8c473d9;color:#1b1410;background:linear-gradient(180deg,var(--gold),#c9a24a)}.pill.on svg{opacity:.9}@media (max-width:820px){.chips,.camctl{display:none}}@media (max-width:700px),(pointer:coarse){#btn-gesture{display:none!important}}.install{position:absolute;z-index:46;left:10px;right:10px;top:calc(64px + var(--safe-top));display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:10px 12px;border-radius:14px;background:linear-gradient(180deg,#22192cf7,#100c16f7);border:1px solid rgba(232,196,115,.4);box-shadow:0 18px 44px #0000008c;animation:pop .2s ease-out}.install[hidden]{display:none}.install-ico{flex:0 0 auto;width:40px;height:40px;border-radius:10px;border:1px solid rgba(232,196,115,.3);background:#1a1520;object-fit:cover}.install-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.install-txt b{font:600 13px/1.25 var(--sans);color:var(--gold)}.install-txt span{font:400 11px/1.35 var(--sans);color:var(--muted)}.install-note{flex:1 1 100%;order:9;margin:2px 0 0;padding:7px 10px;border-radius:9px;background:#e8c4731a;border-left:2px solid rgba(232,196,115,.6);font:500 11px/1.45 var(--sans);color:#e6d6b4}.install-note[hidden]{display:none}.install-act{display:flex;flex-direction:column;gap:5px;flex:0 0 auto}.install-go{border:0;cursor:pointer;font:600 12px/1 var(--sans);color:#1b1410;background:linear-gradient(180deg,var(--gold),#c9a24a);padding:8px 12px;border-radius:9px}.install-later{border:1px solid rgba(232,196,115,.25);cursor:pointer;background:transparent;color:var(--muted);font:500 11px/1 var(--sans);padding:6px 12px;border-radius:9px}@media (min-width:821px) and (pointer:fine){.install{display:none!important}}@media (display-mode: standalone),(display-mode: fullscreen){:root{--safe-top: env(safe-area-inset-top, 0px)}.topbar{padding-top:calc(20px + var(--safe-top))}.card{top:calc(60px + var(--safe-top))}.camctl{top:calc(84px + var(--safe-top))}.refbox{top:calc(92px + var(--safe-top))}}.actions .pill.shot-btn{border-color:#e8c47373;color:var(--gold)}.actions .pill.shot-btn:hover{background:#e8c47324}.shot,.gal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:210;display:flex;align-items:center;justify-content:center;background:#08060cdb;padding:20px}.shot[hidden],.gal[hidden]{display:none}.shot-card,.gal-card{position:relative;width:min(560px,100%);max-height:92vh;overflow:auto;background:#16111dfa;border:1px solid rgba(232,196,115,.3);border-radius:16px;padding:16px 18px 18px;box-shadow:0 30px 80px #0009;animation:pop .16s ease-out}.gal-card{width:min(720px,100%)}.shot-h,.gal-h{display:flex;align-items:center;gap:10px;margin-bottom:12px}.shot-h b,.gal-h b{font:700 19px/1.2 var(--script);color:var(--gold);flex:1;min-width:0}.shot-x,.gal-x{flex:0 0 auto;width:34px;height:34px;border-radius:8px;border:1px solid rgba(232,196,115,.4);background:#100c15cc;color:var(--cream);font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.shot-x:hover,.gal-x:hover{background:#b23a46d9;color:#fff}.shot-stage{position:relative;display:flex;align-items:center;justify-content:center;background:#0b0810;border:1px solid rgba(232,196,115,.18);border-radius:12px;padding:8px;min-height:180px}.shot-stage canvas{display:block;max-width:100%;max-height:min(46vh,520px);border-radius:8px;box-shadow:0 12px 34px #00000073}.shot-wait{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font:500 13px var(--sans);color:var(--muted);letter-spacing:.02em}.shot-wait[hidden]{display:none}.shot-frames{display:flex;align-items:center;gap:8px;margin:14px 0 12px;flex-wrap:wrap}.shot-frames-label{font:600 11.5px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.shot-frame{border:1px solid rgba(232,196,115,.25);border-radius:9px;background:#100c15b3;color:var(--text);font:500 12.5px var(--sans);padding:8px 12px;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.shot-frame:hover{border-color:#e8c47399}.shot-frame[aria-pressed=true]{border-color:#e8c473cc;color:#1b1410;background:linear-gradient(180deg,var(--gold),#c9a24a);font-weight:600}.shot-actions{display:flex;gap:10px}.shot-act{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;padding:11px 14px;cursor:pointer;text-align:center;font:600 13.5px var(--sans)}.shot-act svg{flex:0 0 auto;opacity:.95}.shot-act.primary{border:0;color:#1b1410;background:linear-gradient(180deg,var(--gold),#c9a24a)}.shot-act.primary:hover{filter:brightness(1.06)}.shot-act.ghost{border:1px solid rgba(232,196,115,.4);background:#100c15b3;color:var(--cream)}.shot-act.ghost:hover{border-color:#e8c473bf;background:#2b1e38bf}.shot-note{margin:10px 0 0;font-size:11.5px;color:var(--muted);text-align:center}.gal-count{font:600 12px var(--sans);color:var(--muted);border:1px solid rgba(232,196,115,.25);padding:3px 9px;border-radius:999px}.gal-empty{margin:6px 0 4px;font:400 13px/1.6 var(--sans);color:var(--muted)}.gal-grid{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.gal-item{position:relative;border-radius:10px;overflow:hidden;background:#0b0810;border:1px solid rgba(232,196,115,.18)}.gal-item a{display:block;line-height:0}.gal-item img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}.gal-meta{display:flex;align-items:center;gap:6px;padding:6px 7px;font:500 10.5px/1.3 var(--sans);color:var(--muted)}.gal-meta span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gal-del{position:absolute;top:6px;right:6px;width:28px;height:28px;border-radius:8px;border:1px solid rgba(255,255,255,.25);background:#0c0a10b8;color:#fff;font:700 11px/1 var(--sans);cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.gal-del:hover{background:#b23a46e6}.gal-del[data-armed="1"]{background:#b23a46f2;width:auto;padding:0 9px}.gal-note{margin:12px 0 0;font-size:11px;color:var(--muted);text-align:center}@media (max-width:520px){.shot,.gal{padding:0;align-items:flex-end}.shot-card,.gal-card{width:100%;max-height:94vh;border-radius:16px 16px 0 0;border-bottom:0;padding:14px 14px calc(16px + env(safe-area-inset-bottom,0px))}.shot-stage canvas{max-height:44vh}.gal-grid{grid-template-columns:repeat(3,1fr);gap:7px}.shot-act{padding:12px 10px}}.shot-act[disabled]{opacity:.65;cursor:progress}@media (max-width:520px){.shot-frames{gap:6px;flex-wrap:nowrap;margin:12px 0 10px}.shot-frames-label{display:none}.shot-frame{flex:1;padding:8px 4px;font-size:10.5px;text-align:center;white-space:nowrap}}@media (max-width:700px){.site-mode #btn-locate{display:none!important}.site-mode #btn-map span{display:none}.site-mode #btn-map{padding:8px 10px;gap:0}.site-mode .title h1{font-size:15px}.site-mode .title p{display:none}.site-mode .topbar{gap:10px}}.card,.panel,.plan,.food-filter,.stay-filter,.settings-card,.menu-card,.shot-card,.gal-card,.flood-panel{overscroll-behavior:contain;touch-action:pan-y}.card embed,.card iframe{touch-action:auto}.train-board{position:absolute;z-index:28;left:0;top:0;display:inline-flex;align-items:center;gap:7px;padding:9px 15px;border-radius:999px;border:1px solid rgba(232,196,115,.7);background:linear-gradient(180deg,var(--gold),#c9a24a);color:#1b1410;font:700 12.5px/1 var(--sans);cursor:pointer;white-space:nowrap;box-shadow:0 12px 30px #00000080;animation:pop .16s ease-out;will-change:transform}.train-board[hidden]{display:none!important}.train-board svg{flex:0 0 auto}.ride{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;pointer-events:none;opacity:0;transition:opacity .35s;--zs:1;--pc:2200px;--ry:-16deg;--rx:4deg;--sc:1.3;--winBase:min(46vw,680px);--winBaseH:min(calc(var(--winBase)*.66), 42vh);--winCap:66vw;--winCapH:52vh;--winW:min(calc(var(--winBase)*var(--zs)), var(--winCap));--winH:min(calc(var(--winBaseH)*var(--zs)), var(--winCapH));--frame:10px;--wood-hi:#5b3f2c;--wood:#3a271c;--wood-lo:#1c120d;--brass-hi:#e9cd93;--brass:#b8894a;--brass-lo:#6d4a1f}.ride.on{opacity:1}.ride.flip{--ry:16deg}.ride.flip .cabin-reveal{left:auto;right:0;background:linear-gradient(270deg,#d6b07cd9,#785632f2);box-shadow:-2px 0 7px #00000080}.ride.flip .cabin-reveal:before{left:-100vw;right:7px}.ride-cabin{position:absolute;top:0;right:0;bottom:0;left:0;transform:perspective(var(--pc)) rotateY(var(--ry)) rotateX(var(--rx)) scale(var(--sc));transform-origin:50% 50%;will-change:transform}.cabin-p{position:absolute;display:block;background:repeating-linear-gradient(90deg,#ffffff08 0,#ffffff08 1px,#0000000b 1px,#0000000b 3px,#fff0 3px,#fff0 74px),linear-gradient(180deg,#3d2b20,#33231a 55%,#2a1c15)}.cabin-p:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(120% 90% at 50% 50%,#ffd6960d,#00000057 82%)}.cabin-top{left:0;right:0;top:0;height:calc(50% - var(--winH)/2)}.cabin-bottom{left:0;right:0;bottom:0;height:calc(50% - var(--winH)/2)}.cabin-left{left:0;top:0;bottom:0;width:calc(50% - var(--winW)/2)}.cabin-right{right:0;top:0;bottom:0;width:calc(50% - var(--winW)/2)}.cabin-top:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(85% 120% at 50% -10%,#ffce9624,#0000 68%)}.cabin-top:before{content:"";position:absolute;left:0;right:0;bottom:0;height:34px;background:linear-gradient(180deg,#00000057,#0000)}.cabin-rack{position:absolute;left:calc(50% - var(--winW)/2 - 48px);right:calc(50% - var(--winW)/2 - 48px);top:calc(50% - var(--winH)/2 - 104px);height:22px;border-radius:8px 8px 4px 4px;background:linear-gradient(180deg,#8a5f3a,#4a2f1d 60%,#2a1a11);box-shadow:0 10px 22px #0000008c,inset 0 1px #ffffff2e}.cabin-rack:after{content:"";position:absolute;left:0;right:0;top:22px;height:5px;background:linear-gradient(180deg,var(--brass),var(--brass-lo));border-radius:0 0 4px 4px;opacity:.75}.cabin-lamp{position:absolute;top:calc(50% - var(--winH)/2 - 66px);width:140px;height:8px;border-radius:999px;background:linear-gradient(180deg,#fff2d4,#e8c473);box-shadow:0 0 30px 12px #ffd69647;opacity:.9}.lamp-l{left:calc(50% - var(--winW)/2 + 60px)}.lamp-r{right:calc(50% - var(--winW)/2 + 60px)}.cabin-floor{display:none;position:absolute;left:0;right:0;bottom:0;background:repeating-linear-gradient(90deg,#ffffff05 0,#ffffff05 1px,#0000000d 1px,#0000000d 3px,#fff0 3px,#fff0 90px),linear-gradient(180deg,#2a1c14,#1a110c);box-shadow:inset 0 14px 30px #00000073}.cabin-sill{position:absolute;left:calc(50% - var(--winW)/2 - 40px);right:calc(50% - var(--winW)/2 - 40px);top:calc(50% + var(--winH)/2 + var(--frame) - 4px);height:18px;border-radius:3px;background:linear-gradient(180deg,#7d5836,#502f1b 70%,#2e1a0f);box-shadow:0 10px 22px #0009,inset 0 1px #ffebc84d,inset 0 -2px #00000059}.cabin-seat{position:absolute;left:calc(50% - var(--winW)/2 - 120px);right:calc(50% - var(--winW)/2 - 120px);top:calc(50% + var(--winH)/2 + var(--frame) + 24px);bottom:0;border-radius:22px 22px 0 0;background:repeating-linear-gradient(112deg,#ffffff06 0,#ffffff06 2px,#00000009 2px,#00000009 13px),radial-gradient(120% 70% at 50% 0%,#ffbe961f,#0000 62%),linear-gradient(180deg,#7b333b,#521c23 46%,#2f0f15);box-shadow:0 -2px #ffffff1a,0 14px 34px #0000008c,inset 0 2px #ffffff1a}.cabin-seat:before{content:"";position:absolute;left:8%;right:8%;top:22px;height:2px;border-radius:2px;background:#00000047;box-shadow:0 5px #0000002e}.ride-window{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:var(--winW);height:var(--winH);border-radius:18px;overflow:hidden;border:var(--frame) solid #b58e55;box-shadow:0 0 0 2px #ffe8c429,0 0 0 4px #2e1b0de6,0 0 0 8px #78542c66,0 22px 54px #0000009e,inset 0 8px 20px #0006,inset 0 -3px #3c241099;background:transparent}.ride-window:before{content:"";position:absolute;left:-4px;right:-4px;top:-4px;height:14px;border-radius:18px 18px 0 0;background:linear-gradient(180deg,#ffffff80,#fff0);pointer-events:none;z-index:3}.cabin-reveal{position:absolute;left:0;top:0;bottom:0;width:7px;pointer-events:none;z-index:4;background:linear-gradient(90deg,#d6b07cd9,#785632f2);box-shadow:2px 0 7px #00000080}.cabin-reveal:before{content:"";position:absolute;left:7px;top:0;right:-100vw;height:6px;background:linear-gradient(180deg,#d6b07cbf,#785632f2)}.ride-glass{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:2;background:linear-gradient(112deg,#ffffff12,#ffffff06 22%,#fff0 40%),linear-gradient(180deg,#0a1a222e,#0a1a2208 40%,#0a1a2229);box-shadow:inset 0 0 46px #0000005c,inset 0 3px #ffffff29}.ride-top{position:absolute;left:50%;top:calc(12px + var(--safe-top));transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;background:#100c16e0;border:1px solid rgba(232,196,115,.35);color:var(--cream);font:600 12px var(--sans);white-space:nowrap;max-width:94vw;overflow:hidden}.ride-badge{color:var(--gold);letter-spacing:.04em}.ride-route b{color:var(--gold-soft);margin:0 2px}.ride-bar{display:block;width:78px;height:4px;border-radius:999px;background:#ffffff29;overflow:hidden}.ride-bar i{display:block;height:100%;width:100%;transform:scaleX(0);transform-origin:left;background:var(--gold)}.ride-zoom{position:absolute;right:16px;bottom:calc(72px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:8px;pointer-events:auto}.ride-zbtn{width:40px;height:40px;border-radius:50%;cursor:pointer;border:1px solid rgba(232,196,115,.55);background:#100c16db;color:var(--gold);font:700 20px/1 var(--sans);display:flex;align-items:center;justify-content:center}.ride-zbtn:hover{border-color:var(--gold);background:#e8c4732e}.ride-zbtn:disabled{opacity:.35;cursor:default}.ride-actions{position:absolute;right:16px;bottom:calc(18px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;gap:10px;pointer-events:auto}.ride-shot,.ride-skip{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(232,196,115,.5);background:#100c16db;color:var(--cream);font:600 12.5px var(--sans);padding:9px 16px;border-radius:999px;cursor:pointer;white-space:nowrap}.ride-shot{border-color:#e8c473d9;background:linear-gradient(180deg,#e8c473f2,#c9a24af2);color:#1b1410}.ride-shot:hover{filter:brightness(1.06)}.ride-shot svg{flex:0 0 auto}.ride-skip:hover{border-color:var(--gold);color:var(--gold)}.boarding{position:fixed;top:0;right:0;bottom:0;left:0;z-index:130;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:24px;background:#060509f7;color:var(--gold);letter-spacing:.02em}.boarding svg{opacity:.92}.boarding b{font:700 22px var(--script);color:var(--gold)}.boarding-hint{font:400 13px/1.55 var(--sans);color:var(--muted);max-width:300px;letter-spacing:0}.boarding-sound{margin-top:8px;border:1px solid rgba(232,196,115,.6);background:#e8c4731f;color:var(--gold);font:600 13px var(--sans);padding:11px 20px;border-radius:999px;cursor:pointer;transition:background .15s,border-color .15s}.boarding-sound:hover:not(:disabled){background:#e8c47338;border-color:var(--gold)}.boarding-sound[hidden]{display:none}.boarding-sound:disabled{opacity:.75;cursor:default}.boarding-skip{margin-top:2px;border:0;background:transparent;color:var(--muted);font:500 12.5px var(--sans);text-decoration:underline;cursor:pointer;padding:6px 10px}@media (max-width:700px){.ride{--winBase:66vw;--winBaseH:min(calc(var(--winBase)*.61), 34vh);--winCap:70vw;--winCapH:40vh;--frame:9px}.ride{--pc:1600px;--ry:-12deg;--rx:3deg;--sc:1.24}.ride.flip{--ry:12deg}.ride-window{border-radius:14px}.cabin-rack{left:calc(50% - var(--winW)/2 - 26px);right:calc(50% - var(--winW)/2 - 26px);top:calc(50% - var(--winH)/2 - 120px);height:18px}.cabin-rack:after{top:18px;height:4px}.cabin-lamp{width:84px;height:7px;top:calc(50% - var(--winH)/2 - 88px)}.lamp-l{left:calc(50% - var(--winW)/2 + 34px)}.lamp-r{right:calc(50% - var(--winW)/2 + 34px)}.cabin-sill{left:calc(50% - var(--winW)/2 - 16px);right:calc(50% - var(--winW)/2 - 16px);height:12px}.cabin-seat{left:calc(50% - var(--winW)/2 - 46px);right:calc(50% - var(--winW)/2 - 46px);top:calc(50% + var(--winH)/2 + var(--frame) + 18px);bottom:auto;height:146px;border-radius:18px 18px 0 0}.cabin-floor{display:block;bottom:0;top:calc(50% + var(--winH)/2 + var(--frame) + 164px);background:repeating-linear-gradient(90deg,#ffffff05 0,#ffffff05 1px,#0000000b 1px,#0000000b 3px,#fff0 3px,#fff0 90px),linear-gradient(180deg,#33231a,#1d140f)}.cabin-seat:before{top:16px}.ride-bar{width:56px}}@media (max-height:560px){.ride{--winBase:min(42vw,420px);--winBaseH:min(calc(var(--winBase)*.66),44vh);--winCap:48vw;--winCapH:46vh;--frame:9px}.ride-window{border-radius:14px}.cabin-rack,.cabin-lamp{display:none}.cabin-sill{left:calc(50% - var(--winW)/2 - 14px);right:calc(50% - var(--winW)/2 - 14px);height:11px}.cabin-seat{left:calc(50% - var(--winW)/2 - 40px);right:calc(50% - var(--winW)/2 - 40px);top:calc(50% + var(--winH)/2 + var(--frame) + 16px);bottom:0;height:auto;border-radius:14px 14px 0 0}.ride-top{font-size:11px;padding:6px 11px}}.cruise{position:fixed;top:0;right:0;bottom:0;left:0;z-index:115;pointer-events:none;opacity:0;transition:opacity .35s}.cruise.on{opacity:1}.cruise-top{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;max-width:92vw;background:#0e0b12d6;border:1px solid rgba(232,196,115,.38);color:var(--cream);font:600 12px/1 var(--sans);box-shadow:0 10px 30px #00000073}.cruise-badge{color:var(--gold);white-space:nowrap}.cruise-route{opacity:.92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cruise-route b{color:var(--gold)}.cruise-bar{position:relative;width:110px;height:4px;border-radius:999px;background:#ffffff29;overflow:hidden;flex:0 0 auto}.cruise-bar i{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:0 50%;transform:scaleX(0);background:var(--gold);border-radius:999px}.cruise-look{position:absolute;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translate(-50%);display:flex;gap:8px;pointer-events:auto}.cruise-lbtn{width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(232,196,115,.45);background:#100c16d6;color:var(--gold-soft);cursor:pointer;box-shadow:0 8px 22px #0006}.cruise-lbtn[aria-pressed=true]{background:var(--gold);color:#1b1410;border-color:var(--gold)}.cruise-actions{position:absolute;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translate(-50%);display:flex;gap:8px;pointer-events:auto;flex-wrap:wrap;justify-content:center;max-width:94vw}.cruise-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:999px;border:1px solid rgba(232,196,115,.45);background:#100c16db;color:var(--cream);font:600 12.5px/1 var(--sans);cursor:pointer;white-space:nowrap}.cruise-btn.on,.cruise-btn[aria-pressed=true]{background:var(--gold);color:#1b1410;border-color:var(--gold)}.cruise-leave{opacity:.88}@media (min-width:761px){.cruise-stop{bottom:calc(150px + env(safe-area-inset-bottom,0px))}}@media (max-width:430px){.cruise-top{gap:7px;padding:7px 11px;font-size:11px}.cruise-badge{display:none}.cruise-bar{width:56px}.cruise-look{bottom:calc(64px + env(safe-area-inset-bottom,0px))}.cruise-lbtn{width:40px;height:40px}.cruise-actions{bottom:calc(14px + env(safe-area-inset-bottom,0px));gap:6px;flex-wrap:nowrap}.cruise-btn{padding:0;width:40px;height:40px;justify-content:center;font-size:11px;gap:0}.cruise-btn>span:not(.cruise-speed-label){display:none}.cruise-speed-label{font-size:11px;margin-left:2px}.cruise-btn svg{width:15px;height:15px}.cruise-speed{width:52px;gap:3px}}.cruise-caption{position:absolute;left:50%;top:calc(56px + env(safe-area-inset-top,0px));transform:translate(-50%);width:min(92vw,560px);padding:11px 14px 10px;border-radius:14px;pointer-events:auto;z-index:2;background:linear-gradient(180deg,#16111cf2,#0c0910f5);border:1px solid rgba(232,196,115,.38);color:var(--cream);box-shadow:0 16px 40px #0000008c}.cruise-caption[hidden]{display:none!important}.cruise-cap-name{display:block;font:700 17px/1.25 var(--font);color:var(--gold)}.cruise-cap-desc{display:block;margin-top:4px;font:500 12.5px/1.45 var(--sans);color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cruise-cap-row{display:flex;align-items:center;gap:8px;margin-top:8px}.cruise-cap-narr{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;border:1px solid rgba(232,196,115,.35);background:transparent;color:var(--gold-soft);font:600 11.5px var(--sans);cursor:pointer}.cruise-cap-narr[aria-pressed=true]{color:var(--gold);border-color:#e8c47399}.cruise-cap-narr[aria-pressed=false]{opacity:.55}.cruise-cap-narr[hidden]{display:none!important}.cruise-cap-go{margin-left:auto;padding:7px 14px;border-radius:999px;border:0;background:var(--gold);color:#1b1410;font:700 12px var(--sans);cursor:pointer}.cruise-cap-go[hidden]{display:none!important}.cruise-stop{position:absolute;left:50%;bottom:calc(118px + env(safe-area-inset-bottom,0px));transform:translate(-50%);padding:9px 16px;border:0;border-radius:999px;background:linear-gradient(180deg,var(--gold),#c9a24a);color:#1b1410;font:700 12.5px var(--sans);cursor:pointer;white-space:nowrap;pointer-events:auto;box-shadow:0 12px 30px #00000080;z-index:2}.cruise-stop[hidden]{display:none!important}#app.riding.docked .card{display:block!important}body.riding .chips,body.riding .map-tip,body.riding .map-hud,body.riding .camctl,body.riding .prompt,body.riding .train-board,body.riding .card,body.riding .stick,body.riding .stick-g,body.riding .plan,body.riding .food-filter,body.riding .stay-filter,body.riding .install{display:none!important}body.riding.docked .card{display:block!important}#app.riding .topbar,#app.riding .legal-foot,#app.riding .chips,#app.riding .map-tip,#app.riding .map-hud,#app.riding .camctl,#app.riding .prompt,#app.riding .train-board,#app.riding .card,#app.riding .panel,#app.riding .pos-readout,#app.riding .stick,#app.riding .stick-g,#app.riding .refbox,#app.riding .install,#app.riding .menu,#app.riding .plan,#app.riding .food-filter,#app.riding .stay-filter,#app.riding .settings-card,#app.riding .quest-layer,#app.riding .quest{display:none!important}.quest-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:14;pointer-events:none}.quest-layer[hidden]{display:none}#app.site-mode .quest-layer{display:none!important}.quest-pin{position:absolute;left:0;top:0;width:40px;height:40px;margin:-20px 0 0 -20px;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;pointer-events:auto;border:2px solid rgba(232,196,115,.9);color:#1b1410;background:radial-gradient(circle at 50% 38%,#ffe6b0,#e8c473 62%,#c9a24a);font:700 16px/1 var(--sans);box-shadow:0 6px 18px #0000008c,0 0 0 5px #e8c47329;transition:transform .12s,box-shadow .2s,opacity .2s;will-change:transform}.quest-pin:after{content:"";position:absolute;left:50%;bottom:-9px;width:2px;height:9px;transform:translate(-50%);background:#e8c4738c}.quest-pin:active{transform:scale(.94)}.quest-pin.found{background:#140f1aeb;color:var(--gold);border-color:#e8c47373;opacity:.62;box-shadow:0 4px 12px #00000073}.quest-pin.found:after{opacity:.4}@media (max-width:700px){.quest-pin{width:42px;height:42px;margin:-21px 0 0 -21px;font-size:16px}}.quest{position:fixed;top:0;right:0;bottom:0;left:0;z-index:212;display:flex;align-items:center;justify-content:center;background:#08060cd1;padding:20px}.quest[hidden]{display:none}.quest-card{position:relative;width:min(460px,100%);max-height:88vh;overflow:auto;background:#16111dfa;border:1px solid rgba(232,196,115,.32);border-radius:16px;padding:16px 18px 18px;box-shadow:0 30px 80px #0009;animation:pop .16s ease-out}.quest-h{display:flex;align-items:center;gap:11px;margin-bottom:10px}.quest-glyph{flex:0 0 auto;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font:700 15px/1 var(--sans);color:#1b1410;background:linear-gradient(180deg,var(--gold),#c9a24a);box-shadow:inset 0 1px #ffffff80}.quest-head{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.quest-kicker{font:600 10.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.quest-head b{font:700 17px/1.25 var(--script);color:var(--gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quest-x{flex:0 0 auto;width:34px;height:34px;border-radius:8px;border:1px solid rgba(232,196,115,.4);background:#100c15cc;color:var(--cream);font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.quest-x:hover{background:#b23a46d9;color:#fff}.quest-teaser{margin:2px 0 12px;font:400 14.5px/1.6 var(--sans);color:var(--text)}.quest-state{margin:0 0 10px;font:600 11.5px/1 var(--sans);letter-spacing:.04em;color:var(--gold);display:inline-flex;align-items:center;gap:6px}.quest-state[hidden]{display:none}.quest-actions{display:flex;gap:10px}.quest-read,.quest-go{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:10px;padding:11px 14px;cursor:pointer;text-align:center;font:600 13.5px var(--sans);text-decoration:none}.quest-read{border:0;color:#1b1410;background:linear-gradient(180deg,var(--gold),#c9a24a)}.quest-read:hover{filter:brightness(1.06)}.quest-go{border:1px solid rgba(232,196,115,.42);background:#100c1599;color:var(--cream)}.quest-go:hover{border-color:var(--gold);color:var(--gold)}.quest-progress{margin:11px 0 0;font:400 11.5px/1.5 var(--sans);color:var(--muted);text-align:center}.quest-progress b{color:var(--gold);font-weight:600}@media (max-width:520px){.quest{padding:0;align-items:flex-end}.quest-card{width:100%;border-radius:16px 16px 0 0;border-bottom:0;padding:16px 16px calc(18px + env(safe-area-inset-bottom,0px))}}.actions .shot-frame[disabled],.shot-frames .shot-frame[disabled]{opacity:.45;cursor:not-allowed}#card-body .ota-row{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}#card-body .ota-btn{display:inline-flex;align-items:center;justify-content:center;padding:5px 10px;border-radius:8px;border:1px solid rgba(232,196,115,.85);background:#0b0910;color:var(--gold);text-decoration:none;font:600 12px/1.2 var(--sans);letter-spacing:.02em}#card-body .ota-btn:hover{background:#e8c47324;color:#f4d999}.ota-info{position:relative;display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:50%;border:1px solid rgba(232,196,115,.8);background:#0b0910;color:var(--gold);font:600 10.5px/1 Georgia,serif;cursor:help;vertical-align:middle;flex:0 0 auto}#card-title{position:relative}#card-title .ota-info.title-info{margin-left:8px;transform:translateY(-3.5px)}#card-title .ota-info.title-info:before{content:"i"}#card-title .ota-info.title-info:after{display:none}#card-title .ota-tip{display:none;position:absolute;left:0;top:calc(100% + 6px);width:100%;padding:8px 10px;border-radius:8px;border:1px solid rgba(232,196,115,.45);background:#0c0a10fa;color:#e2d8c8;font:400 11.5px/1.45 var(--sans);text-align:left;box-shadow:0 8px 24px #00000080;z-index:6;pointer-events:none}#card-title .ota-tip:before{content:attr(data-tip)}#card-title .ota-info.title-info:hover~.ota-tip,#card-title .ota-info.title-info:focus~.ota-tip{display:block}#card-body .ota-info{margin-left:2px}.ota-info:hover:after,.ota-info:focus:after{content:attr(data-tip);position:absolute;left:0;right:auto;top:calc(100% + 8px);bottom:auto;transform:none;width:230px;max-width:calc(100vw - 60px);padding:8px 10px;border-radius:8px;border:1px solid rgba(232,196,115,.45);background:#0c0a10fa;color:#e2d8c8;font:400 11.5px/1.45 var(--sans);text-align:left;box-shadow:0 8px 24px #00000080;z-index:6;pointer-events:none}body.filtering-poi #quest-layer{opacity:.28}body.filtering-poi .quest-pin,body.filtering-poi .train-board{pointer-events:none}.shinra-fab{display:none;position:absolute;z-index:19;right:18px;bottom:168px;width:52px;height:52px;border-radius:50%;align-items:center;justify-content:center;border:1px solid rgba(232,120,90,.65);background:radial-gradient(circle at 50% 35%,#ff8c3c47,#100e14eb 70%);color:#ffb37a;cursor:pointer;box-shadow:0 6px 18px #00000073}.shinra-fab:active{transform:scale(.94)}@media (pointer:coarse){.shinra-fab{display:flex}}#app.riding .shinra-fab,#app.site-mode .shinra-fab{display:none}#shinra-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;pointer-events:none;opacity:0;background:radial-gradient(circle at 50% 45%,#fff 0%,rgba(255,240,210,.85) 35%,rgba(255,150,80,.35) 60%,transparent 78%)}#shinra-flash.on{animation:shinraFlash 1.2s ease-out}@keyframes shinraFlash{0%{opacity:0}12%{opacity:1}to{opacity:0}}#app.shinra-shake{animation:shinraShake .55s linear}@keyframes shinraShake{0%,to{transform:translateZ(0)}12%{transform:translate3d(-9px,5px,0)}28%{transform:translate3d(8px,-6px,0)}44%{transform:translate3d(-6px,-4px,0)}60%{transform:translate3d(5px,4px,0)}76%{transform:translate3d(-3px,2px,0)}}body.shinra-on .chips,body.shinra-on .map-tip,body.shinra-on .map-hud,body.shinra-on .camctl,body.shinra-on .prompt,body.shinra-on .train-board,body.shinra-on .card,body.shinra-on .panel,body.shinra-on .stick,body.shinra-on .stick-g,body.shinra-on .shinra-fab,body.shinra-on .plan,body.shinra-on .food-filter,body.shinra-on .stay-filter,body.shinra-on .legal-foot{display:none!important}body.shinra-on #quest-layer{opacity:0;pointer-events:none}.shinra-restore-tb{display:none}body.shinra-destroyed .shinra-restore-tb{display:inline-flex;color:var(--gold);border-color:#e8c47399}.shinra-restore{display:none;position:fixed;z-index:23;right:18px;bottom:232px;width:52px;height:52px;border-radius:50%;align-items:center;justify-content:center;border:1px solid rgba(232,196,115,.6);background:#100e14eb;color:var(--gold);cursor:pointer;box-shadow:0 6px 18px #00000073}.shinra-restore:active{transform:scale(.94)}@media (pointer:coarse){body.shinra-destroyed .shinra-restore{display:flex}body.shinra-destroyed .shinra-restore-tb{display:none}}#app.site-mode .shinra-restore,#app.riding .shinra-restore{display:none!important}#hoi-an-preview{position:fixed;z-index:19;right:16px;top:236px;width:144px;aspect-ratio:1.6/1;display:block;border-radius:12px;overflow:hidden;background:#0e0b12;border:1px solid rgba(232,196,115,.45);box-shadow:0 10px 26px #00000073;transition:transform .15s,border-color .15s}#hoi-an-preview:hover{transform:translateY(-2px);border-color:#e8c473e6}#hoi-an-preview img{display:block;width:100%;height:100%;object-fit:cover}@media (pointer:coarse){#hoi-an-preview{display:none}}#app.site-mode #hoi-an-preview,body.riding #hoi-an-preview,body.shinra-on #hoi-an-preview,body.menu-open .camctl,body.menu-open #hoi-an-preview,body.menu-open .shinra-fab,body.menu-open .stick,body.menu-open .stick-g,body.menu-open .shinra-restore,body.menu-open .train-board,body.menu-open .boat-board,body.menu-open #install{display:none!important}body:has(#settings:not([hidden])) .shinra-fab,body:has(#settings:not([hidden])) .stick,body:has(#settings:not([hidden])) .stick-g,body:has(#settings:not([hidden])) .shinra-restore,body:has(#settings:not([hidden])) .train-board,body:has(#settings:not([hidden])) .boat-board,body:has(#settings:not([hidden])) #install,body:has(#ha-settings:not([hidden])) .shinra-fab,body:has(#ha-settings:not([hidden])) .stick,body:has(#ha-settings:not([hidden])) .stick-g,body:has(#ha-settings:not([hidden])) .shinra-restore,body:has(#ha-settings:not([hidden])) .train-board,body:has(#ha-settings:not([hidden])) .boat-board,body:has(#ha-settings:not([hidden])) #install{display:none!important}.map-switch-fab{display:none}@media (pointer:coarse),(max-width:820px){.map-switch-fab{display:inline-flex;align-items:center;gap:7px;position:fixed;z-index:22;left:12px;top:calc(62px + var(--safe-top,0px));padding:7px 12px;border-radius:999px;text-decoration:none;background:#0e0b12d6;border:1px solid rgba(232,196,115,.5);color:var(--gold);font:600 11.5px/1 var(--sans);box-shadow:0 6px 18px #0000006b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.map-switch-fab{display:none!important}.map-switch-fab svg{width:14px;height:14px;flex:0 0 auto}.map-switch-fab .arw{opacity:.8}body:has(#install:not([hidden])) .map-switch-fab{top:calc(172px + var(--safe-top,0px))}body:has(.flood-panel:not([hidden])) .map-switch-fab,body.menu-open .map-switch-fab{display:none}}.menu-map-link{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--gold)}.menu-map-link svg{width:18px;height:18px}.boot-splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:#100c15;color:var(--gold);opacity:1;transition:opacity .35s ease}.boot-splash h1{margin:0;padding:0 22px;text-align:center;font:700 clamp(34px,7vw,54px)/1.12 var(--script);letter-spacing:.02em;text-shadow:0 6px 26px rgba(0,0,0,.55)}.boot-splash p{margin:0;font:600 15px/1.4 var(--script);letter-spacing:.06em;color:#e8c473ad}.boot-splash:after{content:"";width:46px;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);animation:bootPulse 1.2s ease-in-out infinite}@keyframes bootPulse{0%,to{opacity:.25;transform:scaleX(.55)}50%{opacity:1;transform:scaleX(1)}}#da-nang-preview{position:fixed;z-index:19;right:16px;top:334px;width:144px;aspect-ratio:1.6/1;display:block;border-radius:12px;overflow:hidden;background:#0e0b12;border:1px solid rgba(232,196,115,.45);box-shadow:0 10px 26px #00000073;transition:transform .15s,border-color .15s}#da-nang-preview:hover{transform:translateY(-2px);border-color:#e8c473e6}#da-nang-preview img{display:block;width:100%;height:100%;object-fit:cover}@media (pointer:coarse){#da-nang-preview{display:none}}body.menu-open #da-nang-preview{display:none!important}@media (pointer:coarse),(max-width:820px){#switch-da-nang{top:calc(104px + var(--safe-top,0px))}}@media (pointer:coarse),(max-width:820px){body:has(#install:not([hidden])) #switch-da-nang{top:calc(214px + var(--safe-top,0px))!important}}.menu-map-thumb{width:38px;height:24px;flex:0 0 auto;object-fit:cover;border-radius:6px;border:1px solid rgba(232,196,115,.45);display:block}body.cartoon .pill,body.cartoon .chip{background:linear-gradient(180deg,#fff8e8,#ffe9c2);color:#1b2430;border:2px solid #1b2430;border-radius:12px;box-shadow:3px 3px #141e2359}body.cartoon .pill svg{color:#1b2430}body.cartoon .chip b{color:#17261c}body.cartoon .chip span{color:#5b574a}body.cartoon .pill[aria-pressed=true]{background:#ffd76a;border-color:#1b2430}body.cartoon .topbar .title h1{color:#173a2b;text-shadow:0 2px 0 rgba(255,255,255,.65)}body.cartoon .topbar .title p{color:#2e5b44}.menu-map-link .mi-label{font-family:var(--script);font-size:16px;font-weight:700;letter-spacing:.2px}.map-switch-fab>span:not(.arw){font-family:var(--script);font-size:14px}@media (max-width:700px){#app .topbar .title{display:none}#app .topbar .actions{margin-left:auto}}
