/* Cycles view (cycles.js, lane L10): its own host over the centre, like the Ephemeris / Sky Map hosts. Tokens only. */
html:not(#o) #cycles-host{position:absolute;inset:0;z-index:1;overflow:hidden;display:flex;flex-direction:column}
html:not(#o) #cycles-host[hidden]{display:none}
html:not(#o) .cycles{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) .cyc-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) .cyc-controls .o-seg{display:flex;gap:3px;flex-wrap:nowrap}
html:not(#o) .cyc-controls .cyc-ecl{margin-left:auto}
html:not(#o) .cyc-controls [hidden]{display:none}
html:not(#o) .cyc-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) .cyc-controls .o-pill[aria-pressed=true]{background:var(--o-active-bg,var(--tx));color:var(--o-active-tx,var(--bg))}
html:not(#o) .cyc-controls :is(button,select):focus-visible{outline:2px solid var(--ac);outline-offset:2px}
html:not(#o) .cyc-pair{display:inline-flex;align-items:center;gap:4px}
html:not(#o) .cyc-amp{color:var(--td)}
html:not(#o) .cyc-select{font:inherit;font-size:12px;min-height:28px;padding:3px 6px;border:1px solid var(--bd);border-radius:8px;color:var(--tx);background:var(--bg)}
html:not(#o) .cyc-main{flex:1 1 55%;min-height:0;display:grid;grid-template-columns:minmax(240px,38%) 1fr;gap:0;border-bottom:1px solid var(--bd)}
html:not(#o) .cyc-wheel{display:block;width:100%;height:100%;min-height:0;border-right:1px solid var(--bd)}
html:not(#o) .cyc-graph{display:block;width:100%;height:100%;min-height:0;cursor:crosshair;touch-action:manipulation}
html:not(#o) .cyc-table-wrap{flex:1 1 45%;min-height:0;overflow:auto}
html:not(#o) .cyc-table{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}
html:not(#o) .cyc-table th{position:sticky;top:0;z-index:1;text-align:left;font-weight:600;padding:5px 8px;background:var(--pn);color:var(--td);border-bottom:1px solid var(--bd);white-space:nowrap}
html:not(#o) .cyc-table td{padding:4px 8px;border-bottom:1px solid var(--bd);white-space:nowrap;font-family:var(--glyph-font,inherit)}
html:not(#o) .cyc-table tbody tr{cursor:pointer}
html:not(#o) .cyc-table tbody tr:hover{background:var(--pn)}
html:not(#o) .cyc-table tbody tr:focus-visible{outline:2px solid var(--ac);outline-offset:-2px}
html:not(#o) .cyc-table tr.is-current td{color:var(--ac);font-weight:600}
html:not(#o) .cyc-table tr.is-natal td{color:var(--td)}
html:not(#o) .cyc-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:640px){html:not(#o) .cyc-main{grid-template-columns:1fr;grid-template-rows:minmax(180px,45%) 1fr}html:not(#o) .cyc-wheel{border-right:0;border-bottom:1px solid var(--bd)}html:not(#o) .cyc-controls{gap:4px;padding:6px}html:not(#o) .cyc-controls .o-pill{font-size:11px;padding:5px 7px}}
