/* NOVO Final — Complete Additions */

/* ─── Market Strip ────────────────────────────────── */
.vf-market-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:28px;width:100%;max-width:880px}
.vf-ms{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:16px 12px;text-align:center}
.vf-ms-n{display:block;font-size:22px;font-weight:700;color:#fff;letter-spacing:-.02em}
.vf-ms-l{display:block;font-size:10.5px;color:rgba(255,255,255,.4);margin-top:4px;line-height:1.4}
.vf-ms-l em{color:rgba(255,255,255,.25);font-style:normal}

/* ─── Competitor Context ─────────────────────────── */
.vf-comp-ctx{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;width:100%;max-width:940px;margin-top:28px}
.vf-cc{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:20px 16px;display:flex;flex-direction:column;gap:8px}
.vf-cc-novo{background:rgba(0,113,227,.12);border-color:rgba(0,113,227,.3)}
.vf-cc-logo{font-size:12px;font-weight:800;color:rgba(255,255,255,.45);letter-spacing:.06em;text-transform:uppercase}
.vf-cc-rev{font-size:21px;font-weight:700;color:#fff;letter-spacing:-.02em}
.vf-cc-label{font-size:10px;color:rgba(255,255,255,.38);line-height:1.4}
.vf-cc-model{font-size:11.5px;color:rgba(255,255,255,.6);line-height:1.5;border-top:1px solid rgba(255,255,255,.08);padding-top:8px}

/* ─── Key Insight ────────────────────────────────── */
.vf-insight{display:flex;gap:14px;align-items:flex-start;background:rgba(0,113,227,.1);border:1px solid rgba(0,113,227,.25);border-radius:12px;padding:18px 20px;margin-top:20px;width:100%;max-width:940px}
.vf-insight-label{font-size:11px;font-weight:800;color:#0071e3;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;padding-top:1px}
.vf-insight-text{font-size:13px;color:rgba(255,255,255,.75);line-height:1.55}

/* ─── Persona Card additions ─────────────────────── */
.vf-persona-timeline{font-size:11.5px;color:#09814a;font-weight:600;margin-top:4px}

/* ─── Milestone Funding Table ────────────────────── */
.vf-milestone-table{width:100%;max-width:880px;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.1);margin-top:24px}
.vf-mth{display:grid;grid-template-columns:100px 100px 1fr 120px;padding:10px 18px;background:rgba(255,255,255,.1);font-size:11px;font-weight:700;color:rgba(255,255,255,.5);letter-spacing:.06em;text-transform:uppercase}
.vf-mtr{display:grid;grid-template-columns:100px 100px 1fr 120px;padding:12px 18px;font-size:12.5px;color:rgba(255,255,255,.75);border-bottom:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.03)}
.vf-mtr:nth-child(even){background:rgba(255,255,255,.055)}
.vf-mtr:last-child{border-bottom:none}
.vf-mt-tranche{font-weight:700;color:#0071e3}
.vf-mt-amount{font-weight:700;color:#e8b84b}
.vf-mt-milestone{color:rgba(255,255,255,.7);line-height:1.4}
.vf-mt-unlock{font-size:11px;color:#09814a;font-weight:600}

/* ─── P&L Table ─────────────────────────────────── */
.vf-pl-table{width:100%;max-width:860px;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.1);margin-top:24px}
.vf-plh{display:grid;grid-template-columns:180px repeat(4,1fr);padding:10px 18px;background:rgba(255,255,255,.1);font-size:11px;font-weight:700;color:rgba(255,255,255,.5);letter-spacing:.06em;text-transform:uppercase}
.vf-plr{display:grid;grid-template-columns:180px repeat(4,1fr);padding:10px 18px;font-size:12.5px;color:rgba(255,255,255,.7);border-bottom:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.03)}
.vf-plr:nth-child(even){background:rgba(255,255,255,.055)}
.vf-plr-total{background:rgba(9,129,74,.15)!important;font-weight:700;color:#4cd964!important}
.vf-plr-burn{background:rgba(214,48,49,.1)!important;color:#e17055!important}
.vf-plr-break{background:rgba(9,129,74,.08)!important;font-weight:700;color:#00b894!important}

/* ─── Revenue Table ──────────────────────────────── */
.vf-rev-table{width:100%;max-width:860px;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.1);margin-top:20px}
.vf-rvh{display:grid;grid-template-columns:2fr 70px 90px 90px;padding:10px 18px;background:rgba(255,255,255,.1);font-size:11px;font-weight:700;color:rgba(255,255,255,.5);letter-spacing:.06em;text-transform:uppercase}
.vf-rvsec{padding:7px 18px;background:rgba(0,113,227,.15);font-size:11px;font-weight:700;color:#0071e3;letter-spacing:.04em;text-transform:uppercase}
.vf-rvr{display:grid;grid-template-columns:2fr 70px 90px 90px;padding:10px 18px;font-size:12.5px;color:rgba(255,255,255,.7);border-bottom:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.03)}
.vf-rvr:nth-child(even){background:rgba(255,255,255,.055)}
.vf-rvr-total{background:rgba(9,129,74,.15)!important;font-weight:700;color:#4cd964!important}
.vf-zero{color:#e67e22!important;font-weight:700}

/* ─── Honest Note ────────────────────────────────── */
.vf-honest{display:flex;gap:12px;align-items:flex-start;background:rgba(230,126,34,.1);border:1px solid rgba(230,126,34,.25);border-radius:10px;padding:14px 16px;margin-bottom:16px;width:100%;max-width:860px}
.vf-honest-icon{font-size:16px;flex-shrink:0}
.vf-honest-text{font-size:12.5px;color:rgba(255,255,255,.75);line-height:1.5}
.vf-honest-text strong{color:#e67e22}

/* ─── Competition honest note ────────────────────── */
.vf-comp-note{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:18px 20px;margin-top:20px;width:100%;max-width:880px}
.vf-comp-note p{font-size:12.5px;color:rgba(255,255,255,.65);line-height:1.55;margin-bottom:8px}
.vf-comp-note p:last-child{margin-bottom:0}
.vf-comp-note strong{color:#fff}

/* ─── Valuation note ─────────────────────────────── */
.vf-val-note{background:rgba(9,129,74,.08);border:1px solid rgba(9,129,74,.2);border-radius:10px;padding:14px 18px;margin-top:16px;width:100%;max-width:880px}
.vf-val-note p{font-size:12.5px;color:rgba(255,255,255,.7);line-height:1.5}
.vf-val-note strong{color:#4cd964}

/* ─── Priority note ──────────────────────────────── */
.vf-prio-note{background:rgba(0,113,227,.08);border:1px solid rgba(0,113,227,.2);border-radius:8px;padding:12px 14px;margin-top:12px;font-size:12px;color:rgba(255,255,255,.65);line-height:1.5}
.vf-prio-note strong{color:#0071e3}

/* ─── Downside box ───────────────────────────────── */
.vf-downside{background:rgba(214,48,49,.07);border:1px solid rgba(214,48,49,.2);border-radius:10px;padding:16px 18px;margin-top:16px;width:100%;max-width:880px}
.vf-downside h4{font-size:12px;font-weight:700;color:#e17055;margin-bottom:8px;text-transform:uppercase;letter-spacing:.06em}
.vf-downside p{font-size:12px;color:rgba(255,255,255,.65);line-height:1.5}

/* ─── Responsive ─────────────────────────────────── */
@media(max-width:768px){
  .vf-market-strip{grid-template-columns:repeat(2,1fr)}
  .vf-comp-ctx{grid-template-columns:1fr}
  .vf-mth,.vf-mtr{grid-template-columns:80px 80px 1fr 90px;font-size:10px}
  .vf-plh,.vf-plr{grid-template-columns:130px repeat(4,1fr);font-size:10px}
  .vf-rvh,.vf-rvr{grid-template-columns:1fr 55px 75px 75px;font-size:10px}
}
