/* Vienne 7.5 — wave charts (charts.js). Loaded by the app and the landing page. */
/* ======================================================================
   v7.5 — wave charts (charts.js)
   ====================================================================== */
:root{--wv-b:#F5DE8A}
html[data-theme="light"]{--wv-b:#D99A06}
html[data-theme="oled"]{--wv-b:#8C8C8C}
html[data-theme="acid"]{--wv-b:#EAF7D2}
.wv{position:relative;width:100%;user-select:none;-webkit-user-select:none;touch-action:pan-y}
.wv-svg{display:block;width:100%;height:100%;overflow:visible}
.wv-grid{stroke:var(--chart-grid);stroke-width:1}
.wv-grid.zero{stroke:var(--border2)}
.wv-ax,.wv-x{fill:var(--text3);font-size:11px;font-family:var(--font)}
.wv-hatch{fill:var(--iris);opacity:.5}
.wv-hatch-b{fill:var(--wv-b);opacity:.28}
html[data-theme="oled"] .wv-hatch{opacity:.42}
.wv-glow-a{stop-color:var(--iris);stop-opacity:.13}
.wv-glow-b{stop-color:var(--iris);stop-opacity:0}
.wv-line{fill:none;stroke:var(--iris);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:wvDraw 1.1s .1s cubic-bezier(.55,0,.2,1) forwards}
.wv-line-b{fill:none;stroke:var(--wv-b);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;opacity:.9;stroke-dasharray:1;stroke-dashoffset:1;animation:wvDraw 1.1s .25s cubic-bezier(.55,0,.2,1) forwards}
.wv-area,.wv-area-b,.wv-area-glow{opacity:0;animation:wvFade .8s .45s ease forwards}
.wv-cross{stroke:var(--text3);stroke-width:1;stroke-dasharray:3 4;opacity:0;transition:opacity .12s}
.wv-dot{fill:var(--text);stroke:var(--iris);stroke-width:3;opacity:0;transition:opacity .12s}
.wv-dot-b{fill:var(--wv-b);stroke:var(--surface);stroke-width:2;opacity:0;transition:opacity .12s}
.wv.on .wv-cross,.wv.on .wv-dot,.wv.on .wv-dot-b{opacity:1}
.wv-hit{fill:transparent;cursor:crosshair}
.wv-pills{position:absolute;top:2px;left:0;display:inline-flex;gap:6px;pointer-events:none;opacity:0;transition:opacity .12s;white-space:nowrap}
.wv.on .wv-pills{opacity:1}
.wv-pill{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:999px;background:var(--surface3);border:1px solid var(--border2);color:var(--text);font-size:12px;font-weight:650;box-shadow:0 8px 20px -10px rgba(0,0,0,.6)}
.wv-pill i{width:7px;height:7px;border-radius:50%;background:var(--iris)}
.wv-pill.sec i{background:var(--wv-b)}
.wv-pill.sec{font-weight:550;color:var(--text2)}
.wv-xpill{position:absolute;bottom:2px;left:0;height:22px;line-height:22px;padding:0 9px;border-radius:999px;background:var(--text);color:var(--bg);font-size:11px;font-weight:650;pointer-events:none;opacity:0;transition:opacity .12s;white-space:nowrap}
.wv.on .wv-xpill{opacity:1}
.wv-compact .wv-xpill{bottom:auto;top:2px;right:auto;display:none}
.wv-compact .wv-pills{top:0}
.wv-empty{display:grid;place-items:center;min-height:140px;color:var(--text3);font-size:13px;text-align:center;padding:16px}
@keyframes wvDraw{to{stroke-dashoffset:0}}
@keyframes wvFade{to{opacity:1}}
@media (prefers-reduced-motion:reduce){.wv-line,.wv-line-b{animation:none;stroke-dasharray:none}.wv-area,.wv-area-b,.wv-area-glow{animation:none;opacity:1}}

/* Revenue card */
.wv-tabs{display:inline-flex;gap:2px;padding:3px;border-radius:999px;background:var(--surface2);border:1px solid var(--border)}
.wv-tab{height:30px;padding:0 13px;border:0;border-radius:999px;background:transparent;color:var(--text3);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;transition:background .15s,color .15s}
.wv-tab:hover{color:var(--text)}
.wv-tab.on{background:var(--text);color:var(--bg)}
.wv-kpis{display:flex;align-items:flex-end;gap:28px 44px;flex-wrap:wrap;margin:4px 0 6px}
.wv-kpi{display:grid;gap:4px}
.wv-kpi-v{display:flex;align-items:center;gap:10px}
.wv-kpi-v b{font:700 clamp(26px,3vw,36px)/1 var(--display);letter-spacing:-.03em;color:var(--text)}
.wv-kpi-v b.pos{color:var(--green)}.wv-kpi-v b.neg{color:var(--red)}
.wv-kpi span{font-size:12.5px;color:var(--text3)}
.wv-delta{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;font-size:11.5px;font-weight:700}
.wv-delta.up{background:var(--green-soft);color:var(--green)}
.wv-delta.down{background:var(--red-soft);color:var(--red)}
.wv-legend{margin-left:auto;display:flex;gap:14px;font-size:12px;color:var(--text3);padding-bottom:4px}
.wv-legend span{display:inline-flex;align-items:center;gap:6px}
.wv-legend i{width:14px;height:3px;border-radius:3px;background:var(--iris)}
.wv-legend i.b{background:var(--wv-b)}
.home-equity .wv-host{margin:0 -4px}
.wv-trend{margin-top:6px}
@media (max-width:640px){.wv-kpis{gap:16px 24px}.wv-legend{margin-left:0;width:100%}.wv-tabs{flex-wrap:nowrap}.wv-tab{padding:0 10px}}
.wv rect,.wv-svg path{stroke-dasharray:none}
.wv rect{stroke:none!important}
.wv-svg .wv-line,.wv-svg .wv-line-b{stroke-dasharray:1}
.wv-svg .wv-area,.wv-svg .wv-area-b,.wv-svg .wv-area-glow{stroke:none}
.sc-tabs .wv-tab{display:inline-flex;align-items:center;cursor:default}
