/* KSA OUTPOST 86 — companion panel, astronaut motion and training effects */
#ksa-console{position:fixed;right:18px;bottom:18px;z-index:1500;color:#edf3f7;font-family:Manrope,"Segoe UI",sans-serif;pointer-events:none}
#ksa-console *{box-sizing:border-box}
#ksa-console button{font:inherit;color:inherit;cursor:pointer}
#ksa-console button:focus-visible,#ksa-console input:focus-visible{outline:2px solid #efa34e;outline-offset:3px}
.ksa-launcher{pointer-events:auto;display:flex;align-items:center;gap:10px;min-width:176px;padding:10px 13px;border:1px solid rgba(239,163,78,.42);background:linear-gradient(120deg,rgba(8,18,30,.96),rgba(15,33,48,.94));box-shadow:0 10px 38px #0008, inset 0 0 22px #78a9c50b;backdrop-filter:blur(14px);transition:transform .2s,border-color .2s,box-shadow .2s}
.ksa-launcher:hover,.ksa-launcher.is-open{transform:translateY(-3px);border-color:#efa34e;box-shadow:0 12px 42px #0009,0 0 22px #efa34e19}
.ksa-launcher-icon{width:25px;height:25px;display:flex;align-items:center;justify-content:center;gap:3px;border:1px solid #efa34e73;border-radius:50%;background:#efa34e13}
.ksa-launcher-icon i{display:block;width:2px;background:#f0b66b;border-radius:4px;animation:ksa-eq .9s ease-in-out infinite alternate}
.ksa-launcher-icon i:nth-child(1){height:7px}.ksa-launcher-icon i:nth-child(2){height:13px;animation-delay:.2s}.ksa-launcher-icon i:nth-child(3){height:9px;animation-delay:.4s}
.ksa-launcher-copy{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.ksa-launcher-copy b{font:800 9px "DM Mono",monospace;letter-spacing:.12em}.ksa-launcher-copy small{font:7px "DM Mono",monospace;color:#8fa1af;letter-spacing:.12em}
.ksa-live-dot{width:6px;height:6px;margin-left:auto;border-radius:50%;background:#75c49b;box-shadow:0 0 10px #75c49b;animation:ksa-pulse 1.8s ease-in-out infinite}
.ksa-panel{pointer-events:auto;position:absolute;right:0;bottom:62px;width:min(390px,calc(100vw - 28px));max-height:min(590px,calc(100dvh - 105px));overflow:hidden;display:flex;flex-direction:column;border:1px solid rgba(166,192,210,.23);background:linear-gradient(150deg,rgba(10,23,36,.985),rgba(4,12,21,.99));box-shadow:0 20px 70px #000b,0 0 50px #78a9c510;backdrop-filter:blur(20px);animation:ksa-panel-in .22s ease-out}
.ksa-panel[hidden]{display:none}
.ksa-panel-head{min-height:59px;padding:13px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(174,196,211,.14);background:linear-gradient(90deg,#efa34e12,transparent 74%)}
.ksa-panel-head>div{display:flex;flex-direction:column;gap:4px}.ksa-kicker{font:7px "DM Mono",monospace;letter-spacing:.16em;color:#efa34e}.ksa-panel-head strong{font:800 11px "DM Mono",monospace;letter-spacing:.13em}.ksa-close{width:28px;height:28px;border:1px solid #ffffff28;background:#ffffff09;font-size:18px;line-height:1;color:#b8c5ce}.ksa-close:hover{border-color:#efa34e;color:#efa34e}
.ksa-tabs{display:grid;grid-template-columns:repeat(3,1fr);padding:0 15px;border-bottom:1px solid rgba(174,196,211,.12)}.ksa-tabs button{padding:12px 4px 10px;border:0;border-bottom:2px solid transparent;background:none;color:#8193a1;font:8px "DM Mono",monospace;letter-spacing:.14em}.ksa-tabs button.is-active{color:#f4bd7d;border-bottom-color:#efa34e}
.ksa-view{padding:14px 16px 8px;overflow:auto;overscroll-behavior:contain}.ksa-view[hidden]{display:none}
.ksa-crew-card{position:relative;min-height:148px;overflow:hidden;padding:15px 14px;border:1px solid #8eafc128;background:radial-gradient(ellipse at 75% 46%,#78a9c51c,transparent 52%),linear-gradient(110deg,#142b3d,#0a1726 74%)}
.ksa-crew-card:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 5px,#ffffff04 6px)}
.ksa-crew-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:6px}.ksa-crew-copy>strong{font:800 13px "Barlow Condensed",Impact,sans-serif;letter-spacing:.12em}.ksa-crew-copy>small{font:7px "DM Mono",monospace;color:#9eb0bd;letter-spacing:.12em}.ksa-suit-chip{margin-top:9px;padding:6px 8px;border:1px solid #75c49b51;background:#75c49b0c;color:#a6dbbd;font:6px "DM Mono",monospace;letter-spacing:.1em}.ksa-suit-chip i{display:inline-block;width:5px;height:5px;margin-right:5px;border-radius:50%;background:#75c49b;box-shadow:0 0 7px #75c49b}
.ksa-astronaut-wrap{position:absolute;z-index:1;right:-3px;bottom:-36px;width:158px;height:193px;filter:drop-shadow(0 9px 11px #0008);transform-origin:50% 88%;animation:ksa-astronaut-float 3.7s ease-in-out infinite}.ksa-astronaut-svg,.ksa-astronaut-image{display:block;width:100%;height:100%;object-fit:contain}.ksa-astronaut-svg .arm-left{transform-box:fill-box;transform-origin:80% 12%;animation:ksa-arm-sway 3.2s ease-in-out infinite}.ksa-astronaut-svg .arm-right{transform-box:fill-box;transform-origin:20% 12%;animation:ksa-arm-sway 3.2s ease-in-out -1.6s infinite}.ksa-astronaut-svg .leg-left,.ksa-astronaut-svg .leg-right{transform-box:fill-box;transform-origin:50% 12%;animation:ksa-leg-idle 3.2s ease-in-out infinite}.ksa-astronaut-svg .leg-right{animation-delay:-1.6s}

.ksa-crew-foot{position:absolute;z-index:2;left:14px;right:14px;bottom:10px;display:flex;justify-content:space-between;color:#758a99;font:6px "DM Mono",monospace;letter-spacing:.12em}.ksa-crew-foot b{color:#efa34e;font-size:8px}
.ksa-data-heading{display:flex;justify-content:space-between;gap:10px;margin:17px 0 10px;color:#b7c5cf;font:7px "DM Mono",monospace;letter-spacing:.12em}.ksa-data-heading span:last-child{color:#efa34e}
.ksa-resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ksa-resource{padding:10px 10px 9px;border:1px solid #aec4d31b;background:#ffffff06}.ksa-resource>span{display:block;color:#8fa2b0;font:6px "DM Mono",monospace;letter-spacing:.1em}.ksa-resource>b{display:block;margin:4px 0 7px;font:700 17px "Barlow Condensed",sans-serif;color:#e4edf2}.ksa-resource>i{display:block;height:3px;background:#283b4a;overflow:hidden}.ksa-resource>i>em{display:block;width:0;height:100%;background:#75c49b;transition:width .35s ease}.ksa-resource.is-caution>i>em{background:#efa34e}.ksa-resource.is-low>i>em{background:#e67871}.ksa-resource.is-low>b{color:#e67871}
.ksa-note{margin:11px 0 4px;color:#8295a3;font-size:8px;line-height:1.65}.ksa-panel-foot{min-height:29px;padding:8px 16px;display:flex;justify-content:space-between;border-top:1px solid #ffffff12;color:#607584;font:6px "DM Mono",monospace;letter-spacing:.12em}
.ksa-scan-top{display:flex;align-items:end;justify-content:space-between;gap:8px;margin-bottom:10px}.ksa-scan-top>div{display:flex;flex-direction:column;gap:5px}.ksa-scan-top strong{font:800 12px "Barlow Condensed",sans-serif;letter-spacing:.1em}.ksa-scan-pulse{color:#75c49b;font:6px "DM Mono",monospace;letter-spacing:.12em}.ksa-scan-pulse:before{content:"";display:inline-block;width:5px;height:5px;margin-right:6px;border-radius:50%;background:#75c49b;box-shadow:0 0 7px #75c49b;animation:ksa-pulse 1s infinite}
.ksa-scan-frame{position:relative;aspect-ratio:1/1;max-height:270px;overflow:hidden;border:1px solid #8198aa38;background:#0a1622}.ksa-scan-frame canvas{width:100%;height:100%;display:block;object-fit:cover;filter:contrast(1.05) saturate(.84)}.ksa-scan-frame:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#07131b23,transparent 30%,transparent 68%,#07131b80),repeating-linear-gradient(0deg,transparent 0 31px,#c0d3dd12 32px),repeating-linear-gradient(90deg,transparent 0 31px,#c0d3dd12 32px)}.ksa-scan-crosshair{position:absolute;left:50%;top:50%;width:24px;height:24px;border:1px solid #efa34e;transform:translate(-50%,-50%);border-radius:50%;box-shadow:0 0 16px #efa34e42}.ksa-scan-crosshair:before,.ksa-scan-crosshair:after{content:"";position:absolute;background:#efa34e}.ksa-scan-crosshair:before{left:50%;top:-8px;bottom:-8px;width:1px}.ksa-scan-crosshair:after{top:50%;left:-8px;right:-8px;height:1px}.ksa-scan-coord{position:absolute;left:9px;bottom:8px;z-index:1;color:#f0d5af;font:6px "DM Mono",monospace;letter-spacing:.12em}
.ksa-layer-switch{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:10px 0}.ksa-layer-switch button{padding:8px 3px;border:1px solid #ffffff18;background:#ffffff05;color:#91a3b1;font:7px "DM Mono",monospace;letter-spacing:.1em}.ksa-layer-switch button.is-active{border-color:#efa34e89;background:#efa34e12;color:#f1bd7b}
.ksa-range-label{display:flex;justify-content:space-between;gap:10px;margin:12px 0 7px;color:#93a5b3;font:7px "DM Mono",monospace;letter-spacing:.12em}.ksa-range-label output{color:#efa34e}.ksa-range{width:100%;height:4px;accent-color:#efa34e;cursor:pointer}.ksa-scale{display:flex;align-items:center;gap:8px;margin-top:9px;color:#738795;font:6px "DM Mono",monospace}.ksa-scale i{height:3px;flex:1;background:linear-gradient(90deg,#273b4a,#8b9090,#f1c17e)}
.ksa-audio-banner{display:flex;align-items:center;gap:13px;padding:16px 13px;margin-bottom:12px;border:1px solid #78a9c52c;background:radial-gradient(circle at 20% 50%,#78a9c51a,transparent 35%),#ffffff05}.ksa-audio-orbit{width:38px;height:38px;display:grid;place-items:center;border:1px solid #78a9c584;border-radius:50%;color:#a6d1e3;font-size:26px;animation:ksa-orbit 5s linear infinite}.ksa-audio-banner>div{display:flex;flex-direction:column;gap:5px}.ksa-audio-banner strong{font:800 13px "Barlow Condensed",sans-serif;letter-spacing:.14em}.ksa-audio-banner small{color:#8498a6;font-size:8px}.ksa-audio-row{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #ffffff12}.ksa-audio-row>div{display:flex;flex-direction:column;gap:4px}.ksa-audio-row b{font-size:10px;font-weight:700}.ksa-audio-row small{color:#8093a1;font-size:8px}.ksa-switch{width:35px;height:19px;padding:2px;border:1px solid #526576;border-radius:20px;background:#162636;transition:background .18s,border-color .18s}.ksa-switch i{display:block;width:13px;height:13px;border-radius:50%;background:#8a9aa6;transition:transform .18s,background .18s}.ksa-switch.is-on{background:#75c49b33;border-color:#75c49b}.ksa-switch.is-on i{transform:translateX(15px);background:#75c49b}.ksa-test-sound{width:100%;margin-top:15px;padding:11px 13px;display:flex;justify-content:space-between;border:1px solid #efa34e72;background:#efa34e12;color:#f1bd7b!important;font:8px "DM Mono",monospace;letter-spacing:.12em}.ksa-test-sound:hover{background:#efa34e24}
.ksa-boot-stamp{position:fixed;z-index:1600;left:50%;top:50%;display:flex;flex-direction:column;align-items:center;gap:8px;transform:translate(-50%,-50%);padding:17px 27px;border:1px solid #efa34e61;background:#06111de8;box-shadow:0 0 70px #0009;pointer-events:none;animation:ksa-boot-in .35s ease-out both}.ksa-boot-stamp span{color:#efa34e;font:700 34px "Barlow Condensed",sans-serif;letter-spacing:.12em}.ksa-boot-stamp b{color:#e6eef2;font:800 9px "DM Mono",monospace;letter-spacing:.2em}.ksa-boot-stamp small{color:#8094a3;font:6px "DM Mono",monospace;letter-spacing:.16em}.ksa-boot-stamp.is-gone{opacity:0;transition:opacity .5s}
.ksa-regolith-particle{position:fixed;z-index:1450;width:3px;height:3px;border-radius:50%;background:#d5c6ad;box-shadow:0 0 5px #d5c6ad66;pointer-events:none;animation:ksa-dust .8s ease-out var(--particle-delay) forwards}
#app.ksa-visor-mode:after{content:"";position:fixed;z-index:1400;inset:7px;border:1px solid #77b6cf50;box-shadow:inset 0 0 70px #78a9c50d,0 0 0 1px #040a10;pointer-events:none;background:linear-gradient(90deg,#78a9c506,transparent 14%,transparent 86%,#78a9c506)}
@keyframes ksa-eq{from{transform:scaleY(.35);opacity:.65}to{transform:scaleY(1);opacity:1}}@keyframes ksa-pulse{0%,100%{opacity:.55;filter:brightness(.8)}50%{opacity:1;filter:brightness(1.5)}}@keyframes ksa-panel-in{from{opacity:0;transform:translateY(9px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ksa-astronaut-float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-5px) rotate(1deg)}}@keyframes ksa-arm-sway{0%,100%{transform:rotate(0)}50%{transform:rotate(2deg)}}@keyframes ksa-leg-idle{0%,100%{transform:rotate(0)}50%{transform:rotate(-1deg)}}@keyframes ksa-orbit{from{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ksa-boot-in{from{opacity:0;transform:translate(-50%,-47%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes ksa-dust{0%{opacity:0;transform:translate(0,0) scale(.5)}20%{opacity:.8}100%{opacity:0;transform:translate(var(--drift-x),var(--drift-y)) scale(.08)}}
@media(max-width:650px){#ksa-console{right:10px;bottom:10px}.ksa-launcher{min-width:145px;padding:8px 10px}.ksa-panel{bottom:55px;max-height:calc(100dvh - 85px);width:min(360px,calc(100vw - 20px))}.ksa-view{padding:11px 12px 6px}.ksa-scan-frame{max-height:225px}.ksa-astronaut-wrap{width:139px;height:180px;right:-6px;bottom:-34px}.ksa-resource{padding:8px}}
@media(prefers-reduced-motion:reduce){.ksa-launcher-icon i,.ksa-live-dot,.ksa-astronaut-wrap,.ksa-astronaut-svg .arm-left,.ksa-astronaut-svg .arm-right,.ksa-astronaut-svg .leg-left,.ksa-astronaut-svg .leg-right,.ksa-audio-orbit,.ksa-boot-stamp,.ksa-regolith-particle{animation:none!important}.ksa-panel{animation:none}}
.ksa-scan-frame:before{content:"";position:absolute;z-index:1;left:0;right:0;top:-3px;height:2px;background:linear-gradient(90deg,transparent,#efa34e,transparent);box-shadow:0 0 12px #efa34e;animation:ksa-scanline 4.8s linear infinite;pointer-events:none}
@keyframes ksa-scanline{0%{top:0;opacity:0}8%{opacity:.85}92%{opacity:.85}100%{top:100%;opacity:0}}

.ksa-range:disabled{opacity:.35;cursor:not-allowed}
