/* ============================================================
   Working Ledger — pricing page theme extension
   Loads AFTER /css/ledger.css (tokens, fonts, .btn, .badge,
   .ledger-kicker, .cta-* bands). Pricing-specific components only.
   Brand refs: reports/brand_identity.md §2 palette, §3 type,
   §4 layout rules (no centered hero / equal-card SaaS silhouette).
   ============================================================ */

/* Legacy token aliases (any surviving inline var() refs) */
:root{
  --accent:var(--pine);
  --accent2:var(--signal-ink);
  --text:var(--ink);
  --muted:var(--ink-soft);
  --border:var(--rule-strong);
  --bg-alt:var(--paper-deep);
  --card:transparent;
}

.container{max-width:1140px;margin:0 auto;padding:0 clamp(20px,4vw,56px)}
.band{padding:clamp(44px,6vw,88px) 0}
.band-rule{border-top:3px solid var(--ink)}

/* ---------- Sheet masthead ---------- */
.sheet-mast{padding:clamp(40px,6vw,84px) 0 clamp(28px,4vw,52px)}
.sheet-title{
  font-family:var(--serif);font-optical-sizing:auto;font-weight:640;
  font-variation-settings:"opsz" 60;
  font-size:clamp(2rem,5vw,3.6rem);line-height:1.08;letter-spacing:-.015em;
  max-width:24ch;
}
.sheet-title em{font-style:normal;color:var(--signal)}
.sheet-lede{margin-top:1em;font-size:1.12rem;color:var(--ink);max-width:58ch}
.sheet-actions{margin-top:clamp(18px,2.5vw,28px);display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.sim-footnote{
  margin-top:clamp(16px,2vw,24px);
  font-family:var(--mono);font-size:.68rem;color:var(--ink-soft);
}

/* ---------- Price-sheet ledger rows ---------- */
.band-title{
  font-family:var(--serif);font-weight:640;font-variation-settings:"opsz" 60;
  font-size:clamp(1.5rem,2.8vw,2.2rem);line-height:1.15;letter-spacing:-.01em;
  margin-bottom:.5em;
}
.section-intro{color:var(--ink);max-width:64ch;margin-bottom:clamp(24px,3vw,40px)}

.sheet-list{list-style:none;border-top:2px solid var(--ink)}
.sheet-row{
  counter-increment:sheet;
  display:grid;
  grid-template-columns:minmax(48px,7ch) minmax(0,7fr) minmax(220px,4fr);
  gap:clamp(12px,2.5vw,40px);
  align-items:baseline;
  padding:clamp(18px,2.6vw,30px) 0;
  border-bottom:1px solid var(--rule);
}
.sheet-row:nth-child(even){background:rgba(28,33,29,.028)}
.sheet-no{
  font-family:var(--serif);font-weight:900;font-variation-settings:"opsz" 144;
  font-size:clamp(1.8rem,3.4vw,2.8rem);line-height:1;color:var(--signal);
}
.sheet-no::before{content:counter(sheet,decimal-leading-zero)}
.sheet-row:nth-child(even) .sheet-no{color:var(--ink)}
.s-body h3{
  font-family:var(--serif);font-weight:640;font-size:clamp(1.15rem,2vw,1.55rem);
  letter-spacing:-.01em;
}
.s-body p{margin-top:.45em;font-size:.98rem;color:var(--ink);max-width:52ch}
.s-note{font-family:var(--mono);font-size:.76rem;color:var(--ink-soft)}
.s-rate{text-align:right;display:flex;flex-direction:column;gap:8px;align-items:flex-end}
.rate-line{
  font-family:var(--mono);font-weight:700;font-size:.95rem;color:var(--ink);
}
.sim-tag{
  display:inline-block;font-family:var(--mono);font-size:.66rem;color:var(--signal-ink);
  border:1px dashed currentColor;border-radius:999px;padding:3px 10px;
  letter-spacing:.04em;text-align:left;
}
@media (max-width:720px){
  .sheet-row{grid-template-columns:minmax(40px,5ch) minmax(0,1fr)}
  .s-rate{grid-column:2;text-align:left;align-items:flex-start}
}

/* ---------- Pilot band ---------- */
.pilot-band{background:var(--paper-deep)}
.pilot-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:clamp(20px,3vw,44px);border-top:2px solid var(--ink);counter-reset:pilot;
}
.pilot-entry{padding:clamp(18px,2.5vw,28px) 0;border-bottom:1px solid var(--rule)}
.pilot-entry .p-no{
  font-family:var(--serif);font-weight:900;font-variation-settings:"opsz" 144;
  font-size:clamp(2rem,4vw,3.2rem);line-height:1;color:var(--ink);
}
.pilot-entry:nth-child(2) .p-no{transform:translateX(clamp(0px,2vw,26px))}
.pilot-entry h3{
  font-family:var(--serif);font-weight:640;font-size:clamp(1.05rem,1.8vw,1.35rem);
  letter-spacing:-.01em;margin-top:.6em;
}
.pilot-entry p{margin-top:.5em;font-size:.96rem;color:var(--ink);max-width:44ch}

/* ---------- Break-even table (native ledger form) ---------- */
.be-table{
  width:100%;border-collapse:collapse;background:transparent;
  border:none;border-top:2px solid var(--ink);
}
.be-table th,.be-table td{
  padding:13px 14px;text-align:left;border-bottom:1px solid var(--rule);
  font-family:var(--mono);font-size:.82rem;color:var(--ink);
}
.be-table th{
  font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--ink-soft);border-bottom:1px solid var(--rule-strong);
}
.be-table td:first-child{font-weight:600}
.be-table tr:nth-child(even){background:rgba(28,33,29,.028)}
.be-note{
  margin-top:18px;font-family:var(--mono);font-size:.72rem;color:var(--ink-soft);
}

/* ---------- Guardrails as ruled rows ---------- */
.trust-list{display:block;border-top:2px solid var(--ink)}
.trust-item{
  background:transparent !important;border:none !important;border-radius:0 !important;
  box-shadow:none;padding:clamp(16px,2.4vw,26px) 0 !important;
  border-bottom:1px solid var(--rule) !important;
}
.trust-item:nth-child(even){padding-left:clamp(0px,3vw,48px) !important}
.trust-item h3{
  font-family:var(--serif);font-weight:640;font-size:clamp(1.05rem,1.9vw,1.4rem);
  letter-spacing:-.01em;margin-bottom:0;
}
.trust-item p{margin-top:.5em;color:var(--ink);max-width:62ch;font-size:.97rem}
@media (max-width:720px){.trust-item:nth-child(even){padding-left:0 !important}}

/* ---------- Footer ---------- */
.trace-footer{border-top:3px solid var(--ink);background:var(--paper-deep)}
.tf-bottom{
  display:flex;flex-wrap:wrap;gap:12px 40px;justify-content:space-between;align-items:baseline;
  padding:22px 0 30px;font-family:var(--mono);font-size:.72rem;color:var(--ink-soft);
}
