/* Tokene Global Signals V18.4 — image-reference premium source panels.
   Geometry and luminance based on the user-approved four-card render.
   Source data is stable; visible arcs and progress segments animate directly. */
:root{--tgs184-cyan:#20eeff;--tgs184-blue:#378bff;--tgs184-violet:#b963ff;--tgs184-rose:#ff4a91;--tgs184-amber:#ffbe54;--tgs184-mint:#15edb6}
.kpi-card.amber,.panel.sentiment-panel,.panel.allocation-panel,.panel.context-panel{
 isolation:isolate;position:relative;min-width:0;transition:border-color .25s ease,box-shadow .3s ease;
}
.kpi-card.amber{
 border:1px solid #d89958!important;border-radius:14px;
 background:radial-gradient(ellipse 90% 95% at 5% 3%,#42301e59,transparent 74%),linear-gradient(137deg,#101b2f,#0d1b33 60%,#090d1d)!important;
 box-shadow:inset 0 0 21px #ff963522,0 0 15px #ffb04831,0 3px 21px #0009!important;
}
.kpi-card.amber:before{background:linear-gradient(90deg,transparent,#ffa943,#ffe8a0,#fa9351,transparent)!important;opacity:1!important;animation:tgs184-glint 3.8s ease-in-out infinite!important}
.kpi-card.amber:hover{box-shadow:inset 0 0 25px #ffad5c4a,0 0 22px #ffb45368!important}
.kpi-card.amber .kpi-label{color:#fff;text-shadow:0 0 7px #fbad7766}
.kpi-card.amber .kpi-label svg{color:#ffab45;filter:drop-shadow(0 0 6px #ff9b25)}
.kpi-card.amber .kpi-content{height:44px;align-items:center;justify-content:space-between;padding-right:1px}
.kpi-card.amber .kpi-content>div:first-child{position:relative;z-index:3}
.kpi-card.amber #kpiRisk{font-size:16px;letter-spacing:.015em;color:#fff;text-shadow:0 0 5px #fff9}
.kpi-card.amber .kpi-note{color:#a9c6dd}
.kpi-card.amber .gauge-small{
 position:absolute;right:2px;bottom:-3px;width:102px;height:54px;
 background:none!important;mask-image:none!important;overflow:visible!important;z-index:2
}
.kpi-card.amber .gauge-small:before{display:none!important;content:none!important}
.kpi-card.amber .gauge-small:after{display:none}
.kpi-card.amber .gauge-small #kpiRiskNumber{
 position:absolute;display:block;left:0;right:0;top:23px;text-align:center;
 font-size:18px;font-weight:900;line-height:1.2;color:white;
 text-shadow:0 0 9px #ffc47885;z-index:3
}
.tgs184-risk-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.tgs184-ring-track{opacity:.69}
.tgs184-animated-path{
 stroke-dasharray:var(--tgs184-length);
 stroke-dashoffset:0;
 animation:tgs184-draw 1.35s cubic-bezier(.2,.7,.2,1) both,tgs184-lume 3.5s ease-in-out infinite;
 animation-delay:var(--tgs184-delay,0ms),calc(var(--tgs184-delay,0ms) + 1350ms);
 transform:none!important;
}
.tgs184-risk-segment{stroke-width:20;filter:drop-shadow(0 0 3px currentColor)}
@keyframes tgs184-draw{from{stroke-dashoffset:var(--tgs184-length);opacity:.18}to{stroke-dashoffset:0;opacity:1}}
@keyframes tgs184-lume{0%,100%{opacity:.76;filter:drop-shadow(0 0 2px #5cbdff55)}50%{opacity:1;filter:drop-shadow(0 0 7px #ffffff72)}}
@keyframes tgs184-glint{0%,100%{opacity:.54;filter:brightness(.75)}50%{opacity:1;filter:brightness(1.45)}}

.panel.sentiment-panel{
 border:1px solid #827dff!important;
 background:radial-gradient(ellipse at 75% 100%,#22245154,transparent 70%),linear-gradient(149deg,#07172b,#0c1631 68%,#150c35)!important;
 box-shadow:inset 0 0 19px #715cff26,0 0 12px #7557ff55,0 4px 21px #0009!important;
}
.panel.sentiment-panel .panel-title h2{color:#f5faff;text-shadow:0 0 9px #0eaffc36}
.panel.sentiment-panel .panel-title svg{color:#38f3ff;filter:drop-shadow(0 0 5px #14d1fa)}
.panel.sentiment-panel .sentiment-inner{height:calc(100% - 33px);display:flex;align-items:center;gap:5px;padding:0 10px 3px 11px}
.panel.sentiment-panel .semigauge{
 flex:0 0 45%;width:45%;max-width:168px;height:82px;
 margin:0;padding:0;position:relative;overflow:visible;display:block
}
.panel.sentiment-panel .semigauge::before,.panel.sentiment-panel .semigauge::after{content:none!important;display:none!important}
.panel.sentiment-panel .semigauge .tgs184-source-svg{
 position:absolute;inset:-8px 0 0;width:100%;height:94px;
 overflow:visible;filter:drop-shadow(0 0 5px #187ef866);pointer-events:none
}
.panel.sentiment-panel .semigauge span#mixScore{
 position:absolute;left:0;right:0;top:38px;margin:0;padding:0;
 z-index:3;display:block;text-align:center;font-size:26px;line-height:1;
 font-weight:900;letter-spacing:-.03em;color:#f8fdff;text-shadow:0 0 11px #daecff89
}
.panel.sentiment-panel .semigauge small{
 position:absolute;left:0;right:0;top:63px;margin:0;padding:0;
 z-index:3;display:block;text-align:center;font-size:10px;color:#b4d4e9
}
.panel.sentiment-panel .sentiment-legend{min-width:0;flex:1;padding:2px 0 0 4px}
.panel.sentiment-panel .sentiment-legend>div{margin:5px 0;gap:7px;font-size:10.5px;color:#e6f2fd;white-space:nowrap}
.panel.sentiment-panel .sentiment-legend>div b{font-size:11px}
.panel.sentiment-panel .sentiment-legend .c-teal{background:#13e7cb;box-shadow:0 0 8px #0ce9bb77}
.panel.sentiment-panel .sentiment-legend .c-amber{background:#ffca45;box-shadow:0 0 8px #f5c34277}
.panel.sentiment-panel .sentiment-legend .c-red{background:#ff568e;box-shadow:0 0 8px #ff468e77}

.panel.allocation-panel{
 border:1px solid #2acbff!important;
 background:radial-gradient(ellipse at 5% 96%,#043d6e88,transparent 64%),linear-gradient(146deg,#091b31,#09142a 75%,#050b23)!important;
 box-shadow:inset 0 0 21px #139fe335,0 0 13px #2dc3ff58,0 4px 20px #0009!important
}
.panel.allocation-panel .panel-title svg{color:#54e7ff;filter:drop-shadow(0 0 6px #18c8ff)}
.panel.allocation-panel .allocation-body{height:calc(100% - 39px);display:flex;align-items:center;gap:11px;padding:0 8px 6px 10px}
.panel.allocation-panel .donut{
 flex:0 0 112px;width:112px;height:112px;
 display:grid;place-items:center;position:relative;
 background:#0a172b!important;overflow:visible;
 filter:drop-shadow(0 0 9px #0cb8ff70)
}
.panel.allocation-panel .donut .tgs184-asset-svg{
 width:100%;height:100%;position:absolute;inset:0;overflow:visible;z-index:1
}
.panel.allocation-panel .donut-center{
 z-index:2;position:relative;width:65px;height:65px;
 border-radius:50%;background:radial-gradient(circle at 50% 0,#152d4f,#061227 80%);
 box-shadow:inset 0 0 13px #030a19,0 0 4px #0b1f3a;display:flex;align-items:center;justify-content:center
}
.panel.allocation-panel .donut-center b{font-weight:900;font-size:17px;color:#fff}
.panel.allocation-panel .donut-center small{font-weight:900;font-size:12px;color:#edfaff}
.panel.allocation-panel .alloc-list{min-width:0;flex:1}
.panel.allocation-panel .alloc-line{margin:8px 0;font-weight:650;font-size:11px}
.panel.allocation-panel .alloc-line i{width:10px;height:10px;box-shadow:0 0 8px var(--coin)}
.panel.allocation-panel .alloc-line b{color:white;font-size:12px}

.panel.context-panel{
 border:1px solid #49cbff!important;
 background:radial-gradient(ellipse at 98% 91%,#2b1b5f70,transparent 63%),radial-gradient(ellipse at 0% 100%,#03527a55,transparent 70%),linear-gradient(144deg,#081b31,#07142b)!important;
 box-shadow:inset 0 0 19px #1b9cdb3b,0 0 14px #329cff5c,0 4px 21px #0009!important
}
.panel.context-panel .panel-title{
 border-bottom:1px solid #356080!important;
 background:linear-gradient(90deg,#08325766,transparent 68%);
}
.panel.context-panel .panel-title svg{color:#57e7ff}
.panel.context-panel .panel-title h2{font-size:13px;color:#f4fcff}
.panel.context-panel .context-list{padding:11px 15px 9px}
.panel.context-panel .context-line{height:30px;gap:9px}
.panel.context-panel .context-line label{
 flex:0 0 84px;width:84px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
 font-size:10px;color:#eaf8ff;font-weight:700
}
.panel.context-panel .context-line strong{
 flex:0 0 34px;width:34px;font-size:11px;font-weight:800;color:#f9fbff
}
.panel.context-panel .context-line .bar-track{
 position:relative;flex:1;height:10px;background:#193956;
 border-radius:10px;overflow:hidden;box-shadow:inset 0 1px 3px #0007
}
.panel.context-panel .context-line .bar-fill{
 position:relative;height:100%;border-radius:9px;transform-origin:left;
 background:var(--tgs184-color,var(--bar))!important;
 box-shadow:0 0 7px var(--tgs184-color,var(--bar));
}
.panel.context-panel .context-line:nth-child(1){--tgs184-color:#22edff}
.panel.context-panel .context-line:nth-child(2){--tgs184-color:#be62ff}
.panel.context-panel .context-line:nth-child(3){--tgs184-color:#13e8e4}
.panel.context-panel .context-line:nth-child(4){--tgs184-color:#ffc24c}
.panel.context-panel .context-line .tgs184-flow{
 animation:tgs184-bar-rise 1.18s cubic-bezier(.18,.8,.23,1) both;
 animation-delay:calc(var(--tgs184-line-order,0) * 145ms);
}
@keyframes tgs184-bar-rise{from{transform:scaleX(0);filter:brightness(.7)}to{transform:scaleX(1);filter:brightness(1)}}
.panel.context-panel .context-line .tgs184-flow:after{
 content:"";position:absolute;inset:0 -35% 0 0;
 border-radius:inherit;pointer-events:none;
 background:linear-gradient(90deg,transparent 0%,transparent 43%,#ffffff06 55%,#ffffff7d 71%,transparent 87%);
 transform:translateX(-110%);animation:tgs184-segment-shine 3.2s ease-in-out infinite;
 animation-delay:calc(var(--tgs184-line-order,0) * 350ms + 1100ms)
}
@keyframes tgs184-segment-shine{0%,20%{transform:translateX(-110%)}65%,100%{transform:translateX(88%)}}
/* Premium border luminosity stays on each widget instead of traversing the page. */
.panel.sentiment-panel,.panel.allocation-panel,.panel.context-panel{
 animation:tgs184-ambient 5.6s ease-in-out infinite alternate;
}
.panel.allocation-panel{animation-delay:.5s}.panel.context-panel{animation-delay:1.1s}
@keyframes tgs184-ambient{
 from{filter:brightness(.95);transform:translateZ(0)}
 to{filter:brightness(1.08);transform:translateZ(0)}
}
@media(max-width:1250px){
 .panel.allocation-panel .donut{width:93px;height:93px;flex-basis:93px}
 .panel.allocation-panel .donut-center{width:53px;height:53px}
 .panel.allocation-panel .donut-center b{font-size:14px}
 .panel.allocation-panel .donut-center small{font-size:11px}
 .panel.allocation-panel .allocation-body{gap:5px}
 .panel.context-panel .context-line label{flex-basis:69px;width:69px;font-size:9px}
 .panel.context-panel .context-list{padding:10px 9px 5px}
}
@media(max-width:1050px){
 .panel.sentiment-panel .semigauge{flex-basis:46%;max-width:180px}
 .panel.sentiment-panel .sentiment-inner{padding:0 11px}
 .panel.allocation-panel .donut{width:105px;height:105px;flex-basis:105px}
 .panel.allocation-panel .donut-center{width:61px;height:61px}
 .panel.context-panel .context-line label{flex-basis:95px;width:95px}
}
@media(max-width:700px){
 .kpi-card.amber .gauge-small{right:1px;bottom:-3px;width:87px;height:52px}
 .kpi-card.amber #kpiRisk{font-size:14px}
 .panel.sentiment-panel .semigauge{flex-basis:47%;height:84px}
 .panel.sentiment-panel .semigauge .tgs184-source-svg{height:94px}
 .panel.sentiment-panel .sentiment-legend>div{font-size:11px}
 .panel.allocation-panel .donut{width:112px;height:112px;flex-basis:112px}
 .panel.allocation-panel .donut-center{width:65px;height:65px}
 .panel.context-panel .context-list{padding:9px 14px}
 .panel.context-panel .context-line label{flex-basis:108px;width:108px;font-size:10px}
}
@media(max-width:395px){
 .kpi-card.amber .gauge-small{width:72px;height:43px;bottom:1px}
 .kpi-card.amber .gauge-small #kpiRiskNumber{top:18px;font-size:15px}
 .panel.sentiment-panel .semigauge{flex-basis:44%;max-width:140px}
 .panel.sentiment-panel .semigauge #mixScore{font-size:24px}
 .panel.allocation-panel .donut{width:98px;height:98px;flex-basis:98px}
 .panel.allocation-panel .donut-center{width:56px;height:56px}
 .panel.context-panel .context-line label{flex-basis:80px;width:80px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){
 .tgs184-animated-path,.tgs184-flow,.tgs184-flow:after,
 .panel.sentiment-panel,.panel.allocation-panel,.panel.context-panel,
 .kpi-card.amber:before{animation:none!important;transform:none!important}
 .tgs184-animated-path{stroke-dashoffset:0!important;opacity:1!important}
}
/* V18.5 audit corrections: persistent motion along real category/asset arcs;
   risk marker reflects source-derived percentage instead of an unrelated rainbow. */
.tgs185-source-sheen,.tgs185-asset-sheen{
 fill:none;pointer-events:none;opacity:.9;stroke-dasharray:12px calc(var(--tgs185-path-length) - 12px);
 stroke-dashoffset:var(--tgs185-path-length);
 filter:drop-shadow(0 0 5px #dbfcff) drop-shadow(0 0 7px #72a9ff);
 animation:tgs185-on-arc 3.6s linear infinite;
 animation-delay:var(--tgs185-delay,0s);
}
.tgs185-asset-sheen{animation-duration:4.3s;stroke-width:3.3}
@keyframes tgs185-on-arc{
 from{stroke-dashoffset:var(--tgs185-path-length);opacity:0}
 12%{opacity:1}
 81%{opacity:1}
 to{stroke-dashoffset:0;opacity:0}
}
.tgs185-risk-active{filter:drop-shadow(0 0 5px #20d2ad) drop-shadow(0 0 9px #20efb55e)}
.tgs185-risk-needle{filter:drop-shadow(0 0 3px #e8ffff) drop-shadow(0 0 7px #21a8ef)}
.tgs185-risk-cap{filter:drop-shadow(0 0 5px #c2ffff)}
.kpi-card.amber #kpiRiskNumber{font-size:17px!important;letter-spacing:-.02em;white-space:nowrap}
.kpi-card.amber .kpi-note{font-size:9px!important;white-space:nowrap}
.panel.sentiment-panel .semigauge small{font-size:9px!important}
@media(max-width:395px){
 .kpi-card.amber .kpi-note{font-size:8px!important;letter-spacing:-.03em}
 .kpi-card.amber #kpiRiskNumber{font-size:14px!important}
 .panel.sentiment-panel .semigauge small{font-size:8px!important}
}
@media(prefers-reduced-motion:reduce){
 .tgs185-source-sheen,.tgs185-asset-sheen{animation:none!important;stroke-dashoffset:0!important;opacity:.65}
}
