/* The Compound Growth orbit: per-ground tokens from the Compound Growth System artifact (generated by mk_orbit.py).
   Light grounds: the active node is deep with ground-coloured numerals; dark grounds: diamond with deep numerals.
   Hairlines stay quiet on every ground. The panel inside a section takes its own ground (a white panel on light). */
[data-ground="deep"] .orbit { --o-ln: #2F3E47; --o-lo: 1; --o-nf: #101E28; --o-no: #82A2BE; --o-nu: #A6BAC8; --o-af: #BBE7FF; --o-ao: #BBE7FF; --o-an: #101E28; --o-tx: #ECEFF1; --o-mk: #82A2BE; --o-mu: #A6BAC8; --o-dim: #546E7A; --o-dl: #2F3E47; --o-acc: #BBE7FF; }
[data-ground="navy"] .orbit { --o-ln: #546E7A; --o-lo: 0.55; --o-nf: #1F2A37; --o-no: #82A2BE; --o-nu: #A6BAC8; --o-af: #BBE7FF; --o-ao: #BBE7FF; --o-an: #1F2A37; --o-tx: #ECEFF1; --o-mk: #82A2BE; --o-mu: #A6BAC8; --o-dim: #546E7A; --o-dl: #2F3E47; --o-acc: #BBE7FF; }
[data-ground="light"] .orbit { --o-ln: #B0BEC5; --o-lo: 1; --o-nf: #ECEFF1; --o-no: #546E7A; --o-nu: #546E7A; --o-af: #101E28; --o-ao: #101E28; --o-an: #ECEFF1; --o-tx: #101E28; --o-mk: #546E7A; --o-mu: #546E7A; --o-dim: #82A2BE; --o-dl: #B0BEC5; --o-acc: #101E28; }
[data-ground="white"] .orbit { --o-ln: #B0BEC5; --o-lo: 0.85; --o-nf: #FFFFFF; --o-no: #546E7A; --o-nu: #546E7A; --o-af: #101E28; --o-ao: #101E28; --o-an: #FFFFFF; --o-tx: #101E28; --o-mk: #546E7A; --o-mu: #546E7A; --o-dim: #82A2BE; --o-dl: #B0BEC5; --o-acc: #101E28; }
.orbit { display: block; width: 100%; height: auto; overflow: visible; font-family: inherit; }
.orbit .o-sp, .orbit .o-rg, .orbit .o-tick { stroke: var(--o-ln); stroke-opacity: var(--o-lo); stroke-width: 1.2; fill: none; }
.orbit .o-n circle { fill: var(--o-nf); stroke: var(--o-no); stroke-width: 1.5; transition: fill var(--t) var(--ease), stroke var(--t) var(--ease); }
.orbit .o-n text { font-size: 13px; font-weight: 600; letter-spacing: .18em; fill: var(--o-nu); text-anchor: middle; dominant-baseline: central; transition: fill var(--t) var(--ease); }
.orbit .o-n.is-d circle { stroke: var(--o-dl); }
.orbit .o-n.is-d text { fill: var(--o-dim); }
.orbit .o-n.is-a circle, .orbit .o-n.is-active circle { fill: var(--o-af); stroke: var(--o-ao); }
.orbit .o-n.is-a text, .orbit .o-n.is-active text { fill: var(--o-an); }
.orbit .o-hub { font-size: 26px; font-weight: 700; fill: var(--o-tx); text-anchor: middle; }
.orbit .o-mk { color: var(--o-mk); }
.orbit .o-arc { fill: none; stroke: var(--o-no); stroke-width: 2; }
.orbit .o-sol circle { fill: var(--o-nf); stroke: var(--o-no); stroke-width: 1.5; }
.orbit .o-sol.is-a circle { fill: var(--o-acc); stroke: var(--o-acc); }
.orbit .o-lab { font-size: 21px; font-weight: 500; fill: var(--o-mu); }
.orbit .o-lab.is-a { fill: var(--o-tx); font-weight: 700; }
.orbit .o-sec { fill: none; stroke: var(--o-no); stroke-opacity: .55; stroke-width: 3; }
.orbit .o-sec.is-a { stroke: var(--o-acc); stroke-opacity: 1; stroke-width: 6; }
.orbit .o-plan-arc { fill: none; stroke: var(--o-mu); stroke-width: 2; }
.orbit .o-plan-t { font-size: 13px; font-weight: 600; letter-spacing: .16em; fill: var(--o-mu); }
.orbit--pick .o-n { cursor: pointer; outline: none; }
.orbit--pick .o-n:focus-visible circle { stroke: var(--diamond); stroke-width: 3; }
@media (max-width: 720px) { .orbit .o-lab { display: none; } }
/* Larger invisible tap area on the clickable wheel, so each stage is at least 40px to a thumb on phones */
.orbit .o-n circle.o-hit.o-hit { fill: transparent; stroke: none; }
