.text-button{padding:0;background:transparent;display:inline-flex;align-items:center;gap:6px;color:var(--muted);font:inherit;min-height:28px}.text-button svg{width:15px;height:15px}.text-button.eyebrow{font:500 12px var(--mono);letter-spacing:.02em}.mint{color:var(--mint)!important}.scan-image{position:absolute;right:-6px;top:-7px;width:209px;height:291px;object-fit:cover;object-position:50% 15%;mix-blend-mode:screen;filter:contrast(1.15);opacity:.92;mask-image:linear-gradient(180deg,black 82%,transparent)}.scan-safe .scan-image{filter:grayscale(1) contrast(1.12);opacity:.68}.scan-safe .scan-readout strong span,.scan-safe .scan-footer span:last-child{color:var(--mint)}.scan-safe .scan-sweep{background:linear-gradient(90deg,transparent,#a7dbbe66,transparent)}.scan-tag{position:absolute;right:8px;top:122px;display:flex;align-items:center;gap:5px;z-index:5;font:400 12px/1.5 var(--mono);color:#c4ccc9}.scan-tag b{font-size:12px;font-weight:500;color:#ff8c7b}.scan-safe .scan-tag b{color:var(--mint)}.crosshair{font-size:26px;color:#e99182;opacity:.65}.virus-bars i:nth-child(-n+3){background:#2e3638}.virus-bars i.lit{background:var(--red)}.scan-safe .virus-bars i.lit{background:var(--mint)}.reserve-track.safe>span{background:var(--mint)}.protection-line{margin-top:17px;padding:13px 0;display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.protection-line>svg{color:var(--muted);width:20px;flex-shrink:0}.protection-line>div{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:1;font-size:13px}.protection-line strong{font:500 13px var(--mono);text-align:right;color:#bdc9c6}.protection-line span{color:var(--muted)}.protection-line>button{padding:6px;background:transparent;color:var(--muted)}.action-row{margin-top:18px}.action-row .primary{justify-content:flex-start}.action-row svg{width:19px;height:19px;flex-shrink:0}.heal-button{gap:7px;position:relative;flex:1;white-space:nowrap}.heal-button small{font:12px var(--mono);color:var(--mint);background:#203029;border-radius:3px;min-width:20px;padding:1px 4px;margin-left:2px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.mission-teaser{width:100%;padding:16px 0 0;background:none;text-align:left;display:flex;align-items:center;gap:13px}.teaser-icon{display:grid;place-items:center;flex-shrink:0;width:42px;height:44px;border:1px solid #54302a;border-radius:5px;color:#f18b7a;background:#261b19}.teaser-icon.safe{background:#1a2d25;border-color:#365040;color:var(--mint)}.mission-teaser>span:nth-child(2),.nearby-item>span:nth-child(2),.scenario-option>span:nth-child(2){flex:1;min-width:0}.mission-teaser strong,.nearby-item strong,.scenario-option strong{display:block;font-size:14px;font-weight:500;line-height:1.4}.mission-teaser small,.nearby-item small,.scenario-option small{display:block;color:var(--muted);font-size:13px;line-height:1.5;margin-top:4px}.mission-teaser>svg{width:18px;color:var(--muted);flex-shrink:0}.sector-badge{font:500 27px/1 var(--display);text-align:center;color:var(--mint);padding-left:8px}.sector-badge small{display:block;font:12px var(--mono);color:var(--muted);margin-top:5px}.map-notice{display:flex;align-items:center;gap:7px;margin:0 0 13px;font-size:12px;color:var(--muted)}.map-notice svg{width:15px;height:15px;flex-shrink:0}.map-panel{position:relative;margin:0 -20px;aspect-ratio:1.05;overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.sector-map{width:100%;height:100%;fill:none;stroke:none}.map-top-label{position:absolute;top:13px;left:20px;right:20px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.map-top-label .eyebrow{font-size:12px;background:#0b1213b0;padding:5px 7px;color:#a8b8b5}.compass{font:500 13px var(--mono);color:var(--muted)}.map-pin{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;background:#202b2b;border:1px solid #627675;border-radius:10px;color:#c6d5cf;box-shadow:0 4px 12px #0008;display:grid;place-items:center;z-index:3}.map-pin.selected{background:var(--red);color:#1d1310;border-color:#ffb4a7;box-shadow:0 0 0 7px #ff4b421a,0 6px 25px #0008}.map-pin.collected{background:#213d31;border-color:#5c8671;color:var(--mint)}.map-pin svg{width:23px;height:23px}.your-position{position:absolute;left:43%;top:77%;transform:translateX(-50%);color:#b1dac6;background:#101d16;font:12px var(--mono);padding:3px 5px;white-space:nowrap}.map-center{position:absolute;bottom:20px;right:20px;width:43px;height:43px;border:1px solid var(--line);border-radius:6px;background:#121e20;color:#b9cfca;display:grid;place-items:center}.map-scale{position:absolute;bottom:20px;left:20px;font:12px var(--mono);color:var(--muted);border-bottom:2px solid #819490;width:52px;padding-bottom:4px}.selected-cache{margin-top:20px}.selected-cache h2{font:600 28px var(--display);margin-top:11px}.selected-cache>p{font-size:14px;color:var(--muted);margin-top:4px}.selected-cache .distance{font:12px var(--mono);color:var(--muted);white-space:nowrap}.cache-reward{display:flex;align-items:center;gap:8px;color:var(--mint);font-size:14px;margin:16px 0}.cache-reward svg{width:18px;height:18px}.selected-cache>.primary,.selected-cache>.secondary{width:100%;justify-content:space-between}.selected-cache>.micro{font-size:12px;margin-top:9px}.cancel-expedition{width:100%;justify-content:center;font-size:13px;padding-top:8px}.nearby-heading{margin-top:27px;border-top:1px solid var(--line);padding-top:23px;margin-bottom:9px}.nearby-heading h2{font-size:16px}.nearby-heading .eyebrow{font-size:12px;letter-spacing:0}.nearby-item{display:flex;align-items:center;gap:12px;text-align:left;width:100%;padding:14px 0;border-bottom:1px solid var(--line);background:none}.nearby-item .teaser-icon{background:#162121;border-color:#354542;color:#a8c2b6}.nearby-item.selected .teaser-icon{background:#261b19;border-color:#54302a;color:#f18b7a}.nearby-distance{color:var(--muted);font:12px var(--mono);white-space:nowrap}.inventory-count{display:flex;align-items:center;gap:7px;background:var(--surface);border:1px solid var(--line);border-radius:5px;padding:8px 10px;font:14px var(--mono);color:var(--mint)}.inventory-count svg{width:18px;height:18px}.gear-summary{display:flex;align-items:center;gap:12px;padding:17px 13px;background:#14201c;border:1px solid #304339;border-radius:6px}.round-icon{width:43px;height:43px;border:1px solid #3f5d4c;border-radius:50%;display:grid;place-items:center;flex-shrink:0;color:var(--mint)}.gear-summary>div{flex:1}.gear-summary .eyebrow{font-size:12px;letter-spacing:.025em}.gear-summary strong{font:500 28px var(--display);display:block;line-height:1.2;color:var(--mint);margin-top:4px}.gear-summary strong small{display:block;font:12px/1.5 var(--body);color:#a5b4ac;margin-top:4px}.summary-amount{font:500 18px var(--mono);text-align:right;color:#c1d6c9}.summary-amount small{display:block;color:#9baa9f;font:12px var(--mono);margin-top:5px}.filter-tabs{display:flex;gap:6px;padding:19px 0}.filter-tabs button{background:transparent;border:1px solid transparent;border-radius:5px;padding:9px 15px;font-size:14px;color:var(--muted);min-height:44px}.filter-tabs button.selected{background:var(--surface2);border-color:#354144;color:var(--text)}.gear-list{display:grid;gap:15px}.gear-card{border:1px solid var(--line);background:linear-gradient(135deg,#161d1e,#0e1415);border-radius:8px;padding:18px}.gear-card.equipped{border-color:#48624e}.gear-card-top{position:relative;display:flex;align-items:flex-start;gap:13px;margin-bottom:16px}.gear-art{height:80px;width:80px;flex-shrink:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;border:1px solid #3b4b46;border-radius:9px;background:radial-gradient(#30463b,#18231f);color:#b4cfba}.gear-art svg{width:35px;height:35px;stroke-width:1.2}.gear-art>span{font:12px var(--mono);letter-spacing:.06em;opacity:.7}.gear-art.hazmat{background:radial-gradient(#413d28,#252318);border-color:#575039;color:#c6c099}.gear-art.medical{background:radial-gradient(#4c2724,#261a19);border-color:#61413b;color:#eea28f}.item-category{font:12px/1.5 var(--mono);color:var(--muted);padding-top:3px;max-width:105px}.gear-state{position:absolute;right:0;bottom:0;border:1px solid var(--line);border-radius:4px;padding:4px 7px;font-size:12px;color:#aab5b4}.gear-state.on{background:#223229;border-color:#415b47;color:var(--mint)}.gear-card h2{font:600 27px var(--display);margin-bottom:6px}.gear-card>p{font-size:14px;color:var(--muted);line-height:1.5}.item-effect{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px;border-top:1px solid var(--line);padding-top:13px;font-size:13px;color:#a8b5b3}.item-effect strong{font:500 16px var(--mono);color:var(--mint)}.gear-card>.primary,.gear-card>.secondary{width:100%;justify-content:space-between;margin-top:17px;min-height:46px;font-size:14px}.gear-card>.primary{background:#bbd2bf;color:#102016}.gear-card>.primary:hover{background:#d0e0d2}.craft-cost{font-size:13px;display:flex;gap:8px;align-items:center;color:#c6bd96;margin-top:13px}.craft-cost svg{width:17px;height:17px}.gear-footnote{margin-top:19px}.wallet-summary{padding:23px 20px;background:linear-gradient(135deg,#261b19,#121719);border:1px solid #4b3430;border-radius:9px}.wallet-summary>strong{display:block;font:500 66px var(--display);line-height:1.25;margin-top:12px}.wallet-summary strong span{font-size:43px;color:#9a9d94}.wallet-summary strong small{font:14px var(--mono);color:var(--muted);margin-left:10px}.locked-label{display:flex;align-items:center;gap:7px;font-size:12px;color:#cfb4a7}.locked-label svg{width:15px;height:15px;flex-shrink:0}.wallet-divider{height:1px;background:#4b3731;margin:21px 0 16px}.wallet-summary>p{color:#baa9a1;font-size:14px}.balance-breakdown{margin:23px 0}.balance-breakdown>div{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:19px 0}.balance-breakdown>div>svg{color:var(--muted);flex-shrink:0}.balance-breakdown>div>span{font-size:14px;flex:1}.balance-breakdown small{display:block;font-size:12px;line-height:1.5;color:var(--muted);margin-top:4px}.balance-breakdown strong{font:500 16px var(--mono);color:#c9d4ce}.honest-note{display:flex;align-items:flex-start;gap:10px;background:#182120;border:1px solid #2d3b37;border-radius:5px;padding:14px}.honest-note>svg{width:18px;height:18px;color:var(--mint);flex-shrink:0;margin-top:2px}.honest-note>p{font-size:13px;line-height:1.65;color:#acbbb2;margin:0}.kit-row{display:flex;flex-wrap:wrap;gap:12px;margin:19px 0}.kit-row span{display:flex;align-items:center;gap:6px;font-size:13px;color:#bccbbf}.kit-row svg{width:17px;height:17px}.full-width{width:100%;justify-content:center}.sheet{padding-top:34px;padding-bottom:calc(24px + env(safe-area-inset-bottom))}.sheet-handle{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:34px;height:3px;background:#657071;border-radius:5px}.sheet-close{position:absolute;top:23px;right:15px;width:40px;height:40px;display:grid;place-items:center;background:transparent;color:var(--muted)}.sheet-close svg{width:21px;height:21px}.sheet .eyebrow{margin:4px 38px 12px 0;font-size:12px}.sheet h2{padding-right:24px;line-height:1.15;font-size:31px}.sheet-symbol{width:64px;height:64px;background:#252d26;border:1px solid #4d5f4f;color:#bbd4b8;border-radius:12px;display:grid;place-items:center;margin-bottom:22px}.sheet-symbol svg{width:32px;height:32px}.sheet-symbol.medical{color:#ecb29d;border-color:#6b4a3e;background:#30221d}.sheet-stat{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:15px 0;font-size:14px;color:#b0bcba}.sheet-stat strong{font:500 16px var(--mono);color:var(--text)}.sheet .micro{font-size:12px;text-align:center;margin:13px 0 0}.scenario-option{display:flex;align-items:center;gap:12px;background:var(--surface2);border:1px solid var(--line);width:100%;text-align:left;border-radius:6px;padding:15px 12px;margin-top:12px}.scenario-option>svg{width:18px;flex-shrink:0;color:var(--muted)}.scenario-option small{font-size:13px}.install-steps{padding-left:20px;color:#a6b4b1;font-size:15px}.install-steps li{margin-bottom:19px;padding-left:4px}.install-steps strong,.install-steps span{display:block}.install-steps strong{color:var(--text);margin-bottom:6px}.close-text{margin-top:18px;min-height:40px;font-size:14px}.qr-code{width:166px;height:166px;border:10px solid #e8eee8;background:#e8eee8;border-radius:8px}.desktop-gate .qr-code{margin:0}.desktop-gate{gap:20px}#screen:focus{outline:none}
@media(max-width:360px){.map-panel{margin-left:-15px;margin-right:-15px}.scan-image{right:-14px;width:184px;height:270px}.scan-tag{right:3px;top:112px;font-size:12px}.scan-readout{max-width:133px}.scan-readout>.eyebrow{font-size:12px;letter-spacing:.03em}.scan-readout strong{font-size:4rem}.scan-footer{font-size:12px;letter-spacing:-.04em;left:10px;right:10px}.action-row{gap:7px}.primary,.secondary{padding-left:12px;padding-right:12px;font-size:14px}.heal-button{gap:5px}.heal-button svg{width:17px}.heal-button small{margin-left:0}.protection-line>div{gap:6px}.protection-line strong,.protection-line span{font-size:12px}.gear-summary{padding:14px 10px;gap:9px}.gear-summary .round-icon{display:none}.map-notice{font-size:12px;letter-spacing:-.015em}.gear-card{padding:15px}.balance-row .loss{font-size:12px}.text-button.eyebrow{font-size:12px;letter-spacing:-.02em}}
@media(min-width:761px){.review-mode .map-panel{margin-left:-20px;margin-right:-20px}}
@media(prefers-reduced-motion:reduce){.map-route{animation:none}}
/* Keep the two primary actions above the bottom navigation on common phones. */
.topbar{height:64px}.demo-strip{padding:5px 0}.page-heading{padding:20px 0 16px}.diagnostic{height:242px}.scan-image{top:3px;right:0;width:186px;height:260px}.scan-tag{top:111px}.reserve-card{padding-top:16px}.protection-line{padding:10px 0;margin-top:15px}.action-row{margin-top:14px}
@media(max-height:740px) and (max-width:760px){.diagnostic{height:204px}.scan-image{width:158px;height:222px;top:0;right:8px}.scan-readout{top:17px}.scan-readout strong{font-size:3.6rem}.scan-tag{top:92px}.virus-bars{margin-top:11px}.readout-label{margin-top:4px}.page-heading{padding:15px 0 13px}.topbar{height:58px}}
@media(min-width:761px){.desktop-gate #preview-mobile{display:none}}
@media(max-width:360px){.scan-image{width:168px;height:242px;right:-2px}.scan-footer span:first-child{font-size:12px;letter-spacing:-.06em}.scan-tag{right:4px}}.scan-readout{top:24px}.scan-readout strong{font-size:4rem}.readout-label{line-height:1.4}.virus-bars{margin-top:12px}.scan-footer{background:linear-gradient(90deg,#080b0ca0,transparent);padding-top:3px}
@media(max-height:740px) and (max-width:760px){.scan-readout{top:12px}.scan-readout strong{font-size:3.2rem}.readout-label{font-size:12px;line-height:1.3}.virus-bars{margin-top:8px}.virus-bars i{height:12px}}