.dashboard-page{--dash-bg:#efebe1;--dash-surface:#fbf7ef;--dash-surface2:#f4efe5;--dash-ink:#18201d;--dash-muted:#66726c;--dash-line:rgba(24,32,29,.12);--dash-line2:rgba(24,32,29,.22);--dash-accent:#2f6f52;--dash-danger:#a64f43;min-height:100dvh;color:var(--dash-ink);background:var(--dash-bg)}.dashboard-page .chain-grid{display:none}.dash-header{position:sticky;top:12px;z-index:5;width:min(1180px,calc(100% - 32px));min-height:68px;margin:12px auto 0;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:10px 12px;border:1px solid var(--dash-line);border-radius:20px;background:rgba(251,247,239,.9);backdrop-filter:blur(14px)}.dash-header .brand-logo{width:168px}.dash-nav,.card-head{display:flex;align-items:center}.dash-nav{justify-self:center;gap:4px;padding:4px;border:1px solid var(--dash-line);border-radius:999px;background:var(--dash-surface2)}.dash-nav a{padding:8px 12px;border-radius:999px;color:var(--dash-muted);font-size:.88rem}.dash-nav a:hover,.dash-nav a:first-child{color:var(--dash-ink);background:var(--dash-surface)}.dash-button{min-height:42px;padding:0 14px;border:1px solid var(--dash-line2);border-radius:12px;cursor:pointer;font-weight:850}.dash-button.primary{color:#f7f3ea;border-color:var(--dash-accent);background:var(--dash-accent)}.dash-button.secondary{color:var(--dash-ink);background:var(--dash-surface)}.dash-shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:50px 0 72px}.dash-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end;margin-bottom:18px}.dash-intro h1{max-width:720px;margin-bottom:10px;font-size:clamp(2.8rem,5.8vw,5.5rem);line-height:.9;letter-spacing:-.08em;color:var(--dash-ink)}.dash-intro p{max-width:68ch;margin:0;color:var(--dash-muted)}.wallet-pill,.history-badge{display:inline-flex;width:max-content;min-height:34px;align-items:center;padding:0 12px;border:1px solid var(--dash-line);border-radius:999px;color:var(--dash-accent);background:var(--dash-surface);font-family:"JetBrains Mono","SF Mono",monospace;font-size:.78rem}.summary-grid{display:grid;grid-template-columns:1.25fr repeat(4,1fr);gap:12px;margin-bottom:14px}.summary-card,.dash-card{border:1px solid var(--dash-line);border-radius:20px;background:var(--dash-surface)}.summary-card{min-height:138px;padding:18px}.summary-card>span{color:var(--dash-muted);font-size:.72rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.summary-card strong{display:block;margin:18px 0 8px;font-family:"JetBrains Mono","SF Mono",monospace;font-size:clamp(1.35rem,2.3vw,2.45rem);letter-spacing:-.06em}.summary-card small{color:var(--dash-muted)}.main-card{color:#f7f3ea;background:#18201d}.main-card span,.main-card small{color:rgba(247,243,234,.68)}.profit-card{position:relative}.profit-card strong{font-size:clamp(1.55rem,2vw,2.05rem);white-space:nowrap}.profit-card.is-positive strong,.profit-positive{color:var(--dash-accent)}.profit-card.is-negative strong,.profit-negative{color:var(--dash-danger)}.dash-card{padding:20px}.card-head{justify-content:space-between;gap:16px;margin-bottom:16px}.card-head h2{margin:0;font-size:clamp(1.45rem,2.5vw,2.4rem);color:var(--dash-ink)}.investments-card{margin-bottom:14px}.investment-table-wrap{overflow-x:auto;border:1px solid var(--dash-line);border-radius:16px;background:var(--dash-surface)}.investment-table{width:100%;min-width:820px;border-collapse:collapse}.investment-table th,.investment-table td{padding:14px 15px;border-bottom:1px solid var(--dash-line);text-align:left;white-space:nowrap}.investment-table th{color:var(--dash-muted);font-family:"JetBrains Mono","SF Mono",monospace;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.investment-table td{font-family:"JetBrains Mono","SF Mono",monospace;font-size:.9rem}.investment-table td small{display:block;margin-top:3px;color:var(--dash-muted)}.asset-cell{display:flex;align-items:center;gap:10px;font-family:Satoshi,Geist,"Avenir Next",sans-serif}.table-token,.crypto-logo{width:36px;height:36px;border-radius:12px;flex:0 0 auto}.simple-note{margin-top:14px;padding:12px 14px;border:1px solid rgba(155,115,56,.26);border-radius:14px;color:#7b5a2b;background:rgba(155,115,56,.08)}.deposit-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:16px}.deposit-address-card{display:grid;gap:12px;padding:16px;border:1px solid var(--dash-line);border-radius:16px;background:var(--dash-surface2)}.deposit-asset{display:flex;align-items:center;gap:10px}.deposit-asset strong,.deposit-asset span{display:block}.deposit-asset span,.deposit-address-card p,.movement-item span{color:var(--dash-muted);font-size:.84rem}.deposit-address-card code{overflow:hidden;padding:10px;border:1px solid var(--dash-line);border-radius:12px;background:var(--dash-surface);color:var(--dash-ink);text-overflow:ellipsis}.history-card{margin-top:14px}.movement-list{display:grid;overflow:hidden;border:1px solid var(--dash-line);border-radius:16px;background:var(--dash-line)}.movement-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:14px 15px;background:var(--dash-surface)}.movement-item strong{display:block;font-family:"JetBrains Mono","SF Mono",monospace;letter-spacing:-.04em}.movement-type{width:max-content;padding:6px 10px;border-radius:999px;font-family:"JetBrains Mono","SF Mono",monospace;font-size:.76rem}.movement-type.deposit{color:var(--dash-accent);background:rgba(47,111,82,.1)}.movement-type.withdrawal{color:#7b5a2b;background:rgba(155,115,56,.12)}@media(max-width:960px){.dash-header{grid-template-columns:auto 1fr}.dash-nav{order:3;grid-column:1/-1;justify-self:stretch;overflow-x:auto}.dash-intro,.summary-grid{grid-template-columns:1fr}.deposit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:960px){
  .summary-grid { grid-template-columns: repeat(2, 1fr); }
  .summary-card.main-card { grid-column: 1 / -1; }
}

@media(max-width:640px){
  .dash-header,.dash-shell{width:min(100% - 20px,1180px)}
  .dash-header .brand-logo{width:48px;content:url("assets/favicon.svg")}
  .dash-shell{padding-top:34px}
  .dash-intro h1{font-size:clamp(2.2rem,10vw,3.8rem)}
  .dash-intro p { font-size: .9rem; }
  .card-head{align-items:flex-start;flex-direction:column}
  .movement-item,.deposit-grid{grid-template-columns:1fr}
  .investment-table{min-width:760px}
  .dash-button.primary{font-size:.78rem}
  .summary-grid { grid-template-columns: repeat(2, 1fr); gap: 8px; }
  .summary-card { min-height: 110px; padding: 14px; }
  .summary-card.main-card { grid-column: 1 / -1; }
  .ops-grid { gap: 8px; }
  .ops-card { min-height: auto; padding: 14px; }
  .dash-header { gap: 10px; padding: 8px 10px; }
  .dash-nav { gap: 2px; }
  .dash-nav a { padding: 7px 10px; font-size: .82rem; white-space: nowrap; }
  .ai-header-right { gap: 6px; }
  .win-rate-badge { font-size: .76rem; padding: 5px 10px; }
  .tier-badge-pill { font-size: .72rem; padding: 5px 10px; }
  .proof-grid { grid-template-columns: 1fr; }
}

/* Hide scrollbar on dash-nav (mobile horizontal scroll) */
.dash-nav {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.dash-nav::-webkit-scrollbar { display: none; }

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

.ops-card {
  min-height: 118px;
  padding: 16px;
  border: 1px solid var(--dash-line);
  border-radius: 18px;
  background: var(--dash-surface2);
}

.ops-card span,
.ops-card small {
  color: var(--dash-muted);
}

.ops-card span {
  display: block;
  font-size: 0.72rem;
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ops-card strong {
  display: block;
  margin: 13px 0 6px;
  font-size: 1.08rem;
}

.ops-card small {
  font-size: 0.84rem;
}

@media (max-width: 960px) {
  .ops-grid {
    grid-template-columns: 1fr;
  }
}

/* ── AI Command Center ──────────────────────────────────────── */
.ai-command-center {
  margin-bottom: 14px;
}

.ai-header-right {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.win-rate-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 14px;
  border: 1px solid rgba(47, 111, 82, 0.3);
  border-radius: 999px;
  background: rgba(47, 111, 82, 0.08);
  color: var(--dash-muted);
  font-size: 0.82rem;
}

.win-rate-badge strong {
  color: var(--dash-accent);
  font-family: "JetBrains Mono", "SF Mono", monospace;
  font-size: 1rem;
}

.tier-badge-pill {
  display: inline-flex;
  align-items: center;
  padding: 7px 14px;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.tier-essential {
  border: 1px solid rgba(84, 211, 154, 0.3);
  background: rgba(84, 211, 154, 0.08);
  color: var(--dash-accent);
}

.tier-platinum {
  border: 1px solid rgba(100, 130, 255, 0.35);
  background: rgba(100, 130, 255, 0.1);
  color: #4a6ee0;
}

.tier-institutional {
  border: 1px solid rgba(155, 115, 56, 0.35);
  background: rgba(155, 115, 56, 0.1);
  color: #8c6a20;
}

.ai-command-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

.ai-control-card,
.ai-stat-card {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 14px 16px;
  border: 1px solid var(--dash-line);
  border-radius: 16px;
  background: var(--dash-surface2);
}

.ai-ctrl-label {
  font-size: 0.68rem;
  font-weight: 850;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--dash-muted);
  font-family: "JetBrains Mono", "SF Mono", monospace;
}

.ai-stat-card strong {
  font-family: "JetBrains Mono", "SF Mono", monospace;
  font-size: 1.05rem;
  font-weight: 900;
  letter-spacing: -0.03em;
  color: var(--dash-ink);
}

.ai-stat-card small {
  color: var(--dash-muted);
  font-size: 0.76rem;
  line-height: 1.4;
}

.stat-positive {
  color: var(--dash-accent) !important;
}

.stat-gold {
  color: #8c6a20 !important;
}

/* Override toggle */
.override-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 4px 0;
}

.override-row span {
  font-size: 0.84rem;
  font-weight: 700;
  color: var(--dash-ink);
}

.override-toggle {
  position: relative;
  width: 42px;
  height: 24px;
  border: none;
  border-radius: 999px;
  background: var(--dash-line2);
  cursor: pointer;
  transition: background 200ms;
  flex-shrink: 0;
  padding: 0;
}

.override-toggle::after {
  content: '';
  position: absolute;
  top: 3px;
  left: 3px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  transition: transform 200ms;
}

.override-toggle.is-active {
  background: var(--dash-accent);
}

.override-toggle.is-active::after {
  transform: translateX(18px);
}

.ai-control-card small {
  color: var(--dash-muted);
  font-size: 0.76rem;
  line-height: 1.4;
  margin-top: 2px;
}

/* ── Return Visualizer ───────────────────────────────────────── */

.viz-tabs {
  display: flex;
  gap: 4px;
  padding: 4px;
  border: 1px solid var(--dash-line);
  border-radius: 999px;
  background: var(--dash-surface2);
}

.viz-tab {
  padding: 6px 14px;
  border: none;
  border-radius: 999px;
  background: none;
  cursor: pointer;
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--dash-muted);
  transition: background 150ms, color 150ms;
}

.viz-tab.is-active {
  background: var(--dash-surface);
  color: var(--dash-ink);
  box-shadow: 0 1px 4px rgba(0,0,0,.08);
}

.viz-legend {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 12px;
}

.leg {
  font-size: 0.76rem;
  font-weight: 700;
  font-family: "JetBrains Mono", "SF Mono", monospace;
}

.leg-actual  { color: var(--dash-accent); }
.leg-projected { color: var(--dash-muted); }
.leg-upgrade   { color: #8c6a20; }

.viz-chart-wrap {
  border: 1px solid var(--dash-line);
  border-radius: 14px;
  background: var(--dash-surface2);
  overflow: hidden;
  margin-bottom: 16px;
}

.viz-chart-wrap svg {
  width: 100%;
  display: block;
}

.viz-summary {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.viz-summary > div {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 12px 14px;
  border: 1px solid var(--dash-line);
  border-radius: 12px;
  background: var(--dash-surface2);
}

.viz-summary span {
  color: var(--dash-muted);
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 850;
}

.viz-summary strong {
  font-family: "JetBrains Mono", "SF Mono", monospace;
  font-size: 1.15rem;
  font-weight: 900;
  letter-spacing: -0.04em;
  color: var(--dash-ink);
}


/* ── Proof of Performance ──────────────────────────────────── */
.proof-section {
  margin-bottom: 14px;
}

.proof-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.proof-section-label {
  margin: 0 0 10px;
  font-size: 0.72rem;
  font-weight: 850;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--dash-muted);
  font-family: "JetBrains Mono", "SF Mono", monospace;
}

.proof-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--dash-line);
  border-radius: 14px;
  background: var(--dash-surface2);
}

.proof-table {
  width: 100%;
  border-collapse: collapse;
}

.proof-table th,
.proof-table td {
  padding: 11px 14px;
  border-bottom: 1px solid var(--dash-line);
  text-align: left;
  white-space: nowrap;
  font-size: 0.84rem;
}

.proof-table th {
  color: var(--dash-muted);
  font-family: "JetBrains Mono", "SF Mono", monospace;
  font-size: 0.68rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.proof-table td {
  font-family: "JetBrains Mono", "SF Mono", monospace;
}

.proof-table tr:last-child td { border-bottom: none; }

.proof-return-positive { color: var(--dash-accent); font-weight: 900; }
.proof-return-gold     { color: #8c6a20; font-weight: 900; }

.proof-status-verified {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 9px;
  border-radius: 999px;
  background: rgba(47,111,82,.1);
  color: var(--dash-accent);
  font-size: 0.72rem;
}

.proof-status-pending {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 9px;
  border-radius: 999px;
  background: rgba(155,115,56,.1);
  color: #7b5a2b;
  font-size: 0.72rem;
}

.tier-pill-inst {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(155,115,56,.12);
  color: #8c6a20;
  font-size: 0.7rem;
  font-weight: 700;
}

.tier-pill-plat {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(100,130,255,.1);
  color: #4a6ee0;
  font-size: 0.7rem;
  font-weight: 700;
}

/* Responsive new modules */
@media (max-width: 960px) {
  .ai-command-grid {
    grid-template-columns: repeat(2, 1fr);
  }

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

@media (max-width: 640px) {
  /* AI Command Center — 2 cols on phone (8 cards → 4 rows, not 8) */
  .ai-command-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .ai-header-right {
    justify-content: flex-start;
  }

  /* viz-summary: unrealized return spans full row, projected + inst side-by-side */
  .viz-summary {
    grid-template-columns: 1fr 1fr;
  }

  .viz-summary > div:first-child {
    grid-column: 1 / -1;
  }

  /* Deposit addresses: 2 cols instead of 1 */
  .deposit-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /* Movement items: description spans full width, badge + amount on row below */
  .movement-item {
    grid-template-columns: 1fr auto;
    padding: 12px 14px;
  }

  .movement-item > div:first-child {
    grid-column: 1 / -1;
    margin-bottom: 4px;
  }

  /* Header: hide "Back to site" — Sign out is enough */
  .dash-header .dash-button.primary {
    display: none;
  }

  /* Return Visualizer chart: keep readable height */
  .viz-chart-wrap {
    min-height: 130px;
  }

  /* Tighter bottom shell padding */
  .dash-shell {
    padding-bottom: 44px;
  }

  /* Proof tables: each full width on mobile */
  .proof-grid {
    grid-template-columns: 1fr;
  }
}
