/* ============================================================================
   EDGE ANALYST TOOLKIT  |  toolkit.css  |  v1_0  |  Phase 3a, 3 October 2026

   ONE SOURCE. Every rule a Toolkit tool, engine or the shared layer needs,
   lifted verbatim from client-portal-site/public/index.html (its Analyst
   Toolkit, Seller's Corner and Growth Center tool blocks) so the client portal
   and Buyer's EDGE load the SAME stylesheet. Authoritative copy:
   shared/toolkit/toolkit.css. Vendored byte for byte into each site's
   public/toolkit/ and checked by checks/toolkit_vendor.check.js. Never edit a
   copy; edit this file and re-copy.

   It assumes the host page defines the EDGE tokens on :root (--green, --lime,
   --dark, --cream, --slate, --border, --coral, --green-tint, --font) and the
   portal chrome classes (.card, .lede, .tiles, .tile, .back, .sh, .tk-in).
   ASCII only. No em dashes.
   ============================================================================ */
/* ---- Analyst Toolkit: Acquisition Calculator, Simple (tool_calc_simple.css) ---- */
/* ---- Analyst Toolkit: live tile + Acquisition Calculator, Simple (tool_calc_simple.js) ----
   ASCII only: deploy_client.sh rejects any byte above 127 in index.html. */
.tile.live{opacity:1;cursor:pointer;text-decoration:none;display:block;color:inherit;transition:border-color .15s}
.tile.live:hover,.tile.live:focus-visible{border-color:var(--green);outline:none}
.tile.live .tname{color:var(--dark)}

.cs-back{display:inline-block;text-decoration:none;margin-bottom:14px}
.cs-card{margin-top:16px}
.cs-biz{font-weight:700;color:var(--green);margin:0 0 10px}
.cs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px 20px}
.cs-f{display:flex;flex-direction:column;gap:5px;min-width:0}
.cs-wide{grid-column:1/-1}
.cs-l{font-size:13px;font-weight:600;color:var(--dark)}
.cs-h{font-size:12px;color:var(--slate);line-height:1.45}
.cs-in{display:flex;align-items:center;border:1.5px solid var(--border);border-radius:8px;background:#fff;padding:0 10px;min-height:42px}
.cs-in:focus-within{border-color:var(--green);box-shadow:0 0 0 3px var(--green-tint)}
.cs-in input,.cs-in select{flex:1;min-width:0;border:0;outline:none;background:transparent;font:inherit;font-size:16px;font-weight:600;color:var(--dark);padding:8px 4px}
.cs-in select{cursor:pointer}
.cs-in input::placeholder{color:#b3bec6;font-weight:500}
.cs-pre,.cs-suf{font-size:13px;color:var(--slate);white-space:nowrap}
.cs-ro{background:var(--cream);font-weight:700;color:var(--dark);font-size:16px;padding:0 14px}
.cs-more{margin-top:18px;border-top:1px solid var(--border);padding-top:12px}
.cs-more summary{cursor:pointer;font-weight:600;color:var(--green);list-style:none;display:flex;align-items:center;gap:8px}
.cs-more summary::-webkit-details-marker{display:none}
.cs-more summary::before{content:"+";display:inline-block;width:18px;height:18px;line-height:17px;text-align:center;border:1.5px solid var(--green);border-radius:50%;font-size:14px}
.cs-more[open] summary::before{content:"-"}
.cs-more[open] summary{margin-bottom:14px}

.cs-empty{color:var(--slate);text-align:center;padding:28px 12px;line-height:1.5}
.cs-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:22px}
.cs-stat{padding:14px 16px;border-radius:10px;background:var(--cream);border-left:4px solid var(--border)}
.cs-stat.cs-good{border-left-color:var(--green)}
.cs-stat.cs-ok{border-left-color:#e0b040}
.cs-stat.cs-bad{border-left-color:var(--coral)}
.cs-sl{font-size:13px;font-weight:600;color:var(--slate)}
.cs-sv{font-size:30px;font-weight:800;color:var(--dark);line-height:1.15;margin:4px 0 2px;letter-spacing:-0.01em}
.cs-ss{font-size:12px;color:var(--slate);line-height:1.4}
.cs-dash{color:var(--border)}

.cs-bar{position:relative;display:flex;height:34px;border-radius:8px;overflow:hidden;background:var(--cream);margin-top:4px}
.cs-seg{height:100%}
.cs-debt{background:var(--slate)}
.cs-sal{background:var(--dark)}
.cs-left{background:var(--green)}
.cs-left.cs-short{background:var(--coral)}
.cs-line{position:absolute;top:0;bottom:0;width:0;border-left:2px dashed var(--lime);box-shadow:0 0 0 1px rgba(58,74,85,0.35)}
.cs-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin:10px 0 18px;font-size:13px;color:var(--dark)}
.cs-legend span{display:inline-flex;align-items:center;gap:7px}
.cs-k{display:inline-block;width:12px;height:12px;border-radius:3px}
.cs-k.cs-mark{background:var(--lime);border:1px solid var(--dark);width:4px;border-radius:0}
.cs-muted{color:var(--slate)}

.cs-note{background:var(--green-tint);border-radius:8px;padding:10px 14px;font-size:13px;color:var(--dark);margin-bottom:14px;line-height:1.5}
.cs-flags{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}
.cs-flag{border-radius:8px;padding:10px 14px;font-size:13.5px;line-height:1.5;border:1.5px solid}
.cs-flag.cs-good{border-color:var(--green);background:var(--green-tint);color:var(--dark)}
.cs-flag.cs-warn{border-color:#e0b040;background:rgba(224,176,64,0.12);color:var(--dark)}
.cs-flag.cs-bad{border-color:var(--coral);background:rgba(251,126,88,0.12);color:var(--dark)}

.cs-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px 32px}
.cs-bh{font-weight:700;color:var(--dark);margin-bottom:8px;padding-bottom:6px;border-bottom:1.5px solid var(--border)}
.cs-row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:14px;color:var(--slate);border-bottom:1px solid var(--border)}
.cs-row span:last-child{color:var(--dark);font-weight:600;white-space:nowrap}
.cs-row.cs-strong{color:var(--dark);font-weight:700;border-bottom:0;padding-top:8px}
.cs-row.cs-strong span:last-child{font-weight:800}
.cs-fine{margin-top:22px;font-size:12px;color:var(--slate);line-height:1.5}

/* saves */
.cs-savecard{margin-top:16px}
.cs-saverow{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end}
.cs-grow{flex:1 1 260px}
.cs-savebtns{display:flex;flex-wrap:wrap;gap:8px}
.cs-btn{font:inherit;font-size:14px;font-weight:700;border-radius:8px;padding:10px 16px;cursor:pointer;border:1.5px solid var(--border);background:#fff;color:var(--dark);min-height:42px}
.cs-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--green-tint);border-color:var(--green)}
.cs-primary{background:var(--green);border-color:var(--green);color:#fff}
.cs-primary:hover{background:#6c9a2c}
.cs-ghost:hover{border-color:var(--green)}
.cs-x{color:var(--slate);font-weight:600;padding:8px 10px;min-height:0;border-color:transparent}
.cs-x:hover{color:var(--coral);border-color:var(--coral)}
.cs-msg{margin-top:12px;border-radius:8px;padding:9px 14px;font-size:13.5px;border:1.5px solid}
.cs-msg.cs-good{border-color:var(--green);background:var(--green-tint)}
.cs-msg.cs-warn{border-color:#e0b040;background:rgba(224,176,64,0.12)}
.cs-msg.cs-bad{border-color:var(--coral);background:rgba(251,126,88,0.12)}
.cs-savehead{margin-top:20px}
.cs-saves{display:flex;flex-direction:column}
.cs-save{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}
.cs-save:last-child{border-bottom:0}
.cs-save.cs-open .cs-save-name{color:var(--green)}
.cs-save-name{font-weight:700;color:var(--dark)}
.cs-save-sub{font-size:12.5px;color:var(--slate);margin-top:2px}
.cs-save-act{display:flex;gap:6px;flex-shrink:0}

@media (max-width:560px){
  .cs-save{flex-direction:column;align-items:stretch}
  .cs-save-act{justify-content:flex-end}
  .cs-sv{font-size:26px}
  .cs-legend{gap:6px 14px}
}
@media (prefers-reduced-motion:reduce){.tile.live{transition:none}}

/* ---- Analyst Toolkit shared layer (toolkit_common.css) ---- */
/* ---- Analyst Toolkit shared styles (toolkit_common.js) + Capital Stack Builder + Buyer Profile Builder ----
   ASCII only: deploy_client.sh rejects any byte above 127 in index.html.
   .tile.live is also declared in tool_calc_simple.css; keep one copy. */
/* .tile.live lives in the calc-simple block above; one copy only (rule 6). */

.tk-back{display:inline-block;text-decoration:none;margin-bottom:14px}
.tk-card{margin-top:16px}
.tk-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px 20px}
.tk-f{display:flex;flex-direction:column;gap:5px;min-width:0}
.tk-wide{grid-column:1/-1}
.tk-l{font-size:13px;font-weight:600;color:var(--dark)}
.tk-h{font-size:12px;color:var(--slate);line-height:1.45}
.tk-in{display:flex;align-items:center;border:1.5px solid var(--border);border-radius:8px;background:#fff;padding:0 10px;min-height:42px}
.tk-in:focus-within{border-color:var(--green);box-shadow:0 0 0 3px var(--green-tint)}
.tk-in input,.tk-in select,.tk-in textarea{flex:1;min-width:0;border:0;outline:none;background:transparent;font:inherit;font-size:16px;font-weight:600;color:var(--dark);padding:8px 4px}
.tk-in input::placeholder,.tk-in textarea::placeholder{color:#b3bec6;font-weight:500}
.tk-in select{cursor:pointer}
.tk-in select:disabled{color:#b3bec6;cursor:default}
.tk-area{align-items:stretch;padding:4px 10px}
.tk-area textarea{font-weight:500;font-size:15px;line-height:1.5;resize:vertical}
.tk-pre,.tk-suf{font-size:13px;color:var(--slate);white-space:nowrap}
.tk-more{margin-top:18px;border-top:1px solid var(--border);padding-top:12px}
.tk-more summary{cursor:pointer;font-weight:600;color:var(--green);list-style:none;display:flex;align-items:center;gap:8px}
.tk-more summary::-webkit-details-marker{display:none}
.tk-more summary::before{content:"+";display:inline-block;width:18px;height:18px;line-height:17px;text-align:center;border:1.5px solid var(--green);border-radius:50%;font-size:14px}
.tk-more[open] summary::before{content:"-"}
.tk-more[open] summary{margin-bottom:14px}

.tk-pills{display:flex;flex-wrap:wrap;gap:8px}
.tk-pill{font:inherit;font-size:14px;font-weight:600;color:var(--dark);background:#fff;border:1.5px solid var(--border);border-radius:20px;padding:8px 14px;cursor:pointer}
.tk-pill:hover{border-color:var(--green)}
.tk-pill.tk-on{background:var(--green);border-color:var(--green);color:#fff}
.tk-pill:focus-visible{outline:none;box-shadow:0 0 0 3px var(--green-tint)}
.tk-chiplist{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.tk-chip{display:inline-flex;align-items:center;gap:6px;background:var(--green-tint);color:var(--dark);border-radius:16px;padding:6px 6px 6px 12px;font-size:14px;font-weight:600}
.tk-chipx{font:inherit;font-size:12px;font-weight:700;line-height:1;background:#fff;color:var(--slate);border:0;border-radius:50%;width:20px;height:20px;cursor:pointer}
.tk-chipx:hover{color:var(--coral)}
.tk-chipin{min-height:36px;flex:1 1 180px}
.tk-chipin input{font-size:14px;font-weight:500;padding:6px 4px}
.tk-suggs{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.tk-sugg{font:inherit;font-size:12.5px;font-weight:600;color:var(--green);background:#fff;border:1.5px dashed var(--border);border-radius:14px;padding:4px 10px;cursor:pointer}
.tk-sugg:hover{border-color:var(--green)}

.tk-empty{color:var(--slate);text-align:center;padding:28px 12px;line-height:1.5}
.tk-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:22px}
.tk-stat{padding:14px 16px;border-radius:10px;background:var(--cream);border-left:4px solid var(--border)}
.tk-stat.tk-good{border-left-color:var(--green)}
.tk-stat.tk-ok{border-left-color:#e0b040}
.tk-stat.tk-bad{border-left-color:var(--coral)}
.tk-sl{font-size:13px;font-weight:600;color:var(--slate)}
.tk-sv{font-size:28px;font-weight:800;color:var(--dark);line-height:1.15;margin:4px 0 2px;letter-spacing:-0.01em}
.tk-ss{font-size:12px;color:var(--slate);line-height:1.4}
.tk-dash{color:var(--border)}
.tk-flags{display:flex;flex-direction:column;gap:8px;margin:16px 0 20px}
.tk-flag{border-radius:8px;padding:10px 14px;font-size:13.5px;line-height:1.5;border:1.5px solid}
.tk-flag.tk-good{border-color:var(--green);background:var(--green-tint);color:var(--dark)}
.tk-flag.tk-warn{border-color:#e0b040;background:rgba(224,176,64,0.12);color:var(--dark)}
.tk-flag.tk-bad{border-color:var(--coral);background:rgba(251,126,88,0.12);color:var(--dark)}
.tk-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px 32px}
.tk-bh{font-weight:700;color:var(--dark);margin-bottom:8px;padding-bottom:6px;border-bottom:1.5px solid var(--border)}
.tk-row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:14px;color:var(--slate);border-bottom:1px solid var(--border)}
.tk-row span:last-child{color:var(--dark);font-weight:600;white-space:nowrap;text-align:right}
.tk-row.tk-strong{color:var(--dark);font-weight:700;border-bottom:0;padding-top:8px}
.tk-row.tk-strong span:last-child{font-weight:800}
.tk-fine{margin-top:22px;font-size:12px;color:var(--slate);line-height:1.5}

.tk-savecard{margin-top:16px}
.tk-saverow{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end}
.tk-grow{flex:1 1 260px}
.tk-savebtns{display:flex;flex-wrap:wrap;gap:8px}
.tk-btn{font:inherit;font-size:14px;font-weight:700;border-radius:8px;padding:10px 16px;cursor:pointer;border:1.5px solid var(--border);background:#fff;color:var(--dark);min-height:42px}
.tk-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--green-tint);border-color:var(--green)}
.tk-primary{background:var(--green);border-color:var(--green);color:#fff}
.tk-primary:hover{background:#6c9a2c}
.tk-ghost:hover{border-color:var(--green)}
.tk-x{color:var(--slate);font-weight:600;padding:8px 10px;min-height:0;border-color:transparent}
.tk-x:hover{color:var(--coral);border-color:var(--coral)}
.tk-msg{margin-top:12px;border-radius:8px;padding:9px 14px;font-size:13.5px;border:1.5px solid}
.tk-msg.tk-good{border-color:var(--green);background:var(--green-tint)}
.tk-msg.tk-warn{border-color:#e0b040;background:rgba(224,176,64,0.12)}
.tk-msg.tk-bad{border-color:var(--coral);background:rgba(251,126,88,0.12)}
.tk-savehead{margin-top:20px}
.tk-saves{display:flex;flex-direction:column}
.tk-save{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}
.tk-save:last-child{border-bottom:0}
.tk-save.tk-open .tk-save-name{color:var(--green)}
.tk-save-name{font-weight:700;color:var(--dark)}
.tk-save-sub{font-size:12.5px;color:var(--slate);margin-top:2px}
.tk-save-act{display:flex;gap:6px;flex-shrink:0}

/* Capital Stack Builder */
.csb-cols{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(220px,1.2fr) minmax(150px,0.9fr);gap:12px;font-size:12px;font-weight:600;color:var(--slate);padding:0 0 6px;border-bottom:1.5px solid var(--border)}
.csb-list{display:flex;flex-direction:column}
.csb-src{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(370px,2.1fr);gap:12px;align-items:start;padding:12px 0;border-bottom:1px solid var(--border)}
.csb-src:last-child{border-bottom:0}
.csb-src-head{display:grid;grid-template-columns:12px 1fr;gap:4px 8px;align-items:center}
.csb-src-name{font-weight:700;color:var(--dark);font-size:14px}
.csb-src-hint{grid-column:2}
.csb-dot{display:inline-block;width:12px;height:12px;border-radius:3px;flex-shrink:0}
.csb-src-in{display:grid;grid-template-columns:minmax(120px,1.2fr) auto minmax(66px,0.5fr) minmax(66px,0.5fr);gap:8px;align-items:center}
.csb-amt input{text-align:right}
.csb-mode{display:inline-flex;border:1.5px solid var(--border);border-radius:8px;overflow:hidden}
.csb-mode .tk-pill{border:0;border-radius:0;padding:8px 10px;font-size:13px;min-width:34px}
.csb-term input{text-align:right;font-size:14px;padding:8px 2px}
.csb-term .tk-suf{font-size:11.5px}
.csb-term-blank{grid-column:3/5}
.csb-how{margin:12px 0 18px}
.csb-quick{margin-top:6px}
.csb-bar{display:flex;height:34px;border-radius:8px;overflow:hidden;background:var(--cream)}
.csb-seg{height:100%}
.csb-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin:10px 0 6px;font-size:13px;color:var(--dark)}
.csb-legend span{display:inline-flex;align-items:center;gap:7px}

/* Buyer Profile Builder */
.bpb-sec .tk-f.tk-wide{margin-top:12px}
.bpb-sh{font-size:18px;font-weight:800;color:var(--dark);margin-bottom:2px}
.bpb-shint{margin-bottom:6px}
.bpb-ind{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 14px}
.bpb-chips{margin-top:10px;min-height:20px}
.bpb-or{margin:14px 0 8px;font-weight:600;color:var(--dark)}
.bpb-attached{border:1.5px solid var(--green);background:var(--green-tint);border-radius:8px;padding:9px 12px;display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--dark)}
.bpb-prev{border:1.5px solid var(--border);border-radius:10px;padding:16px 18px;background:var(--cream)}
.bpb-pname{font-size:20px;font-weight:800;color:var(--dark);margin-bottom:8px}
.bpb-team{font-size:14px;font-weight:600;color:var(--slate)}
.bpb-pl{display:grid;grid-template-columns:minmax(110px,150px) 1fr;gap:12px;padding:6px 0;border-top:1px solid var(--border);font-size:14px}
.bpb-pl span:first-child{color:var(--slate);font-weight:600}
.bpb-pl span:last-child{color:var(--dark)}
.bpb-pbio{margin-top:10px;padding-top:10px;border-top:1px solid var(--border);font-size:14px;line-height:1.55;color:var(--dark);white-space:pre-wrap}
.bpb-sendrow{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;margin-top:16px}
.bpb-sendrow .tk-h{flex:1 1 260px}

@media (max-width:700px){
  .csb-cols{display:none}
  .csb-src{grid-template-columns:1fr}
  .csb-src-in{grid-template-columns:1fr auto;grid-auto-rows:auto}
  .csb-term{grid-column:span 1}
  .csb-term-blank{display:none}
}
@media (max-width:560px){
  .tk-sv{font-size:24px}
  .tk-save{flex-direction:column;align-items:stretch}
  .tk-save-act{justify-content:flex-end}
  .bpb-pl{grid-template-columns:1fr}
  .bpb-pl span:first-child{font-size:12px}
}
/* ---- Financial Pro Forma (tool_pro_forma.js). ASCII only. Requires toolkit_common.css; reuses .lab-abstop/.lab-absbtns from tool_lease_abstract.css if present, declared again here so it stands alone. ----*/
.lab-abstop{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.lab-absbtns{display:flex;gap:8px;flex-wrap:wrap}
.pf-layout{display:grid;grid-template-columns:minmax(300px,420px) minmax(0,1fr);gap:0 20px;align-items:start}
.pf-left .tk-card:first-child{margin-top:16px}
.pf-right{position:sticky;top:12px}
.pf-sec .tk-grid{gap:12px 14px}
.pf-sh{font-size:17px;font-weight:800;color:var(--dark);margin-bottom:10px}
.pf-sh .tk-h{display:block;font-weight:500;margin-top:2px}
.pf-sub{font-size:13px;font-weight:700;color:var(--green);text-transform:uppercase;letter-spacing:.04em;margin:18px 0 8px;padding-bottom:6px;border-bottom:1px solid var(--border)}
.pf-sub .tk-h{display:inline;text-transform:none;letter-spacing:0;font-weight:500;margin-left:6px}
.pf-gap{margin-top:14px}
.pf-oh .tk-in input{font-size:15px}
.pf-add{margin-top:10px;border-style:dashed;width:100%}
.pf-line{display:grid;grid-template-columns:minmax(120px,1.4fr) minmax(120px,1fr) auto;gap:8px 10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--border)}
.pf-line .pf-cb{grid-column:1/-1;font-size:12.5px}
.pf-line .tk-x{justify-self:end}
.pf-cb{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--dark);cursor:pointer}
.pf-cb input{width:16px;height:16px;accent-color:var(--green);margin:0}
.pf-check .pf-cb{min-height:42px}
.pf-loan{border:1.5px solid var(--border);border-radius:10px;padding:12px 14px;margin-bottom:10px}
.pf-loan-head{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-bottom:10px}
.pf-loan-label{flex:1 1 140px;min-height:38px}
.pf-loan-label input{font-size:14px}
.pf-loan-head .tk-pill{padding:6px 12px;font-size:13px}
.pf-loan-grid .tk-in input{font-size:15px}

.pf-verdict{font-size:16px;font-weight:600;line-height:1.5;color:var(--dark);background:var(--cream);border-left:4px solid var(--lime);border-radius:8px;padding:12px 16px;margin-bottom:18px}
.pf-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px 32px;margin-top:8px}
.pf-inj{margin-top:8px}
.pf-bars{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:10px;height:190px;align-items:end;padding-bottom:44px}
.pf-bar{display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end;position:relative}
.pf-bar-v{width:70%;border-radius:6px 6px 0 0;min-height:2px;transition:height .2s}
.pf-bar-l{position:absolute;bottom:-22px;font-size:12px;color:var(--slate)}
.pf-bar-n{position:absolute;bottom:-40px;font-size:13px;font-weight:800;color:var(--dark)}
.pf-floor{position:absolute;left:0;right:0;border-top:2px dashed var(--coral);pointer-events:none}
.pf-floor span{position:absolute;right:0;top:-18px;font-size:11px;font-weight:700;color:var(--coral);background:#fff;padding:0 4px}

.pf-tabs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:12px;border-bottom:1.5px solid var(--border);padding-bottom:10px}
.pf-tab{font:inherit;font-size:13.5px;font-weight:700;color:var(--slate);background:#fff;border:1.5px solid var(--border);border-radius:18px;padding:7px 14px;cursor:pointer}
.pf-tab.pf-on{background:var(--dark);border-color:var(--dark);color:#fff}
.pf-expand{margin-left:auto;font-size:12.5px}
.pf-tw{overflow-x:auto;-webkit-overflow-scrolling:touch}
.pf-t{border-collapse:collapse;width:100%;font-size:13px;min-width:520px}
.pf-t th,.pf-t td{padding:6px 10px;text-align:right;white-space:nowrap;border-bottom:1px solid #eef1f3}
.pf-t th:first-child,.pf-t td:first-child{text-align:left;position:sticky;left:0;background:#fff;color:var(--slate);font-weight:600;min-width:170px;white-space:normal}
.pf-t th{font-size:11.5px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:.04em;border-bottom:1.5px solid var(--border);background:#fff}
.pf-t td{color:var(--dark)}
.pf-t tr.pf-b td{font-weight:800;color:var(--dark)}
.pf-t tr.pf-b td:first-child{color:var(--dark)}
.pf-t tr.pf-i td{font-size:12px;color:var(--slate)}
.pf-t tr.pf-i td:first-child{padding-left:20px}
.pf-t td.pf-neg{color:#9a5a45}
.pf-t tr.pf-gaprow td{padding:0;height:10px;border:0}
.pf-t tr.pf-warnrow td{background:rgba(251,126,88,0.08)}
.pf-t-s{font-size:12px}
.pf-t-s th,.pf-t-s td{padding:4px 8px}
.pf-narr{margin-bottom:12px}
.pf-nh{font-size:12px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:.05em;border-bottom:1.5px solid var(--lime);padding-bottom:4px;margin:14px 0 6px}
.pf-narr ul{margin:0;padding-left:18px}
.pf-narr li{font-size:14px;line-height:1.55;color:var(--dark);margin-bottom:4px}

/* printout */
.pf-print{border:1.5px solid var(--border);border-radius:12px;padding:28px 30px;background:#fff;margin-top:12px}
.pf-ph{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:14px;border-bottom:3px solid var(--green)}
.pf-logo{height:46px;width:auto}
.pf-ph-r{text-align:right}
.pf-pt{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--green)}
.pf-ps{font-size:22px;font-weight:800;color:var(--dark);line-height:1.2}
.pf-meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:12px;color:var(--slate);margin:10px 0 14px}
.pf-pverdict{font-size:15px;line-height:1.55;color:var(--dark);background:var(--cream);border-left:4px solid var(--lime);border-radius:8px;padding:12px 16px;margin-bottom:16px}
.pf-pkey{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
.pf-pkey > div{border:1.5px solid var(--border);border-radius:10px;padding:10px 12px}
.pf-pkl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--slate)}
.pf-pkv{font-size:20px;font-weight:800;color:var(--dark);line-height:1.15;margin-top:3px}
.pf-pks{font-size:11.5px;color:var(--slate);margin-top:2px}
.pf-pg{font-size:12px;font-weight:700;color:var(--green);text-transform:uppercase;letter-spacing:.05em;margin:18px 0 6px;padding-bottom:4px;border-bottom:1px solid var(--border)}
.pf-pcols{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px 36px}
.pf-print .tk-row{font-size:13px;padding:4px 0}
.pf-print .pf-t{min-width:0}
.pf-print .pf-t th:first-child,.pf-print .pf-t td:first-child{position:static;min-width:140px}
.pf-pnh{font-size:11.5px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--lime);padding-bottom:3px;margin:12px 0 4px}
.pf-pnarr ul{margin:0;padding-left:16px}
.pf-pnarr li{font-size:12.5px;line-height:1.5;color:var(--dark);margin-bottom:3px}
.pf-pnotes{font-size:12.5px;line-height:1.5;color:var(--dark);white-space:pre-wrap}
.pf-pf{margin-top:20px;padding-top:12px;border-top:1px solid var(--border);font-size:10.5px;color:var(--slate);line-height:1.5}

@media (max-width:960px){.pf-layout{grid-template-columns:1fr}.pf-right{position:static}}
@media (max-width:560px){.pf-pkey{grid-template-columns:repeat(2,1fr)}.pf-ph{flex-direction:column;align-items:flex-start}.pf-ph-r{text-align:left}.pf-line{grid-template-columns:1fr}.pf-line .tk-x{justify-self:start}}
@media print{
  header,.tnav,.anote,.back,.lede,.pf-layout,.lab-abstop,#tkSaves,.pf-noprint{display:none !important}
  body{background:#fff}
  main{max-width:none;padding:0}
  .card{border:0;padding:0;box-shadow:none}
  .pf-print{border:0;padding:0;margin:0}
  .pf-pkey > div,.pf-pverdict,.pf-tw{break-inside:avoid}
  .pf-t{font-size:9.5px}
  .pf-t th,.pf-t td{padding:3px 5px}
  .pf-pnarr li{font-size:11px}
  @page{size:letter landscape;margin:12mm}
}
/* ---- Lease Abstract Generator (tool_lease_abstract.js). ASCII only. Requires toolkit_common.css.
     .lab-abstop and .lab-absbtns are NOT here: tool_pro_forma.css already pasted
     them in, identical, when the Pro Forma shipped earlier today. ----*/
.lab-up{padding:22px 24px}
.lab-drop{display:flex;align-items:center;gap:18px;border:2px dashed var(--border);border-radius:12px;padding:22px 24px;background:var(--cream)}
.lab-drop.lab-over{border-color:var(--green);background:var(--green-tint)}
.lab-drop-ic{width:44px;height:44px;color:var(--green);flex-shrink:0}
.lab-drop-ic svg{width:100%;height:100%}
.lab-drop > div:nth-child(3){flex:1}
.lab-or{margin-top:14px}
.tk-link{font:inherit;font-size:inherit;color:var(--green);font-weight:700;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline}
.lab-status{display:flex;align-items:center;gap:16px}
.lab-spin{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--green);border-radius:50%;animation:labspin .9s linear infinite;flex-shrink:0}
@keyframes labspin{to{transform:rotate(360deg)}}
.lab-shint{margin-bottom:10px}
.lab-grp{font-size:13px;font-weight:700;color:var(--green);text-transform:uppercase;letter-spacing:.04em;margin:20px 0 10px;padding-bottom:6px;border-bottom:1px solid var(--border)}

/* the abstract itself */
.lab-abs{border:1.5px solid var(--border);border-radius:12px;padding:28px 30px;background:#fff;margin-top:12px}
.lab-ah{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:14px;border-bottom:3px solid var(--green)}
.lab-logo{height:46px;width:auto}
.lab-ah-r{text-align:right}
.lab-at{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--green)}
.lab-as{font-size:22px;font-weight:800;color:var(--dark);line-height:1.2}
.lab-meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:12px;color:var(--slate);margin:10px 0 16px}
.lab-asum{font-size:15px;line-height:1.6;color:var(--dark);background:var(--cream);border-left:4px solid var(--lime);border-radius:8px;padding:12px 16px;margin-bottom:18px}
.lab-akey{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:20px}
.lab-akey > div{border:1.5px solid var(--border);border-radius:10px;padding:12px 14px}
.lab-akl{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--slate)}
.lab-akv{font-size:24px;font-weight:800;color:var(--dark);line-height:1.15;margin-top:4px}
.lab-akv small{font-size:13px;font-weight:600;color:var(--slate);margin-left:2px}
.lab-akv-s{font-size:16px}
.lab-aks{font-size:12px;color:var(--slate);margin-top:3px;line-height:1.4}
.lab-acols{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:8px 36px}
.lab-ag{font-size:12px;font-weight:700;color:var(--green);text-transform:uppercase;letter-spacing:.05em;margin:16px 0 4px;padding-bottom:4px;border-bottom:1px solid var(--border)}
.lab-ar{display:grid;grid-template-columns:minmax(110px,140px) 1fr;gap:12px;padding:5px 0;font-size:13.5px;border-bottom:1px solid #eef1f3}
.lab-ar span:first-child{color:var(--slate);font-weight:600}
.lab-ar span:last-child{color:var(--dark)}
.lab-al{margin:4px 0 0;padding-left:18px;font-size:13.5px;color:var(--dark);line-height:1.55}
.lab-an{font-size:13.5px;color:var(--dark);line-height:1.55;white-space:pre-wrap}
.lab-af{margin-top:22px;padding-top:12px;border-top:1px solid var(--border);font-size:11px;color:var(--slate);line-height:1.5}

@media (max-width:560px){
  .lab-drop{flex-direction:column;align-items:flex-start}
  .lab-ah{flex-direction:column;align-items:flex-start}
  .lab-ah-r{text-align:left}
  .lab-ar{grid-template-columns:1fr}
}
@media print{
  header,.tnav,.anote,.back,.lede,#labForm,.lab-abstop,#tkSaves,.lab-up{display:none !important}
  body{background:#fff}
  main{max-width:none;padding:0}
  .card{border:0;padding:0;box-shadow:none}
  .lab-abs{border:0;padding:0;margin:0}
  .lab-akey > div,.lab-asum{break-inside:avoid}
  .lab-akv{font-size:19px}
  .lab-akey{grid-template-columns:repeat(4,1fr)}
  @page{margin:16mm}
}
/* ---- CIM Review (tool_cim_review.js). ASCII only. Requires toolkit_common.css.
     The package redeclares the .lab-* upload rules and the .pf-t table rules so it can
     stand alone. They are NOT pasted here: the Lease Abstract and Pro Forma already
     brought them, and this copy is the WEAKER one. Its .pf-t drops min-width and its
     first-column rule drops position:sticky, so pasting it would have taken the frozen
     first column off the Pro Forma's twelve-month table. ---- */
.cr-picked{margin:12px 0 4px}
.cr-runrow{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:12px}
.cr-runrow .tk-msg{margin:0;flex:1 1 260px}
.tk-btn:disabled{opacity:.5;cursor:default}

/* ---- Acquisition Calculator, Advanced (tool_calc_advanced.js). ASCII only.
     Requires toolkit_common.css. Only the .ca-* rules and the media blocks are here.
     The pf-* layout and table rules it redeclares came in with the Pro Forma, identical.
     AND FOUR PRINT RULES WERE LEFT OUT DELIBERATELY: the delivered file carries
     .pf-print, .pf-t and .pf-t th,td at TOP LEVEL, outside any @media, where they would
     shrink every table on the site to 9.5px and strip the printout frame on screen. The
     same four sit correctly inside its @media print block below, which is pasted. ---- */
.ca-ent{margin-top:14px}
.ca-ent.ca-off{padding:14px 20px;background:var(--cream)}
.ca-ent-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:10px}
.ca-ptitle{font-size:16px;color:var(--dark)}
.ca-name{flex:1 1 160px;min-height:38px}
.ca-name input{font-size:14px}
.ca-act{font-size:15px}
.ca-hist{display:flex;flex-direction:column;gap:8px}
.ca-hist-h,.ca-hist-r{display:grid;grid-template-columns:minmax(0,0.8fr) minmax(0,1fr) minmax(0,1fr);gap:8px}
.ca-hist-r .tk-in{min-width:0;padding:0 8px}
.ca-hist-r input{min-width:0;width:100%}
.ca-hist-h{font-size:11.5px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:.04em}
.ca-hist-r .tk-in{min-height:38px}
.ca-hist-r input{font-size:14px}
.ca-bars{height:170px;margin-bottom:8px}
.ca-bars + .tk-h{margin-bottom:18px}
.ca-bars .pf-bar-n{font-size:11px}
.ca-valcard{border:1.5px solid var(--border);border-radius:10px;padding:14px 16px;margin-bottom:14px}
.ca-valhead{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.ca-valhead b{font-size:16px;color:var(--dark)}
.ca-good{color:var(--green);font-weight:700;font-size:13px}
.ca-bad{color:#d64545;font-weight:700;font-size:13px}
.ca-valstats .tk-sv{font-size:22px}
.ca-valcard .pf-t{min-width:0}
.ca-valcard .pf-t th:first-child,.ca-valcard .pf-t td:first-child{min-width:120px}
.ca-roll{background:var(--green-tint);border-color:var(--green)}
@media (max-width:960px){.pf-layout{grid-template-columns:1fr}.pf-right{position:static}}
@media (max-width:560px){.pf-pkey{grid-template-columns:repeat(2,1fr)}.pf-ph{flex-direction:column;align-items:flex-start}.pf-ph-r{text-align:left}.ca-hist-h,.ca-hist-r{grid-template-columns:1fr}.ca-hist-h{display:none}}
@media print{
  header,.tnav,.anote,.back,.lede,.pf-layout,.lab-abstop,#tkSaves{display:none !important}
  body{background:#fff}main{max-width:none;padding:0}.card{border:0;padding:0;box-shadow:none}
  .pf-print{border:0;padding:0;margin:0}.pf-pkey > div,.pf-tw{break-inside:avoid}.pf-t{font-size:9.5px}.pf-t th,.pf-t td{padding:3px 5px}
  @page{size:letter landscape;margin:12mm}
}

/* ---- Financial Statement Spreading (tool_fin_spread.js). ASCII only.
     Requires toolkit_common.css. The lab-*, pf-* and ca-* rules it redeclares are NOT
     pasted: they came in with earlier tools and, as with the CIM Review, this copy is the
     WEAKER one. Its .pf-t drops min-width and its first-column rule drops position:sticky,
     so pasting it would take the frozen first column off the Pro Forma's monthly table. ---- */
.lab-up{padding:22px 24px}
.fs-top .tk-grid{max-width:520px}
.fs-tabs2{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 14px;margin-bottom:12px}
.fs-ms{margin-left:auto;min-width:240px}
.fs-ms .tk-in{min-height:36px}
.fs-ms input{font-size:14px}
.fs-grid-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1.5px solid var(--border);border-radius:10px}
.fs-grid{border-collapse:separate;border-spacing:0;width:100%;min-width:620px;font-size:12.5px}
.fs-grid th,.fs-grid td{padding:4px 8px;border-bottom:1px solid #eef1f3;text-align:right;white-space:nowrap}
.fs-grid th:first-child,.fs-grid td:first-child{text-align:left;position:sticky;left:0;background:#fff;color:var(--slate);font-weight:600;min-width:220px;white-space:normal;z-index:1}
.fs-grid thead th{position:sticky;top:0;background:#fff;z-index:2;vertical-align:bottom;padding-bottom:8px;border-bottom:1.5px solid var(--border)}
.fs-grid thead th:first-child{z-index:3}
.fs-corner .fs-setsel{display:flex;flex-direction:column;gap:6px;font-weight:800;color:var(--dark);font-size:14px}
.fs-corner select{font:inherit;font-size:12px;font-weight:600;color:var(--dark);border:1.5px solid var(--border);border-radius:6px;padding:4px 6px;background:#fff;width:110px}
.fs-lab{font:inherit;font-size:13px;font-weight:800;color:var(--dark);border:1.5px solid transparent;border-radius:6px;padding:3px 6px;width:110px;text-align:right;background:transparent}
.fs-lab:hover,.fs-lab:focus{border-color:var(--border);background:var(--cream);outline:none}
.fs-src{display:block;font:inherit;font-size:11px;color:var(--slate);border:1.5px solid var(--border);border-radius:6px;padding:2px 4px;margin:4px 0 0 auto;width:110px;background:#fff}
.fs-mo{display:block;font-size:11px;color:var(--slate);margin-top:4px}
.fs-mo input{font:inherit;font-size:11px;width:28px;border:1.5px solid var(--border);border-radius:4px;padding:1px 4px;text-align:right}
.fs-in{font:inherit;font-size:12.5px;font-weight:600;color:var(--dark);border:1.5px solid transparent;border-radius:6px;padding:4px 6px;width:110px;text-align:right;background:transparent}
.fs-in:hover{border-color:var(--border)}
.fs-in:focus{border-color:var(--green);background:#fff;outline:none;box-shadow:0 0 0 3px var(--green-tint)}
.fs-in::placeholder{color:#c9d1d7;font-weight:500}
.fs-ctrl{border-style:dashed;border-color:var(--border);color:var(--slate)}
.fs-sec td{background:var(--cream);color:var(--green);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:8px;position:static}
.fs-sec td:first-child{background:var(--cream);color:var(--green)}
.fs-comp td{color:var(--dark);background:#fafbfc}
.fs-comp td:first-child{background:#fafbfc}
.fs-comp.fs-b td{font-weight:800}
.fs-comp.fs-b td:first-child{color:var(--dark)}
.fs-comp.fs-i td{font-size:11.5px;color:var(--slate)}
.fs-comp.fs-hi td{background:var(--green-tint)}
.fs-comp.fs-hi td:first-child{background:var(--green-tint);color:var(--dark)}
.fs-tie td{font-size:11px;font-weight:700;padding-top:2px;padding-bottom:6px}
.fs-ok{color:var(--green)}
.fs-bad{color:#d64545}
.fs-muted{color:#b3bec6;font-weight:500}
.fs-legend{margin-top:10px}
@media (max-width:560px){.fs-grid th:first-child,.fs-grid td:first-child{min-width:150px}.fs-ms{margin-left:0;width:100%}}
@media print{header,.tnav,.anote,.back,.lede,.fs-top,.lab-up,.pf-tabs,#fsView,.lab-abstop,#tkSaves,#fsNotes,.tk-f{display:none !important}.card > .pf-tabs + div{display:none}@page{size:letter landscape;margin:12mm}}
/* ---- Financial Statement Spreading v1_1: custom lines per section. Shared with What Is My Business Worth. ---- */
.fs-cl{display:flex;align-items:center;gap:4px}
.fs-cllab{font:inherit;font-size:12.5px;font-weight:600;color:var(--dark);border:1.5px dashed var(--border);border-radius:6px;padding:3px 6px;width:100%;min-width:120px;background:#fff}
.fs-cllab:focus{border-style:solid;border-color:var(--green);outline:none}
.fs-cldel{padding:2px 6px;min-height:0;font-size:12px}
.fs-addrow td{padding:2px 8px 8px;border-bottom:0}
.fs-add{font:inherit;font-size:12px;font-weight:700;color:var(--green);background:none;border:0;padding:2px 0;cursor:pointer}
.fs-add:hover{text-decoration:underline}
.fs-grid tr.fs-addrow td:first-child{position:static}
/* ---- What Is My Business Worth (tool_worth.js). Seller's Corner. ASCII only. ---- */
.pf-pnarr{margin:0;padding-left:16px}
.wm-grid-wrap{overflow-x:auto}
.wm-grid{border-collapse:collapse;width:100%;font-size:13px}
.wm-grid th,.wm-grid td{padding:6px 6px;vertical-align:top;border-bottom:1px solid #eef1f3}
.wm-grid th{text-align:right;padding-bottom:8px}
.wm-grid th .tk-h{text-align:right;font-size:11px}
.wm-grid td:first-child{min-width:150px}
.wm-l{font-size:13px;font-weight:600;color:var(--dark)}
.wm-lab{font:inherit;font-size:14px;font-weight:800;color:var(--dark);border:1.5px solid transparent;border-radius:6px;padding:2px 6px;width:70px;text-align:right;background:transparent}
.wm-lab:focus{border-color:var(--border);outline:none}
.wm-in{min-height:36px;padding:0 6px}
.wm-in input{font-size:13px;text-align:right;padding:6px 2px;width:88px}
.wm-range{margin:8px 0 18px}
.wm-range-bar{position:relative;height:16px;border-radius:8px;background:linear-gradient(90deg,var(--slate),var(--green) 60%,var(--lime))}
.wm-range-pt{position:absolute;top:-8px;width:0;height:32px;border-left:3px solid var(--dark);transform:translateX(-1.5px)}
.wm-range-pt span{position:absolute;top:-26px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:15px;font-weight:800;color:var(--dark);background:#fff;padding:0 6px;border-radius:6px}
.wm-range-ends{display:flex;justify-content:space-between;margin-top:8px;font-size:15px;font-weight:800;color:var(--dark)}
.wm-range-ends span:last-child{text-align:right}
.wm-range-ends small{font-size:12px;font-weight:600;color:var(--slate)}
.wm-range{padding-top:26px}
.wm-sigs{display:flex;flex-direction:column;gap:8px}
.wm-sig{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;font-size:13.5px;line-height:1.5;color:var(--dark);padding:8px 12px;border-radius:8px;border:1.5px solid var(--border)}
.wm-sig i{display:block;width:12px;height:12px;border-radius:50%;margin-top:4px;background:var(--border)}
.wm-up{border-color:var(--green);background:var(--green-tint)}
.wm-up i{background:var(--green)}
.wm-down{border-color:var(--coral);background:rgba(251,126,88,0.1)}
.wm-down i{background:var(--coral)}
.wm-flat i{background:var(--slate)}
.wm-drop .tk-h{flex:1}
.wm-share{border-color:var(--green);background:var(--green-tint)}
.wm-share .tk-h{max-width:640px}
.pf-break{break-before:page}
@media (max-width:560px){
.wm-in input{width:72px}
}
@media print{
.wm-share,.fs-tabs2,.fs-grid-wrap{display:none !important}
.pf-print .pf-t{font-size:9.5px}
.pf-print .pf-t th,.pf-print .pf-t td{padding:3px 5px}
}
/* ---- Due Diligence Prep (tool_dd_prep.js). Seller's Corner. ASCII only. ---- */
.dp-intro p{font-size:15px;line-height:1.6;color:var(--dark);margin:0 0 10px}
.dp-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:20px 32px;align-items:center}
.dp-score{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}
.dp-ring{--p:0;width:130px;height:130px;border-radius:50%;background:conic-gradient(var(--green) calc(var(--p) * 1%),var(--border) 0);display:grid;place-items:center}
.dp-ring span{width:100px;height:100px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:28px;font-weight:800;color:var(--dark)}
.dp-score-t{font-size:14px;color:var(--slate)}
.dp-score-t b{color:var(--dark)}
.dp-group{margin-top:16px}
.dp-gh{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:10px}
.dp-gh .tk-h{font-size:13.5px;line-height:1.5;max-width:720px}
.dp-gcount{font-size:14px;font-weight:800;color:var(--green);background:var(--green-tint);border-radius:14px;padding:4px 12px;white-space:nowrap}
.dp-item{border:1.5px solid var(--border);border-left-width:5px;border-radius:10px;padding:12px 16px;margin-top:10px}
.dp-item.dp-have{border-left-color:var(--green);background:var(--green-tint)}
.dp-item.dp-need{border-left-color:#e0b040}
.dp-item.dp-na{opacity:.55}
.dp-item-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.dp-name{font-size:15px;font-weight:700;color:var(--dark);flex:1 1 280px}
.dp-pills .tk-pill{padding:5px 11px;font-size:12.5px}
.dp-what{font-size:14px;line-height:1.55;color:var(--dark);margin:8px 0}
.dp-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px 24px;font-size:13px;line-height:1.5;color:var(--dark);margin-bottom:8px}
.dp-k{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--slate);margin-bottom:2px}
.dp-note{min-height:34px}
.dp-note input{font-size:13px;font-weight:500;padding:5px 2px}
.dp-habits{margin:6px 0 14px;padding-left:22px}
.dp-habits li{font-size:14px;line-height:1.6;color:var(--dark);margin-bottom:8px}
.dp-pt{border-collapse:collapse;width:100%;font-size:12.5px}
.dp-pt td{padding:6px 8px;border-bottom:1px solid #eef1f3;vertical-align:top;color:var(--dark)}
.dp-pbox{font-family:ui-monospace,Menlo,monospace;font-weight:700;white-space:nowrap;width:36px;color:var(--green)}
.dp-pwhat{font-size:11.5px;color:var(--slate);line-height:1.45}
.dp-pnote{font-size:11.5px;color:var(--dark);font-style:italic;margin-top:2px}
.dp-pwhen{font-size:11.5px;color:var(--slate);white-space:nowrap;width:160px}
@media (max-width:700px){
.dp-intro-grid{grid-template-columns:1fr}
.dp-score{flex-direction:row;justify-content:flex-start;text-align:left}
.dp-pwhen{white-space:normal;width:auto}
}
@media print{
.dp-intro,.dp-group,.card:has(.dp-habits){display:none !important}
.dp-pt tr{break-inside:avoid}
}
/* ---- Exit Plan Interview (tool_exit_plan.js). Seller's Corner. ASCII only. ---- */
/* Its two columns run wide-then-narrow, the reverse of every other pf-layout.
   Scoped to its own wrapper: the package restated .pf-layout itself, which would
   have flipped the Pro Forma, the Counter Offer and What Is My Business Worth. */
.xp-layout{grid-template-columns:minmax(300px,1fr) minmax(300px,420px)}
.xp-progress{height:8px;border-radius:4px;background:var(--cream);margin:12px 0 6px;overflow:hidden}
.xp-progress > div{height:100%;background:var(--green);transition:width .2s}
.xp-sec{margin-top:16px}
.xp-q{padding:12px 0;border-top:1px solid #eef1f3}
.xp-q:first-of-type{border-top:0}
.xp-prompt{font-size:14.5px;font-weight:600;color:var(--dark);margin-bottom:8px}
.xp-done .xp-prompt::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);margin-right:8px;vertical-align:middle}
.xp-q .tk-pill{padding:7px 12px;font-size:13px}
.xp-status{border-radius:10px;padding:14px 16px;background:var(--cream);border-left:5px solid var(--border);margin-bottom:16px}
.xp-status.xp-good{border-left-color:var(--green)}
.xp-status.xp-ok{border-left-color:#e0b040}
.xp-status.xp-bad{border-left-color:var(--coral)}
.xp-status-l{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--slate)}
.xp-status-v{font-size:24px;font-weight:800;color:var(--dark);line-height:1.15;margin:4px 0 6px}
.xp-status-n{font-size:13.5px;line-height:1.5;color:var(--dark)}
.xp-fit{margin-top:10px;padding:8px 12px;border-radius:8px;font-size:13px;line-height:1.5;border:1.5px solid}
.xp-fit-ok{border-color:var(--green);background:#fff;color:var(--dark)}
.xp-fit-no{border-color:var(--coral);background:rgba(251,126,88,0.1);color:var(--dark)}
.xp-dims{display:flex;flex-direction:column;gap:10px;margin-bottom:10px}
.xp-dim-h{display:flex;justify-content:space-between;font-size:13px;font-weight:600;color:var(--dark);margin-bottom:4px}
.xp-dim-h small{font-weight:500;color:var(--slate)}
.xp-bar{height:10px;border-radius:5px;background:var(--cream);overflow:hidden}
.xp-bar > div{height:100%;transition:width .2s}
.xp-h{margin-top:12px}
.xp-h-t{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--green);border-bottom:1.5px solid var(--lime);padding-bottom:4px;margin-bottom:8px}
.xp-act{display:grid;grid-template-columns:14px 1fr;gap:10px;align-items:start;padding:8px 0;border-bottom:1px solid #eef1f3}
.xp-act i{display:block;width:10px;height:10px;border-radius:50%;margin-top:5px;background:var(--border)}
.xp-w3 i{background:var(--coral)}
.xp-w2 i{background:#e0b040}
.xp-w1 i{background:var(--green)}
.xp-act-t{font-size:13.5px;line-height:1.5;color:var(--dark)}
.xp-ph{font-size:11.5px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:.05em;margin:10px 0 4px}
.xp-pa{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:12.5px;padding:3px 0;border-bottom:1px solid #eef1f3}
.xp-pa span:first-child{color:var(--slate)}
.xp-pa span:last-child{color:var(--dark);font-weight:600}
@media (max-width:560px){
.xp-pa{grid-template-columns:1fr}
}
/* ---- Self Storage + Hotel Acquisition Analysis (industry_common.css). ASCII only. ---- */
.tk-ro{background:var(--cream);font-weight:700;color:var(--dark);font-size:16px;padding:0 14px}
.pf-print .tk-stats,.pf-print .tk-flags{display:none}
.pf-print .tk-bh{margin-top:14px}
/* ---- Redact (tool_redact.js), both surfaces. ASCII only. ---- */
.rd-list{display:flex;flex-direction:column;margin-top:14px}
.rd-file{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}
.rd-file:last-child{border-bottom:0}
.rd-name{font-weight:700;color:var(--dark)}
.rd-file-act{display:flex;align-items:center;gap:8px;flex-shrink:0}
.rd-b{font-size:12px;font-weight:700;border-radius:12px;padding:4px 10px;background:var(--cream);color:var(--slate);white-space:nowrap}
.rd-b-work{background:rgba(224,176,64,.16);color:#8a6a10}
.rd-b-done{background:var(--green-tint);color:var(--green)}
.rd-b-err{background:rgba(251,126,88,.14);color:#b8552f}
.rd-dl{padding:7px 14px;min-height:0}
.rd-what{margin-top:14px;line-height:1.55}
.rd-out{margin-top:10px;background:var(--cream);border-radius:8px;padding:12px 14px;font-size:12.5px;line-height:1.5;color:var(--dark);white-space:pre-wrap;word-break:break-word;max-height:320px;overflow:auto;font-family:ui-monospace,Menlo,Consolas,monospace}
@media (max-width:560px){
.rd-file{flex-direction:column;align-items:stretch}
.rd-file-act{justify-content:flex-end}
}
/* ---- Business Plan Builder (tool_business_plan.js). ASCII only. ---- */
/* NOTE: THREE SHARED RULES ARE OVERRIDDEN FOR THIS TOOL ONLY, and the first of them
   is the difference between a printed plan and a blank sheet. Every other tool
   prints from a separate .pf-print block, so the live stylesheet hides
   .pf-layout entirely in print. This tool's document IS inside .pf-layout, so it
   needs the layout back, and only for itself. .pf-layout.bp-layout outranks the
   live .pf-layout on specificity, which is what lets an !important beat an
   !important. The package restated the bare .pf-layout instead, which would have
   printed every other tool's on-screen form beside its report. */
.pf-layout.bp-layout{grid-template-columns:minmax(300px,1fr) minmax(340px,520px)}
.bp-layout .pf-right{max-height:calc(100vh - 24px);overflow:auto}
@media (max-width:960px){.bp-layout .pf-right{max-height:none}}
@media print{.pf-layout.bp-layout{display:block !important}}
.bp-or{margin:12px 0 8px;font-weight:600;color:var(--dark)}
.bp-sec-card .bp-field{margin-top:10px}
.bp-doc{border:1.5px solid var(--border);border-radius:12px;padding:26px 28px;background:#fff;font-size:13.5px;line-height:1.6;color:var(--dark)}
.bp-doc p{margin:0 0 8px}
.bp-cover{padding-bottom:18px;border-bottom:3px solid var(--green);margin-bottom:18px}
.bp-cover-top{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.bp-cover-top .pf-logo,.bp-doc img{height:46px;width:auto;max-width:200px}
.bp-cover-kicker{font-size:10.5px;font-weight:700;letter-spacing:.1em;color:var(--green)}
.bp-cover-title{font-size:30px;font-weight:800;line-height:1.1;margin-top:22px}
.bp-cover-sub{font-size:19px;font-weight:700;margin-top:4px}
.bp-cover-mode{font-size:13px;color:var(--slate);margin:2px 0 16px}
.bp-cover-meta div{display:grid;grid-template-columns:150px 1fr;gap:12px;font-size:13px;padding:3px 0}
.bp-cover-meta span{font-size:10.5px;font-weight:700;letter-spacing:.06em;color:var(--green);padding-top:3px}
.bp-cover-note{font-size:11px;color:var(--slate);margin-top:14px;line-height:1.5}
.bp-toc ol{margin:6px 0 0;padding-left:22px;columns:2;font-size:13px}
.bp-h2{font-size:17px;font-weight:800;color:var(--dark);border-bottom:2px solid var(--green);padding-bottom:4px;margin:24px 0 10px}
.bp-h3{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--green);margin:14px 0 4px}
.bp-h4{font-size:12px;font-weight:700;color:var(--slate);margin:10px 0 2px}
.bp-ul{margin:0 0 6px;padding-left:18px}
.bp-ul li{margin-bottom:3px}
.bp-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0 4px}
.bp-kpis div{background:var(--cream);border-radius:8px;padding:8px 10px}
.bp-kpis span{display:block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--slate)}
.bp-kpis b{font-size:16px;color:var(--dark)}
.bp-foot{margin-top:22px;padding-top:10px;border-top:1px solid var(--border);font-size:10.5px;color:var(--slate)}
@media (max-width:560px){
.bp-kpis{grid-template-columns:repeat(2,1fr)}
.bp-toc ol{columns:1}
.bp-cover-meta div{grid-template-columns:1fr;gap:0}
}
@media print{
.bp-layout .pf-left,.bp-preview-card > .tk-msg{display:none !important}
.bp-layout .pf-right{position:static;max-height:none;overflow:visible}
.bp-doc{border:0;padding:0;font-size:11pt}
.bp-cover{break-after:page}
.bp-toc{break-after:page}
.bp-sec{break-before:page}
.bp-h2{margin-top:0}
.bp-kpis{break-inside:avoid}
}
/* ---- Acquisition 101 (tool_acq101.js). ASCII only. ---- */
.aq-top{margin-top:16px;padding:14px 20px}
.aq-prog{height:10px;border-radius:5px;background:var(--cream);overflow:hidden}
.aq-prog > div{height:100%;background:var(--green);transition:width .3s}
.aq-prog-t{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--slate);margin-top:8px}
.aq-layout{display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:16px 20px;align-items:start;margin-top:16px}
.aq-side{position:sticky;top:12px;max-height:calc(100vh - 24px);overflow:auto}
.aq-nav{background:#fff;border:1.5px solid var(--border);border-radius:12px;padding:12px 10px}
.aq-mod{margin-bottom:10px}
.aq-mod-t{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;font-weight:800;color:var(--dark);padding:6px 8px 4px}
.aq-mod-c{font-size:11px;font-weight:700;color:var(--green);background:var(--green-tint);border-radius:10px;padding:2px 8px}
.aq-lesson{display:grid;grid-template-columns:14px 1fr;gap:8px;align-items:center;width:100%;text-align:left;font:inherit;font-size:13px;color:var(--dark);background:none;border:0;border-radius:8px;padding:7px 8px;cursor:pointer}
.aq-lesson:hover{background:var(--cream)}
.aq-lesson.aq-on{background:var(--dark);color:#fff}
.aq-lesson i{display:block;width:10px;height:10px;border-radius:50%;border:2px solid var(--border)}
.aq-lesson.aq-done i{background:var(--green);border-color:var(--green)}
.aq-lesson.aq-on i{border-color:var(--lime)}
.aq-lesson.aq-on.aq-done i{background:var(--lime);border-color:var(--lime)}
.aq-side-c{margin-top:10px;padding:12px}
.aq-side-c .tk-btn{width:100%}
.aq-main{padding:26px 30px}
.aq-crumb{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--green)}
.aq-h{font-size:26px;font-weight:800;color:var(--dark);margin:4px 0 14px;line-height:1.15}
.aq-p{font-size:15px;line-height:1.7;color:var(--dark);margin:0 0 12px}
.aq-points{background:var(--cream);border-left:4px solid var(--lime);border-radius:8px;padding:12px 16px;margin:16px 0}
.aq-points-t{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--slate);margin-bottom:4px}
.aq-points ol{margin:0;padding-left:20px}
.aq-points li{font-size:14px;line-height:1.55;color:var(--dark);margin-bottom:3px}
.aq-tool{display:grid;grid-template-columns:1fr auto;gap:6px 16px;align-items:center;border:1.5px solid var(--green);border-radius:10px;padding:14px 16px;margin:16px 0;background:var(--green-tint)}
.aq-tool-t{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--green);grid-column:1/-1}
.aq-tool-n{font-size:15px;font-weight:800;color:var(--dark)}
.aq-tool-w{font-size:13.5px;line-height:1.5;color:var(--dark);grid-column:1}
.aq-tool-b{grid-column:2;grid-row:2/4;text-decoration:none;display:inline-flex;align-items:center;white-space:nowrap}
.aq-quiz{border-top:1.5px solid var(--border);padding-top:14px;margin-top:18px}
.aq-quiz-t{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--slate);margin-bottom:8px}
.aq-q{margin-bottom:12px}
.aq-q-t{font-size:14.5px;font-weight:600;color:var(--dark);margin-bottom:6px}
.aq-q-a{display:flex;flex-direction:column;gap:6px}
.aq-a{font:inherit;font-size:13.5px;text-align:left;color:var(--dark);background:#fff;border:1.5px solid var(--border);border-radius:8px;padding:8px 12px;cursor:pointer;line-height:1.4}
.aq-a:hover:not(:disabled){border-color:var(--green)}
.aq-a:disabled{cursor:default}
.aq-a.aq-right{border-color:var(--green);background:var(--green-tint)}
.aq-a.aq-wrong{border-color:var(--coral);background:rgba(251,126,88,0.1);text-decoration:line-through}
.aq-score{font-size:13.5px;font-weight:600;color:var(--dark);margin-top:4px}
.aq-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:1.5px solid var(--border)}
.aq-foot-r{display:flex;gap:8px;flex-wrap:wrap}
#aqPrintWrap{display:none}
.aq-cert-m{margin-top:12px;font-size:13px;color:var(--dark)}
.aq-cert-l{display:grid;grid-template-columns:28px 1fr 50px;gap:8px;padding:3px 0;border-bottom:1px solid #eef1f3}
.aq-cert-l span:first-child{font-family:ui-monospace,Menlo,monospace;color:var(--green);font-weight:700}
.aq-cert-l span:last-child{text-align:right;color:var(--slate)}
.aq-cert-n{font-size:12.5px;line-height:1.5;color:var(--dark);margin-top:8px}
.aq-cert-n div{white-space:pre-wrap}
@media (max-width:900px){
.aq-layout{grid-template-columns:1fr}
.aq-side{position:static;max-height:none}
.aq-tool{grid-template-columns:1fr}
.aq-tool-b{grid-column:1;grid-row:auto;justify-content:center}
}
@media print{
.aq-top,.aq-layout{display:none !important}
#aqPrintWrap{display:block}
}
/* ---- Customer Concentration Analysis (tool_concentration.js), both surfaces. ASCII only. ---- */
/* Its two columns run closer to equal than the shared pf-layout's narrow-left.
   Scoped to its own wrapper: the package restated the bare .pf-layout, which
   would have reshaped the Pro Forma, the Counter Offer and What Is My Business
   Worth. Same call as the Exit Plan and the Business Plan before it. */
.pf-layout.cc-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.cc-grid-wrap{overflow-x:auto}
.cc-grid{border-collapse:collapse;width:100%;min-width:560px;font-size:12.5px}
.cc-grid th{font-size:11px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:.04em;text-align:left;padding:4px 4px 6px;border-bottom:1.5px solid var(--border)}
.cc-grid td{padding:4px 3px;vertical-align:middle;border-bottom:1px solid #eef1f3}
.cc-in{min-height:36px;padding:0 6px}
.cc-in input{font-size:13px;padding:6px 2px;min-width:0;width:100%}
.cc-grid td:first-child{min-width:120px}
.cc-amt input{text-align:right;width:78px}
.cc-yrs input{width:34px;text-align:right}
.cc-mode{font:inherit;font-size:11px;font-weight:800;color:var(--green);background:var(--green-tint);border:0;border-radius:6px;padding:3px 6px;cursor:pointer;margin-left:2px}
.cc-sel{font:inherit;font-size:12px;color:var(--dark);border:1.5px solid var(--border);border-radius:6px;padding:6px 4px;background:#fff;width:100%;min-width:70px}
.cc-del{padding:2px 6px;min-height:0;font-size:12px}
.cc-add{margin-top:10px;border-style:dashed}
.cc-anon{margin-top:12px}
.cc-bar{display:flex;height:30px;border-radius:8px;overflow:hidden;background:var(--cream);margin:4px 0 8px}
.cc-seg{height:100%;min-width:1px}
.cc-seg-b{box-shadow:inset 0 0 0 1px var(--border)}
.cc-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12.5px;color:var(--dark);margin-bottom:14px}
.cc-legend span{display:inline-flex;align-items:center;gap:6px}
.cc-legend i{display:inline-block;width:11px;height:11px;border-radius:3px;border:1px solid rgba(58,74,85,.15)}
    /* ---- Marketing Blueprint (tool_blueprint.js). ASCII only.
       Shared pf-/lab-/wm- rules already pasted by earlier tools are NOT repeated.
       The ones this tool needs differently are scoped to .mb-layout so the Pro Forma,
       Lease Abstract and Fin Spread keep the values they shipped with. ---- */
    .pf-layout.mb-layout{grid-template-columns:minmax(320px,1fr) minmax(340px,540px)}
    .mb-layout .pf-right{max-height:calc(100vh - 24px);overflow:auto}
    .mb-layout .lab-abstop{margin-bottom:8px}
    .mb-layout .pf-t{font-size:12.5px;min-width:0}
    .mb-layout .pf-t th,.mb-layout .pf-t td{padding:5px 8px;vertical-align:top}
    .mb-layout .pf-t th:first-child,.mb-layout .pf-t td:first-child{position:static;background:none;min-width:0}
    .mb-layout .pf-t th{font-size:11px}
    .mb-layout .pf-t-s th,.mb-layout .pf-t-s td{padding:4px 6px}
    .mb-tcard{border-left:5px solid var(--lime)}
    .mb-blogs{margin-top:12px}.mb-blogs .tk-l{display:block;margin-bottom:6px}.mb-blogs .tk-h{display:inline;font-weight:500;margin-left:6px}
    .mb-blog{display:flex;align-items:center;gap:8px;min-height:34px;margin-top:6px;padding:0 8px 0 0}.mb-bn{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--cream);font-size:11px;font-weight:800;color:var(--slate);margin-left:6px;flex-shrink:0}.mb-blog input{font-size:13px;padding:6px 2px;font-weight:600;min-width:0;width:100%}.mb-blog input::placeholder{color:#8a9aa6;font-weight:500}
    .mb-addons{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:6px 14px;margin-top:6px}
    /* the document */
    .mb-doc{border:1.5px solid var(--border);border-radius:12px;padding:24px 26px;background:#fff;font-size:13.5px;line-height:1.55;color:var(--dark)}
    .mb-cover{padding-bottom:16px;border-bottom:3px solid var(--green);margin-bottom:14px}.mb-cover-top{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.mb-cover-top .pf-logo,.mb-doc img{height:44px;width:auto;max-width:200px}
    .mb-kicker{font-size:10.5px;font-weight:700;letter-spacing:.1em;color:var(--green)}
    .mb-title{font-size:26px;font-weight:800;line-height:1.1;margin-top:18px}.mb-sub{font-size:18px;font-weight:700;margin-top:2px}
    .mb-meta{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:12px;color:var(--slate);margin-top:8px}
    .mb-h2{font-size:16px;font-weight:800;color:var(--dark);border-bottom:2px solid var(--green);padding-bottom:3px;margin:20px 0 8px}
    .mb-h3{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--green);margin:12px 0 4px}
    .mb-p{margin:0 0 8px}
    .mb-ul{margin:0 0 6px;padding-left:18px}.mb-ul li{margin-bottom:3px}
    .mb-attrs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:4px 18px;margin:6px 0}.mb-attrs div{font-size:13px;padding:3px 0;border-bottom:1px solid #eef1f3}.mb-attrs span{display:block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--slate)}
    .mb-trig{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.mb-trig > div{background:var(--cream);border-left:4px solid var(--lime);border-radius:8px;padding:10px 12px}.mb-trig-n{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--green)}.mb-trig-s{font-weight:700;margin:2px 0 6px;line-height:1.4}.mb-trig-g{font-size:12.5px;line-height:1.45}.mb-trig-g span{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--slate)}
    .mb-camp{margin-top:8px}
    .mb-tg{border-collapse:collapse;width:100%;font-size:12.5px;margin:4px 0 8px}.mb-tg th{font-size:11px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:.04em;text-align:left;background:var(--cream);padding:5px 8px;border:1px solid var(--border)}.mb-tg td{padding:6px 8px;border:1px solid var(--border);vertical-align:top;color:var(--dark)}
    .mb-em td:first-child{width:24px;font-weight:700;color:var(--slate)}.mb-em td:nth-child(2){width:60px;font-weight:700}
    .mb-kw td.mb-tbd{background:var(--cream)}.mb-kw td:first-child{width:22px}
    .mb-ct td{white-space:normal}.mb-ct td:first-child{width:34%}
    .mb-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px 24px}
    .mb-offers div{border:1.5px solid var(--border);border-radius:8px;padding:8px 12px;margin-bottom:8px;font-weight:700}.mb-offers span{display:block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--green);margin-bottom:2px}
    .mb-foot{margin-top:18px;padding-top:10px;border-top:1px solid var(--border);font-size:10.5px;color:var(--slate);line-height:1.5}
    @media (max-width:960px){.pf-layout.mb-layout{grid-template-columns:1fr}.mb-layout .pf-right{max-height:none;overflow:visible}}
    @media print{
      .pf-layout.mb-layout{display:block !important}
      .mb-layout .pf-left,.mb-preview-card > .tk-msg{display:none !important}
      .mb-layout .pf-right{position:static;max-height:none;overflow:visible}
      .mb-doc{border:0;padding:0;font-size:10.5pt}
      .mb-camp{break-before:page}
      .mb-cover{break-after:avoid}
      .mb-layout .pf-tw,.mb-tg,.mb-trig{break-inside:avoid}
    }
    /* ---- List My Business For Sale (tool_list_request.js). ASCII only.
       Shared pf-/lab- rules already pasted by earlier tools are NOT repeated.
       The ones this tool needs differently are scoped: .lr-layout for the
       interactive column, .lr-cim for the CIM tables (which render in BOTH the
       preview and the printout), #lrPrintWrap for the printout only. The Pro
       Forma, Fin Spread and Lease Abstract keep the values they shipped with. ---- */
    .pf-layout.lr-layout{grid-template-columns:minmax(300px,1fr) minmax(320px,460px)}
    .lr-layout .pf-cb{align-items:flex-start;line-height:1.45}
    .lr-layout .pf-cb input{margin:2px 0 0;flex-shrink:0}
    #lrPrintWrap .pf-break{height:16px}
    .lr-cim .pf-t{min-width:0}
    .lr-cim .pf-t th:first-child,.lr-cim .pf-t td:first-child{position:static;background:none;min-width:0}
    .lr-cim .pf-t th{background:none}
    .tk-btn:disabled{opacity:.5;cursor:default}

    .lr-checks{display:flex;flex-direction:column;gap:8px;margin-top:10px}
    .lr-agree span{font-size:13px}
    .lr-status{border-left:5px solid var(--border)}.lr-s-submitted,.lr-s-in_review{border-left-color:#e0b040}.lr-s-changes_requested{border-left-color:var(--coral)}.lr-s-approved,.lr-s-published{border-left-color:var(--green)}.lr-s-declined,.lr-s-withdrawn{border-left-color:var(--slate)}
    .lr-status-l{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--slate)}
    .lr-status-v{font-size:22px;font-weight:800;color:var(--dark);margin:2px 0 4px}
    .lr-notes{margin-top:10px;background:var(--cream);border-radius:8px;padding:10px 14px;font-size:14px;line-height:1.55;color:var(--dark)}.lr-notes-t{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--green);margin-bottom:2px}
    .lr-submit{border-color:var(--green);background:var(--green-tint)}.lr-submit .tk-h{max-width:640px}
    /* the listing card, styled like a marketplace page */
    .lr-listing{border:1.5px solid var(--border);border-radius:12px;padding:20px 22px;background:#fff}
    .lr-blind{border-color:var(--dark)}
    .lr-tag{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--dark);border-radius:10px;padding:3px 10px;margin-bottom:10px}
    .lr-blind .lr-tag{background:var(--green)}
    .lr-name{font-size:20px;font-weight:800;color:var(--dark);line-height:1.2}
    .lr-head{font-size:15px;font-weight:600;color:var(--green);margin-top:4px}
    .lr-where{font-size:13px;color:var(--slate);margin:4px 0 12px}
    .lr-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px 14px;background:var(--cream);border-radius:10px;padding:12px 14px;margin-bottom:12px}
    .lr-fk{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--slate)}.lr-fv{font-size:14px;font-weight:700;color:var(--dark);line-height:1.3}
    .lr-sh{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--green);margin:12px 0 3px;padding-bottom:3px;border-bottom:1px solid var(--border)}
    .lr-st{font-size:13.5px;line-height:1.55;color:var(--dark);white-space:pre-wrap}
    .lr-foot{margin-top:14px;padding-top:10px;border-top:1px solid var(--border);font-size:10.5px;color:var(--slate);line-height:1.5}
    @media (max-width:960px){.pf-layout.lr-layout{grid-template-columns:1fr}}
    @media print{.lr-status,.lr-submit > .tk-msg{display:none !important}.lr-listing{break-inside:avoid}}
    .lr-refresh{padding:6px 12px;min-height:0;font-size:12.5px}
    .lr-status .lab-abstop{align-items:center;margin-bottom:2px}

    /* the draft CIM */
    .lr-cim{border:1.5px solid var(--border);border-radius:12px;padding:20px 22px;background:#fff}
    .lr-cim-cover{background:var(--dark);color:#fff;border-radius:10px;padding:26px 24px 20px;margin:10px 0 18px;border-bottom:6px solid var(--lime)}
    .lr-cim-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--lime)}
    .lr-cim-name{font-size:24px;font-weight:800;line-height:1.15;margin-top:8px}
    .lr-cim-head{font-size:15px;font-weight:600;color:var(--lime);margin-top:6px}
    .lr-cim-sub{font-size:13px;color:rgba(255,255,255,.75);margin-top:4px}
    .lr-cim-price{font-size:18px;font-weight:800;margin-top:14px}
    .lr-cim-draft{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--coral);margin-top:12px}
    .lr-cim-sec{margin-top:16px}
    .lr-cim-title{font-size:14px;font-weight:800;color:var(--dark);text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--green);padding-bottom:4px;margin-bottom:8px}
    .lr-cim-h{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--green);margin:10px 0 3px}
    .lr-cim-p{font-size:13.5px;line-height:1.6;color:var(--dark);white-space:pre-wrap;margin-bottom:6px}
    .lr-cim-note{font-size:12px;line-height:1.5;color:var(--slate);font-style:italic;margin:6px 0}
    .lr-cim-kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:4px 18px;margin:6px 0 8px}
    .lr-cim-kv > div{display:flex;justify-content:space-between;gap:10px;font-size:13px;padding:4px 0;border-bottom:1px solid #eef1f3}
    .lr-cim-kv span:first-child{color:var(--slate);font-weight:600}.lr-cim-kv span:last-child{color:var(--dark);font-weight:700;text-align:right}
    .lr-cim-ul{margin:4px 0 8px;padding-left:18px}.lr-cim-ul li{font-size:13.5px;line-height:1.55;color:var(--dark);margin-bottom:3px}
    .lr-cim-faq{margin-bottom:8px}.lr-cim-q{font-size:13.5px;font-weight:700;color:var(--dark)}.lr-cim-a{font-size:13.5px;line-height:1.55;color:var(--dark)}
    .lr-cim-disc{margin-top:18px;padding-top:10px;border-top:1px solid var(--border);font-size:10.5px;line-height:1.5;color:var(--slate)}
    @media print{.lr-cim-sec{break-inside:avoid}.lr-cim-cover{break-after:page}}
    /* ---- Business Credit (tool_biz_credit.js). ASCII only.
       Its stylesheet is the Acquisition 101 course sheet, already pasted by
       tool_acq101.css and tool_sell_prep.css. Only the two rules this tool
       adds are pasted; the other 68 are already in the page, and the five it
       redeclares differently are all SUBSETS of what is live (they drop
       line-height and margin), so keeping live is strictly better. ---- */
    .aq-tool-flat{border-color:var(--border);background:var(--cream)}
    .aq-tool-flat .aq-tool-t{color:var(--slate)}
    /* ---- SBA Valuation Estimator (tool_sba_value.js). ASCII only.
       Shared pf-/lab- rules already pasted by earlier tools are NOT repeated.
       The ones this tool needs differently are scoped: .sv-layout for the two
       columns, #svOut and #svPrintWrap for the tables, which render in both.
       The Pro Forma, Fin Spread, Lease Abstract, Storage, Hotel and Advanced
       Calculator keep the values they shipped with. ---- */
    .pf-layout.sv-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}
    #svOut .pf-t,#svPrintWrap .pf-t{min-width:0}
    #svOut .pf-t th,#svOut .pf-t td,#svPrintWrap .pf-t th,#svPrintWrap .pf-t td{padding:6px 8px}
    #svOut .pf-t th:first-child,#svOut .pf-t td:first-child,#svPrintWrap .pf-t th:first-child,#svPrintWrap .pf-t td:first-child{position:static;background:none;min-width:0}
    #svOut .pf-t th,#svPrintWrap .pf-t th{font-size:11px;background:none}
    #svOut .pf-t-s th,#svOut .pf-t-s td,#svPrintWrap .pf-t-s th,#svPrintWrap .pf-t-s td{padding:4px 6px}
    #svPrintWrap .pf-pkv{font-size:19px}
    /* Scoped, but NOT because it was dangerous: an earlier tool already pastes
       `.pf-print .tk-stats,.pf-print .tk-flags{display:none}` globally, and the
       package's version only widens that list with .sv-bars (this tool only)
       and .tk-bh (in no printout on the site). Unscoped it would have changed
       nothing. Kept narrow anyway so the next reader does not have to re-derive
       that. Corrected 21 Sep: the commit that shipped this claimed it would
       have blanked the Advanced Calculator, Storage and Hotel stat tiles. It
       would not have; those are already hidden in print by the older rule. */
    #svPrintWrap .tk-stats,#svPrintWrap .tk-flags,#svPrintWrap .sv-bars,#svPrintWrap .tk-bh{display:none}
    #svPrintWrap .pf-tw{display:block}
    #svPrintWrap .pf-t{display:table}

    .sv-grid-wrap{overflow-x:auto}
    .sv-grid{border-collapse:collapse;width:100%;min-width:380px;font-size:12.5px}
    .sv-grid th{font-size:11px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:.04em;text-align:left;padding:4px 4px 6px;border-bottom:1.5px solid var(--border)}
    .sv-grid td{padding:4px 3px;border-bottom:1px solid #eef1f3}
    .sv-in{min-height:36px;padding:0 6px}.sv-in input{font-size:13px;padding:6px 2px;min-width:0;width:100%}
    .sv-yr input{width:58px}.sv-amt input{text-align:right}.sv-pct input{text-align:right;width:44px}
    .sv-add{margin:10px 0 6px;border-style:dashed}
    .sv-wts{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px 14px}
    .sv-wt{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;color:var(--dark)}
    .sv-bars{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
    .sv-bar{display:grid;grid-template-columns:minmax(120px,1.3fr) minmax(60px,2fr) auto;gap:10px;align-items:center}
    .sv-bar-l{font-size:13px;font-weight:700;color:var(--dark);line-height:1.25}.sv-bar-l span{display:block;font-size:11.5px;font-weight:500;color:var(--slate)}
    .sv-bar-t{height:14px;border-radius:7px;background:var(--cream);overflow:hidden}
    .sv-bar-f{height:100%;background:#a3c866;border-radius:7px}.sv-bar-sba{background:var(--green)}.sv-bar-con{background:var(--dark)}
    .sv-bar-v{font-size:13.5px;font-weight:800;color:var(--dark);text-align:right;white-space:nowrap}
    .sv-bar-c{border-top:1.5px solid var(--border);padding-top:8px;margin-top:2px}
    /* The package collapsed at 980px, where every other tool collapses at 960.
       Unscoped that would collapse the other pf-layout tools 20px early. */
    @media (max-width:980px){.pf-layout.sv-layout{grid-template-columns:1fr}.sv-layout .pf-right{position:static}}
    @media (max-width:560px){.sv-bar{grid-template-columns:1fr auto}.sv-bar-t{grid-column:1/-1;order:3}}
    /* ---- Medical Practice Analysis (tool_medical.js). ASCII only.
       Shared pf-/lab- rules already pasted by earlier tools are NOT repeated.
       The ones this tool needs differently are scoped: .mp-layout for the two
       columns, #mpOut and #mpPrintWrap for the tables, which render in both.
       All fourteen of its own mp- class names were checked free before use. ---- */
    .pf-layout.mp-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}
    #mpOut .pf-t,#mpPrintWrap .pf-t{min-width:0}
    #mpOut .pf-t th,#mpOut .pf-t td,#mpPrintWrap .pf-t th,#mpPrintWrap .pf-t td{padding:6px 8px}
    #mpOut .pf-t th:first-child,#mpOut .pf-t td:first-child,#mpPrintWrap .pf-t th:first-child,#mpPrintWrap .pf-t td:first-child{position:static;background:none;min-width:0}
    #mpOut .pf-t th,#mpPrintWrap .pf-t th{font-size:11px;background:none}
    #mpOut .pf-t-s th,#mpOut .pf-t-s td,#mpPrintWrap .pf-t-s th,#mpPrintWrap .pf-t-s td{padding:4px 6px}
    #mpPrintWrap .pf-pkv{font-size:19px}
    /* `.pf-pnotes` is already pasted with exactly this body, so only the
       singular is added here. It is this tool's alone. */
    .pf-pnote{font-size:11.5px;color:var(--slate);white-space:normal;margin-top:4px;line-height:1.5}
    /* Scoped for containment, not because it was dangerous: the live sheet
       already hides .tk-stats and .tk-flags inside .pf-print, and the four this
       adds are either this tool's own or (.tk-bh) in no printout on the site. */
    #mpPrintWrap .tk-stats,#mpPrintWrap .tk-flags,#mpPrintWrap .mp-bar,#mpPrintWrap .mp-legend,#mpPrintWrap .tk-bh,#mpPrintWrap .mp-fin{display:none}

    .mp-grid-wrap{overflow-x:auto}
    .mp-grid{border-collapse:collapse;width:100%;min-width:460px;font-size:12.5px}
    .mp-grid th{font-size:11px;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:.04em;text-align:left;padding:4px 4px 6px;border-bottom:1.5px solid var(--border)}
    .mp-grid td{padding:4px 3px;vertical-align:middle;border-bottom:1px solid #eef1f3}
    .mp-in{min-height:36px;padding:0 6px}.mp-in input{font-size:13px;padding:6px 2px;min-width:0;width:100%}
    .mp-amt input{text-align:right;width:92px}
    .mp-sel{font:inherit;font-size:12px;color:var(--dark);border:1.5px solid var(--border);border-radius:6px;padding:6px 4px;background:#fff;width:100%;min-width:104px}
    .mp-cb{width:16px;height:16px;accent-color:var(--green);margin:0}
    .mp-add{margin-top:10px;border-style:dashed}
    .mp-bar{display:flex;height:26px;border-radius:8px;overflow:hidden;background:var(--cream);margin:4px 0 8px}.mp-seg{height:100%;min-width:1px}
    .mp-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12.5px;color:var(--dark);margin-bottom:12px}.mp-legend span{display:inline-flex;align-items:center;gap:6px}.mp-legend i{display:inline-block;width:11px;height:11px;border-radius:3px}
    .mp-fin{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:6px 0 10px}
    .mp-fin-col{border:1.5px solid var(--border);border-radius:10px;padding:12px 14px}
    .mp-fin-on{border-color:var(--green);background:var(--green-tint)}
    .mp-fin-h{font-size:13px;font-weight:800;color:var(--dark);margin-bottom:6px;padding-bottom:5px;border-bottom:1px solid var(--border)}
    /* The package collapsed at 980px, where every other tool collapses at 960.
       Unscoped that would collapse the other pf-layout tools 20px early. */
    @media (max-width:980px){.pf-layout.mp-layout{grid-template-columns:1fr}.mp-layout .pf-right{position:static}}
    @media (max-width:620px){.mp-fin{grid-template-columns:1fr}}

/* ---- Small Business Valuation (tool_sb_valuation.js), 24 September 2026.
   ASCII only. Requires toolkit_common.css.

   > THE PACKAGE'S OWN REDECLARATIONS OF THE SHARED pf- RULES ARE NOT HERE,
   and dropping them is the whole of the review on this file. Its header said
   it "redeclares the shared pf- and lab- rules it uses", and EIGHT of those
   arrived WEAKER than the live ones: .pf-t th:first-child lost
   position:sticky, .pf-t lost min-width:520px, .pf-tw lost
   -webkit-overflow-scrolling. Pasting them would have regressed the printout
   of all seventeen printing tools, silently, because a later identical
   selector wins. Seventeen more were byte identical and are equally absent:
   a rule that already exists is not improved by existing twice.

   > AND ITS @page IS NOT HERE EITHER. index.html already carries four, three
   of them landscape, and the LAST in source order wins for every print on
   the site. This tool asks for portrait at 12mm, so it injects that on click
   and removes it on afterprint, which is the pattern every printing tool
   here now uses. Seventh package to arrive with a bare window.print(). */

.lab-abstop{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.pf-t tr.pf-g td{background:var(--cream);font-weight:700;color:var(--green);font-size:11.5px;text-transform:uppercase;letter-spacing:.04em}
.pf-t tr.pf-hl td{background:var(--green-tint)}
.pf-t tr.pf-sde td{background:var(--green-tint);border-top:1.5px solid var(--green);border-bottom:1.5px solid var(--green)}
.pf-pnotes,.pf-pnote{font-size:12.5px;line-height:1.5;color:var(--dark);white-space:pre-wrap}
.pf-pnote{font-size:11.5px;color:var(--slate);white-space:normal;margin:4px 0 8px}
.pf-print .bv-teach,.pf-print .bv-range{display:none}
.bv-example{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;background:var(--dark);color:#fff;border-radius:12px;padding:14px 20px;margin-top:16px;font-size:14px}
.bv-example .tk-btn{background:var(--lime);border-color:var(--lime);color:var(--dark);white-space:nowrap}
.bv-step{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--green);background:var(--green-tint);border-radius:10px;padding:3px 10px;margin-bottom:8px}
.bv-teach{background:var(--cream);border-left:4px solid var(--lime);border-radius:8px;padding:12px 16px;margin:0 0 16px}
.bv-teach-t{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--slate);margin-bottom:3px}
.bv-teach-b{font-size:14px;line-height:1.65;color:var(--dark)}
.bv-years{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:14px 0}
.bv-year{border:1.5px solid var(--border);border-radius:10px;padding:10px 12px}
.bv-year-h{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-bottom:6px}
.bv-yl{padding:0 8px;min-height:32px;width:100%}
.bv-yl input{font-size:14px;font-weight:800;padding:4px 0}
.bv-f{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;color:var(--slate);margin-bottom:4px}
.bv-in{min-height:30px;padding:0 6px;max-width:112px}
.bv-in input{font-size:12.5px;padding:4px 2px;text-align:right;width:100%}
.bv-year-f{margin-top:6px;padding-top:6px;border-top:1.5px solid var(--border);font-size:13px;font-weight:800;color:var(--green);text-align:right}
.bv-add{margin-bottom:12px;border-style:dashed}
.bv-sde tr.pf-g td{background:var(--cream)}
.bv-bases{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}
.bv-basis{display:block;text-align:left;font:inherit;background:#fff;border:1.5px solid var(--border);border-radius:10px;padding:10px 12px;cursor:pointer}
.bv-basis:hover{border-color:var(--green)}
.bv-basis.bv-on{border-color:var(--green);background:var(--green-tint)}
.bv-basis.bv-cmp{border-color:var(--slate);background:var(--cream)}
.bv-basis-n{display:block;font-size:12.5px;font-weight:700;color:var(--dark)}
.bv-basis-v{display:block;font-size:19px;font-weight:800;color:var(--dark);line-height:1.2;margin:2px 0}
.bv-basis-s{display:block;font-size:11.5px;color:var(--slate)}
.bv-factors{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px 18px}
.bv-factor{border-bottom:1px solid #eef1f3;padding-bottom:8px}
.bv-factor-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.bv-factor-h b{font-size:13.5px;color:var(--dark)}
.bv-factor-w{font-size:12px;line-height:1.45;color:var(--slate);margin-top:3px}
.bv-seg{display:inline-flex;border:1.5px solid var(--border);border-radius:8px;overflow:hidden}
.bv-seg button{font:inherit;font-size:11.5px;font-weight:600;color:var(--slate);background:#fff;border:0;padding:4px 9px;cursor:pointer}
.bv-seg button + button{border-left:1px solid var(--border)}
.bv-seg button.bv-seg-on{background:var(--green);color:#fff}
.bv-score{margin-top:12px;padding:10px 14px;background:var(--cream);border-radius:8px;font-size:13.5px;color:var(--dark);display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.bv-apply{margin-left:auto}
.bv-you{font-size:10.5px;font-weight:700;color:#fff;background:var(--green);border-radius:8px;padding:1px 7px;text-transform:uppercase;letter-spacing:.04em}
.bv-range{margin-top:10px;font-size:15px;color:var(--dark)}
.bv-range b{font-size:18px}
.bv-offer{margin:12px 0;border-color:var(--border)}
.bv-offer-h{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}
.bv-name{padding:0 10px;min-height:38px;width:100%;max-width:340px}
.bv-name input{font-size:15px;font-weight:800;padding:6px 0}
.bv-loan{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0}
.bv-loan-c{border:1.5px solid var(--border);border-radius:10px;padding:10px 12px}
.bv-stack{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:10px}
.bv-compare td,.bv-compare th{text-align:center}
.bv-compare td:first-child,.bv-compare th:first-child{text-align:left}
.tk-grid-2{grid-template-columns:1fr 1fr}
.tk-grid-3{grid-template-columns:repeat(3,1fr)}
.bv-loan,.bv-stack{grid-template-columns:1fr}
.tk-grid-3{grid-template-columns:1fr}
@media print{header,.tnav,.anote,.back,.lede,.bv-example,.lab-abstop,#tkSaves,.bv-years,.bv-bases,.bv-factors,.bv-score,.bv-offer,.bv-add,.bv-teach{display:none !important}body{background:#fff}main{max-width:none;padding:0}.card{border:0;padding:0}.pf-print{border:0;padding:0;margin:0}.pf-pkey > div,.pf-tw{break-inside:avoid}}

/* who added the target, PCR-2026-10-02-07: a quiet line under the row's facts */
.tadded{font-size:11px;color:var(--slate);margin-top:2px}

