/* ============================================================
   app08-chinese（國語小博士）v2 風格覆寫　年齡層：kids（溫暖圓潤）
   自訂屬性→權杖對應簡表：
   --ink→--tp-text　--muted→--tp-text-soft　--line→--tp-line　--white→--tp-surface
   --paper→--tp-bg　--cream→--tp-bg-deep　--card→--tp-surface　--sky→--tp-success-soft
   --gold→--tp-amber　--gold-dark→--tp-warning　--gold-soft→--tp-warning-soft
   --leaf→--tp-success（原成功色）　--leaf-dark→--tp-success　--leaf-soft→--tp-success-soft
   --clay→--tp-error　--clay-dark→--tp-error　--clay-soft→--tp-error-soft
   --shadow→--tp-shadow-2　--shadow-sm→--tp-shadow-1　--font→--tp-font-sans
   ============================================================ */

/* 一、自訂屬性整批改指 v2 權杖（深色模式由權杖自動切換） */
html[data-tp-theme="v2"]:root {
  --gold: var(--tp-amber);
  --gold-dark: var(--tp-warning);
  --gold-soft: var(--tp-warning-soft);
  --leaf: var(--tp-success);
  --leaf-dark: var(--tp-success);
  --leaf-soft: var(--tp-success-soft);
  --clay: var(--tp-error);
  --clay-dark: var(--tp-error);
  --clay-soft: var(--tp-error-soft);
  --ink: var(--tp-text);
  --muted: var(--tp-text-soft);
  --line: var(--tp-line);
  --paper: var(--tp-bg);
  --card: var(--tp-surface);
  --cream: var(--tp-bg-deep);
  --sky: var(--tp-success-soft);
  --white: var(--tp-surface);
  --shadow: var(--tp-shadow-2);
  --shadow-sm: var(--tp-shadow-1);
  --radius-sm: var(--tp-radius-ctl);
  --radius-md: var(--tp-radius-card);
  --radius-lg: var(--tp-radius-xl);
  --font: var(--tp-font-sans);
  --focus: 0 0 0 3px var(--tp-surface), 0 0 0 6px var(--tp-focus-ring);
}

/* 二、背景點點與頂欄：改為權杖淺底，深色自動变淡 */
html[data-tp-theme="v2"] body {
  background-image: radial-gradient(var(--tp-accent-soft) 1.15px, transparent 1.15px);
}
html[data-tp-theme="v2"] .app-header { background-color: var(--tp-bg); }

/* 三、主操作鈕：朱砂 accent 系（原金色 .primary 與綠色 .primary.leaf 統一） */
html[data-tp-theme="v2"] .primary,
html[data-tp-theme="v2"] .primary.leaf {
  background: var(--tp-accent-strong);
  color: var(--tp-accent-on);
}
html[data-tp-theme="v2"] .primary:hover { background: var(--tp-accent-strong); }

/* 四、選取態統一跟 accent */
html[data-tp-theme="v2"] .card-btn.is-on {
  border-color: var(--tp-accent-strong);
  background: var(--tp-accent-soft);
}
html[data-tp-theme="v2"] .chip.is-on {
  background: var(--tp-accent-soft);
  border-color: var(--tp-accent-strong);
  color: var(--tp-accent-text);
}
html[data-tp-theme="v2"] .opt-btn.is-pick {
  background: var(--tp-accent-soft);
  border-color: var(--tp-accent-strong);
}
html[data-tp-theme="v2"] .check input { accent-color: var(--tp-accent-strong); }

/* 五、進度條改 accent 識別；選項按鈕邊線回權杖 */
html[data-tp-theme="v2"] .bar > span { background: var(--tp-accent-strong); }
html[data-tp-theme="v2"] .opt-btn { border-color: var(--tp-line); }

/* 六、提示回饋用文字主色保對比（琥珀文字階對比不足） */
html[data-tp-theme="v2"] .feedback.try { color: var(--tp-text); }

/* 七、考卷紙面：寫死墨色線條隨主題翻轉 */
html[data-tp-theme="v2"] .sheet { color: var(--tp-text); }
html[data-tp-theme="v2"] .box { border-color: var(--tp-text); }
html[data-tp-theme="v2"] .write-line { border-bottom-color: var(--tp-text); }
html[data-tp-theme="v2"] .exam-sec h3 { border-bottom-color: var(--tp-text); }
html[data-tp-theme="v2"] .exam-sec .sec-note { color: var(--tp-text-soft); }

/* 八、品牌大標用襯線 */
html[data-tp-theme="v2"] .brand h1 { font-family: var(--tp-font-serif); }

/* 九、頁尾行內寫死色改為權杖次要文字 */
html[data-tp-theme="v2"] .tp-foot[style] { color: var(--tp-text-soft) !important; }

/* 十、隱私設定彈窗（tpr-*）全區寫死色改為權杖 */
html[data-tp-theme="v2"] .tpr-modal {
  background: var(--tp-surface);
  color: var(--tp-text);
  font-family: var(--tp-font-sans);
}
html[data-tp-theme="v2"] .tpr-title,
html[data-tp-theme="v2"] .tpr-label { color: var(--tp-text); }
html[data-tp-theme="v2"] .tpr-lead,
html[data-tp-theme="v2"] .tpr-counter,
html[data-tp-theme="v2"] .tpr-privacy { color: var(--tp-text-soft); }
html[data-tp-theme="v2"] .tpr-err,
html[data-tp-theme="v2"] .tpr-status-err { color: var(--tp-error); }
html[data-tp-theme="v2"] .tpr-status-ok { color: var(--tp-success); }
html[data-tp-theme="v2"] .tpr-chip {
  border-color: var(--tp-line);
  color: var(--tp-text);
}
html[data-tp-theme="v2"] .tpr-chip input { accent-color: var(--tp-accent-strong); }
html[data-tp-theme="v2"] .tpr-chip.tpr-checked {
  border-color: var(--tp-accent-strong);
  background: var(--tp-accent-soft);
}
html[data-tp-theme="v2"] .tpr-chip:focus-within { outline-color: var(--tp-focus-ring); }
html[data-tp-theme="v2"] .tpr-modal textarea,
html[data-tp-theme="v2"] .tpr-modal input[type="text"],
html[data-tp-theme="v2"] .tpr-modal input[type="email"] {
  border-color: var(--tp-line);
  color: var(--tp-text);
  background: var(--tp-surface);
}
html[data-tp-theme="v2"] .tpr-modal textarea:focus,
html[data-tp-theme="v2"] .tpr-modal input[type="text"]:focus,
html[data-tp-theme="v2"] .tpr-modal input[type="email"]:focus {
  outline-color: var(--tp-focus-ring);
  border-color: var(--tp-accent-strong);
}
html[data-tp-theme="v2"] .tpr-btn-primary {
  background: var(--tp-accent-strong);
  color: var(--tp-accent-on);
  border-color: var(--tp-accent-strong);
}
html[data-tp-theme="v2"] .tpr-btn-ghost {
  background: var(--tp-surface);
  color: var(--tp-text);
  border-color: var(--tp-line);
}
html[data-tp-theme="v2"] .tpr-btn:focus-visible { outline-color: var(--tp-focus-ring); }
html[data-tp-theme="v2"] .tpr-open:hover,
html[data-tp-theme="v2"] .tpr-open:focus-visible { color: var(--tp-accent-text); }
