/* b7-gept（全民英檢）v2 風格覆寫；年齡層 more。 */
/* 對應：--paper→--tp-bg、--card→--tp-surface、--ink→--tp-text、--muted→--tp-text-soft、 */
/* --line→--tp-line、--ok→--tp-success、--bad→--tp-error、--veil→夜紙半透明遮罩。 */
/* 主操作與選取態用 --tp-accent（more 層自動深藍），品牌識別用 --tp-subject-en。 */

/* ---- 自訂屬性改指權杖（特異性高於 App 的 html.dark，深色自動對齊） ---- */
html[data-tp-theme="v2"]:root {
  --paper: var(--tp-bg);
  --ink: var(--tp-text);
  --card: var(--tp-surface);
  --line: var(--tp-line);
  --muted: var(--tp-text-soft);
  --ok: var(--tp-success);
  --ok-soft: var(--tp-success-soft);
  --bad: var(--tp-error);
  --bad-soft: var(--tp-error-soft);
  --veil: color-mix(in srgb, var(--tp-night-deep) 55%, transparent);
  color-scheme: light;
}
html[data-tp-theme="v2"][data-theme="dark"]:root { color-scheme: dark; }
@media (prefers-color-scheme: dark) {
  html[data-tp-theme="v2"]:not([data-theme="light"]):root { color-scheme: dark; }
}

/* ---- 字體：內文黑體、標題襯線 ---- */
html[data-tp-theme="v2"] body { font-family: var(--tp-font-sans); }
html[data-tp-theme="v2"] h1,
html[data-tp-theme="v2"] h2,
html[data-tp-theme="v2"] h3,
html[data-tp-theme="v2"] .brand-name { font-family: var(--tp-font-serif); }
html[data-tp-theme="v2"] :focus-visible { outline-color: var(--tp-focus-ring); }

/* ---- 分層：頁首與底列用深一階邊線 ---- */
html[data-tp-theme="v2"] .top { border-bottom-color: var(--tp-line-strong); }
html[data-tp-theme="v2"] .dock { border-top-color: var(--tp-line-strong); }

/* ---- 卡片：深邊線、無陰影、方正小圓角 ---- */
html[data-tp-theme="v2"] .stat,
html[data-tp-theme="v2"] .card,
html[data-tp-theme="v2"] .dialog {
  border-color: var(--tp-line-strong);
  box-shadow: var(--tp-card-shadow);
}
html[data-tp-theme="v2"] .stat { border-radius: var(--tp-radius-card); }
html[data-tp-theme="v2"] .card,
html[data-tp-theme="v2"] .dialog { border-radius: var(--tp-radius-card); }
html[data-tp-theme="v2"] .icon-btn,
html[data-tp-theme="v2"] .heat,
html[data-tp-theme="v2"] .badges li,
html[data-tp-theme="v2"] .seg,
html[data-tp-theme="v2"] .skill,
html[data-tp-theme="v2"] .btn,
html[data-tp-theme="v2"] .opt,
html[data-tp-theme="v2"] .choice,
html[data-tp-theme="v2"] .switch { border-radius: var(--tp-radius-ctl); }
html[data-tp-theme="v2"] .seg button { border-radius: var(--tp-radius-s); }

/* ---- 品牌與識別：科目色（英語） ---- */
html[data-tp-theme="v2"] .mark {
  border-color: var(--tp-subject-en);
  color: var(--tp-subject-en);
  font-family: var(--tp-font-serif);
}
html[data-tp-theme="v2"] .kicker { color: var(--tp-subject-en); }
html[data-tp-theme="v2"] .badges li.on { border-color: var(--tp-subject-en); }
html[data-tp-theme="v2"] .pass-seal { border-color: var(--tp-subject-en); color: var(--tp-subject-en); }
html[data-tp-theme="v2"] .pass-seal span { border-color: var(--tp-subject-en); }

/* ---- 主操作與選取態：深藍強調 ---- */
html[data-tp-theme="v2"] .nav a[aria-current="page"] {
  border-bottom-color: var(--tp-accent);
  color: var(--tp-accent-text);
}
html[data-tp-theme="v2"] .btn-primary { background: var(--tp-accent); color: var(--tp-accent-on); }
html[data-tp-theme="v2"] .seg button.on { background: var(--tp-accent); color: var(--tp-accent-on); }
html[data-tp-theme="v2"] .chip.on {
  border-color: var(--tp-accent);
  background: var(--tp-accent);
  color: var(--tp-accent-on);
}
html[data-tp-theme="v2"] .pill.on {
  border-color: var(--tp-accent);
  background: var(--tp-accent);
  color: var(--tp-accent-on);
}
html[data-tp-theme="v2"] .bar span { background: var(--tp-accent); }
html[data-tp-theme="v2"] .heat-1,
html[data-tp-theme="v2"] .heat-2,
html[data-tp-theme="v2"] .heat-3 { background: var(--tp-accent); }
html[data-tp-theme="v2"] .choice.on { border-color: var(--tp-accent); background: var(--tp-accent-soft); }
html[data-tp-theme="v2"] .choice.on .letter {
  border-color: var(--tp-accent);
  background: var(--tp-accent);
  color: var(--tp-accent-on);
}
