body {margin:0; overflow:hidden; background:#0a0a12;}
canvas {display:block;}
#info {
    position:absolute; top:12px; left:12px; color:#00ddaa; font-family:'Courier New',monospace;
    font-size:13px; z-index:100; pointer-events:none; text-shadow:0 0 6px #00ddaa44;
    line-height:1.6;
}
.key {color:#fff; font-weight:bold; background:#223; padding:1px 5px; border-radius:3px;}
#orbitPanel {
    position:absolute; top:12px; right:12px; color:#00ddaa; font-family:'Courier New',monospace;
    font-size:12px; z-index:100; background:rgba(5,10,20,0.75); padding:10px 14px;
    border:1px solid rgba(0,221,170,0.2); border-radius:8px; min-width:250px;
}
.orbitTitle {text-align:center; font-weight:bold; margin-bottom:8px; border-bottom:1px solid rgba(0,221,170,0.25); padding-bottom:6px; letter-spacing:2px;}
.orbitRow {padding:4px 6px; cursor:default; border-radius:4px; display:flex; justify-content:space-between; gap:8px; transition:background 0.15s;}
.orbitRow:hover {background:rgba(0,221,170,0.12);}
.orbitRow .lbl {color:#6699aa; min-width:36px;}
.orbitRow .val {color:#ccc; flex:1;}
.orbitRow .cnt {color:#ffaa44; min-width:40px; text-align:right;}
#stationPanel {
    position:absolute; top:auto; right:12px; color:#ff8844; font-family:'Courier New',monospace;
    font-size:12px; z-index:100; background:rgba(5,10,20,0.75); padding:10px 14px;
    border:1px solid rgba(255,136,68,0.2); border-radius:8px; min-width:250px; margin-top:8px;
}
.stTitle {text-align:center; font-weight:bold; margin-bottom:8px; border-bottom:1px solid rgba(255,136,68,0.25); padding-bottom:6px; letter-spacing:2px; color:#ff8844;}
.stRow {padding:4px 6px; cursor:default; border-radius:4px; display:flex; align-items:center; justify-content:space-between; gap:8px; transition:background 0.15s;}
.stRow:hover {background:rgba(255,136,68,0.12);}
.stRow .stName {color:#cc8866; flex:1; font-size:11px;}
.stBtn {font-size:10px; padding:2px 8px; border-radius:3px; border:1px solid #664422;
    background:transparent; color:#886644; cursor:pointer; font-family:inherit; transition:all 0.15s;}
.stBtn.active {border-color:#ff6600; color:#ff6600; background:rgba(255,102,0,0.15);}
#feederPanel {
    position:absolute; left:12px; color:#44dd88; font-family:'Courier New',monospace;
    font-size:12px; z-index:100; background:rgba(5,10,20,0.75); padding:10px 14px;
    border:1px solid rgba(68,221,136,0.2); border-radius:8px; min-width:220px;
}
.fdTitle {text-align:center; font-weight:bold; margin-bottom:8px; border-bottom:1px solid rgba(68,221,136,0.25); padding-bottom:6px; letter-spacing:2px; color:#44dd88;}
.fdRow {padding:3px 6px; cursor:default; border-radius:4px; display:flex; align-items:center; justify-content:space-between; gap:6px; transition:background 0.15s; font-size:11px;}
.fdRow:hover {background:rgba(68,221,136,0.12);}
.fdName {color:#44aa77; flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.fdPct {color:#88ccaa; min-width:50px; text-align:right; font-size:10px;}
#lineSvg {position:absolute; top:0; left:0; width:100%; height:100%; pointer-events:none; z-index:99;}
