/* Equity Fingerprint page: results figures (splits, headline, ladder, experiments). */

/* verdict colours: dark is the base theme, light is set on html[data-theme="light"] */
body.pc-ef { --ef-helped:#81c784; --ef-hurt:#ef9a9a; }
html[data-theme="light"] body.pc-ef { --ef-helped:#2e7d32; --ef-hurt:#c62828; }

body.pc-ef .ef-body { position:relative; }
body.pc-ef .ef-controls { display:flex; flex-wrap:wrap; align-items:center; gap:10px 22px; margin:0 0 14px; }
body.pc-ef .ef-controls[hidden], body.pc-ef .ef-pills[hidden] { display:none; }
body.pc-ef .ef-pills { display:flex; flex-wrap:wrap; gap:8px; }
html body.pc-ef .ef-pills button { margin:0; min-height:34px; padding:6px 14px; border-radius:999px; cursor:pointer;
  font:500 12.5px/1.4 'DM Mono',ui-monospace,monospace;
  border:1px solid var(--pc-line) !important; background:transparent !important; color:var(--pc-muted) !important; box-shadow:none !important;
  transition:color .15s,border-color .15s; }
html body.pc-ef .ef-pills button:hover { color:var(--pc-text) !important; border-color:var(--pc-muted) !important; background:transparent !important; }
html body.pc-ef .ef-pills button[aria-pressed="true"] { color:var(--pc-text) !important; border-color:var(--pc-accent) !important; background:var(--pc-chip) !important; }
html body.pc-ef .ef-pills button:focus-visible { outline:2px solid var(--pc-text); outline-offset:2px; }

body.pc-ef .ef-scroll { overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; }
body.pc-ef .ef-view { min-width:0; }
body.pc-ef .ef-svg { display:block; width:100%; height:auto; overflow:visible; }

/* text inside the charts (sizes are in viewBox units; never changed in media queries) */
body.pc-ef .ef-svg text { font:500 12.5px 'DM Mono',ui-monospace,monospace; fill:var(--pc-muted); }
body.pc-ef .ef-svg text.t-b { fill:var(--pc-text); }
body.pc-ef .ef-svg text.t-hi { fill:var(--pc-accent); font-weight:600; }
body.pc-ef .ef-svg text.t-tick { fill:var(--pc-muted); }
body.pc-ef .ef-svg text.t-sub { fill:var(--pc-muted); font-size:12.5px; letter-spacing:.06em; text-transform:uppercase; }
body.pc-ef .ef-svg text.t-v { font:600 14px 'DM Sans',system-ui,sans-serif; fill:var(--pc-text);
  paint-order:stroke; stroke:var(--pc-bg); stroke-width:4px; stroke-linejoin:round; }
body.pc-ef .ef-svg text.t-fold { fill:var(--pc-text); font:500 14px 'DM Mono',ui-monospace,monospace; }
body.pc-ef .ef-svg text.t-val { fill:var(--pc-text); font-size:12.5px; }
/* narrow row labels sit over grid and reference lines: halo in the page background */
body.pc-ef .ef-svg text.t-lab { paint-order:stroke; stroke:var(--pc-bg); stroke-width:4px; stroke-linejoin:round; }
body.pc-ef .ef-svg .grid { stroke:var(--pc-line); stroke-width:1; }
body.pc-ef .ef-svg .axis { stroke:var(--pc-muted); stroke-width:1; }
body.pc-ef .ef-svg .ef-sep { stroke:var(--pc-line); stroke-width:1; }
body.pc-ef .ef-svg .ef-zero { stroke:var(--pc-text); stroke-width:1.4; }
body.pc-ef .ef-svg .ef-reliab { stroke:var(--pc-text); stroke-width:1.5; stroke-dasharray:5 4; }

/* bars and bands */
body.pc-ef .ef-svg .ef-bar { fill:var(--pc-text); opacity:.3; }
body.pc-ef .ef-svg .ef-bar.hl { fill:var(--pc-accent); opacity:1; }
body.pc-ef .ef-svg .ef-bar.hl2 { fill:var(--pc-accent); opacity:.6; }
body.pc-ef .ef-svg .ef-whisk { stroke:var(--pc-text); stroke-width:1.8; }
body.pc-ef .ef-svg .ef-band { fill:var(--pc-muted); }
body.pc-ef .ef-svg .b-prices { opacity:.2; }
body.pc-ef .ef-svg .b-obs { opacity:.4; }
body.pc-ef .ef-svg .b-train { opacity:.5; }
body.pc-ef .ef-svg .b-val { fill:var(--pc-accent); opacity:.5; }
body.pc-ef .ef-svg .b-test { fill:var(--pc-accent); opacity:1; }
body.pc-ef .ef-svg .b-fold { fill:var(--pc-chip); stroke:var(--pc-accent); stroke-width:1.5; opacity:1; }

/* hover and focus backdrops */
body.pc-ef .ef-svg .ef-rowbg, body.pc-ef .ef-svg .ef-hitbg { fill:var(--pc-chip); stroke:none; opacity:0; pointer-events:all; }
body.pc-ef .ef-svg .ef-row:hover .ef-rowbg, body.pc-ef .ef-svg .ef-hit:hover .ef-hitbg { opacity:.7; }
body.pc-ef .ef-svg g[tabindex] { outline:none; }
body.pc-ef .ef-svg g[tabindex]:focus-visible .ef-rowbg, body.pc-ef .ef-svg g[tabindex]:focus-visible .ef-hitbg {
  opacity:1; stroke:var(--pc-text); stroke-width:1.5; }
body.pc-ef .ef-svg .ef-fold { cursor:default; }
body.pc-ef .ef-svg .ef-fold:hover .b-fold, body.pc-ef .ef-svg .ef-fold:focus-visible .b-fold { fill:var(--pc-line); }
body.pc-ef .ef-svg .ef-fold:focus-visible .b-fold { stroke:var(--pc-text); stroke-width:2.5; }

/* ladder */
body.pc-ef .ef-svg .ef-stem { stroke:var(--pc-muted); stroke-width:2.5; }
body.pc-ef .ef-svg .ef-stem.drop { stroke-dasharray:4 3; }
body.pc-ef .ef-svg .ef-base { stroke:var(--pc-muted); stroke-width:2; opacity:.65; }
body.pc-ef .ef-svg .ef-pt.pt-raw { fill:var(--pc-bg); stroke:var(--pc-accent); stroke-width:2; }
body.pc-ef .ef-svg .ef-pt.pt-fe { fill:var(--pc-accent); stroke:var(--pc-bg); stroke-width:1.5; }

/* experiments: verdict colours (shape plus colour; hollow means no interval) */
body.pc-ef .ef-svg .ef-dot { stroke:var(--pc-bg); stroke-width:1.5; }
body.pc-ef .ef-svg .ef-dot.v-helped { fill:var(--ef-helped); }
body.pc-ef .ef-svg .ef-dot.v-within-noise { fill:var(--pc-muted); }
body.pc-ef .ef-svg .ef-dot.v-hurt { fill:var(--ef-hurt); }
body.pc-ef .ef-svg .ef-dot.v-no-interval { fill:var(--pc-bg); stroke:var(--pc-muted); stroke-width:2; }
body.pc-ef .ef-svg .ef-whisk.v-helped { stroke:var(--ef-helped); }
body.pc-ef .ef-svg .ef-whisk.v-within-noise { stroke:var(--pc-muted); }
body.pc-ef .ef-svg .ef-whisk.v-hurt { stroke:var(--ef-hurt); }
body.pc-ef .ef-svg text.t-val.v-helped { fill:var(--ef-helped); }
body.pc-ef .ef-svg text.t-val.v-hurt { fill:var(--ef-hurt); }
body.pc-ef .ef-svg text.t-val.v-within-noise, body.pc-ef .ef-svg text.t-val.v-no-interval { fill:var(--pc-muted); }

/* sentences under the charts */
body.pc-ef .ef-sentence { margin:14px 0 0; font-size:15px; line-height:1.55; color:var(--pc-text); }
body.pc-ef .ef-sentence:empty { display:none; }
body.pc-ef .ef-sub { margin:6px 0 0; font:400 13px/1.5 'DM Mono',ui-monospace,monospace; color:var(--pc-muted); }
body.pc-ef .ef-sub:empty { display:none; }

/* tooltip: one per figure, no shadow */
body.pc-ef .ef-tip { position:absolute; z-index:5; max-width:300px; pointer-events:none; padding:8px 11px;
  border:1px solid var(--pc-muted); border-radius:6px; background:var(--pc-bg); color:var(--pc-text);
  font:400 13px/1.45 'DM Sans',system-ui,sans-serif; box-shadow:none; }
body.pc-ef .ef-tip[hidden] { display:none; }
body.pc-ef .ef-tip span { display:block; }
body.pc-ef .ef-tip .ef-tip-h { font-weight:600; }
body.pc-ef .ef-tip .ef-tip-l { color:var(--pc-muted); font-family:'DM Mono',ui-monospace,monospace; font-size:12px; }

@media (prefers-reduced-motion:no-preference) {
  body.pc-ef .ef-view .ef-svg { animation:ef-in .2s ease-out; }
  @keyframes ef-in { from { opacity:0; } to { opacity:1; } }
}
@media (prefers-reduced-motion:reduce) {
  html body.pc-ef .ef-pills button { transition:none; }
}
