/* Graphic ephemeris view (graphic-ephemeris.js): its own host over the centre, like the Sky Map / Polar hosts. */
html:not(#o) #graphic-ephemeris-host{position:absolute;inset:0;z-index:1;overflow:hidden;display:flex;flex-direction:column}
html:not(#o) #graphic-ephemeris-host[hidden]{display:none}
html:not(#o) .graphic-ephemeris{box-sizing:border-box;display:flex;flex-direction:column;width:100%;height:100%;min-width:0;color:var(--tx);background:var(--bg);font-family:var(--o-font,system-ui,sans-serif);border:1px solid var(--bd);border-radius:12px;overflow:hidden}
html:not(#o) .geph-controls{display:flex;flex-wrap:wrap;gap:6px;padding:6px 8px;align-items:center;background:var(--pn);border-bottom:1px solid var(--bd)}
html:not(#o) .geph-controls .o-seg{display:flex;gap:3px;flex-wrap:nowrap}
html:not(#o) .geph-controls [hidden]{display:none}
html:not(#o) .geph-controls .o-pill{font:inherit;font-size:12px;padding:5px 9px;min-height:28px;border:1px solid var(--bd);border-radius:8px;color:var(--tx);background:var(--pn);cursor:pointer}
html:not(#o) .geph-controls .o-pill[aria-pressed=true]{background:var(--o-active-bg,var(--tx));color:var(--o-active-tx,var(--bg))}
html:not(#o) .geph-controls :is(button):focus-visible{outline:2px solid var(--ac);outline-offset:2px}
html:not(#o) .geph-legend{display:flex;gap:2px;flex-wrap:wrap}
html:not(#o) .geph-body{font-family:var(--glyph-font,inherit);font-size:18px;line-height:1;min-width:24px;min-height:26px;padding:2px 3px;border:1px solid transparent;border-radius:6px;background:transparent;cursor:pointer}
html:not(#o) .geph-body[aria-pressed=false]{opacity:.3}
html:not(#o) .geph-body:hover{border-color:var(--bd)}
html:not(#o) .geph-options{margin-left:auto}
html:not(#o) .geph-canvas{display:block;flex:1 1 auto;min-height:0;touch-action:none;cursor:crosshair}
html:not(#o) .geph-status{margin:0;padding:5px 12px;font-size:12px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--td);border-top:1px solid var(--bd)}
@media(max-width:480px){html:not(#o) .geph-controls{gap:4px;padding:6px}html:not(#o) .geph-controls .o-pill{font-size:11px;padding:5px 7px}}
/* phase 2: the Options panel (bodies, fixed stars, Object Browser objects, paran orb) */
html:not(#o) .graphic-ephemeris{position:relative}
html:not(#o) .geph-panel{position:absolute;top:44px;right:8px;z-index:3;width:min(360px,calc(100% - 16px));max-height:calc(100% - 56px);overflow:auto;padding:8px 10px 10px;background:var(--pn);color:var(--tx);border:1px solid var(--bd);border-radius:10px;box-shadow:0 8px 24px var(--shadow,transparent);font-size:12px}
html:not(#o) .geph-panel[hidden]{display:none}
html:not(#o) .geph-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
html:not(#o) .geph-panel .o-pill{font:inherit;font-size:12px;padding:4px 8px;min-height:26px;border:1px solid var(--bd);border-radius:8px;color:var(--tx);background:var(--bg);cursor:pointer}
html:not(#o) .geph-sec{border-top:1px solid var(--bd);padding:6px 0}
html:not(#o) .geph-sec h4{margin:0 0 4px;font-size:12px;font-weight:600;color:var(--tx)}
html:not(#o) .geph-orb{display:flex;align-items:center;gap:8px}
html:not(#o) .geph-orb input{flex:1;accent-color:var(--ac)}
html:not(#o) .geph-orb-out{min-width:118px;color:var(--ac);font-variant-numeric:tabular-nums}
html:not(#o) .geph-note{margin:4px 0 0;color:var(--td);font-size:11px;line-height:1.4}
html:not(#o) .geph-note-inline{color:var(--td);font-size:11px}
html:not(#o) .geph-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 8px}
html:not(#o) .geph-scroll{max-height:150px;overflow:auto;grid-template-columns:1fr;margin-top:4px}
html:not(#o) .geph-check{display:flex;align-items:center;gap:4px;min-height:24px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html:not(#o) .geph-check.is-off{color:var(--td)}
html:not(#o) .geph-check input{accent-color:var(--ac)}
html:not(#o) .geph-tools{display:flex;gap:4px;align-items:center}
html:not(#o) .geph-search{flex:1;min-width:0;font:inherit;font-size:12px;padding:4px 6px;min-height:26px;border:1px solid var(--bd);border-radius:6px;background:var(--bg);color:var(--tx)}
html:not(#o) .geph-body-text{font-family:inherit;font-size:11px}
/* hover tooltip: date + time of the x under the pointer */
html:not(#o) .geph-tip{position:absolute;z-index:2;pointer-events:none;padding:3px 7px;font-size:12px;line-height:1.4;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--tx);background:var(--pn);border:1px solid var(--bd);border-radius:6px;box-shadow:0 2px 8px var(--shadow,transparent)}
html:not(#o) .geph-tip[hidden]{display:none}
