/* Native shell adaptation; selected worksheet-specific paper rules load first. */
.native-online-worksheet{min-width:0;max-width:72rem;margin:0 auto;padding:1rem}
.native-online-worksheet :is(input,textarea,select){max-width:100%;box-sizing:border-box}
.native-online-worksheet :is(button,a,input,textarea,select):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.native-online-worksheet img{max-width:100%;height:auto}
.native-online-worksheet .print-only{display:none}
.native-online-worksheet .worksheet-tools :is(button,a){min-height:44px}
.native-online-worksheet :is(.printed-response,.print-answer,.printed-answer){overflow-wrap:anywhere;white-space:pre-wrap}
/* Worksheet controls share the site theme; authored print/paper rules stay below. */
@media screen {
  .native-online-worksheet .worksheet-tools { display:grid; gap:.85rem; margin:1.25rem 0; padding:1rem; border:1px solid var(--line); border-radius:var(--radius); background:var(--card); color:var(--ink); }
  .native-online-worksheet .worksheet-tool-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.65rem; }
  .native-online-worksheet .worksheet-tools button { min-height:44px; padding:.7rem 1rem; border:1px solid var(--line); border-radius:12px; background:var(--card2); color:var(--ink); font:inherit; font-weight:650; line-height:1.3; cursor:pointer; }
  .native-online-worksheet .worksheet-tools button.worksheet-primary { border-color:var(--accent); background:var(--accent); color:var(--accent-on); }
  .native-online-worksheet .worksheet-tools button:disabled { opacity:.6; cursor:not-allowed; }
  .native-online-worksheet .worksheet-tools .print-name-control { display:grid; gap:.5rem; }
  .native-online-worksheet .worksheet-tools .print-name-control input[type=text] { width:100%; max-width:24rem; min-height:44px; padding:.65rem .8rem; border:1px solid var(--line); border-radius:10px; background:var(--bg2); color:var(--ink); font:inherit; }
  .native-online-worksheet .worksheet-tools :is(.print-blank-choice,.save-choice > label) { display:flex; align-items:flex-start; gap:.6rem; }
  .native-online-worksheet .worksheet-tools input[type=checkbox] { flex:0 0 auto; accent-color:var(--accent); margin-top:.25em; }
  .native-online-worksheet .worksheet-tools :is(.print-note,.print-name-control p) { margin:0; }
}

@media print{
  /* Native embedding demotes the authored title to h2; keep its paper type. */
  body.ellis-worksheet .native-online-worksheet .print-title-row h2#worksheet-title{font:700 20pt/1.16 Fraunces,Georgia,serif;margin:0}
  body.native-online-worksheet-page :is(.topbar,.site-footer,.skip-link,#settings,.settings-backdrop){display:none!important}
  body.native-online-worksheet-page{margin:0!important;padding:0!important}
  body.native-online-worksheet-page #app,body.native-online-worksheet-page #view{display:block!important;margin:0!important;padding:0!important;max-width:none!important}
  .native-online-worksheet{display:contents;padding:0;margin:0;max-width:none}
  .native-online-worksheet .screen-only{display:none!important}
  /* The shared beforeprint handler also hides generic headers; retain authored paper branding. */
  :is(.mina-worksheet-print,.ellis-worksheet) .native-online-worksheet :is(.paper-header,.print-header){display:flex!important}
  .native-online-worksheet .print-only{display:block}
  .native-online-worksheet input:not([type=checkbox]):not([type=radio]),.native-online-worksheet textarea{box-shadow:none}
}

/* Ellis paper copy follows the approved two-part downloadable blank.
   Answers remain flowing text: long responses may require extra pages. */
@media print {
  body.ellis-worksheet .native-online-worksheet .print-header { margin:0 0 2mm; padding:0 0 1mm; border-color:#b9d6d8; font:650 9pt/1.2 Outfit,sans-serif; color:#506c75; }
  body.ellis-worksheet .native-online-worksheet .print-header img { width:9mm; height:9mm; }
  body.ellis-worksheet .native-online-worksheet .print-header .wordmark { font:800 14pt/1.2 Fraunces,Georgia,serif; }
  body.ellis-worksheet .native-online-worksheet .maths-expansion-title { grid-template-columns:minmax(0,1fr) 53mm; column-gap:5mm; row-gap:0; margin:0; }
  body.ellis-worksheet .native-online-worksheet .maths-worksheet-scene { grid-column:2; grid-row:1; width:53mm; }
  body.ellis-worksheet .native-online-worksheet .print-part-heading { font:700 16pt/1.2 Fraunces,Georgia,serif; margin:1mm 0 0; }
  body.ellis-worksheet .native-online-worksheet .print-student-name { grid-column:1/-1; font:400 12pt/1.375 Outfit,sans-serif; min-height:0; margin:0; gap:1mm; }
  body.ellis-worksheet .native-online-worksheet .print-student-name b { min-width:43mm; font:inherit; border-bottom:.2mm dashed #20232b; }
  body.ellis-worksheet .native-online-worksheet .print-part-instruction { grid-column:1/-1; font:400 12pt/1.375 Outfit,sans-serif; margin:0; }
  body.ellis-worksheet .native-online-worksheet .print-part-two > h2 { font:700 20pt/1.16 Fraunces,Georgia,serif; margin:0; }
  body.ellis-worksheet .native-online-worksheet .print-part-two .print-student-name { margin-top:2mm; }
  body.ellis-worksheet .native-online-worksheet .question-block { margin:5.8mm 0 0; padding:0; border:0; }
  body.ellis-worksheet .native-online-worksheet .question-block h2 { font:400 12pt/1.375 Outfit,sans-serif; margin:0; }
  body.ellis-worksheet .native-online-worksheet .question-block p { font:400 12pt/1.375 Outfit,sans-serif; margin:0; }
  body.ellis-worksheet .native-online-worksheet .worksheet-answer { display:flex; align-items:baseline; gap:1.5mm; margin:0; }
  body.ellis-worksheet .native-online-worksheet .worksheet-method { margin:0; }
  body.ellis-worksheet .native-online-worksheet .question-block label { font:400 12pt/1.375 Outfit,sans-serif; margin:0; }
  body.ellis-worksheet .native-online-worksheet .question-block label::after { content:':' ; }
  body.ellis-worksheet .native-online-worksheet .response-rules { width:167mm; }
  body.ellis-worksheet .native-online-worksheet .response-rules path { stroke:#20232b; stroke-dasharray:1.8 .25; }
  body.ellis-worksheet .native-online-worksheet .worksheet-answer .response-rules { width:150mm; height:5.8mm; }
  body.ellis-worksheet .native-online-worksheet .space-35 .response-rules { height:29.1mm; }
  body.ellis-worksheet .native-online-worksheet .space-49 .response-rules { height:52.4mm; }
  body.ellis-worksheet .native-online-worksheet .space-70 .response-rules { height:75.7mm; }
  body.ellis-worksheet .native-online-worksheet .worksheet-answer .print-answer:not(:empty) { flex:1; min-width:0; min-height:0; padding:0; line-height:1.375; }
}

/* A print-only table header participates in native physical-page pagination. */
@media print {
  body.ellis-worksheet .native-online-worksheet #worksheet-form { display:table; width:180mm; }
  body.ellis-worksheet .native-online-worksheet #worksheet-form > .ellis-running-header { display:table-header-group!important; break-inside:avoid; }
  body.ellis-worksheet .native-online-worksheet #worksheet-form > .print-sheet { display:table-row-group; }
  body.ellis-worksheet .native-online-worksheet .print-sheet > .print-header { display:none!important; }
  body.ellis-worksheet .native-online-worksheet .response-rules path { stroke-width:.25; }
}
