/* ============================================================
   ap-prospect-dossier.css — EP Subject Dossier (batch 1, in-app).
   LIFTED from ~/Desktop/briefing-mockups/editorial-precision-briefing.html
   (the approved Editorial Precision direction) and scoped ENTIRELY under
   .ep-dossier. Consumes the permanent EP theme where present; defines local
   custom properties on the root class only — ZERO global overrides.
   No scores, no meters, no confidence bars (spec §7): the mockup's fit-score
   widget is deliberately NOT carried over. Red reserved for compliance.
   ============================================================ */
.ep-dossier{
  --dz-canvas:#F3F5F8; --dz-card:#FFFFFF;
  --dz-ink:#0D1626; --dz-body:#293341; --dz-navy:#1B2A52; --dz-navy-600:#243A6E;
  --dz-muted:#586273; --dz-line:#E1E5EC; --dz-line-2:#EDEFF4; --dz-border:#CDD5E0;
  --dz-red:#B22234; --dz-gold:#9A7B43; --dz-green:#1E7A52;
  --dz-r:10px; --dz-r-lg:14px;
  --dz-sh:0 8px 26px -14px rgba(13,22,38,.20), 0 1px 2px rgba(13,22,38,.05);
  --dz-sans:'Inter',system-ui,-apple-system,sans-serif;
  --dz-serif:'Newsreader',Georgia,serif;
  --dz-mono:'IBM Plex Mono',ui-monospace,monospace;
  font-family:var(--dz-sans); color:var(--dz-body);
  max-width:1120px; margin:0 auto; padding:24px 20px 60px;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
.ep-dossier *{ box-sizing:border-box; margin:0; padding:0; }

/* document card (lifted .doc / .doc-head) */
.ep-dossier .dz-doc{ background:var(--dz-card); border:1px solid var(--dz-line); border-radius:var(--dz-r-lg); box-shadow:var(--dz-sh); overflow:hidden; }
.ep-dossier .dz-head{ padding:28px 34px 24px; border-bottom:1px solid var(--dz-line-2); position:relative; }
.ep-dossier .dz-head::before{ content:""; position:absolute; left:0; top:0; right:0; height:3px; background:linear-gradient(90deg,var(--dz-navy) 0,var(--dz-navy) 60%,var(--dz-red) 60%); }
.ep-dossier .dz-ticker{ font-family:var(--dz-mono); font-size:11.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--dz-navy); font-weight:600; margin-bottom:9px; }
.ep-dossier .dz-head h1{ font-family:var(--dz-serif); font-size:38px; font-weight:600; letter-spacing:-.02em; color:var(--dz-ink); line-height:1.05; }
.ep-dossier .dz-sub{ font-size:13.5px; color:var(--dz-muted); margin-top:6px; font-weight:500; }
.ep-dossier .dz-entry{ font-family:var(--dz-mono); font-size:10px; letter-spacing:.1em; text-transform:uppercase; color:var(--dz-gold); font-weight:600; margin-left:8px; }
.ep-dossier .dz-golddot{ display:inline-block; width:7px; height:7px; border-radius:50%; background:var(--dz-gold); box-shadow:0 0 0 3px rgba(154,123,67,.16); margin-right:5px; vertical-align:1px; }
.ep-dossier .dz-posture{ font-family:var(--dz-serif); font-style:italic; font-size:14.5px; color:var(--dz-muted); margin-top:10px; max-width:66ch; }
.ep-dossier .dz-stamp{ font-family:var(--dz-mono); font-size:10.5px; color:var(--dz-muted); margin-top:10px; letter-spacing:.04em; }

/* two-column body (lifted .doc-body / .narr / .rail) */
.ep-dossier .dz-body{ display:grid; grid-template-columns:minmax(0,1fr) 268px; }
.ep-dossier .dz-narr{ padding:30px 34px; border-right:1px solid var(--dz-line-2); min-width:0; }

/* narrative sections (lifted .nsec) */
.ep-dossier .dz-sec{ margin-bottom:26px; }
.ep-dossier .dz-sec h2{ font-family:var(--dz-mono); font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--dz-navy); font-weight:600; margin-bottom:10px; display:flex; align-items:center; gap:10px; }
.ep-dossier .dz-sec h2::after{ content:""; flex:1; height:1px; background:var(--dz-line); }
.ep-dossier .dz-sec p{ font-family:var(--dz-serif); font-size:16.5px; line-height:1.62; color:#1E2733; max-width:66ch; }
.ep-dossier .dz-sec p + p{ margin-top:11px; }

/* openers + questions (lifted .ki row pattern) */
.ep-dossier .dz-row{ display:flex; gap:13px; padding:10px 0; border-top:1px solid var(--dz-line-2); }
.ep-dossier .dz-row:first-child{ border-top:0; }
.ep-dossier .dz-mark{ font-family:var(--dz-serif); font-size:16px; color:var(--dz-navy); flex:none; line-height:1.4; }
.ep-dossier .dz-questions .dz-mark{ color:var(--dz-gold); font-size:13px; padding-top:2px; }
.ep-dossier .dz-text{ font-size:13.5px; line-height:1.55; color:var(--dz-body); }

/* freshness note (calm, gold — never alarm) */
.ep-dossier .dz-freshwrap{ margin:0 0 24px; }
.ep-dossier .dz-fresh{ background:var(--dz-canvas); border:1px solid var(--dz-line); border-left:3px solid var(--dz-gold); border-radius:var(--dz-r); padding:12px 15px; font-size:12.5px; line-height:1.5; color:var(--dz-body); }
.ep-dossier .dz-fresh + .dz-fresh{ margin-top:8px; }

/* additional verified details (lifted .backing / .ki) — in-app only */
.ep-dossier .dz-backing{ border-top:1px solid var(--dz-line-2); margin-top:4px; margin-bottom:26px; padding-top:18px; }
.ep-dossier .dz-backing summary{ font-family:var(--dz-mono); font-size:10.5px; letter-spacing:.13em; text-transform:uppercase; color:var(--dz-navy); font-weight:600; cursor:pointer; list-style:none; display:flex; align-items:center; gap:9px; padding:12px 0; margin:-12px 0; } /* padding+negative margin = 38px tap target, zero visual shift */
.ep-dossier .dz-backing summary::-webkit-details-marker{ display:none; }
.ep-dossier .dz-chev{ transition:transform .2s; color:var(--dz-muted); }
.ep-dossier .dz-backing[open] .dz-chev{ transform:rotate(90deg); }
@media (prefers-reduced-motion:reduce){ .ep-dossier .dz-chev{ transition:none; } }
.ep-dossier .dz-ki{ margin-top:14px; }
.ep-dossier .dz-kirow{ display:flex; gap:13px; align-items:baseline; padding:10px 0; border-top:1px solid var(--dz-line-2); }
.ep-dossier .dz-kirow:first-child{ border-top:0; }
.ep-dossier .dz-kt{ font-size:13.5px; line-height:1.5; color:var(--dz-body); }
.ep-dossier .dz-chip{ display:inline-flex; align-items:center; font-family:var(--dz-mono); font-size:10px; color:var(--dz-navy); background:var(--dz-canvas); border:1px solid var(--dz-line); border-radius:5px; padding:1px 6px; margin-left:auto; flex:none; }
.ep-dossier .dz-sources{ display:flex; flex-wrap:wrap; gap:8px; }
.ep-dossier .dz-sources .dz-chip{ margin-left:0; }

/* the signature rail (lifted .rail) — key details, NO scores/meters */
.ep-dossier .dz-rail{ background:linear-gradient(180deg,#13213F,#0D1730); color:#fff; position:relative; overflow:hidden; }
.ep-dossier .dz-rail::before{ content:""; position:absolute; inset:0; opacity:.5; pointer-events:none;
  background-image:
    repeating-radial-gradient(circle at 88% -8%, rgba(255,255,255,.05) 0 1px, transparent 1px 9px),
    repeating-radial-gradient(circle at 10% 108%, rgba(178,34,52,.06) 0 1px, transparent 1px 11px);
  -webkit-mask-image:linear-gradient(180deg,#000,transparent 80%); mask-image:linear-gradient(180deg,#000,transparent 80%); }
.ep-dossier .dz-rail > *{ position:relative; }
.ep-dossier .dz-rail-sec{ padding:20px 22px; border-bottom:1px solid rgba(255,255,255,.08); }
.ep-dossier .dz-rail-sec:last-child{ border-bottom:0; }
.ep-dossier .dz-rail-k{ font-family:var(--dz-mono); font-size:9.5px; letter-spacing:.16em; text-transform:uppercase; color:rgba(255,255,255,.55); margin-bottom:10px; }
.ep-dossier .dz-rail-v{ font-family:var(--dz-serif); font-size:26px; font-weight:600; color:#fff; line-height:1; letter-spacing:-.01em; }
.ep-dossier .dz-rail-t{ font-size:12.5px; line-height:1.5; color:rgba(255,255,255,.86); }

/* footer (lifted .doc-foot) */
.ep-dossier .dz-foot{ background:var(--dz-navy); color:rgba(255,255,255,.8); padding:13px 34px; display:flex; align-items:center; justify-content:space-between; gap:12px; font-family:var(--dz-mono); font-size:10.5px; letter-spacing:.08em; flex-wrap:wrap; }

/* mobile: rail collapses ABOVE the story (spec) */
@media (max-width:760px){
  .ep-dossier .dz-backing summary{ margin:0; } /* mobile keeps the full-height target visually */
  .ep-dossier{ padding:12px 10px 40px; }
  .ep-dossier .dz-body{ grid-template-columns:1fr; }
  .ep-dossier .dz-rail{ order:-1; display:grid; grid-template-columns:1fr 1fr; }
  .ep-dossier .dz-narr{ border-right:0; padding:22px 18px; }
  .ep-dossier .dz-head{ padding:22px 18px 18px; }
  .ep-dossier .dz-head h1{ font-size:28px; }
  .ep-dossier .dz-foot{ padding:12px 18px; }
}

/* ── Public Detail coverage badge (contract update 2026-07-03) ──
   quiet line + small status dot ONLY — never a warning panel. Red is the
   muted-rust EP exception ruled for coverage; it reads "thin footprint",
   never "bad prospect". */
.ep-dossier .dz-coverage{display:flex;align-items:center;gap:7px;margin-top:8px;font-size:12.5px;color:#293341;}
.ep-dossier .dz-covdot{width:9px;height:9px;border-radius:50%;flex:none;}
.ep-dossier .dz-covdot--green{background:#2E7D4F;}
.ep-dossier .dz-covdot--yellow{background:#B58A2A;}
.ep-dossier .dz-covdot--red{background:#A6493B;}
.ep-dossier .dz-chip--label{background:#F5F1E8;color:#9A7B43;border-color:#E5DCC8;font-weight:700;}

/* ── Profile Snapshot (IA revision 2026-07-03) ── */
.ep-dossier .dz-sn{width:100%;border-collapse:collapse;font-size:13px;line-height:1.55;}
.ep-dossier .dz-sn-k{font-family:var(--ep-mono,Menlo,monospace);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#586273;padding:7px 14px 7px 0;width:128px;vertical-align:top;}
.ep-dossier .dz-sn-v{border-bottom:1px solid #EDEFF4;padding:7px 0;}
.ep-dossier .dz-sn-pc{font-family:Newsreader,Georgia,serif;font-style:italic;color:#3A4353;}
.ep-dossier .dz-sn-st{font-family:var(--ep-mono,Menlo,monospace);font-size:9px;font-weight:700;letter-spacing:.06em;color:#2E7D4F;}

/* M2 (2026-07-05): work-history timeline (Experience section) */
.ep-dossier .dz-xplist{ display:flex; flex-direction:column; }
.ep-dossier .dz-xp{ padding:9px 0; border-top:1px solid var(--dz-line); }
.ep-dossier .dz-xp:first-child{ border-top:0; }
.ep-dossier .dz-xp-role{ font-weight:650; font-size:14px; color:var(--dz-ink); }
.ep-dossier .dz-xp-org{ font-size:13px; color:var(--dz-navy); }
.ep-dossier .dz-xp-dates{ font-family:var(--dz-mono,Menlo,monospace); font-size:11px; color:var(--dz-muted); letter-spacing:.02em; margin-top:1px; }
.ep-dossier .dz-xp-more{ font-family:var(--dz-mono,Menlo,monospace); font-size:11px; color:var(--dz-muted); padding-top:9px; border-top:1px solid var(--dz-line); margin-top:2px; }

/* M3 (2026-07-05): interests / skills chip clouds */
.ep-dossier .dz-cloud{ display:flex; flex-wrap:wrap; gap:6px; }
.ep-dossier .dz-cloud-chip{ font-family:var(--dz-sans); font-size:11.5px; line-height:1.3; background:var(--dz-card); border:1px solid var(--dz-line); color:var(--dz-body); padding:3px 9px; border-radius:14px; }
.ep-dossier .dz-cloud-chip--hot{ border-color:var(--dz-gold); background:color-mix(in srgb, var(--dz-gold) 10%, var(--dz-card)); color:var(--dz-ink); font-weight:600; }

/* M4 (2026-07-05): paid-tier "Verification unlocks" slot */
.ep-dossier .dz-lock{ font-family:var(--dz-mono,Menlo,monospace); font-size:10px; letter-spacing:.03em; color:var(--dz-gold); background:color-mix(in srgb, var(--dz-gold) 12%, transparent); border:1px solid color-mix(in srgb, var(--dz-gold) 34%, var(--dz-line)); border-radius:5px; padding:1px 7px; white-space:nowrap; }

/* M5 (2026-07-05): clickable verified-source link on detail cards */
.ep-dossier a.dz-src-link{ text-decoration:none; cursor:pointer; }
.ep-dossier a.dz-src-link:hover{ border-color:var(--dz-navy); color:var(--dz-navy); }
.ep-dossier a.dz-src-link:focus-visible{ outline:2px solid var(--dz-navy); outline-offset:2px; }

/* M4 (2026-07-05): "From LinkedIn" unverified display channel (Web tier) */
.ep-dossier .dz-li-note{ font-size:11px; color:var(--dz-gold); background:color-mix(in srgb, var(--dz-gold) 9%, transparent); border:1px solid color-mix(in srgb, var(--dz-gold) 26%, var(--dz-line)); border-radius:6px; padding:6px 10px; margin-bottom:12px; }
.ep-dossier .dz-li-head{ font-family:var(--dz-serif); font-size:15px; color:var(--dz-ink); margin-bottom:2px; }
.ep-dossier .dz-li-cur{ font-size:13px; color:var(--dz-navy); font-weight:600; margin-bottom:8px; }
.ep-dossier .dz-li-about{ font-size:13px; color:var(--dz-body); line-height:1.5; margin:0 0 12px; }
.ep-dossier .dz-li-sub{ font-family:var(--dz-mono); font-size:10px; letter-spacing:.08em; text-transform:uppercase; color:var(--dz-muted); margin:12px 0 6px; }
.ep-dossier .dz-li-row{ font-size:13px; color:var(--dz-body); padding:3px 0 3px 12px; border-left:2px solid var(--dz-line); margin-bottom:3px; }
