/* DataEnvision v0.47.0 — My Dashboard */

.my-dashboard-shell{
  display:none;
  padding:38px 0 54px;
}

.my-dashboard-shell.is-visible{
  display:block;
}

.my-dashboard-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:24px;
  margin-bottom:24px;
}

.my-dashboard-kicker{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--acid);
  font-size:9px;
  font-weight:800;
  letter-spacing:.16em;
}

.my-dashboard-kicker::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--acid);
  box-shadow:0 0 12px rgba(22,114,212,.45);
}

.my-dashboard-head h1{
  margin:10px 0 7px;
  font-size:clamp(34px,4vw,52px);
  line-height:1;
  letter-spacing:-.045em;
}

.my-dashboard-head p{
  margin:0;
  color:var(--muted);
  font-size:13px;
}

.my-dashboard-switch{
  display:flex;
  padding:3px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--panel);
}

.my-dashboard-switch button{
  border:0;
  border-radius:7px;
  padding:8px 13px;
  background:transparent;
  color:var(--muted);
  font-size:9px;
  cursor:pointer;
}

.my-dashboard-switch button.is-active{
  background:var(--panel3);
  color:var(--text);
}

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

.my-dashboard-card{
  min-height:230px;
  padding:19px;
  border:1px solid var(--line);
  border-radius:14px;
  background:
    radial-gradient(circle at 100% 0,rgba(22,114,212,.07),transparent 42%),
    linear-gradient(180deg,var(--panel2),var(--panel));
  box-shadow:var(--shadow);
}

.my-dashboard-card-label{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:var(--muted);
  font-size:8px;
  font-weight:800;
  letter-spacing:.15em;
}

.my-dashboard-card-label span{
  color:var(--acid);
}

.my-dashboard-primary{
  margin-top:22px;
}

.my-dashboard-primary small{
  display:block;
  color:var(--muted);
  font-size:9px;
}

.my-dashboard-primary strong{
  display:block;
  margin:4px 0;
  color:var(--text);
  font-size:34px;
  letter-spacing:-.04em;
}

.my-dashboard-primary em{
  color:var(--muted);
  font-size:9px;
  font-style:normal;
}

.my-dashboard-metrics{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:20px;
}

.my-dashboard-metric{
  padding:11px;
  border:1px solid #1e2629;
  border-radius:9px;
  background:rgba(8,12,14,.45);
}

.my-dashboard-metric small{
  display:block;
  color:var(--muted2);
  font-size:8px;
}

.my-dashboard-metric strong{
  display:block;
  margin-top:5px;
  color:#dce2df;
  font-size:13px;
}

.my-dashboard-link{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-top:17px;
  color:var(--acid);
  font-size:9px;
  font-weight:700;
}

.my-dashboard-link:hover{
  gap:10px;
}

.my-dashboard-section{
  margin-top:28px;
}

.my-dashboard-section-head{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:20px;
  margin-bottom:12px;
}

.my-dashboard-section-head small{
  color:var(--acid);
  font-size:8px;
  font-weight:800;
  letter-spacing:.15em;
}

.my-dashboard-section-head h2{
  margin:5px 0 0;
  font-size:22px;
  letter-spacing:-.03em;
}

.my-dashboard-section-head p{
  margin:0;
  color:var(--muted2);
  font-size:9px;
}

.my-dashboard-changes{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
}

.my-dashboard-change{
  padding:15px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--panel);
}

.my-dashboard-change small{
  color:var(--muted2);
  font-size:8px;
  letter-spacing:.08em;
}

.my-dashboard-change strong{
  display:block;
  margin:7px 0 5px;
  color:#dce2df;
  font-size:12px;
}

.my-dashboard-change p{
  margin:0;
  color:var(--muted);
  font-size:9px;
  line-height:1.55;
}

.my-dashboard-empty{
  color:var(--muted);
}

.my-dashboard-empty strong{
  font-size:17px;
}

.my-dashboard-empty p{
  font-size:10px;
  line-height:1.65;
}

.my-dashboard-empty a{
  color:var(--acid);
}

@media(max-width:950px){
  .my-dashboard-grid,
  .my-dashboard-changes{
    grid-template-columns:1fr;
  }

  .my-dashboard-card{
    min-height:0;
  }
}

@media(max-width:650px){
  .my-dashboard-shell{
    padding-top:28px;
  }

  .my-dashboard-head{
    display:block;
  }

  .my-dashboard-switch{
    width:max-content;
    margin-top:18px;
  }

  .my-dashboard-head h1{
    font-size:36px;
  }

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

/* v0.47.0 — DataEnvision Pulse visual enhancements */

.my-dashboard-shell{
  position:relative;
  isolation:isolate;
}

.my-dashboard-shell::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:0;
  left:12%;
  width:70%;
  height:360px;
  pointer-events:none;
  background:radial-gradient(
    ellipse at 50% 0%,
    rgba(22,114,212,.075),
    transparent 70%
  );
}

.my-dashboard-head{
  margin-bottom:30px;
}

.my-dashboard-head h1{
  font-weight:800;
  letter-spacing:-.055em;
}

.my-dashboard-head p{
  color:#a4b3c0;
  font-size:14px;
}

.my-dashboard-card{
  position:relative;
  overflow:hidden;
  min-height:265px;
  padding:23px;
  border:1px solid #263746;
  border-radius:17px;
  background:
    radial-gradient(
      ellipse at 95% 0%,
      rgba(36,118,207,.14),
      transparent 55%
    ),
    linear-gradient(145deg,#121c26,#0b1118 75%);
  box-shadow:
    0 14px 38px rgba(0,0,0,.20),
    inset 0 1px rgba(255,255,255,.035);
  transition:
    transform .22s ease,
    border-color .22s ease,
    box-shadow .22s ease;
}

.my-dashboard-card:hover{
  transform:translateY(-3px);
  border-color:#3c6487;
  box-shadow:
    0 20px 46px rgba(0,0,0,.30),
    0 0 24px rgba(22,114,212,.07);
}

#my-dashboard-markets{
  background:
    radial-gradient(
      ellipse at 95% 0%,
      rgba(246,168,75,.085),
      transparent 55%
    ),
    linear-gradient(145deg,#151b22,#0b1118 75%);
}

#my-dashboard-finances{
  background:
    radial-gradient(
      ellipse at 95% 0%,
      rgba(54,214,181,.085),
      transparent 55%
    ),
    linear-gradient(145deg,#111e23,#0b1118 75%);
}

.my-dashboard-card-label{
  color:#a9bac9;
  font-size:10px;
}

#my-dashboard-markets .my-dashboard-card-label span{
  color:#f6a84b;
}

#my-dashboard-finances .my-dashboard-card-label span{
  color:#36d6b5;
}

.my-dashboard-primary{
  margin-top:25px;
}

.my-dashboard-primary small{
  color:#a5b6c5;
  font-size:11px;
}

.my-dashboard-primary strong{
  margin:8px 0;
  font-size:clamp(33px,2.6vw,44px);
  font-weight:800;
  line-height:1.15;
  letter-spacing:-.055em;
  font-variant-numeric:tabular-nums;
}

.my-dashboard-primary em{
  display:block;
  min-height:16px;
  color:#91a6b7;
  font-size:10px;
  line-height:1.5;
}

.my-dashboard-metrics{
  margin-top:23px;
}

.my-dashboard-metric{
  padding:13px;
  border:1px solid #273846;
  border-radius:11px;
  background:rgba(5,10,15,.42);
}

.my-dashboard-metric small{
  color:#8299aa;
  font-size:10px;
}

.my-dashboard-metric strong{
  color:#f0f5f8;
  font-size:13px;
}

.my-dashboard-link{
  margin-top:21px;
  color:#58a9ff;
  font-size:11px;
  transition:gap .2s ease,color .2s ease;
}

.my-dashboard-link:hover{
  gap:13px;
  color:#9acbff;
}

.my-dashboard-section{
  margin-top:39px;
}

.my-dashboard-section-head h2{
  font-size:25px;
}

.my-dashboard-section-head p{
  font-size:11px;
}

.my-dashboard-change{
  padding:20px;
  border:1px solid #263746;
  border-radius:14px;
  background:
    linear-gradient(145deg,#101820,#0b1117);
  transition:border-color .2s ease,transform .2s ease;
}

.my-dashboard-change:hover{
  border-color:#3a5d79;
  transform:translateY(-2px);
}

.my-dashboard-change small{
  color:#6eaef0;
  font-size:9px;
  font-weight:700;
}

.my-dashboard-change strong{
  margin:10px 0 7px;
  color:#f0f5f8;
  font-size:14px;
}

.my-dashboard-change p{
  color:#9aafbf;
  font-size:11px;
  line-height:1.65;
}

@media(prefers-reduced-motion:reduce){
  .my-dashboard-card,
  .my-dashboard-change,
  .my-dashboard-link{
    transition:none;
  }

  .my-dashboard-card:hover,
  .my-dashboard-change:hover{
    transform:none;
  }
}

@media(max-width:650px){
  .my-dashboard-card{
    padding:19px;
    min-height:0;
  }

  .my-dashboard-primary strong{
    font-size:34px;
  }
}

/* DataEnvision Pulse — Market Risk gauge */
.my-dashboard-visual{
  margin-top:20px;
  min-height:55px;
}

.my-dashboard-gauge{
  padding:10px 2px 0;
}

.my-dashboard-gauge-track{
  position:relative;
  height:12px;
  border-radius:999px;
  background:linear-gradient(
    to right,
    #3a9f85 0%,
    #3a9f85 25%,
    #e7b14d 25%,
    #e7b14d 40%,
    #e48a43 40%,
    #e48a43 55%,
    #d96055 55%,
    #d96055 70%,
    #a54c73 70%,
    #a54c73 85%,
    #824da6 85%,
    #824da6 100%
  );
}

.my-dashboard-gauge-marker{
  position:absolute;
  top:-6px;
  width:4px;
  height:24px;
  border-radius:3px;
  background:#f7fafc;
  box-shadow:0 0 0 3px rgba(0,0,0,.7),0 0 12px rgba(255,255,255,.35);
  transform:translateX(-50%);
}

.my-dashboard-gauge-labels{
  display:flex;
  justify-content:space-between;
  margin-top:13px;
  color:#8da2b5;
  font-size:9px;
  font-weight:700;
  letter-spacing:.08em;
}

/* DataEnvision Pulse — Financial allocation */
.my-dashboard-finance-visual{
  padding:10px 2px 0;
}

.my-dashboard-finance-bar{
  display:flex;
  width:100%;
  height:12px;
  overflow:hidden;
  border-radius:999px;
  background:#263745;
}

.my-dashboard-finance-assets{
  height:100%;
  background:linear-gradient(90deg,#258f82,#36d6b5);
}

.my-dashboard-finance-liabilities{
  height:100%;
  background:#69859b;
}

.my-dashboard-finance-legend{
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:8px;
  margin-top:13px;
  color:#9bb0bf;
  font-size:10px;
  font-weight:600;
}

/* v0.47.0 — Reference inflation trend */
#my-dashboard-inflation-chart svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

.my-dashboard-inflation-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 8px;
  font-size: 10px;
  font-weight: 700;
}

.my-dashboard-inflation-legend .reference { color: #56a9f8; }
.my-dashboard-inflation-legend .headline { color: #f0b65d; }

.my-dashboard-inflation-tooltip {
  min-height: 16px;
  margin-top: 10px;
  color: #e1ebf3;
  font-size: 11px;
}

.my-dashboard-inflation-missing {
  margin-top: 5px;
  color: #8298a9;
  font-size: 10px;
}

/* v0.47.0 — Dashboard readability improvements */

/* Intelligence Feed */
.my-dashboard-section-head h2 {
  font-size: 26px;
  line-height: 1.25;
}

.my-dashboard-section-head p {
  font-size: 13px;
  line-height: 1.5;
}

.my-dashboard-change {
  padding: 22px 24px;
}

.my-dashboard-change small {
  font-size: 11px;
  letter-spacing: .10em;
}

.my-dashboard-change strong {
  display: block;
  font-size: 16px;
  line-height: 1.4;
  margin-top: 10px;
}

.my-dashboard-change p {
  font-size: 14px;
  line-height: 1.6;
  margin-top: 8px;
}

/* Primary dashboard cards */
.my-dashboard-card > small {
  font-size: 11px;
}

.my-dashboard-metric {
  font-size: 13px;
}

.my-dashboard-metric strong {
  font-size: 14px;
}

.my-dashboard-link {
  font-size: 13px;
}

/* Inflation chart */
.my-dashboard-inflation-legend {
  font-size: 12px;
}

.my-dashboard-inflation-tooltip {
  font-size: 13px;
}

.my-dashboard-inflation-missing {
  font-size: 12px;
}

/* Market risk gauge */
.my-dashboard-gauge-labels {
  font-size: 11px;
}

/* Financial allocation */
.my-dashboard-finance-legend {
  font-size: 12px;
}

/* v0.47.0 — Improve section label readability */
.my-dashboard-kicker,
.my-dashboard-section-head small {
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .09em;
  line-height: 1.5;
}

