/* ============================================================
   ANEW Math — shared theme
   Tokens pulled from the Unit 4-5 build so every page matches.
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;600&family=Inter:wght@400;500;600;700&display=swap');

:root{
  --teal:#0f7c6b; --teal-d:#0a5c50; --teal-l:#e0f4f0; --teal-m:#5bbfb0;
  --amber:#b85c00; --amber-l:#fff3e0; --amber-m:#f0a050;
  --slate:#4a3880; --slate-l:#f0ecfc; --slate-m:#9b87cc;
  --ink:#1a1a1a; --muted:#5a5a5a; --faint:#e0ddd4; --bg:#f4f3ef; --paper:#fff;
  --mono:'IBM Plex Mono','Courier New',monospace;
  --sans:'Inter',system-ui,sans-serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--sans);background:var(--bg);color:var(--ink);font-size:14px;line-height:1.5;min-height:100vh}

/* header */
.app-hd{background:var(--teal);color:#fff;padding:0.7rem 1.3rem;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.app-hd h1{font-size:1rem;font-weight:700;letter-spacing:-0.01em}
.app-hd .badge{font-size:0.68rem;background:rgba(255,255,255,0.18);padding:3px 11px;border-radius:12px;font-family:var(--mono)}
.app-hd a.home{color:#fff;text-decoration:none;font-size:0.78rem;opacity:0.85}
.app-hd a.home:hover{opacity:1;text-decoration:underline}
.app-hd .sp{flex:1}

/* page wrap */
.wrap{max-width:1040px;margin:0 auto;padding:1.6rem 1.3rem 4rem;width:100%}
.sec-lbl{font-size:0.7rem;font-weight:700;color:var(--teal);letter-spacing:0.1em;text-transform:uppercase;margin:1.6rem 0 0.7rem;padding-bottom:5px;border-bottom:1px solid var(--teal-l)}
.sec-lbl:first-child{margin-top:0}

/* card grid */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:13px}
.card{display:block;background:var(--paper);border:1px solid var(--faint);border-radius:11px;padding:15px 16px;text-decoration:none;color:inherit;transition:border-color 0.15s,box-shadow 0.15s;position:relative}
a.card:hover{border-color:var(--teal-m);box-shadow:0 3px 12px rgba(0,0,0,0.07)}
.card .ct{font-size:0.92rem;font-weight:700;color:var(--ink);margin-bottom:3px}
.card .cs{font-size:0.78rem;color:var(--muted);line-height:1.5}
.card .unit-no{font-family:var(--mono);font-size:0.66rem;font-weight:600;color:var(--teal);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:6px;display:block}
.card.soon{opacity:0.6;cursor:default}
.card .tag{position:absolute;top:13px;right:14px;font-size:0.6rem;font-weight:700;padding:2px 8px;border-radius:8px;text-transform:uppercase;letter-spacing:0.04em}
.tag.ready{background:var(--teal-l);color:var(--teal-d)}
.tag.soon{background:#efeee9;color:var(--muted)}
.tag.tool{background:var(--slate-l);color:var(--slate)}

/* cheat sheet gallery */
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.sheet{background:var(--paper);border:1px solid var(--faint);border-radius:10px;overflow:hidden}
.sheet img{width:100%;height:auto;display:block}
.sheet .cap{font-size:0.74rem;color:var(--muted);padding:7px 11px;font-family:var(--mono);border-top:1px solid var(--faint)}

/* buttons */
.btn{font-family:var(--sans);font-size:0.8rem;font-weight:600;padding:6px 15px;border-radius:7px;border:1px solid var(--faint);background:var(--paper);color:var(--ink);cursor:pointer;text-decoration:none;display:inline-block}
.btn:hover{background:var(--bg)}
.btn.primary{background:var(--teal);color:#fff;border-color:var(--teal)}
.btn.primary:hover{background:var(--teal-d)}
.toolbar{display:flex;gap:8px;align-items:center;margin-bottom:1rem;flex-wrap:wrap}

/* ============================================================
   PRINT — guardrail #13: real pages, nothing split mid-block.
   Baseline here; each worksheet adds its own packet rules.
   ============================================================ */
@page{size:letter portrait;margin:0.6in}
@media print{
  :root{--bg:#fff}
  body{background:#fff;font-size:12px}
  .app-hd,.toolbar,.no-print{display:none !important}
  .wrap{max-width:none;padding:0}
  .card,.sheet,.pcard,.worked,.howto,.ipanel,.shape-card,svg,img,figure,table{
    break-inside:avoid;page-break-inside:avoid;
  }
  .sheet{border:none;break-after:page;page-break-after:always}
  .sheet:last-child{break-after:auto;page-break-after:auto}
  a{color:inherit;text-decoration:none}
}
