/* Spatial operating-core metaphor. The existing motion gates also stop these layers. */
.boe-operating-core{--core-color:#79f6f2;pointer-events:none;fill:none;stroke:var(--core-color)}
.core-conduit{stroke-width:1;opacity:.22}
.core-impulse{stroke-width:2;stroke-dasharray:3 29;stroke-linecap:round;opacity:.65;animation:core-transfer 3.2s linear infinite;filter:drop-shadow(0 0 3px #81ffff)}
.core-joint{fill:#8ffff7;stroke-width:1;animation:core-joint-glow 3.2s ease-in-out infinite}
.core-aura{fill:#50f2ed;fill-opacity:.05;stroke-opacity:.1;animation:core-breathe 4.8s ease-in-out infinite;transform-origin:0 0}
.core-coil-spin{transform-origin:0 0;animation:core-coil-turn 12s linear infinite;stroke-width:1;stroke-opacity:.45}
.core-coil-front{stroke-width:2;stroke-opacity:.85;stroke-dasharray:3 6}
.core-coil-spin circle{fill:#d9ffff;stroke:none}
.core-shell{fill:#062b39;fill-opacity:.24;stroke-width:1.5;stroke-opacity:.9}
.core-inner{stroke-width:1;stroke-opacity:.6;animation:core-breathe 4.8s ease-in-out infinite;transform-origin:0 0}
.core-heart{fill:#cfffff;stroke:none;filter:drop-shadow(0 0 7px #70e1e5);animation:core-joint-glow 2.4s ease-in-out infinite}
.core-phase-ring{transform-origin:0 0;animation:core-coil-turn 18s linear infinite;stroke-dasharray:2 12;stroke-width:1;stroke-opacity:.5}
.stage-state-2 .boe-operating-core{--core-color:#f6d18b}
.stage-state-3 .core-impulse{animation-direction:reverse;stroke:#f6d18b}
.core-explanation{max-width:900px}
.core-runtime-details{margin-top:16px;border:1px solid #70e1e53b;border-radius:12px;background:#091e31;padding:14px 18px}
.core-runtime-details summary{cursor:pointer;color:#b4ffff;font-size:14px;line-height:1.5}
.core-runtime-details summary:hover,.core-runtime-details summary:focus-visible{color:white;text-decoration:underline;text-underline-offset:4px}
.core-runtime-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}
.core-runtime-grid article{padding:14px;background:#13304766;border:1px solid #8bd8ee26;border-radius:10px;min-width:0}
.core-runtime-grid h4{font-size:16px;color:#e8ffff;margin:8px 0}
.core-runtime-grid p{font-size:13px!important;line-height:1.65}
.core-runtime-grid code{display:block;overflow-wrap:anywhere;font-size:11px;color:#9ae1df;margin-top:8px}
.core-step{font-size:10px;color:#70e1e5;letter-spacing:2px}
.core-runtime-details a{display:inline-block;font-size:14px;margin-top:8px}
@keyframes core-transfer{to{stroke-dashoffset:-128}}
@keyframes core-coil-turn{to{transform:rotate(360deg)}}
@keyframes core-breathe{50%{transform:scale(1.055);opacity:.6}}
@keyframes core-joint-glow{50%{opacity:.35}}
@media(max-width:600px){.core-runtime-grid{grid-template-columns:1fr}.core-runtime-details{padding:12px}}
@media(prefers-reduced-motion:reduce){.boe-operating-core *{animation:none!important}}
