/*!
 * PPLI.com — Hedge Fund X-Ray
 * Additive to xray-1.0.3.css and sim-1.0.0.css, which supply the panel, table,
 * tile, tooltip, chip and setup-grid primitives. Only what this instrument
 * adds lives here.
 *
 * The .pp prefixes are load-bearing — see the specificity note in the X-Ray
 * stylesheet. Version lives in the filename; this host ignores ?ver.
 *
 * v1.0.0 — 2026-08-30
 */

/* ------------------------------------------------------------- waterfall */
/* The central object on the page: gross return at the top, each deduction
 * carved out of it in turn, what survives at the bottom. The bars tile the
 * gross bar exactly, so the partition is legible without arithmetic. */
.pp .hx-wf{margin:0}
.pp .hx-row{display:grid;grid-template-columns:230px 1fr 150px;gap:20px;align-items:center;
	padding:14px 0;border-bottom:1px solid var(--cr2)}
.pp .hx-row:last-child{border-bottom:none}
.pp .hx-row .lb{font-family:'Source Serif 4',Georgia,serif;font-size:14px;line-height:1.45;color:var(--tx2)}
.pp .hx-row .lb small{display:block;font-size:11.5px;color:var(--tx3);margin-top:2px}
.pp .hx-row .amt{font-family:'DM Sans',sans-serif;font-size:14px;color:var(--tx1);text-align:right;white-space:nowrap}
.pp .hx-row .amt em{font-style:normal;font-size:11.5px;color:var(--tx3);display:block;margin-top:2px}

.pp .hx-track{position:relative;height:26px;background:var(--cr2)}
.pp .hx-track i{position:absolute;top:0;height:26px;display:block}
.pp .hx-track i.base{background:#C7C1B4}
.pp .hx-track i.spent{background:#E7E4DC}
.pp .hx-track i.keep{background:var(--gd)}
.pp .hx-track i.cut{background:rgba(10,15,23,.62)}
.pp .hx-track i.cut2{background:rgba(10,15,23,.44)}
.pp .hx-track i.taxc{background:rgba(10,15,23,.28)}
.pp .hx-track i.comp{background:#C7C1B4}
.pp .hx-track i.neg{background:#9AA88A}

.pp .hx-row.head{border-bottom:1px solid var(--rl);padding-bottom:16px}
.pp .hx-row.head .lb{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;color:var(--nv)}
.pp .hx-row.head .amt{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;color:var(--nv)}
.pp .hx-row.total{border-top:1px solid var(--nv);border-bottom:none;padding-top:18px;margin-top:6px}
.pp .hx-row.total .lb{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;color:var(--nv)}
.pp .hx-row.total .amt{font-family:'Cormorant Garamond',Georgia,serif;font-size:26px;color:var(--gd);font-weight:500}
.pp .hx-row.sub .lb{padding-left:18px;position:relative}
.pp .hx-row.sub .lb::before{content:'';position:absolute;left:2px;top:9px;width:8px;height:1px;background:var(--rl)}

/* ------------------------------------------------------------- retained */
.pp .hx-keep{border:1px solid var(--rl);border-top:2px solid var(--gd);background:#fff;
	padding:30px 34px;margin:0 0 22px;display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:center}
.pp .hx-keep .big{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(46px,8vw,72px);
	line-height:1;color:var(--gd);font-weight:400;white-space:nowrap}
.pp .hx-keep .big.neg{color:#8A877E}
.pp .hx-keep p{font-family:'Source Serif 4',Georgia,serif;font-size:14.5px;line-height:1.8;color:var(--tx2);margin:0}
.pp .hx-keep p b{color:var(--nv);font-weight:600}
.pp .hx-keep .k{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--tx3);font-weight:700;margin:0 0 8px}

/* --------------------------------------------------------------- scenarios */
.pp .hx-sc{width:100%;border-collapse:collapse;min-width:760px}
.pp .hx-sc th{font-family:'DM Sans',sans-serif;font-size:9px;letter-spacing:.13em;text-transform:uppercase;
	color:var(--tx3);font-weight:700;padding:0 12px 12px 0;text-align:right;border-bottom:1px solid var(--rl)}
.pp .hx-sc th:first-child{text-align:left}
.pp .hx-sc td{font-family:'DM Sans',sans-serif;font-size:13.5px;color:var(--tx1);text-align:right;
	padding:13px 12px 13px 0;border-bottom:1px solid var(--cr2)}
.pp .hx-sc td:first-child{text-align:left;font-family:'Source Serif 4',Georgia,serif;font-size:14px;color:var(--tx2)}
.pp .hx-sc td:first-child small{display:block;font-size:11.5px;color:var(--tx3);margin-top:2px}
.pp .hx-sc tr.on td{background:rgba(176,149,72,.09)}
.pp .hx-sc tr.on td:first-child{font-weight:600;color:var(--nv)}
.pp .hx-sc td.hi{color:var(--nv);font-weight:600}
.pp .hx-sc tbody tr{cursor:pointer;transition:background .2s}
.pp .hx-sc tbody tr:hover td{background:#FCFBF8}
.pp .hx-sc tbody tr.on:hover td{background:rgba(176,149,72,.13)}

/* ------------------------------------------------------------- fee terms */
.pp .hx-terms{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--rl);
	border:1px solid var(--rl);margin:0 0 22px}
.pp .hx-terms > div{background:#fff;padding:18px 22px}
.pp .hx-terms label{display:block;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;
	color:var(--tx3);font-weight:700;margin:0 0 10px}
.pp .hx-terms.three{grid-template-columns:repeat(3,1fr)}

/* ------------------------------------------------------------------ toggles */
.pp .hx-tog{display:flex;flex-wrap:wrap;gap:8px}
.pp .hx-tog button{border:1px solid var(--rl);background:transparent;color:var(--tx2);
	font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:.04em;padding:9px 14px;cursor:pointer;
	transition:border-color .25s,color .25s,background .25s;text-align:left}
.pp .hx-tog button:hover{border-color:var(--gd);color:var(--gd)}
.pp .hx-tog button.on{background:var(--nv);border-color:var(--nv);color:#fff}
.pp .hx-tog button.on:hover{color:#fff}

/* -------------------------------------------------------------- path chart */
.pp .hx-chart{margin:0;padding:4px 0 0}
.pp .hx-chart svg{display:block;width:100%;height:auto;overflow:visible}
.pp .hx-chart .ln-g{fill:none;stroke:#C7C1B4;stroke-width:1.5;stroke-dasharray:4 3}
.pp .hx-chart .ln-r{fill:none;stroke:#8A877E;stroke-width:1.75}
.pp .hx-chart .ln-n{fill:none;stroke:#B09548;stroke-width:2.5}
.pp .hx-chart .ar-n{fill:rgba(176,149,72,.10);stroke:none}
.pp .hx-chart .gl{stroke:#EFEDE6;stroke-width:1}
.pp .hx-chart .tk{font-family:'DM Sans',sans-serif;font-size:10px;fill:#8A877E}

/* ------------------------------------------------------------------ notes */
.pp .hx-obs{border-top:1px solid var(--rl);padding:16px 0}
.pp .hx-obs:first-child{border-top:none;padding-top:2px}
.pp .hx-obs h4{font-family:'Cormorant Garamond',Georgia,serif;font-size:19px;font-weight:500;color:var(--nv);margin:0 0 5px}
.pp .hx-obs p{font-family:'Source Serif 4',Georgia,serif;font-size:14px;line-height:1.75;color:var(--tx2);margin:0}

/* --------------------------------------------------------------- responsive */
@media(max-width:900px){
	.pp .hx-terms{grid-template-columns:1fr}
	.pp .hx-terms.three{grid-template-columns:1fr}
	.pp .hx-keep{grid-template-columns:1fr;gap:16px;padding:24px 22px;text-align:left}
	.pp .hx-row{grid-template-columns:1fr 120px;gap:10px 14px}
	.pp .hx-row .hx-track{grid-column:1 / -1;order:3;height:18px}
	.pp .hx-track i{height:18px}
}
@media(max-width:600px){
	.pp .hx-row .lb{font-size:13px}
	.pp .hx-row .amt{font-size:13px}
	.pp .hx-row.total .amt{font-size:22px}
}

/* Scoped to this instrument only: the unit suffixes on the setup row wrap to
   two lines at narrow widths. The primitive is shared with the Wealth
   Simulator, so the fix is scoped rather than applied to the primitive. */
.pp #hx-app .sm-suf{white-space:nowrap}
