/* =========================
   ANALYTICS BASE
========================= */

.analytics-shell{
  position:relative;
  min-height:100vh;
  background:#050816;
  color:#eaf2ff;
  overflow:hidden;
  padding:120px 20px 80px;
}

/* background glow */
.analytics-bg{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 15% 20%, rgba(0,212,255,0.15), transparent 40%),
    radial-gradient(circle at 80% 30%, rgba(91,140,255,0.12), transparent 45%),
    radial-gradient(circle at 50% 90%, rgba(124,77,255,0.12), transparent 50%);
}

/* grid overlay */
.analytics-grid{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px);
  background-size:80px 80px;
  opacity:0.2;
}

/* floating orbs */
.analytics-orb{
  position:absolute;
  border-radius:50%;
  filter:blur(120px);
  opacity:0.2;
}

.aorb1{
  width:320px;
  height:320px;
  background:#00d4ff;
  top:10%;
  left:-120px;
}

.aorb2{
  width:280px;
  height:280px;
  background:#7c4dff;
  bottom:10%;
  right:-120px;
}

/* =========================
   HEADER
========================= */

.analytics-header{
  position:relative;
  z-index:2;
  max-width:1200px;
  margin:auto;
  text-align:left;
  margin-bottom:50px;
}

.analytics-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;

  padding:10px 18px;
  border-radius:999px;

  background:rgba(0,212,255,0.08);
  border:1px solid rgba(0,212,255,0.2);

  color:#00d4ff;
  font-size:0.9rem;

  backdrop-filter:blur(14px);
}

.analytics-header h1{
  font-size:clamp(2.8rem,6vw,5.5rem);
  letter-spacing:-3px;
  margin-top:20px;

  background:linear-gradient(135deg,#fff,#8bc5ff,#7c4dff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.analytics-header p{
  margin-top:18px;
  max-width:600px;
  color:rgba(226,236,255,0.7);
  line-height:1.8;
}

/* =========================
   TOP METRICS
========================= */

.analytics-metrics{
  position:relative;
  z-index:2;

  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;

  max-width:1200px;
  margin:40px auto 60px;
}

.metric-box{
  padding:26px;
  border-radius:22px;

  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);

  backdrop-filter:blur(18px);

  transition:0.35s ease;
}

.metric-box:hover{
  transform:translateY(-8px);
  border-color:rgba(0,212,255,0.35);
}

.metric-box h3{
  font-size:2rem;
  margin-bottom:10px;

  background:linear-gradient(135deg,#00d4ff,#7c4dff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.metric-box span{
  color:rgba(226,236,255,0.65);
  font-size:0.95rem;
}

/* =========================
   MAIN DASHBOARD LAYOUT
========================= */

.analytics-grid-layout{
  position:relative;
  z-index:2;

  max-width:1200px;
  margin:auto;

  display:grid;
  grid-template-columns:2fr 1fr;
  gap:24px;
}

/* =========================
   CHART PANEL (TradingView)
========================= */

.chart-panel{
  padding:24px;
  border-radius:26px;

  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);

  backdrop-filter:blur(20px);

  min-height:520px;
  position:relative;
  overflow:hidden;
}

.chart-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:18px;
}

.chart-title{
  font-size:1.2rem;
  color:#fff;
  font-weight:600;
}

.chart-tabs{
  display:flex;
  gap:10px;
}

.chart-tabs button{
  padding:8px 14px;
  border-radius:999px;

  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);

  color:#cfe6ff;
  font-size:0.85rem;

  cursor:pointer;
  transition:0.3s ease;
}

.chart-tabs button.active{
  background:linear-gradient(135deg,#00d4ff,#5b8cff);
  color:#fff;
}

/* TradingView embed area */
.tradingview-widget-container{
  width:100%;
  height:430px;
  border-radius:18px;
  overflow:hidden;
}

/* fallback fake chart */
.fake-chart{
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:220px;

  background:
    linear-gradient(to top, rgba(0,212,255,0.2), transparent);

  clip-path:polygon(
    0% 100%,
    0% 70%,
    15% 80%,
    30% 55%,
    45% 60%,
    60% 35%,
    75% 25%,
    100% 10%,
    100% 100%
  );
}

/* =========================
   SIDE PANEL
========================= */

.side-panel{
  display:flex;
  flex-direction:column;
  gap:20px;
}

/* =========================
   LIVE TICKER
========================= */

.live-ticker{
  padding:20px;
  border-radius:22px;

  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);

  backdrop-filter:blur(18px);

  overflow:hidden;
}

.ticker-scroll{
  display:flex;
  gap:60px;
  width:max-content;

  animation:scrollLeft 18s linear infinite;
}

.ticker-scroll span{
  white-space:nowrap;
  color:#dce8ff;
  font-size:0.9rem;
}

/* =========================
   PORTFOLIO CARD
========================= */

.portfolio-card{
  padding:24px;
  border-radius:24px;

  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);

  backdrop-filter:blur(18px);
}

.portfolio-card h4{
  margin-bottom:18px;
  font-size:1.1rem;
}

.progress-bar{
  height:10px;
  border-radius:999px;

  background:rgba(255,255,255,0.08);

  overflow:hidden;
  margin-bottom:12px;
}

.progress-fill{
  height:100%;
  width:70%;

  background:linear-gradient(90deg,#00d4ff,#7c4dff);
}

/* =========================
   SIGNALS
========================= */

.signal-box{
  padding:24px;
  border-radius:24px;

  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);

  backdrop-filter:blur(18px);
}

.signal{
  display:flex;
  justify-content:space-between;
  margin-bottom:14px;

  color:rgba(226,236,255,0.75);
}

.signal strong{
  color:#fff;
}

.buy{
  color:#00ffae;
}

.sell{
  color:#ff4d6d;
}

/* =========================
   MARKET CARDS
========================= */

.market-grid{
  position:relative;
  z-index:2;

  max-width:1200px;
  margin:60px auto;

  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}

.market-card{
  padding:24px;
  border-radius:24px;

  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);

  backdrop-filter:blur(18px);

  transition:0.35s ease;
}

.market-card:hover{
  transform:translateY(-8px);
  border-color:rgba(0,212,255,0.3);
}

.market-card h4{
  font-size:1rem;
  margin-bottom:10px;
}

.price{
  font-size:1.8rem;
  margin-bottom:8px;

  background:linear-gradient(135deg,#00d4ff,#7c4dff);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.change.up{
  color:#00ffae;
}

.change.down{
  color:#ff4d6d;
}

/* =========================
   FLOATING TAGS
========================= */

.float-tag{
  position:absolute;
  padding:12px 18px;
  border-radius:14px;

  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.1);

  backdrop-filter:blur(14px);

  color:#dce8ff;

  animation:float 6s ease-in-out infinite;
}

.f1{ top:20%; right:10%; }
.f2{ bottom:20%; right:15%; animation-delay:2s; }

/* =========================
   ANIMATIONS
========================= */

@keyframes scrollLeft{
  from{ transform:translateX(0); }
  to{ transform:translateX(-50%); }
}

@keyframes float{
  0%{ transform:translateY(0); }
  50%{ transform:translateY(-14px); }
  100%{ transform:translateY(0); }
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width:1000px){

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

  .analytics-grid-layout{
    grid-template-columns:1fr;
  }

  .market-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (max-width:600px){

  .analytics-metrics{
    grid-template-columns:1fr;
  }

  .market-grid{
    grid-template-columns:1fr;
  }

  .chart-panel{
    min-height:420px;
  }
}