/* Original NOVI/JARVIS ambient layer: code-drawn, no third-party artwork. */
#noviJarvisAtmosphere{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;isolation:isolate;background:radial-gradient(ellipse at 68% 13%,rgba(21,138,186,.11),transparent 29%),radial-gradient(ellipse at 15% 86%,rgba(22,206,235,.07),transparent 26%)}
#noviJarvisAtmosphere canvas{position:absolute;inset:0;width:100%;height:100%}#noviJarvisAtmosphere .jarvis-global-network{z-index:0;opacity:.8}.jarvis-aurora{position:absolute;width:72vw;height:32vw;min-width:620px;min-height:270px;right:-22vw;top:20vh;border-radius:50%;background:radial-gradient(ellipse,rgba(0,196,243,.12),rgba(22,75,162,.045) 42%,transparent 70%);filter:blur(22px);animation:jarvisAurora 18s ease-in-out infinite alternate}.jarvis-scan{position:absolute;inset:-25%;opacity:.24;background:repeating-linear-gradient(0deg,transparent 0 8px,rgba(99,235,255,.07) 9px 10px);mask-image:linear-gradient(to bottom,transparent,black 20%,black 76%,transparent);animation:jarvisScan 13s linear infinite}
.jarvis-ticker{position:absolute;left:0;right:0;bottom:5.5vh;overflow:hidden;white-space:nowrap;opacity:.32;mask-image:linear-gradient(90deg,transparent,black 12%,black 88%,transparent);font:700 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.13em;color:#81efff}.jarvis-ticker-track{display:flex;width:max-content;animation:jarvisTicker 42s linear infinite}.jarvis-ticker-group{display:inline-flex;min-width:100vw;align-items:center;gap:30px;padding-right:30px;flex-shrink:0}.jarvis-ticker b{color:#ffe08a}.jarvis-ticker .up{color:#7ff2b5}.jarvis-ticker .down{color:#ff92a0}.jarvis-ticker .flat{color:#83ddf1}
.jarvis-candle-ribbon{position:absolute;top:26%;left:-7%;width:61%;height:180px;opacity:.2;transform:rotate(-7deg);background:linear-gradient(90deg,transparent,rgba(58,215,244,.06),transparent);mask-image:linear-gradient(90deg,transparent,black 17%,black 82%,transparent)}.jarvis-candle-ribbon svg{width:100%;height:100%;overflow:visible}.jarvis-candle-ribbon .wick{stroke:#7ceeff;stroke-width:1}.jarvis-candle-ribbon .green{fill:#46eaa4}.jarvis-candle-ribbon .red{fill:#ff8292}.jarvis-candle-ribbon .trail{fill:none;stroke:#68e8ff;stroke-width:1;stroke-dasharray:5 8;animation:jarvisDash 18s linear infinite}
.jarvis-ekg{position:absolute;right:-7%;top:43%;width:min(560px,58vw);height:120px;opacity:.27;mask-image:linear-gradient(90deg,transparent,black 21%,black 80%,transparent)}.jarvis-ekg svg{width:100%;height:100%;overflow:visible}.jarvis-ekg path{fill:none;stroke:#52f6bf;stroke-width:1.5;filter:drop-shadow(0 0 4px #26e5a8);stroke-dasharray:620;stroke-dashoffset:620;animation:jarvisEkg 6s linear infinite}.jarvis-ekg line{stroke:rgba(93,244,204,.24);stroke-width:1}
.jarvis-earth{position:fixed;z-index:0;right:clamp(-155px,-7vw,-54px);bottom:clamp(-142px,-9vw,-70px);width:clamp(280px,31vw,500px);aspect-ratio:1;border-radius:50%;overflow:hidden;opacity:.28;background:radial-gradient(circle at 34% 30%,#5ee9ff 0 1.2%,#1674a6 3%,#093854 18%,#041827 49%,#01070f 70%);box-shadow:-30px -18px 60px rgba(41,224,255,.22),inset 20px 12px 58px rgba(68,231,255,.2),inset -44px -20px 66px rgba(0,0,0,.92);filter:saturate(1.15)}
.jarvis-earth:before{content:"";position:absolute;inset:-9%;border-radius:50%;background:repeating-radial-gradient(ellipse at 30% 40%,transparent 0 12px,rgba(99,236,255,.16) 13px 14px,transparent 15px 25px),repeating-linear-gradient(25deg,transparent 0 17px,rgba(70,198,226,.1) 18px 19px);mix-blend-mode:screen;animation:jarvisEarthTurn 30s linear infinite}.jarvis-earth:after{content:"";position:absolute;inset:-8%;border-radius:50%;border:1px solid rgba(123,242,255,.45);box-shadow:inset 0 0 38px rgba(57,226,255,.24),0 0 42px rgba(26,211,247,.18)}
.jarvis-earth-label{position:absolute;z-index:1;left:18%;top:23%;color:#aaf8ff;font:700 9px/1.2 ui-monospace,monospace;letter-spacing:.17em;text-shadow:0 0 10px #00d9ff;opacity:.75}.jarvis-earth-label:after{content:"GLOBAL SIGNAL MESH";display:block;margin-top:5px;color:#69cbdc;font-size:7px;letter-spacing:.11em}.jarvis-orbit{position:absolute;z-index:-1;inset:-13%;border:1px dashed rgba(105,235,255,.35);border-radius:50%;animation:jarvisOrbit 24s linear infinite}.jarvis-orbit:after{content:"";position:absolute;width:6px;height:6px;top:7%;left:23%;border-radius:50%;background:#ffd471;box-shadow:0 0 14px #ffd471}
.jarvis-coins{position:fixed;inset:0;z-index:0;overflow:hidden;perspective:850px}.jarvis-coin{position:absolute;width:var(--coin-size);aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,230,153,.92);background:radial-gradient(circle at 28% 22%,#fffbd7 0 2%,#fff0a3 5%,#e3af45 13%,#9d5c0b 39%,#452004 61%,#bd7b1a 77%,#ffe082 100%);box-shadow:inset 1px 1px 2px rgba(255,255,224,.85),inset -4px -5px 7px rgba(50,20,0,.72),inset 0 0 0 3px rgba(91,43,2,.72),inset 0 0 0 5px rgba(255,222,121,.52),0 5px 2px rgba(0,0,0,.36),0 0 19px rgba(241,189,80,.28);opacity:.62;transform-style:preserve-3d;backface-visibility:hidden;animation:jarvisCoinFloat var(--coin-duration) ease-in-out infinite var(--coin-delay),jarvisCoinFlip calc(var(--coin-duration) * 1.5) linear infinite var(--coin-delay)}.jarvis-coin:before{content:"";position:absolute;inset:-4px;border-radius:50%;background:conic-gradient(from 20deg,#4c2502,#d38d21,#6b3504,#f7ce68,#522703,#d99428,#452004);transform:translateZ(-12px);box-shadow:1px 1px #6a3504,2px 2px #703804,3px 3px #7b4106,4px 4px #854809,5px 5px #8f500b,6px 6px #744006,7px 7px #5a2c03,8px 8px #3e1e01,10px 10px 4px rgba(0,0,0,.55);filter:brightness(.76);backface-visibility:hidden}.jarvis-coin:after{content:attr(data-mark);position:absolute;inset:18%;display:grid;place-items:center;border:1px solid rgba(73,35,4,.7);border-radius:50%;color:#4d2907;font:900 calc(var(--coin-size) * .31)/1 Arial,sans-serif;text-shadow:0 1px rgba(255,240,163,.75),0 -1px rgba(48,18,0,.55);box-shadow:inset 1px 1px rgba(255,239,159,.6),inset -2px -2px rgba(75,31,0,.45);transform:translateZ(5px);backface-visibility:hidden}
.jarvis-candle-population{position:absolute;top:19%;left:4%;width:57%;height:190px;overflow:hidden;opacity:.32;transform:rotate(-7deg);mask-image:linear-gradient(90deg,transparent,black 10%,black 90%,transparent)}.jarvis-live-candle{position:absolute;bottom:50%;width:7px;height:var(--body-height);background:var(--candle-color);border-radius:1px;box-shadow:0 0 8px var(--candle-color);transform-origin:center;animation:jarvisCandleLife var(--candle-life) ease-out forwards}.jarvis-live-candle:before{content:"";position:absolute;left:50%;top:calc(-1 * var(--wick-top));width:1px;height:calc(var(--wick-top) + var(--wick-bottom) + var(--body-height));background:var(--candle-color);transform:translateX(-50%);opacity:.8}.jarvis-live-candle.bear{bottom:calc(50% + var(--offset));}.jarvis-live-candle.bull{bottom:calc(50% - var(--offset));}
.novi-shell{position:relative;z-index:1}.topbar,.dashboard-window,.panel,.command-center,.workspace-tabs{backdrop-filter:blur(2px)}
@keyframes jarvisEarthTurn{to{transform:rotate(360deg)}}@keyframes jarvisOrbit{to{transform:rotate(-360deg)}}@keyframes jarvisCoinFloat{50%{translate:var(--coin-drift) -34px;opacity:.76}}@keyframes jarvisCoinFlip{0%,100%{transform:rotateY(0deg) rotateZ(-8deg)}50%{transform:rotateY(180deg) rotateZ(8deg) scale(1.08)}}@keyframes jarvisAurora{to{transform:translate(-8vw,5vh) scale(1.2);opacity:.7}}@keyframes jarvisScan{to{transform:translateY(44px)}}@keyframes jarvisTicker{to{transform:translateX(-50%)}}@keyframes jarvisDash{to{stroke-dashoffset:-180px}}@keyframes jarvisEkg{0%{stroke-dashoffset:620;opacity:0}10%,82%{opacity:1}100%{stroke-dashoffset:0;opacity:0}}@keyframes jarvisCandleLife{0%{opacity:0;transform:translateY(8px) scaleY(.05)}18%{opacity:.95;transform:translateY(0) scaleY(1)}74%{opacity:.72;transform:translateX(0) scaleY(1)}100%{opacity:0;transform:translateX(-22px) scaleY(.45)}}
@media(max-width:700px){.jarvis-earth{width:260px;right:-118px;bottom:-110px;opacity:.5}.jarvis-coin:nth-child(n+5){display:none}.jarvis-candle-ribbon{width:90%;left:-22%;top:23%;opacity:.14}.jarvis-candle-population{width:83%;left:-12%;top:19%;opacity:.22}.jarvis-ekg{width:90vw;right:-25%;top:51%;opacity:.17}.jarvis-ticker{bottom:3vh;font-size:8px}}@media(prefers-reduced-motion:reduce){.jarvis-earth:before,.jarvis-orbit,.jarvis-coin,.jarvis-aurora,.jarvis-scan,.jarvis-ticker-track,.jarvis-candle-ribbon .trail,.jarvis-ekg path,.jarvis-live-candle{animation:none!important}.jarvis-coin{opacity:.18}.jarvis-ekg path{stroke-dashoffset:0}.jarvis-live-candle{display:none}}

/* Larger, deeply minted tokens and a clearly simulated finance-wire prop. */
.jarvis-earth{display:none}.jarvis-coin{border-color:rgba(255,239,180,.98);background:radial-gradient(circle at 27% 20%,#fffde7 0 2%,#fff6bd 4%,#f6d36d 9%,#d38d23 17%,#8d4d05 41%,#351601 65%,#a9600c 80%,#ffe69a 100%);box-shadow:inset 2px 2px 3px rgba(255,255,231,.95),inset -6px -7px 10px rgba(38,14,0,.78),inset 0 0 0 3px rgba(83,35,1,.84),inset 0 0 0 6px rgba(255,225,128,.65),inset 0 0 0 8px rgba(94,45,2,.72),0 7px 4px rgba(0,0,0,.48),0 0 26px rgba(241,189,80,.36)}.jarvis-coin:before{inset:-5px;background:repeating-conic-gradient(from 20deg,#4b2001 0 3deg,#d38d21 4deg 7deg,#653004 8deg 10deg);transform:translateZ(-18px);box-shadow:1px 1px #6a3504,2px 2px #703804,3px 3px #7b4106,4px 4px #854809,5px 5px #8f500b,6px 6px #744006,7px 7px #5a2c03,8px 8px #3e1e01,9px 9px #2c1400,11px 11px 5px rgba(0,0,0,.62)}.jarvis-coin:after{inset:17%;font-size:calc(var(--coin-size) * .25);transform:translateZ(8px);box-shadow:inset 2px 2px rgba(255,243,177,.72),inset -3px -3px rgba(75,31,0,.52),0 2px 0 rgba(82,35,1,.45)}.jarvis-news-feed{position:absolute;right:3vw;bottom:9vh;width:min(390px,38vw);padding:14px 16px;border:1px solid rgba(135,229,248,.2);border-left:3px solid rgba(255,194,80,.6);background:linear-gradient(125deg,rgba(6,23,39,.62),rgba(16,55,76,.28));box-shadow:0 10px 35px rgba(0,0,0,.22);opacity:.3;filter:blur(1.65px);transform:perspective(700px) rotateY(-11deg) rotateX(3deg);font:700 10px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;color:#c4f7ff}.jarvis-news-feed header{display:flex;justify-content:space-between;color:#ffe297;font-size:8px;border-bottom:1px solid rgba(126,224,243,.24);padding-bottom:6px;margin-bottom:7px}.jarvis-news-feed p{margin:5px 0;white-space:nowrap;overflow:hidden}.jarvis-news-feed i{color:#83f2bd;font-style:normal}.jarvis-news-feed .alert{color:#ffb6a3}.jarvis-news-feed small{display:block;margin-top:7px;color:#8ec3d0;font-size:7px}@media(max-width:700px){.jarvis-news-feed{display:none}}

.jarvis-coin{background:radial-gradient(ellipse at 28% 18%,#fffef0 0 2%,#fff7c7 4%,#f8d670 8%,#d28a1f 17%,#7f4202 42%,#2b1000 67%,#9c5708 83%,#ffe9a2 100%);filter:drop-shadow(0 11px 8px rgba(0,0,0,.42));opacity:.72}.jarvis-coin:before{background:repeating-conic-gradient(from 15deg,#3b1800 0 2deg,#c77a14 3deg 6deg,#744005 7deg 9deg);transform:translateZ(-22px);box-shadow:1px 1px #6a3504,2px 2px #703804,3px 3px #7b4106,4px 4px #854809,5px 5px #8f500b,6px 6px #744006,7px 7px #5a2c03,8px 8px #3e1e01,9px 9px #2c1400,10px 10px #190b00,12px 12px 6px rgba(0,0,0,.68)}.jarvis-coin:after{background:radial-gradient(circle at 32% 25%,rgba(255,255,220,.45),transparent 20%),rgba(212,147,38,.16);border-width:2px;transform:translateZ(10px)}.jarvis-network-badges{position:absolute;left:4vw;right:4vw;bottom:7vh;display:flex;gap:11px;justify-content:center;flex-wrap:wrap;opacity:.34;filter:blur(.8px);transform:perspective(700px) rotateX(7deg)}.jarvis-network-badge{min-width:106px;padding:7px 10px;border:1px solid rgba(155,229,244,.33);background:rgba(5,20,34,.64);box-shadow:0 8px 18px rgba(0,0,0,.32);color:#d9f9ff;font:900 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em;text-align:center}.jarvis-network-badge:before{content:'LIVE';display:block;margin-bottom:4px;color:#ffcc75;font-size:7px;letter-spacing:.17em}.jarvis-network-badge:nth-child(2n){border-color:rgba(255,171,126,.32);color:#ffe2d0}.jarvis-network-badge:nth-child(3n){border-color:rgba(121,235,182,.32);color:#d2ffeb}@media(max-width:700px){.jarvis-network-badges{display:none}}

.jarvis-coin.silver{border-color:rgba(239,250,255,.96);background:radial-gradient(ellipse at 28% 18%,#fff 0 2%,#eef7fb 5%,#b7c8d1 15%,#657884 39%,#202d36 64%,#8198a5 82%,#effcff 100%);box-shadow:inset 2px 2px 3px rgba(255,255,255,.95),inset -6px -7px 10px rgba(10,19,25,.78),inset 0 0 0 3px rgba(39,55,65,.84),inset 0 0 0 6px rgba(213,233,240,.62),inset 0 0 0 8px rgba(57,76,87,.72),0 7px 4px rgba(0,0,0,.48),0 0 26px rgba(171,224,244,.27)}.jarvis-coin.silver:before{background:repeating-conic-gradient(from 15deg,#19232a 0 2deg,#b9d0da 3deg 6deg,#4c626d 7deg 9deg);box-shadow:1px 1px #526773,2px 2px #5e7783,3px 3px #42545e,4px 4px #30414b,5px 5px #202f38,6px 6px #17232a,8px 8px 6px rgba(0,0,0,.68)}.jarvis-coin.silver:after{color:#263942;border-color:rgba(35,55,67,.8);background:radial-gradient(circle at 32% 25%,rgba(255,255,255,.56),transparent 20%),rgba(184,213,224,.18);text-shadow:0 1px rgba(255,255,255,.85),0 -1px rgba(19,32,39,.55);box-shadow:inset 2px 2px rgba(255,255,255,.72),inset -3px -3px rgba(39,57,67,.48),0 2px 0 rgba(27,42,51,.45)}

/* Reuse NOVI homepage's global-currency mark as the token face. */
.jarvis-coin:after{content:"";inset:13%;background-image:url('/static/global-currency-mark.svg');background-size:cover;background-position:center;background-repeat:no-repeat;opacity:.9}.jarvis-coin.silver:after{background-image:url('/static/global-currency-mark.svg')}.jarvis-coin .token-mark{position:absolute;z-index:2;inset:29%;display:grid;place-items:center;border-radius:50%;color:#fff5c2;font:900 calc(var(--coin-size) * .24)/1 Arial,sans-serif;text-shadow:0 2px 1px #3d1a00,0 0 8px rgba(255,225,132,.55);transform:translateZ(14px);backface-visibility:hidden}.jarvis-coin.silver .token-mark{color:#effcff;text-shadow:0 2px 1px #1a2c36,0 0 8px rgba(198,240,255,.58)}

/* Decorative layers never intercept dashboard controls or scrolling. */
#noviJarvisAtmosphere,.jarvis-coins,.jarvis-coins *{pointer-events:none}
/* Keep the metal reverse visible while the face rotates away. */
.jarvis-coin,.jarvis-coin:before{backface-visibility:visible}
#noviJarvisAtmosphere[data-motion="paused"] *,
.jarvis-coins[data-motion="paused"] .jarvis-coin{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){
  .jarvis-coin{opacity:.18}
}

/* Restore the September 6 pre-TimesFM atmosphere above the legacy #bg
   canvas. Dashboard windows remain above both decorative layers. */
#noviJarvisAtmosphere,.jarvis-coins{z-index:1}
body>.dashboard-window,body>.novi-workspace{position:relative;z-index:2}
#noviJarvisAtmosphere canvas{filter:none!important}
#noviJarvisAtmosphere .jarvis-global-network{opacity:1}
.jarvis-coin{left:clamp(16px,var(--coin-x),calc(100% - var(--coin-size) - 24px));top:clamp(70px,var(--coin-y),calc(100% - var(--coin-size) - 30px))}
.jarvis-candle-population{opacity:.48}
.jarvis-candle-ribbon{opacity:.35}
.jarvis-ekg{opacity:.45}
.jarvis-ticker{opacity:.56}
.jarvis-network-badges{opacity:.48}
.novi-control-workspace{background:rgba(2,15,27,.22);backdrop-filter:none}
.novi-control-workspace .control-panel{background:rgba(4,23,39,.90)!important}
@media(max-width:700px){
  .jarvis-coin{width:min(var(--coin-size),62px);left:clamp(16px,var(--coin-mobile-x),calc(100% - 84px));top:clamp(70px,var(--coin-mobile-y),calc(100% - 90px))}
  .jarvis-coin:nth-child(-n+8){display:block}
  .jarvis-coin:nth-child(n+9){display:none}
  .jarvis-candle-population{left:0;width:100%;top:25%;height:220px;opacity:.42}
  .jarvis-candle-ribbon{left:-5%;width:110%;top:42%;opacity:.32}
  .jarvis-ekg{right:0;width:100%;top:64%;opacity:.46}
  .jarvis-ticker{font-size:9px;bottom:3vh}
  .jarvis-network-badges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));left:5%;right:5%;bottom:8vh;gap:7px;opacity:.4}
  .jarvis-network-badge{min-width:0;font-size:8px;padding:6px}
}

/* Meteor coins stay inside the faded, noninteractive atmosphere. */
.jarvis-meteors{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:2}
.jarvis-coin-meteor{--meteor-glow:255,205,112;position:absolute;left:var(--meteor-x);top:-20vh;width:var(--meteor-size);height:var(--meteor-size);opacity:0;animation:jarvisCoinMeteor var(--meteor-duration) linear var(--meteor-delay) infinite both;pointer-events:none}
.jarvis-coin-meteor.silver{--meteor-glow:139,225,255}
.jarvis-coin-meteor:before,.jarvis-coin-meteor:after{content:"";position:absolute;left:50%;top:50%;width:clamp(110px,17vw,250px);transform-origin:0 50%;transform:translateY(-50%) rotate(-55.2deg);pointer-events:none}
.jarvis-coin-meteor:before{height:22px;background:linear-gradient(90deg,rgba(var(--meteor-glow),.8),rgba(var(--meteor-glow),.28) 28%,rgba(var(--meteor-glow),0));clip-path:polygon(0 0,100% 48%,100% 52%,0 100%)}
.jarvis-coin-meteor:after{height:2px;background:linear-gradient(90deg,#fff7d8,rgba(var(--meteor-glow),.65) 20%,transparent);box-shadow:0 0 7px rgba(var(--meteor-glow),.28)}
.jarvis-meteor-token{position:relative;z-index:1;display:grid;place-items:center;width:100%;height:100%;border-radius:50%;border:2px solid #ffe6a5;background:radial-gradient(circle at 30% 22%,#fff8cb,#e5af45 21%,#7d4108 58%,#c88925 78%,#fff0b4);box-shadow:inset 0 0 0 3px #98621f,inset 0 0 0 5px #edc772,3px 4px 0 #694015,0 0 15px rgba(var(--meteor-glow),.5);animation:jarvisMeteorSpin 5s linear var(--meteor-delay) infinite}
.jarvis-meteor-token:before{content:"";position:absolute;inset:13%;border-radius:50%;background:url('/static/global-currency-mark.svg') center/cover no-repeat;opacity:.9}
.jarvis-meteor-token b{position:relative;z-index:1;color:#fff5c2;font:900 calc(var(--meteor-size) * .31)/1 Arial,sans-serif;text-shadow:0 2px 1px #3d1a00,0 0 8px rgba(255,225,132,.55)}
.jarvis-meteor-token .meteor-symbol-long{font-size:calc(var(--meteor-size) * .25)}
.silver .jarvis-meteor-token{border-color:#e2f8ff;background:radial-gradient(circle at 30% 22%,#fff,#b9d6e5 22%,#3c647b 60%,#93bbd0 80%,#edfaff);box-shadow:inset 0 0 0 3px #5e859b,inset 0 0 0 5px #c4e4ee,3px 4px 0 #29485c,0 0 15px rgba(var(--meteor-glow),.5)}
.silver .jarvis-meteor-token b{color:#f2fcff;text-shadow:0 1px 2px #112b3b}
@keyframes jarvisCoinMeteor{
  0%{transform:translate3d(0,0,0);opacity:0}
  5%{opacity:.84}
  54%{opacity:.72}
  65%,100%{transform:translate3d(-100vh,144vh,0);opacity:0}
}
@keyframes jarvisMeteorSpin{to{transform:rotate(360deg)}}
@media(max-width:700px){
  .jarvis-coin-meteor:nth-child(n+3){display:none}
  .jarvis-coin-meteor{width:30px;height:30px;--meteor-size:30px}
  .jarvis-coin-meteor:before,.jarvis-coin-meteor:after{width:115px}
}
@media(prefers-reduced-motion:reduce){
  .jarvis-coin-meteor{display:none;animation:none!important}
  .jarvis-meteor-token{animation:none!important}
}
