.map-wrap{min-height:100vh;align-items:center;padding:32px 20px calc(60px + env(safe-area-inset-bottom, 0px))}.map-explorer,.map-wrap{display:flex;flex-direction:column}.map-explorer{width:100%;max-width:42rem;gap:28px}.map-hero{display:flex;flex-direction:column;gap:12px}.map-hero-title{font-size:clamp(2.1rem,9vw,3.2rem)}.map-learn-link{color:var(--slate-dim);font-size:.88rem}.map-learn-link a{color:var(--gold-soft);border-bottom:1px solid rgba(212,175,55,.3)}.map-learn-link a:hover{border-bottom-color:var(--gold)}.map-form{display:flex;flex-direction:column;gap:20px}.map-draw-cta{width:100%;text-align:center;font-size:16px}.map-draw-cta:disabled{opacity:.6;cursor:not-allowed}.map-form-note{color:var(--slate-dim);font-size:.8rem;text-align:center}.map-result{display:flex;flex-direction:column;gap:22px}.map-result:focus{outline:none}.map-summary{font-family:var(--serif);font-size:clamp(1.1rem,4.5vw,1.35rem);line-height:1.55;color:var(--slate)}.map-summary strong{color:var(--starlight);font-weight:500}.map-stage{display:contents}.map-column{display:flex;flex-direction:column;gap:14px;min-width:0}.map-frame{position:relative;width:100%;border:1px solid var(--line);border-radius:12px;padding:8px;background:rgba(13,18,38,.5)}.map-frame svg{display:block;width:100%;height:auto}@media (pointer:fine){.map-frame .planet-lines{cursor:pointer}}.map-hint{display:flex;align-items:center;gap:8px;color:var(--slate);font-size:.88rem}.map-hint:before{content:"✦";color:var(--gold);font-size:.66rem;line-height:1;flex:0 0 auto}.map-canvas{--draw-len:560px}.map-drawing .coastline,.map-drawing .graticule{animation:map-fade-in .7s ease-out .1s both}.map-drawing .planet-lines{stroke-dasharray:var(--draw-len);stroke-dashoffset:var(--draw-len);animation:map-draw 2.6s linear both}.map-drawing .planet-sun{animation-delay:.25s}.map-drawing .planet-moon{animation-delay:.43s}.map-drawing .planet-mercury{animation-delay:.61s}.map-drawing .planet-venus{animation-delay:.79s}.map-drawing .planet-mars{animation-delay:.97s}.map-drawing .planet-jupiter{animation-delay:1.15s}.map-drawing .planet-saturn{animation-delay:1.33s}.map-drawing .planet-uranus{animation-delay:1.51s}.map-drawing .planet-neptune{animation-delay:1.69s}.map-drawing .planet-pluto{animation-delay:1.87s}.map-drawing .legend,.map-drawing .places{animation:map-fade-in .8s ease-out 4.5s both}@keyframes map-fade-in{0%{opacity:0}to{opacity:1}}@keyframes map-draw{to{stroke-dashoffset:0}}.map-frame[data-highlight] .planet-lines{opacity:.22;transition:opacity .28s ease}.map-frame[data-highlight=jupiter] .planet-jupiter,.map-frame[data-highlight=mars] .planet-mars,.map-frame[data-highlight=mercury] .planet-mercury,.map-frame[data-highlight=moon] .planet-moon,.map-frame[data-highlight=neptune] .planet-neptune,.map-frame[data-highlight=pluto] .planet-pluto,.map-frame[data-highlight=saturn] .planet-saturn,.map-frame[data-highlight=sun] .planet-sun,.map-frame[data-highlight=uranus] .planet-uranus,.map-frame[data-highlight=venus] .planet-venus{opacity:1}.map-frame[data-highlight=jupiter] .planet-jupiter :is(line,polyline),.map-frame[data-highlight=mars] .planet-mars :is(line,polyline),.map-frame[data-highlight=mercury] .planet-mercury :is(line,polyline),.map-frame[data-highlight=moon] .planet-moon :is(line,polyline),.map-frame[data-highlight=neptune] .planet-neptune :is(line,polyline),.map-frame[data-highlight=pluto] .planet-pluto :is(line,polyline),.map-frame[data-highlight=saturn] .planet-saturn :is(line,polyline),.map-frame[data-highlight=sun] .planet-sun :is(line,polyline),.map-frame[data-highlight=uranus] .planet-uranus :is(line,polyline),.map-frame[data-highlight=venus] .planet-venus :is(line,polyline){opacity:1}.map-chips{display:flex;flex-wrap:wrap;gap:8px}.map-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 15px;font-size:.86rem}.map-chip-dot{width:9px;height:9px;border-radius:50%;flex:0 0 auto}.map-chip-orb{color:var(--gold);font-size:.62rem;line-height:1}@media (prefers-reduced-motion:no-preference){.map-chips-cue .map-chip{animation:map-chip-cue 1.4s ease-out;animation-delay:calc(4.6s + var(--chip-i, 0) * .05s)}}@keyframes map-chip-cue{0%,to{box-shadow:0 0 0 0 rgba(212,175,55,0)}35%{box-shadow:0 0 0 4px rgba(212,175,55,.16)}}.map-share{display:flex;flex-direction:column;gap:12px;margin-top:10px;padding-top:22px;border-top:1px solid var(--line)}.map-share-title{font-family:var(--serif);font-size:1.2rem;color:var(--starlight)}.map-share-sub{color:var(--slate);font-size:.92rem;line-height:1.6;max-width:52ch}.map-share-cta{align-self:flex-start;margin-top:4px;font-size:16px;min-height:44px}.map-share-cta:disabled{opacity:.6;cursor:not-allowed}.map-share-error{color:#e08a7a;font-size:.9rem;line-height:1.6}.map-share-result{display:flex;flex-direction:column;gap:16px;margin-top:4px}.map-share-preview{align-self:flex-start;max-height:340px;width:auto;max-width:100%;border:1px solid var(--line);border-radius:10px}.map-share-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.map-share-send{font-size:16px}.map-share-download{position:relative;display:inline-flex;align-items:center;min-height:44px;color:var(--gold-soft);font-size:.9rem;text-decoration:underline;-webkit-text-decoration-color:rgba(212,175,55,.3);text-decoration-color:rgba(212,175,55,.3);text-underline-offset:3px}.map-share-download:focus-visible,.map-share-download:hover{-webkit-text-decoration-color:var(--gold);text-decoration-color:var(--gold)}.map-redraw{align-self:flex-start;background:transparent;border:none;color:var(--slate);font-family:var(--sans);font-size:.86rem;letter-spacing:.02em;text-decoration:underline;text-underline-offset:3px;cursor:pointer;display:inline-flex;align-items:center;min-height:44px;padding:8px 10px;margin-left:-10px}.map-redraw:focus-visible,.map-redraw:hover{color:var(--gold-soft)}.map-panel{position:-webkit-sticky;position:sticky;bottom:0;z-index:20}.map-panel-empty{display:none;color:var(--slate-dim);font-family:var(--serif);font-style:italic;font-size:1rem;padding:4px 0}.map-dock{position:relative;display:flex;align-items:center;gap:14px;width:100%;min-height:62px;padding:18px 18px calc(14px + env(safe-area-inset-bottom, 0px));text-align:left;font-family:var(--sans);color:var(--starlight);cursor:pointer;border:none;border-top:1px solid var(--line);border-radius:16px 16px 0 0;background:rgba(8,11,26,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 -20px 48px -30px rgba(0,0,0,.9);transition:background .25s ease,border-color .25s ease}.map-dock:hover{background:rgba(12,16,36,.96);border-top-color:rgba(212,175,55,.4)}.map-dock:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}.map-dock-grip{position:absolute;top:8px;left:50%;translate:-50% 0;width:38px;height:3px;border-radius:999px;background:rgba(244,241,233,.28)}.map-dock-label{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}.map-dock-kicker{font-size:.62rem;font-weight:500;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-soft)}.map-dock-title{font-family:var(--serif);font-size:1.08rem;line-height:1.25;color:var(--starlight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-dock-arrow{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid rgba(212,175,55,.4);border-radius:999px;color:var(--gold-soft);font-size:.95rem;transition:border-color .25s ease,translate .25s ease}.map-dock:hover .map-dock-arrow{border-color:var(--gold);translate:0 -2px}@media (prefers-reduced-motion:no-preference){.map-dock-cue{animation:map-fade-in .7s ease-out 4.6s both}}.map-panel-open{position:fixed;left:0;right:0;bottom:0;z-index:30;max-height:66vh;overflow-y:auto;overscroll-behavior:contain;background:rgba(8,11,26,.97);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--line);border-radius:16px 16px 0 0;box-shadow:0 -24px 60px -30px rgba(0,0,0,.9);padding:0 20px calc(24px + env(safe-area-inset-bottom, 0px));animation:map-sheet-in .34s cubic-bezier(.22,1,.36,1) both}@keyframes map-sheet-in{0%{translate:0 34px;opacity:0}to{translate:0 0;opacity:1}}.map-panel-open:before{content:"";display:block;position:-webkit-sticky;position:sticky;top:0;z-index:3;height:2px;margin:0 -20px;border-radius:16px 16px 0 0;background:linear-gradient(90deg,transparent,var(--line-color,var(--gold)) 50%,transparent)}.map-sheet{display:flex;flex-direction:column;gap:14px}.map-sheet:focus{outline:none}.map-sheet-grip{position:-webkit-sticky;position:sticky;top:2px;z-index:2;align-self:stretch;display:flex;align-items:center;justify-content:center;height:34px;margin:0 -20px 2px;padding-top:6px;touch-action:none;cursor:-webkit-grab;cursor:grab;background:linear-gradient(180deg,rgba(8,11,26,.97) 62%,rgba(8,11,26,0))}.map-sheet-grip:active{cursor:-webkit-grabbing;cursor:grabbing}.map-sheet-grip-bar{width:38px;height:3px;border-radius:999px;background:rgba(244,241,233,.28)}.map-sheet-eyebrow{display:inline-flex;align-items:center;gap:9px}.map-sheet-dot{flex:0 0 auto;width:9px;height:9px;border-radius:50%;background:var(--line-color,var(--gold));box-shadow:0 0 8px 1px color-mix(in srgb,var(--line-color,var(--gold)) 55%,transparent)}.map-sheet-head{position:relative;display:flex;flex-direction:column;gap:6px;padding-right:44px}.map-sheet-title{font-size:clamp(1.4rem,5.5vw,1.75rem)}.map-sheet-domain{color:var(--slate-dim);font-size:.84rem;letter-spacing:.02em}.map-sheet-close{position:absolute;top:-4px;right:-4px;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(244,241,233,.16);border-radius:999px;color:var(--starlight);font-size:1.4rem;line-height:1;cursor:pointer;transition:border-color .2s ease,color .2s ease}.map-sheet-close:hover{border-color:var(--gold);color:var(--gold-soft)}.map-angle-row{display:flex;flex-wrap:wrap;gap:8px}.map-angle-chip{min-height:44px;min-width:56px;padding:10px 14px;font-size:.82rem;letter-spacing:.06em}.map-sheet-proximity{font-family:var(--serif);font-style:italic;color:var(--gold-soft);font-size:1.02rem;line-height:1.5;border-left:2px solid var(--gold);padding:2px 0 2px 14px}.map-sheet-essence{color:var(--starlight);font-size:1.02rem;line-height:1.7}.map-sheet-note{color:var(--slate);font-size:.95rem;line-height:1.65}.map-sheet-tag{display:inline-block;font-family:var(--sans);font-size:.66rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--slate-dim);margin-right:6px}.map-goal-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.map-goal-chips{display:inline-flex;flex-wrap:wrap;gap:6px}.map-goal-chip{border:1px solid rgba(212,175,55,.35);border-radius:999px;padding:4px 12px;font-size:.78rem;letter-spacing:.04em;color:var(--gold-soft)}.map-sheet-upsell{margin-top:2px;padding-top:14px;border-top:1px solid var(--line);color:var(--slate-dim);font-size:.9rem}.map-sheet-upsell a{color:var(--gold-soft);text-decoration:underline;text-underline-offset:3px}.map-sheet-upsell a:hover{color:var(--gold)}.map-conversion{gap:28px;padding-top:28px;border-top:1px solid var(--line)}.map-conversion,.map-keep{display:flex;flex-direction:column}.map-keep{gap:16px}.map-keep-title{font-family:var(--serif);font-size:1.3rem;color:var(--starlight)}.map-keep-sub{color:var(--slate);font-size:.95rem;line-height:1.6;max-width:52ch}.map-keep-cta{align-self:flex-start;font-size:16px}.map-keep-cta:disabled{opacity:.6;cursor:not-allowed}.map-reading-cta{display:flex;flex-direction:column;gap:16px;align-items:flex-start;background:linear-gradient(180deg,rgba(212,175,55,.08),rgba(212,175,55,.02));border-left:2px solid var(--gold);border-radius:0 12px 12px 0;padding:22px 24px}.map-reading-lede{font-family:var(--serif);font-style:italic;color:var(--starlight);font-size:1.15rem;line-height:1.6}.map-reading-button{font-size:16px}@media (prefers-reduced-motion:reduce){.map-drawing .coastline,.map-drawing .graticule,.map-drawing .legend,.map-drawing .places,.map-drawing .planet-lines{animation:none;opacity:1}.map-drawing .planet-lines{stroke-dasharray:none;stroke-dashoffset:0}.map-panel-open{animation:none}.map-frame[data-highlight] .planet-lines{transition:none}.map-dock-cue{opacity:1}.map-chips-cue .map-chip,.map-dock-cue{animation:none}.map-dock,.map-dock-arrow{transition:none}}@media (min-width:900px){.map-wrap{padding:48px 24px 90px}.map-explorer{max-width:64rem}.map-form{max-width:32rem}.map-stage{display:grid;grid-template-columns:minmax(0,1fr) 22rem;align-items:start;grid-gap:28px;gap:28px}.map-dock,.map-sheet-grip{display:none}.map-panel-empty{display:block}.map-panel,.map-panel-open{position:-webkit-sticky;position:sticky;top:24px;bottom:auto;max-height:none;overflow:visible;z-index:auto;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));border:1px solid var(--line);border-radius:14px;box-shadow:none;padding:22px 24px}.map-panel-open:before{position:absolute;top:0;left:0;right:0;margin:0;border-radius:14px 14px 0 0}.map-conversion{flex-direction:row;align-items:flex-start;gap:40px}.map-keep,.map-reading-cta{flex:1 1}}