@layer reset,base,components,pages,states,responsive;@layer refinement{.map-detail{padding-top:8px}.map-detail__navigation{justify-content:space-between;align-items:center;gap:20px;padding-block:14px 32px;display:flex}.map-detail button{font:inherit;cursor:pointer}.map-detail__navigation button,.map-share{min-height:44px;color:var(--text-primary);background:0 0;border:0;justify-content:center;align-items:center;gap:12px;font-size:.9rem;display:inline-flex}.map-detail__navigation svg{width:20px}.map-detail__navigation>div button:first-child svg{rotate:180deg}.map-detail__navigation>div{align-items:center;gap:14px;display:flex}.map-detail__navigation>div button{border:1px solid var(--line);border-radius:50%;width:44px}.map-detail__navigation>div span{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.875rem}.map-detail__heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px;display:flex}.map-detail__heading p{color:var(--text-muted);margin-bottom:12px;font-size:.875rem}#map-collection-title:focus,.map-detail h1:focus{outline:none}.map-detail h1{letter-spacing:-.045em;overflow-wrap:anywhere;font-size:clamp(2rem,4.3vw,4rem);font-weight:550;line-height:1.08}.map-detail__tools{flex-shrink:0;align-items:center;gap:16px;display:flex}.map-share{border-bottom:1px solid var(--line-strong);padding:0 4px}.map-detail__body{grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:clamp(28px,5vw,72px);margin-bottom:90px;display:grid}.map-detail__visual{min-width:0}.map-detail__media{aspect-ratio:1.58;background:var(--surface-raised);border-radius:16px;position:relative;overflow:hidden}.map-scene{height:100%;position:relative}.map-scene__previous,.map-scene__current{position:absolute;inset:0}.map-scene img{object-fit:cover;width:100%;height:100%;display:block}.map-scene__previous{animation:map-scene-depart .52s var(--ease-travel) both}.map-scene__current.is-arriving{animation:map-scene-arrive .52s var(--ease-travel) both}.map-scene__loading{background:var(--surface-root);color:var(--text-primary);border-radius:8px;padding:8px 12px;font-size:.875rem;position:absolute;bottom:12px;left:12px}.map-detail__media>img{object-fit:cover;width:100%;height:100%;animation:.24s ease-out map-media-arrive;display:block}.map-detail__identity{justify-content:space-between;align-items:center;gap:20px;min-height:100px;padding-top:20px;display:flex}.map-detail__identity>img{object-fit:contain;width:auto;max-width:65%;max-height:72px}.map-detail__identity>span:last-child{color:var(--text-muted);font-size:.875rem}.map-detail__choices{min-width:0}.map-detail fieldset{border:0;min-width:0;margin:0 0 24px;padding:0}.map-detail legend{margin-bottom:12px;padding:0;font-size:.9rem;font-weight:580}.map-builds>div{background:var(--surface-soft);border-radius:12px;gap:4px;padding:4px;display:flex}.map-builds button{min-height:44px;color:var(--text-muted);background:0 0;border:0;border-radius:9px;flex:1;transition:background .2s,color .2s}.map-builds button[aria-pressed=true]{background:var(--text-primary);color:var(--surface-root)}.map-build-single,.map-version-single{justify-content:space-between;gap:20px;font-size:.9rem;display:flex}.map-version-single{margin-bottom:24px}.map-build-note{color:var(--text-muted);margin:14px 0 28px;font-size:.875rem;line-height:1.6}.map-versions>div{flex-wrap:wrap;gap:10px;display:flex}.map-versions button{border:1px solid var(--line-strong);color:var(--text-muted);background:0 0;border-radius:10px;flex:1 0 44%;align-items:center;gap:12px;min-height:60px;padding:8px;transition:border-color .2s,background .2s;display:flex}.map-versions img,.map-versions .map-media-fallback{object-fit:contain;border-radius:8px;flex-shrink:0;width:40px;height:40px}.map-versions button svg{fill:none;stroke:currentColor;stroke-width:2px;opacity:0;width:18px;margin-left:auto}.map-versions button[aria-pressed=true]{border-color:var(--text-primary);color:var(--text-primary);background:var(--surface-soft)}.map-versions button[aria-pressed=true] svg{opacity:1}.map-modes>div{flex-wrap:wrap;gap:10px;display:flex}.map-modes button{border:1px solid var(--line-strong);min-height:44px;color:var(--text-muted);background:0 0;border-radius:8px;align-items:center;gap:9px;padding:10px 12px;font-size:.875rem;display:flex}.map-modes button>span{border:1px solid;border-radius:50%;width:10px;height:10px}.map-modes button[aria-pressed=true]{color:var(--text-primary);border-color:currentColor}.map-modes button[aria-pressed=true]>span{box-shadow:inset 0 0 0 2px var(--surface-root);background:currentColor}.map-mode-notice{border-left:2px solid var(--text-primary);color:var(--text-muted);margin:16px 0 0;padding:13px 0 13px 16px;font-size:.875rem;line-height:1.55}.map-availability{border-top:1px solid var(--line);padding-top:24px}.map-availability h2{font-size:1.125rem;font-weight:560}.map-availability p{color:var(--text-muted);margin:10px 0 16px;font-size:.9rem;line-height:1.6}.map-availability a{align-items:center;gap:12px;min-height:44px;font-size:.9rem;display:inline-flex}.map-availability .map-play-action{border:1px solid var(--text-primary);background:var(--text-primary);width:100%;min-height:62px;color:var(--surface-root);letter-spacing:-.01em;box-shadow:0 10px 30px color-mix(in srgb,var(--text-primary) 12%,transparent);transition:transform var(--duration-response) var(--ease-response),box-shadow var(--duration-response),background var(--duration-response);border-radius:12px;justify-content:space-between;padding:0 20px;font-weight:720;display:flex}.map-play-action svg{width:21px;transition:transform var(--duration-response) var(--ease-response)}.map-play-action:hover{box-shadow:0 14px 36px color-mix(in srgb,var(--text-primary) 18%,transparent);transform:translateY(-2px)}.map-play-action:hover svg{transform:translate(4px)}.map-play-action:active{transform:translateY(0)}.map-play-action:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.map-availability .map-duels-action{border:1px solid var(--line-strong);width:100%;color:var(--text-primary);transition:border-color var(--duration-response),background var(--duration-response);border-radius:12px;justify-content:center;margin-top:10px;text-decoration:none}.map-availability .map-duels-action:hover{border-color:var(--text-primary);background:var(--surface-raised)}.map-availability .map-duels-action:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.map-availability svg{width:18px}.map-feedback{margin-top:14px;font-size:.875rem;line-height:1.5}.map-media-fallback{background:var(--surface-raised);color:var(--text-primary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;height:100%;padding:12px;display:flex}.map-media-fallback small{color:var(--text-muted);font-size:.875rem}.map-media-fallback--title{text-align:left;letter-spacing:-.03em;background:0 0;width:auto;height:auto;padding:0;font-size:1.5rem}.map-media-fallback--icon{font-size:1.1rem}.map-transfer__fallback{text-align:center;place-items:center;width:100%;height:100%;padding:16px;font-size:1.5rem;display:grid}.map-transfer{z-index:200;background:var(--surface-raised);pointer-events:none;contain:layout paint;position:fixed;overflow:hidden}.map-save{z-index:4;color:#fff;cursor:pointer;background:#151515;border:1px solid #777;border-radius:10px;place-items:center;width:44px;height:44px;padding:0;transition:background .18s,color .18s;display:grid;position:absolute;top:10px;right:10px}.map-save svg{fill:none;width:20px;transition:fill .18s}.map-save:hover{background:#333}.map-save:active svg{transform:scale(.88)}.map-save[aria-pressed=true]{color:#111;background:#fff}.map-save[aria-pressed=true] svg{fill:currentColor}.map-save__hint{color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#111;border-radius:6px;padding:6px 10px;font-size:.8rem;transition:opacity .16s;position:absolute;top:calc(100% + 8px);right:0}.map-save:hover .map-save__hint,.map-save:focus-visible .map-save__hint{opacity:1}.map-save--panel{background:var(--surface-soft);color:var(--text-primary);border-color:var(--line-strong);position:relative;inset:auto}.map-save--panel:hover{background:var(--line)}.map-save--panel[aria-pressed=true]{background:var(--text-primary);color:var(--surface-root)}.destination-window{border:1px solid var(--line-strong);background:var(--surface-root);width:min(680px,100vw - 40px);max-height:calc(100dvh - 32px);color:var(--text-primary);border-radius:24px;padding:20px;overflow:auto}.destination-window::backdrop{background:#00000073}.destination-window header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;font-size:.9rem;display:flex}.destination-window .icon-button{width:44px;height:44px}.destination-window__media{aspect-ratio:1.58;background:var(--surface-raised);border-radius:16px;position:relative;overflow:hidden}.destination-window__media:after{content:"";z-index:2;width:var(--draw-progress,0%);background:var(--signal);height:3px;transition:width .24s cubic-bezier(.2,.78,.2,1);position:absolute;bottom:0;left:0}.destination-window figure{opacity:0;background:var(--surface-raised);margin:0;position:absolute;inset:0}.destination-window figure img{object-fit:cover;width:100%;height:100%;display:block}.destination-window figcaption{background:var(--surface-root);border-radius:8px;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 14px;display:flex;position:absolute;bottom:16px;left:16px;right:16px}.destination-window figcaption strong{letter-spacing:-.035em;font-size:clamp(1.1rem,3vw,1.65rem)}.destination-window figcaption span{white-space:nowrap;color:var(--text-muted);font-size:.8rem}.destination-window footer{justify-content:space-between;align-items:center;gap:20px;padding-top:16px;font-size:.9rem;display:flex}.destination-window footer button{border:0;border-bottom:1px solid var(--line-strong);min-height:44px;color:inherit;cursor:pointer;font:inherit;background:0 0}@keyframes map-media-arrive{0%{opacity:0}to{opacity:1}}@keyframes map-scene-depart{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.045)}}@keyframes map-scene-arrive{0%{opacity:0;transform:scale(.975)}to{opacity:1;transform:scale(1)}}@keyframes map-page-arrive{0%{opacity:.6;transform:translateY(8px)}to{opacity:1;transform:none}}.map-grid{animation:map-page-arrive .26s var(--ease-travel)}:is(.route-plane:has(.map-detail),.route-plane:has(.map-hub)){animation:none}@media (max-width:760px){.map-detail__body{grid-template-columns:1fr;gap:32px;margin-bottom:56px}.map-detail__heading{flex-wrap:wrap;align-items:flex-start;gap:16px;margin-bottom:24px}.map-detail__navigation{gap:10px;padding-block:12px 24px}.map-detail__navigation>div{gap:6px}.map-detail__navigation>div span{display:none}.map-detail__identity{min-height:80px}.map-detail__identity>img{max-height:56px}.map-detail__tools{gap:12px}.destination-window{border-radius:18px;width:calc(100vw - 24px);padding:14px}.destination-window figcaption{flex-wrap:wrap;padding:8px;bottom:8px;left:8px;right:8px}.destination-window footer{align-items:flex-start;font-size:.875rem}.map-availability .map-play-action{min-height:58px}}:root[data-motion=reduced] .map-grid,:root[data-motion=reduced] .map-scene__previous,:root[data-motion=reduced] .map-scene__current.is-arriving{animation:none}@media (prefers-reduced-motion:reduce){:root:not([data-motion]) .map-scene__previous,:root:not([data-motion]) .map-scene__current.is-arriving{animation:none}}:root[data-motion=reduced] .map-play-action,:root[data-motion=reduced] .map-play-action svg{transition:none}}
