/* ============================================================
   Split — live fee basket (live.html)
   ============================================================ */

.live-pill{
  display:inline-flex; align-items:center; gap:8px;
  font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  color:var(--ink); background:rgba(12,163,12,.14); border:1px solid rgba(12,163,12,.45);
  padding:4px 11px 4px 10px; border-radius:var(--radius-pill);
}
.lv-mode{
  font-size:12px; font-weight:600; letter-spacing:.04em; text-transform:uppercase;
  color:var(--warn); border:1px solid rgba(250,178,25,.4); border-radius:var(--radius-pill);
  padding:4px 10px;
}
.lv-state{ font-size:13px; color:var(--muted); }
.page-head__lead strong{ color:var(--ink); font-weight:600; }

/* ---------- hero number + KPIs ------------------------------ */
.lv-top{ padding:36px 0 0; }
.lv-status{ display:flex; flex-wrap:wrap; align-items:center; gap:10px; min-height:26px; }
.lv-hero__label{ margin-top:22px; font-size:14px; color:var(--muted); }
.lv-hero__value{
  font-family:var(--mono); font-variant-numeric:tabular-nums; font-weight:500;
  font-size:clamp(40px,7vw,72px); letter-spacing:-.03em; line-height:1.05; margin-top:6px;
  overflow-wrap:anywhere; transition:color 1.2s ease;
}
.lv-hero__value.up{ color:#5fd35f; transition:none; }
.lv-hero__delta{ margin-top:10px; font-size:15px; color:var(--muted); min-height:1.5em; }
.lv-hero__delta .up{ color:var(--good); font-weight:600; font-family:var(--mono); font-variant-numeric:tabular-nums; }
.lv-kpis{ margin-top:28px; border-top:1px solid var(--line); }
.lv-kpis .kpi__value{ font-variant-numeric:tabular-nums; }

/* ---------- stocks + feed ----------------------------------- */
.lv-h2{ font-size:18px; font-weight:600; letter-spacing:-.01em; margin:0; }
.lv-sec-sub{ font-size:13px; color:var(--muted); }
.lv-cols{ display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:24px; margin-top:32px; align-items:start; }
.lv-sec-head{ display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 12px; margin-bottom:14px; }
.lv-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:12px; }
.lv-stock{
  position:relative; background:var(--surface); border:1px solid var(--line); border-radius:var(--radius);
  padding:14px 14px 12px; transition:border-color .5s ease, background-color .5s ease;
}
.lv-stock.bump{ border-color:rgba(12,163,12,.55); background-color:#0f1a17; transition:none; }
.lv-stock__top{ display:flex; align-items:center; gap:10px; min-width:0; }
.lv-stock__top .tok-icon{ width:28px; height:28px; }
.lv-stock__t{ font-weight:700; font-size:14.5px; }
.lv-stock__n{ font-size:12.5px; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.lv-stock__amt{
  margin-top:12px; font-family:var(--mono); font-variant-numeric:tabular-nums;
  font-size:21px; font-weight:500; letter-spacing:-.02em; overflow-wrap:anywhere;
}
.lv-stock__unit{ font-size:12px; color:var(--muted); margin-left:4px; font-family:var(--font); letter-spacing:0; }
.lv-stock__foot{ display:flex; justify-content:space-between; gap:8px; margin-top:4px; font-size:12.5px; color:var(--muted); font-variant-numeric:tabular-nums; }
.lv-stock__plus{
  position:absolute; top:12px; right:12px; font-family:var(--mono); font-size:11.5px; font-weight:500;
  color:var(--good); opacity:0; transform:translateY(4px); pointer-events:none;
}
.lv-stock__plus.show{ animation:lv-plus 1.4s ease-out; }
@keyframes lv-plus{ 0%{ opacity:0; transform:translateY(4px); } 15%{ opacity:1; transform:none; } 70%{ opacity:1; } 100%{ opacity:0; transform:translateY(-8px); } }

.lv-feed{ padding:16px 0 6px; position:sticky; top:84px; }
.lv-feed__head{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0 18px 12px; border-bottom:1px solid var(--line); }
.lv-feed__head .live-pill{ font-size:11px; padding:3px 10px 3px 9px; gap:7px; }
.lv-feed__list{ list-style:none; margin:0; padding:0; max-height:560px; overflow-y:auto; }
.lv-feed__empty{ margin:0; padding:18px; font-size:14px; color:var(--muted); }
.lv-trade{
  display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:4px 12px;
  padding:11px 18px; border-bottom:1px solid var(--line); font-size:13.5px;
}
.lv-trade:last-child{ border-bottom:0; }
.lv-trade.new{ animation:lv-in .6s ease-out; }
@keyframes lv-in{ from{ background:rgba(12,163,12,.12); } to{ background:transparent; } }
.lv-side{
  font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  padding:3px 7px; border-radius:6px; min-width:42px; text-align:center;
}
.lv-side--buy{ color:#5fd35f; background:rgba(12,163,12,.14); }
.lv-side--sell{ color:#f08080; background:rgba(208,59,59,.14); }
.lv-trade__amt{ font-family:var(--mono); font-variant-numeric:tabular-nums; min-width:0; }
.lv-trade__amt small{ display:block; font-family:var(--font); font-size:12px; color:var(--muted); }
.lv-trade__fee{ text-align:right; font-family:var(--mono); font-variant-numeric:tabular-nums; color:var(--good); }
.lv-trade__fee small{ display:block; font-family:var(--font); font-size:12px; color:var(--muted); }
.lv-trade__fee a{ color:var(--muted); }
.lv-trade__fee a:hover{ color:var(--accent); }

.lv-note{ margin:28px 0 72px; max-width:760px; font-size:13.5px; color:var(--muted); }

@media (max-width: 1000px){
  .lv-cols{ grid-template-columns:minmax(0,1fr); }
  .lv-feed{ position:static; }
  .lv-feed__list{ max-height:420px; }
}
@media (max-width: 560px){
  .lv-top{ padding-top:24px; }
  .lv-kpis .kpi__value{ font-size:22px; }
  .lv-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .lv-stock{ padding:12px 11px 10px; }
  .lv-stock__amt{ font-size:17px; }
  .lv-feed__head{ padding:0 14px 12px; }
  .lv-trade{ padding:10px 14px; }
}
@media (prefers-reduced-motion: reduce){
  .lv-stock__plus.show, .lv-trade.new{ animation:none; }
  .lv-stock, .lv-stock.bump, .lv-hero__value{ transition:none; }
}
