*{box-sizing:border-box}
:root{--green:#21ff42;--cyan:#16eaff;--blue:#0789ff;--red:#ff4b4b;--yellow:#ffe000;--border:#0b80c7}
html,body{margin:0;height:100%;overflow:hidden;background:#000;color:#fff;font-family:Arial,Helvetica,sans-serif}
body::after{content:"BETA-TEST";position:fixed;right:14px;bottom:12px;z-index:9999;padding:5px 9px;border:1px solid rgba(255,224,0,.72);border-radius:4px;background:rgba(22,18,0,.86);color:#ffe000;font-size:10px;font-weight:900;letter-spacing:1.4px;pointer-events:none;box-shadow:0 0 12px rgba(255,224,0,.18)}
#bg{position:fixed;inset:0;width:100vw;height:100vh;z-index:0;opacity:.95}
.topbar,.grid,.bottom,footer{position:relative;z-index:2}
.topbar{height:70px;display:flex;align-items:center;gap:16px;padding:0 18px;background:rgba(1,7,14,.74);border-bottom:1px solid var(--border)}
.logo{font-size:38px;letter-spacing:12px;color:var(--cyan);font-weight:900;text-shadow:0 0 14px var(--cyan)}
.brand b{font-size:15px}.brand span{display:block;color:var(--cyan);font-size:12px;letter-spacing:2px}
nav{display:flex;gap:6px;margin-left:10px}button{background:#061320;color:white;border:1px solid #0874b5;border-radius:5px;padding:10px 18px;font-weight:800}
.workspace-tabs{position:relative;z-index:3;display:flex;gap:7px;align-items:center;padding:9px 10px 0;overflow-x:auto}.workspace-tabs button,.workspace-tabs a{flex:0 0 auto;padding:7px 11px;border:1px solid #174c70;border-radius:5px;background:rgba(3,18,31,.84);color:#a8d7ed;font-size:11px;font-weight:900;letter-spacing:.7px;text-decoration:none}.workspace-tabs kbd{margin-left:4px;padding:1px 4px;border:1px solid rgba(168,215,237,.35);border-radius:3px;font-size:9px}.workspace-tabs button.active{color:#04120a;background:var(--green);border-color:var(--green);box-shadow:0 0 14px rgba(33,255,66,.35)}.workspace-tabs button.active kbd{border-color:rgba(4,18,10,.35)}#workspaceStatus{margin-left:auto;flex:0 0 auto;color:#21ff42;font-size:10px;font-weight:900;letter-spacing:1px}.novi-workspace[hidden]{display:none!important}
button.active{background:#0869b2;box-shadow:0 0 14px #008cff}button i{background:#12c94a;border-radius:50%;padding:1px 6px}
.sys{margin-left:auto;color:var(--green);font-weight:900}.metric{font-size:11px;color:#9fc3d8;border-left:1px solid #24485f;padding-left:14px}.metric b{font-size:15px;color:var(--green)}
.beta-badge{flex:0 0 auto;padding:5px 8px;border:1px solid rgba(255,224,0,.9);border-radius:4px;background:rgba(55,43,0,.72);color:var(--yellow);font-size:10px;font-weight:900;letter-spacing:1.2px;white-space:nowrap;box-shadow:0 0 12px rgba(255,224,0,.2)}
.grid{height:calc(100vh - 306px);min-height:470px;display:grid;grid-template-columns:310px 1fr 280px 280px;gap:10px;padding:10px}
.left,.center,.right1,.right2{display:flex;flex-direction:column;gap:10px;min-height:0}
.panel{background:linear-gradient(180deg,rgba(5,18,34,.78),rgba(1,6,13,.88));border:1px solid var(--border);border-radius:8px;padding:12px;box-shadow:inset 0 0 18px rgba(0,170,255,.12),0 0 14px rgba(0,120,255,.28);position:relative;overflow:hidden;backdrop-filter:blur(5px)}
h2{margin:0 0 8px;font-size:15px;font-weight:900}small{color:#aec7d9}.green{color:var(--green)}.cyan{color:var(--cyan)}.yellow{color:var(--yellow)}.red{color:var(--red)}
.pricebox{height:32%}.scorebox{height:27%}.model{height:16%;display:flex;align-items:center;gap:12px;font-size:12px}
.pricebox h2 span{float:right;color:var(--green)}.price{font-size:48px;color:var(--green);font-weight:900;text-shadow:0 0 16px rgba(30,255,80,.7)}.live{position:absolute;right:15px;top:80px;background:#08a941;padding:6px 10px;border-radius:6px;font-weight:900}
.pricebox canvas{height:62px!important;margin-top:6px}
.gauge{width:118px;height:118px;border-radius:50%;margin:2px auto;background:conic-gradient(var(--green) 0 230deg,#0d253c 230deg);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 25px rgba(0,255,90,.45)}
.gauge b{font-size:34px}.signal{text-align:center;color:var(--green);font-weight:900}
.range{font-size:24px;color:#c5e6ff;font-weight:900;margin:12px 0}.rangebar{height:9px;background:linear-gradient(90deg,#4654ff,var(--cyan),var(--green));border-radius:12px}.rangebar i{display:block;width:14px;height:14px;background:var(--cyan);border-radius:50%;position:relative;left:72%;top:-3px}
.orb{width:70px;height:70px;min-width:70px;border-radius:50%;background:radial-gradient(circle,#8cffff 0,#0494ff 25%,#03243e 46%,#06111d 66%);box-shadow:0 0 25px #02a6ff;animation:orb 2.8s infinite ease-in-out}
@keyframes orb{0%,100%{transform:scale(.96)}50%{transform:scale(1.05);box-shadow:0 0 38px #02eaff}}
.chartbox{height:52%}.predictionbox{height:48%}.charthead{display:flex;align-items:center;justify-content:space-between;gap:10px}.charthead span{color:var(--green)}.tabs button{padding:6px 9px}.chartprice{font-size:32px;color:var(--green);font-weight:900}.chartbox canvas{height:calc(100% - 96px)!important}.volbars{height:34px;display:flex;gap:3px;align-items:end;padding:0 14px}.volbars i{flex:1;background:#16c653;min-height:4px}.volbars i:nth-child(3n){background:#d94141}
.predictionbox canvas{height:calc(100% - 32px)!important}.overlay{position:absolute;right:12px;top:62px;width:150px;background:rgba(4,12,24,.92);border:1px solid #0c74b8;border-radius:7px;padding:10px;text-align:center}.overlay small{display:block;margin-top:8px}.overlay b{display:block;font-size:16px}
.semi{height:80px;width:165px;margin:8px auto 0;border-radius:100px 100px 0 0;background:conic-gradient(from 270deg,var(--red),#ff9a00,var(--yellow),#3fff2a,var(--green));display:flex;align-items:flex-end;justify-content:center;padding-bottom:8px}.semi b{font-size:28px;color:var(--green);background:#06101d;border-radius:50%;padding:10px 14px}
.centertext{text-align:center}.sentiment{font-size:36px;color:var(--green);font-weight:900}.right1 canvas{height:50px!important}
.row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #17405d;padding:6px 0;font-size:12px;gap:8px}.row em{font-style:normal;color:var(--green);font-size:12px}
.news{border-bottom:1px solid #163a55;padding:10px 0;font-size:14px}.status{display:flex;align-items:center;gap:16px;line-height:2}.status b{color:var(--green)}
.smallgauge{width:92px;height:92px;border-radius:50%;margin:4px auto;background:conic-gradient(var(--green) 0 310deg,#0d253c 310deg);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 22px rgba(0,255,90,.45)}.smallgauge b{font-size:27px}
.compare{text-align:center}
.host-performance{border-color:rgba(22,234,255,.6)!important;background:linear-gradient(145deg,rgba(3,28,42,.94),rgba(2,10,22,.94))!important}.host-performance-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.host-performance-head h2{margin-top:2px}.host-performance-head>b{font-size:12px;color:var(--green);letter-spacing:1px}.host-performance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.host-performance-grid>div{padding:7px;border:1px solid rgba(22,234,255,.18);border-radius:5px;background:rgba(3,16,29,.58)}.host-performance-grid small,.host-performance-grid b,.host-performance-grid span{display:block}.host-performance-grid b{margin:3px 0;color:#e9fbff;font-size:17px}.host-performance-grid span,.host-performance>small{color:#8fb4c9;font-size:10px;line-height:1.35}
.operations-overview{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-bottom:12px}.operations-overview>div{padding:8px;border:1px solid rgba(22,234,255,.18);border-radius:6px;background:rgba(3,16,29,.56)}.operations-overview small,.operations-overview b{display:block}.operations-overview small{font-size:9px;color:#86abc0}.operations-overview b{margin-top:4px;color:#e9fbff;font-size:14px;overflow-wrap:anywhere}@media(max-width:780px){.operations-overview{grid-template-columns:repeat(3,minmax(0,1fr))}}
.operations-events{margin:0 0 12px;padding:9px;border:1px solid rgba(22,234,255,.16);border-radius:6px;background:rgba(3,16,29,.45)}.operations-events>small{display:block;color:#86abc0;font-size:9px;letter-spacing:1px}.operations-events>div{display:grid;gap:5px;margin-top:7px}.operations-events>div>div{display:flex;gap:7px;font-size:11px;color:#c8e4ef}.operations-events b{min-width:74px;color:#21ff42;font-size:10px}.operations-events span{overflow-wrap:anywhere}
.bottom{height:210px;display:grid;grid-template-columns:1.1fr 1.2fr 1.1fr .8fr 1.1fr;gap:10px;padding:0 10px 10px}.regime{text-align:center;display:flex;flex-direction:column;gap:6px}.regime b{color:var(--green);font-size:18px}
footer{height:26px;border-top:1px solid var(--border);color:#9fc3d8;font-size:12px;padding:6px 20px;background:rgba(1,7,14,.8)}footer span{float:right;color:var(--green)}
canvas{width:100%!important}

/* ===== JARVIS XRP V7 PHASE 1 ===== */

.v7grid{
  position:relative;
  z-index:2;
  height:150px;
  display:grid;
  grid-template-columns:1.1fr 1fr 1.2fr 1fr;
  gap:10px;
  padding:0 10px 10px;
}

.decisionMain{
  font-size:34px;
  font-weight:900;
  color:var(--green);
  text-shadow:0 0 14px var(--green);
}

.decisionScore{
  font-size:22px;
  color:var(--cyan);
  font-weight:900;
}

.barrow{
  display:grid;
  grid-template-columns:90px 1fr 42px;
  align-items:center;
  gap:8px;
  font-size:12px;
  margin:7px 0;
}

.barrow i{
  height:8px;
  border-radius:8px;
  background:linear-gradient(90deg,var(--cyan),var(--green));
  width:var(--w);
  box-shadow:0 0 10px var(--cyan);
}

.barrow b{
  color:var(--green);
}

@media(max-width:1200px){
  .v7grid{
    grid-template-columns:repeat(2,1fr);
    height:300px;
  }
}

/* ===== JARVIS XRP V7.1 POLISH ===== */

.scorebox{
  overflow:hidden;
}

.scorebox .gauge{
  width:105px !important;
  height:105px !important;
  margin:0 auto 2px auto !important;
}

.scorebox .gauge b{
  font-size:30px !important;
  transform:translateY(-2px);
}

.scorebox .signal{
  font-size:12px;
  margin-top:-2px;
}

.semi{
  width:145px !important;
  height:68px !important;
  margin-top:2px !important;
}

.semi b{
  font-size:24px !important;
  padding:8px 12px !important;
}

.compare .smallgauge{
  width:115px !important;
  height:115px !important;
  margin:2px auto !important;
  background:conic-gradient(var(--green) 0 315deg,#0d253c 315deg) !important;
}

.compare .smallgauge b{
  font-size:34px !important;
}

.panel{
  background:linear-gradient(180deg,rgba(5,18,34,.70),rgba(1,6,13,.84)) !important;
  backdrop-filter:blur(7px);
}

#bg{
  opacity:1 !important;
  filter:saturate(1.6) brightness(1.25);
}

.orb{
  animation:orbPulse 2.4s infinite ease-in-out;
}

@keyframes orbPulse{
  0%{transform:scale(.94);box-shadow:0 0 12px #02a6ff}
  50%{transform:scale(1.06);box-shadow:0 0 42px #02eaff}
  100%{transform:scale(.94);box-shadow:0 0 12px #02a6ff}
}

.chartbox canvas,
.predictionbox canvas{
  filter:drop-shadow(0 0 5px rgba(33,255,66,.45));
}

.volbars{
  opacity:.70;
}

.news{
  animation:softPulse 4s infinite ease-in-out;
}

@keyframes softPulse{
  0%,100%{opacity:.82}
  50%{opacity:1}
}


/* ===== JARVIS XRP V8 PHASE 1 ===== */

.price{
  font-size:52px !important;
}

.scorebox .gauge{
  width:122px !important;
  height:122px !important;
  margin:4px auto !important;
}

.scorebox .gauge b{
  font-size:36px !important;
}

.semi{
  width:158px !important;
  height:76px !important;
}

.compare .smallgauge{
  width:132px !important;
  height:132px !important;
}

.compare .smallgauge b{
  font-size:38px !important;
}

.panel{
  border-color:#10a8ff !important;
  box-shadow:
    inset 0 0 22px rgba(0,180,255,.18),
    0 0 18px rgba(0,130,255,.32) !important;
}

.chartbox canvas{
  filter:drop-shadow(0 0 8px rgba(33,255,66,.55));
}

.predictionbox canvas{
  filter:drop-shadow(0 0 8px rgba(22,234,255,.55));
}

.topbar{
  background:rgba(0,5,12,.66) !important;
}

.v8ticker{
  position:relative;
  z-index:3;
  height:26px;
  overflow:hidden;
  border-top:1px solid #0b80c7;
  border-bottom:1px solid #0b80c7;
  background:rgba(0,10,20,.72);
  color:#21ff42;
  font-size:12px;
  white-space:nowrap;
}

.v8ticker .ticker-track{display:flex;width:max-content;will-change:transform;animation:ticker 34s linear infinite}.v8ticker .ticker-track span{display:inline-block;padding-right:64px}

@keyframes ticker{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}

.topbar nav,.topbar .navlinks,.workspace-tabs,.candle-timeframes{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}.topbar nav a,.topbar .navlinks a,.workspace-tabs>*{scroll-snap-align:start}

.aiPulse{
  animation:aiPulse 2.2s ease-in-out infinite;
}

@keyframes aiPulse{
  0%,100%{opacity:.78;text-shadow:0 0 8px #21ff42}
  50%{opacity:1;text-shadow:0 0 18px #21ff42}
}

/* ===== JARVIS XRP V9 ULTIMATE VISUAL ENGINE ===== */

#bg{
  opacity:.38 !important;
  filter:saturate(1.7) brightness(1.45) contrast(1.2);
}

.panel{
  background:linear-gradient(180deg,rgba(4,16,31,.62),rgba(0,5,12,.78)) !important;
  border-color:#19c7ff !important;
  box-shadow:
    inset 0 0 25px rgba(0,210,255,.15),
    0 0 20px rgba(0,150,255,.38) !important;
}

.price{
  font-size:54px !important;
  text-shadow:0 0 20px #21ff42;
}

.scorebox .gauge{
  width:136px !important;
  height:136px !important;
  margin:2px auto !important;
}

.scorebox .gauge b{
  font-size:40px !important;
}

.scorebox .signal{
  font-size:13px !important;
  color:#21ff42;
  text-shadow:0 0 10px #21ff42;
}

.semi{
  width:178px !important;
  height:88px !important;
  margin-top:4px !important;
}

.semi b{
  font-size:30px !important;
}

.compare .smallgauge{
  width:142px !important;
  height:142px !important;
  margin:0 auto !important;
  background:conic-gradient(#21ff42 0 313deg,#10263d 313deg) !important;
}

.compare .smallgauge b{
  font-size:42px !important;
}

.orb{
  animation:v9Orb 2.1s infinite ease-in-out;
}

@keyframes v9Orb{
  0%,100%{transform:scale(.94);box-shadow:0 0 14px #00aaff}
  50%{transform:scale(1.09);box-shadow:0 0 48px #00eaff}
}

.v9voice{
  position:fixed;
  right:22px;
  bottom:34px;
  width:74px;
  height:74px;
  z-index:5;
  border-radius:50%;
  background:radial-gradient(circle,#b8ffff 0,#00aaff 25%,#031b32 55%,#02070d 75%);
  box-shadow:0 0 30px #00cfff;
  animation:v9Voice 2.8s infinite ease-in-out;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#bfffff;
  font-weight:900;
  font-size:11px;
}

@keyframes v9Voice{
  0%,100%{transform:scale(.95);filter:brightness(1)}
  50%{transform:scale(1.08);filter:brightness(1.55)}
}

.v9statusbar{
  position:relative;
  z-index:3;
  height:28px;
  display:flex;
  align-items:center;
  gap:18px;
  padding:0 18px;
  background:rgba(0,8,18,.76);
  border-bottom:1px solid #0b80c7;
  font-size:12px;
  color:#9fdfff;
}

.v9statusbar b{
  color:#21ff42;
}

.v9dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#21ff42;
  box-shadow:0 0 10px #21ff42;
  display:inline-block;
  margin-right:5px;
  animation:v9Dot 1.4s infinite ease-in-out;
}

@keyframes v9Dot{
  0%,100%{opacity:.45}
  50%{opacity:1}
}

.chartbox canvas,
.predictionbox canvas{
  filter:drop-shadow(0 0 8px rgba(33,255,66,.55));
}

.news,
.whale{
  animation:v9SoftPulse 4s infinite ease-in-out;
}

@keyframes v9SoftPulse{
  0%,100%{opacity:.82}
  50%{opacity:1}
}

/* ===== V10 COMMAND CENTER PATCH ===== */

.v10badge{
  position:fixed;
  left:20px;
  bottom:34px;
  z-index:5;
  background:rgba(0,20,35,.75);
  border:1px solid #16eaff;
  border-radius:8px;
  padding:8px 14px;
  color:#16eaff;
  font-size:12px;
  box-shadow:0 0 18px rgba(22,234,255,.45);
}

.v10badge b{
  color:#21ff42;
}

.panel{
  transition:box-shadow .25s ease, transform .25s ease;
}

.panel:hover{
  transform:translateY(-1px);
  box-shadow:
    inset 0 0 30px rgba(0,220,255,.22),
    0 0 26px rgba(0,180,255,.5) !important;
}


/* ===== JARVIS XRP V11 COMMAND CENTER ===== */

.v11grid{
  position:relative;
  z-index:2;
  height:230px;
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:10px;
  padding:0 10px 10px;
}

.v11big{
  font-size:34px;
  font-weight:900;
  color:var(--green);
  text-shadow:0 0 16px var(--green);
}

.v11bar{
  height:10px;
  background:#0b253b;
  border-radius:10px;
  overflow:hidden;
  margin:8px 0;
}

.v11bar i{
  display:block;
  height:100%;
  width:50%;
  background:linear-gradient(90deg,var(--cyan),var(--green));
  box-shadow:0 0 14px var(--cyan);
}

.heatmap{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:6px;
}

.heatmap span{
  background:rgba(0,255,70,.15);
  border:1px solid rgba(33,255,66,.35);
  border-radius:6px;
  padding:7px;
  color:var(--green);
  font-weight:900;
  text-align:center;
}

.heatmap span:nth-child(2),
.heatmap span:nth-child(5),
.heatmap span:nth-child(7){
  background:rgba(255,60,60,.15);
  border-color:rgba(255,60,60,.35);
  color:#ff5555;
}

.v11summary{
  font-size:13px;
  color:#cfefff;
  line-height:1.35;
  margin-bottom:8px;
}

#bootOverlay{
  position:fixed;
  inset:0;
  z-index:9999;
  background:radial-gradient(circle,#06233d,#000);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  color:var(--cyan);
  transition:opacity 1.2s ease;
}

.bootLogo{
  font-size:72px;
  letter-spacing:18px;
  font-weight:900;
  text-shadow:0 0 28px var(--cyan);
}

#bootText{
  margin-top:20px;
  color:var(--green);
  font-size:18px;
  letter-spacing:3px;
}

.v11voice{
  position:fixed;
  right:22px;
  bottom:120px;
  width:92px;
  height:92px;
  z-index:6;
  border-radius:50%;
  background:radial-gradient(circle,#b8ffff 0,#00aaff 23%,#031b32 55%,#02070d 75%);
  box-shadow:0 0 38px #00cfff;
  animation:v11Voice 2.3s infinite ease-in-out;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#bfffff;
  font-weight:900;
  font-size:12px;
}

@keyframes v11Voice{
  0%,100%{transform:scale(.93)}
  50%{transform:scale(1.1);filter:brightness(1.65)}
}

@media(max-width:1200px){
  .v11grid{grid-template-columns:repeat(3,1fr);height:460px}
}

/* STEP 1: animated JARVIS background visibility */
#bg{
  opacity:.55 !important;
  filter:saturate(1.8) brightness(1.35) contrast(1.15);
}

.panel{
  background:linear-gradient(180deg,rgba(4,16,31,.60),rgba(0,5,12,.80)) !important;
}

/* STEP 2: gauge cleanup */

.scorebox .gauge{
  width:112px !important;
  height:112px !important;
  margin:0 auto 2px auto !important;
  transform:translateY(-4px);
}

.scorebox .gauge b{
  font-size:34px !important;
  transform:translateY(-2px);
}

.scorebox{
  overflow:hidden;
}

.semi{
  width:150px !important;
  height:70px !important;
  margin-top:0 !important;
}

.semi b{
  font-size:24px !important;
  padding:8px 12px !important;
}

.compare .smallgauge{
  width:118px !important;
  height:118px !important;
  margin:0 auto !important;
}

.compare .smallgauge b{
  font-size:34px !important;
}


/* STEP 3: Jarvis motion and final gauge centering */
#bg{
  opacity:.72 !important;
  filter:saturate(1.9) brightness(1.4) contrast(1.2);
}

.panel{
  animation:panelBreath 5s infinite ease-in-out;
}

@keyframes panelBreath{
  0%,100%{box-shadow:inset 0 0 18px rgba(0,170,255,.12),0 0 14px rgba(0,120,255,.28)}
  50%{box-shadow:inset 0 0 28px rgba(0,220,255,.20),0 0 24px rgba(0,180,255,.42)}
}

.scorebox .gauge{
  width:108px !important;
  height:108px !important;
  margin:-2px auto 0 auto !important;
}

.scorebox .gauge b{
  font-size:32px !important;
}

.compare .smallgauge{
  width:124px !important;
  height:124px !important;
}

.v11voice{
  animation:v11Voice 1.9s infinite ease-in-out !important;
}

/* ===== TRANSPARENT JARVIS HOLOGRAPHIC DISPLAY ===== */

#bg{
  opacity:1 !important;
  filter:saturate(2.2) brightness(1.55) contrast(1.25);
}

/* make all dashboard boxes see-through */
.panel,
.pricebox,
.scorebox,
.chartbox,
.predictionbox,
.status,
.compare,
.indicators{
  background:rgba(0,10,20,.38) !important;
  backdrop-filter:blur(3px) saturate(1.5);
  border:1px solid rgba(0,220,255,.72) !important;
  box-shadow:
    inset 0 0 22px rgba(0,220,255,.14),
    0 0 18px rgba(0,180,255,.35) !important;
}

/* stronger glass edges */
.panel:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(120deg,rgba(0,255,255,.14),transparent 30%,rgba(0,255,120,.08));
  pointer-events:none;
}

/* holographic scratches / energy texture */
body:after{
  content:"";
  position:fixed;
  inset:0;
  z-index:1;
  pointer-events:none;
  opacity:.38;
  background:
    radial-gradient(circle at 45% 35%,rgba(0,255,255,.22),transparent 22%),
    radial-gradient(circle at 78% 72%,rgba(0,180,255,.18),transparent 20%),
    repeating-linear-gradient(
      105deg,
      rgba(0,220,255,.05) 0px,
      rgba(0,220,255,.05) 1px,
      transparent 2px,
      transparent 18px
    );
  mix-blend-mode:screen;
  animation:holoFlow 9s linear infinite;
}

@keyframes holoFlow{
  0%{transform:translateX(-20px) translateY(0)}
  50%{transform:translateX(20px) translateY(-12px)}
  100%{transform:translateX(-20px) translateY(0)}
}

/* brighter neon text */
h2,
.logo,
.price,
.chartprice{
  text-shadow:0 0 12px rgba(0,255,255,.7),0 0 18px rgba(0,255,80,.35);
}

/* less solid header */
.topbar,
.v9statusbar,
.v8ticker{
  background:rgba(0,7,14,.48) !important;
  backdrop-filter:blur(4px);
}

/* keep content above effect */
.topbar,
.grid,
.dashboard,
.bottom,
.v11grid,
footer,
.v9voice,
.v11voice{
  position:relative;
  z-index:3;
}

/* ===== MAXIMUM TRANSPARENT JARVIS GLASS ===== */

.panel,
.card,
.widget,
.pricebox,
.scorebox,
.chartbox,
.predictionbox,
.status,
.compare,
.indicators,
.marketbox,
.newsbox,
.alertbox {

    background: rgba(0,0,0,0.025) !important;

    backdrop-filter: blur(1px) saturate(200%);
    -webkit-backdrop-filter: blur(1px) saturate(200%);

    border: 1px solid rgba(0,255,255,.45) !important;

    box-shadow:
        inset 0 0 10px rgba(0,255,255,.06),
        0 0 8px rgba(0,180,255,.15);

    border-radius:12px;
}

/* ===== 5% GLASS TRANSPARENCY + CYAN GLOW PATCH ===== */

/* background 40% brighter */
#bg{
  opacity:1 !important;
  filter:brightness(1.4) contrast(1.25) saturate(1.9) !important;
}

/* 5% transparent panels */
.panel,
.pricebox,
.scorebox,
.chartbox,
.predictionbox,
.status,
.compare,
.indicators,
.marketbox,
.newsbox,
.alertbox{
  background:rgba(0,8,16,0.05) !important;
  backdrop-filter:blur(1px) saturate(210%) !important;
  -webkit-backdrop-filter:blur(1px) saturate(210%) !important;
  border:1px solid rgba(0,235,255,.42) !important;
  box-shadow:
    inset 0 0 10px rgba(0,235,255,.05),
    0 0 10px rgba(0,180,255,.16) !important;
}

/* floating glass reflection */
.panel:after,
.pricebox:after,
.scorebox:after,
.chartbox:after,
.predictionbox:after{
  content:"";
  position:absolute;
  top:-80%;
  left:-60%;
  width:70%;
  height:240%;
  background:linear-gradient(
    115deg,
    transparent 0%,
    rgba(255,255,255,.04) 42%,
    rgba(0,255,255,.14) 50%,
    rgba(255,255,255,.04) 58%,
    transparent 100%
  );
  transform:rotate(18deg);
  animation:glassSweep 7s linear infinite;
  pointer-events:none;
}

@keyframes glassSweep{
  0%{left:-75%;opacity:0}
  20%{opacity:.7}
  55%{opacity:.45}
  100%{left:130%;opacity:0}
}

/* cyan glow behind important values */
.price,
.bigprice,
.chartprice,
#price,
#chartPrice{
  color:#21ff42 !important;
  text-shadow:
    0 0 8px #16eaff,
    0 0 18px #16eaff,
    0 0 30px rgba(33,255,66,.75),
    0 0 48px rgba(0,255,255,.45) !important;
}

/* prediction score glow */
.scorebox .gauge,
.gauge{
  box-shadow:
    0 0 14px #16eaff,
    0 0 28px rgba(22,234,255,.75),
    inset 0 0 18px rgba(0,255,255,.22) !important;
}

.scorebox .gauge b,
#score{
  color:white !important;
  text-shadow:
    0 0 8px #16eaff,
    0 0 18px #16eaff,
    0 0 28px rgba(33,255,66,.85) !important;
}

/* sentiment and market gauges cyan glow */
.semi,
.smallgauge,
.compare .smallgauge{
  box-shadow:
    0 0 16px #16eaff,
    0 0 32px rgba(22,234,255,.72),
    inset 0 0 20px rgba(0,255,255,.18) !important;
}

#sentiment,
.sentiment,
#fear,
#similarity{
  text-shadow:
    0 0 8px #16eaff,
    0 0 18px #16eaff,
    0 0 30px rgba(33,255,66,.75) !important;
}

/* make charts transparent */
canvas,
.chartbox canvas,
.predictionbox canvas,
#mainChart,
#miniChart,
#predictionChart,
#sentChart{
  background:transparent !important;
}

/* slightly reduce heavy panel fill overlays */
.panel:before{
  background:linear-gradient(
    120deg,
    rgba(0,255,255,.05),
    transparent 35%,
    rgba(0,255,120,.03)
  ) !important;
}


/* ===== PREMIUM GLASS POLISH ===== */

/* reduce cyan wash, keep background visible */
#bg{
  opacity:.88 !important;
  filter:brightness(1.18) contrast(1.18) saturate(1.55) !important;
}

/* premium thin glass panels */
.panel,
.pricebox,
.scorebox,
.chartbox,
.predictionbox,
.status,
.compare,
.indicators,
.marketbox,
.newsbox,
.alertbox{
  background:rgba(0,5,12,0.035) !important;
  border:1px solid rgba(60,235,255,.32) !important;
  backdrop-filter:blur(1.5px) saturate(180%) !important;
  -webkit-backdrop-filter:blur(1.5px) saturate(180%) !important;
  box-shadow:
    inset 0 0 8px rgba(0,220,255,.035),
    0 0 7px rgba(0,160,255,.11) !important;
}

/* soften panel breathing */
.panel{
  animation:premiumPanelBreath 8s infinite ease-in-out !important;
}

@keyframes premiumPanelBreath{
  0%,100%{
    box-shadow:
      inset 0 0 8px rgba(0,220,255,.035),
      0 0 7px rgba(0,160,255,.11);
  }
  50%{
    box-shadow:
      inset 0 0 13px rgba(0,220,255,.055),
      0 0 12px rgba(0,180,255,.16);
  }
}

/* softer reflections */
.panel:after,
.pricebox:after,
.scorebox:after,
.chartbox:after,
.predictionbox:after{
  opacity:.42 !important;
  animation:glassSweep 11s linear infinite !important;
}

/* better readability without opaque boxes */
h2,
small,
.row span,
.row b,
.news,
.v11summary{
  text-shadow:
    0 0 4px rgba(0,0,0,.95),
    0 0 8px rgba(0,0,0,.85),
    0 0 10px rgba(0,220,255,.25);
}

/* premium number glow */
.price,
#price,
.chartprice,
#chartPrice{
  color:#28ff48 !important;
  text-shadow:
    0 0 6px rgba(0,0,0,.95),
    0 0 10px #16eaff,
    0 0 22px rgba(33,255,66,.72) !important;
}

/* gauge style uniform */
.gauge,
.scorebox .gauge,
.semi,
.smallgauge,
.compare .smallgauge{
  box-shadow:
    0 0 10px rgba(22,234,255,.75),
    0 0 22px rgba(22,234,255,.36),
    inset 0 0 18px rgba(0,255,255,.13) !important;
}

/* chart transparency and cleaner glow */
canvas,
#mainChart,
#miniChart,
#predictionChart,
#sentChart{
  background:transparent !important;
  filter:drop-shadow(0 0 3px rgba(33,255,66,.35)) !important;
}

/* reduce heavy overlays */
.panel:before{
  background:linear-gradient(
    120deg,
    rgba(0,255,255,.025),
    transparent 38%,
    rgba(0,255,120,.018)
  ) !important;
}

/* top bars more premium */
.topbar,
.v9statusbar,
.v8ticker{
  background:rgba(0,5,12,.34) !important;
  border-color:rgba(40,220,255,.35) !important;
  backdrop-filter:blur(3px) !important;
}

/* taskbar-safe bottom spacing */
.grid{
  height:calc(100vh - 330px) !important;
}

.bottom{
  height:195px !important;
  padding-bottom:22px !important;
}

/* slightly more breathing room */
.grid{
  gap:12px !important;
}

.bottom{
  gap:12px !important;
}

/* sharpen live badges */
.live{
  box-shadow:0 0 10px rgba(33,255,66,.65);
  border:1px solid rgba(33,255,66,.45);
}

/* voice orb cleaner */
.v11voice,
.v9voice{
  box-shadow:
    0 0 18px rgba(22,234,255,.85),
    0 0 38px rgba(22,234,255,.35) !important;
}


/* ===== CHART REALISM PATCH ===== */

.chartbox,
.predictionbox{
  overflow:hidden;
}

.chartbox:before,
.predictionbox:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(0,255,255,.03),transparent 35%),
    radial-gradient(circle at 78% 18%,rgba(33,255,66,.12),transparent 18%);
  z-index:0;
}

.chartbox canvas,
.predictionbox canvas{
  position:relative;
  z-index:2;
  background:transparent !important;
}

.volbars i{
  opacity:.72;
  border-radius:2px 2px 0 0;
  box-shadow:0 0 5px rgba(33,255,66,.35);
}

.pricePulseDot{
  position:absolute;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#21ff42;
  box-shadow:0 0 14px #21ff42,0 0 28px #16eaff;
  z-index:4;
  pointer-events:none;
  animation:lastDotPulse 1.4s infinite ease-in-out;
}

@keyframes lastDotPulse{
  0%,100%{transform:scale(.75);opacity:.75}
  50%{transform:scale(1.35);opacity:1}
}


/* ===== JARVIS XRP V12 PREMIUM VISUAL OVERHAUL ===== */

/* cinematic background */
#bg{
  opacity:1 !important;
  filter:brightness(1.38) contrast(1.28) saturate(1.9) !important;
}

/* ultra glass panels */
.panel,
.pricebox,
.scorebox,
.chartbox,
.predictionbox,
.status,
.compare,
.indicators,
.marketbox,
.newsbox,
.alertbox{
  background:rgba(0,5,12,0.035) !important;
  border:1px solid rgba(80,240,255,.34) !important;
  backdrop-filter:blur(2px) saturate(210%) !important;
  -webkit-backdrop-filter:blur(2px) saturate(210%) !important;
  box-shadow:
    0 0 12px rgba(0,255,255,.18),
    0 10px 30px rgba(0,0,0,.35),
    inset 0 1px rgba(255,255,255,.08),
    inset 0 0 14px rgba(0,220,255,.055) !important;
}

/* floating glass sweep */
.panel::after,
.pricebox::after,
.scorebox::after,
.chartbox::after,
.predictionbox::after{
  content:"";
  position:absolute;
  top:-80%;
  left:-80%;
  width:70%;
  height:260%;
  background:linear-gradient(
    120deg,
    transparent 20%,
    rgba(255,255,255,.06) 42%,
    rgba(0,255,255,.22) 50%,
    rgba(255,255,255,.06) 58%,
    transparent 80%
  );
  transform:rotate(18deg);
  animation:v12GlassSweep 10s linear infinite;
  pointer-events:none;
  z-index:2;
}

@keyframes v12GlassSweep{
  0%{left:-90%;opacity:0}
  25%{opacity:.75}
  70%{opacity:.35}
  100%{left:140%;opacity:0}
}

/* live price holographic pulse */
.price,
#price,
.chartprice,
#chartPrice{
  color:#38ff5c !important;
  text-shadow:
    0 0 7px #38ff5c,
    0 0 16px #38ff5c,
    0 0 32px #16eaff,
    0 0 55px rgba(0,255,255,.55) !important;
  animation:v12PriceGlow 2s ease-in-out infinite;
}

@keyframes v12PriceGlow{
  0%,100%{filter:brightness(1);transform:scale(1)}
  50%{filter:brightness(1.35);transform:scale(1.025)}
}

/* LED gauge glow */
.gauge,
.scorebox .gauge,
.semi,
.smallgauge,
.compare .smallgauge{
  filter:
    drop-shadow(0 0 10px rgba(0,255,255,.85))
    drop-shadow(0 0 24px rgba(0,255,255,.55)) !important;
}

/* sentiment glow */
#sentiment,
.sentiment,
#score,
#fear,
#similarity{
  text-shadow:
    0 0 8px #16eaff,
    0 0 18px #16eaff,
    0 0 30px rgba(33,255,66,.8) !important;
}

/* screen edge glow */
body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:20;
  box-shadow:
    inset 0 0 110px rgba(0,255,255,.08),
    inset 0 0 230px rgba(0,255,255,.045);
}

/* clean charts */
canvas,
#mainChart,
#miniChart,
#predictionChart,
#sentChart{
  background:transparent !important;
  filter:drop-shadow(0 0 4px rgba(33,255,66,.45)) !important;
}

/* premium header transparency */
.topbar,
.v9statusbar,
.v8ticker{
  background:rgba(0,5,12,.28) !important;
  backdrop-filter:blur(4px) saturate(180%) !important;
  border-color:rgba(60,235,255,.32) !important;
}

/* sharper text over transparent glass */
h2,
small,
.row span,
.row b,
.news,
.v11summary{
  text-shadow:
    0 0 4px rgba(0,0,0,.95),
    0 0 8px rgba(0,0,0,.88),
    0 0 12px rgba(0,220,255,.28);
}

/* less cluttered panel motion */
.panel{
  animation:v12PanelFloat 7s infinite ease-in-out !important;
}

@keyframes v12PanelFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-1px)}
}

/* V12 badge */
.v10badge{
  background:rgba(0,5,12,.12) !important;
  border-color:rgba(0,255,255,.5) !important;
  box-shadow:0 0 18px rgba(0,255,255,.35) !important;
}


/* ===== V12 REALISM POLISH ===== */

/* reduce blue wash, make it more realistic */
#bg{
  opacity:.82 !important;
  filter:brightness(1.08) contrast(1.18) saturate(1.55) !important;
}

/* more believable glass: transparent but with depth */
.panel,
.pricebox,
.scorebox,
.chartbox,
.predictionbox,
.status,
.compare,
.indicators{
  background:rgba(0,8,18,.075) !important;
  border:1px solid rgba(90,230,255,.26) !important;
  backdrop-filter:blur(3px) saturate(170%) !important;
  -webkit-backdrop-filter:blur(3px) saturate(170%) !important;
  box-shadow:
    0 12px 28px rgba(0,0,0,.34),
    0 0 8px rgba(0,200,255,.12),
    inset 0 1px rgba(255,255,255,.075),
    inset 0 0 12px rgba(0,210,255,.045) !important;
}

/* less cartoon glow */
.price,
#price,
.chartprice,
#chartPrice{
  text-shadow:
    0 0 5px rgba(0,0,0,.9),
    0 0 10px rgba(33,255,66,.75),
    0 0 18px rgba(22,234,255,.55) !important;
}

/* cleaner chart glass */
.chartbox canvas,
.predictionbox canvas{
  filter:drop-shadow(0 0 2px rgba(0,255,180,.35)) !important;
}

/* realistic scanning reflection */
.panel::after,
.pricebox::after,
.scorebox::after,
.chartbox::after,
.predictionbox::after{
  opacity:.22 !important;
  animation:v12GlassSweep 14s linear infinite !important;
}

/* dim over-bright ticker/status bars */
.topbar,
.v9statusbar,
.v8ticker{
  background:rgba(0,6,14,.42) !important;
  box-shadow:0 6px 18px rgba(0,0,0,.25);
}

/* screen depth vignette */
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:19;
  background:radial-gradient(circle at center, transparent 58%, rgba(0,0,0,.32) 100%);
}

/* last price line */
.chartbox .realPriceLine{
  position:absolute;
  left:70px;
  right:18px;
  height:1px;
  background:linear-gradient(90deg,transparent,#21ff42,transparent);
  opacity:.75;
  z-index:4;
  box-shadow:0 0 10px #21ff42;
  pointer-events:none;
}

/* candlestick illusion layer */
.fakeCandles{
  position:absolute;
  left:70px;
  right:18px;
  bottom:55px;
  height:70px;
  z-index:3;
  display:flex;
  align-items:end;
  gap:4px;
  pointer-events:none;
  opacity:.72;
}

.fakeCandles i{
  flex:1;
  max-width:7px;
  min-width:3px;
  border-radius:1px;
  box-shadow:0 0 6px currentColor;
}


/* ===== OBVIOUS CHART REALISM UPGRADE ===== */

.chartbox{
  background:rgba(0,0,0,.18) !important;
}

.fakeCandles{
  position:absolute !important;
  left:70px !important;
  right:18px !important;
  bottom:45px !important;
  height:115px !important;
  z-index:9 !important;
  display:flex !important;
  align-items:flex-end !important;
  gap:5px !important;
  pointer-events:none !important;
  opacity:1 !important;
}

.fakeCandles i{
  flex:1;
  max-width:9px;
  min-width:4px;
  border-radius:2px;
  box-shadow:0 0 9px currentColor;
}

.realPriceLine{
  position:absolute !important;
  left:68px !important;
  right:18px !important;
  height:2px !important;
  background:linear-gradient(90deg,transparent,#21ff42,#16eaff,transparent) !important;
  opacity:1 !important;
  z-index:10 !important;
  box-shadow:0 0 16px #21ff42,0 0 28px #16eaff !important;
  pointer-events:none !important;
}

.realPriceLine::after{
  content:"LIVE PRICE";
  position:absolute;
  right:8px;
  top:-18px;
  color:#21ff42;
  font-size:10px;
  text-shadow:0 0 10px #21ff42;
}

#mainChart{
  opacity:1 !important;
}

/* ===== V13 MULTI-PAGE ANALYTICS ===== */

nav a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#061320;
  color:#fff;
  border:1px solid #0874b5;
  border-radius:5px;
  padding:10px 16px;
  font-weight:800;
  text-decoration:none;
  font-size:12px;
  letter-spacing:.4px;
  transition:.2s ease;
}

nav a:hover,
nav a.active{
  color:#03101d;
  background:linear-gradient(90deg,#16eaff,#21ff42);
  border-color:#21ff42;
  box-shadow:0 0 18px rgba(22,234,255,.45);
}

.detail-page{
  min-height:100vh;
  overflow:auto;
}

.detail-topbar{
  position:sticky;
  top:0;
  z-index:50;
}

.analytics-shell{
  position:relative;
  z-index:2;
  width:min(1800px,calc(100% - 32px));
  margin:0 auto;
  padding:24px 0 48px;
}

.page-title{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  padding:18px 4px 24px;
}

.page-title h1{
  margin:4px 0 8px;
  color:#effaff;
  font-size:clamp(30px,4vw,58px);
  letter-spacing:-1.5px;
  text-shadow:0 0 24px rgba(22,234,255,.35);
}

.page-title p{
  max-width:780px;
  margin:0;
  color:#9fc3d8;
  font-size:14px;
}

.page-title small{
  color:#16eaff;
  letter-spacing:2.5px;
  font-weight:900;
}

.snapshot-strip{
  display:grid;
  grid-template-columns:repeat(2,minmax(130px,1fr));
  gap:8px;
  min-width:420px;
}

.snapshot-strip span{
  padding:10px 12px;
  color:#789db4;
  background:rgba(4,15,28,.82);
  border:1px solid #17405d;
  border-radius:7px;
  font-size:10px;
  letter-spacing:1px;
}

.snapshot-strip b{
  display:block;
  margin-top:4px;
  color:#21ff42;
  font-size:14px;
  letter-spacing:0;
}

.analytics-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:14px;
}

.analytics-card{
  min-height:300px;
  padding:16px;
}

.span-3{grid-column:span 3}
.span-4{grid-column:span 4}
.span-6{grid-column:span 6}
.span-8{grid-column:span 8}
.span-12{grid-column:span 12}

.card-title{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:12px;
}

.card-title h2{
  margin:0 0 4px;
  font-size:15px;
  color:#effaff;
  letter-spacing:.7px;
}

.card-title small{
  color:#789db4;
}

.card-title>b{
  color:#21ff42;
  font-size:11px;
  text-align:right;
}

.chart-stage{
  position:relative;
  height:235px;
}

.chart-stage.tall{
  height:340px;
}

.chart-stage canvas{
  width:100%!important;
  height:100%!important;
  opacity:1!important;
}

.metric-stack{
  display:flex;
  flex-direction:column;
  gap:7px;
}

.hero-metric{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:130px;
  margin-bottom:8px;
  background:radial-gradient(circle,rgba(22,234,255,.15),transparent 68%);
  border:1px solid rgba(22,234,255,.22);
  border-radius:8px;
}

.hero-metric small{color:#789db4;letter-spacing:1.5px}
.hero-metric b{font-size:34px;color:#21ff42;text-shadow:0 0 15px rgba(33,255,66,.5)}
.hero-metric span{color:#16eaff;font-size:11px;font-weight:900}

.step-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}

.engine-step{
  min-height:150px;
  padding:13px;
  border:1px solid #17405d;
  border-radius:8px;
  background:rgba(3,16,29,.8);
}

.engine-step small{display:block;color:#789db4;letter-spacing:1.5px}
.engine-step b{display:block;margin:6px 0;color:#effaff}
.engine-step span{display:inline-block;padding:4px 7px;border:1px solid #21ff42;border-radius:4px;color:#21ff42;font-size:10px;font-weight:900}
.engine-step p{color:#9fc3d8;font-size:11px;line-height:1.45}

.evidence-gate{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-bottom:14px;
  padding:20px 24px;
  min-height:110px;
}

.evidence-gate h2{margin:5px 0;color:#effaff}
.evidence-gate p{margin:0;color:#9fc3d8}
.gate-badge{padding:12px 18px;border:1px solid #ffe000;border-radius:6px;color:#ffe000;font-weight:900;letter-spacing:1px}
.evidence-gate[data-state="COMPLETE"] .gate-badge{color:#21ff42;border-color:#21ff42}
.evidence-gate[data-state="ACTIVE"] .gate-badge{color:#21ff42;border-color:#21ff42;box-shadow:0 0 18px rgba(33,255,66,.2)}
.evidence-gate[data-state="STALE"] .gate-badge{color:#ffe000;border-color:#ffe000}
.evidence-gate[data-state="ERROR"] .gate-badge{color:#ff4b4b;border-color:#ff4b4b}

.coverage-stage{height:150px;margin-bottom:10px}

.empty-chart{
  position:absolute;
  left:24px;
  right:24px;
  top:48%;
  color:#789db4;
  text-align:center;
  pointer-events:none;
}

.research-list{
  margin:5px 0 0;
  padding-left:20px;
  color:#b8d2e2;
  line-height:1.8;
  font-size:13px;
}

.research-list li::marker{color:#16eaff}
.research-list.compact{columns:2;column-gap:40px}

.research-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:18px;
}

.analytics-grid.two{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.agent-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(235px,1fr));
  gap:12px;
}

.agent-card{
  padding:14px;
  border:1px solid #17405d;
  border-radius:7px;
  background:linear-gradient(145deg,rgba(4,23,39,.88),rgba(2,12,23,.94));
}

.agent-card h3{
  min-height:42px;
  margin:6px 0 10px;
  color:#effaff;
  font-size:15px;
}

.agent-card small{color:#16eaff;letter-spacing:1.5px}
.agent-card .row{font-size:11px}
.agent-card.probe-good{border-color:rgba(33,255,66,.42)}
.agent-card.probe-bad{border-color:rgba(255,75,75,.72);box-shadow:inset 0 0 22px rgba(255,75,75,.08)}
.agent-card.probe-bad small{color:#ff4b4b}

.news-controls{display:flex;align-items:end;gap:14px;margin-bottom:14px;flex-wrap:wrap}
.news-controls label{display:grid;gap:6px;color:#789db4;font-size:10px;letter-spacing:1.3px}
.news-controls input,.news-controls select{min-width:220px;padding:10px 12px;border:1px solid #17405d;border-radius:5px;background:#03101d;color:#effaff}
.news-controls button{padding:10px 16px;border:1px solid #16eaff;border-radius:5px;background:rgba(22,234,255,.08);color:#16eaff;font-weight:900;cursor:pointer}
.news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:13px}
.news-card{padding:16px;border:1px solid #17405d;border-radius:7px;background:linear-gradient(145deg,rgba(4,23,39,.88),rgba(2,12,23,.94))}
.news-card small{color:#16eaff;letter-spacing:1px}
.news-card h3{margin:9px 0 7px;font-size:16px;line-height:1.35}
.news-card h3 a{color:#effaff;text-decoration:none}
.news-card h3 a:hover{color:#21ff42}
.news-card p{color:#9fc3d8;font-size:12px;line-height:1.55;margin:10px 0 0}
.news-meta{color:#ffe000;font-size:11px}
.news-card .news-original{display:block;margin-top:10px;color:#9fc3d8;font-style:italic;letter-spacing:0}

.method-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:6px 0 14px;
}

.method-grid>div{
  padding:13px;
  border:1px solid #17405d;
  border-radius:7px;
  background:rgba(3,16,29,.72);
}

.method-grid b{color:#16eaff}
.method-grid p{margin:6px 0 0;color:#9fc3d8;font-size:12px;line-height:1.5}

@media(max-width:1200px){
  .detail-topbar{height:auto;min-height:70px;flex-wrap:wrap;padding:10px 18px}
  .detail-topbar .sys{margin-left:0}
  .page-title{align-items:flex-start;flex-direction:column}
  .snapshot-strip{width:100%;min-width:0}
  .span-3,.span-4,.span-6,.span-8{grid-column:span 6}
  .step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:720px){
  nav{width:100%;overflow:auto;margin-left:0}
  nav a{white-space:nowrap;padding:8px 11px}
  .analytics-shell{width:min(100% - 18px,1800px);padding-top:10px}
  .snapshot-strip{grid-template-columns:1fr}
  .analytics-grid{grid-template-columns:1fr}
  .span-3,.span-4,.span-6,.span-8,.span-12{grid-column:1}
  .step-grid,.method-grid{grid-template-columns:1fr}
  .research-grid,.analytics-grid.two{grid-template-columns:1fr}
  .research-list.compact{columns:1}
}

.jarvis-speaking-section{
  outline:2px solid #16eaff!important;
  outline-offset:3px;
  box-shadow:0 0 28px rgba(22,234,255,.42)!important;
}

.jarvis-voice-menu{
  position:fixed;
  z-index:99999;
  width:260px;
  padding:12px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  border:1px solid #16eaff;
  border-radius:7px;
  background:rgba(2,12,23,.97);
  box-shadow:0 0 30px rgba(22,234,255,.4);
  color:#effaff;
}

.jarvis-voice-menu b,.jarvis-voice-menu small{grid-column:1/-1;overflow-wrap:anywhere}
.jarvis-voice-menu b{color:#16eaff;font-size:12px}
.jarvis-voice-menu small{color:#9fc3d8;letter-spacing:1px}
.jarvis-voice-menu button{padding:8px;border-color:#16eaff;color:#effaff;cursor:pointer}

.jarvis-wake-button{
  min-width:118px;
  padding:8px 11px;
  border:1px solid #789db4;
  border-radius:5px;
  background:rgba(4,16,29,.9);
  color:#9fc3d8;
  font-size:10px;
  letter-spacing:1px;
  cursor:pointer;
}
.jarvis-wake-button[data-state="ON"]{
  border-color:#21ff42;
  color:#21ff42;
  box-shadow:0 0 16px rgba(33,255,66,.32);
}
.jarvis-wake-button[data-state="ERROR"]{border-color:#ff4b4b;color:#ff4b4b}
.jarvis-wake-button:disabled{opacity:.55;cursor:not-allowed}

.fundamentals-window{
  box-sizing:border-box;
  width:min(100% - 24px,1920px);
  margin:0 auto 14px;
  padding:20px;
  overflow:visible;
}
.fundamentals-head{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.fundamentals-head h2{margin:4px 0 0;font-size:21px}
.fundamentals-head>div:last-child{text-align:right;display:grid;gap:4px;color:#21ff42}
.fundamentals-grid{display:grid;grid-template-columns:repeat(4,minmax(190px,1fr));gap:12px;margin:17px 0 12px}
.fundamentals-grid>div{padding:16px;border:1px solid #17405d;border-radius:7px;background:rgba(3,16,29,.78)}
.fundamentals-grid small{display:block;color:#789db4;letter-spacing:1.2px;font-size:10px}
.fundamentals-grid b{display:block;margin-top:7px;color:#effaff;font-size:clamp(20px,1.8vw,29px);overflow-wrap:anywhere}
.fundamentals-source{color:#789db4;letter-spacing:1px}
@media(max-width:1100px){.fundamentals-grid{grid-template-columns:repeat(2,minmax(190px,1fr))}}
@media(max-width:600px){.fundamentals-grid{grid-template-columns:1fr}.fundamentals-window{width:min(100% - 16px,1920px)}}

.candle-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:12px 0 4px}
.candle-timeframes{display:flex;gap:6px}
.candle-timeframes button{padding:7px 12px;border:1px solid #17405d;background:#03101d;color:#9fc3d8;border-radius:4px;cursor:pointer}
.candle-timeframes button.active{border-color:#16eaff;color:#16eaff;background:rgba(22,234,255,.09)}
.candle-ohlc{display:flex;gap:14px;flex-wrap:wrap;color:#789db4;font-size:11px}
.candle-ohlc b{color:#effaff;margin-left:3px}
@media(max-width:720px){.candle-ohlc{gap:8px;font-size:10px}.candle-timeframes{overflow-x:auto;max-width:100%}}

.live-verification-window,.xrpl-observatory{box-sizing:border-box;width:min(100% - 24px,1920px);margin:0 auto 14px;padding:20px;overflow:visible}
.verification-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:12px;margin:16px 0}
.verification-grid>div{padding:14px;border:1px solid #17405d;border-radius:7px;background:rgba(3,16,29,.78)}
.verification-grid small{display:block;color:#789db4;letter-spacing:1px}.verification-grid b{display:block;margin-top:6px;color:#21ff42;font-size:18px;overflow-wrap:anywhere}
.dashboard-draggable{transform:translate(var(--drag-x,0),var(--drag-y,0));transition:box-shadow .15s;touch-action:auto}
.dashboard-draggable h2,.dashboard-draggable .fundamentals-head{cursor:grab;user-select:none}.dashboard-draggable.is-dragging{z-index:500;position:relative;box-shadow:0 0 35px rgba(22,234,255,.55);transition:none}.dashboard-draggable.is-dragging h2{cursor:grabbing}
.layout-reset{position:fixed;right:16px;bottom:48px;z-index:9000;padding:9px 13px;border:1px solid #16eaff;border-radius:5px;background:rgba(3,16,29,.94);color:#16eaff;cursor:pointer;font-size:10px;letter-spacing:1px}
@media(max-width:1000px){.verification-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}}
@media(max-width:600px){.verification-grid{grid-template-columns:1fr}.live-verification-window,.xrpl-observatory{width:min(100% - 16px,1920px)}}

/* V13.11 dashboard-wide readability and responsive workspace pass */
html,body{
  min-height:100%;
  height:auto;
  overflow-x:hidden;
  overflow-y:auto;
}

.topbar{
  box-sizing:border-box;
  width:100%;
  height:auto;
  min-height:78px;
  padding:10px 18px;
  flex-wrap:wrap;
  position:relative;
}

.topbar nav,.topbar .navlinks{
  flex:1 1 680px;
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:7px;
  min-width:0;
  margin:0;
}

.topbar nav a,.topbar .navlinks a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px 11px;
  white-space:normal;
  text-align:center;
  line-height:1.2;
}

.topbar .sys{margin-left:auto;white-space:nowrap}

.grid{
  box-sizing:border-box;
  width:min(100% - 24px,1920px);
  height:auto!important;
  min-height:0!important;
  margin:0 auto;
  padding:14px 0;
  grid-template-columns:minmax(270px,.85fr) minmax(520px,1.8fr) minmax(250px,.8fr) minmax(250px,.8fr);
  align-items:start;
}

.left,.center,.right1,.right2{min-height:0;height:auto}
.grid .panel{height:auto!important;min-height:150px;overflow:visible;padding:16px}
.grid .chartbox{min-height:500px}
.grid .predictionbox{min-height:360px}
.grid .chartbox canvas{height:370px!important}
.grid .predictionbox canvas{height:300px!important}
.grid .pricebox canvas{height:100px!important}
.grid .right1 canvas{height:100px!important}

.bottom,.v7grid,.v11grid{
  box-sizing:border-box;
  width:min(100% - 24px,1920px);
  height:auto!important;
  min-height:0!important;
  margin:0 auto 14px;
  gap:12px;
}

.bottom{grid-template-columns:repeat(5,minmax(210px,1fr));padding:0}
.bottom .panel,.v7grid .panel,.v11grid .panel{height:auto!important;min-height:175px;overflow:visible;padding:16px}

.panel h2,.card-title h2{line-height:1.25;overflow-wrap:anywhere}
.panel p,.panel li,.panel .row,.panel small{line-height:1.55}
.row{gap:14px;align-items:flex-start}
.row span,.row b{overflow-wrap:anywhere}

.analytics-shell{
  box-sizing:border-box;
  width:min(100% - 28px,1920px);
  margin:0 auto;
  padding-bottom:42px;
}

.analytics-card{min-height:340px;padding:20px}
.card-title{align-items:flex-start;flex-wrap:wrap;gap:12px}
.card-title h2{font-size:20px}
.card-title small{font-size:13px;line-height:1.5}
.chart-stage{height:320px}
.chart-stage.tall{height:430px}
.candlestick-window{min-height:700px}
.chart-stage.candlestick-stage{height:610px}

.hero-metrics,.snapshot-strip{flex-wrap:wrap}
.hero-metric{min-width:150px;padding:16px}
.hero-metric b{font-size:clamp(26px,2.2vw,38px)}

.agent-grid{grid-template-columns:repeat(auto-fit,minmax(275px,1fr));gap:16px}
.agent-card{padding:18px}
.agent-card h3{font-size:16px;min-height:0}
.agent-card .row,.research-list,.news-card p{font-size:13px}
.research-list.compact{columns:1}
.news-grid{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:16px}
.news-card{padding:20px}
.news-card h3{font-size:18px}

footer{box-sizing:border-box;width:100%;height:auto;min-height:36px;overflow:auto}

@media(max-width:1450px){
  .grid{grid-template-columns:minmax(270px,.9fr) minmax(500px,1.6fr) minmax(270px,.9fr)}
  .right2{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(240px,1fr))}
  .bottom{grid-template-columns:repeat(3,minmax(220px,1fr))}
}

@media(max-width:1050px){
  .grid{grid-template-columns:1fr 1.5fr}
  .right1,.right2{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(240px,1fr))}
  .bottom{grid-template-columns:repeat(2,minmax(220px,1fr))}
  .chart-stage.candlestick-stage{height:520px}
}

@media(max-width:720px){
  .topbar nav,.topbar .navlinks{flex:1 1 100%;justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}
  .topbar nav a,.topbar .navlinks a{min-width:max-content}
  .grid{width:min(100% - 16px,1920px);grid-template-columns:1fr}
  .right1,.right2{grid-column:auto;display:flex}
  .bottom{width:min(100% - 16px,1920px);grid-template-columns:1fr}
  .analytics-shell{width:min(100% - 16px,1920px)}
  .analytics-card{padding:14px}
  .candlestick-window{min-height:570px}
  .chart-stage.candlestick-stage{height:470px}
  .news-grid,.agent-grid{grid-template-columns:1fr}
  .news-controls label,.news-controls input,.news-controls select{width:100%;min-width:0}
}

/* NOVI AI 14: compact range overlay and evidence-led dashboard windows */
.predictionbox .overlay{
  left:12px;
  right:auto;
  top:auto;
  bottom:12px;
  width:75px;
  padding:5px;
  border-radius:5px;
  line-height:1.15;
}
.predictionbox .overlay small{margin-top:4px;font-size:6px;letter-spacing:.35px}
.predictionbox .overlay b{font-size:8px;overflow-wrap:anywhere}

.forecast-window,.wallet-window{
  box-sizing:border-box;
  width:min(100% - 24px,1920px);
  margin:0 auto 14px;
  padding:20px;
  overflow:visible;
}
.forecast-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(220px,1fr));
  gap:12px;
  margin:17px 0 12px;
}
.forecast-card{
  min-height:190px;
  padding:16px;
  border:1px solid #17405d;
  border-radius:8px;
  background:linear-gradient(145deg,rgba(3,16,29,.90),rgba(5,27,46,.68));
}
.forecast-card.up{border-color:rgba(33,255,66,.48)}
.forecast-card.down{border-color:rgba(255,75,75,.55)}
.forecast-card.neutral{border-color:rgba(255,224,0,.48)}
.forecast-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.forecast-heading h3{margin:0;color:#effaff;font-size:17px}
.forecast-arrow{font-size:31px;font-weight:900;line-height:1}
.forecast-card.up .forecast-arrow{color:#21ff42}
.forecast-card.down .forecast-arrow{color:#ff4b4b}
.forecast-card.neutral .forecast-arrow{color:#ffe000}
.forecast-card .row{padding:5px 0;border-bottom:1px solid rgba(120,157,180,.13)}
.forecast-card .row:last-of-type{border-bottom:0}
.evidence-mix{display:flex;gap:5px;margin-top:12px;font-size:9px;letter-spacing:.6px}
.evidence-mix span{flex:1;padding:5px 3px;border-radius:3px;text-align:center;background:rgba(22,234,255,.08);color:#9fc3d8}
.panel-explainer{margin:10px 0 0;color:#9fc3d8;font-size:12px;line-height:1.55}

.wallet-table-wrap{overflow:auto;margin:17px 0 12px;border:1px solid #17405d;border-radius:7px}
.wallet-table{width:100%;min-width:1380px;border-collapse:collapse;background:rgba(3,16,29,.78)}
.wallet-table th,.wallet-table td{padding:11px 12px;text-align:left;border-bottom:1px solid rgba(120,157,180,.14);white-space:nowrap}
.wallet-table th{position:sticky;top:0;z-index:1;background:#071828;color:#16eaff;font-size:10px;letter-spacing:1px}
.wallet-table td{font-size:12px;color:#d8edf8}
.wallet-table td:nth-child(1){color:#ffe000;font-weight:800}
.wallet-table td:nth-child(n+2){text-align:right;font-variant-numeric:tabular-nums}
.wallet-label small{display:block;color:#789db4;margin-top:3px}
.wallet-estimated td{background:rgba(255,224,0,.035)}
.wallet-estimated td:first-child{color:#ffe96b}
.fundamentals-source a{color:#16eaff}

@media(max-width:1150px){.forecast-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}}
@media(max-width:620px){
  .forecast-grid{grid-template-columns:1fr}
  .forecast-window,.wallet-window{width:min(100% - 16px,1920px);padding:14px}
}

@supports(content-visibility:auto){
  .bottom,.live-verification-window,.fundamentals-window,.forecast-window,.wallet-window,.v7grid{
    content-visibility:auto;
    contain-intrinsic-size:1px 360px;
  }
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* Decision-first information architecture: act, verify, then investigate. */
.executive-brief{grid-template-columns:1.05fr 1.45fr .9fr .95fr;align-items:stretch;margin-top:14px}
.executive-brief .panel{min-height:168px;background:linear-gradient(145deg,rgba(4,29,42,.94),rgba(2,11,21,.92))!important}
.executive-brief .decision{border-color:rgba(33,255,66,.64)!important;box-shadow:inset 0 0 24px rgba(33,255,66,.09),0 0 18px rgba(33,255,66,.14)!important}
.executive-brief .decisionMain{font-size:clamp(28px,2.5vw,42px);line-height:1.05;margin:5px 0}.executive-brief .decisionScore{font-size:18px}.executive-brief #signalReasons{font-size:13px;line-height:1.55;color:#d6edf5}.executive-brief .row{padding:4px 0;font-size:11px}
.trust-layer{box-sizing:border-box;width:min(100% - 24px,1920px);margin:0 auto 14px;border-color:rgba(22,234,255,.38)!important}.trust-layer .panel-head{display:flex;justify-content:space-between;gap:12px}.trust-layer .panel-head>span{color:#9fe8ff;font-size:11px;font-weight:800}.trust-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.trust-grid>div{border:1px solid rgba(70,220,250,.14);border-radius:7px;padding:9px;background:rgba(255,255,255,.025)}.trust-grid small{color:#82b5c3;font-size:9px;font-weight:800}.trust-grid p{margin:5px 0 0;color:#d8edf8;font-size:11px;line-height:1.45}@media(max-width:900px){.trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.trust-layer{width:min(100% - 16px,1920px)}.trust-grid{grid-template-columns:1fr}}
.alert-inbox{box-sizing:border-box;width:min(100% - 24px,1920px);margin:0 auto 14px}.alert-inbox .panel-head{display:flex;justify-content:space-between}.alert-inbox .panel-head>span{color:#ffdf93;font-size:11px;font-weight:800}.alert-row{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid rgba(120,157,180,.15);font-size:12px}.alert-row b{min-width:48px}.alert-row span{display:grid;gap:2px;color:#cce8f2}.alert-row.high b{color:#ff7188}.alert-row.medium b{color:#ffdf93}.alert-row.info b{color:#9fe8ff}
.low-conviction-badge{display:inline-block;margin-left:6px;padding:3px 6px;border:1px solid #ffe000;border-radius:999px;color:#ffe98b;font-size:9px;letter-spacing:.06em}.low-conviction-mode .executive-brief .decision{border-color:#ffe000!important}.low-conviction-mode .predictionbox,.low-conviction-mode .right1,.low-conviction-mode .bottom{opacity:.76}.low-conviction-mode .right2 .whale-panel{opacity:1}
.right2 .whale-panel{order:-1;border-color:rgba(72,229,156,.32)!important}.right2 .whale-panel+.status{order:1}.right2>div:first-child{order:2}
.daily-self-brief{border-color:rgba(125,255,155,.34)!important;background:linear-gradient(145deg,rgba(5,34,38,.84),rgba(3,15,31,.88))!important}.daily-brief-facts{grid-template-columns:repeat(3,minmax(0,1fr));margin:12px 0}.daily-brief-facts>div{padding:9px;border:1px solid rgba(125,255,155,.16);border-radius:7px;background:rgba(255,255,255,.025)}.daily-brief-facts small,.daily-brief-facts b{display:block}.daily-brief-facts b{margin-top:4px;color:#eafff2}.daily-brief-detail{margin-top:10px}.daily-brief-detail article{padding:4px}.daily-brief-detail p{margin:6px 0;color:#c6e6ef}
.steward-chat{display:grid;gap:7px;margin-top:12px}.steward-chat label{font-size:11px;color:#9fe8ff;font-weight:800}.steward-chat textarea{width:100%;resize:vertical;background:#071828;color:#eafff2;border:1px solid #17405d;border-radius:6px;padding:8px}.steward-chat button{width:max-content}.steward-chat p{white-space:pre-wrap;line-height:1.5;color:#d8edf8}
@media(max-width:1050px){.executive-brief{grid-template-columns:repeat(2,minmax(250px,1fr))}}
@media(max-width:720px){.executive-brief{width:min(100% - 16px,1920px);grid-template-columns:1fr}.executive-brief .panel{min-height:0}.daily-brief-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* NOVI AI 14.4: full-panel responsive real-time candlestick workspace */
.candlestick-window{
  display:flex;
  flex-direction:column;
  min-height:clamp(650px,82vh,920px)!important;
  background:linear-gradient(145deg,rgba(2,12,22,.94),rgba(4,22,37,.90))!important;
  border-color:rgba(22,234,255,.42)!important;
  box-shadow:inset 0 0 45px rgba(22,234,255,.035),0 0 24px rgba(0,0,0,.24);
}
.candlestick-window>.card-title{flex:0 0 auto}
.candlestick-window .candle-toolbar{flex:0 0 auto;margin:10px 0 8px}
.chart-stage.candlestick-stage{
  position:relative;
  flex:1 1 auto;
  width:100%;
  min-height:500px;
  height:clamp(520px,68vh,780px)!important;
  padding:8px 6px 3px 4px;
  border:1px solid rgba(120,157,180,.20);
  border-radius:7px;
  background:
    linear-gradient(rgba(22,234,255,.018),rgba(22,234,255,.008)),
    rgba(1,9,17,.76);
  overflow:hidden;
}
.chart-stage.candlestick-stage canvas{width:100%!important;height:100%!important}
.candle-live-state{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;color:#16eaff;font-size:10px;letter-spacing:.8px}
.candle-live-state strong{padding:5px 8px;border:1px solid rgba(22,234,255,.34);border-radius:4px;color:#effaff;background:rgba(22,234,255,.06)}
.candle-live-state>span:not(.live-pulse){color:#789db4}
.live-pulse{width:8px;height:8px;border-radius:50%;background:#21ff42;box-shadow:0 0 10px #21ff42;animation:candle-live-pulse 1.6s ease-in-out infinite}
@keyframes candle-live-pulse{50%{opacity:.35;transform:scale(.72)}}
.candle-timeframes button{min-width:46px;font-weight:800;touch-action:manipulation}
.candle-timeframes button:hover{border-color:#16eaff;color:#effaff}
.candle-ohlc{padding:7px 10px;border:1px solid rgba(120,157,180,.18);border-radius:5px;background:rgba(1,9,17,.58);font-variant-numeric:tabular-nums}
.candle-ohlc em{color:#21ff42;font-style:normal;font-weight:900}
.candle-ohlc em.down{color:#ff4b4b}

@media(max-width:720px){
  .candlestick-window{min-height:520px!important;padding:10px!important}
  .candlestick-window .card-title h2{font-size:16px}
  .candlestick-window .card-title small{font-size:10px;line-height:1.3}
  .candle-live-state{justify-content:flex-start;font-size:8px}
  .candlestick-window .candle-toolbar{gap:7px;margin:7px 0}
  .candle-timeframes{width:100%;gap:4px;scrollbar-width:thin}
  .candle-timeframes button{flex:1 0 44px;padding:6px 8px;font-size:10px}
  .candle-ohlc{width:100%;justify-content:space-between;gap:5px;padding:5px 7px;font-size:8px}
  .chart-stage.candlestick-stage{min-height:330px;height:clamp(330px,66vh,470px)!important;padding:3px 2px 1px}
}

@media(max-height:420px) and (orientation:landscape){
  .candlestick-window{min-height:470px!important}
  .chart-stage.candlestick-stage{min-height:300px;height:300px!important}
}

/* NOVI AI smooth-motion profile: preserve canvas movement without costly live blur recomposition */
#bg{will-change:contents;transform:translateZ(0);backface-visibility:hidden}
@media(max-width:720px){
  .panel,.analytics-card,.forecast-card,.snapshot-strip span,.wallet-table-wrap,.topbar{
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .panel,.analytics-card{animation:none!important}
  .panel::before,.panel::after,.analytics-card::before,.analytics-card::after{animation:none!important}
}

/* NOVI AI 14.5: professional candle context and touch focus mode */
.candle-live-state b.delayed{color:#ffb347}
.candle-live-state.delayed .live-pulse{background:#ffb347;box-shadow:0 0 10px #ffb347}
.candle-market-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(120px,1fr)) auto;
  gap:7px;
  margin:0 0 8px;
}
.candle-market-summary span{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:9px;
  min-width:0;
  padding:7px 9px;
  border:1px solid rgba(120,157,180,.18);
  border-radius:4px;
  background:rgba(1,9,17,.58);
  color:#789db4;
  font-size:9px;
  letter-spacing:.55px;
}
.candle-market-summary b{color:#effaff;font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}
.candle-market-summary b.down{color:#ff4b4b}
#candleWindowMove:not(.down){color:#21ff42}
#candleCountdown{color:#16eaff}
#candleFocusButton{
  min-height:38px;
  padding:7px 13px;
  border:1px solid #16eaff;
  border-radius:4px;
  background:rgba(22,234,255,.08);
  color:#16eaff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.7px;
  cursor:pointer;
  touch-action:manipulation;
}
#candleFocusButton[aria-pressed="true"]{border-color:#ffe000;color:#ffe000;background:rgba(255,224,0,.10)}
body.chart-focus-open{overflow:hidden!important}
body.chart-focus-open .analytics-shell{position:relative;z-index:100001!important}
body.chart-focus-open .detail-topbar{visibility:hidden;pointer-events:none}
.candlestick-window.chart-focus-mode{
  position:fixed!important;
  inset:0!important;
  z-index:100000!important;
  width:100vw!important;
  height:100vh!important;
  min-height:100vh!important;
  margin:0!important;
  padding:12px!important;
  border-radius:0!important;
  background:#020c16!important;
  overflow:hidden!important;
}
.candlestick-window.chart-focus-mode .chart-stage.candlestick-stage{
  min-height:0!important;
  height:auto!important;
  flex:1 1 0!important;
}

@media(max-width:720px){
  .candle-market-summary{grid-template-columns:repeat(2,minmax(0,1fr)) auto;gap:4px}
  .candle-market-summary span{padding:5px 6px;font-size:7px}
  .candle-market-summary b{font-size:9px}
  #candleFocusButton{grid-column:3;grid-row:1/3;min-width:62px;min-height:100%;padding:5px;font-size:8px}
}

@media(max-height:420px) and (orientation:landscape){
  .candlestick-window.chart-focus-mode{padding:6px!important}
  .candlestick-window.chart-focus-mode .card-title small{display:none}
  .candlestick-window.chart-focus-mode .card-title h2{font-size:13px}
  .candlestick-window.chart-focus-mode .candle-live-state{font-size:7px}
  .candlestick-window.chart-focus-mode .candle-toolbar{margin:3px 0;gap:3px}
  .candlestick-window.chart-focus-mode .candle-timeframes button{min-width:38px;min-height:28px;padding:3px 5px}
  .candlestick-window.chart-focus-mode .candle-ohlc{padding:3px 5px}
  .candlestick-window.chart-focus-mode .candle-market-summary{margin-bottom:3px}
  .candlestick-window.chart-focus-mode .candle-market-summary span{padding:3px 5px}
}

/* NOVI AI 14.9: validated-ledger whale sonar */
.whale-panel{
  overflow:hidden;
  isolation:isolate;
  background:linear-gradient(145deg,rgba(2,13,24,.97),rgba(4,23,39,.94))!important;
  box-shadow:inset 0 0 35px rgba(22,234,255,.035),0 8px 26px rgba(0,0,0,.26)!important;
}
.whale-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.whale-panel-head h2{margin:0}
.whale-live-dot{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:#16eaff;
  font-size:8px;
  font-weight:900;
  letter-spacing:.8px;
}
.whale-live-dot::before{
  content:"";
  width:6px;
  height:6px;
  border-radius:50%;
  background:#21ff42;
  box-shadow:0 0 8px rgba(33,255,66,.8);
}
.whale-radar{
  --whale-accent:#16eaff;
  --whale-border:rgba(22,234,255,.36);
  --whale-glow:rgba(22,234,255,.12);
  position:relative;
  height:126px;
  margin:9px 0 10px;
  overflow:hidden;
  border:1px solid var(--whale-border);
  border-radius:7px;
  background:
    linear-gradient(90deg,rgba(22,234,255,.035) 1px,transparent 1px),
    linear-gradient(rgba(22,234,255,.035) 1px,transparent 1px),
    radial-gradient(circle at 52% 52%,var(--whale-glow),transparent 64%),
    rgba(1,10,19,.72);
  background-size:22px 22px,22px 22px,auto,auto;
  transition:border-color .35s ease,background-color .35s ease;
}
.whale-radar[data-activity="active"]{--whale-accent:#ffe000;--whale-border:rgba(255,224,0,.40);--whale-glow:rgba(255,224,0,.12)}
.whale-radar[data-activity="high"]{--whale-accent:#ff7a45;--whale-border:rgba(255,122,69,.46);--whale-glow:rgba(255,122,69,.14)}
.whale-radar[data-activity="unavailable"]{--whale-accent:#789db4;--whale-border:rgba(120,157,180,.28);--whale-glow:rgba(120,157,180,.08)}
.whale-radar svg{display:block;width:100%;height:104px;color:var(--whale-accent)}
.whale-radar>span{
  position:absolute;
  right:8px;
  bottom:6px;
  color:var(--whale-accent);
  font-size:7px;
  font-weight:800;
  letter-spacing:.8px;
}
.whale-sonar circle{
  fill:none;
  stroke:currentColor;
  stroke-width:1;
  opacity:.12;
  transform-box:fill-box;
  transform-origin:center;
}
.whale-radar[data-activity="active"] .whale-sonar circle,
.whale-radar[data-activity="high"] .whale-sonar circle{animation:whale-sonar-pulse 2.8s ease-out infinite}
.whale-sonar circle:nth-child(2){animation-delay:.45s!important}
.whale-sonar circle:nth-child(3){animation-delay:.9s!important}
.whale-figure{animation:whale-float 5.8s ease-in-out infinite;transform-origin:center}
.whale-body,.whale-tail,.whale-dorsal{fill:url(#whaleBodyGradient);stroke:#7eb2bf;stroke-width:1.05}
.whale-tail{transform-box:fill-box;transform-origin:right center;animation:whale-tail 2.9s ease-in-out infinite}
.whale-belly{fill:url(#whaleBellyGradient);opacity:.86}
.whale-flipper{fill:#2b6171;stroke:#8ab7c0;stroke-width:1;opacity:.92}
.whale-dorsal{opacity:.88}
.whale-eye{fill:#01080d;stroke:#d8edf2;stroke-width:.8}
.whale-blowhole{fill:#07151c;stroke:#9fcbd4;stroke-width:.6}
.whale-mouth,.whale-jaw{fill:none;stroke:#173642;stroke-width:1.5;stroke-linecap:round}
.whale-spout{fill:none;stroke:#a8dce5;stroke-width:1.5;stroke-linecap:round}
.whale-spout{stroke:currentColor;opacity:.82;stroke-dasharray:4 3;animation:whale-spout 2.7s linear infinite}
.whale-texture{fill:#b9d7dc;opacity:.24}
.whale-grooves path{fill:none;stroke:#aacbd2;stroke-width:.75;stroke-linecap:round;opacity:.42}
.whale-bubbles{fill:currentColor;opacity:.55;animation:whale-bubbles 3.4s ease-in-out infinite}
.whale-scan-line{fill:none;stroke:currentColor;stroke-width:1;stroke-dasharray:24 150;opacity:.45;animation:whale-scan 3.2s linear infinite}
.whale-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-bottom:8px}
.whale-metrics>div{min-width:0;padding:6px 7px;border:1px solid rgba(120,157,180,.14);border-radius:4px;background:rgba(1,9,17,.50)}
.whale-metrics span,.whale-metrics b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.whale-metrics span{color:#789db4;font-size:7px;letter-spacing:.55px}
.whale-metrics b{margin-top:3px;color:#effaff;font-size:10px;font-variant-numeric:tabular-nums}
.whale-insight{min-height:30px;margin:5px 0 8px;color:#9fc3d8;font-size:9px;line-height:1.45}
.whale-events{display:grid;gap:5px;margin:7px 0 9px}
.whale-event{border-left:2px solid #48e59c;padding:5px 7px;background:rgba(35,126,84,.11);font-size:8px;line-height:1.4;color:#a8f4ca}
.whale-event.stale{border-color:#ff5964;background:rgba(146,35,48,.13);color:#ffadb2}
.whale-event b{display:block;font-size:9px;color:inherit}.whale-event small{display:block;color:inherit;opacity:.88;margin-top:2px;overflow-wrap:anywhere}

@keyframes whale-sonar-pulse{0%{opacity:.55;transform:scale(.72)}100%{opacity:0;transform:scale(1.12)}}
@keyframes whale-float{50%{transform:translate3d(0,-3px,0)}}
@keyframes whale-tail{50%{transform:rotate(-7deg) scaleX(.94)}}
@keyframes whale-spout{to{stroke-dashoffset:-28}}
@keyframes whale-bubbles{50%{transform:translate3d(0,-5px,0);opacity:.85}}
@keyframes whale-scan{to{stroke-dashoffset:-174}}

@media(max-width:720px){
  .whale-radar{height:104px;margin:7px 0}
  .whale-radar svg{height:90px}
  .whale-metrics>div{padding:5px 6px}
  .whale-insight{min-height:0}
}

@media(prefers-reduced-motion:reduce){
  .whale-sonar circle,.whale-figure,.whale-tail,.whale-spout,.whale-bubbles,.whale-scan-line{animation:none!important}
}

/* NOVI AI 14.10: lightweight live-data instrument emblems */
.instrument-title{display:flex!important;align-items:center;gap:13px;min-width:0;text-align:left!important}
.instrument-title>div:last-child{min-width:0}
.panel-instrument{
  position:relative;
  flex:0 0 88px;
  width:88px;
  height:62px;
  overflow:hidden;
  border:1px solid rgba(22,234,255,.27);
  border-radius:7px;
  background:linear-gradient(145deg,rgba(5,31,48,.88),rgba(1,11,20,.92));
  color:#16eaff;
  box-shadow:inset 0 0 18px rgba(22,234,255,.055);
}
.panel-instrument svg{display:block;width:88px;height:56px;overflow:visible}
.panel-instrument>span{
  position:absolute;
  left:0;
  right:0;
  bottom:2px;
  overflow:hidden;
  color:#9fc3d8;
  font-size:6.5px;
  font-weight:900;
  letter-spacing:.45px;
  line-height:1;
  text-align:center;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.panel-instrument[data-state="ready"]{color:#21ff42;border-color:rgba(33,255,66,.35)}
.panel-instrument[data-state="degraded"],.panel-instrument[data-state="unavailable"]{color:#ff7a45;border-color:rgba(255,122,69,.38)}

.verification-instrument .instrument-grid{fill:none;stroke:currentColor;stroke-width:.55;opacity:.12}
.verification-instrument .shield{fill:rgba(22,234,255,.08);stroke:currentColor;stroke-width:1.7}
.verification-instrument .check{fill:none;stroke:currentColor;stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:42;animation:instrument-check 3.6s ease-in-out infinite}
.verification-instrument .circuit{fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;opacity:.7}

.market-instrument .orbit{fill:none;stroke:currentColor;stroke-width:1;stroke-dasharray:5 4;opacity:.48;animation:instrument-orbit 8s linear infinite}
.market-instrument .orbit-b{animation-direction:reverse;animation-duration:6s}
.market-instrument .planet{fill:rgba(22,234,255,.10);stroke:currentColor;stroke-width:1.2}
.market-instrument .xrp-mark{fill:none;stroke:#effaff;stroke-width:2.1;stroke-linecap:round}
.market-instrument .satellite{fill:#ffe000;animation:instrument-satellite 2.6s ease-in-out infinite}

.forecast-instrument .axis{fill:none;stroke:#789db4;stroke-width:1}
.forecast-instrument .fan-low,.forecast-instrument .fan-mid,.forecast-instrument .fan-high{fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round}
.forecast-instrument .fan-low,.forecast-instrument .fan-high{stroke-dasharray:3 3;opacity:.65}
.forecast-instrument .fan-fill{fill:rgba(22,234,255,.09);stroke:none;animation:instrument-fan 3.8s ease-in-out infinite}
.forecast-instrument .origin{fill:#effaff}
.forecast-instrument[data-direction="up"]{color:#21ff42;border-color:rgba(33,255,66,.34)}
.forecast-instrument[data-direction="down"]{color:#ff4b4b;border-color:rgba(255,75,75,.38)}

.wallet-instrument{flex-basis:118px;width:118px;height:74px;color:#16eaff}
.wallet-instrument svg{width:118px;height:66px}
.wallet-lid{transform-box:fill-box;transform-origin:center bottom;animation:wallet-open-close 6.4s ease-in-out infinite}
.wallet-lid>path:first-child{fill:#183f54;stroke:#6fb6ca;stroke-width:1.2}
.wallet-lid-seam{fill:none;stroke:#9fc3d8;stroke-width:.8;stroke-dasharray:3 2;opacity:.65}
.wallet-body{fill:#0d293a;stroke:#6fb6ca;stroke-width:1.5}
.wallet-pocket{fill:#153d51;stroke:#27708a;stroke-width:1}
.wallet-stitch{fill:none;stroke:#9fc3d8;stroke-width:.65;stroke-dasharray:2.5 2.5;opacity:.58}
.wallet-clasp rect{fill:#205d75;stroke:#8cd6e4;stroke-width:1}
.wallet-clasp circle{fill:#ffe000;stroke:#fff1a2;stroke-width:.7}
.wallet-token{transform-box:fill-box;transform-origin:center;opacity:0;animation:wallet-token-flow 6.4s ease-in-out infinite}
.wallet-token circle{fill:#d99c00;stroke:#fff0a0;stroke-width:1.1}
.wallet-token text{fill:#fff8d5;font:900 8px Arial,sans-serif;text-anchor:middle}
.wallet-token.token-a{--token-x:-9px;--token-y:-24px;animation-delay:.08s}
.wallet-token.token-b{--token-x:0px;--token-y:-31px;animation-delay:.22s}
.wallet-token.token-c{--token-x:10px;--token-y:-23px;animation-delay:.36s}
.wallet-visual-disclosure{display:block;margin:0 0 7px;color:#ffe000;font-size:8px;letter-spacing:.75px}

@keyframes instrument-check{0%,20%{stroke-dashoffset:42;opacity:.35}45%,100%{stroke-dashoffset:0;opacity:1}}
@keyframes instrument-orbit{to{stroke-dashoffset:-54}}
@keyframes instrument-satellite{50%{opacity:.4;transform:scale(.72);transform-origin:center}}
@keyframes instrument-fan{50%{opacity:.42}}
@keyframes wallet-open-close{
  0%,12%,88%,100%{transform:translateY(12px) scaleY(.18);opacity:.55}
  26%,72%{transform:translateY(0) scaleY(1);opacity:1}
}
@keyframes wallet-token-flow{
  0%,24%,82%,100%{transform:translate(0,0) scale(.72);opacity:0}
  38%,62%{transform:translate(var(--token-x),var(--token-y)) scale(1);opacity:1}
  72%{transform:translate(0,-6px) scale(.86);opacity:.65}
}

@media(max-width:720px){
  .instrument-title{gap:8px}
  .panel-instrument{flex-basis:72px;width:72px;height:52px}
  .panel-instrument svg{width:72px;height:47px}
  .panel-instrument>span{font-size:5.7px}
  .instrument-title h2{font-size:15px!important}
  .instrument-title small{font-size:7px}
  .wallet-instrument{flex-basis:92px;width:92px;height:60px}
  .wallet-instrument svg{width:92px;height:53px}
}

@media(prefers-reduced-motion:reduce){
  .verification-instrument .check,.market-instrument .orbit,.market-instrument .satellite,.forecast-instrument .fan-fill,.wallet-lid,.wallet-token{animation:none!important}
  .wallet-lid{transform:none;opacity:1}.wallet-token{opacity:.75;transform:translateY(-15px)}
}

/* Keep animated background visual-only so it never blocks UI clicks */
#bg{pointer-events:none !important;}

.decision-pill{display:inline-block;padding:2px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.28);font-weight:900;letter-spacing:.06em}
.decision-buy{color:#21ff42;text-shadow:0 0 14px rgba(33,255,66,.9);border-color:rgba(33,255,66,.45)}
.decision-hold{color:#ffe000;text-shadow:0 0 14px rgba(255,224,0,.85);border-color:rgba(255,224,0,.45)}
.decision-sell{color:#ff4b4b;text-shadow:0 0 14px rgba(255,75,75,.92);border-color:rgba(255,75,75,.58)}
@keyframes decisionRedFlash{0%,100%{box-shadow:0 0 0 rgba(255,75,75,0);filter:brightness(1)}50%{box-shadow:0 0 24px rgba(255,75,75,.95);filter:brightness(1.32)}}
.decision-flash-red{animation:decisionRedFlash .6s infinite}
@keyframes decisionYellowFlash{0%,100%{box-shadow:0 0 0 rgba(255,224,0,0);filter:brightness(1)}50%{box-shadow:0 0 24px rgba(255,224,0,.9);filter:brightness(1.28)}}
@keyframes decisionGreenFlash{0%,100%{box-shadow:0 0 0 rgba(33,255,66,0);filter:brightness(1)}50%{box-shadow:0 0 24px rgba(33,255,66,.9);filter:brightness(1.28)}}
.decision-flash-yellow{animation:decisionYellowFlash 1.3s infinite}
.decision-flash-green{animation:decisionGreenFlash .85s infinite}
.v8ticker,.topbar,.v9statusbar,.panel{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.v8ticker{contain:layout paint;isolation:isolate;overflow:hidden}.v8ticker .ticker-track{transform:translate3d(0,0,0);backface-visibility:hidden;animation-duration:48s;animation-timing-function:linear}.v8ticker:hover .ticker-track{animation-play-state:paused}@media (prefers-reduced-motion:no-preference){.panel:before,.panel:after,.orb,.v9voice{animation:none!important}}.koko-chat{position:fixed;right:18px;bottom:18px;z-index:9999;width:min(390px,calc(100vw - 36px));padding:14px;background:#07121f;border:1px solid #16eaff;border-radius:12px;color:#eaffff}.koko-chat-log{max-height:260px;overflow:auto;margin:10px 0}.koko-chat-log p{padding:8px;margin:6px 0;background:#10273a;border-radius:7px}.koko-chat form{display:flex;gap:6px}.koko-chat form input{flex:1;min-width:0;padding:9px;background:#06101c;color:#fff;border:1px solid #2a688c}.koko-chat-toggle{position:fixed;right:18px;bottom:18px;z-index:9998}
.tier-preview{display:flex;align-items:center;gap:8px;padding:7px 14px;background:#071421;border-bottom:1px solid #164d6e;color:#bfeaff;font-size:11px}.tier-preview button{padding:4px 8px;border:1px solid #2d7195;background:#0a2132;color:#bfeaff;cursor:pointer}.tier-preview button.active{background:#16eaff;color:#031019}.tier-preview span{margin-left:auto;color:#16eaff}.tier-locked{opacity:.38;filter:grayscale(1);pointer-events:none}

/* Data-led motion: one pulse after a verified live refresh, never a continuous distraction. */
.live-refresh{animation:noviLiveRefresh .72s ease-out}.sys:has(+ .metric) {text-shadow:0 0 9px rgba(33,255,66,.42)}@keyframes noviLiveRefresh{0%{box-shadow:inset 0 0 18px rgba(22,234,255,.52),0 0 24px rgba(22,234,255,.48)}100%{box-shadow:inset 0 0 18px rgba(0,170,255,.12),0 0 14px rgba(0,120,255,.28)}}.novi-workspace{animation:noviWorkspaceIn .24s ease-out}@keyframes noviWorkspaceIn{from{opacity:.01;transform:translateY(7px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.live-refresh,.novi-workspace{animation:none!important}}
.price-tick-up{animation:noviPriceUp .7s ease-out}.price-tick-down{animation:noviPriceDown .7s ease-out}@keyframes noviPriceUp{0%{color:#fff;transform:scale(1.025);text-shadow:0 0 25px #21ff42}100%{transform:none}}@keyframes noviPriceDown{0%{color:#fff;transform:scale(1.025);text-shadow:0 0 25px #ff4b4b}100%{transform:none}}@media(prefers-reduced-motion:reduce){.price-tick-up,.price-tick-down{animation:none!important}}
.fresh-data{color:#16eaff!important;text-shadow:0 0 8px rgba(22,234,255,.45)}.aging-data{color:#ffe000!important}.stale-data{color:#ff4b4b!important;animation:noviStalePulse 1.5s ease-in-out infinite}@keyframes noviStalePulse{50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.stale-data{animation:none!important}}
.orderbook-window{max-width:980px;margin:14px auto}.orderbook-bars{display:grid;grid-template-columns:1fr 1fr;gap:12px}.orderbook-bars>div{display:grid;gap:6px}.orderbook-bars i{display:block;height:12px;border-radius:8px;background:#21ff42;transition:width .45s ease}.orderbook-bars>div:nth-child(2) i{background:#ff4b4b}.orderbook-readout{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;color:#9fc3d8;font-size:12px}.orderbook-readout b{color:#effaff}.orderbook-window p{color:#789db4;font-size:11px}@media(prefers-reduced-motion:reduce){.orderbook-bars i{transition:none!important}}
.whale-timeline-window{max-width:980px;margin:14px auto}.whale-timeline{height:92px;display:flex;align-items:end;gap:3px;padding:8px;border:1px solid #17405d;background:rgba(3,16,29,.6)}.whale-timeline i{flex:1;min-width:3px;background:linear-gradient(#ffe000,#ff7b3d);box-shadow:0 0 7px rgba(255,224,0,.35)}.whale-timeline-window p{color:#789db4;font-size:11px}

/* Professional motion system: short, intentional, and data-adjacent. */
.workspace-tabs button{position:relative;transition:color .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease}.workspace-tabs button.active:after{content:"";position:absolute;left:12%;right:12%;bottom:-5px;height:2px;border-radius:2px;background:#16eaff;box-shadow:0 0 10px rgba(22,234,255,.8);animation:noviTabLine .24s ease-out}.workspace-tabs button:active{transform:scale(.97)}@keyframes noviTabLine{from{transform:scaleX(.15);opacity:.2}to{transform:scaleX(1);opacity:1}}.novi-workspace:not([hidden]){transform-origin:50% 0;animation:noviWorkspaceIn .28s cubic-bezier(.2,.8,.2,1)}@media(hover:hover){.panel{transition:transform .18s ease,box-shadow .18s ease}.panel:hover{transform:translateY(-2px);box-shadow:inset 0 0 20px rgba(22,234,255,.15),0 10px 24px rgba(0,104,182,.2)}}@media(prefers-reduced-motion:reduce){.workspace-tabs button,.panel{transition:none!important}.workspace-tabs button.active:after,.novi-workspace:not([hidden]){animation:none!important}}
.topbar nav .koko-tab{flex:0 0 auto;padding:6px 8px;border:1px solid #16eaff;background:#061a2b;color:#16eaff;font-size:9px;font-weight:900;letter-spacing:.6px;cursor:pointer}.topbar nav label.koko-tab{display:flex;gap:4px;align-items:center;color:#bfeaff;border-color:#285879}.topbar nav .koko-tab b{color:#21ff42}

/* Keep the rule-based range values out of the chart drawing area. */
.predictionbox .prediction-content{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(150px,190px);
  align-items:stretch;
  gap:14px;
  min-height:235px;
}
.predictionbox .prediction-content #predictionChart{
  min-width:0;
  height:235px!important;
}
.predictionbox .prediction-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.predictionbox .prediction-head h2{margin-bottom:3px}
.prediction-live{flex:0 0 auto;padding:5px 7px;border:1px solid rgba(22,234,255,.25);border-radius:5px;background:rgba(3,16,29,.6);text-align:right}
.prediction-live small,.prediction-live b{display:block}.prediction-live small{font-size:7px;letter-spacing:.65px}.prediction-live b{margin-top:3px;color:#dff9ff;font-size:11px}
.predictionbox .overlay{
  position:static;
  display:grid;
  align-content:center;
  gap:7px;
  width:auto;
  margin:0;
  padding:14px 12px;
  text-align:left;
  line-height:1.2;
}
.predictionbox .prediction-metric{padding:8px;border-left:2px solid rgba(22,234,255,.65);border-radius:3px;background:rgba(7,25,42,.62)}
.predictionbox .prediction-metric:nth-child(2){border-color:rgba(33,255,66,.65)}
.predictionbox .prediction-metric:nth-child(3){border-color:rgba(7,137,255,.75)}
.predictionbox .overlay small{display:block;margin:0;font-size:8px;letter-spacing:.7px}
.predictionbox .overlay b{
  display:block;
  margin-top:4px;
  font-size:15px;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.prediction-readout{margin:10px 0 4px;color:#c5e6ff;font-size:11px;line-height:1.45}
.prediction-disclaimer{display:block;color:#8fb4c9;font-size:8px;line-height:1.4}
.prediction-scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.scenario{padding:7px 8px;border:1px solid rgba(22,234,255,.22);border-radius:5px;background:rgba(5,21,36,.62)}
.scenario small,.scenario b,.scenario span{display:block}.scenario small{font-size:7px;letter-spacing:.65px}.scenario b{margin:4px 0;color:#e9fbff;font-size:13px}.scenario span{color:#8fb4c9;font-size:8px}.scenario.bearish{border-top-color:rgba(255,75,75,.7)}.scenario.base{border-top-color:rgba(22,234,255,.7)}.scenario.bullish{border-top-color:rgba(33,255,66,.7)}
.prediction-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px}.prediction-calibration{margin:0;color:#9fc3d8;font-size:9px;line-height:1.35}.prediction-alerts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.prediction-alerts button{padding:5px 7px;font-size:8px;border-color:rgba(22,234,255,.4);color:#bfeaff}.prediction-alerts button.active{background:#16eaff;color:#031019;box-shadow:none}.prediction-alerts span{width:100%;color:#8fb4c9;font-size:8px;text-align:right}
.prediction-invalidation{margin-top:9px;padding:8px 10px;border-left:2px solid #ffe000;border-radius:4px;background:rgba(72,57,5,.2)}.prediction-invalidation small,.prediction-invalidation b{display:block}.prediction-invalidation small{color:#ffe98b;font-size:8px;letter-spacing:.7px}.prediction-invalidation b{margin-top:4px;color:#f5f7d5;font-size:10px;line-height:1.4}
.prediction-explain{margin-top:9px;border:1px solid rgba(22,234,255,.2);border-radius:5px;background:rgba(3,16,29,.46)}.prediction-explain summary{padding:8px 10px;cursor:pointer;color:#bfeaff;font-size:9px;font-weight:900;letter-spacing:.6px}.prediction-explain summary span{margin-left:7px;color:#7fa7ba;font-size:8px;font-weight:400;letter-spacing:0}.prediction-explain[open] summary{border-bottom:1px solid rgba(22,234,255,.16)}.prediction-explain-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:9px 10px 2px}.prediction-explain-grid div{min-width:0}.prediction-explain-grid small,.prediction-explain-grid b{display:block}.prediction-explain-grid small{color:#86abc0;font-size:7px;letter-spacing:.45px}.prediction-explain-grid b{margin-top:3px;color:#e9fbff;font-size:10px;overflow-wrap:anywhere}.prediction-reasons{margin:6px 10px 10px;padding-left:16px;color:#b9d7e4;font-size:9px;line-height:1.45}.prediction-reasons li+li{margin-top:3px}

/* Decision-first grouping keeps conclusion, supporting evidence, and monitoring distinct. */
.dashboard-window{box-sizing:border-box;width:min(100% - 24px,1920px);margin:0 auto 14px}.dashboard-window .v7grid{width:100%;margin:0;padding:0}.window-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:14px 2px 8px;padding:0 2px}.window-heading small{color:#16eaff;font-size:9px;font-weight:900;letter-spacing:1px}.window-heading h2{margin:3px 0 0;color:#eaffff;font-size:16px}.window-heading p{max-width:440px;margin:0;color:#8fb4c9;font-size:10px;line-height:1.4;text-align:right}.decision-window .v7grid{height:auto;min-height:150px}.evidence-window .trust-layer,.monitor-window .alert-inbox{width:100%;margin-bottom:10px}.review-window{padding:12px 14px}.review-window .panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.review-window .panel-head h2{margin-bottom:0}.review-window button{padding:6px 9px;font-size:9px}.review-window p{margin:8px 0 4px;color:#d6edf5;font-size:12px;line-height:1.45}.review-window>small{color:#8fb4c9;font-size:9px}
@media(max-width:720px){.dashboard-window{width:min(100% - 16px,1920px)}.window-heading{align-items:flex-start;flex-direction:column;gap:4px}.window-heading p{text-align:left}.review-window .panel-head{flex-wrap:wrap}}

/* Investor lenses: a guided path for context-first reading and a full professional workspace. */
.investor-lens{display:flex;align-items:center;gap:3px;margin-left:8px;padding:3px;border:1px solid rgba(22,234,255,.26);border-radius:6px;background:rgba(3,16,29,.7)}.investor-lens>span{padding:0 4px;color:#86abc0;font-size:8px;font-weight:900;letter-spacing:.6px}.investor-lens button{padding:5px 7px;border:0;background:transparent;color:#9fc3d8;font-size:8px}.investor-lens button.active{background:#16eaff;color:#031019;box-shadow:none}
#investorLensStatus{flex:0 0 auto;color:#ffe98b;font-size:9px;font-weight:900;letter-spacing:.7px}
.guided-investor-brief{display:none;margin:0 0 10px;padding:13px 15px;border-color:rgba(33,255,66,.45)!important}.guided-investor-brief>div:first-child small{color:#9fe8ff;font-size:8px;letter-spacing:.8px}.guided-investor-brief h2{margin:4px 0 10px}.guided-brief-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.guided-brief-grid>div{padding:10px;border:1px solid rgba(70,220,250,.15);border-radius:6px;background:rgba(255,255,255,.025)}.guided-brief-grid small,.guided-brief-grid b{display:block}.guided-brief-grid small{color:#86abc0;font-size:8px;letter-spacing:.55px}.guided-brief-grid b{margin:5px 0;color:#eaffff;font-size:16px;overflow-wrap:anywhere}.guided-brief-grid p{margin:0;color:#9fc3d8;font-size:9px;line-height:1.45}
.guided-lens .guided-investor-brief{display:block}.guided-lens .executive-brief .panel:nth-child(3),.guided-lens .executive-brief .panel:nth-child(4),.guided-lens .right2,.guided-lens .bottom,.guided-lens .forecast-window,.guided-lens .indicators,.guided-lens .compare{display:none}.guided-lens .grid{grid-template-columns:minmax(250px,.8fr) minmax(460px,1.6fr) minmax(240px,.7fr)}.guided-lens .decision-window .v7grid{grid-template-columns:1.15fr 1fr}.guided-lens .decision-window .v7grid .panel{min-height:155px}.professional-lens .guided-investor-brief{display:none}
.monitor-window{isolation:isolate}.review-tools-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:10px;align-items:start}.review-tools-grid>.panel{min-width:0;position:relative;z-index:0}.monitor-window>.venue-window{width:100%;box-sizing:border-box;margin-top:10px;position:relative;z-index:0;isolation:isolate}.review-tools-grid>.panel:hover{transform:none}.thesis-window,.scorecard-window{padding:13px 14px}.thesis-window .panel-head,.scorecard-window .panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.thesis-window .panel-head>span,.scorecard-window .panel-head>span{color:#9fe8ff;font-size:9px;font-weight:900}.thesis-window form{display:grid;grid-template-columns:110px 1fr 1fr 1fr auto;gap:7px;margin-top:8px}.thesis-window label{display:grid;gap:3px;color:#86abc0;font-size:8px;font-weight:900;letter-spacing:.5px}.thesis-window input,.thesis-window select{min-width:0;padding:7px;border:1px solid rgba(22,234,255,.28);border-radius:4px;background:#061320;color:#eaffff;font:inherit;font-size:10px}.thesis-window button{align-self:end;padding:7px 9px;font-size:9px}.thesis-window p,.scorecard-window p{margin:8px 0 0;color:#8fb4c9;font-size:9px;line-height:1.4}.scorecard-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:8px}.scorecard-metrics>div{padding:8px;border:1px solid rgba(22,234,255,.15);border-radius:5px;background:rgba(255,255,255,.025)}.scorecard-metrics small,.scorecard-metrics b{display:block}.scorecard-metrics small{color:#86abc0;font-size:7px;letter-spacing:.45px}.scorecard-metrics b{margin-top:4px;color:#eaffff;font-size:15px}
.venue-window{padding:13px 14px}.venue-window .panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.venue-window .panel-head>span{flex:0 1 auto;min-width:0;color:#9fe8ff;font-size:9px;font-weight:900;overflow-wrap:anywhere}.venue-rows{display:grid;gap:5px;margin-top:8px;min-width:0}.venue-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(64px,.7fr) minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:center;min-width:0;padding:8px;border:1px solid rgba(22,234,255,.14);border-radius:4px;background:rgba(255,255,255,.02);font-size:9px;overflow:hidden}.venue-row>*{min-width:0}.venue-name{color:#eaffff;overflow-wrap:anywhere}.venue-field{display:grid;gap:2px;min-width:0;color:#9fc3d8}.venue-field small{color:#7197ab;font-size:7px;font-weight:900;letter-spacing:.45px;line-height:1.1}.venue-field b{min-width:0;color:#eaffff;font-size:10px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.venue-row.live .venue-status b{color:#21ff42}.venue-row.unavailable .venue-status b{color:#ff7188}.venue-window p{max-width:100%;margin:8px 0 0;color:#8fb4c9;font-size:8px;line-height:1.4;overflow-wrap:anywhere}
.agent-committee-window{padding:13px 14px}.agent-committee-window .panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.agent-committee-window .panel-head>span{color:#ffe98b;font-size:9px;font-weight:900;letter-spacing:.6px}.committee-brief{margin-top:8px;padding:8px 9px;border-left:2px solid #16eaff;border-radius:4px;background:rgba(22,234,255,.06);color:#d9f3f8;font-size:10px;line-height:1.4}.agent-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:7px}.agent-rows article{padding:7px;border:1px solid rgba(22,234,255,.14);border-radius:4px;background:rgba(255,255,255,.02)}.agent-rows b,.agent-rows span{display:block}.agent-rows b{color:#9fe8ff;font-size:7px;letter-spacing:.55px}.agent-rows span{margin-top:4px;color:#c9e5ef;font-size:9px;line-height:1.35}.agent-committee-window p{margin:8px 0 0;color:#8fb4c9;font-size:8px;line-height:1.4}
.intelligence-desk-window{padding:13px 14px}.intelligence-desk-window .panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.intelligence-desk-window .panel-head>span{color:#a8f4ca;font-size:9px;font-weight:900;letter-spacing:.6px}.intelligence-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.intelligence-rows article{padding:8px;border:1px solid rgba(33,255,66,.15);border-radius:4px;background:rgba(33,255,66,.035)}.intelligence-rows b,.intelligence-rows span{display:block}.intelligence-rows b{color:#a8f4ca;font-size:7px;letter-spacing:.55px}.intelligence-rows span{margin-top:4px;color:#c9e5ef;font-size:9px;line-height:1.4;overflow-wrap:anywhere}.intelligence-desk-window p{margin:8px 0 0;color:#8fb4c9;font-size:8px;line-height:1.4}
.decision-lab-window{padding:13px 14px}.decision-lab-window .panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.decision-lab-window .panel-head>span{color:#ffe98b;font-size:9px;font-weight:900;letter-spacing:.6px}.decision-lab-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:8px}.decision-lab-grid article{padding:8px;border:1px solid rgba(255,224,0,.17);border-radius:4px;background:rgba(255,224,0,.035)}.decision-lab-grid b,.decision-lab-grid span{display:block}.decision-lab-grid b{color:#ffe98b;font-size:7px;letter-spacing:.55px}.decision-lab-grid span{margin-top:4px;color:#d9e8d5;font-size:9px;line-height:1.4;overflow-wrap:anywhere}.decision-lab-window p{margin:8px 0 0;color:#8fb4c9;font-size:8px;line-height:1.4}
.professional-desk-window{padding:13px 14px}.professional-desk-window .panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.professional-desk-window .panel-head>span{color:#ffb0e3;font-size:9px;font-weight:900;letter-spacing:.6px}.professional-desk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.professional-desk-grid article{padding:8px;border:1px solid rgba(255,112,207,.18);border-radius:4px;background:rgba(255,112,207,.035)}.professional-desk-grid b,.professional-desk-grid span{display:block}.professional-desk-grid b{color:#ffb0e3;font-size:7px;letter-spacing:.55px}.professional-desk-grid span{margin-top:4px;color:#e7d9e6;font-size:9px;line-height:1.4;overflow-wrap:anywhere}.professional-desk-window p{margin:8px 0 0;color:#8fb4c9;font-size:8px;line-height:1.4}
.superpro-desk-window{padding:13px 14px}.superpro-desk-window .panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.superpro-desk-window .panel-head>span{color:#aab7ff;font-size:9px;font-weight:900;letter-spacing:.6px}.superpro-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:8px}.superpro-grid article{padding:8px;border:1px solid rgba(127,145,255,.2);border-radius:4px;background:rgba(127,145,255,.04)}.superpro-grid b,.superpro-grid span{display:block}.superpro-grid b{color:#bfc8ff;font-size:7px;letter-spacing:.5px}.superpro-grid span{margin-top:4px;color:#dce2f9;font-size:9px;line-height:1.4;overflow-wrap:anywhere}.superpro-desk-window p{margin:8px 0 0;color:#8fb4c9;font-size:8px;line-height:1.4}
.paper-trade-window form{grid-template-columns:80px repeat(7,minmax(0,1fr)) auto}
.paper-trade-window{padding:13px 14px}.paper-trade-window .panel-head{display:flex;align-items:flex-start;justify-content:space-between}.paper-trade-window .panel-head>span{color:#ffe98b;font-size:9px;font-weight:900}.paper-trade-window form{display:grid;grid-template-columns:80px repeat(4,minmax(0,1fr)) auto;gap:7px;margin-top:8px}.paper-trade-window label{display:grid;gap:3px;color:#86abc0;font-size:8px;font-weight:900;letter-spacing:.5px}.paper-trade-window input,.paper-trade-window select{min-width:0;padding:7px;border:1px solid rgba(255,224,0,.28);border-radius:4px;background:#061320;color:#eaffff;font:inherit;font-size:10px}.paper-trade-window button{align-self:end;padding:7px 9px;font-size:9px}.paper-risk-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:9px}.paper-risk-metrics>div{padding:8px;border:1px solid rgba(255,224,0,.16);border-radius:5px;background:rgba(70,54,0,.11)}.paper-risk-metrics small,.paper-risk-metrics b{display:block}.paper-risk-metrics small{color:#d6c977;font-size:7px;letter-spacing:.45px}.paper-risk-metrics b{margin-top:4px;color:#fff4bd;font-size:14px}.paper-trade-window p{margin:8px 0 0;color:#8fb4c9;font-size:8px;line-height:1.4}
.paper-portfolio{margin-top:9px;padding:8px;border:1px solid rgba(255,224,0,.18);border-radius:5px;background:rgba(70,54,0,.08)}.paper-portfolio>small{color:#d6c977;font-size:7px;font-weight:900;letter-spacing:.6px}.paper-portfolio>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:6px}.paper-portfolio span{display:grid;gap:3px;color:#9fc3d8;font-size:7px}.paper-portfolio b{color:#fff4bd;font-size:11px;overflow-wrap:anywhere}
.paper-stress{display:flex!important;align-items:end;justify-content:space-between;margin-top:8px!important;padding-top:8px;border-top:1px solid rgba(255,224,0,.14)}.paper-stress label{display:grid;gap:3px;color:#d6c977;font-size:7px;font-weight:900;letter-spacing:.45px}.paper-stress select{padding:5px;border:1px solid rgba(255,224,0,.3);border-radius:4px;background:#061320;color:#fff4bd;font-size:10px}.paper-stress span{justify-items:end}.paper-stress b{font-size:14px}
.paper-budget{display:flex!important;align-items:end;justify-content:space-between;margin-top:8px!important;padding-top:8px;border-top:1px solid rgba(255,224,0,.14)}.paper-budget label{display:grid;gap:3px;color:#d6c977;font-size:7px;font-weight:900;letter-spacing:.45px}.paper-budget input{width:128px;padding:5px;border:1px solid rgba(255,224,0,.3);border-radius:4px;background:#061320;color:#fff4bd;font-size:10px}.paper-budget span{max-width:220px;color:#9fc3d8;font-size:8px;line-height:1.35;text-align:right}.paper-budget span.over-budget{color:#ff8594;font-weight:900}
.paper-plan-list{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,224,0,.14)}.paper-plan-list>small{color:#d6c977;font-size:7px;font-weight:900;letter-spacing:.5px}.paper-plan-list>div{display:grid;gap:4px;margin-top:6px}.paper-plan-row{display:grid;grid-template-columns:58px 1fr 1fr auto;gap:6px;align-items:center;padding:5px 0;border-bottom:1px solid rgba(255,224,0,.1);font-size:8px}.paper-plan-row b{color:#fff4bd}.paper-plan-row span{color:#9fc3d8}.paper-plan-row span:nth-child(3){text-align:right;color:#a8f4ca}.paper-plan-row span.negative{color:#ff8594}.paper-plan-row button{padding:4px 5px;border-color:rgba(255,224,0,.4);font-size:7px}
.decision-ledger-window{padding:13px 14px}.decision-ledger-window .panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.decision-ledger-window select{padding:6px;border:1px solid rgba(22,234,255,.3);border-radius:4px;background:#061320;color:#bfeaff;font-size:9px}.ledger-rows{display:grid;gap:4px;margin-top:8px}.ledger-row{display:grid;grid-template-columns:65px 1fr 1.5fr auto;gap:7px;align-items:center;padding:7px;border-bottom:1px solid rgba(22,234,255,.1);font-size:9px}.ledger-row b{font-size:7px;letter-spacing:.55px}.ledger-row.decision b{color:#9fe8ff}.ledger-row.thesis b{color:#ffe98b}.ledger-row.paper b{color:#a8f4ca}.ledger-row span{color:#c9e5ef;overflow-wrap:anywhere}.ledger-row span:nth-child(3),.ledger-row time{color:#8fb4c9}.ledger-row time{font-size:8px;text-align:right}.decision-ledger-window p{margin:8px 0 0;color:#8fb4c9;font-size:8px;line-height:1.4}
@media(max-width:1050px){.review-tools-grid{grid-template-columns:1fr}.thesis-window form,.paper-trade-window form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.thesis-window form,.paper-trade-window form,.scorecard-metrics,.paper-risk-metrics,.paper-portfolio>div,.agent-rows{grid-template-columns:1fr}.thesis-window button,.paper-trade-window button{justify-self:start}}
@media(max-width:1050px){.investor-lens{order:4;margin-left:0}.guided-brief-grid{grid-template-columns:1fr}.guided-lens .grid{grid-template-columns:1fr 1.4fr}.guided-lens .right1{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.investor-lens{flex:0 0 auto}.guided-lens .grid{grid-template-columns:1fr}.guided-lens .right1{grid-column:auto;display:flex}.guided-lens .right1>.panel{display:block}}

/* iPhone layout protection: preserve the desktop visual system while preventing narrow-card collisions. */
@media(max-width:430px){
  html,body{max-width:100%;overflow-x:hidden}
  .topbar{height:auto;min-height:70px;flex-wrap:wrap;gap:8px;padding:9px 10px}
  .logo{font-size:28px;letter-spacing:7px}.brand{min-width:0;flex:1 1 150px}.brand b{font-size:12px}.brand span{font-size:9px;letter-spacing:1px;overflow-wrap:anywhere}
  .topbar .sys,.topbar .metric{margin-left:0}.metric{padding-left:8px;font-size:9px}.metric b{font-size:11px}
  .v9statusbar{height:auto;min-height:28px;flex-wrap:wrap;gap:5px 10px;padding:6px 10px;font-size:10px;line-height:1.25}.v9statusbar span{min-width:0;overflow-wrap:anywhere}
  .dashboard-window,.grid,.bottom,.forecast-window,.wallet-window,.live-verification-window,.xrpl-observatory,.executive-brief,.trust-layer{width:min(100% - 16px,1920px);max-width:calc(100vw - 16px);min-width:0}
  .panel,.panel-head,.panel-head>div,.review-tools-grid,.review-tools-grid>.panel,.venue-window,.venue-rows,.venue-row{min-width:0;max-width:100%}
  .venue-window{padding:11px}.venue-window .panel-head{flex-wrap:wrap;gap:5px}.venue-window .panel-head>span{font-size:8px}
  .venue-rows{gap:7px}.venue-row{grid-template-columns:minmax(0,1fr);gap:6px;padding:9px}.venue-name{font-size:12px;line-height:1.2}.venue-field{grid-template-columns:72px minmax(0,1fr);align-items:baseline;gap:8px}.venue-field small{font-size:8px}.venue-field b{font-size:clamp(11px,3.2vw,13px);text-align:right;overflow-wrap:anywhere;text-overflow:clip;white-space:normal}.venue-status b{justify-self:end}
  footer{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:flex-start;min-height:0;padding:8px 10px;font-size:10px;line-height:1.35;overflow:visible;overflow-wrap:anywhere}footer span{float:none;flex:1 1 100%;min-width:0}
  .orderbook-bars,.prediction-scenarios,.prediction-explain-grid,.professional-desk-grid,.intelligence-rows{grid-template-columns:1fr}.orderbook-readout{gap:7px}.orderbook-readout>*{min-width:0;overflow-wrap:anywhere}
  .superpro-grid,.decision-lab-grid{grid-template-columns:1fr}.paper-stress,.paper-budget{align-items:flex-start;flex-direction:column}.paper-budget span{text-align:left}.ledger-row{grid-template-columns:1fr;gap:3px}.ledger-row time{text-align:left}
}
/* Reduce visual noise so live values remain the strongest element on screen. */
.chartbox canvas,.predictionbox canvas{filter:drop-shadow(0 0 3px rgba(22,234,255,.28))!important}
@media(max-width:720px){
  .predictionbox .prediction-content{grid-template-columns:1fr;min-height:0}
  .predictionbox .prediction-content #predictionChart{height:220px!important}
  .predictionbox .prediction-head{align-items:center}.predictionbox .prediction-head h2{font-size:13px}
  .predictionbox .overlay{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;text-align:center}
  .predictionbox .prediction-metric{padding:7px 4px;border-left:0;border-top:2px solid rgba(22,234,255,.65)}
  .predictionbox .overlay small{font-size:7px}
  .predictionbox .overlay b{font-size:12px}
  .prediction-tools{align-items:flex-start;flex-direction:column}.prediction-alerts{justify-content:flex-start}.prediction-alerts span{text-align:left}
  .prediction-explain-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Final mobile safety net: Safari must never place venue data side-by-side. */
@media screen and (max-width:480px){
  #venueRows,.venue-window{width:100%!important;min-width:0!important;max-width:100%!important;overflow:hidden!important}
  #venueRows .venue-row{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:7px!important;width:100%!important;min-width:0!important;max-width:100%!important;padding:10px!important;overflow:hidden!important}
  #venueRows .venue-name{display:block!important;width:100%!important;min-width:0!important;font-size:13px!important;line-height:1.25!important;overflow-wrap:anywhere!important}
  #venueRows .venue-field{display:flex!important;align-items:baseline!important;justify-content:space-between!important;gap:12px!important;width:100%!important;min-width:0!important}
  #venueRows .venue-field small{flex:0 0 72px!important;min-width:0!important;font-size:8px!important;white-space:nowrap!important}
  #venueRows .venue-field b{flex:1 1 auto!important;min-width:0!important;font-size:13px!important;line-height:1.25!important;text-align:right!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important}
  /* Supports cached rows produced by prior dashboard JavaScript. */
  #venueRows .venue-row>span:not(.venue-field){display:block!important;width:100%!important;min-width:0!important;overflow-wrap:anywhere!important}
  footer{width:100%!important;max-width:100%!important;display:block!important;padding:9px 10px!important;line-height:1.45!important;white-space:normal!important;overflow-wrap:anywhere!important}
  footer span{display:block!important;float:none!important;margin-top:3px!important;max-width:100%!important}
}
