:root{--hud-cyan:#8fe9ff;--hud-dim:#8fe9ff73;--hud-warm:#ffd9a0;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-snap:cubic-bezier(.34, 1.56, .64, 1);--edge-t:calc(14px + env(safe-area-inset-top));--edge-r:calc(16px + env(safe-area-inset-right));--edge-b:calc(16px + env(safe-area-inset-bottom));--edge-l:calc(16px + env(safe-area-inset-left));--z-hud:10;--z-pills:20;--z-touch:25;--z-toasts:30;--z-panels:40;--z-top:50}*{box-sizing:border-box;margin:0;padding:0}html,body{-webkit-user-select:none;user-select:none;cursor:default;touch-action:none;overscroll-behavior:none;-webkit-tap-highlight-color:transparent;background:#000;width:100%;height:100%;font-family:Rajdhani,sans-serif;overflow:hidden}#game{width:100%;height:100%;display:block;position:fixed;inset:0}#ui-root{pointer-events:none;z-index:10;transition:opacity .6s;position:fixed;inset:0}.corner{border:1px solid var(--hud-dim);opacity:.7;width:34px;height:34px;position:absolute}.corner.tl{border-bottom:none;border-right:none;top:22px;left:22px}.corner.tr{border-bottom:none;border-left:none;top:22px;right:22px}.corner.bl{border-top:none;border-right:none;bottom:22px;left:22px}.corner.br{border-top:none;border-left:none;bottom:22px;right:22px}.crosshair{background:#8fe9ff8c;border-radius:50%;width:5px;height:5px;margin:-2.5px 0 0 -2.5px;animation:3.2s ease-in-out infinite reticleBreathe;position:absolute;top:50%;left:50%;box-shadow:0 0 8px #8fe9ffcc}@keyframes reticleBreathe{0%,to{box-shadow:0 0 8px #8fe9ffcc}50%{box-shadow:0 0 14px #8fe9ff}}.crosshair:before,.crosshair:after{content:"";width:26px;height:26px;transition:transform .35s var(--ease-snap), border-color .35s ease;clip-path:polygon(0 0,30% 0,30% 12%,12% 12%,12% 30%,0 30%,0 100%,30% 100%,30% 88%,12% 88%,12% 70%,0 70%,100% 0,70% 0,70% 12%,88% 12%,88% 30%,100% 30%,100% 100%,70% 100%,70% 88%,88% 88%,88% 70%,100% 70%);border:1px solid #8fe9ff00;border-radius:3px;margin:-13px 0 0 -13px;position:absolute;top:50%;left:50%;transform:rotate(45deg)scale(1.8)}.crosshair:after{transition-delay:50ms}.aiming .crosshair:before{border-color:#8fe9ffbf;transform:rotate(0)scale(1)}.aiming .crosshair:after{border-color:#ffd9a066;transform:rotate(45deg)scale(1.25)}.mode-ground .crosshair{opacity:.45}.ping-layer{pointer-events:none;z-index:var(--z-pills);position:absolute;inset:0}.ping{border:1.5px solid var(--hud-cyan);width:12px;height:12px;animation:pingOut .7s var(--ease-out) forwards;border-radius:50%;margin:-6px 0 0 -6px;position:absolute;box-shadow:0 0 18px #8fe9ffcc,inset 0 0 10px #8fe9ff80}.ping.warm{border-color:var(--hud-warm);box-shadow:0 0 18px #ffd9a0cc,inset 0 0 10px #ffd9a080}.ping.green{border-color:#7fe9b0;box-shadow:0 0 18px #7fe9b0cc,inset 0 0 10px #7fe9b080}.ping.second{opacity:0;animation-delay:.12s;animation-fill-mode:both}@keyframes pingOut{0%{opacity:1;transform:scale(.4)}to{opacity:0;transform:scale(9)}}.hud-left{color:var(--hud-cyan);text-shadow:0 0 12px #8fe9ff80;position:absolute;bottom:42px;left:42px}.speed-label{letter-spacing:4px;opacity:.6;font-size:11px;font-weight:500}.speed-value{font-variant-numeric:tabular-nums;font-size:44px;font-weight:300;line-height:1.05}.speed-value .unit{opacity:.6;letter-spacing:2px;margin-left:6px;font-size:14px}.throttle-track{background:#8fe9ff26;width:170px;height:3px;margin-top:8px}.throttle-fill{background:var(--hud-cyan);width:0%;height:100%;transition:width .12s linear,background .3s;box-shadow:0 0 10px #8fe9ffe6}.throttle-fill.boosting{background:#ffd9a0;box-shadow:0 0 14px #ffd9a0f2}.hud-right{text-align:right;color:var(--hud-cyan);text-shadow:0 0 12px #8fe9ff80;position:absolute;bottom:42px;right:42px}.nearest-label{letter-spacing:4px;opacity:.6;font-size:11px;font-weight:500}.nearest-value{letter-spacing:2px;font-size:26px;font-weight:500}.nearest-dist{opacity:.75;font-variant-numeric:tabular-nums;font-size:14px}.prompt{z-index:var(--z-pills);letter-spacing:2.5px;color:#fff;text-shadow:0 0 16px #8fe9ffe6;opacity:0;white-space:nowrap;font-size:19px;font-weight:500;transition:opacity .25s,transform .25s;position:absolute;bottom:17%;left:50%;transform:translate(-50%)translateY(6px)}.prompt.visible{opacity:1;animation:promptIn .4s var(--ease-out);transform:translate(-50%)translateY(0)}@keyframes promptIn{0%{letter-spacing:7px;filter:blur(3px)brightness(2.2)}40%{filter:blur()brightness(1.35)}to{letter-spacing:2.5px;filter:none}}.prompt:before,.prompt:after{content:"";background:linear-gradient(90deg, transparent, var(--hud-cyan));opacity:0;width:0;height:1px;transition:width .45s var(--ease-out), opacity .45s ease;position:absolute;top:50%}.prompt:before{right:calc(100% + 14px)}.prompt:after{background:linear-gradient(270deg, transparent, var(--hud-cyan));left:calc(100% + 14px)}.prompt.visible:before,.prompt.visible:after{opacity:.8;width:34px}.prompt .key{background:#8fe9ff1f;border:1px solid #ffffffb3;border-radius:4px;margin-right:8px;padding:0 7px;font-size:15px;animation:1.8s ease-in-out infinite keyGlow;display:inline-block}@keyframes keyGlow{0%,to{box-shadow:0 0 #8fe9ff00}50%{background:#8fe9ff33;box-shadow:0 0 12px #8fe9ff8c}}.prompt.tappable:active{transform:translate(-50%)translateY(1px)scale(.97)}.banner{text-align:center;opacity:0;pointer-events:none;transition:opacity 1.1s;position:absolute;top:24%;left:0;right:0}.banner.visible{opacity:1}.banner-title{letter-spacing:22px;text-indent:22px;color:#fff;text-shadow:0 0 30px #8fe9ffa6;text-transform:uppercase;font-size:54px;font-weight:300}.banner.visible .banner-title{animation:bannerSettle 2.6s var(--ease-out)}@keyframes bannerSettle{0%{letter-spacing:34px;text-indent:34px;filter:blur(4px);opacity:0}30%{opacity:1}to{letter-spacing:22px;text-indent:22px;filter:none}}.banner:after{content:"";background:linear-gradient(90deg, transparent, var(--hud-cyan), transparent);width:0;height:1px;transition:width 1.6s var(--ease-out) .3s;margin:12px auto 0;display:block}.banner.visible:after{width:min(420px,60vw)}.banner-sub{letter-spacing:6px;color:var(--hud-cyan);opacity:.85;text-transform:uppercase;margin-top:6px;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:300}.banner.visible .banner-sub{animation:2s .5s both bannerSub}@keyframes bannerSub{0%{opacity:0;transform:translateY(6px)}to{opacity:.85;transform:none}}.dialogue{z-index:var(--z-panels);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;background:linear-gradient(160deg,#08141cd1,#040a10e0);border:1px solid #8fe9ff47;border-radius:10px;width:min(680px,80vw);padding:18px 26px 14px;transition:opacity .3s,transform .3s;position:absolute;bottom:8%;left:50%;transform:translate(-50%)translateY(12px);box-shadow:0 0 40px #00000080,inset 0 0 30px #8fe9ff0a}.dialogue.visible{opacity:1;animation:holoIn .45s var(--ease-out);transform:translate(-50%)translateY(0)}.dialogue.closing{opacity:0;transition:opacity .18s,transform .18s;transform:translate(-50%)translateY(8px)scale(.985)}@keyframes holoIn{0%{opacity:0;filter:brightness(2.6)blur(4px);transform:translate(-50%)translateY(14px)scaleY(.7)}35%{opacity:1;filter:brightness(1.7)blur(1px)}55%{filter:brightness(1.1)}70%{filter:brightness(1.45)}to{filter:none;transform:translate(-50%)translateY(0)scaleY(1)}}.dialogue:before,.journal:before,.trade:before{content:"";border-radius:inherit;pointer-events:none;mix-blend-mode:screen;background:repeating-linear-gradient(#8fe9ff06 0 1px,#0000 1px 4px);position:absolute;inset:0}.dialogue:after,.journal:after,.trade:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(90deg,#0000,#8fe9ffe6,#0000);border-radius:2px;height:2px;position:absolute;top:0;left:0;right:0}.dialogue.visible:after,.journal.visible:after,.trade.visible:after{animation:sweepDown .6s var(--ease-out) forwards}@keyframes sweepDown{0%{opacity:.9;transform:translateY(0)}to{opacity:0;transform:translateY(min(58vh,340px))}}.dialogue-name{letter-spacing:3px;color:var(--hud-warm);text-transform:uppercase;align-items:center;gap:9px;margin-bottom:7px;font-size:14px;font-weight:600;display:flex}.dialogue-name:before{content:"";background:var(--hud-warm);width:7px;height:7px;box-shadow:0 0 10px var(--hud-warm);border-radius:50%;flex-shrink:0;animation:1.4s ease-in-out infinite channelBlink}@keyframes channelBlink{0%,to{opacity:1}40%{opacity:.25}}.dialogue-name:after{content:"";background:linear-gradient(90deg,#ffd9a066,#0000);flex:1;height:1px}.dialogue-text{color:#e8f4f8;min-height:52px;font-family:Space Grotesk,sans-serif;font-size:17px;font-weight:300;line-height:1.55}.dialogue-hint{letter-spacing:2px;color:var(--hud-dim);text-align:right;margin-top:9px;font-size:11px}.dialogue-choices{margin-top:12px;display:none}.dialogue-choices.visible{display:block}.dialogue-choice{color:#cfeef5;cursor:pointer;animation:choiceIn .35s var(--ease-out) both;border-left:2px solid #0000;border-radius:6px;margin:0 -8px;padding:5px 8px;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:300;transition:background .15s,border-color .15s,padding-left .15s,color .15s}.dialogue-choice:first-child{animation-delay:40ms}.dialogue-choice:nth-child(2){animation-delay:.1s}.dialogue-choice:nth-child(3){animation-delay:.16s}.dialogue-choice:nth-child(4){animation-delay:.22s}.dialogue-choice:nth-child(5){animation-delay:.28s}@keyframes choiceIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}.dialogue-choice:hover{border-left-color:var(--hud-warm);color:#f2fbff;background:#8fe9ff12;padding-left:14px}.dialogue-choice:active{transform:translate(2px)scale(.995)}.dialogue-choice .key{color:var(--hud-warm);background:#ffd9a014;border:1px solid #ffd9a099;border-radius:4px;margin-right:10px;padding:0 6px;font-size:12px;display:inline-block}.toasts{z-index:var(--z-toasts);flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:absolute;top:70px;right:42px}.toast{letter-spacing:1.5px;color:#e8f4f8;opacity:0;max-width:340px;transition:opacity .45s var(--ease-out), transform .45s var(--ease-out);text-shadow:0 0 10px #ffd9a066;background:linear-gradient(160deg,#08141cd9,#040a10e6);border:1px solid #ffd9a059;border-radius:7px;padding:9px 14px;font-size:13px;position:relative;overflow:hidden;transform:translate(26px)skew(-4deg)}.toast.visible{opacity:1;transform:translate(0)skew(0)}.toast:after{content:"";background:linear-gradient(100deg,#0000,#ffebc829,#0000);width:45%;position:absolute;top:0;bottom:0;left:-60%;transform:skew(-18deg)}.toast.visible:after{animation:toastBeam .9s var(--ease-out) .1s forwards}@keyframes toastBeam{to{left:120%}}.toast .toast-icon{animation:iconPop .5s var(--ease-snap) .15s both}@keyframes iconPop{0%{opacity:0;transform:scale(.3)rotate(-8deg)}to{opacity:1;transform:scale(1)rotate(0)}}.journal{z-index:var(--z-panels);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;pointer-events:none;background:linear-gradient(160deg,#08141ceb,#040a10f2);border:1px solid #8fe9ff47;border-radius:10px;width:min(560px,84vw);max-height:70vh;padding:22px 28px 16px;transition:opacity .25s,transform .25s;position:absolute;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)scale(.98);box-shadow:0 0 50px #0009}.journal.visible{opacity:1;animation:panelIn .4s var(--ease-out);transform:translate(-50%,-50%)scale(1)}.journal.closing{opacity:0;transition:opacity .16s,transform .16s;transform:translate(-50%,-50%)scale(.97)}@keyframes panelIn{0%{opacity:0;filter:brightness(2)blur(5px);transform:translate(-50%,-50%)scale(.94)}45%{opacity:1;filter:brightness(1.4)blur(.5px)}60%{filter:brightness(1.05)}75%{filter:brightness(1.25)}to{filter:none;transform:translate(-50%,-50%)scale(1)}}.journal.fresh .overlay-section,.journal.fresh .goal,.journal.fresh .diary,.journal.fresh .guide-row,.journal.fresh .hold-card,.journal.fresh .journal-loc,.journal.fresh .hold-credits,.journal.fresh .hold-detail,.journal.fresh .guide-detail,.journal.fresh .guide-back,.journal.fresh .journal-empty,.trade.fresh .trade-row,.trade.fresh .journal-title,.trade.fresh .overlay-tabs{animation:cascadeIn .4s var(--ease-out) both}.journal.fresh .overlay-section:nth-child(n){animation-delay:50ms}.journal.fresh .goal:first-of-type,.journal.fresh .guide-row:first-child,.journal.fresh .hold-card:first-child,.trade.fresh .trade-row:first-child{animation-delay:60ms}.journal.fresh .goal:nth-of-type(2),.journal.fresh .guide-row:nth-child(2),.journal.fresh .hold-card:nth-child(2),.trade.fresh .trade-row:nth-child(2){animation-delay:.1s}.journal.fresh .goal:nth-of-type(3),.journal.fresh .guide-row:nth-child(3),.journal.fresh .hold-card:nth-child(3),.trade.fresh .trade-row:nth-child(3){animation-delay:.14s}.journal.fresh .goal:nth-of-type(4),.journal.fresh .guide-row:nth-child(4),.journal.fresh .hold-card:nth-child(4),.trade.fresh .trade-row:nth-child(4){animation-delay:.18s}.journal.fresh .goal:nth-of-type(5),.journal.fresh .guide-row:nth-child(5),.journal.fresh .hold-card:nth-child(5),.trade.fresh .trade-row:nth-child(5){animation-delay:.22s}.journal.fresh .goal:nth-of-type(n+6),.journal.fresh .guide-row:nth-child(n+6),.journal.fresh .hold-card:nth-child(n+6),.trade.fresh .trade-row:nth-child(n+6){animation-delay:.26s}@keyframes cascadeIn{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}.journal-title{letter-spacing:5px;color:var(--hud-warm);margin-bottom:12px;font-size:15px;font-weight:600}.journal-loc{letter-spacing:3px;color:var(--hud-cyan);text-transform:uppercase;margin-bottom:14px;font-size:12px}.journal-entry{margin-bottom:14px}.journal-entry-title{letter-spacing:2px;color:#e8f4f8;text-transform:uppercase;font-size:13px;font-weight:600}.journal-entry-text{color:#e8f4f8bf;margin-top:3px;font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:300;line-height:1.5}.journal-empty{color:#e8f4f88c;font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:300}.journal-discoveries{letter-spacing:2px;color:var(--hud-dim);border-top:1px solid #8fe9ff26;margin-top:10px;padding-top:10px;font-size:11px}.journal-hint{letter-spacing:2px;color:var(--hud-dim);text-align:right;margin-top:9px;font-size:11px}.credits-readout{letter-spacing:2px;color:var(--hud-warm);text-shadow:0 0 10px #ffd9a066;min-height:18px;margin-top:10px;font-size:14px;font-weight:600}.overlay-tabs{gap:18px;margin-bottom:14px;display:flex}.overlay-tab{letter-spacing:4px;color:var(--hud-dim);cursor:pointer;padding-bottom:3px;font-size:13px;font-weight:600;transition:color .2s,text-shadow .2s;position:relative}.overlay-tab:hover{color:#ffe3becc}.overlay-tab:after{content:"";background:var(--hud-warm);width:0;height:1px;transition:width .28s var(--ease-out), left .28s var(--ease-out);position:absolute;bottom:0;left:50%;box-shadow:0 0 8px #ffd9a0b3}.overlay-tab.active{color:var(--hud-warm);text-shadow:0 0 12px #ffd9a073}.overlay-tab.active:after{width:100%;left:0}.overlay-section{letter-spacing:3px;color:var(--hud-cyan);border-bottom:1px solid #8fe9ff1f;margin:14px 0 8px;padding-bottom:4px;font-size:11px}.journal-entry.closed{opacity:.45}.journal-entry.unscanned{opacity:.3;margin-bottom:6px}.thread-dot{background:var(--hud-warm);width:7px;height:7px;box-shadow:0 0 8px var(--hud-warm);border-radius:50%;margin-right:8px;animation:2.4s ease-in-out infinite threadpulse;display:inline-block}@keyframes threadpulse{0%,to{opacity:1}50%{opacity:.35}}details.goal,details.diary{margin-bottom:6px}details.goal summary,details.diary summary{cursor:pointer;list-style:none}details.goal summary::-webkit-details-marker{display:none}details.diary summary::-webkit-details-marker{display:none}.goal-row{transition:background .15s ease, border-color .15s ease, transform .15s var(--ease-snap);background:#8fe9ff0d;border:1px solid #8fe9ff1f;border-radius:8px;align-items:center;gap:9px;margin:0 -10px;padding:8px 10px;display:flex}.goal-row:hover{background:#8fe9ff17;border-color:#8fe9ff4d;transform:translate(2px)}details[open] .goal-row{border-color:#ffd9a059}.goal-label{letter-spacing:1px;color:#eaf6fa;flex:1;min-width:0;font-size:13.5px;font-weight:600}.goal-where{letter-spacing:2px;color:var(--hud-warm);text-transform:uppercase;white-space:nowrap;border:1px solid #ffd9a066;border-radius:999px;flex-shrink:0;padding:2px 9px;font-size:10px}.goal-body{color:#e8f4f8bf;padding:8px 4px 4px;font-family:Space Grotesk,sans-serif;font-size:13.5px;font-weight:300;line-height:1.5}.diary-title{letter-spacing:1.5px;color:#dceef6d9;text-transform:uppercase;padding:5px 0;font-size:12.5px;font-weight:600}details.diary[open] .diary-title{color:var(--hud-warm)}.settled-row{letter-spacing:1px;color:#a0dcbeb3;padding:2px 0;font-size:12px}.guide-list{margin-bottom:8px}.guide-row{cursor:pointer;border-radius:8px;align-items:center;gap:11px;margin:0 -10px;padding:7px 10px;transition:background .15s,padding-left .15s;display:flex}.guide-row:hover{background:#8fe9ff0f;padding-left:14px}.guide-row:hover .guide-row-more{color:var(--hud-warm);transform:translate(3px)}.guide-row:active{background:#8fe9ff1a}.guide-row-more{transition:transform .15s,color .15s}.guide-row.unscanned{opacity:.35;cursor:default}.guide-row.unscanned:hover{background:0 0;padding-left:10px}.guide-icon{object-fit:cover;border:1px solid #8fe9ff33;border-radius:7px;flex-shrink:0;width:34px;height:34px}.guide-glyph{width:34px;height:34px;color:var(--hud-cyan);background:radial-gradient(circle at 50% 35%,#1c3442cc,#060c12e6);border:1px solid #8fe9ff40;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:600;display:flex}.guide-row-name{letter-spacing:1.5px;color:#e2f2f8;text-transform:uppercase;flex:1;font-size:13px;font-weight:600}.guide-row-more{color:var(--hud-dim);font-size:16px}.guide-back{letter-spacing:3px;color:var(--hud-warm);cursor:pointer;padding:2px 0 10px;font-size:11px}.guide-detail{text-align:left}.guide-media-wrap{border:1px solid #8fe9ff38;border-radius:10px;margin-bottom:12px;position:relative;overflow:hidden}.guide-media-wrap.square{width:148px;height:148px}.guide-media-wrap.banner{width:100%;height:120px}.guide-media-wrap .guide-mono{border:0;border-radius:0;width:auto;height:auto;margin:0;position:absolute;inset:0}.guide-media-wrap .guide-media{object-fit:cover;border:0;border-radius:0;width:100%;height:100%;margin:0;display:block;position:absolute;inset:0}.guide-iconwrap{border-radius:7px;flex-shrink:0;width:34px;height:34px;position:relative;overflow:hidden}.guide-iconwrap .guide-glyph,.guide-iconwrap .guide-icon{width:100%;height:100%;margin:0;display:block;position:absolute;inset:0}.guide-detail .hold-tag{margin:2px 0 4px;display:inline-block}.guide-media{border:1px solid #8fe9ff38;border-radius:10px;margin-bottom:12px}.guide-mono{width:96px;height:96px;color:var(--hud-cyan);background:radial-gradient(circle at 50% 35%,#1c3442e6,#060c12f2);border:1px solid #8fe9ff4d;border-radius:12px;justify-content:center;align-items:center;margin-bottom:12px;font-size:44px;font-weight:600;display:flex}.guide-detail-name{margin-bottom:6px;font-size:17px}.guide-detail-text{color:#ebf6fad9;margin-top:10px;font-family:Space Grotesk,sans-serif;font-size:14.5px;font-weight:300;line-height:1.6}.hold-credits{color:var(--hud-warm);margin-bottom:12px;font-size:26px;font-weight:600}.hold-credits .unit{letter-spacing:2px;color:var(--hud-dim);margin-left:8px;font-size:12px}.hold-grid{grid-template-columns:repeat(6,1fr);gap:9px;margin-bottom:14px;display:grid}.hold-card{aspect-ratio:1;cursor:pointer;transition:transform .18s var(--ease-snap), box-shadow .18s ease, border-color .18s ease;background:radial-gradient(circle at 50% 40%,#1e303ce6,#060c12f2);border:1px solid #8fe9ff24;border-radius:8px;position:relative;overflow:hidden}.hold-card:hover{border-color:#8fe9ff73;transform:translateY(-2px)scale(1.03);box-shadow:0 4px 16px #0006,0 0 12px #8fe9ff26}.hold-card:active{transform:scale(.97)}.hold-card .item-icon{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hold-card.selected{z-index:1;border-color:#8fe9ffcc;transform:scale(1.06);box-shadow:0 0 18px #8fe9ff59,inset 0 0 12px #8fe9ff1f}.hold-card-count{color:#e8f4f8;background:#02060ad1;border:1px solid #8fe9ff40;border-radius:4px;padding:0 5px;font-size:11px;font-weight:600;position:absolute;bottom:3px;right:4px}.rarity-border-common{border-bottom:2px solid #c9dce473}.rarity-border-uncommon{border-bottom:2px solid #7fe9b0b3}.rarity-border-rare{border-bottom:2px solid #c9a8ffbf}.rarity-border-singular{border-bottom:2px solid #ffd9a0e6;box-shadow:0 0 14px #ffd9a02e}.hold-detail{border-top:1px solid #8fe9ff24;min-height:64px;padding-top:10px}.hold-detail-top{align-items:baseline;gap:12px;display:flex}.hold-tag{letter-spacing:2.5px;color:var(--hud-dim);text-transform:uppercase;border:1px solid #8fe9ff38;border-radius:3px;padding:1px 6px;font-size:10px}.hold-value{color:var(--hud-warm);margin-left:auto;font-size:13px;font-weight:600}.hold-detail-desc{color:#e8f4f8b8;margin-top:5px;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:300;line-height:1.45}.hold-detail-hint{color:var(--hud-warm);opacity:.85;margin-top:6px;font-family:Space Grotesk,sans-serif;font-size:12.5px;font-style:italic;font-weight:300;line-height:1.4}.hold-name{letter-spacing:1.5px;text-transform:uppercase;white-space:nowrap;font-size:13px;font-weight:600}.rarity-common{color:#c9dce4}.rarity-uncommon{color:#7fe9b0}.rarity-rare{color:#c9a8ff}.rarity-singular{color:var(--hud-warm);text-shadow:0 0 10px #ffd9a080}.trade-body{min-height:120px}.trade-row{cursor:pointer;border-left:2px solid #0000;border-radius:4px;align-items:center;gap:12px;margin:0 -10px;padding:5px 10px;transition:background .15s,border-color .15s,transform .15s;display:flex}.trade-row:hover:not(.selected){background:#8fe9ff0d}.trade-row:active{transform:scale(.995)}.trade-icon{object-fit:cover;border:1px solid #8fe9ff2e;border-radius:6px;flex-shrink:0;width:34px;height:34px}.trade-row.selected{border-left-color:var(--hud-warm);background:#8fe9ff1a;outline:1px solid #8fe9ff40}.trade-row.dim{opacity:.4}.trade-namecol{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.trade-have{letter-spacing:1px;color:var(--hud-dim);font-size:11px}.trade-action{color:var(--hud-warm);letter-spacing:1.5px;text-shadow:0 0 10px #ffd9a066;cursor:pointer;animation:actionArm .3s var(--ease-snap);background:#ffd9a024;border:1px solid #ffd9a0bf;border-radius:8px;flex-shrink:0;padding:8px 14px;font-size:13px;font-weight:700;transition:background .15s,box-shadow .15s,transform .1s}@keyframes actionArm{0%{opacity:.4;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.trade-action:hover:not(.cant){background:#ffd9a042;box-shadow:0 0 16px #ffd9a059}.trade-action:active:not(.cant){transform:scale(.94)}.trade-action.cant{color:#dce6eb73;text-shadow:none;background:#7878781a;border-color:#c8c8c840}.trade-flash{letter-spacing:1.5px;opacity:0;min-height:22px;margin:4px 0 2px;font-size:12.5px;font-weight:600}.trade-flash.show{animation:2.6s forwards tradeflash}.trade-flash.ok{color:#9ef0c0}.trade-flash.bad{color:#ff9a8a}@keyframes tradeflash{0%{opacity:0;transform:translateY(4px)}8%{opacity:1;transform:translateY(0)}75%{opacity:1}to{opacity:0}}.trade-price{color:var(--hud-warm);text-align:right;min-width:54px;font-size:14px;font-weight:600}.toast .toast-icon{object-fit:cover;vertical-align:middle;border:1px solid #8fe9ff40;border-radius:5px;width:26px;height:26px;margin-right:9px}.hint-toast{border-left:2px solid #ffd9a08c;font-family:Space Grotesk,sans-serif;font-style:italic;font-weight:300;text-transform:none!important;letter-spacing:.6px!important;color:#c8e4f0d9!important}.guide-entry{align-items:flex-start;gap:12px;display:flex}.guide-entry>.guide-icon{object-fit:cover;border:1px solid #8fe9ff33;border-radius:7px;flex-shrink:0;width:42px;height:42px;margin-top:2px}.guide-entry-body{flex:1;min-width:0}.scanprompt{z-index:var(--z-pills);letter-spacing:3px;color:#8fe9ffbf;text-shadow:0 0 12px #000000e6;opacity:0;white-space:nowrap;font-size:12px;transition:opacity .2s;position:absolute;bottom:calc(17% - 34px);left:50%;transform:translate(-50%)}.scanprompt.visible{opacity:1;animation:2.6s ease-in-out infinite scanShimmer}@keyframes scanShimmer{0%,to{text-shadow:0 0 12px #000000e6}50%{text-shadow:0 0 12px #000000e6,0 0 18px #8fe9ff80}}.scanprompt .key{border:1px solid #8fe9ff80;border-radius:3px;margin-right:8px;padding:1px 7px;font-weight:600;display:inline-block}.credits-readout.tick,.hold-credits.tick,.journal-discoveries.tick{animation:valueTick .5s var(--ease-snap)}@keyframes valueTick{0%{filter:brightness(1.9);transform:scale(1.18)}to{filter:none;transform:scale(1)}}.credits-readout,.hold-credits{transform-origin:0}.nearest-value.tick{animation:bodySwap .45s var(--ease-out)}@keyframes bodySwap{0%{opacity:0;filter:blur(2px);transform:translateY(7px)}to{opacity:1;filter:none;transform:none}}.touch-btn{transition:transform .12s var(--ease-snap), background .15s ease, border-color .15s ease, box-shadow .15s ease}.touch-btn:active,.touch-btn.held{transform:scale(.93)}.minimap{z-index:var(--z-hud);opacity:0;pointer-events:none;width:128px;height:128px;transition:opacity .5s;position:absolute;bottom:128px;right:42px}.minimap.visible{opacity:1;pointer-events:auto;cursor:pointer}.minimap.visible:not(.expanded):hover{transition:transform .2s var(--ease-snap), opacity .5s ease;transform:scale(1.05)}.minimap.expanded{width:min(68vmin,440px);height:min(68vmin,440px);z-index:var(--z-panels);animation:chartOpen .4s var(--ease-out);inset:46% auto auto 50%;transform:translate(-50%,-50%)}@keyframes chartOpen{0%{opacity:0;filter:brightness(2);transform:translate(-50%,-50%)scale(.6)}to{opacity:1;filter:none;transform:translate(-50%,-50%)scale(1)}}.map-legend.visible .lg-row{animation:cascadeIn .4s var(--ease-out) both}.map-legend.visible .lg-row:first-child{animation-delay:.1s}.map-legend.visible .lg-row:nth-child(2){animation-delay:.14s}.map-legend.visible .lg-row:nth-child(3){animation-delay:.18s}.map-legend.visible .lg-row:nth-child(4){animation-delay:.22s}.map-legend.visible .lg-row:nth-child(5){animation-delay:.26s}.map-legend.visible .lg-row:nth-child(n+6){animation-delay:.3s}.touch .minimap.expanded{width:min(74vmin,440px);height:min(74vmin,440px);top:46%}.map-legend{z-index:var(--z-panels);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#040c12cc;border:1px solid #8fe9ff40;border-radius:10px;padding:10px 16px;display:none;position:absolute;top:calc(46% + min(34vmin,220px) + 14px);left:50%;transform:translate(-50%)}.map-legend.visible{flex-wrap:wrap;gap:4px 18px;max-width:min(86vw,520px);display:flex}.lg-row{letter-spacing:1.5px;color:#dcf0f8d9;white-space:nowrap;align-items:center;gap:7px;font-size:11px;display:flex}.lg-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.lg-note{color:var(--hud-dim);width:100%}.touch.ui-busy .minimap.expanded,.touch.ui-busy .map-legend.visible{display:block}.touch.ui-busy .map-legend.visible{display:flex}.touch .minimap{right:var(--edge-r);bottom:auto;top:calc(var(--edge-t) + 56px);width:96px;height:96px}.touch.ui-busy .minimap,.touch-ui{display:none}.touch .touch-ui{display:block}.touch-btn{color:#c8e8f4e6;letter-spacing:2px;pointer-events:auto;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:radial-gradient(circle at 50% 35%,#182c388c,#040a10a6);border:1px solid #8fe9ff59;border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex;box-shadow:0 0 18px #0006}.touch-btn.held{background:radial-gradient(circle at 50% 35%,#40788cb3,#0a1820cc);border-color:#8fe9ffcc;box-shadow:0 0 22px #8fe9ff59}.menu-btn{z-index:var(--z-top);top:var(--edge-t);right:var(--edge-r);border-radius:12px;width:44px;height:44px;font-size:18px;position:absolute}.thrust-slider{z-index:var(--z-touch);right:var(--edge-r);bottom:calc(var(--edge-b) + 14px);text-align:center;pointer-events:auto;touch-action:none;width:64px;padding:6px 0;display:none;position:absolute}.mode-flight-touch .thrust-slider,.mode-walk-touch .thrust-slider{display:block}.thrust-label{letter-spacing:2px;color:var(--hud-dim);padding:3px 0;font-size:9px}.thrust-track{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:linear-gradient(#182c3880,#040a1099);border:1px solid #8fe9ff59;border-radius:20px;width:40px;height:128px;margin:2px auto;position:relative}.thrust-knob{background:radial-gradient(circle at 50% 35%,#406e82e6,#0e1e28f2);border:1px solid #8fe9ff99;border-radius:50%;width:34px;height:34px;margin-top:-17px;transition:transform 80ms linear;position:absolute;top:50%;left:50%;transform:translate(-50%);box-shadow:0 0 14px #00000080}.thrust-slider.active .thrust-knob{border-color:#8fe9fff2;box-shadow:0 0 18px #8fe9ff66}.thrust-slider.boosting .thrust-knob{border-color:var(--hud-warm);box-shadow:0 0 22px #ffd9a0a6}.touch-cluster{display:none}#hud-walk-cluster{z-index:var(--z-touch);left:var(--edge-l);bottom:calc(var(--edge-b) + 18px);pointer-events:none;width:88px;height:88px;position:absolute}#hud-walk-cluster .touch-btn{font-size:14px;position:absolute;inset:0}.mode-walk-touch #hud-walk-cluster{display:block}.stick-hint{display:none}.prompt.tappable,.scanprompt.visible,.dialogue.visible,.journal.visible,.trade.visible{pointer-events:auto}.panel-close{text-align:center;width:34px;height:34px;color:var(--hud-dim);border:1px solid #8fe9ff4d;border-radius:10px;font-size:15px;line-height:34px;display:none;position:absolute;top:10px;right:12px}.touch .panel-close{display:block}.touch .hud-frame,.touch .controls-hint,.touch .prompt .key,.touch .scanprompt .key{display:none}.touch .toasts{right:auto;left:var(--edge-l);top:var(--edge-t);align-items:flex-start;max-width:min(62vw,420px)}.touch .toast{text-align:left;font-size:11px}.touch .hud-left{left:var(--edge-l);bottom:calc(var(--edge-b) + 122px);transform-origin:0 100%;transform:scale(.82)}.touch .hud-right{right:calc(var(--edge-r) + 84px);bottom:calc(var(--edge-b) + 14px);transform-origin:100% 100%;transform:scale(.82)}.touch .prompt.tappable{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#061018a8;border:1px solid #8fe9ff73;border-radius:999px;padding:12px 24px;font-size:16px}.touch .scanprompt.visible{background:#0610188c;border:1px solid #8fe9ff4d;border-radius:999px;padding:9px 18px}.touch .dialogue-choice{border-bottom:1px solid #8fe9ff14;padding:11px 10px}.touch .trade-row{padding:11px 10px}.touch .overlay-tab{padding:8px 6px 5px;font-size:14px}.touch .dialogue{width:auto;padding:18px 22px calc(12px + env(safe-area-inset-bottom));border-bottom:none;border-left:none;border-right:none;border-radius:18px 18px 0 0;bottom:0;left:0;right:0;transform:translateY(14px)}.touch .dialogue.visible{animation:holoInSheet .45s var(--ease-out);transform:translateY(0)}.touch .dialogue.closing{transform:translateY(12px)}@keyframes holoInSheet{0%{opacity:0;filter:brightness(2.2)blur(3px);transform:translateY(24px)}45%{opacity:1;filter:brightness(1.5)}60%{filter:brightness(1.05)}75%{filter:brightness(1.3)}to{filter:none;transform:translateY(0)}}.touch .journal,.touch .trade{width:auto;max-height:none;padding:calc(var(--edge-t) + 44px) 22px calc(var(--edge-b) + 8px) 22px;border:none;border-radius:0;inset:0;transform:none}.touch .journal.visible,.touch .trade.visible{animation:sheetIn .35s var(--ease-out);transform:none}.touch .journal.closing,.touch .trade.closing{opacity:0;transform:none}@keyframes sheetIn{0%{opacity:0;filter:brightness(1.8);transform:translateY(16px)}to{opacity:1;filter:none;transform:none}}.touch.ui-busy .thrust-slider,.touch.ui-busy .touch-cluster,.touch.ui-busy .stick-hint,.touch.ui-busy .prompt,.touch.ui-busy .scanprompt,.touch.ui-busy .hud-left,.touch.ui-busy .hud-right,.touch.ui-busy .toasts,.touch.ui-busy .crosshair{display:none}.touch.ui-busy .menu-btn{background:radial-gradient(circle at 50% 35%,#40788cbf,#0a1820d9);border-color:#8fe9ffb3}.journal,.trade{touch-action:pan-y}.controls-hint{letter-spacing:2.5px;color:#fff6;text-shadow:0 0 8px #000c;white-space:nowrap;font-size:12px;position:absolute;top:30px;left:50%;transform:translate(-50%)}.controls-hint .k{color:#8fe9ffbf}.title-screen{z-index:200;background:#000;transition:opacity 2.4s;position:fixed;inset:0;overflow:hidden}.title-screen.hidden{opacity:0;pointer-events:none}.title-bg{background:url(/title_keyart.webp) 50%/cover no-repeat,radial-gradient(at 60% 40%,#16324a 0%,#060a14 60%,#000 100%);animation:36s ease-in-out infinite alternate kenburns;position:absolute;inset:-4%}@media (orientation:portrait){.title-bg{background:url(/title_keyart_portrait.webp) 50%/cover no-repeat,radial-gradient(at 50% 30%,#16324a 0%,#060a14 60%,#000 100%)}}@keyframes kenburns{0%{transform:scale(1)translate(0)}to{transform:scale(1.09)translate(-1.5%,1.5%)}}.title-stars{background-image:radial-gradient(1.4px 1.4px at 12% 34%,#ffffffe6,#0000 60%),radial-gradient(1px 1px at 28% 72%,#bee6ffcc,#0000 60%),radial-gradient(1.8px 1.8px at 44% 18%,#fff0dce6,#0000 60%),radial-gradient(1px 1px at 58% 55%,#ffffffb3,#0000 60%),radial-gradient(1.3px 1.3px at 71% 30%,#b4e1ffd9,#0000 60%),radial-gradient(1px 1px at 84% 66%,#ffffffbf,#0000 60%),radial-gradient(1.6px 1.6px at 93% 12%,#ffe1becc,#0000 60%),radial-gradient(1px 1px at 8% 88%,#ffffffa6,#0000 60%),radial-gradient(1.2px 1.2px at 37% 92%,#bee6ffb3,#0000 60%),radial-gradient(1px 1px at 66% 82%,#fffc,#0000 60%);background-size:46% 46%;animation:90s linear infinite starDrift,3.4s ease-in-out infinite alternate starTwinkle;position:absolute;inset:-20%}.title-stars.b{opacity:.7;background-size:71% 71%;animation-duration:140s,4.7s;animation-delay:0s,1.2s}@keyframes starDrift{0%{transform:translate(0)}to{transform:translate(-6%,3%)}}@keyframes starTwinkle{0%{opacity:.45}to{opacity:1}}.title-haze{background:linear-gradient(#00000040 0%,#0000002e 62%,#000000c7 100%);position:absolute;inset:0}.title-content{text-align:center;position:absolute;bottom:16%;left:16px;right:16px}@media (pointer:coarse){.title-content{top:50%;bottom:auto;transform:translateY(-38%)}.title-content:before{content:"";z-index:-1;filter:blur(8px);background:radial-gradient(#00000080,#0000 72%);position:absolute;inset:-10% -12%}.title-haze{background:radial-gradient(at 50% 58%,#0000008c 0%,#0000001a 55%,#0000004d 100%)}}.title-eyebrow{letter-spacing:clamp(3px,1.2vw,7px);color:#c3ebffc7;text-shadow:0 1px 8px #000000e6;margin-bottom:14px;font-size:clamp(9px,2.6vw,13px)}.title-logo{letter-spacing:.22em;text-indent:.22em;color:#f2fbff;text-shadow:0 0 18px #8fe9ff8c,0 0 60px #60c8ff66,0 0 120px #60a0ff4d;font-size:clamp(46px,12vw,150px);font-weight:600;line-height:1;animation:4s ease-in-out infinite alternate logoGlow}@keyframes logoGlow{0%{text-shadow:0 0 18px #8fe9ff73,0 0 60px #60c8ff4d,0 0 120px #60a0ff38}to{text-shadow:0 0 26px #8fe9ffb3,0 0 80px #60c8ff80,0 0 150px #60a0ff66}}.title-press{letter-spacing:clamp(3px,1.4vw,6px);color:#ffffffe6;text-shadow:0 1px 10px #000000e6;min-height:1.4em;margin-top:26px;font-size:clamp(12px,3.2vw,16px);transition:opacity .5s;animation:2.2s ease-in-out infinite pressPulse}.title-press.loading{opacity:.6;animation:none}.title-progress{background:#8fe9ff24;border-radius:2px;width:min(280px,64vw);height:3px;margin:16px auto 0;transition:opacity .8s;position:relative;overflow:visible}.title-progress.done{opacity:0}.title-progress-fill{background:linear-gradient(90deg, #8fe9ff80, var(--hud-cyan));border-radius:2px;width:0%;height:100%;transition:width .3s;box-shadow:0 0 12px #8fe9ffe6}.title-progress-spark{background:#dff7ff;border-radius:50%;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;transition:left .3s;position:absolute;top:50%;left:0;box-shadow:0 0 14px 3px #8fe9ffe6}.title-progress.done .title-progress-spark{opacity:0}.title-pct{letter-spacing:3px;color:#8fe9ff99;font-variant-numeric:tabular-nums;min-height:14px;margin-top:10px;font-size:11px}.title-foot{left:0;right:0;bottom:calc(4% + env(safe-area-inset-bottom));text-align:center;letter-spacing:3px;color:#fff6;font-size:12px;position:absolute}
