/* ============================================================
   WITSOOTH LESSON COMPANION — print stylesheet
   Shared by all companion worksheet PDFs. Matches witsooth.css
   design tokens (colors/fonts) but laid out for 8.5x11 print.
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Fredoka+One&family=DM+Sans:wght@400;500;600;700;800&family=DM+Mono:wght@400;500;700&display=swap');

:root{
  --g:#2D6A4F; --gl:#52B788; --gd:#1B4332;
  --o:#E07010; --ol:#F48C06;
  --cream:#FFFAEC; --cream-d:#F0E5C8; --paper:#FFFEFA; --ink:#1A1A1A;
  --purple:#9D4EDD; --blue:#3A86FF; --red:#D62828; --red-d:#9D1A1A;
  --gray:#6B6B5F; --gray-l:#E8E4D4; --gray-d:#3D3D35;
  --font-display:'Fredoka One',cursive;
  --font-body:'DM Sans',sans-serif;
  --font-mono:'DM Mono',monospace;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
@page{ size:letter; margin:0.48in 0.55in; }
body{font-family:var(--font-body);color:var(--ink);background:#fff;font-size:11.4px;line-height:1.45;-webkit-font-smoothing:antialiased}
.page{page-break-after:always}
.page:last-child{page-break-after:auto}

/* ── HEADER ─────────────────────────────────────────────── */
.lhead{display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:12px;border-bottom:2px solid var(--ink);margin-bottom:8px}
.lhead-left{display:flex;gap:11px;align-items:center}
.lmark{width:34px;height:34px;background:var(--gd);color:#fff;border:2px solid var(--ink);border-radius:8px;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:16px;flex-shrink:0}
.ltitle{font-family:var(--font-display);font-size:22px;color:var(--gd);line-height:1.05}
.lsub{font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;color:var(--gray);font-weight:700;margin-top:3px}
.lhead-right{text-align:right}
.ltag{font-family:var(--font-mono);font-size:10.5px;font-weight:800;letter-spacing:.06em;color:var(--o)}
.lname{font-family:var(--font-body);font-size:10.3px;color:var(--gray-d);margin-top:8px}
.lname .ln{display:inline-block;border-bottom:1px solid var(--gray);min-width:118px;margin:0 5px}
.ldiv{height:4.5px;background:var(--gd);border-radius:3px;margin-bottom:18px}

/* ── SECTION TAG ────────────────────────────────────────── */
.stag{display:inline-block;font-family:var(--font-mono);font-size:9.3px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;padding:4px 11px;border:1.5px solid var(--ink);border-radius:6px;background:#fff;margin-bottom:10px}

/* ── DRIVING QUESTION BOX ───────────────────────────────── */
.dq{background:var(--cream);border-left:5px solid var(--o);border-radius:9px;padding:16px 21px;margin-bottom:18px}
.dq .stag{background:#fff}
.dq h1{font-family:var(--font-display);font-size:17.5px;color:var(--gd);line-height:1.28;margin:7px 0 8px}
.dq p{font-family:var(--font-body);font-size:10.2px;font-style:italic;color:var(--gray-d);line-height:1.48}

/* ── GENERIC SECTION ────────────────────────────────────── */
.sect{margin-bottom:18px}
.hook{background:var(--cream);border-left:3px solid var(--gray);border-radius:7px;padding:13px 18px;margin-bottom:12px}
.hook p{font-family:var(--font-body);font-size:10.4px;font-style:italic;color:var(--gray-d);line-height:1.55}
.hook cite{display:block;font-style:normal;font-size:9px;color:var(--gray);margin-top:7px;letter-spacing:.02em}
.prompt-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.prompt-grid.single{grid-template-columns:1fr}
.prompt{font-family:var(--font-body);font-size:10.4px;font-weight:700;color:var(--ink);line-height:1.42;margin-bottom:7px}
.ans-line{border-bottom:1px solid var(--gray);height:20px}
.ans-line.short{height:16px}
.checks{display:flex;gap:18px;font-family:var(--font-body);font-size:10.2px;margin-top:3px;margin-bottom:6px}
.checks span{display:inline-flex;align-items:center;gap:5px}
.box{width:11px;height:11px;border:1.4px solid var(--ink);border-radius:3px;display:inline-block;flex-shrink:0}

/* ── CONCEPT CARDS (3-up) ───────────────────────────────── */
.concepts{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:8px}
.ccard{background:var(--cream);border-left:5px solid var(--c,var(--purple));border-radius:7px;padding:13px 15px}
.ccard .clabel{font-family:var(--font-mono);font-size:8.3px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--c,var(--purple))}
.ccard h3{font-family:var(--font-display);font-size:13.5px;color:var(--gd);margin:4px 0 6px}
.ccard p{font-family:var(--font-body);font-size:9.6px;color:var(--gray-d);line-height:1.48}
.ccard.c1{--c:var(--purple)}
.ccard.c2{--c:var(--o)}
.ccard.c3{--c:var(--red-d)}

/* ── DATA TABLE (Money-Machine style tracker) ───────────── */
table.ltable{width:100%;border-collapse:collapse;margin-bottom:8px}
table.ltable thead th{background:var(--gd);color:#fff;font-family:var(--font-mono);font-size:8.3px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-align:left;padding:7px 9px;border:1px solid var(--ink)}
table.ltable td{border:1px solid var(--gray-l);padding:9px 10px;font-family:var(--font-body);font-size:9.8px;color:var(--ink);vertical-align:top}
table.ltable td.blank{min-width:26px}
table.ltable td .fill-line{display:inline-block;border-bottom:1px solid var(--gray);width:100%;min-height:14px}
.legend{font-family:var(--font-mono);font-size:8.3px;color:var(--gray);margin:5px 0 14px;line-height:1.55}
.pick3{display:flex;gap:11px;white-space:nowrap;font-family:var(--font-body);font-size:9.5px}
.pick3 span{display:inline-flex;align-items:center;gap:3px}

/* ── OBSERVATION COLUMN GRID (Columbian-Exchange style, 3 tracking cols w/ ruled lines) ── */
.watch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:14px}
.watch-grid.two{grid-template-columns:1fr 1fr}
.watch-col p.q{font-family:var(--font-body);font-size:10.2px;font-weight:700;color:var(--ink);line-height:1.42;margin-bottom:8px}
.watch-col .fl{border-bottom:1px solid var(--gray);height:18px}

/* ── TRANSFER SECTION ───────────────────────────────────── */
.transfer-card{background:var(--cream);border-left:5px solid var(--gd);border-radius:9px;padding:16px 21px;margin-bottom:16px}
.transfer-card h2{font-family:var(--font-display);font-size:15.5px;color:var(--gd);margin-bottom:8px;line-height:1.28}
.transfer-card p{font-family:var(--font-body);font-size:10.4px;color:var(--gray-d);line-height:1.58}
.stat-chips{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-top:13px}
.stat-chips.three{grid-template-columns:repeat(3,1fr)}
.schip{background:var(--cream-d);border:1.4px solid var(--ink);border-radius:7px;padding:9px 6px;text-align:center}
.schip b{display:block;font-family:var(--font-display);font-size:15px;color:var(--gd)}
.schip span{font-family:var(--font-mono);font-size:7.5px;color:var(--gray);letter-spacing:.06em;text-transform:uppercase;display:block;margin-top:3px}

.abc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:15px}
.abc-grid .prompt{margin-bottom:8px}

/* ── FOOTER ─────────────────────────────────────────────── */
.lfoot{display:flex;justify-content:space-between;align-items:center;border-top:1.4px solid var(--gray-l);padding-top:9px;margin-top:auto;font-family:var(--font-mono);font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:var(--gray)}

.spacer{flex-grow:1}
h2.sub{font-family:var(--font-display);font-size:13.5px;color:var(--gd);margin-bottom:6px}
strong.v{color:var(--gd)}
