/* jr12-biology（生物觀察錄）｜年齡層：junior（墨藍強調）
   對應簡表：--c-bg→--tp-bg、--c-surface→--tp-surface、--c-surface-2→--tp-bg-deep、--c-ink→--tp-text、--c-line→--tp-line
   --c-primary→--tp-accent（主按鈕、選取態）、--c-secondary→--tp-subject-sci（徽章、圖示）、--c-accent→--tp-warning（星星）
   --c-danger→--tp-error、--c-warn-soft→--tp-warning-soft；圓角→--tp-radius-card／--tp-radius-ctl
   陰影→--tp-shadow-1／--tp-shadow-2、字體→--tp-font-sans；答對態（is-good、is-ok、feedback.ok）另指 --tp-success 系 */
html[data-tp-theme="v2"]:root {
  --c-primary: var(--tp-accent);
  --c-primary-ink: var(--tp-accent-text);
  --c-primary-soft: var(--tp-accent-soft);
  --c-accent: var(--tp-warning);
  --c-accent-soft: var(--tp-warning-soft);
  --c-secondary: var(--tp-subject-sci);
  --c-secondary-soft: var(--tp-subject-sci-soft);
  --c-bg: var(--tp-bg);
  --c-surface: var(--tp-surface);
  --c-surface-2: var(--tp-bg-deep);
  --c-ink: var(--tp-text);
  --c-ink-soft: var(--tp-text-soft);
  --c-line: var(--tp-line);
  --c-danger: var(--tp-error);
  --c-danger-soft: var(--tp-error-soft);
  --c-warn-soft: var(--tp-warning-soft);
  --radius-sm: var(--tp-radius-ctl);
  --radius: var(--tp-radius-card);
  --radius-lg: var(--tp-radius-card);
  --shadow: var(--tp-shadow-2);
  --shadow-sm: var(--tp-shadow-1);
  --font: var(--tp-font-sans);
}
/* 大標改 serif，貼近 junior 參考書氣質 */
html[data-tp-theme="v2"] h1,
html[data-tp-theme="v2"] h2 { font-family: var(--tp-font-serif); }
/* 頁面暈染改吃權杖淺底（深色自動換夜間階） */
html[data-tp-theme="v2"] body { background-image: radial-gradient(ellipse at 0% 0%, var(--tp-accent-soft), transparent 46%), radial-gradient(ellipse at 100% 0%, var(--tp-subject-sci-soft), transparent 40%); }
/* 寫死色碼覆寫：吸頂列、跳轉連結、白底元件 */
html[data-tp-theme="v2"] .top { background: var(--tp-surface); }
html[data-tp-theme="v2"] .skip { background: var(--tp-accent); color: var(--tp-accent-on); }
html[data-tp-theme="v2"] input[type="number"],
html[data-tp-theme="v2"] input[type="text"],
html[data-tp-theme="v2"] select,
html[data-tp-theme="v2"] .calc-screen,
html[data-tp-theme="v2"] .choice,
html[data-tp-theme="v2"] .chip,
html[data-tp-theme="v2"] .pin,
html[data-tp-theme="v2"] .calc-keys button { background: var(--tp-surface); }
html[data-tp-theme="v2"] .slot { background: var(--tp-bg-deep); }
/* 主按鈕字色吃 accent-on，各變體補回自己的字色 */
html[data-tp-theme="v2"] .btn { color: var(--tp-accent-on); }
html[data-tp-theme="v2"] .btn.secondary { color: var(--tp-accent-text); }
html[data-tp-theme="v2"] .btn.ghost { color: var(--tp-text); }
html[data-tp-theme="v2"] .btn.danger { color: var(--tp-error); }
/* 答對態由 accent 改回 success 語意 */
html[data-tp-theme="v2"] .choice.is-good { border-color: var(--tp-success); background: var(--tp-success-soft); }
html[data-tp-theme="v2"] .feedback.ok { background: var(--tp-success-soft); }
html[data-tp-theme="v2"] .pin.is-ok { background: var(--tp-success); color: var(--tp-accent-on); }
/* 進度條留給科目識別色 */
html[data-tp-theme="v2"] .progress > span { background: var(--tp-subject-sci); }
/* 生產者／消費者／分解者三色類別改為語意三色 */
html[data-tp-theme="v2"] .chip.producer { border-color: var(--tp-success); }
html[data-tp-theme="v2"] .chip.consumer { border-color: var(--tp-info); }
/* 試卷紙面與手寫線 */
html[data-tp-theme="v2"] .paper { color: var(--tp-text); }
html[data-tp-theme="v2"] .blank { border-bottom-color: var(--tp-text); }
html[data-tp-theme="v2"] .work-line { border-bottom-color: var(--tp-line); }
/* 試管與氣泡的寫死色 */
html[data-tp-theme="v2"] .tube { background: var(--tp-subject-sci-soft); }
html[data-tp-theme="v2"] .bubble { background: var(--tp-surface); }
/* 焦點環跟 accent */
html[data-tp-theme="v2"] :focus-visible { outline-color: var(--tp-accent); }
