/* Signal Lost v5: mission clarity, map alignment, and restrained game feedback. */
.scene{isolation:isolate}
.scene canvas{position:absolute;inset:0;z-index:0}
.scene-label{z-index:3}
.route-marker{width:26px;height:26px;padding:0;border-radius:50%;display:grid;place-items:center;background:#116b73;color:#fff;border:2px solid #b9ffff;box-shadow:0 4px 14px #0a414766;transform:translate(-50%,-4px);font-size:11px;animation:route-pop .18s ease-out}
.relay-label{width:23px;height:23px;padding:0;border-radius:50%;display:grid;place-items:center;background:#0d6974;border:2px solid #7cf6f4;box-shadow:0 0 0 4px #1cd9de2e;transform:translate(-50%,-4px);font-size:11px}
.compass{position:absolute;right:16px;bottom:15px;z-index:4;width:70px;height:70px;border:1px solid #ffffffa8;border-radius:50%;background:#f7faf6db;box-shadow:0 8px 24px #143d3d1c;display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr 1fr 1fr;place-items:center;transform:rotate(45deg);pointer-events:none}
.compass>*{font-style:normal;font-size:9px;line-height:1;transform:rotate(-45deg)}
.compass b:first-child{grid-column:2;grid-row:1}.compass span:nth-child(2){grid-column:1;grid-row:2}.compass i{grid-column:2;grid-row:2;width:5px;height:5px;background:#103b3f;border-radius:50%}.compass span:nth-child(4){grid-column:3;grid-row:2}.compass b:last-child{grid-column:2;grid-row:3}
.board-legend{position:absolute;left:16px;bottom:17px;z-index:4;display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:11px;background:#103b3fe8;color:#fff;box-shadow:0 8px 24px #103b3f2c;font-size:10px;pointer-events:none}
.legend-item{display:flex;align-items:center;gap:5px;white-space:nowrap}.legend-swatch{width:14px;height:14px;border-radius:4px;border:1px solid #ffffff6b}.legend-cargo{background:#e69d3f}.legend-dock{background:#a0e848;box-shadow:0 0 8px #a0e848}.legend-cell{background:#f7bd4f;border-radius:50%}.legend-key{background:#44d9e0}.legend-relay{background:#0d6974;border-color:#7cf6f4}
.board-tool-actions{display:flex;gap:2px}.budget-track{position:relative;height:5px;background:#e9eee8;border-radius:99px;margin:-7px 0 16px;overflow:hidden}.budget-track span{display:block;height:100%;width:0;background:#a0e848;border-radius:inherit;transition:width .2s}.budget-track i{position:absolute;top:-2px;width:2px;height:9px;background:#103b3f;border-radius:1px}
.companion img{animation:pip-hover 3.2s ease-in-out infinite}.companion[data-tone="error"]>div{box-shadow:inset 4px 0 #d9784b}.companion[data-tone="success"]>div{box-shadow:inset 4px 0 #86c53b}.companion[data-tone="hint"]>div{box-shadow:inset 4px 0 #27b8c0}
.program-panel{border:1px solid #e7ebe6}.program-panel::before{content:"";display:block;width:36px;height:4px;background:#a0e848;border-radius:99px;margin:-10px 0 20px}.queue-empty.next{box-shadow:inset 0 0 0 1px #9fc274}.running-step{animation:instruction-pulse .55s ease-in-out infinite alternate}
.dialog-map{width:min(1370px,calc(100% - 42px));max-width:none;padding:27px 30px;border-radius:26px}.dialog-map #dialog-content>h2{text-align:left;font-size:38px}.map-intro{display:flex;justify-content:space-between;align-items:start;gap:30px;margin-bottom:18px}.map-intro p{margin:0;max-width:520px}.map-kicker{margin:0 0 4px!important;font-size:12px!important;font-weight:800;letter-spacing:.7px;color:#2a676a!important}.journey-map{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;position:relative}.journey-zone{position:relative;min-height:250px;padding:18px;border-radius:20px;border:1px solid #dce4df;overflow:hidden}.journey-zone::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.24;background-image:linear-gradient(#fff0 94%,#fff 94%),linear-gradient(90deg,#fff0 94%,#fff 94%);background-size:22px 22px}.zone-0{background:#e7f0eb}.zone-1{background:#f3e6cb}.zone-2{background:#dff1f2}.zone-title{display:flex;align-items:center;gap:10px;position:relative;z-index:2}.zone-title>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;font-weight:850}.zone-title strong{display:block;font-size:15px}.zone-title small{display:block;color:#526c6e;margin-top:2px;font-size:10px}.mission-track{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,74px);align-items:center;margin-top:24px;gap:12px}.mission-track::before{content:"";position:absolute;left:11%;right:11%;top:50%;height:3px;background:#9fb5ad;box-shadow:0 -74px #9fb5ad;border-radius:99px}.map-node{position:relative;z-index:2;width:54px;height:54px;min-height:54px;padding:0;margin:auto;border-radius:50%;background:#fff;border:3px solid #8fa8a2;box-shadow:0 5px 0 #78918b;color:#103b3f;font-size:14px}.map-node:nth-child(n+4){grid-row:2}.map-node:nth-child(4){grid-column:3}.map-node:nth-child(5){grid-column:2}.map-node:nth-child(6){grid-column:1}.map-node.selected{border-color:#7fbd31;box-shadow:0 0 0 5px #a0e84845,0 5px 0 #609122}.map-node.completed{background:#143e42;color:white}.map-node:disabled{background:#d5ddda;color:#71837f;border-color:#b6c1be;box-shadow:none}.map-node small{display:block;font-size:8px;color:#a0e848;letter-spacing:-1px;margin-top:-1px}.map-node:disabled small{color:#71837f;letter-spacing:0}.pip-map-note{position:absolute;z-index:3;left:19px;bottom:12px;right:19px;display:flex;align-items:center;gap:8px;background:#ffffffdd;border-radius:11px;padding:8px 10px;font-size:10px;box-shadow:0 4px 14px #143d3d13}.pip-map-note img{width:33px;height:33px;object-fit:contain}.map-selection{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 2px 8px;border-bottom:1px solid #dfe5df}.selected-copy strong{display:block;font-size:15px}.selected-copy span{font-size:11px;color:#526c6e}.map-selection .dialog-actions{margin:0;flex-wrap:nowrap}.map-selection .dialog-actions button{min-width:150px}
.badge-heading{display:flex;align-items:end;justify-content:space-between;margin:16px 0 8px}.badge-heading h3{margin:0;font-size:18px}.badge-heading p{margin:0;font-size:11px}.badge-shelf{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.badge{display:flex;align-items:center;gap:8px;min-width:0;padding:8px;border-radius:13px;background:#f4f6f3;border:1px solid #e1e6e0}.badge.locked{filter:grayscale(1);opacity:.55}.badge-medal{display:grid;place-items:center;width:38px;height:38px;min-width:38px;border-radius:50%;background:#123f43;color:#a0e848;border:3px solid #ddb96f;box-shadow:inset 0 0 0 2px #ffffff26}.badge-medal svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.badge strong{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge small{display:block;font-size:8px;color:#526c6e;line-height:1.25;margin-top:2px}.badge-earned{display:flex;align-items:center;gap:12px;background:#eff8df;border:1px solid #cbe8a0;border-radius:15px;padding:10px 13px;margin:12px 0}.badge-earned .badge-medal{width:42px;height:42px}.map-expedition-note{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:10px 13px;border-radius:12px;background:#edf2ef;font-size:11px}.map-expedition-note p{margin:0}.dialog-map #dialog-content>.dialog-actions{display:none}
@keyframes pip-hover{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes route-pop{from{opacity:0;transform:translate(-50%,-4px) scale(.6)}to{opacity:1;transform:translate(-50%,-4px) scale(1)}}@keyframes instruction-pulse{to{box-shadow:0 0 0 4px #a0e84855}}
@media(max-width:900px){.board-legend{gap:7px;left:6px;bottom:8px}.legend-item{font-size:0}.legend-swatch{width:13px;height:13px}.compass{right:7px;bottom:7px;transform:rotate(45deg) scale(.82)}.dialog-map{padding:22px}.journey-map{grid-template-columns:1fr;max-height:430px;overflow:auto}.journey-zone{min-height:230px}.badge-shelf{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.board-legend{display:none}.compass{width:51px;height:51px;right:5px;bottom:5px}.board-tool-actions [data-action="strategy"]{display:none}.budget-track{margin:-4px 0 8px}.route-marker{width:20px;height:20px;font-size:9px}.dialog-map{width:calc(100% - 18px);padding:17px 14px}.dialog-map #dialog-content>h2{font-size:27px;padding-right:105px}.map-intro{display:block;margin-bottom:12px}.map-intro p:last-child{display:none}.map-intro button{position:absolute;right:14px;top:14px}.journey-map{display:flex;max-height:none;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;padding-bottom:5px}.journey-zone{min-width:calc(100% - 24px);min-height:218px;padding:13px;scroll-snap-align:start}.mission-track{grid-template-rows:repeat(2,61px);margin-top:15px}.mission-track::before{box-shadow:0 -61px #9fb5ad}.map-node{width:48px;height:48px;min-height:48px}.pip-map-note{bottom:7px}.map-selection{display:block}.map-selection .dialog-actions{margin-top:9px}.map-selection .dialog-actions button{min-width:0;padding:7px}.badge-heading{align-items:start}.badge-heading p{display:none}.badge-shelf{display:flex;overflow:auto;padding-bottom:5px}.badge{min-width:142px}.map-expedition-note{align-items:start}.map-expedition-note button{min-width:105px}.companion img{animation:none}}
@media(prefers-reduced-motion:reduce){.companion img,.running-step,.route-marker{animation:none}}
.app[data-skin="aurora"]{--bg:#edf7f8;--ink:#153d54;--muted:#4e6d7b;--line:#d2e8ea;--lime:#9ce8e7}.app[data-skin="aurora"] .scene{background:radial-gradient(circle at 75% 18%,#b9f7f080,transparent 33%),linear-gradient(145deg,#e9fcfb,#dbe7ff)}.app[data-skin="aurora"] .program-panel{box-shadow:0 14px 42px #3155a018}.app[data-skin="aurora"] button.primary{box-shadow-color:#4da5ab}.skill-note,.chip-earned{display:grid;gap:4px;margin:12px 0;padding:11px 13px;border-radius:14px;background:#edf5f6;border:1px solid #cce3e3}.skill-note b,.chip-earned b{font-size:12px;color:#164f58}.skill-note span,.chip-earned span{font-size:12px;line-height:1.4;color:#526c6e}.chip-earned{background:#f4f8df;border-color:#dbeaa7}.chip-earned b{color:#557a1a}.dialog-workshop{width:min(660px,calc(100% - 28px));background:linear-gradient(145deg,#f8fffb,#eef7f5)}.dialog-workshop h2{margin-bottom:8px}.workshop-stats{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 15px;border-radius:16px;background:#123f43;color:white}.workshop-stats span{display:grid;gap:3px}.workshop-stats small{font-size:11px;color:#d0ece8}.workshop-stats strong{display:grid;place-items:center;min-width:76px;min-height:46px;padding:7px;border-radius:12px;background:#a0e848;color:#173e21;font-size:16px}.workshop-notice{padding:10px 12px;border-radius:11px;background:#eff8df!important;border:1px solid #cbe8a0;color:#476c19!important;font-weight:650}.workshop-list{display:grid;gap:10px;margin-top:14px}.workshop-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;border:1px solid #dce8e4;border-radius:16px;background:#fff}.workshop-card.owned{background:#f2fbeb;border-color:#bfe29b}.workshop-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#113f43;color:#a0e848;font-size:22px;box-shadow:inset 0 0 0 2px #ffffff1a}.workshop-card h3{margin:0;font-size:15px}.workshop-card p{margin:3px 0!important;font-size:12px!important;line-height:1.35!important}.workshop-card small{font-size:11px;color:#496b6c}.workshop-card button{min-width:112px;min-height:46px;padding:8px;font-size:12px}.workshop-ready{font-size:12px;font-weight:800;color:#44751a}.workshop-footnote{font-size:11px!important;margin:14px 0 0!important}.map-workshop{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:10px 13px;border-radius:12px;background:#e6f2ef}.map-workshop b,.map-workshop span{display:block}.map-workshop b{font-size:12px}.map-workshop span{margin-top:3px;font-size:11px;color:#526c6e}.map-workshop button{min-width:140px;min-height:44px;padding:7px 10px;font-size:12px}
@media(max-width:720px){.dialog-workshop{width:calc(100% - 18px);padding:18px 14px}.workshop-card{grid-template-columns:42px minmax(0,1fr);gap:9px}.workshop-icon{width:40px;height:40px}.workshop-card button,.workshop-ready{grid-column:2;justify-self:start}.workshop-card button{width:100%;min-width:0}.map-workshop{align-items:flex-start}.map-workshop button{min-width:105px;font-size:11px}.workshop-stats{padding:11px}.workshop-stats strong{min-width:62px;font-size:14px}}
.app[data-skin="aurora"] button.primary{box-shadow:0 5px 0 #4da5ab}.mission-loop{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:12px 0 10px}.loop-step{display:grid;grid-template-columns:18px minmax(0,1fr);grid-template-rows:auto auto;column-gap:5px;align-items:center;padding:7px 5px;border-radius:10px;background:#f1f4f1;color:#71837f;transition:background .2s,color .2s,transform .2s}.loop-step i{grid-row:1/3;display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#d7e0db;font-style:normal;font-size:9px;font-weight:850}.loop-step b{font-size:10px;line-height:1.1}.loop-step small{font-size:8px;line-height:1.2}.loop-step.active{background:#e9f8d8;color:#27581d;box-shadow:inset 0 0 0 1px #b6df83}.loop-step.active i,.loop-step.done i{background:#8fcf3c;color:#173d20}.loop-step.done{color:#44664d}.mission-brief{display:flex;align-items:center;gap:11px;margin:12px 0;padding:10px 12px;border:1px solid #d5e7e2;border-radius:16px;background:linear-gradient(135deg,#f7fffc,#e8f4f2)}.mission-brief img{width:68px;height:64px;object-fit:contain;filter:drop-shadow(0 7px 10px #103b3f28);flex:none}.mission-brief h3{margin:2px 0 3px;font-size:15px}.mission-brief p{margin:0!important;font-size:12px!important;line-height:1.35!important}.mission-brief .brief-label{font-size:9px;font-weight:850;letter-spacing:.8px;color:#18717a}.brief-real{margin-top:4px!important;color:#496b6c!important}.result-card{display:grid;gap:2px;margin:12px 0;padding:11px 13px;border-radius:14px;background:#123f43;color:#fff}.result-card span{font-size:10px;font-weight:800;letter-spacing:.8px;color:#b7e9e1}.result-card strong{font-size:15px}.result-card small{font-size:11px;color:#d8f0eb}.real-life-try{margin:12px 0;border:1px solid #d6e7d3;border-radius:13px;background:#fbfdf8;padding:0 12px}.real-life-try summary{min-height:43px;display:flex;align-items:center;cursor:pointer;font-size:12px;font-weight:800;color:#355c32}.real-life-try p{margin:0 0 11px!important;font-size:12px!important;line-height:1.45!important}.real-life-try[open] summary{margin-bottom:2px}@media(max-width:720px){.mission-loop{grid-column:1/3;margin:1px 0 0;gap:4px}.loop-step{grid-template-columns:17px 1fr;padding:5px 3px}.loop-step i{width:16px;height:16px;font-size:8px}.loop-step b{font-size:9px}.loop-step small{display:none}.mission-brief{gap:8px;padding:8px}.mission-brief img{width:54px;height:50px}.mission-brief h3{font-size:14px}.mission-brief p{font-size:11px!important}.result-card{padding:10px 11px}.real-life-try{padding:0 10px}}
