/* ── Year 10 Science Unit 1: Genetics & Evolutionary Change ── */
/* Theme: DNA Helix — deep teal, emerald, helix gold */

:root {
  --hero-teal:#0d5c5e;
  --hero-sky:#14a9b8;
  --hero-grad:linear-gradient(135deg,#0d5c5e 0%,#14a9b8 50%,#d97706 100%);
  --mint:#e8f8f5;
  --mint-border:#a8e6cf;
  --sky:#e0f4f8;
  --sky-border:#80cfe0;
  --peach:#fef0e8;
  --peach-border:#f5c6a0;
  --teal:#0d5c5e;
  --teal-mid:#14a9b8;
  --teal-light:rgba(13,115,119,.08);
  --accent-coral:#e85d3a;
  --accent-amber:#d97706;
  --purple:#6d4c9f;
  --purple-light:rgba(109,76,159,.07);
  --bg:#f7fdfb;
  --surface:#ffffff;
  --text:#0d2b2c;
  --text-muted:#3d6b6e;
  --text-light:#7aadaf;
  --border:#cce8ea;
  --radius:14px;
  --radius-sm:8px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--text);line-height:1.65;}
h1,h2,h3,h4{font-family:'Nunito',sans-serif;}
.mono,code{font-family:'DM Mono',monospace;}

/* ── Progress bar ───────────────────────────── */
.progress-bar-wrap{position:fixed;top:0;left:0;right:0;height:3px;background:rgba(0,0,0,.08);z-index:1000;}
.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--hero-teal),var(--hero-sky));width:0;transition:width .2s;}

/* ── Section nav dots ───────────────────────── */
.section-nav{position:fixed;right:14px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:8px;z-index:999;}
.section-dot{width:9px;height:9px;border-radius:50%;background:#cce8ea;cursor:pointer;transition:all .2s;position:relative;}
.section-dot.active{background:var(--teal);transform:scale(1.4);}
.section-dot:hover::after{content:attr(data-label);position:absolute;right:16px;top:50%;transform:translateY(-50%);background:#0d2b2c;color:white;font-size:11px;font-family:'DM Sans',sans-serif;padding:3px 8px;border-radius:4px;white-space:nowrap;pointer-events:none;}

/* ── Page ───────────────────────────────────── */
.page{max-width:900px;margin:0 auto;padding:40px 20px 80px;}

/* ── Hero ───────────────────────────────────── */
.hero{background:var(--hero-grad);border-radius:var(--radius);padding:40px 44px;margin-bottom:28px;color:white;}
.hero-top{display:flex;align-items:flex-start;gap:24px;justify-content:space-between;}
.hero-badge-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;}
.hbadge{padding:4px 12px;border-radius:100px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;}
.hbadge-teal{background:rgba(255,255,255,.25);color:white;}
.hbadge-outline{border:1.5px solid rgba(255,255,255,.5);background:transparent;color:rgba(255,255,255,.92);}
.hero h1{font-size:34px;font-weight:800;line-height:1.15;margin-bottom:12px;letter-spacing:-.3px;color:white;}
.hero-desc{font-size:16px;max-width:700px;line-height:1.65;opacity:.93;color:white;}
.hero-emoji{font-size:64px;line-height:1;flex-shrink:0;opacity:.8;}

/* ── Phase strip ────────────────────────────── */
.phase-strip{display:flex;align-items:center;justify-content:center;gap:10px;margin:4px 0 22px;flex-wrap:wrap;}
.phase-step{display:flex;align-items:center;gap:8px;border:1px solid var(--border);background:#fff;border-radius:999px;padding:9px 14px;cursor:pointer;font-weight:700;color:var(--text-muted);}
.phase-step.active{background:var(--teal);border-color:var(--teal);color:#fff;}
.ps-num{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.18);font-size:12px;font-weight:800;}
.phase-step:not(.active) .ps-num{background:var(--teal-light);color:var(--teal);}
.ps-connector{width:28px;height:2px;background:var(--border);}
.phase{display:none;}
.phase.active{display:block;}

/* ── Mode banner ────────────────────────────── */
.mode-banner{background:white;border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 20px;margin-bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.mode-banner p{font-size:14px;color:var(--text-muted);}
.mode-toggle{display:flex;gap:8px;}
.mode-btn{padding:7px 16px;border-radius:6px;border:1.5px solid var(--border);background:white;font-size:13px;font-weight:700;cursor:pointer;color:var(--text-muted);transition:all .2s;}
.mode-btn.active{background:var(--teal);color:white;border-color:var(--teal);}

/* ── Think First ────────────────────────────── */
.think-first{background:linear-gradient(135deg,#0d2b2c 0%,#0d7377 100%);border-radius:var(--radius);padding:32px;margin-bottom:24px;}
.tf-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;background:rgba(255,255,255,.18);display:inline-block;padding:4px 10px;border-radius:100px;margin-bottom:14px;color:white;font-family:'DM Sans',sans-serif;}
.think-first h3{font-family:'Nunito',sans-serif;color:white;font-size:17px;margin-bottom:12px;font-weight:800;}
.think-first p{color:rgba(255,255,255,.9);margin-bottom:10px;font-size:15px;line-height:1.7;}
.think-first strong{color:white;}
.think-first .answer-textarea{background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.3);color:white;font-size:14px;border-radius:8px;padding:12px;width:100%;resize:vertical;min-height:80px;font-family:'DM Sans',sans-serif;}
.think-first .answer-textarea::placeholder{color:rgba(255,255,255,.45);}
.think-first .autosave-indicator{color:rgba(255,255,255,.6);font-size:12px;margin-top:6px;display:block;}

/* ── Learning intentions ────────────────────── */
.intentions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-bottom:28px;}
.intention-card{background:white;border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:20px;}
.intention-card.mint{border-top:3px solid var(--mint-border);background:var(--mint);}
.intention-card.sky{border-top:3px solid var(--sky-border);background:var(--sky);}
.intention-card.peach{border-top:3px solid var(--peach-border);background:var(--peach);}
.intention-card h3{font-family:'Nunito',sans-serif;font-size:14px;font-weight:800;margin-bottom:10px;color:var(--text);}
.intention-card ul{padding-left:16px;color:var(--text-muted);font-size:13.5px;line-height:1.75;}

/* ── Section label ──────────────────────────── */
.section-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;color:var(--text-light);margin:32px 0 14px;display:block;}

/* ── Key terms panel ────────────────────────── */
.key-terms-panel{background:var(--sky);border:1.5px solid var(--sky-border);border-radius:var(--radius);padding:24px 28px;margin-bottom:24px;}
.kt-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;color:var(--teal);display:block;margin-bottom:14px;}
.kt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;}
.kt-item{background:white;border-radius:8px;padding:12px 14px;border:1px solid var(--sky-border);}
.kt-term{font-family:'Nunito',sans-serif;font-weight:800;font-size:13px;color:var(--teal);display:block;margin-bottom:4px;}
.kt-def{font-size:13px;color:var(--text-muted);line-height:1.55;}

/* ── Card ───────────────────────────────────── */
.card{background:white;border:1px solid var(--border);border-radius:var(--radius);padding:30px 34px;margin-bottom:20px;}
.card-header{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px;}
.card-num{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:14px;flex-shrink:0;color:white;background:var(--teal);font-family:'Nunito',sans-serif;}
.card h2{font-family:'Nunito',sans-serif;font-size:19px;font-weight:800;color:var(--text);margin-bottom:4px;}
.card-subtitle{font-size:13px;color:var(--text-light);}
.card p{color:var(--text-muted);font-size:15px;line-height:1.72;margin-bottom:14px;}
.card p:last-child{margin-bottom:0;}
.card h3{font-family:'Nunito',sans-serif;font-size:15px;font-weight:800;color:var(--text);margin:20px 0 9px;}
.card ul,.card ol{padding-left:20px;color:var(--text-muted);font-size:15px;line-height:1.8;margin-bottom:14px;}

/* ── Conceptual opener ──────────────────────── */
.conceptual-first{font-size:16px;color:var(--teal);font-style:italic;line-height:1.65;margin-bottom:18px;padding-left:16px;border-left:3px solid var(--teal);}

/* ── Callouts ───────────────────────────────── */
.callout-tag{font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:1px;padding:3px 7px;border-radius:4px;white-space:nowrap;flex-shrink:0;margin-top:2px;}
.callout-mint{background:var(--mint);border-left:3px solid var(--mint-border);color:var(--text-muted);padding:14px 18px;border-radius:var(--radius-sm);margin:16px 0;font-size:14px;line-height:1.65;display:flex;gap:12px;align-items:flex-start;}
.callout-mint .callout-tag{background:#1e8449;color:white;}
.callout-coral{background:rgba(232,93,58,.06);border-left:3px solid var(--accent-coral);color:var(--text-muted);padding:14px 18px;border-radius:var(--radius-sm);margin:16px 0;font-size:14px;line-height:1.65;display:flex;gap:12px;align-items:flex-start;}
.callout-coral .callout-tag{background:var(--accent-coral);color:white;}
.callout-sky{background:var(--sky);border-left:3px solid var(--sky-border);color:var(--text-muted);padding:14px 18px;border-radius:var(--radius-sm);margin:16px 0;font-size:14px;line-height:1.65;display:flex;gap:12px;align-items:flex-start;}
.callout-sky .callout-tag{background:var(--teal-mid);color:white;}
.callout-peach{background:var(--peach);border-left:3px solid var(--peach-border);color:var(--text-muted);padding:14px 18px;border-radius:var(--radius-sm);margin:16px 0;font-size:14px;line-height:1.65;display:flex;gap:12px;align-items:flex-start;}
.callout-peach .callout-tag{background:#c05a20;color:white;}

/* ── Anchor callout ─────────────────────────── */
.anchor-callout{background:linear-gradient(135deg,rgba(217,119,6,.1) 0%,rgba(217,119,6,.05) 100%);border:1.5px solid #d97706;border-radius:var(--radius);padding:24px 28px;margin:24px 0;}
.anchor-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;color:#d97706;display:block;margin-bottom:10px;}
.anchor-callout h3{font-family:'Nunito',sans-serif;color:#92400e;font-size:17px;font-weight:800;margin-bottom:10px;}
.anchor-callout p{color:#78350f;font-size:15px;line-height:1.65;margin-bottom:8px;}
.anchor-callout p:last-child{margin-bottom:0;}

/* ── Misconceptions ─────────────────────────── */
.misconceptions-box{background:var(--purple-light);border:1.5px solid #6d4c9f;border-radius:var(--radius);padding:24px 28px;margin:24px 0;}
.misconceptions-box h3{font-family:'Nunito',sans-serif;color:var(--purple);font-size:17px;font-weight:800;margin-bottom:14px;}
.misconception-item{display:flex;gap:12px;margin-bottom:14px;align-items:flex-start;}
.misconception-item:last-child{margin-bottom:0;}
.misconception-x{width:22px;height:22px;border-radius:50%;background:#6d4c9f;color:white;font-size:12px;font-weight:800;display:grid;place-items:center;flex-shrink:0;margin-top:2px;}
.misconception-item p{font-size:14px;color:#3b2568;line-height:1.65;margin:0;}

/* ── Image placeholder ──────────────────────── */
.img-placeholder{background:#f0fbf8;border:2px dashed var(--mint-border);border-radius:12px;padding:28px;text-align:center;margin:20px 0;color:var(--text-light);}
.img-placeholder .img-icon{font-size:32px;margin-bottom:8px;}
.img-placeholder p{font-size:13px;margin:0;line-height:1.5;}

/* ── Interactive placeholder ────────────────── */
.interactive-placeholder{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:2px dashed #86efac;border-radius:16px;padding:40px 28px;text-align:center;margin:20px 0;}
.interactive-placeholder h3{font-size:18px;color:var(--text);margin-bottom:8px;}
.interactive-placeholder p{color:var(--text-muted);font-size:14px;margin:0;}

/* ── Copy into books ────────────────────────── */
.collapsible-wrap{background:white;border:1px solid var(--border);border-radius:var(--radius);margin-bottom:20px;overflow:hidden;}
.collapsible-trigger{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;cursor:pointer;user-select:none;}
.collapsible-trigger h3{font-family:'Nunito',sans-serif;font-size:15px;font-weight:800;color:var(--text);margin:0;}
.collapsible-arrow{font-size:14px;color:var(--text-light);transition:transform .3s;}
.collapsible-trigger.open .collapsible-arrow{transform:rotate(180deg);}
.collapsible-body{display:none;padding:0 24px 24px;}
.collapsible-body.open{display:block;}
.copy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;}
.copy-item{background:var(--mint);border:1px solid var(--mint-border);border-radius:var(--radius-sm);padding:15px;}
.copy-item h4{font-family:'Nunito',sans-serif;font-size:13px;font-weight:800;color:var(--text);margin-bottom:8px;}
.copy-item ul{padding-left:14px;font-size:13px;color:var(--text-muted);line-height:1.75;}

/* ── Activities ─────────────────────────────── */
.activity{background:white;border:1px solid var(--border);border-radius:var(--radius);padding:26px 30px;margin-bottom:20px;}
.activity-badge{display:inline-block;background:var(--teal);color:white;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;padding:5px 12px;border-radius:100px;margin-bottom:14px;}
.activity h3{font-family:'Nunito',sans-serif;font-size:17px;font-weight:800;color:var(--text);margin-bottom:8px;}
.activity-meta{font-size:13px;color:var(--text-light);margin-bottom:18px;}
.drill-item{margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--border);}
.drill-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0;}
.drill-num{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--teal);color:white;font-size:11px;font-weight:800;margin-right:6px;font-family:'Nunito',sans-serif;}

/* ── Answer wrap ────────────────────────────── */
.answer-wrap{margin-top:10px;}
.answer-textarea{width:100%;border:1.5px solid var(--border);border-radius:8px;padding:12px 14px;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--text);resize:vertical;min-height:70px;background:white;transition:border-color .2s;}
.answer-textarea:focus{outline:none;border-color:var(--teal);}
.autosave-indicator{font-size:11px;color:var(--text-light);margin-top:4px;display:block;height:14px;}
.answer-book-placeholder{display:none;background:var(--mint);border:1.5px dashed var(--mint-border);border-radius:8px;padding:14px;font-size:13.5px;color:var(--text-muted);text-align:center;}

/* ── MC ─────────────────────────────────────── */
.mc-question{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--border);}
.mc-question:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0;}
.mc-question p{font-size:15px;color:var(--text);margin-bottom:12px;font-weight:600;}
.mc-option{display:flex;gap:12px;align-items:flex-start;padding:10px 14px;border-radius:8px;border:1.5px solid var(--border);margin-bottom:8px;cursor:pointer;transition:all .2s;}
.mc-option:hover{border-color:var(--teal);background:var(--teal-light);}
.mc-option.correct{border-color:#1e8449;background:rgba(30,132,73,.08);}
.mc-option.incorrect{border-color:var(--accent-coral);background:rgba(232,93,58,.06);}
.mc-option.disabled{cursor:default;pointer-events:none;}
.mc-letter{width:24px;height:24px;border-radius:50%;background:var(--sky);color:var(--text-muted);font-size:12px;font-weight:800;display:grid;place-items:center;flex-shrink:0;font-family:'Nunito',sans-serif;}
.mc-option.correct .mc-letter{background:#1e8449;color:white;}
.mc-option.incorrect .mc-letter{background:var(--accent-coral);color:white;}
.mc-text{font-size:14px;color:var(--text-muted);line-height:1.55;padding-top:3px;}
.mc-feedback{font-size:13px;margin-top:8px;padding:8px 12px;border-radius:6px;display:none;}
.mc-feedback.correct-msg{display:block;background:rgba(30,132,73,.1);color:#065f46;}
.mc-feedback.incorrect-msg{display:block;background:rgba(232,93,58,.08);color:#7f2d0e;}
.marks{font-size:11px;font-weight:800;color:var(--teal);background:var(--teal-light);padding:2px 8px;border-radius:100px;margin-left:6px;}
.mc-score-banner{display:none;padding:14px 18px;border-radius:12px;margin:16px 0;font-weight:700;text-align:center;}
.mc-score-banner.pass{background:#ecfdf5;color:#166534;border:1.5px solid #86efac;}
.mc-score-banner.fail{background:#fef2f2;color:#991b1b;border:1.5px solid #fca5a5;}
.mc-gate-btns{display:flex;gap:12px;justify-content:center;margin-top:16px;}

/* ── Answers ────────────────────────────────── */
.answers-section{background:white;border:1px solid var(--border);border-radius:var(--radius);margin:24px 0;overflow:hidden;}
.answers-trigger{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;cursor:pointer;user-select:none;}
.answers-trigger h2{font-family:'Nunito',sans-serif;font-size:18px;font-weight:800;color:var(--text);margin:0;}
.answers-trigger .arrow{font-size:14px;color:var(--text-light);transition:transform .3s;}
.answers-trigger.open .arrow{transform:rotate(180deg);}
.answers-body{display:none;padding:0 28px 28px;}
.answers-body.open{display:block;}
.answer-item{margin-bottom:22px;padding-bottom:22px;border-bottom:1px solid var(--border);}
.answer-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0;}
.answer-item h4{font-family:'Nunito',sans-serif;font-size:15px;font-weight:800;color:var(--teal);margin-bottom:10px;}
.answer-item p{font-size:14px;color:var(--text-muted);line-height:1.72;margin-bottom:8px;}
.answer-item p:last-child{margin-bottom:0;}

/* ── Revisit ────────────────────────────────── */
.revisit-box{background:linear-gradient(135deg,#0d2b2c 0%,#0d7377 100%);border-radius:var(--radius);padding:28px 32px;margin:24px 0;}
.revisit-box h3{font-family:'Nunito',sans-serif;color:white;font-size:17px;font-weight:800;margin-bottom:12px;}
.revisit-box p,.revisit-box ul{color:rgba(255,255,255,.88);font-size:15px;line-height:1.7;margin-bottom:10px;}
.revisit-box ul{padding-left:18px;}
.revisit-box .answer-textarea{background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.3);color:white;}
.revisit-box .answer-textarea::placeholder{color:rgba(255,255,255,.45);}
.revisit-box .autosave-indicator{color:rgba(255,255,255,.6);}

/* ── Completion ─────────────────────────────── */
.completion-wrap{display:flex;align-items:center;gap:16px;background:white;border:1.5px solid var(--border);border-radius:var(--radius);padding:20px 24px;margin-top:24px;cursor:pointer;transition:border-color .2s;}
.completion-wrap.done{border-color:#1e8449;background:rgba(30,132,73,.04);}
.completion-checkbox{width:28px;height:28px;border-radius:50%;border:2px solid var(--border);display:grid;place-items:center;font-size:14px;font-weight:800;color:#1e8449;flex-shrink:0;transition:all .2s;}
.completion-wrap.done .completion-checkbox{background:#1e8449;color:white;border-color:#1e8449;}
.completion-text h4{font-family:'Nunito',sans-serif;font-size:15px;font-weight:800;color:var(--text);margin-bottom:2px;}
.completion-text p{font-size:13px;color:var(--text-light);margin:0;}

/* ── Lesson nav ─────────────────────────────── */
.lesson-nav{display:flex;justify-content:space-between;gap:16px;margin-top:32px;flex-wrap:wrap;}
.lesson-nav a{padding:12px 20px;border-radius:8px;border:1.5px solid var(--border);font-size:14px;font-weight:700;color:var(--text-muted);text-decoration:none;transition:all .2s;}
.lesson-nav a:hover{border-color:var(--teal);color:var(--teal);}
.lesson-nav a.next{background:var(--teal);color:white;border-color:var(--teal);}
.lesson-nav a.next:hover{background:#0a5c60;}
.lesson-meta-links{margin-top:12px;font-size:13px;line-height:1.6;color:var(--text-light);}
.lesson-meta-links a{color:var(--text-muted);text-decoration:none;}
.lesson-meta-links a:hover{color:var(--teal);text-decoration:underline;}

/* ── Phase footer / back ────────────────────── */
.phase-footer{text-align:center;margin:28px 0;}
.phase-next-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:10px;background:var(--teal);color:white;font-size:15px;font-weight:700;border:none;cursor:pointer;transition:background .2s;}
.phase-next-btn:hover{background:#0a5c60;}
.phase-back-row{margin-bottom:20px;}
.phase-back-btn{padding:10px 18px;border-radius:8px;border:1.5px solid var(--border);background:white;font-size:13px;font-weight:700;color:var(--text-muted);cursor:pointer;transition:all .2s;}
.phase-back-btn:hover{border-color:var(--teal);color:var(--teal);}
.phase-retry-btn{padding:10px 18px;border-radius:8px;border:1.5px solid var(--border);background:white;font-size:13px;font-weight:700;color:var(--text-muted);cursor:pointer;}

/* ── Game launch card ───────────────────────── */
.game-launch-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;background:linear-gradient(145deg,#f0fdf4,#dcfce7,#f0fdf4);border:2px solid rgba(34,197,94,0.25);border-radius:20px;padding:48px 40px;margin:8px 0 24px;}
.game-launch-icon{font-size:64px;line-height:1;filter:drop-shadow(0 4px 12px rgba(34,197,94,0.25));}
.game-launch-tag{display:inline-block;background:rgba(34,197,94,0.12);color:#15803d;border:1.5px solid rgba(34,197,94,0.30);border-radius:50px;padding:5px 18px;font-size:12px;font-weight:800;letter-spacing:0.12em;text-transform:uppercase;}
.game-launch-title{font-size:28px;font-weight:800;color:#14532d;margin:0;line-height:1.25;}
.game-launch-desc{font-size:16px;color:#475569;max-width:520px;line-height:1.65;margin:0;}

/* ── Worksheet download card ────────────────── */
.worksheet-download-card{background:linear-gradient(135deg,var(--sky) 0%,var(--mint) 100%);border:1.5px solid var(--sky-border);border-radius:var(--radius);padding:24px 28px;margin-bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.worksheet-download-copy{flex:1;min-width:220px;}
.worksheet-download-eyebrow{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;color:var(--teal);display:block;margin-bottom:8px;}
.worksheet-download-copy h2{font-family:'Nunito',sans-serif;font-size:17px;font-weight:800;color:var(--text);margin-bottom:6px;}
.worksheet-download-copy p{font-size:13.5px;color:var(--text-muted);line-height:1.6;margin:0;}
.worksheet-download-actions{display:flex;gap:10px;flex-wrap:wrap;}
.btn-primary{padding:10px 18px;border-radius:8px;background:var(--teal);color:white;font-size:13px;font-weight:700;border:none;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;transition:background .2s;}
.btn-primary:hover{background:#0a5c60;}
.btn-ghost{padding:10px 18px;border-radius:8px;border:1.5px solid var(--border);background:white;font-size:13px;font-weight:700;color:var(--text-muted);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;transition:all .2s;}
.btn-ghost:hover{border-color:var(--teal);color:var(--teal);}

/* ── Mode behaviour ─────────────────────────── */
body.digital-mode .answer-book-placeholder{display:none;}
body.book-mode .answer-textarea{display:none;}
body.book-mode .answer-book-placeholder{display:block;}

/* ── Fade-up ────────────────────────────────── */
.fade-up{opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease;}
.fade-up.visible{opacity:1;transform:none;}

/* ── Fun fact box ───────────────────────────── */
.fun-fact-box{background:linear-gradient(135deg,#fefce8 0%,#fef9c3 100%);border:1.5px solid #eab308;border-radius:var(--radius);padding:20px 24px;margin:20px 0;}
.fun-fact-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;color:#a16207;display:block;margin-bottom:8px;}
.fun-fact-box p{color:#713f12;font-size:14px;line-height:1.65;margin:0;}
.fun-fact-box strong{color:#92400e;}

/* ── Data table ─────────────────────────────── */
.data-table-wrap{overflow-x:auto;border-radius:var(--radius-sm);border:1px solid var(--border);margin:16px 0;}
.data-table-wrap table{width:100%;border-collapse:collapse;font-size:13.5px;}
.data-table-wrap th{background:var(--sky);font-weight:800;font-family:'Nunito',sans-serif;color:var(--text);padding:10px 14px;text-align:left;border-bottom:1.5px solid var(--sky-border);}
.data-table-wrap td{padding:9px 14px;border-bottom:1px solid var(--border);color:var(--text-muted);vertical-align:top;}
.data-table-wrap tr:last-child td{border-bottom:none;}
.data-table-wrap tr:nth-child(even) td{background:#f7fdfb;}

/* ── Diagram wrap ───────────────────────────── */
.diagram-wrap{margin:24px 0;text-align:center;}
.diagram-caption{font-size:12px;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-top:8px;opacity:.75;}

/* ── SVG diagram styling ────────────────────── */
svg.diagram-inline{display:block;margin:0 auto;max-width:100%;}

/* ── Sports / Aussie anchor ─────────────────── */
.aussie-anchor{background:linear-gradient(135deg,#ecfdf5 0%,#fefce8 100%);border:1.5px solid #22c55e;border-radius:var(--radius);padding:20px 24px;margin:20px 0;}
.aussie-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;color:#15803d;display:block;margin-bottom:8px;}
.aussie-anchor p{color:#14532d;font-size:14px;line-height:1.65;margin:0;}
.aussie-anchor strong{color:#166534;}
