/* V9 — receipt story (Porchlight Stories) */
:root{--brand:#a8322a;--brand-soft:#fbecea;--brand-ink:#7c231d;--accent:#f2c14e;--accent-soft:#fdf5e0;--bg-soft:#faf6f0;--line:#ebe2d6;--head-font:"Lora",Georgia,serif}
body{background:#fbf8f3;font-family:"Lora",Georgia,serif}
h1{font-weight:700;font-size:clamp(30px,5.2vw,44px);line-height:1.12}
.kicker{background:var(--brand);color:#fff}
.cta{background:var(--brand);box-shadow:0 4px 0 #6d1d18}
.cta:hover{background:#952b24}
.sticky a{background:var(--brand)}
.progress{background:var(--brand)}
.receipt{max-width:440px;margin:2em auto;background:#fff;font-family:"Courier Prime","Courier New",monospace;font-size:15px;line-height:1.5;color:#222;padding:26px 24px 30px;box-shadow:0 10px 30px rgba(80,40,20,.12);position:relative;transform:rotate(-.6deg)}
.receipt::after{content:"";position:absolute;left:0;right:0;bottom:-12px;height:12px;background:linear-gradient(-45deg,transparent 8px,#fff 0) 0 0/16px 12px,linear-gradient(45deg,transparent 8px,#fff 0) 0 0/16px 12px;background-repeat:repeat-x}
.receipt.new{transform:rotate(.5deg)}
.receipt .rh{text-align:center;border-bottom:1px dashed #999;padding-bottom:10px;margin-bottom:10px}
.receipt .rh b{display:block;font-size:18px;letter-spacing:.06em}
.receipt .row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:5px 0}
.receipt .row small{display:block;color:#8a3b30;font-size:13px}
.receipt .row .p{white-space:nowrap}
.receipt .tot{border-top:2px dashed #333;margin-top:10px;padding-top:10px;font-weight:700;font-size:18px}
.receipt:has(.stamp-fail){padding-bottom:86px}
.receipt .stamp-fail{position:absolute;left:50%;bottom:26px;transform:translateX(-50%) rotate(-6deg);background:rgba(255,255,255,.6);border:3px solid rgba(168,50,42,.7);color:rgba(168,50,42,.75);font-weight:700;font-size:22px;padding:2px 10px;letter-spacing:.08em}
.receipt .row.hl{background:#fff6d6;margin:0 -8px;padding:6px 8px}
.receipt .foot{text-align:center;border-top:1px dashed #999;margin-top:12px;padding-top:10px;font-size:13px;color:#555}
.lesson{display:grid;grid-template-columns:40px 1fr;gap:12px;margin:1.2em 0;font-size:18px}
.lesson b.n{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#3d2a00;display:grid;place-items:center;font-family:var(--sans);font-weight:800}
