.pscene.pscene--island{height:auto;aspect-ratio:4/3;margin:.75rem 0;border-bottom:3px solid var(--navy);border-radius:18px;background-color:#f6efe2;background-position:50%;background-size:cover;box-shadow:var(--pop-sm)}.isle-visits{display:flex;align-items:center;gap:.55rem;margin:.15rem 0 .7rem;padding:.55rem .75rem;border:2px solid #1d6f9a;border-radius:14px;background:linear-gradient(180deg,#e8f6ff,#d4ecfb);color:#123a58;font-size:.92rem;font-weight:800;line-height:1.25;box-shadow:0 2px 0 #1d6f9a}.isle-visits__icon{display:grid;place-items:center;flex:none;width:1.7rem;height:1.7rem;border-radius:999px;background:#c0392b;color:#fff}.isle-visits b{color:#0b3b6e;font-family:var(--font-display);font-size:1.12em}.isle-modal{position:fixed;z-index:38;left:0;right:0;top:calc(var(--topbar-h) + env(safe-area-inset-top) + var(--announce-h, 0px));bottom:0;display:grid;place-items:center;padding:.85rem;background:rgba(20,16,48,.38)}.isle-card.sheet{width:min(440px,100%);max-height:100%;min-height:0;overflow:hidden;border:var(--stroke) solid var(--navy);border-radius:26px;background:var(--cream);box-shadow:var(--pop)}.isle-card .sheet__head{padding:.85rem .9rem 0}.isle-card .sheet__head h2{margin:0;font-size:1.25rem}.isle-card .sheet__body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:.55rem .9rem 1rem}.isle-card__actions{display:grid}.isle-card__list{list-style:none;margin:.75rem 0 0;padding:.2rem;display:grid;max-height:168px;overflow:auto;overscroll-behavior:contain;border:2px solid var(--line);border-radius:16px;background:#fff}.isle-card__list li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:.45rem;gap:.45rem;margin:0;padding:.38rem .45rem;border-radius:12px;font-size:.82rem}.isle-card__list li.muted,.isle-card__list li.notice{display:block}.isle-card__list li+li{border-top:1px dashed rgba(43,35,80,.14)}.isle-card__list small,.isle-card__list strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.isle-card__list small,.isle-card__list time{color:var(--muted);font-size:.72rem;font-weight:700}.isle-card .busy-mascot,.isle-card .notice{margin:.55rem 0 0}@media (max-width:860px){.isle-modal{bottom:var(--nav-space);padding:.65rem}.mapscreen:has(.isle-modal) .livefeed{display:none}body:has(.isle-modal) .shrine-fab{display:none}}.citypick__isles{display:flex;flex-wrap:wrap;gap:.35rem;margin:0 0 .45rem;padding:0;list-style:none}.citypick__isle{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;border:2px solid var(--navy);border-radius:999px;background:#fff;color:var(--navy);font:inherit;font-size:.78rem;font-weight:800;cursor:pointer}.citypick__isle.is-current{background:var(--gold)}.isle-actors{position:absolute;inset:0;z-index:5;pointer-events:none}.isle-actor{position:absolute;translate:-50% -100%}.isle-actor__move{display:block;height:100%}.isle-actor img{display:block;-webkit-user-select:none;-moz-user-select:none;user-select:none;transform:scaleX(var(--flip,1));filter:drop-shadow(0 2px 1.5px rgba(30,40,60,.28))}.isle-actor--npc img{height:100%;width:auto;transform-origin:50% 100%;animation:isle-cheer 1.5s ease-in-out var(--d,0s) infinite}.isle-actor--ship img{width:100%;height:auto;transform-origin:50% 90%;animation:isle-bob 3.4s ease-in-out var(--d,0s) infinite}.isle-actor.is-patrol .isle-actor__move{--drift:calc(var(--flip, 1) * 42%);animation:isle-patrol 22s ease-in-out var(--d,0s) infinite}@keyframes isle-cheer{0%,to{transform:scaleX(var(--flip,1)) rotate(-3deg)}25%{transform:scaleX(var(--flip,1)) translateY(-5%) rotate(0deg)}50%{transform:scaleX(var(--flip,1)) rotate(3deg)}75%{transform:scaleX(var(--flip,1)) translateY(-3%) rotate(0deg)}}@keyframes isle-bob{0%,to{transform:scaleX(var(--flip,1)) translateY(0) rotate(-1.4deg)}50%{transform:scaleX(var(--flip,1)) translateY(-3%) rotate(1.4deg)}}@keyframes isle-patrol{0%,to{transform:translateX(0) scaleX(1)}45%{transform:translateX(var(--drift)) scaleX(1)}50%{transform:translateX(var(--drift)) scaleX(-1)}95%{transform:translateX(0) scaleX(-1)}}@media (prefers-reduced-motion:reduce){.isle-actor img,.isle-actor.is-patrol .isle-actor__move{animation:none}}.isle-card__scene{margin:0 0 .7rem;padding:.4rem .7rem;border-left:3px solid #da251d;border-radius:8px;background:rgba(218,37,29,.07);color:var(--ink-2);font-size:.8rem;font-weight:700}.mapscreen{--map-h:calc(var(--app-h) - var(--topbar-h) - var(--announce-h, 0px));display:grid;grid-template-columns:300px minmax(0,1fr) 380px;height:var(--map-h);min-height:480px}.mapscreen__side{padding:1rem;overflow-y:auto;background:var(--cream);border-right:var(--stroke) solid var(--navy)}.mapscreen__side-head{display:none}.mapscreen__map{position:relative;min-width:0;background:#bfe9a8}.mapscreen__detail,.mapscreen__hint{border-left:var(--stroke) solid var(--navy);background:var(--cream);overflow-y:auto}.mapscreen__hint{padding:1.25rem 1rem}.mapscreen__fabs{display:none}.map-loading{width:100%;height:100%;background:repeating-linear-gradient(45deg,#bfe9a8,#bfe9a8 14px,#b2e09a 0,#b2e09a 28px)}.map-banner{position:absolute;top:4.25rem;left:50%;transform:translateX(-50%);z-index:5;max-width:90%}.mapsearch{position:absolute;top:.75rem;left:.75rem;z-index:7;width:min(420px,calc(100% - 15rem))}.mapsearch__box{position:relative;display:flex;align-items:center}.mapsearch__box>svg{position:absolute;left:.8rem;color:var(--navy);pointer-events:none}.mapsearch__box .input{padding-left:2.5rem;padding-right:2.6rem;background:var(--white);box-shadow:0 3px 0 rgba(43,35,80,.25)}.mapsearch__close{position:absolute;right:.35rem;width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:var(--navy);font-size:1.5rem;line-height:1;cursor:pointer}.mapsearch__results{margin-top:.4rem;max-height:min(60dvh,440px);overflow-y:auto;padding:.35rem 0;background:var(--white);border:var(--stroke) solid var(--navy);border-radius:var(--radius-sm);box-shadow:0 6px 0 rgba(43,35,80,.2)}.mapsearch__group+.mapsearch__group{border-top:1px dashed rgba(43,35,80,.25);padding-top:.25rem}.mapsearch__group .eyebrow{margin:.35rem .75rem 0}.mapsearch__row{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.6rem}.mapsearch__row>span{display:grid;grid-gap:.1rem;gap:.1rem}.mapsearch__note{margin:.4rem .75rem}.mapsearch__note-line{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem .45rem;margin-top:.15rem;font-size:.8rem}.mapsearch__note-line .badge{font-size:.72rem}.mapsearch .notice{margin:.4rem .75rem}.fab-ghost.is-active{background:var(--gold)}.search__box{position:relative;display:flex;align-items:center}.search__box svg{position:absolute;left:.8rem;color:var(--navy)}.search__box .input{padding-left:2.5rem}.search__results{margin-top:.5rem;max-height:340px;overflow-y:auto;background:var(--white);border:var(--stroke) solid var(--navy);border-radius:var(--radius-sm)}.search__item{display:grid;grid-gap:.15rem;gap:.15rem;text-align:left;width:100%;padding:.6rem .75rem;min-height:var(--tap);border:0;background:transparent;font:inherit;color:inherit;cursor:pointer}.search__item:hover{background:var(--paper)}.search__item .badge{justify-self:start}.search__attribution{font-size:.72rem;color:var(--muted);text-align:right}.filters{display:grid;grid-template-columns:1fr 1fr;grid-gap:.5rem;gap:.5rem;margin:1rem 0}.inview__list{margin-top:.25rem}.list-tabs{display:grid;grid-template-columns:1fr 1fr;grid-gap:.25rem;gap:.25rem;margin-bottom:.75rem;padding:.25rem;border:2px solid var(--navy);border-radius:999px;background:var(--white)}.list-tabs button{min-height:38px;padding:.2rem .6rem;border:0;border-radius:999px;background:transparent;color:var(--navy);font-family:var(--font-display);font-size:.85rem;font-weight:800;cursor:pointer}.list-tabs button[aria-selected=true]{background:var(--navy);color:var(--white)}.fav-list__row{display:flex;align-items:center;gap:.25rem}.fav-list__row .inview__item{flex:1 1;min-width:0}.fav-list__remove{flex:none;width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:var(--muted);font-weight:800;cursor:pointer}.fav-list__remove:hover:not(:disabled){background:#ffe1ea;color:#c81e55}.inview__item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:.6rem;gap:.6rem;width:100%;min-height:var(--tap);padding:.25rem .5rem;border:2px solid transparent;background:transparent;font:inherit;font-weight:700;color:inherit;text-align:left;cursor:pointer;border-radius:var(--radius-sm)}.inview__item.is-selected,.inview__item:hover{background:var(--white);border-color:var(--navy)}.stack-list__hint{margin:0 0 .6rem;font-size:.85rem}.stack-list__filters{display:flex;gap:.4rem;margin:0 -.2rem .7rem;padding:.2rem;overflow-x:auto;scrollbar-width:none}.stack-list__filter{--chip:var(--navy);flex:none;display:inline-flex;align-items:center;gap:.35rem;min-height:34px;padding:.2rem .4rem .2rem .75rem;border:2px solid var(--navy);border-radius:999px;background:var(--white);color:var(--navy);font:inherit;font-size:.82rem;font-weight:800;cursor:pointer;box-shadow:0 2px 0 rgba(43,35,80,.18)}.stack-list__filter b{min-width:1.4rem;padding:0 .35rem;border-radius:999px;background:var(--chip);color:var(--white);font-size:.75rem;text-align:center}.stack-list__filter--free{--chip:var(--green-2)}.stack-list__filter--mine{--chip:var(--orange)}.stack-list__filter--owned{--chip:#8a84a8}.stack-list__filter.is-on{background:var(--gold)}.stack-list__filter:focus-visible{outline:3px solid var(--orange);outline-offset:2px}.stack-list__items{display:grid;grid-gap:.5rem;gap:.5rem;margin:0;padding:0;list-style:none}.stack-card{--state:#a49fbd;display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;grid-gap:.7rem;gap:.7rem;width:100%;padding:.45rem .55rem .45rem .45rem;border:2px solid var(--navy);border-left:7px solid var(--state);border-radius:16px;background:var(--white);color:var(--navy);font:inherit;text-align:left;cursor:pointer;box-shadow:0 3px 0 rgba(43,35,80,.18);transition:translate .12s var(--spring),box-shadow .12s}.stack-card:active{translate:0 2px;box-shadow:0 1px 0 rgba(43,35,80,.18)}.stack-card:focus-visible{outline:3px solid var(--orange);outline-offset:2px}.stack-card--free{--state:var(--green)}.stack-card--mine{--state:var(--orange);background:linear-gradient(90deg,#fff1e0,var(--white) 60%)}.stack-card__thumb{display:grid;place-items:center;width:56px;height:56px;overflow:hidden;border:2px solid var(--navy);border-radius:12px;background:var(--state);color:var(--white)}.stack-card__thumb img{width:100%;height:100%;object-fit:cover}.stack-card__main{display:grid;grid-gap:.1rem;gap:.1rem;min-width:0}.stack-card__name{font-weight:800;line-height:1.25}.stack-card__kind,.stack-card__name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.stack-card__kind{color:var(--muted);font-size:.78rem;font-weight:700}.stack-card__tags{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.15rem}.stack-tag{display:inline-flex;align-items:center;gap:.25rem;max-width:100%;padding:.05rem .45rem;overflow:hidden;border-radius:999px;background:#eceaf4;font-size:.7rem;font-weight:800;white-space:nowrap;text-overflow:ellipsis}.stack-tag--owner{padding-left:.1rem}.stack-tag--free{background:#d9f6e4;color:#12723b}.stack-tag--mine{background:#ffe2c4;color:#a24a00}.stack-tag--deal{background:#ffe1ec;color:var(--pink-2)}.stack-tag--up{background:#fff1c2;color:#9a6a00}.stack-tag--gift{background:#ece6ff;color:var(--purple-2)}.stack-card__side{display:flex;align-items:center;gap:.3rem}.stack-card__price{font-family:var(--font-display);font-size:.95rem;font-weight:900;white-space:nowrap}.stack-card__go{font-size:1.4rem;font-weight:900;line-height:1;color:var(--muted)}.legend{list-style:none;padding:0;display:grid;grid-gap:.5rem;gap:.5rem}.legend li{display:flex;align-items:center;gap:.6rem;font-weight:700}.pin{position:relative;display:grid;place-items:center;width:36px;height:36px;border-radius:50% 50% 50% 8px;rotate:-45deg;border:var(--stroke) solid var(--navy);box-shadow:0 3px 0 var(--navy);color:var(--white);cursor:pointer;transition:scale .2s var(--spring)}.pin>svg:first-child,.pin__crown{rotate:45deg}.pin__crown{position:absolute;top:-12px;right:-10px;color:var(--gold);filter:drop-shadow(0 0 1px var(--navy)) drop-shadow(0 0 1px var(--navy))}.pin--available{background:var(--green)}.pin--unaffordable{background:#c026ff;color:var(--white);box-shadow:0 3px 0 var(--navy),0 0 10px rgba(192,38,255,.55)}.pin--owned{background:#a49fbd}.pin--mine{background:var(--orange)}.pin--selected{scale:1.3;z-index:2;animation:pin-bounce .9s var(--spring) infinite alternate}@keyframes pin-bounce{to{translate:0 -6px}}.pin-beacon{position:absolute;bottom:-10px;left:50%;z-index:-1;width:64px;height:22px;margin-left:-32px;border-radius:50%;background:radial-gradient(ellipse,rgba(255,92,154,.45),rgba(255,92,154,0) 70%);pointer-events:none}.pin-beacon:after,.pin-beacon:before{content:"";position:absolute;inset:0;border:3px solid var(--pink);border-radius:50%;animation:pin-beacon 1.6s ease-out infinite}.pin-beacon:after{animation-delay:.8s}@keyframes pin-beacon{0%{scale:.3;opacity:1}to{scale:1.5;opacity:0}}@media (prefers-reduced-motion:reduce){.pin-beacon:after,.pin-beacon:before{animation:none;opacity:.8}}.pin-wrap{position:relative;display:grid;place-items:center}.pin--bargain{background:linear-gradient(135deg,#19b45a 30%,#ffd34d);box-shadow:0 3px 0 var(--navy),0 0 0 3px #ffd34d,0 0 12px 4px rgba(255,211,77,.85)}.photo-pin--bargain{border-color:#ffd34d;box-shadow:0 0 0 3px #19b45a,0 0 14px 5px rgba(255,211,77,.9)}.pin-wrap--bargain:before{content:"";position:absolute;top:50%;left:50%;z-index:-1;width:60px;height:60px;margin:-30px 0 0 -30px;border-radius:50%;background:radial-gradient(circle,rgba(255,211,77,.7),rgba(255,211,77,0) 70%);opacity:.35;pointer-events:none;animation:bargain-glow 1.6s ease-in-out infinite alternate}@keyframes bargain-glow{to{opacity:1}}.bargain-tag{position:absolute;bottom:calc(100% + 4px);left:50%;translate:-50% 0;z-index:1;padding:.05rem .45rem;border:2px solid var(--navy);border-radius:999px;background:#19b45a;color:#fff;font-size:.66rem;font-weight:900;white-space:nowrap;box-shadow:0 2px 0 var(--navy);pointer-events:none}.bargain-tag.listed-tag{background:#2563eb}.bargain-tag.price-up-tag{bottom:calc(100% + 1.45rem);background:#f5b700;color:var(--navy)}.pin-wrap--listed:before{content:"";top:50%;left:50%;z-index:-1;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;background:radial-gradient(circle,rgba(37,99,235,.55),rgba(37,99,235,0) 70%);opacity:.45}.gift-tag,.pin-wrap--listed:before{position:absolute;pointer-events:none}.gift-tag{top:-10px;right:-12px;z-index:4;display:grid;place-items:center;width:22px;height:22px;border:2px solid var(--navy);border-radius:50%;background:#ff5c8a;color:#fff;box-shadow:0 2px 0 var(--navy);animation:gift-bob 1.6s ease-in-out infinite}@keyframes gift-bob{50%{translate:0 -3px}}@media (prefers-reduced-motion:reduce){.gift-tag{animation:none}}.pin-wrap--stack>.gift-tag{right:auto;left:-12px}.inview__gift{color:#c81e55;font-weight:800}.pin-face{position:absolute;top:-8px;right:-10px;z-index:2;display:grid;pointer-events:none;filter:drop-shadow(0 1px 0 rgba(43,35,80,.45))}@media (prefers-reduced-motion:reduce){.pin-wrap--bargain:before{animation:none}}.pin-label{position:absolute;top:calc(100% + 6px);left:50%;translate:-50% 0;max-width:160px;padding:.1rem .5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:800;color:var(--navy);background:rgba(255,255,255,.92);border:2px solid var(--navy);border-radius:999px;pointer-events:none}.stack-pin{position:relative;display:block;width:36px;height:36px;cursor:pointer;transition:scale .2s var(--spring)}.stack-pin:hover{scale:1.08}.stack-pin__back,.stack-pin__top{position:absolute;inset:0;display:grid;place-items:center;border-radius:50% 50% 50% 8px;rotate:-45deg;border:var(--stroke) solid var(--navy)}.stack-pin__back{background:var(--white);translate:-7px -3px}.stack-pin__back+.stack-pin__back{translate:7px -3px}.stack-pin__top{color:var(--white);box-shadow:0 3px 0 var(--navy)}.stack-pin__top .pavatar,.stack-pin__top>svg{rotate:45deg}.stack-pin__top--available{background:var(--green)}.stack-pin__top--unaffordable{background:#c026ff;color:var(--white);box-shadow:0 3px 0 var(--navy),0 0 8px rgba(192,38,255,.45)}.stack-pin__top--owned{background:#a49fbd}.stack-pin__top--mine{background:var(--orange)}.stack-pin__count{position:absolute;top:-12px;right:-14px;z-index:3;min-width:22px;height:22px;padding:0 5px;border:2px solid var(--white);border-radius:999px;background:var(--navy);color:var(--white);font-size:.75rem;font-weight:900;line-height:18px;text-align:center;box-shadow:0 2px 0 rgba(43,35,80,.35)}.stack-pin__count--free{background:#19b45a}.stack-pin__boss{position:absolute;bottom:-6px;left:-18px;z-index:2;display:grid;place-items:center;border-radius:50%;box-shadow:0 2px 0 rgba(43,35,80,.35)}.pair-pin{position:relative;display:block;width:54px;height:38px;cursor:pointer;transition:scale .2s var(--spring)}.pair-pin:hover{scale:1.08}.pair-pin__pin{position:absolute;display:grid;place-items:center;color:var(--white);border:var(--stroke) solid var(--navy);border-radius:50% 50% 50% 8px;rotate:var(--tilt);box-shadow:0 3px 0 var(--navy)}.pair-pin__pin .pavatar,.pair-pin__pin>svg{rotate:calc(-1 * var(--tilt))}.pair-pin__pin--back{--tilt:-66deg;left:0;top:6px;width:28px;height:28px}.pair-pin__pin--front{--tilt:-22deg;right:0;top:0;z-index:1;width:32px;height:32px}.pair-pin__pin--available{background:var(--green)}.pair-pin__pin--unaffordable{background:#c026ff;color:var(--white);box-shadow:0 2px 0 var(--navy),0 0 8px rgba(192,38,255,.45)}.pair-pin__pin--owned{background:#a49fbd}.pair-pin__pin--mine{background:var(--orange)}.pair-pin__boss{left:auto;right:-18px;bottom:-8px}.photo-pin{position:relative;display:block;width:50px;height:50px;margin-bottom:9px;border-radius:50%;border:4px solid var(--green);outline:2px solid var(--navy);background:var(--paper);box-shadow:0 4px 0 rgba(43,35,80,.35);cursor:pointer;transition:scale .2s var(--spring)}.photo-pin:after{content:"";position:absolute;left:50%;bottom:-13px;translate:-50% 0;border:7px solid transparent;border-top:9px solid var(--navy)}.photo-pin img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;pointer-events:none}.photo-pin--owned{border-color:#a49fbd}.photo-pin--owned img{filter:saturate(.55)}.photo-pin--mine{border-color:var(--orange)}.photo-pin__badge{position:absolute;right:-8px;bottom:-6px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;color:var(--white);background:var(--navy);border:2px solid var(--white)}.photo-pin__crown{position:absolute;top:-14px;right:-6px;color:var(--gold);filter:drop-shadow(0 0 1px var(--navy)) drop-shadow(0 0 1px var(--navy))}.photo-pin.pin--selected{scale:1.25}.owner-pin{position:relative;display:grid;place-items:center;margin-bottom:8px;cursor:pointer;transition:scale .2s var(--spring)}.owner-pin:after{content:"";position:absolute;left:50%;bottom:-11px;translate:-50% 0;border:6px solid transparent;border-top:8px solid var(--navy)}.owner-pin--mine .pavatar__frame{box-shadow:0 3px 0 rgba(43,35,80,.35),0 0 0 3px var(--orange)}.owner-pin__badge{position:absolute;right:-7px;bottom:-4px;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;color:var(--white);background:var(--navy);border:2px solid var(--white)}.owner-pin--mine .owner-pin__badge{background:var(--orange);border-color:var(--navy)}.owner-pin.pin--selected{scale:1.25}.pin-label--owner{border-radius:10px;text-align:center;line-height:1.2}.pin-label__owner{display:block;overflow:hidden;text-overflow:ellipsis;font-size:.62rem;font-weight:700;color:var(--purple-2,#6b5bd2)}@media (hover:hover){.owner-pin:hover,.photo-pin:hover,.pin:hover{scale:1.12}}.me-dot{pointer-events:none}.player-pin{position:relative;display:grid;place-items:center;padding-bottom:10px;cursor:pointer;transition:scale .15s var(--spring)}.player-pin__drop{display:grid;place-items:center;width:44px;height:44px;border:3px solid var(--navy);border-radius:50% 50% 50% 4px;rotate:-45deg;background:linear-gradient(135deg,#5fe0ff,#1f7bff);box-shadow:-2px 3px 0 rgba(43,35,80,.35)}.player-pin__face{display:grid;place-items:center;rotate:45deg}.player-pin__face .pavatar__frame{box-shadow:none}.player-pin__ground{position:absolute;bottom:-3px;left:50%;width:16px;height:6px;margin-left:-8px;border-radius:50%;background:rgba(20,16,40,.45);pointer-events:none}.player-pin__ground:after{content:"";position:absolute;inset:-5px -9px;border:2px solid #5fe0ff;border-radius:50%;animation:player-ripple 1.8s ease-out infinite}@keyframes player-ripple{0%{scale:.4;opacity:1}to{scale:1.6;opacity:0}}.player-pin--friend .player-pin__drop{background:linear-gradient(135deg,#ffc2d8,#ff5c9a)}.player-pin--friend .player-pin__ground:after{border-color:#ff8fb8}.player-pin--away .player-pin__drop{background:linear-gradient(135deg,#c9cddc,#8b90a8)}.player-pin--away .player-pin__ground:after{display:none}@media (prefers-reduced-motion:reduce){.me-dot__ring,.player-pin__ground:after{animation:none}}@media (hover:hover){.crowd-pin:hover,.player-pin:hover{scale:1.1}}.crowd-pin{position:relative;display:grid;place-items:center;width:50px;height:50px;cursor:pointer;transition:scale .15s var(--spring)}.crowd-pin__friends,.player-pin__friend{position:absolute;bottom:-4px;right:-8px;padding:0 .25rem;border:2px solid var(--navy);border-radius:999px;background:#ffe1ec;font-size:.68rem;font-weight:900;line-height:1.3;color:var(--navy)}.player-pin__friend{top:-6px;bottom:auto}.player-pin--away .pavatar{filter:grayscale(.8);opacity:.75}.player-pin__away{position:absolute;top:-6px;left:-8px;font-size:.8rem;line-height:1}.crowd-pin--friends .crowd-pin__stack{box-shadow:0 3px 0 rgba(43,35,80,.35),0 0 0 7px rgba(255,143,184,.55)}.crowd-pin__stack{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:var(--white);background:radial-gradient(circle at 35% 30%,#a48cff,var(--purple-2));border:3px solid var(--white);outline:2px solid var(--navy);box-shadow:0 3px 0 rgba(43,35,80,.35),0 0 0 7px rgba(138,108,255,.28)}.crowd-pin__count{top:-6px;right:-10px;min-width:26px;padding:0 .35rem;border:2px solid var(--navy);background:var(--gold);color:var(--navy);font-family:var(--font-display);font-size:.78rem;font-weight:900;line-height:1.35;text-align:center}.crowd-pin__count,.player-pin__name{position:absolute;border-radius:999px}.player-pin__name{top:calc(100% + 4px);left:50%;translate:-50% 0;max-width:110px;padding:0 .45rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-weight:800;color:var(--white);background:rgba(43,35,80,.85)}.me-dot{position:relative;display:block;width:20px;height:20px;border-radius:50%;background:#2f80ff;border:3px solid var(--white);box-shadow:0 0 0 2px rgba(47,128,255,.35)}.me-dot--avatar{display:grid;place-items:center;width:44px;height:44px;background:none;border:0;box-shadow:none}.me-dot--avatar .pavatar__frame{box-shadow:0 3px 0 rgba(43,35,80,.35),0 0 0 3px #2f80ff}.me-dot__ring{position:absolute;inset:-6px;border:3px solid #2f80ff;border-radius:50%;animation:me-pulse 2s ease-out infinite}.me-dot__tag{position:absolute;top:calc(100% + 3px);left:50%;translate:-50% 0;padding:0 .45rem;border:2px solid var(--white);border-radius:999px;background:#2f80ff;color:var(--white);font-size:.66rem;font-weight:900;line-height:1.4;white-space:nowrap}.me-dot__pulse{position:absolute;inset:-14px;border-radius:50%;background:rgba(47,128,255,.25);animation:me-pulse 2s ease-out infinite}@keyframes me-pulse{0%{scale:.4;opacity:1}to{scale:1.4;opacity:0}}.osm-map{position:absolute;inset:0}.osm-map__canvas{width:100%;height:100%}.osm-marker--tap{cursor:pointer}.territory-marker{pointer-events:none!important}.territory{position:relative;display:block;width:0;height:0;pointer-events:none}.schematic>.territory{position:absolute}.territory__dot{position:absolute;left:0;top:0;width:11px;height:11px;transform:translate(-50%,-50%);border-radius:50%;background:#da251d;border:2px solid #fff;box-shadow:0 0 0 2px #da251d}.territory__card{position:absolute;left:0;top:8px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.12rem;width:max-content;max-width:5.6rem;padding:.22rem .38rem .28rem;border:2px solid var(--navy);border-radius:12px;background:#fff;box-shadow:0 2px 0 var(--navy);color:var(--navy);text-align:center;pointer-events:auto;cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent}.territory__flag{display:block;flex:none;width:22px;height:15px;border-radius:2px;box-shadow:0 0 0 1px rgba(43,35,80,.35)}.territory__name{font-size:.68rem;font-weight:800;line-height:1.15;letter-spacing:.01em;white-space:normal}.territory.is-flip .territory__card{transform:translateX(calc(-100% + 8px))}.osm-marker--tap:focus-visible{outline:3px solid var(--navy);outline-offset:4px;border-radius:12px}.osm-map--far .pin{scale:.7}.osm-map--far .player-pin__name{display:none}.osm-map .maplibregl-ctrl-attrib{font-size:.68rem}.map-chips{position:absolute;top:.75rem;right:.75rem;z-index:6;display:grid;justify-items:end;grid-gap:.4rem;gap:.4rem;pointer-events:none}.map-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .75rem;font-size:.8rem;font-weight:800;color:var(--navy);background:rgba(255,255,255,.95);border:2px solid var(--navy);border-radius:999px;box-shadow:0 3px 0 rgba(43,35,80,.25);animation:sheet-up .3s var(--spring)}.map-chip--mine{pointer-events:auto;cursor:pointer;font:inherit;font-size:.8rem;font-weight:800;background:#fff6d6;border-color:#b8860b}.map-chip__x{padding:.05rem .45rem;font-size:.72rem;color:var(--white);background:var(--navy);border-radius:999px}.fab-mine.is-active{background:var(--gold);color:var(--navy)}.fab-mine__short{display:none}@media (max-width:420px){.mapscreen__fabs .btn{padding-inline:.65rem}}@media (max-width:374px){.fab-mine__long{display:none}.fab-mine__short{display:inline}}.map-chip.map-chip--online{position:absolute;top:4.4rem;left:.75rem;z-index:6;pointer-events:none;gap:.3rem;padding:.15rem .5rem;font-size:.75rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.map-chip--npc{pointer-events:auto;text-decoration:none;background:#fff1f3}.map-chip__spin{width:12px;height:12px;border-radius:50%;border:2px solid var(--navy);border-right:2px solid transparent;animation:spin .8s linear infinite}@keyframes spin{to{rotate:1turn}}.map-locate{position:absolute;right:.75rem;bottom:2.25rem;z-index:6;display:grid;place-items:center;width:var(--tap);height:var(--tap);padding:0;border-radius:50%;color:#2f80ff;background:var(--white);border:var(--stroke) solid var(--navy);box-shadow:0 3px 0 var(--navy);cursor:pointer;transition:scale .15s var(--spring)}.map-locate:active{scale:.92}.map-locate.is-busy svg{animation:spin 1.2s linear infinite}.mapscreen__map[data-view=google] .map-locate{bottom:7.5rem}.inview__name{display:grid;min-width:0}.inview__name,.inview__name small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inview__name small{font-weight:600;color:var(--muted)}.place-photo{margin:.75rem 0 0}.place-photo img{display:block;width:100%;aspect-ratio:16/10;max-height:200px;object-fit:cover;border:var(--stroke) solid var(--navy);border-radius:var(--radius-sm);background:var(--paper)}.place-photo figcaption{margin-top:.25rem;font-size:.7rem;color:var(--muted);text-align:right}.schematic{position:absolute;inset:0;overflow:hidden;touch-action:none;cursor:-webkit-grab;cursor:grab;background-color:#bfe9a8;background-image:linear-gradient(rgba(255,255,255,.55) 6px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.55) 6px,transparent 0);background-size:48px 48px}.schematic:active{cursor:-webkit-grabbing;cursor:grabbing}.schematic__pin{position:absolute;padding:0;margin:-18px 0 0 -18px}.schematic__pin:after{content:"";position:absolute;inset:-8px}.schematic__me,.schematic__player{position:absolute;translate:-50% -50%}.schematic__me{pointer-events:none}.schematic__player{z-index:3;padding:0;border:0;background:none;font:inherit}.schematic__controls{position:absolute;right:.75rem;bottom:5.75rem;display:grid;grid-gap:.45rem;gap:.45rem}.schematic__controls .icon-btn{font-size:1.5rem;font-weight:800}.schematic__note{position:absolute;left:.75rem;bottom:.5rem;margin:0;font-size:.75rem;font-weight:700;color:var(--navy);background:rgba(255,255,255,.85);border:2px solid var(--navy);padding:.15rem .6rem;border-radius:999px}.sheet{display:flex;flex-direction:column;min-height:100%}.sheet__handle{display:none}.sheet__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;padding:.7rem .85rem 0}.sheet__head h2{margin:.2rem 0 0;font-size:1.15rem;line-height:1.2}.sheet__body{padding:.35rem .75rem .9rem}.sheet__body .player-card{width:100%}.sheet__footer{padding:.55rem .85rem calc(.55rem + env(safe-area-inset-bottom));border-top:2px dashed var(--line)}.property__head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:.4rem;gap:.4rem}.mapscreen__detail .property>.muted{margin:.1rem 0 0;font-size:.78rem}.mapscreen__detail .pstats{margin:.4rem 0;gap:.3rem}.mapscreen__detail .pstats__tile{padding:.35rem .45rem}.mapscreen__detail .pstats__tile .coin{font-size:.95rem}.mapscreen__detail .kv{gap:.2rem .5rem;font-size:.82rem}.mapscreen__detail .notice{margin:.4rem 0;padding:.5rem .65rem .5rem 2.45rem;font-size:.78rem}.mapscreen__detail .notice:before{top:.48rem;left:.5rem;width:1.25rem;height:1.25rem;font-size:.78rem}.mapscreen__detail .property__actions{gap:.4rem;margin:.55rem 0 .2rem}.mapscreen__detail .property__fineprint{margin:.85rem 0 0;font-size:.7rem}.mapscreen__detail .phist{margin-top:.55rem;padding-top:.4rem}.mapscreen__detail .phist h2{font-size:.86rem}.mapscreen__detail .phist__list{max-height:12rem}.mapscreen__detail .report-place{margin-top:.85rem;margin-bottom:.15rem}.property__actions{display:grid;grid-gap:.6rem;gap:.6rem;margin:1rem 0 .35rem}.property__gift{margin:.75rem 0 0}.report-place{margin-top:1rem;margin-bottom:.2rem}.property__fineprint{margin:1.1rem 0 0;font-size:.78rem}@media (max-width:1100px){.mapscreen{grid-template-columns:280px minmax(0,1fr) 340px}}@media (max-width:860px){.mapscreen{--map-h:calc(var(--app-h) - var(--topbar-h) - env(safe-area-inset-top) - var(--nav-space) - var(--announce-h, 0px) + 10px);grid-template-columns:1fr}html[data-screen=map] .main{background:#bfe9a8}.mapscreen__hint{display:none}.mapscreen__detail,.mapscreen__side{position:fixed;left:0;right:0;bottom:calc(var(--nav-space) - 6px);border:var(--stroke) solid var(--navy);border-bottom:0;border-radius:26px 26px 0 0;box-shadow:0 -6px 0 rgba(43,35,80,.2);background:var(--cream)}.mapscreen__side{display:none;max-height:70dvh;z-index:35;padding-bottom:1.5rem}.mapscreen__side.is-open{display:block;animation:sheet-up .3s var(--spring)}.mapscreen__side-head{position:-webkit-sticky;position:sticky;top:-1rem;z-index:2;display:flex;align-items:center;justify-content:space-between;margin:-1rem -1rem .6rem;padding:.7rem .8rem .5rem 1rem;background:var(--cream);border-bottom:2px dashed rgba(43,35,80,.15)}.mapscreen__side-head h2{margin:0;font-size:1.05rem}.mapsearch{display:none;right:.75rem;width:auto}.mapsearch.is-open{display:block;animation:sheet-up .25s var(--spring)}.map-banner{top:3.5rem}.mapscreen__fabs{display:flex;gap:.5rem;position:absolute;top:.75rem;left:.75rem;z-index:6}.map-chips{top:3.6rem;right:.6rem;gap:.3rem}.map-chip{padding:.2rem .55rem;font-size:.72rem}.map-chip.map-chip--online{top:3.6rem;left:.6rem}.fab-ghost{background:var(--white)}.mapscreen__detail{max-height:68dvh;min-height:0;z-index:36;overflow:hidden;animation:sheet-up .34s var(--spring)}.mapscreen__detail .sheet__body{flex:1 1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.sheet__handle,.sheet__head{touch-action:none}.sheet__handle{display:grid;place-items:center;height:24px;cursor:-webkit-grab;cursor:grab}.sheet__handle span{width:52px;height:6px;border-radius:3px;background:var(--navy);opacity:.35}.sheet__head{padding-top:0}}@keyframes sheet-up{0%{translate:0 40%;opacity:0}}.citypick{position:relative;display:grid;grid-gap:.3rem;gap:.3rem;margin-bottom:.75rem}.citypick>label{font-weight:800}.citypick__box{position:relative;display:flex;align-items:center}.citypick__box svg{position:absolute;left:.8rem;color:var(--navy);pointer-events:none}.citypick__box .input{padding-left:2.5rem}.citypick__list{position:absolute;top:100%;left:0;right:0;z-index:20;margin:.3rem 0 0;padding:.25rem;list-style:none;max-height:320px;overflow-y:auto;background:var(--white);border:var(--stroke) solid var(--navy);border-radius:var(--radius-sm);box-shadow:0 6px 0 rgba(43,35,80,.18);animation:citypick-in .14s ease-out}@keyframes citypick-in{0%{opacity:0;transform:translateY(-4px)}}.citypick__opt{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:var(--tap);padding:.35rem .6rem;border-radius:10px;cursor:pointer}.citypick__opt>span:first-child{display:grid}.citypick__opt small{color:var(--muted);font-weight:600}.citypick__note,.map-nation{margin:0;color:var(--navy);font-size:.78rem;font-weight:800}.map-nation{position:absolute;top:.75rem;left:50%;z-index:6;width:max-content;max-width:calc(100% - 6rem);translate:-50% 0;margin:0;padding:.28rem .6rem;border:2px solid var(--navy);border-radius:999px;background:var(--cream);pointer-events:none}@media (max-width:860px){.map-nation{top:4.6rem}}.citypick__opt.is-active{background:var(--paper)}.citypick__opt.is-current strong{color:var(--green-2)}.citypick__empty{padding:.6rem;color:var(--muted)}.filters__wide{grid-column:1/-1}.filters__afford{padding:.45rem .6rem;background:var(--white);border:2px solid var(--navy);border-radius:var(--radius-sm)}.gmap--moving *,.gmap--moving :after,.gmap--moving :before,.maplibregl-marker.is-offscreen *,.maplibregl-marker.is-offscreen :after,.maplibregl-marker.is-offscreen :before,.osm-map--moving .maplibregl-marker *,.osm-map--moving .maplibregl-marker :after,.osm-map--moving .maplibregl-marker :before{animation-play-state:paused!important}.pin-coins{display:none;position:absolute;inset:0;pointer-events:none}.map-near .pin-coins,.pin-coins--mine{display:block}.pin-coin{position:absolute;top:-8px;left:50%;width:20px;height:20px;margin-left:-10px;background:url(/img/coin-ancient.svg) 50%/contain no-repeat;pointer-events:none;opacity:0;animation:pin-coin 4.2s ease-out infinite;animation-delay:var(--coin-delay,0s)}.pin-coins .pin-coin:not(:first-child){display:none}.map-near .pin-coins>.pin-coin{display:block;width:18px;height:18px;margin-left:-9px;animation-name:pin-coin-rise;animation-duration:2.4s}.map-near .pin-coins>.pin-coin:nth-child(2){--coin-x:-11px;animation-delay:calc(var(--coin-delay, 0s) - .8s)}.map-near .pin-coins>.pin-coin:nth-child(3){--coin-x:10px;animation-delay:calc(var(--coin-delay, 0s) - 1.6s)}@keyframes pin-coin-rise{0%{opacity:0;translate:0 4px;scale:.5;rotate:y 0deg}15%{opacity:1;scale:1}to{opacity:0;translate:var(--coin-x,0) -44px;scale:.85;rotate:y 1turn}}@media (prefers-reduced-motion:reduce){.map-near .pin-coins>.pin-coin:not(:first-child){display:none}.map-near .pin-coins>.pin-coin,.pin-coin{animation:none;opacity:1;translate:0 -8px}}html[data-motion=reduced] .map-near .pin-coins>.pin-coin:not(:first-child){display:none}html[data-motion=reduced] .map-near .pin-coins>.pin-coin,html[data-motion=reduced] .pin-coin{animation:none;opacity:1;translate:0 -8px}@keyframes pin-coin{0%,62%{opacity:0;translate:0 6px;scale:.6;rotate:y 0deg}70%{opacity:1;scale:1}to{opacity:0;translate:0 -32px;scale:.9;rotate:y 1turn}}html[data-daypart=night] .map-chip,html[data-daypart=night] .map-locate,html[data-daypart=night] .mapscreen .fab-ghost:not(.is-active),html[data-daypart=night] .mapsearch__box .input{color:#e8ecf8;background:rgba(24,30,50,.95);border-color:#070a14;box-shadow:0 3px 0 rgba(0,0,0,.45)}html[data-daypart=night] .map-chip--mine{color:#ffe08a;background:rgba(58,46,14,.92);border-color:#d8a520}html[data-daypart=night] .map-chip--npc{background:rgba(64,26,44,.92)}html[data-daypart=night] .map-chip__x{color:#161c2c;background:#e8ecf8}html[data-daypart=night] .map-chip__spin{border-color:#e8ecf8 transparent #e8ecf8 #e8ecf8}html[data-daypart=night] .map-locate{color:#8dbaff}html[data-daypart=night] .mapsearch__box>svg{color:#c6cde0}html[data-daypart=night] .mapsearch__box .input::placeholder{color:#8f98b3}html[data-daypart=night] .osm-map .maplibregl-ctrl-attrib{color:#9aa4bd;background:rgba(16,20,33,.8)}html[data-daypart=night] .osm-map .maplibregl-ctrl-attrib a{color:#c6cde0}html[data-daypart=night] .osm-map .maplibregl-ctrl-attrib-button{filter:invert(.9)}.treasure-pin{position:relative;display:grid;justify-items:center;grid-gap:2px;gap:2px;cursor:pointer;transition:scale .15s var(--spring)}.treasure-pin:hover{scale:1.08}.treasure-pin__chest{position:relative}.treasure-pin__pulse{position:absolute;top:36px;left:50%;width:56px;height:18px;margin-left:-28px;border:2px solid rgba(255,201,60,.9);border-radius:50%;animation:treasure-ripple 1.8s ease-out infinite;pointer-events:none}.treasure-pin__label{padding:0 .45rem;border:2px solid var(--navy);border-radius:999px;background:linear-gradient(180deg,#fff6c9,#ffd84a);color:var(--navy);font-size:.68rem;font-weight:900;white-space:nowrap;box-shadow:0 2px 0 var(--navy)}.treasure-pin--found .treasure-pin__label{background:#e8f7ec}@keyframes treasure-ripple{0%{opacity:1;scale:.5}to{opacity:0;scale:1.5}}@media (prefers-reduced-motion:reduce){.treasure-pin__pulse{animation:none;opacity:.6}}.schematic__treasure{position:absolute;z-index:4;padding:0;border:0;background:none;translate:-50% -100%}.schematic__ring{position:absolute;z-index:1;border:3px solid #c2410c;border-radius:50%;background:rgba(255,201,60,.18);translate:-50% -50%;pointer-events:none}.map-chip--treasure{display:inline-flex;align-items:center;gap:.3rem;pointer-events:auto;cursor:pointer;font:inherit;font-size:.8rem;font-weight:800;background:#fff1c2;border-color:#b8860b}.flash-pin{position:relative;display:grid;justify-items:center;grid-gap:2px;gap:2px;cursor:pointer;transition:scale .15s var(--spring)}.flash-pin:hover{scale:1.08}.flash-pin__ring{position:absolute;top:0;left:50%;width:48px;height:48px;margin-left:-24px;border-radius:50%;background:rgba(255,82,40,.45);animation:flash-ring 1.4s ease-out infinite;pointer-events:none}.flash-pin__badge{position:relative;display:grid;place-items:center;width:48px;height:48px;border:3px solid var(--navy);border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff1a8,#ff8a3d 55%,#e5381e);box-shadow:0 3px 0 var(--navy);font-size:1.6rem;animation:flash-bob 1.1s ease-in-out infinite}.flash-pin__label{position:relative;padding:0 .45rem;border:2px solid var(--navy);border-radius:999px;background:#e5381e;color:#fff;font-size:.7rem;font-weight:900;white-space:nowrap}@keyframes flash-ring{0%{scale:.8;opacity:.9}to{scale:2.2;opacity:0}}@media (prefers-reduced-motion:reduce){.flash-pin__badge,.flash-pin__ring{animation:none}}.map-chip--flash{background:#e5381e;color:#fff}