/* Equity Fingerprint page: accent, figure frames (title, caption, no JS fallback) and the headline table. Chart internals live in ef-results.css and ef-stocks.css. All rules scoped under body.pc-ef. */
html[data-theme="light"] body.pc-ef { --pc-accent:#b3261e; }
html:not([data-theme="light"]) body.pc-ef { --pc-accent:#ff8a7a; }
body.pc-ef b { font-weight:600; }
body.pc-ef code { font:400 .88em/1.4 'DM Mono',ui-monospace,monospace; overflow-wrap:anywhere; }
body.pc-ef .ef-sr { position:absolute; width:1px; height:1px; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }

/* ---------- figures ---------- */
body.pc-ef .pc-wide { margin-top:28px; }
html body.pc-ef .ef-fig { margin:0; padding:16px 0 0; border-top:1px solid var(--pc-line); min-width:0; background:none !important; box-shadow:none !important; border-radius:0 !important; }
body.pc-ef .ef-cap { margin:0 0 14px; font:500 12px/1.3 'DM Mono',ui-monospace,monospace; letter-spacing:.06em; text-transform:uppercase; color:var(--pc-muted); }
body.pc-ef .ef-body { position:relative; min-width:0; }
body.pc-ef .pc-section .ef-fallback { margin:0; font-size:14px; line-height:1.6; color:var(--pc-text); }
body.pc-ef .ef-body[data-ready="1"] .ef-fallback { display:none; }
body.pc-ef .pc-section .ef-note { margin:14px 0 0; font-size:13px; line-height:1.5; color:var(--pc-muted); max-width:760px; }

/* ---------- headline table ---------- */
body.pc-ef .ef-scroll-wrap { max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
body.pc-ef .ef-table { width:100%; min-width:640px; margin:0; border-collapse:collapse; font-size:14px; }
body.pc-ef .ef-table th, body.pc-ef .ef-table td { padding:8px 14px 8px 0; border-top:0; border-bottom:1px solid var(--pc-line); text-align:left; vertical-align:baseline; }
body.pc-ef .ef-table thead th { border-top:1px solid var(--pc-line); }
body.pc-ef .ef-table tbody th[scope="row"] { font-weight:500; font-family:'DM Mono',ui-monospace,monospace; font-size:13px; white-space:nowrap; }
body.pc-ef .ef-table td.ef-num { font:600 15px/1.4 'DM Sans',system-ui,sans-serif; font-variant-numeric:tabular-nums; color:var(--pc-accent); white-space:nowrap; }
body.pc-ef .ef-table td:last-child { padding-right:0; color:var(--pc-muted); font-variant-numeric:tabular-nums; }

@media (max-width:599px) {
  body.pc-ef .pc-wide { margin-top:22px; }
  body.pc-ef .ef-table { font-size:13px; }
  body.pc-ef .ef-table th, body.pc-ef .ef-table td { padding-right:10px; }
}
body.pc-ef .pc-section .pc-wide + p { margin-top:24px; }
