/* Tokene Global Signals — V18.1 motion and authenticity patch.
 * Source-specific selectors; no cross-screen sweep; no moving bottom panels.
 * Original Tokene logo, headlines and data are preserved.
 */
:root{--tgs18-cyan:#48d8ff;--tgs18-indigo:#7858ff;--tgs18-gold:#ffbc70}
/* Identity lockup: explicit horizontal layout instead of overlapping absolute caption. */
.topnav .brand{width:264px;display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:0 10px 0 12px;min-width:0;flex:none}
.topnav .brand img{width:129px;height:49px;object-fit:contain;flex:none}
.topnav .brand .brand-caption{position:static;inset:auto;bottom:auto;left:auto;min-width:0;max-width:115px;white-space:normal;display:block;margin:0;padding:3px 0 3px 12px;border-left:1px solid #26749b;transform:none;font:850 13px/1.1 'Segoe UI',Arial,sans-serif;letter-spacing:.075em;color:#a6ecff;text-shadow:0 0 12px #079bff7a}
.topnav .brand .brand-caption::first-line{color:#dffbff}
/* Bring out the nighttime continent texture without changing camera position. */
#planetStage.planet{isolation:isolate}
#planetStage .globe-canvas{filter:brightness(2.05) contrast(1.12) saturate(1.6) drop-shadow(0 0 18px #3dbeff79) drop-shadow(0 0 30px #187cfb6a)}
#planetStage .planet-atmosphere{background:radial-gradient(circle,#249bee34 0%,#118ffb29 34%,#0a47a81a 54%,transparent 71%)}
/* All motion is contained inside the globe footprint, never across the viewport. */
#planetStage .tgs-orbit-network{position:absolute;z-index:4;pointer-events:none;left:50%;top:-24px;width:min(675px,142%);height:435px;overflow:visible;transform:translateX(-50%);opacity:.9;filter:drop-shadow(0 0 8px #4dbbff65);mix-blend-mode:screen}
.tgs-orbit-network .route-track{fill:none;stroke:#3699e9;stroke-width:1.2;stroke-opacity:.28}
.tgs-orbit-network .track-violet{stroke:#a678fc;stroke-opacity:.26}
.tgs-orbit-network .track-amber{stroke:#ffb666;stroke-opacity:.3}
.tgs-orbit-network .route-flow{fill:none;stroke-width:2.4;stroke-linecap:round;stroke-dasharray:6 22 50 188;animation:tgs18-orbit-trace 6.5s linear infinite}
.tgs-orbit-network .route-cyan{stroke:#6cdbff;filter:drop-shadow(0 0 6px #4ccbff)}
.tgs-orbit-network .route-violet{stroke:#b98aff;animation-duration:8.2s;animation-direction:reverse;filter:drop-shadow(0 0 6px #ae74ff)}
.tgs-orbit-network .route-amber{stroke:#ffc284;animation-duration:5.5s;filter:drop-shadow(0 0 7px #ffa15c)}
.tgs-orbit-network .orbit-dot{filter:drop-shadow(0 0 8px currentColor)}
@keyframes tgs18-orbit-trace{to{stroke-dashoffset:-266}}
/* Live but controlled: no layout movement in the anchored panels. */
.kpi-card:before{animation:tgs18-border-glow 4.1s ease-in-out infinite}
.kpi-card:nth-child(2):before{animation-delay:.55s}.kpi-card:nth-child(3):before{animation-delay:1.1s}
.kpi-card:nth-child(4):before{animation-delay:1.65s}.kpi-card:nth-child(5):before{animation-delay:2.2s}.kpi-card:nth-child(6):before{animation-delay:2.75s}
@keyframes tgs18-border-glow{0%,100%{opacity:.45}50%{opacity:1}}
.kpi-card .kpi-content strong{font-variant-numeric:tabular-nums}
.report-ribbon .tag-cached{animation:tgs18-label-glow 3.3s ease-in-out infinite}
@keyframes tgs18-label-glow{0%,100%{box-shadow:none}50%{box-shadow:0 0 10px #f1c45f77}}
.news-feed .report-item.active{animation:tgs18-report-glow 3.4s ease-in-out infinite}
@keyframes tgs18-report-glow{0%,100%{box-shadow:inset 0 0 12px #197db95a,0 0 5px #08aafc42}50%{box-shadow:inset 0 0 19px #1679bb84,0 0 16px #11b4ff76}}
/* Provider's true coin logo replaces glyphs; fallback remains graceful. */
.coin-icon.tgs-coin-official{display:grid;place-items:center;overflow:hidden;border:1px solid #ffffff5a;background:#061a30}
.coin-icon.tgs-coin-official img.coin-image{display:block;width:100%;height:100%;object-fit:contain;border-radius:50%;filter:drop-shadow(0 0 6px #eafaff6b)}
.news-feed .report-thumb .coin-icon.tgs-coin-official{width:48px;height:48px;box-shadow:0 0 16px #379ffa6b,inset 0 0 7px #fff2}
.news-feed .report-item.active .coin-icon.tgs-coin-official{box-shadow:0 0 22px #55cfff9e}
/* Match the official logo at narrower breakpoints without stealing nav room. */
@media(max-width:1530px){.topnav .brand{width:224px;gap:7px;padding-left:8px}.topnav .brand img{width:106px;height:43px}.topnav .brand .brand-caption{padding-left:8px;font-size:11px;letter-spacing:.055em}}
@media(max-width:1250px){.topnav .brand{width:185px;gap:5px}.topnav .brand img{width:91px;height:38px}.topnav .brand .brand-caption{padding-left:6px;font-size:10px;letter-spacing:.03em}}
@media(max-width:700px){.topnav .brand{width:auto;min-width:148px;padding-left:6px;gap:5px}.topnav .brand img{width:83px;height:39px}.topnav .brand .brand-caption{max-width:64px;min-width:0;font-size:9px;padding-left:6px;letter-spacing:.02em}#planetStage .tgs-orbit-network{width:100%;height:380px;top:-6px;opacity:.75}.tgs-orbit-network .route-flow{stroke-width:1.7}}
@media(max-width:395px){.topnav .brand{min-width:133px;gap:4px}.topnav .brand img{width:76px}.topnav .brand .brand-caption{padding-left:5px;font-size:8px;max-width:53px}}
@media(prefers-reduced-motion:reduce){.tgs-orbit-network .route-flow,.kpi-card:before,.report-ribbon .tag-cached,.news-feed .report-item.active{animation:none!important}.tgs-orbit-network .orbit-dot{display:none!important}}


/* V18.3: source-path animation, no visual fake dots or global sweep. */
#planetStage.planet{overflow:hidden!important;clip-path:inset(0 round 14px);isolation:isolate}
#planetStage .tgs-orbit-network{
 left:0!important;top:0!important;width:100%!important;height:100%!important;
 max-width:100%!important;max-height:100%!important;
 transform:none!important;overflow:hidden!important;
 filter:none!important;opacity:.65
}
#planetStage .tgs-orbit-network .orbit-dot,
#planetStage .planet-node{display:none!important}
#planetStage .tgs-orbit-network .route-flow{
 stroke-width:1.5;stroke-dasharray:4 18 42 196;
 animation-duration:5.2s;opacity:.7
}
#planetStage .planet-ring,
#planetStage .planet-ring.ring-one,
#planetStage .planet-ring.ring-two,
#planetStage .planet-ring.ring-three{
 position:absolute;left:50%;width:73%!important;max-width:73%!important;
 height:25%!important;top:53%;transform:translate(-50%,-50%) rotate(-13deg);
 border-width:1px;opacity:.65
}
#planetStage .planet-ring.ring-two{width:66%!important;max-width:66%!important;height:30%!important;top:47%;transform:translate(-50%,-50%) rotate(23deg)}
#planetStage .planet-ring.ring-three{width:76%!important;max-width:76%!important;height:20%!important;top:68%;transform:translate(-50%,-50%) rotate(1deg)}
#planetStage .planet-base{left:50%;bottom:0;width:86%!important;max-width:86%!important;height:78px!important;transform:translateX(-50%);overflow:hidden;filter:drop-shadow(0 0 7px #149bfa80)}
#planetStage .globe-canvas{left:50%!important;top:50%!important;width:min(420px,calc(100% - 10px))!important;height:auto!important;max-width:100%!important;aspect-ratio:1;transform:translate(-50%,-50%) scaleY(.97)!important}
#planetStage .planet-starfield{inset:0}
#planetStage .planet-atmosphere{left:50%;top:48%;width:100%;max-width:100%;height:96%;filter:blur(8px)}
#planetStage .planet-tiny-note{bottom:4px;color:#8baebf}
.market-panel .market-subtitle{color:#9ad5ef}
.market-panel #marketChart{height:129px}
.market-panel .axis{color:#afd1e7}
.market-panel{border-color:#368bef}
.market-panel:after{
 content:"SOURCE TIMELINE REPLAY";position:absolute;top:78px;right:16px;
 font:700 8px/1 Consolas,monospace;letter-spacing:.07em;color:#78d3ff;
 text-shadow:0 0 9px #148effa3;opacity:.8;pointer-events:none
}
.kpi-card canvas.spark{width:78px;height:29px}
.kpi-card .kpi-content strong{font-variant-numeric:tabular-nums}
.market-window-label{font:800 9px Consolas,monospace;color:#91b5ce}
#reportRibbon{--scene-progress:0%;position:relative}
#reportRibbon:after{
 content:"";position:absolute;bottom:0;left:2.3%;width:min(var(--scene-progress),95%);
 height:2px;border-radius:2px;background:linear-gradient(90deg,#13d6ca,#56b7ff,#ca7dff);
 box-shadow:0 0 9px #2dbeffb7;pointer-events:none
}
@media(max-width:1050px){#planetStage .globe-canvas{width:min(440px,calc(100% - 10px))!important}}
@media(max-width:700px){#planetStage .globe-canvas{width:min(346px,calc(100% - 8px))!important}#planetStage .planet-base{height:64px!important}.market-panel:after{top:81px;font-size:7px}}
@media(max-width:395px){#planetStage .globe-canvas{width:min(325px,calc(100% - 6px))!important}}
@media(prefers-reduced-motion:reduce){#planetStage .tgs-orbit-network .route-flow{animation:none!important}#reportRibbon:after{width:95%!important}}

/* Report-driven indicator motion: focus marks a real source category. */
.market-panel{position:relative}
#contextChannels .context-line{border-radius:5px;transition:background .28s ease,border-color .28s ease}
#contextChannels .context-line.source-focused{background:linear-gradient(90deg,rgba(22,110,183,.27),transparent)}
#contextChannels .context-line.source-focused label{color:#e1f9ff;text-shadow:0 0 6px #38baff}
#contextChannels .context-line.source-focused .bar-track{box-shadow:0 0 8px #35a8ff55}
#contextChannels .context-line.source-focused .bar-fill{filter:brightness(1.4)}
@media(prefers-reduced-motion:reduce){#contextChannels .context-line{transition:none}}
