/* EW-1: scoped Ellis worksheet; lesson/game layouts remain unchanged. */
body.ellis-worksheet .worksheet-controls {
  max-width: 850px;
  margin: 1rem auto 1.5rem;
  padding: 1rem;
  gap: 1rem;
}
body.ellis-worksheet .worksheet-controls > a,
body.ellis-worksheet .worksheet-controls #save-status { grid-column: 1 / -1; }
body.ellis-worksheet .worksheet-controls .name-control { grid-column: 1 / -1; }
body.ellis-worksheet .worksheet-controls #save-status { margin: 0; }
body.ellis-worksheet .worksheet-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; grid-column: 1 / -1; }
body.ellis-worksheet .print-sheet {
  box-sizing: border-box;
  max-width: 850px;
  min-height: 0;
  padding: clamp(1rem, 3vw, 2rem);
}
body.ellis-worksheet .print-header { align-items: center; margin-bottom: 1rem; }
body.ellis-worksheet .print-header .wordmark {
  display: inline-flex;
  margin-right: auto;
  font-family: var(--font-head, Fraunces, Georgia, serif);
}
body.ellis-worksheet .print-header > span:last-child { text-align: right; }
body.ellis-worksheet .maths-expansion-title {
  grid-template-columns: minmax(0, 1fr) 180px;
  gap: .75rem 1.5rem;
  margin-bottom: 1rem;
}
body.ellis-worksheet .maths-worksheet-scene { width: 100%; }
body.ellis-worksheet .print-title-row p { line-height: 1.55; margin: .6rem 0; }
body.ellis-worksheet .print-student-name { display: flex; gap: .5rem; flex-wrap: wrap; }
body.ellis-worksheet .question-block {
  margin: 1.25rem 0 0;
  padding: 1.25rem 0 .25rem;
  background: transparent;
}
body.ellis-worksheet .question-block h2 { font-family: var(--font-body, Outfit, sans-serif); font-size: 1.15rem; margin: 0 0 .6rem; }
body.ellis-worksheet .question-block p { margin: .5rem 0 1rem; line-height: 1.55; }
body.ellis-worksheet .worksheet-answer,
body.ellis-worksheet .worksheet-method { margin-top: .85rem; }
body.ellis-worksheet .question-block label { display: block; margin-bottom: .45rem; font-weight: 650; }
body.ellis-worksheet input[data-answer],
body.ellis-worksheet textarea[data-answer] {
  box-sizing: border-box;
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 48px;
  padding: .65rem .75rem;
  color: var(--ink);
  background: var(--bg);
  font: inherit;
  line-height: 1.55;
  border: 1px solid var(--line);
  border-radius: .5rem;
}
body.ellis-worksheet textarea[data-answer] { min-height: 7rem; resize: vertical; }
body.ellis-worksheet #work-qd { min-height: 9rem; }
body.ellis-worksheet #work-qt { min-height: 11rem; }
body.ellis-worksheet .response-rules { display: none; }
body.ellis-worksheet .print-footer {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
  gap: .5rem;
  margin-top: 1.5rem;
}
body.ellis-worksheet .print-footer > :nth-child(2) { text-align: center; }
body.ellis-worksheet .print-footer > :last-child { text-align: right; }
body.ellis-worksheet .privacy-note,
body.ellis-worksheet .answer-key-link { max-width: 850px; margin: 1rem auto; line-height: 1.55; }
body.ellis-worksheet .answer-key-link a { display: block; width: fit-content; max-width: 100%; margin: .6rem 0; padding: .35rem 0; overflow-wrap: anywhere; }
body.ellis-worksheet .worksheet-export-note { margin-bottom: .75rem; }
body.ellis-answer-guide .answer-key { max-width: 48rem; padding: 1rem; margin: 1rem auto 3rem; }
body.ellis-answer-guide section { margin: 1.5rem 0; padding-top: 1rem; border-top: 1px solid var(--line); }
body.ellis-answer-guide section h2 { font-family: var(--font-body, Outfit, sans-serif); font-size: 1.15rem; }
body.ellis-answer-guide p { line-height: 1.6; margin: .65rem 0; }
@media(max-width:640px) {
  body.ellis-worksheet .maths-expansion-title { grid-template-columns: minmax(0,1fr); gap: .75rem; }
  body.ellis-worksheet .maths-worksheet-scene { grid-column: 1; grid-row: 3; max-width: 300px; margin: .25rem auto; }
  body.ellis-worksheet .print-header { gap: .4rem; font-size: .8rem; }
  body.ellis-worksheet .print-sheet { padding: 1rem; }
}
@media screen and (max-width:380px) {
  body.ellis-worksheet .print-footer { grid-template-columns: minmax(0,1fr) auto; }
  body.ellis-worksheet .print-footer > :nth-child(2) { grid-column: 1 / -1; grid-row: 2; text-align: left; }
  body.ellis-worksheet .print-footer > :last-child { grid-column: 2; grid-row: 1; }
}
@media print {
  body.ellis-worksheet { font: 12pt/1.35 Outfit, sans-serif; }
  body.ellis-worksheet .print-sheet {
    display: block;
    box-sizing: border-box;
    width: 180mm;
    max-width: none;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    overflow: visible;
    break-after: page;
  }
  body.ellis-worksheet .print-sheet:last-of-type { break-after: auto; }
  body.ellis-worksheet .print-header { margin: 0 0 3mm; padding-bottom: 2mm; font: 10.5pt/1.2 Outfit, sans-serif; }
  body.ellis-worksheet .print-header img { width: 7mm; height: 7mm; }
  body.ellis-worksheet .print-header .wordmark { font: 800 11pt/1.2 Fraunces, Georgia, serif; }
  body.ellis-worksheet .print-header .brand-the { color: #20232b !important; }
  body.ellis-worksheet .print-header .brand-den { color: #c0504d !important; }
  body.ellis-worksheet .maths-expansion-title { grid-template-columns: minmax(0,1fr) 45mm; column-gap: 5mm; row-gap: 1mm; margin: 0 0 2mm; break-inside: avoid; }
  body.ellis-worksheet .maths-worksheet-scene { grid-column: 2; grid-row: 1 / span 2; width: 45mm; max-width: none; margin: 0; }
  body.ellis-worksheet .print-title-row h1 { font: 700 20pt/1.16 Fraunces, Georgia, serif; margin: 0; }
  body.ellis-worksheet .print-title-row p { font-size: 11pt; line-height: 1.3; margin: 2mm 0; }
  body.ellis-worksheet .print-student-name { min-height: 5mm; font-size: 10pt; }
  body.ellis-worksheet .print-student-name b { min-width: 65mm; border-bottom: .15mm solid #92979b; }
  body.ellis-worksheet .print-sheet > h2 { font: 700 17pt/1.2 Fraunces, Georgia, serif; margin: 2mm 0 3mm; }
  body.ellis-worksheet .question-block { margin: 1mm 0 0; padding: 2mm 0; border-top: .15mm solid #bfc3c5; break-inside: avoid; }
  body.ellis-worksheet .question-block h2 { font: 650 12pt/1.2 Outfit, sans-serif; margin: 0 0 1mm; break-after: avoid; }
  body.ellis-worksheet .question-block p { font-size: 12pt; line-height: 1.35; margin: 0 0 1mm; orphans: 2; widows: 2; break-after: avoid; }
  body.ellis-worksheet .worksheet-answer,
  body.ellis-worksheet .worksheet-method { margin-top: 1mm; break-inside: auto; }
  body.ellis-worksheet .question-block label { font: 500 10pt/1.2 Outfit, sans-serif; margin: 0; break-after: avoid; }
  body.ellis-worksheet input[data-answer],
  body.ellis-worksheet textarea[data-answer] { display: none !important; }
  body.ellis-worksheet .print-answer,
  body.ellis-worksheet .print-sheet:nth-of-type(2) output[id$="work"] {
    display: block;
    min-height: 0;
    margin: 0;
    padding: 1mm 0;
    border: 0;
    font: 12pt/7mm Outfit, sans-serif;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    break-inside: auto;
  }
  body.ellis-worksheet .print-answer:empty { display: none; min-height: 0; padding: 0; }
  body.ellis-worksheet .worksheet-answer .print-answer:not(:empty) { box-sizing: border-box; min-height: 10mm; }
  body.ellis-worksheet .worksheet-method.space-35 .print-answer:not(:empty) { box-sizing: border-box; min-height: 35mm; }
  body.ellis-worksheet .worksheet-method.space-49 .print-answer:not(:empty) { box-sizing: border-box; min-height: 49mm; }
  body.ellis-worksheet .worksheet-method.space-70 .print-answer:not(:empty) { box-sizing: border-box; min-height: 70mm; }
  body.ellis-worksheet .response-rules { display: block; width: 180mm; height: auto; overflow: visible; break-inside: avoid; }
  body.ellis-worksheet .print-answer:not(:empty) + .response-rules { display: none; }
  body.ellis-worksheet .print-footer { display: none !important; }
}
@page {
  size: A4;
  margin: 15mm 15mm 17mm;
  @bottom-left { content: "thelearnden.com"; font: 8.5pt Outfit, sans-serif; color: #444; border-top: .2mm solid #afb3b5; padding-top: 2mm; }
  @bottom-center { content: "Year 4 · Times tables"; font: 8.5pt Outfit, sans-serif; color: #444; border-top: .2mm solid #afb3b5; padding-top: 2mm; }
  @bottom-right { content: "Page " counter(page) " of " counter(pages); font: 8.5pt Outfit, sans-serif; color: #444; border-top: .2mm solid #afb3b5; padding-top: 2mm; }
}

.ellis-native-review main{max-width:52rem;margin:2rem auto;padding:0 1rem}.ellis-native-review figure{margin:1.5rem 0;padding:1rem;background:var(--card);border:1px solid var(--line);border-radius:1rem}.ellis-native-review figure img{display:block;width:100%;max-width:36rem;height:auto;margin:.75rem auto}.ellis-native-review figcaption{font-weight:700}.ellis-native-review p{line-height:1.6}.ellis-native-review a{min-height:44px;display:inline-flex;align-items:center}.ellis-native-review .review-links{display:flex;flex-wrap:wrap;gap:1rem}
