/* jr02-math-geometry（幾何畫布）；年齡層：junior；v2 風格覆寫。
   簡表：--ink→--tp-text、--ink-soft→--tp-text-soft、--paper→--tp-bg、--surface→--tp-surface、--line→--tp-line。
   --primary→--tp-accent、--primary-strong→--tp-accent-strong（主按鈕統一走 junior 墨藍強調）。
   --secondary→--tp-subject-math、--secondary-soft→--tp-subject-math-soft（晶片等識別用途保留數學科目色）。
   --accent→--tp-warning、--accent-soft→--tp-warning-soft、--hint→--tp-warning、--hint-soft→--tp-warning-soft。
   --ok→--tp-success、--ok-soft→--tp-success-soft、--bad→--tp-error、--bad-soft→--tp-error-soft。
   --radius→--tp-radius-card、--radius-lg→--tp-radius-card、--shadow→--tp-shadow-1、--shadow-soft→--tp-shadow-1、--font→--tp-font-sans。 */

html[data-tp-theme="v2"]:root {
  --ink: var(--tp-text);
  --ink-soft: var(--tp-text-soft);
  --paper: var(--tp-bg);
  --surface: var(--tp-surface);
  --primary: var(--tp-accent);
  --primary-strong: var(--tp-accent-strong);
  --secondary: var(--tp-subject-math);
  --secondary-soft: var(--tp-subject-math-soft);
  --accent: var(--tp-warning);
  --accent-soft: var(--tp-warning-soft);
  --ok: var(--tp-success);
  --ok-soft: var(--tp-success-soft);
  --bad: var(--tp-error);
  --bad-soft: var(--tp-error-soft);
  --hint: var(--tp-warning);
  --hint-soft: var(--tp-warning-soft);
  --line: var(--tp-line);
  --radius: var(--tp-radius-card);
  --radius-lg: var(--tp-radius-card);
  --shadow: var(--tp-shadow-1);
  --shadow-soft: var(--tp-shadow-1);
  --font: var(--tp-font-sans);
}

/* 寫死色碼逐條覆寫 */
html[data-tp-theme="v2"] body {
  background-image: radial-gradient(rgba(110, 101, 88, 0.1) 0.9px, transparent 0.9px);
}
html[data-tp-theme="v2"] :focus-visible {
  outline-color: var(--tp-accent);
}
html[data-tp-theme="v2"] .topbar {
  background: var(--tp-bg);
}
html[data-tp-theme="v2"] .iconbtn,
html[data-tp-theme="v2"] .btn,
html[data-tp-theme="v2"] .btn-ghost,
html[data-tp-theme="v2"] .check,
html[data-tp-theme="v2"] .seg label,
html[data-tp-theme="v2"] .choice,
html[data-tp-theme="v2"] .ans-line input[type="text"],
html[data-tp-theme="v2"] .field input[type="text"],
html[data-tp-theme="v2"] .calc button,
html[data-tp-theme="v2"] details.review {
  background: var(--tp-surface);
}
html[data-tp-theme="v2"] .btn-primary,
html[data-tp-theme="v2"] .calc .eq {
  color: var(--tp-accent-on);
}
html[data-tp-theme="v2"] .btn-accent {
  background: var(--tp-accent);
  color: var(--tp-accent-on);
}
html[data-tp-theme="v2"] .seg label:has(input:checked),
html[data-tp-theme="v2"] .check:has(input:checked),
html[data-tp-theme="v2"] .choice.is-on {
  background: var(--tp-accent-soft);
}
html[data-tp-theme="v2"] .progress,
html[data-tp-theme="v2"] .meter .track {
  background: var(--tp-bg-deep);
}
html[data-tp-theme="v2"] .figwrap,
html[data-tp-theme="v2"] #exploreSvg {
  background: var(--tp-surface);
}
html[data-tp-theme="v2"] .fig .s,
html[data-tp-theme="v2"] .fig .c,
html[data-tp-theme="v2"] .fig .d {
  stroke: var(--tp-text);
}
html[data-tp-theme="v2"] .fig .p {
  fill: var(--tp-accent-soft);
  stroke: var(--tp-text);
}
html[data-tp-theme="v2"] .fig .a,
html[data-tp-theme="v2"] .fig .arc {
  stroke: var(--tp-warning);
}
html[data-tp-theme="v2"] .fig .h {
  fill: var(--tp-accent);
  stroke: var(--tp-surface);
}
html[data-tp-theme="v2"] .fig text {
  fill: var(--tp-text);
  stroke: var(--tp-surface);
}

/* D2d 對比補修（1151001）。 */
/* theme 的 .btn 白底（特異性高於 App 的 .btn-primary）蓋掉了主按鈕底色，白字落在白底上；補回主按鈕底色（區域色）。 */
html[data-tp-theme="v2"] .btn-primary {
  background: var(--tp-accent);
}

html[data-tp-theme="v2"] .btn-primary:hover:not(:disabled) {
  background: var(--tp-accent-strong);
}
