*{box-sizing:border-box}body{margin:0;background:#080e1a;color:#eaf4fa;font:16px/1.5 system-ui,sans-serif}main{max-width:1160px;margin:auto;padding:30px 24px}header{display:flex;justify-content:space-between;align-items:center;gap:20px}h1{font-size:clamp(30px,5vw,50px);line-height:1.08;margin:6px 0 14px;font-weight:650;letter-spacing:-2px}h2{font-size:22px;margin:0 0 12px}.eyebrow{color:#7ddbd0;text-transform:uppercase;letter-spacing:3px;font-size:12px}p{color:#b1c3d3}.layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;margin:24px 0}.panel{border:1px solid #2a3a4a;background:#101c2b;border-radius:20px;padding:24px}.scene{position:relative;min-height:280px;overflow:hidden;background:#050b14;border-radius:14px}.scene img{display:block;width:100%;height:300px;object-fit:contain}.badge{position:absolute;top:15px;left:15px;background:#07121ed9;padding:7px 12px;border:1px solid #435467;border-radius:30px;font-size:12px}.chart{width:100%;height:auto;display:block;background:#081320;border-radius:12px;margin:18px 0}label{display:block;margin:18px 0;color:#cddbe5;font-size:14px}input[type=range]{display:block;width:100%;accent-color:#7ddbd0;margin-top:12px}button,select{font:inherit;color:#eaf4fa;background:#20394d;border:1px solid #416177;border-radius:9px;padding:10px 14px;cursor:pointer;min-height:44px}select{width:100%;margin-top:8px}button:hover{background:#31556b}button.primary{background:#80dfcc;color:#06232a;font-weight:700;border:0;width:100%;margin-top:10px}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f3bb70;outline-offset:3px}button:disabled{opacity:.45;cursor:default}.row{display:flex;gap:10px;flex-wrap:wrap}.metric{font-size:34px;color:#f2bd7b;font-variant-numeric:tabular-nums}.feedback{min-height:72px;background:#081320;border-left:3px solid #7ddbd0;padding:12px;border-radius:5px;margin:18px 0;color:#d6e9ef}.legend{font-size:13px;color:#a9c3d2}.status{color:#7ddbd0}footer{color:#8098aa;font-size:12px;margin:25px 0}details{margin-top:18px}summary{cursor:pointer}.planet{position:absolute;background:#050b15;border:1px solid #47617b;border-radius:100%;width:44px;height:44px;top:45%;left:45%;box-shadow:0 0 15px #050b15}output{float:right;color:#7ddbd0;font-variant-numeric:tabular-nums}@media(max-width:760px){main{padding:20px 14px}.layout{grid-template-columns:1fr;gap:14px}.panel{padding:18px}.scene img{height:230px}header{align-items:flex-start}h1{letter-spacing:-1px}.metric{font-size:28px}}
.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:15px 0}.cards button{text-align:left;font-size:14px}.cards button.selected{border:2px solid #80dfcc;background:#234a50}.cards small{display:block;color:#a7c4d4}input[type=number]{max-width:100%;width:100%;background:#081320;color:#eef;border:1px solid #416177;border-radius:8px;padding:10px;font:inherit;margin-top:8px}.telemetry{font-variant-numeric:tabular-nums;color:#7ddbd0}.scene .overlay{position:absolute;inset:0;background:linear-gradient(90deg,#081320d9,transparent);padding:20px;pointer-events:none}.scene .overlay p{max-width:250px}.map{position:relative}.map canvas{margin:0}.ship-marker{position:absolute;width:40px!important;height:40px!important;object-fit:cover;border:2px solid #80dfcc;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.passlist{max-height:480px;overflow:auto}.passlist button{width:100%;text-align:left;margin-bottom:8px;font-size:13px}.passlist button.selected{border:2px solid #80dfcc;background:#234a50}@media(max-width:500px){.cards{grid-template-columns:1fr}.scene .overlay p{max-width:180px;font-size:14px}}