:root{--bg:#0e2032;--panel:#172e41;--card:#213c51;--edge:rgba(164,218,232,.17);--text:#eaffff;--muted:#a6c8d9;--mint:#7ff2da;--mint2:#64d4cc;--orange:#ffdc9a}
.ambient-one{background:rgba(72,192,192,.15)}
.ambient-two{background:rgba(147,111,225,.14)}
.brand,.brand .brand-light{color:#abf5e6}
.orbit-logo{font:900 33px Outfit,sans-serif;display:inline-block;margin-right:6px;color:#87eddf}
.eyebrow,.card-eyebrow{color:#99eadd}
.eyebrow-line,.live-dot{background:#96eee2}
.hero h1 em{color:#9cf4df}
.primary-button{background:#98f4df;border-color:#98f4df;color:#193c47;box-shadow:0 10px 27px rgba(61,210,199,.14)}
.primary-button:hover{background:#cefcef}
.arcade-link:hover,.footer a:hover{color:#b8ffef}
.chapter-tab.active,.chapter-tab:hover{background:#9af1dd;border-color:#9af1dd;color:#1a3a4a}
.level-card{background:linear-gradient(145deg,#26465e,#1e3650)}
.level-card.complete{background:linear-gradient(145deg,#2b6266,#26435e);border-color:rgba(129,245,214,.43)}
.level-card-head strong{color:#95f1df}
.play-panel{background:linear-gradient(160deg,#26495c,#1b304b)}
.info-card{background:rgba(33,74,86,.7)}
.info-card.pale{background:rgba(99,133,191,.11)}
.game-stats .star-value,.level-card-bottom span{color:#ffe0ad}
.match-track>div{background:linear-gradient(90deg,#58d9c6,#bcf5d8)}
.visual-callout{background:#ddfff2;color:#315e68}
.visual-callout strong{color:#175c5d}
.info-card h3{color:#eefffc}
.tip-sub{color:#9acdc9!important}
.orbit-preview{position:relative;z-index:1;width:min(325px,100%);aspect-ratio:600/510;border-radius:22px;padding:7px;background:#234054;border:1px solid rgba(164,249,232,.27);transform:rotate(-7deg);box-shadow:0 24px 55px rgba(0,0,0,.27)}
.orbit-preview svg{width:100%;height:100%;display:block;overflow:visible}
.preview-arrow{position:absolute;font:900 36px Outfit,sans-serif;color:#c5fff1;text-shadow:0 2px 6px rgba(6,36,45,.65)}
.preview-arrow.a{top:44%;left:16%}.preview-arrow.b{top:44%;right:12%;color:#e1c9ff}
.orbit-board{position:relative;max-width:600px;margin:10px auto 0;width:100%;aspect-ratio:600/520;user-select:none;-webkit-user-select:none}
.orbit-svg{display:block;width:100%;height:100%;border-radius:18px;border:1px solid rgba(146,216,228,.22);background:#162e41;overflow:hidden}
.orbit-svg .track-halo{fill:transparent;stroke-width:30;opacity:.16}
.orbit-svg .track-halo.cyan{stroke:#6beadd}
.orbit-svg .track-halo.violet{stroke:#ad95f3}
.orbit-svg .track{fill:transparent;stroke-width:9;stroke-linecap:round}
.orbit-svg .track.cyan{stroke:#5bdfcb;filter:drop-shadow(0 0 8px rgba(94,237,209,.15))}
.orbit-svg .track.violet{stroke:#b29bf5;filter:drop-shadow(0 0 8px rgba(182,149,252,.12))}
.orbit-svg .track.pulse{animation:orbit-flash .38s ease-out}
@keyframes orbit-flash{0%{stroke-width:19;opacity:.5}100%{stroke-width:9;opacity:1}}
.orbit-svg .orbit-node{filter:drop-shadow(0 4px 6px rgba(4,20,33,.4))}
.orbit-svg .node-halo{fill:#0e2940;stroke-width:5}
.orbit-svg .orbit-node.cyan .node-halo{stroke:#64edda}
.orbit-svg .orbit-node.violet .node-halo{stroke:#bba9ff}
.orbit-svg .orbit-node.junction .node-halo{stroke:#ffe0a1;stroke-width:7}
.orbit-svg .node-core{fill:#e8fff9}
.orbit-svg .orbit-node.violet .node-core{fill:#f0eaff}
.orbit-svg .orbit-node.junction .node-core{fill:#fff3d7}
.orbit-svg .orbit-node.inner .node-core{stroke:#f8d7a5;stroke-width:2}
.orbit-svg .node-value{fill:#163e52;text-anchor:middle;dominant-baseline:central;font:900 37px Outfit,"Malgun Gothic",sans-serif;pointer-events:none}
.orbit-svg .ring-caption{fill:#b5dee2;text-anchor:middle;font:800 18px Outfit,"Malgun Gothic",sans-serif}
.orbit-svg .ring-count{fill:#edfefa;text-anchor:middle;font:900 40px Outfit,"Malgun Gothic",sans-serif}
.orbit-svg .ring-slash{fill:#8db7c2;font-size:25px}
.orbit-svg .ring-state{fill:#83aab7;text-anchor:middle;font:800 11px Outfit,sans-serif;letter-spacing:1px}
.orbit-svg .orbit-ring-label.ok .ring-count{fill:#a0f6da}
.orbit-svg .orbit-ring-label.ok .ring-state{fill:#a0f6da}
.orbit-svg .gate-plaque rect{fill:#403b4e;stroke:#d9ba79;stroke-width:2}
.orbit-svg .gate-plaque text{fill:#ffe5b2;text-anchor:middle;dominant-baseline:central;font:800 18px Outfit,"Malgun Gothic",sans-serif}
.orbit-svg .gate-plaque.ok rect{fill:#234e4e;stroke:#8ceec8}
.orbit-svg .gate-plaque.ok text{fill:#c0ffdf}
.orbit-svg .resonance-link{stroke:#edc18e;stroke-width:7;stroke-dasharray:4 7;stroke-linecap:round}
.orbit-svg .resonance-link.ok{stroke:#93f0ce}
.orbit-svg .resonance circle{fill:#34465c;stroke:#ffe0aa;stroke-width:3}
.orbit-svg .resonance.ok circle{fill:#2b625d;stroke:#a5f7cf}
.orbit-svg .resonance-caption{fill:#ffe3b3;text-anchor:middle;font:800 13px Outfit,"Malgun Gothic",sans-serif}
.orbit-svg .resonance-total{fill:#fff6da;text-anchor:middle;font:900 15px Outfit,sans-serif}
.orbit-svg .orbit-footer-mark{fill:#6e94a9;text-anchor:middle;font:800 10px Outfit,sans-serif;letter-spacing:3px}
.signal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:600px;margin:14px auto 0}
.signal-item{position:relative;display:flex;flex-wrap:wrap;gap:2px 9px;justify-content:space-between;align-items:center;border:1px solid rgba(143,211,222,.2);background:rgba(15,41,59,.68);border-radius:11px;min-height:57px;padding:10px 32px 10px 14px}
.signal-item span{font-size:12px;font-weight:700;color:#a9c9d4}
.signal-item strong{font:900 23px Outfit,sans-serif;color:#ebf8ff;white-space:nowrap}
.signal-item strong small{font-size:15px;color:#91adba;font-weight:700}
.signal-item em{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:16px;font-weight:900;font-style:normal;color:#7f9bab}
.signal-item.cyan{border-left:4px solid #6de6d4}
.signal-item.violet{border-left:4px solid #b7a4fb}
.signal-item.gold{border-left:4px solid #ffd8a1}
.signal-item:last-child{grid-column:span 2}
.signal-item.satisfied{background:rgba(44,118,96,.24);border-color:rgba(117,242,193,.49)}
.signal-item.satisfied em,.signal-item.satisfied strong{color:#b5ffe3}
.match-area{max-width:600px;margin:13px auto 7px}
.orbit-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:600px;margin:17px auto 0}
.orbit-control-row{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:10px;border:1px solid rgba(151,219,226,.2);border-radius:15px;background:rgba(10,37,55,.45)}
.orbit-control-row .ring-name{grid-column:span 2;display:flex;align-items:center;gap:7px;font:850 12px Outfit,"Malgun Gothic",sans-serif;color:#d1e7ec;padding:1px 2px 5px}
.ring-dot{width:10px;height:10px;border-radius:50%;background:#70e5d3}
.ring-name.violet .ring-dot{background:#b5a1ff}
.orbit-control-row button{border:1px solid rgba(164,226,223,.32);background:#315f66;border-radius:10px;cursor:pointer;color:#e7fff8;min-height:52px;font:900 26px Outfit,"Malgun Gothic",sans-serif}
.orbit-control-row button:hover,.orbit-control-row button:focus-visible{background:#408178;border-color:#b7f9e7}
.orbit-control-row:nth-child(2) button{background:#574a7b;border-color:rgba(201,176,255,.33)}
.orbit-control-row:nth-child(2) button:hover,.orbit-control-row:nth-child(2) button:focus-visible{background:#706298}
.orbit-control-row button small{display:block;font:800 10px Outfit,"Malgun Gothic",sans-serif;margin-top:-2px;opacity:.9}
.orbit-status{position:static!important;width:auto!important;height:auto!important;white-space:normal!important;clip:auto!important;overflow:visible!important;margin:15px auto 0!important;color:#b9d8de;font-size:12px;line-height:1.7}
.orbit-example{display:flex;align-items:center;gap:9px;margin:16px 0;flex-wrap:wrap}
.orbit-example span{border-radius:999px;padding:9px 11px;font-size:12px;font-weight:800}
.orbit-example .example-cyan{background:#306b6b;color:#dcfff6}
.orbit-example .example-violet{background:#635181;color:#f2e8ff}
.orbit-example strong{font-size:21px;color:#ffdfaa}
@media(max-width:650px){
 .orbit-preview{width:min(250px,100%)}.preview-arrow{font-size:27px}
 .orbit-svg{border-radius:12px}.orbit-board{width:100%}
 .signal-item{padding:9px 25px 9px 10px;min-height:55px}
 .signal-item strong{font-size:20px}.signal-item span{font-size:11px}
 .orbit-controls{gap:7px}.orbit-control-row{padding:8px;gap:5px}
 .orbit-control-row button{min-height:50px}
 .game-stats strong{font-size:clamp(16px,4.6vw,25px)}
}
@media(max-width:390px){
 .orbit-control-row button{min-height:44px;font-size:24px}
 .signal-grid{gap:6px}.signal-item span{font-size:10px}
 .signal-item strong{font-size:18px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
