/* Dollar vs Euro page - same visual language as crash-indicator.css
   (ci-*), renamed dve-* for this page's own styles. */

.dve-hero{
  position:relative; overflow:hidden; padding:56px 0 44px;
  background: var(--indigo-soft); border-bottom:1px solid var(--line);
}
.dve-orb{ position:absolute; border-radius:50%; filter:blur(100px); pointer-events:none; opacity:0.35; }
.dve-orb-1{ width:460px; height:460px; background:#8B7FFF; top:-200px; right:-140px; }
.dve-orb-2{ width:360px; height:360px; background:#FFC257; bottom:-180px; left:-120px; }
.dve-hero .wrap{ position:relative; z-index:1; }
.dve-hero h1{
  font-family:'Instrument Sans', sans-serif; font-weight:600; font-size:clamp(34px, 5vw, 54px); line-height:1.03;
  letter-spacing:-0.01em; margin:16px 0 18px;
}
.dve-hero .lede{ font-size:16px; line-height:1.65; color: var(--ink-soft); max-width:760px; margin:0 0 26px; }

.dve-tally{ display:flex; flex-wrap:wrap; gap:12px; }
.dve-tally-tile{
  background: var(--white); border:1px solid var(--line); border-radius: var(--radius-sm);
  padding:14px 20px; box-shadow: var(--shadow-sm); min-width:150px;
}
.dve-tally-lbl{ font-size:11px; font-weight:700; letter-spacing:.03em; text-transform:uppercase; color: var(--ink-soft); display:block; margin-bottom:4px; }
.dve-tally-val{ font-family:'Instrument Sans', sans-serif; font-weight:700; font-size:22px; color: var(--ink); font-variant-numeric: tabular-nums; }
.dve-tally-val .unit{ font-size:13px; font-weight:500; color: var(--ink-soft); }

.dve-methodology{ padding:22px 0; border-bottom:1px solid var(--line); }
.dve-methodology-details summary{
  cursor:pointer; font-size:13.5px; font-weight:700; color: var(--ink-soft); list-style:none;
  display:flex; align-items:center; gap:8px;
}
.dve-methodology-details summary::-webkit-details-marker{ display:none; }
.dve-methodology-details summary::before{ content:"+"; font-size:16px; font-weight:800; color: var(--indigo-dark); flex:none; }
.dve-methodology-details[open] summary::before{ content:"\2212"; }
.dve-methodology-body{ margin-top:16px; font-size:13.5px; line-height:1.65; color: var(--ink-soft); max-width:820px; }
.dve-methodology-body ul{ margin:10px 0; padding-left:20px; }
.dve-methodology-body li{ margin-bottom:6px; }
.dve-methodology-body strong{ color: var(--ink); }

.dve-band{ padding:56px 0; }
.dve-band--alt{ background: var(--cream-2); }

.dve-pair-grid{ display:grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap:20px; }

.dve-card{
  background: var(--white); border:1px solid var(--line); border-radius: var(--radius-md);
  padding:22px; display:flex; flex-direction:column; gap:10px;
}
.dve-card-head{ display:flex; align-items:center; gap:8px; }
.dve-flag{
  font-size:11px; font-weight:800; letter-spacing:.04em; text-transform:uppercase;
  border-radius:999px; padding:3px 9px; flex:none;
}
.dve-flag--usd{ background: var(--indigo-soft); color: var(--indigo-dark); }
.dve-flag--eur{ background: var(--gold-soft); color: var(--gold); }
.dve-card-label{ font-size:13px; font-weight:700; color: var(--ink); }
.dve-card-value{ font-family:'Instrument Sans', sans-serif; font-size:32px; font-weight:600; color: var(--ink); font-variant-numeric: tabular-nums; line-height:1; }
.dve-card-value .unit{ font-size:16px; font-weight:500; color: var(--ink-soft); margin-left:2px; }
.dve-card-sub{ font-size:12.5px; color: var(--ink-soft); line-height:1.5; }
.dve-card-sub .pos{ color: var(--pos-text); font-weight:700; }
.dve-card-sub .neg{ color: var(--neg-text); font-weight:700; }
.dve-card-source{ font-size:11px; color: var(--ink-soft); line-height:1.5; padding-top:10px; border-top:1px solid var(--line); margin-top:auto; }

.dve-callout{
  background: var(--gold-soft); border:1px solid rgba(255,194,87,0.35); border-radius: var(--radius-sm);
  padding:18px 20px; margin-top:24px; font-size:14px; line-height:1.7; color: var(--ink); max-width:820px;
}
.dve-callout strong{ color:#B8860B; }

.dve-diff-strip{
  display:flex; align-items:center; justify-content:center; gap:18px; flex-wrap:wrap;
  background: var(--white); border:1px solid var(--line); border-radius: var(--radius-md);
  padding:20px 24px; margin-top:24px; box-shadow: var(--shadow-sm);
}
.dve-diff-side{ text-align:center; }
.dve-diff-side .lbl{ font-size:11px; font-weight:700; letter-spacing:.03em; text-transform:uppercase; color: var(--ink-soft); display:block; }
.dve-diff-side .val{ font-family:'Instrument Sans', sans-serif; font-size:26px; font-weight:600; color: var(--ink); }
.dve-diff-arrow{ font-size:20px; color: var(--ink-soft); }
.dve-diff-result{ text-align:center; }
.dve-diff-result .val{ font-family:'Instrument Sans', sans-serif; font-size:28px; font-weight:700; color: var(--indigo-dark); }
.dve-diff-result .lbl{ font-size:11px; color: var(--ink-soft); }

.dve-chart-card{
  background: var(--white); border:1px solid var(--line); border-radius: var(--radius-md);
  padding:26px 28px; box-shadow: var(--shadow-sm);
}
.dve-chart-head{ display:flex; align-items:baseline; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:16px; }
.dve-chart-head h3{ font-family:'Instrument Sans', sans-serif; font-size:19px; font-weight:600; margin:0; }
.dve-chart-range{ font-size:12px; color: var(--ink-soft); }
.dve-chart-svg{ width:100%; height:180px; display:block; }
.dve-chart-line{ fill:none; stroke: var(--indigo); stroke-width:2; stroke-linejoin:round; stroke-linecap:round; }
.dve-chart-fill{ fill: var(--indigo); opacity:0.08; }
.dve-chart-labels{ display:flex; justify-content:space-between; font-size:11px; color: var(--ink-soft); margin-top:8px; }

.dve-disclaimer{ padding:40px 0 60px; }
.dve-disclaimer p{ font-size:12px; color: var(--ink-soft); line-height:1.7; max-width:860px; }

@media (max-width: 620px){
  .dve-pair-grid{ grid-template-columns:minmax(0,1fr); }
  .dve-diff-strip{ flex-direction:column; gap:10px; }
}
