/* Explicit screen colours for the classroom crossword/wordsearch builder.
   Keep worksheet/export colours and puzzle layout independent of screen theme. */
@layer site-theme{
 @media screen{
  html[data-site-theme] body.classroom-site:has(#builderPanel){
   --puzzle-page:#fffdf5;--puzzle-surface:#fff;--puzzle-header:#b4dfe5;
   --puzzle-controls:#d2fdff;--puzzle-text:#303c6c;--puzzle-muted:#535c7b;
   --puzzle-border:#91b5c2;--puzzle-input:#fff;--puzzle-selected:#b4dfe5;
   --puzzle-grid:#fff;--puzzle-blank:#303c6c;--puzzle-grid-line:#71869c;
   --puzzle-correct:#d2fdff;--puzzle-incorrect:#fff2a8;
   --bg0:var(--puzzle-page);--bg1:var(--puzzle-page);--bg2:var(--puzzle-controls);
   --border:var(--puzzle-border);--border2:var(--puzzle-border);--grid-border:var(--puzzle-grid-line);
   --blank:var(--puzzle-blank);--accent:#303c6c;--focus:#f4976c;
   background:var(--puzzle-page)!important;color:var(--puzzle-text)!important;
  }
  html[data-site-theme="dark"] body.classroom-site:has(#builderPanel){
   --puzzle-page:#141c2c;--puzzle-surface:#202e40;--puzzle-header:#2d4854;
   --puzzle-controls:#293e50;--puzzle-text:#f2f0e9;--puzzle-muted:#bdc8d8;
   --puzzle-border:#71869c;--puzzle-input:#1c293b;--puzzle-selected:#344f63;
   --puzzle-grid:#34475d;--puzzle-blank:#0b1220;--puzzle-grid-line:#71869c;
   --puzzle-correct:#24506a;--puzzle-incorrect:#684d21;
  }
  html[data-site-theme] body.classroom-site:has(#builderPanel) :is(.shell,.wrap){background:var(--puzzle-page)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) :is(#builderPanel,#outputPanel){background:var(--puzzle-surface)!important;color:var(--puzzle-text)!important;border:1px solid var(--puzzle-border)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) :is(#builderPanel,#outputPanel)>.bd{background:var(--puzzle-surface)!important;color:var(--puzzle-text)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) :is(#builderPanel,#outputPanel)>.hd{background:var(--puzzle-header)!important;color:var(--puzzle-text)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) .panel .hd h2{color:var(--puzzle-text)!important;font-size:1.12rem!important;letter-spacing:normal;text-transform:none}
  html[data-site-theme] body.classroom-site:has(#builderPanel) #keyword-picker label{display:grid;grid-template-columns:minmax(95px,.35fr) minmax(0,1fr);align-items:center;font-size:1rem!important;line-height:1.5}
  html[data-site-theme] body.classroom-site:has(#builderPanel) #keyword-picker select{width:100%;max-width:100%;min-height:44px;padding:8px 10px;font-size:1rem!important;line-height:1.5}
  html[data-site-theme] body.classroom-site:has(#builderPanel) #keyword-picker h3{font-size:1.15rem!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) :is(#intro,#kw-status,#builderPanel textarea,#builderPanel .radio-pill,#builderPanel .ok,#builderPanel .warn){font-size:1rem!important;line-height:1.5!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) :is(.modebox .note,.modebox strong){font-size:.9rem!important;line-height:1.5}
  html[data-site-theme] body.classroom-site:has(#builderPanel) #builderPanel label.radio-pill{min-height:44px}
  html[data-site-theme] body.classroom-site:has(#builderPanel) #puzzle-builder-actions{gap:10px!important;align-items:center;margin-bottom:16px!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) #puzzle-builder-actions button{box-sizing:border-box;height:44px!important;min-height:44px!important;padding:8px 10px!important;line-height:1.3!important;margin:0!important;font-size:1rem!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) #puzzle-builder-actions button svg{height:22px!important;width:22px!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) :is(#intro,.modebox,.modebox strong,.modebox .note,#keyword-picker label,.clue-box h2){color:var(--puzzle-text)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) :is(.modebox,.clue-box,#gridWrap,.board-size-control,#playControlsMount){background:var(--puzzle-surface)!important;color:var(--puzzle-text)!important;border-color:var(--puzzle-border)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) :is(.clue-box li,.clue-box p,#play-selection-status,.clue-reveal-help){color:var(--puzzle-text)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) :is(#builderPanel,#outputPanel) button:not(.clue-reveal){background:var(--puzzle-controls)!important;color:var(--puzzle-text)!important;border:2px solid var(--puzzle-border)!important;font-weight:750!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) :is(#builderPanel,#outputPanel) button:not(.clue-reveal):hover{background:#f4976c!important;color:#303c6c!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) #outputPanel button.clue-reveal{color:var(--puzzle-text)!important;background:transparent!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) #outputPanel button.clue-reveal:hover{color:#f4976c!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) #builderPanel label.radio-pill{background:var(--puzzle-input)!important;color:var(--puzzle-text)!important;border:1px solid var(--puzzle-border)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) #builderPanel label.radio-pill:has(:checked){background:var(--puzzle-selected)!important;border-color:var(--puzzle-text)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) :is(#builderPanel textarea,#keyword-picker select){background:var(--puzzle-input)!important;color:var(--puzzle-text)!important;border-color:var(--puzzle-border)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) #keyword-picker label{background:transparent!important;border:0;padding:0}
  html[data-site-theme] body.classroom-site:has(#builderPanel) :is(button,input,textarea,select):focus-visible{outline-color:#f4976c!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) table.puzzle{background:var(--puzzle-grid)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) table.puzzle td{background:var(--puzzle-grid)!important;color:var(--puzzle-text)!important;border-color:var(--puzzle-grid-line)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) table.puzzle td.blank{background:var(--puzzle-blank)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) table.puzzle .cell-input{background:transparent!important;color:inherit!important;border:0!important;box-shadow:none!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) table.puzzle .cell-input:focus{outline:2px solid #f4976c!important;outline-offset:-2px!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) table.puzzle td .num{color:var(--puzzle-text)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) table.puzzle td.word-ok{background:var(--puzzle-correct)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) table.puzzle td.word-bad{background:var(--puzzle-incorrect)!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) table.puzzle td.ws.marked{background:#ffe05b!important;color:#303c6c!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) table.puzzle td.ws.incorrect{background:#ef7777!important;color:#591b1b!important}
  html[data-site-theme] body.classroom-site:has(#builderPanel) table.puzzle td.ws.selecting{background:var(--puzzle-selected)!important;color:var(--puzzle-text)!important;outline-color:#f4976c!important}
 }
 @media screen and (max-width:600px){
  html[data-site-theme] body.classroom-site:has(#builderPanel) #keyword-picker label{grid-template-columns:minmax(0,1fr);gap:6px;margin:12px 0}
 }
}
