@charset "UTF-8";
/* 词卷 V5.2「星穹观测台 · 精修」—— 其余桌面页（计划 / 词库 / 统计 / 成就 / 我的 / 设置 + 完成页 + 启动加载页）
   ★ 铁律 1：所有选择器都以 html.ws-v5 打头。没挂载 = 这一层等于不存在。
   ★ 铁律 2（V5.2）：所有主题都挂 ws-v5；一键返回旧版 = localStorage.ws_ui_v5='off' 时本层不存在。
   ★ 铁律 3：颜色只用 16-ws-v5.css 第 1 节的 --v5-* 令牌（accent 当文字 = --v5-accent-ink，金字 = --v5-gold-ink，
     三级字 = --v5-ink-3）；字号只用 --v5-fs-* 九档；形状 / 圆角 / 动效只用第 1.6 节的性格令牌
     （--v5-r / --v5-r-sm / --v5-r-btn / --v5-btn-clip / --v5-ease / --v5-dur* / --v5-press / --v5-lift / --v5-shadow-soft）。
   ★ 铁律 4：只加不改。16 / 17 / 19 / index.html 一个字不动；DOM 结构类（.v5-card / .v5-pagehead / .v5-card__head…）由 19 打，
     这里只按 §5.1 契约写样式，并对站点原类名逐个兜底。
   ★ V5.2 做减法（§0/§1）：普通面板一律 .v5-card 的样子（--v5-panel 底 / 1px --v5-line / 圆角 --v5-r / --v5-shadow-soft），
     没有切角、没有发丝渐变描边、没有角标、没有菱形眉题、没有金色端点。切角只留主按钮（--v5-btn-clip）。
     一屏一个 accent 填充块（该页的主按钮）；金色只当文字用，且一屏一处。
   ★ 为什么满屏 !important：站点已有 09-supreme / 14-visual-adapt / 15-ws-ios 与 index.html 里 V6.7.18 那一大段，
     对 .card / .plan-panel / .stats-panel / .settings-card 全是 !important。照这栋楼的规矩：html.ws-v5 四连提权 + !important。 */

/* ==================== 0. 注入节点默认不出现（窄屏保持旧版式） ==================== */
html.ws-v5 .wsv5p{display:none!important;}
/* warn 当文字用的令牌：--v5-warn 70% + ink（与 16 的 .v5-tag.is-warn 同配方；猫卷 / 极简浅下裸 --terra 只有 2.78:1） */
html.ws-v5{--v5p-warn-ink:color-mix(in srgb,var(--v5-warn) 70%,var(--v5-ink));}

@media(min-width:769px){

html.ws-v5 .wsv5p{display:block!important;}
/* 0b. 手机层（25-ws-v5-mobile-pages.js）在桌面宽度也会注入第二套页头 / 「我的」列表（其 CSS 只在 ≤768 生效，桌面上裸露）。
   这里只收起**纯注入**的节点（不含被搬进去的站点原节点），入口一个不少：它们代理的目标都在本页可见。 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5m-me,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5m-set-head,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5m-acc-rows,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5m-rows,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5m-plan-tools-toggle{display:none!important;}

/* ==================== 1. 站点既有面板 → .v5-card 皮（§5 卡片：唯一定义） ====================
   ::before/::after 上那一长串复位不是啰嗦：站点给这些节点的伪元素本来是装饰圆斑 / 玻璃层，
   不逐条复位就会留着 -18px 偏移的斑块在卡外。 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-grid,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero .wsv5p-curve,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.card,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-card,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-metric-card,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-panel,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .wsv5p-herostat,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-summary-grid,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-controls,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-profile-card,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .app-icon-panel,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-subnav,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-card,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-card{
  position:relative!important;isolation:auto!important;clip-path:none!important;
  background:var(--v5-panel)!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r)!important;
  box-shadow:var(--v5-shadow-soft)!important;color:var(--v5-ink)!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  transition:border-color var(--v5-dur-fast),transform var(--v5-dur) var(--v5-ease),box-shadow var(--v5-dur);
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-grid::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-grid::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.card::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.card::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-card::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-card::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-hero-card::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-hero-card::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-metric-card::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-metric-card::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-panel::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-panel::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-hero::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-hero::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-summary-card::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-summary-card::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-controls::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-controls::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-profile-card::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-profile-card::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .app-icon-panel::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .app-icon-panel::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-hero::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-hero::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-subnav::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-subnav::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-card::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-card::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-card::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-card::after{content:none!important;display:none!important;}
/* 二期以前的角标刻线：V5.2 不要 */
html.ws-v5 .wsv5p-corner{display:none!important;}
/* 透明页头容器（§7：page 标题 + 一行说明 + 右侧一个动作，不是卡） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-hero-card,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-hero,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-hero,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .v5-pagehead{
  position:relative!important;isolation:auto!important;clip-path:none!important;
  background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
}
/* 浅色主题下站点给「类名带 card/panel」的子零件也刷了 22px 圆角 + 投影（统计面板标题行、成就卡顶行等），撤掉 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel-head,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel-actions,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-cards,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .protection-card-actions,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-panel-head,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card-top,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card-foot{
  box-shadow:none!important;border-radius:0!important;background:transparent!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
}

/* ==================== 2. 通用零件 ==================== */
/* 2.1 页头（透明）：page 28 标题 + caption 说明 + 右侧一个动作；眉题 11/600 无菱形 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5-pagehead{
  display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:16px!important;
  margin:0 0 4px!important;padding:6px 2px 0!important;min-height:0!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5-pagehead>*{min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5-pagehead .v5-eyebrow,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5-pagehead .plan-kicker,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5-pagehead .share-eyebrow{
  display:block!important;margin:0 0 6px!important;padding:0!important;background:none!important;border:0!important;
  font-family:var(--cjk)!important;font-size:var(--v5-fs-eyebrow)!important;font-weight:600!important;letter-spacing:.08em!important;
  text-transform:uppercase!important;color:var(--v5-accent-ink)!important;line-height:1.2!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5-pagehead .v5-eyebrow::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5-pagehead .plan-kicker::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5-pagehead .share-eyebrow::before{content:none!important;display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5-pagehead .v5-pagehead__title,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5-pagehead h2{
  display:block!important;margin:0!important;padding:0!important;border:0!important;background:none!important;
  font-family:var(--cjk)!important;font-size:var(--v5-fs-page)!important;font-weight:700!important;line-height:1.2!important;
  letter-spacing:0!important;color:var(--v5-ink)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5-pagehead h2 span{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5-pagehead .v5-pagehead__sub,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5-pagehead p{
  margin:6px 0 0!important;padding:0!important;font-size:var(--v5-fs-body)!important;color:var(--v5-ink-3)!important;line-height:1.5!important;max-width:78ch!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .v5-pagehead .v5-pagehead__act{flex:none!important;align-self:flex-end!important;}

/* 2.2 卡头（§5.1 .v5-card__head：eyebrow + title + 右侧一个动作）：站点各页的 h3 标题行统一成眉题 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel-head,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-panel-head,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-ph{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;
  margin:0 0 12px!important;padding:0!important;border:0!important;background:none!important;min-height:0!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel-head::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel-head::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-panel-head::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-panel-head::after{content:none!important;display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel-head h3,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-panel-head h3,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .sec-title,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box h3,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .app-icon-panel h3,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-card h3,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-tip-head span,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p .wsv5-eyebrow,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p.wsv5-eyebrow{
  display:flex!important;align-items:center!important;gap:8px!important;flex:none!important;margin:0!important;padding:0!important;
  font-family:var(--cjk)!important;font-weight:600!important;font-size:var(--v5-fs-eyebrow)!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;line-height:1.2!important;
  color:var(--v5-accent-ink)!important;background:none!important;border:0!important;box-shadow:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel-head h3::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-panel-head h3::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .sec-title::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box h3::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .app-icon-panel h3::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-card h3::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-tip-head span::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p .wsv5-eyebrow::before{content:none!important;display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p .wsv5-eyebrow.au{color:var(--v5-gold-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel-head h3 span{font-family:var(--cjk)!important;font-size:var(--v5-fs-caption)!important;letter-spacing:0!important;text-transform:none!important;color:var(--v5-ink-3)!important;font-weight:500!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel-head>button,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel-actions,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-panel-head>*:not(h3){flex:none!important;display:flex!important;align-items:center!important;gap:14px!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-ph .wsv5-num{font:500 var(--v5-fs-caption)/1.3 var(--cjk)!important;color:var(--v5-ink-3)!important;}
/* 卡头右侧的文字动作 = .v5-card__act 的样子 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel-head button,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel-actions button,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-tip-card button,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-adjust-card button,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-subtle,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .achievement-link-btn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-soft-action,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-link{
  display:inline-flex!important;align-items:center!important;gap:4px!important;
  border:0!important;background:none!important;box-shadow:none!important;padding:0!important;margin:0!important;
  min-height:0!important;width:auto!important;height:auto!important;cursor:pointer;
  font:600 var(--v5-fs-caption)/1.4 var(--cjk)!important;color:var(--v5-accent-ink)!important;white-space:nowrap!important;transform:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel-head button:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel-actions button:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-soft-action:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .achievement-link-btn:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-link:hover{text-decoration:underline!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-subtle{color:var(--v5-ink-3)!important;font-weight:500!important;cursor:default;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-soft-action{margin-top:10px!important;}

/* 2.3 我的面板（注入） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-card{display:flex!important;flex-direction:column!important;padding:20px!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-row{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-grid2{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;align-items:stretch!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-grid3{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;align-items:stretch!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p.wsv5-sec{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p.wsv5-sec>h2{flex:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p.wsv5-sec>.wsv5-line{flex:1 1 auto!important;min-width:24px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p.wsv5-sec>.wsv5-seclink{flex:none!important;width:auto!important;}
/* 说明行：caption / ink-3，没有菱形 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-note{display:block!important;margin:12px 0 0!important;padding:10px 0 0!important;border-top:1px solid var(--v5-line)!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.55!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-note::before{content:none!important;display:none!important;}

/* 2.4 进度条：§5 高 6 / 轨 --v5-line / 填 accent / 圆角 999；无刻度无端点无光 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card i,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-progress,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-mini-bar,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-streak-next .stats-mini-bar,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-bar{
  position:relative!important;display:block!important;height:6px!important;margin-top:8px!important;width:auto!important;
  border:0!important;border-radius:var(--v5-r-pill)!important;overflow:hidden!important;
  background:var(--v5-line)!important;box-shadow:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card i>span,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-progress>i,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-mini-bar>i,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-bar>i{
  position:relative!important;display:block!important;height:100%!important;border-radius:inherit!important;
  background:var(--v5-accent)!important;box-shadow:none!important;transition:width var(--v5-dur-slow) var(--v5-ease);
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card i>span::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-progress>i::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-mini-bar>i::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-bar>i::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card i::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-bar::after{content:none!important;display:none!important;}
/* 桃桃猫卷：进度条末端一颗小猫头（与 16 的 .v5-bar 同一签名） */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #view-plan .plan-metric-card i,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body .wsv5p-bar{overflow:visible!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #view-plan .plan-metric-card i>span,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body .wsv5p-bar>i{overflow:visible!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #view-plan .plan-metric-card i>span::after,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body .wsv5p-bar>i::after{
  content:""!important;display:block!important;position:absolute;right:-7px;top:50%;width:14px;height:14px;margin-top:-7px;background:var(--v5-accent);
  -webkit-mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M2 2l3 2.4h4L12 2v5.2A5 5 0 0 1 7 12a5 5 0 0 1-5-4.8z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M2 2l3 2.4h4L12 2v5.2A5 5 0 0 1 7 12a5 5 0 0 1-5-4.8z'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* 2.5 次按钮 / chip（注入的 .wsv5p-chip 与站点的分类 chip）：一律 .v5-btn 线框（透明 / 1px --v5-line-2 / 圆角 --v5-r-sm / 高 40）
   金色只当文字（.hot）；玫红只在危险区（.danger） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-chip{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  height:40px!important;min-height:40px!important;padding:0 14px!important;margin:0!important;
  border:1px solid var(--v5-line-2)!important;border-radius:var(--v5-r-sm)!important;cursor:pointer;
  background:transparent!important;box-shadow:none!important;
  color:var(--v5-ink)!important;font:600 var(--v5-fs-body)/1 var(--cjk)!important;white-space:nowrap!important;text-align:center!important;
  transition:background-color var(--v5-dur-fast),border-color var(--v5-dur-fast),transform var(--v5-dur) var(--v5-ease);
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-chip:hover{background:var(--v5-accent-soft)!important;border-color:var(--v5-accent-line)!important;transform:var(--v5-lift)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-chip:active{transform:var(--v5-press)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-chip i{font-style:normal!important;font-size:var(--v5-fs-body-lg)!important;flex:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-chip b{font-weight:600!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-chip small{font-size:var(--v5-fs-eyebrow)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-chip.hot{color:var(--v5-gold-ink)!important;border-color:color-mix(in srgb,var(--v5-gold) 40%,transparent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-chip.danger{color:var(--v5p-warn-ink)!important;border-color:color-mix(in srgb,var(--v5-warn) 40%,transparent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-chip.danger:hover{background:color-mix(in srgb,var(--v5-warn) 10%,var(--v5-panel))!important;border-color:var(--v5-warn)!important;}
/* 危险区卡：只多一条 warn 描边 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-danger{border-color:color-mix(in srgb,var(--v5-warn) 34%,var(--v5-line))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .wsv5p-danger .wsv5-eyebrow{color:var(--v5p-warn-ink)!important;}
/* 站点通用 .btn（我的页 / 词库页）→ .v5-btn；.btn.solid → 强调文字线框（该页主按钮另立） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box .btn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .api-config .btn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .setrow .btn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .btnrow .btn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .study-settings-actions .btn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-export-btn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-primary-btn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-soft-btn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-study-actions .btn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar button,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar #planResetBtn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar #planSaveBtn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card>button,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .mobile-import-entry{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  height:40px!important;min-height:40px!important;padding:0 16px!important;margin:0!important;width:auto!important;
  border:1px solid var(--v5-line-2)!important;border-radius:var(--v5-r-sm)!important;cursor:pointer;
  background:transparent!important;box-shadow:none!important;background-image:none!important;
  color:var(--v5-ink)!important;font:600 var(--v5-fs-body)/1 var(--cjk)!important;letter-spacing:0!important;text-shadow:none!important;
  transition:background-color var(--v5-dur-fast),border-color var(--v5-dur-fast),transform var(--v5-dur) var(--v5-ease);transform:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box .btn:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .setrow .btn:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .btnrow .btn:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .study-settings-actions .btn:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-export-btn:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-primary-btn:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-soft-btn:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-study-actions .btn:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar button:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar #planSaveBtn:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card>button:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .mobile-import-entry:hover{background:var(--v5-accent-soft)!important;border-color:var(--v5-accent-line)!important;transform:var(--v5-lift)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box .btn.solid,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .btn.solid,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-primary-btn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-study-actions .btn.solid,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-export-btn{color:var(--v5-accent-ink)!important;border-color:var(--v5-accent-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .btn.danger,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar #planResetBtn{color:var(--v5p-warn-ink)!important;border-color:color-mix(in srgb,var(--v5-warn) 40%,transparent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .btn.danger:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar #planResetBtn:hover{background:color-mix(in srgb,var(--v5-warn) 10%,var(--v5-panel))!important;border-color:var(--v5-warn)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box .btn.account-logout{color:var(--v5-ink-2)!important;}
/* 该页唯一主按钮（.v5-btn-primary 形：accent 填充 / on-accent 字 / 切角或圆角走 --v5-btn-clip、--v5-r-btn / 唯一发光） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar #planStartBtn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar button.primary{
  position:relative!important;overflow:visible!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;
  width:auto!important;min-width:220px!important;height:var(--v5-btn-h-lg)!important;min-height:var(--v5-btn-h-lg)!important;padding:0 26px!important;margin:0!important;
  border:0!important;border-radius:var(--v5-r-btn)!important;font:600 var(--v5-fs-body-lg)/1 var(--cjk)!important;letter-spacing:.02em!important;
  background:var(--v5-accent)!important;color:var(--v5-on-accent)!important;background-image:none!important;text-shadow:none!important;
  clip-path:var(--v5-btn-clip);box-shadow:var(--v5-shadow-soft)!important;
  filter:drop-shadow(0 0 calc(12px * var(--v5-glow)) color-mix(in srgb,var(--v5-accent) 45%,transparent));
  transition:transform var(--v5-dur) var(--v5-ease),filter var(--v5-dur-fast);transform:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar #planStartBtn span,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar #planStartBtn *{color:inherit!important;opacity:1!important;font-size:inherit!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar #planStartBtn::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar button.primary::before{content:none!important;display:none!important;animation:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar #planStartBtn:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar button.primary:hover{transform:var(--v5-lift)!important;filter:brightness(1.06) drop-shadow(0 0 calc(14px * var(--v5-glow)) color-mix(in srgb,var(--v5-accent) 50%,transparent));background:var(--v5-accent)!important;border-color:transparent!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar #planStartBtn:active,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar button.primary:active{transform:var(--v5-press)!important;transition-duration:var(--v5-dur-fast)!important;}
/* 星穹家族签名：主按钮 hover 一道扫光（与 16 的 .v5-btn-primary 同一条） */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme^="supreme"] body #view-plan .plan-actions-bar #planStartBtn,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme^="supreme"] body #view-settings .settings-bottom-bar button.primary{overflow:hidden!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme^="supreme"] body #view-plan .plan-actions-bar #planStartBtn::after,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme^="supreme"] body #view-settings .settings-bottom-bar button.primary::after{content:"";position:absolute;top:0;bottom:0;left:0;width:36%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--v5-on-accent) 35%,transparent),transparent);transform:translateX(-140%) skewX(-18deg);pointer-events:none;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme^="supreme"] body #view-plan .plan-actions-bar #planStartBtn:hover::after,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme^="supreme"] body #view-settings .settings-bottom-bar button.primary:hover::after{animation:v5-sweep .7s var(--v5-ease) 1;}
/* 纸墨：主按钮像印章（内描边） */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="light"] body #view-plan .plan-actions-bar #planStartBtn,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="dark"] body #view-plan .plan-actions-bar #planStartBtn,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="light"] body #view-settings .settings-bottom-bar button.primary,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="dark"] body #view-settings .settings-bottom-bar button.primary{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--v5-on-accent) 25%,transparent)!important;}

/* 2.6 输入框：卡内次级面 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-custom-settings input,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .setrow input[type="number"],
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib #importBox,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .auth-form input,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .share-link-box,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .api-config input,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-stepper-controls input,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-sort{
  border:1px solid var(--v5-line)!important;border-radius:var(--v5-r-sm)!important;background:var(--v5-panel-2)!important;
  box-shadow:none!important;color:var(--v5-ink)!important;font-family:var(--cjk)!important;font-size:var(--v5-fs-body)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .auth-form input:focus,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .api-config input:focus,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib #importBox:focus{border-color:var(--v5-accent-line)!important;outline:0!important;}
/* 卡内次级面（sub-panel）：--v5-panel-2 底 / 1px line / 圆角 --v5-r-sm，没有描边发光 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-intensity-rail button,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-custom-settings label,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-intensity-summary,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-tip-card,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-adjust-card,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-note,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .import-tools,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .setrow,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .fmt,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-streak-box,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .achievement-mini,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .auth-subbox,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .invite-note,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-strip,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .sync-status,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .invite-hint,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-group,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-lect-mobile-entry button,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-stepper,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-toggle-line,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-control-block,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-system,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-card,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-icon-card,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-quick-list button,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-sync-box,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .wsv5p-uiver{
  border:1px solid var(--v5-line)!important;border-radius:var(--v5-r-sm)!important;background:var(--v5-panel-2)!important;
  box-shadow:none!important;transform:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;
}

/* ==================== 3. 计划页 ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan.active{display:block!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .mobile-plan-shell{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-page{
  display:flex!important;flex-direction:column!important;gap:16px!important;
  max-width:none!important;margin:0!important;padding:0!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-page>*{grid-area:auto!important;grid-column:auto!important;grid-row:auto!important;order:0!important;inset:auto!important;position:relative!important;}

/* 3.1 页头（透明）：左 = 眉题 / 标题 / 一句 / 两个文字链；右 = 遗忘曲线卡（签名元素，够大）
   ★ 落位必须写死：这是 grid，四个子节点交给自动排位的话「查看完整计划表」会被塞进右列第一行（第 1 轮截图实测）。 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero{
  display:grid!important;grid-template-columns:minmax(0,1fr) 460px!important;grid-template-rows:auto!important;
  gap:0 24px!important;align-items:start!important;align-content:start!important;
  padding:6px 2px 0!important;margin:0!important;min-height:0!important;overflow:visible!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero>*{min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero .plan-hero-art{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero .plan-hero-copy{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:0!important;
  grid-column:1!important;grid-row:1!important;align-self:start!important;padding-top:18px!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero .wsv5p-curve{grid-column:2!important;grid-row:1!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero .plan-hero-copy>*+*{margin-top:8px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero .plan-hero-copy>h2{margin-top:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero .ws-sci-link,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-full-entry{
  align-self:flex-start!important;justify-self:start!important;
  margin:10px 0 0!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;
  min-height:0!important;width:auto!important;height:auto!important;
  color:var(--v5-accent-ink)!important;font:600 var(--v5-fs-body)/1.4 var(--cjk)!important;cursor:pointer;text-decoration:none!important;
  display:inline-flex!important;align-items:center!important;gap:5px!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero .ws-sci-link:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-full-entry:hover{text-decoration:underline!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero .plan-full-entry{margin-top:4px!important;color:var(--v5-ink-2)!important;font-weight:500!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-full-entry b{color:inherit!important;font-size:inherit!important;}
/* 遗忘曲线卡 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero .wsv5p-curve{display:flex!important;flex-direction:column!important;justify-content:center!important;padding:18px 20px 14px!important;margin:0!important;min-width:0!important;}
html.ws-v5 .wsv5p-curve h4{margin:0 0 4px!important;font:600 var(--v5-fs-title)/1.25 var(--cjk);color:var(--v5-ink);}
html.ws-v5 .wsv5p-curve p{margin:0 0 8px!important;font-size:var(--v5-fs-caption);color:var(--v5-ink-3);line-height:1.55;}
html.ws-v5 .wsv5p-curve svg{display:block;width:100%;height:auto;}
html.ws-v5 .wsv5p-curve .wsv5p-curvefoot{display:flex;align-items:center;gap:14px;margin-top:6px;font-size:var(--v5-fs-caption);color:var(--v5-ink-3);}
html.ws-v5 .wsv5p-curve .wsv5p-curvefoot .wsv5p-fsp{flex:1 1 auto;}

/* 3.2 五格指标 → 一张卡里五个无框 .v5-stat（竖线分隔） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:0!important;margin:0!important;padding:18px 20px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card{
  position:relative!important;isolation:auto!important;clip-path:none!important;
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important;
  padding:2px 18px!important;margin:0!important;min-height:0!important;min-width:0!important;
  background:transparent!important;border:0!important;border-left:1px solid var(--v5-line)!important;border-radius:0!important;box-shadow:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card:first-child{padding-left:0!important;border-left:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card>div{min-width:0!important;flex:1 1 auto!important;width:100%!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-icon{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card small{display:block!important;font-size:var(--v5-fs-caption)!important;font-weight:500!important;color:var(--v5-ink-3)!important;line-height:1.3!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card strong{display:block!important;margin:4px 0 0!important;font-size:var(--v5-fs-caption)!important;font-weight:500!important;color:var(--v5-ink-3)!important;line-height:1!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card strong b{font-family:var(--v5-tech)!important;font-size:var(--v5-fs-display)!important;font-weight:700!important;color:var(--v5-ink)!important;line-height:1!important;font-variant-numeric:tabular-nums;letter-spacing:.01em;margin-right:2px;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card em{display:block!important;margin-top:6px!important;font-style:normal!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.3!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card i{width:auto!important;margin-top:8px!important;}

/* 3.3 面板落位（自动排位会让左右两列高度差出一大块空白，第 1 轮截图实测）：
   今日计划详情 / 计划强度 / 贴士 各占整行，本周航线图与计划表预览并排等高。 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-content-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;align-items:start!important;align-content:start!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-today-panel{grid-column:1 / -1!important;grid-row:1!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-panel{grid-column:1!important;grid-row:2!important;align-self:stretch!important;display:flex!important;flex-direction:column!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-preview-panel{grid-column:2!important;grid-row:2!important;align-self:stretch!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-panel>.plan-panel-head{flex:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-panel .wsv5p-weekwrap{flex:1 1 auto!important;display:block!important;min-height:0!important;position:relative!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-panel .wsv5p-weekwrap>.plan-week-bars{height:100%!important;box-sizing:border-box!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-panel .plan-week-summary{flex:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-intensity-panel{grid-column:1 / -1!important;grid-row:3!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-tips-panel{grid-column:1 / -1!important;grid-row:4!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-panel{padding:20px!important;margin:0!important;min-height:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-muted,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-save-hint{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.55!important;margin:0 0 12px!important;}

/* 3.4 今日计划详情四张：卡内次级面，四列；「计划规则」那张通栏 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-cards{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card{
  position:relative!important;isolation:auto!important;clip-path:none!important;
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:3px!important;
  padding:14px 16px!important;margin:0!important;min-height:0!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card::after{content:none!important;display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card.tone-blue{grid-column:1 / -1!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card>span:first-child{
  width:28px!important;height:28px!important;flex:none!important;display:grid!important;place-items:center!important;
  border:0!important;border-radius:50%!important;font-size:var(--v5-fs-body)!important;
  background:var(--v5-accent-soft)!important;color:var(--v5-accent-ink)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card h4{margin:8px 0 0!important;font:600 var(--v5-fs-body-lg)/1.3 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card strong{font-size:var(--v5-fs-caption)!important;font-weight:500!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card strong b{font-family:var(--v5-tech)!important;font-size:var(--v5-fs-section)!important;font-weight:700!important;color:var(--v5-ink)!important;font-variant-numeric:tabular-nums;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card p{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-2)!important;margin:0!important;line-height:1.5!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card small{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;}
/* 「计划规则」四条排成一行，自己画小圆点当项目符号（原来两列网格第二列圆点落到第一列文字屁股上） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card ul{align-self:stretch!important;margin:6px 0 0!important;padding:0!important;list-style:none!important;display:flex!important;flex-wrap:wrap!important;gap:4px 28px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card li{position:relative!important;list-style:none!important;margin:0!important;padding:0 0 0 12px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-2)!important;line-height:1.6!important;white-space:nowrap!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card li::before{content:""!important;position:absolute!important;left:0!important;top:.62em!important;width:5px!important;height:5px!important;margin:0!important;border:0!important;border-radius:50%!important;transform:none!important;background:var(--v5-accent)!important;opacity:.8!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card li::marker{content:""!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card>button{align-self:flex-start!important;margin-top:10px!important;height:32px!important;min-height:32px!important;padding:0 12px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-accent-ink)!important;}

/* 3.5 本周航线图：细柱 + 顶端圆点（无光），注入的连线 SVG 垫在同一个盒子里 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-bars{
  position:relative!important;z-index:1!important;display:flex!important;align-items:flex-end!important;
  justify-content:space-between!important;gap:6px!important;padding:8px 0 0!important;margin:0!important;
  border:0!important;background:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-bar{
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-end!important;
  flex:1 1 0!important;min-width:0!important;gap:5px!important;padding:0!important;margin:0!important;
  border:0!important;background:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-bar>span{order:3!important;font:500 var(--v5-fs-caption)/1.2 var(--cjk)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-bar>b{order:1!important;font-family:var(--v5-tech)!important;font-size:var(--v5-fs-body)!important;font-weight:600!important;color:var(--v5-ink-2)!important;font-variant-numeric:tabular-nums;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-bar>i{
  order:2!important;position:relative!important;width:3px!important;min-width:3px!important;max-width:3px!important;
  border:0!important;border-radius:2px!important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--v5-accent) 62%,transparent),color-mix(in srgb,var(--v5-accent) 12%,transparent))!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-bar>i::after{content:"";position:absolute;left:50%;top:0;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:var(--v5-accent);box-shadow:none;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-bar.today>b{color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-bar.today>span{color:var(--v5-accent-ink)!important;font-weight:600!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-bar.today>i::after{width:13px;height:13px;margin:-6.5px 0 0 -6.5px;box-shadow:0 0 0 3px var(--v5-accent-soft);}
html.ws-v5 .wsv5p-weekline{position:absolute;left:0;top:0;width:100%;height:100%;z-index:0;pointer-events:none;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-summary{
  display:flex!important;align-items:center!important;gap:18px!important;margin:12px 0 0!important;padding:12px 0 0!important;
  border:0!important;border-top:1px solid var(--v5-line)!important;background:none!important;
  font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-week-summary b{font-family:var(--v5-tech)!important;font-size:var(--v5-fs-title)!important;font-weight:700!important;color:var(--v5-ink)!important;font-variant-numeric:tabular-nums;}

/* 3.6 强度轨 + 自定义数值 + 底部操作条 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-intensity-rail{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important;margin:0 0 12px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-intensity-rail button{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:2px!important;
  padding:12px 14px!important;margin:0!important;min-height:0!important;height:auto!important;width:auto!important;cursor:pointer;text-align:left!important;
  color:var(--v5-ink)!important;font:600 var(--v5-fs-body-lg)/1.3 var(--cjk)!important;
  transition:border-color var(--v5-dur-fast),background-color var(--v5-dur-fast),transform var(--v5-dur) var(--v5-ease);
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-intensity-rail button:hover{border-color:var(--v5-accent-line)!important;transform:var(--v5-lift)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-intensity-rail button:active{transform:var(--v5-press)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-intensity-rail button>span{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-intensity-rail button small{font-family:var(--cjk)!important;font-size:var(--v5-fs-caption)!important;font-weight:500!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-intensity-rail button.active{background:var(--v5-accent-soft)!important;border-color:var(--v5-accent-line)!important;color:var(--v5-accent-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-custom-settings{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin:0 0 12px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-custom-settings label{
  display:flex!important;flex-direction:column!important;gap:8px!important;padding:12px 14px!important;margin:0!important;
  font:500 var(--v5-fs-caption)/1.3 var(--cjk)!important;color:var(--v5-ink-3)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-custom-settings label>span{display:flex!important;align-items:center!important;gap:8px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-custom-settings input{
  flex:1 1 auto!important;min-width:0!important;height:36px!important;background:var(--v5-panel)!important;
  font-family:var(--v5-tech)!important;font-size:var(--v5-fs-section)!important;font-weight:600!important;color:var(--v5-ink)!important;text-align:center!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-custom-settings label>span>button,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-stepper-controls button{
  width:32px!important;height:32px!important;min-height:32px!important;flex:none!important;padding:0!important;margin:0!important;
  border:1px solid var(--v5-line-2)!important;border-radius:var(--v5-r-sm)!important;cursor:pointer;
  background:transparent!important;box-shadow:none!important;
  color:var(--v5-accent-ink)!important;font:600 var(--v5-fs-body-lg)/1 var(--cjk)!important;
  transition:background-color var(--v5-dur-fast),border-color var(--v5-dur-fast),transform var(--v5-dur) var(--v5-ease);
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-custom-settings label>span>button:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-stepper-controls button:hover{background:var(--v5-accent-soft)!important;border-color:var(--v5-accent-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-custom-settings label>span>button:active,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-stepper-controls button:active{transform:var(--v5-press)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-intensity-summary{margin:0!important;padding:12px 14px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-2)!important;line-height:1.55!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-preview-table{display:flex!important;flex-direction:column!important;gap:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-preview-row{
  display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:6px!important;
  padding:9px 4px!important;margin:0!important;border:0!important;border-bottom:1px solid var(--v5-line)!important;
  background:none!important;font-size:var(--v5-fs-body)!important;color:var(--v5-ink)!important;font-variant-numeric:tabular-nums;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-preview-row:last-child{border-bottom:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-preview-row.head{font:600 var(--v5-fs-eyebrow)/1.3 var(--cjk)!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-preview-row .plan-status-dot{color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-tips-panel{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;background:none!important;box-shadow:none!important;border:0!important;padding:0!important;clip-path:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-tips-panel::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-tips-panel::after{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-tip-card,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-adjust-card{padding:18px 20px!important;margin:0!important;background:var(--v5-panel)!important;border-radius:var(--v5-r)!important;box-shadow:var(--v5-shadow-soft)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-tip-card h3,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-adjust-card h3{
  margin:0 0 8px!important;font:600 var(--v5-fs-eyebrow)/1.2 var(--cjk)!important;letter-spacing:.08em!important;
  text-transform:uppercase!important;color:var(--v5-accent-ink)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-tip-card p{font-size:var(--v5-fs-body)!important;color:var(--v5-ink-2)!important;line-height:1.6!important;margin:0 0 10px!important;}
/* 底部操作条：全页唯一主按钮 = #planStartBtn（右）；重置 / 保存 = 线框（左） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar{
  display:flex!important;align-items:center!important;gap:12px!important;
  padding:12px 16px 12px 20px!important;margin:0!important;position:sticky!important;bottom:14px!important;z-index:6!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar #planResetBtn{margin-right:auto!important;}

/* ==================== 4. 词库页 ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib.active{display:flex!important;flex-direction:column!important;gap:16px!important;align-items:stretch!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib.active>*{grid-area:auto!important;grid-column:auto!important;grid-row:auto!important;order:0!important;inset:auto!important;position:relative!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .mobile-lib-shell{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.card{display:block!important;padding:20px!important;margin:0!important;}
/* 卡头：眉题 + 右侧动作（导入按钮由 19 标 .v5-pagehead__act） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .sec-title{margin:0 0 14px!important;}
/* 五颗读数 → 一排无框 .v5-stat（竖线分隔） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .libstat{display:flex!important;align-items:stretch!important;gap:0!important;flex-wrap:nowrap!important;margin:0 0 16px!important;padding:0 0 16px!important;border-bottom:1px solid var(--v5-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .libstat .pill{
  display:flex!important;flex-direction:column-reverse!important;align-items:flex-start!important;justify-content:flex-end!important;gap:4px!important;
  height:auto!important;min-height:0!important;padding:0 20px!important;margin:0!important;flex:0 1 auto!important;min-width:0!important;
  border:0!important;border-left:1px solid var(--v5-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
  font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;white-space:nowrap!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .libstat .pill:first-child{padding-left:0!important;border-left:0!important;max-width:min(40%,420px)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .libstat .pill b{display:block!important;font-family:var(--v5-tech)!important;font-size:var(--v5-fs-section)!important;font-weight:700!important;color:var(--v5-ink)!important;line-height:1!important;font-variant-numeric:tabular-nums;white-space:nowrap!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .libstat .pill:first-child b{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;font-family:var(--cjk)!important;font-size:var(--v5-fs-title)!important;font-weight:600!important;}
/* 「全部词书 / 已选」+ 分类 chip：一行 .v5-chip（34 高），中间一道竖线 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-switch-tools{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:10px 14px!important;flex-wrap:wrap!important;margin:0 0 16px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .lib-scope-row,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .lib-chip-row{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;flex-wrap:wrap!important;margin:0!important;background:none!important;border:0!important;padding:0!important;width:auto!important;max-width:none!important;flex:0 1 auto!important;align-self:center!important;box-shadow:none!important;border-radius:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .lib-scope-row{flex:none!important;padding-right:14px!important;border-right:1px solid var(--v5-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .lib-scope-btn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .lib-chip,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-chip-row button,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-range-tabs button{
  height:var(--v5-chip-h)!important;min-height:var(--v5-chip-h)!important;padding:0 12px!important;margin:0!important;width:auto!important;box-sizing:border-box!important;
  border:1px solid var(--v5-line)!important;border-radius:var(--v5-r-chip)!important;cursor:pointer;
  background:var(--v5-panel)!important;box-shadow:none!important;
  color:var(--v5-ink-2)!important;font:500 var(--v5-fs-body)/1 var(--cjk)!important;
  display:inline-flex!important;align-items:center!important;gap:6px!important;white-space:nowrap!important;
  transition:background-color var(--v5-dur-fast),border-color var(--v5-dur-fast),color var(--v5-dur-fast),transform var(--v5-dur) var(--v5-ease);
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .lib-scope-btn:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .lib-chip:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-chip-row button:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-range-tabs button:hover{border-color:var(--v5-accent-line)!important;color:var(--v5-ink)!important;transform:var(--v5-lift)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .lib-scope-btn:active,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .lib-chip:active,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-chip-row button:active,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-range-tabs button:active{transform:var(--v5-press)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .lib-chip i{font-style:normal!important;font-family:var(--v5-tech)!important;font-size:var(--v5-fs-eyebrow)!important;color:var(--v5-ink-3)!important;opacity:1!important;}   /* opacity：index.html 给计数压了 .6（像素 2.94）；颜色已是三级墨，不再叠透明（V7.0.0 第三轮） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .lib-scope-btn.on,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .lib-chip.on,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-chip-row button.active,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-range-tabs button.active{background:var(--v5-accent-soft)!important;border-color:var(--v5-accent-line)!important;color:var(--v5-accent-ink)!important;}
/* 4.1 书脊卡：三列；标题 + 一行说明 + 已学/掌握 + 进度环；动作收到卡底细行 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-switch{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-card{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;
  padding:18px 20px!important;margin:0!important;min-height:0!important;overflow:hidden!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-card:hover{transform:var(--v5-lift)!important;border-color:var(--v5-accent-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-card.active{border-color:var(--v5-accent-line)!important;box-shadow:0 0 0 1px var(--v5-accent-line),var(--v5-shadow-soft)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-btn{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important;
  width:auto!important;min-height:0!important;height:auto!important;padding:0 64px 0 0!important;margin:0 0 12px!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;
  text-align:left!important;cursor:pointer;color:var(--v5-ink)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-btn.active{background:transparent!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-btn b{
  font:600 var(--v5-fs-title)/1.3 var(--cjk)!important;color:var(--v5-ink)!important;
  display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;max-width:100%!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-card.active .book-btn b{color:var(--v5-accent-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-btn span{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.5!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-btn span:first-of-type{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;max-width:100%!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-actions{
  display:flex!important;align-items:center!important;gap:6px 14px!important;flex-wrap:wrap!important;
  margin:auto 0 0!important;padding:12px 0 0!important;border:0!important;border-top:1px solid var(--v5-line)!important;background:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-actions button{
  border:0!important;background:none!important;box-shadow:none!important;padding:0!important;margin:0!important;
  width:auto!important;height:auto!important;min-height:0!important;
  font:500 var(--v5-fs-caption)/1.4 var(--cjk)!important;color:var(--v5-ink-2)!important;cursor:pointer;white-space:nowrap!important;transform:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-actions button:hover{color:var(--v5-accent-ink)!important;text-decoration:underline!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-actions .book-upload{color:var(--v5-accent-ink)!important;font-weight:600!important;}
/* 「清空这本进度」：入口不删，压到三级字，摸到才变 warn */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-actions .book-reset{margin-left:auto!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-actions .book-reset:hover{color:var(--v5p-warn-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-actions button:disabled{opacity:.42!important;cursor:default!important;text-decoration:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-card .wsv5p-bookring{position:absolute!important;right:16px!important;top:16px!important;width:48px!important;height:48px!important;z-index:2!important;}
html.ws-v5 .wsv5p-bookring svg{display:block;width:100%;height:100%;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-note{margin:16px 0 0!important;padding:12px 14px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.55!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .mobile-import-entry{width:100%!important;height:auto!important;min-height:0!important;justify-content:space-between!important;margin:12px 0 0!important;padding:14px 16px!important;text-align:left!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .mobile-import-entry small{display:block!important;margin-top:3px!important;font-size:var(--v5-fs-caption)!important;font-weight:500!important;color:var(--v5-ink-3)!important;}
/* 词表工坊 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .import-tools{margin:16px 0 0!important;padding:16px 18px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .sec-desc{font-size:var(--v5-fs-body)!important;color:var(--v5-ink-2)!important;line-height:1.6!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .fmt{margin:8px 0!important;padding:10px 12px!important;font-family:var(--v5-tech)!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-2)!important;line-height:1.8!important;background:var(--v5-panel)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .fld{font:600 var(--v5-fs-caption)/1.4 var(--cjk)!important;color:var(--v5-ink-3)!important;letter-spacing:.04em!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib #importBox{background:var(--v5-panel)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .btnrow{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;margin-top:12px!important;}
/* 4.2 学习设置卡（保护卡 / 导出 / 恢复 / 清空四个入口都在这张卡里） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .setrow{display:flex!important;align-items:center!important;gap:14px!important;padding:12px 14px!important;margin:0 0 10px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .setrow>div:first-child{flex:1 1 auto!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .setrow .lab{font:600 var(--v5-fs-body-lg)/1.3 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .setrow .hint{margin-top:3px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.5!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .setrow input[type="number"]{width:104px!important;height:38px!important;flex:none!important;background:var(--v5-panel)!important;font-family:var(--v5-tech)!important;font-size:var(--v5-fs-section)!important;font-weight:600!important;text-align:center!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .study-settings-actions{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;margin:0 0 12px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .study-settings-status{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;margin-right:auto!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .protection-card-actions{display:flex!important;align-items:center!important;gap:8px!important;flex:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .toggle-line{display:inline-flex!important;align-items:center!important;gap:8px!important;font:500 var(--v5-fs-body)/1.4 var(--cjk)!important;color:var(--v5-ink)!important;}

/* ==================== 5. 统计页 ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats.active{display:block!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .mobile-stats-shell{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-dashboard{display:flex!important;flex-direction:column!important;gap:16px!important;margin:0!important;padding:0!important;max-width:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-dashboard>*{grid-area:auto!important;grid-column:auto!important;grid-row:auto!important;order:0!important;inset:auto!important;position:relative!important;}

/* 5.1 页头（透明）：左文案 + 中央掌握进度环（签名）+ 右四格卡 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-hero-card{
  display:grid!important;grid-template-columns:minmax(0,1fr) 300px minmax(0,1fr)!important;gap:0 28px!important;
  align-items:center!important;padding:6px 2px 0!important;margin:0!important;min-height:0!important;overflow:visible!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-hero-card>*{min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-hero-illustration{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-hero-card>div:first-child{grid-column:1!important;grid-row:1!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-hero-card .wsv5p-herostat{grid-row:1!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-title-row{display:flex!important;align-items:center!important;gap:10px!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-title-row h2{font-family:var(--cjk)!important;font-size:var(--v5-fs-page)!important;font-weight:700!important;line-height:1.2!important;color:var(--v5-ink)!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-info-dot{
  width:20px!important;height:20px!important;flex:none!important;display:grid!important;place-items:center!important;
  border:1px solid var(--v5-line-2)!important;border-radius:50%!important;font:600 var(--v5-fs-eyebrow)/1 var(--v5-tech)!important;
  background:transparent!important;color:var(--v5-ink-3)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-hero-card p{font-size:var(--v5-fs-body)!important;color:var(--v5-ink-3)!important;line-height:1.5!important;margin:6px 0 0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .wsv5p-ring{grid-column:2!important;grid-row:1!important;display:block!important;position:relative!important;padding:0!important;margin:0!important;}
html.ws-v5 .wsv5p-ring svg{display:block;width:100%;max-width:280px;height:auto;margin:0 auto;}
html.ws-v5 .wsv5p-ring .wsv5p-ringnote{margin:4px 0 0;font-size:var(--v5-fs-caption);color:var(--v5-ink-3);line-height:1.5;text-align:center;}
/* 页头下面那一排文字链（导出 / 全部成就 / 完整计划表 / 为什么这样安排）= .v5-btn-ghost 一行 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .wsv5p-statlinks{margin-top:12px!important;gap:4px 18px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .wsv5p-statlinks .wsv5p-chip{height:auto!important;min-height:0!important;padding:0!important;border:0!important;background:none!important;color:var(--v5-accent-ink)!important;font:600 var(--v5-fs-body)/1.5 var(--cjk)!important;gap:4px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .wsv5p-statlinks .wsv5p-chip:hover{background:none!important;text-decoration:underline!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .wsv5p-statlinks .wsv5p-chip i{font-size:var(--v5-fs-body)!important;color:var(--v5-ink-3)!important;}
/* 右四格：一张卡里 2×2 无框 stat */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .wsv5p-herostat{grid-column:3!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px 0!important;padding:18px 20px!important;}
html.ws-v5 .wsv5p-herostat .wsv5p-hs{min-width:0;padding:0 16px;border-left:1px solid var(--v5-line);}
html.ws-v5 .wsv5p-herostat .wsv5p-hs:nth-child(odd){padding-left:0;border-left:0;}
html.ws-v5 .wsv5p-herostat .wsv5p-hs span{display:block;font-size:var(--v5-fs-caption);font-weight:500;color:var(--v5-ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
html.ws-v5 .wsv5p-herostat .wsv5p-hs b{display:block;margin-top:2px;font-family:var(--v5-tech);font-size:var(--v5-fs-display);font-weight:700;line-height:1;color:var(--v5-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums;}
html.ws-v5 .wsv5p-herostat .wsv5p-hs b em{font-style:normal;font-family:var(--cjk);font-size:var(--v5-fs-caption);font-weight:500;color:var(--v5-ink-3);margin-left:4px;}
html.ws-v5 .wsv5p-herostat .wsv5p-hs b em.pre{margin:0 5px 0 0;font-size:var(--v5-fs-body);color:var(--v5-gold-ink);}
html.ws-v5 .wsv5p-herostat .wsv5p-hs small{display:block;margin-top:4px;font-size:var(--v5-fs-caption);color:var(--v5-ink-3);line-height:1.4;}
/* 图表盒子必须给死高度：站点折线 SVG 是 preserveAspectRatio="none"，父盒没高度会拉成满屏；图例与 SVG 竖向 flex */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart{height:232px!important;min-height:0!important;display:flex!important;flex-direction:column!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart.compact{height:176px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart>.stats-chart-legend{flex:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart svg{display:block!important;width:100%!important;height:auto!important;flex:1 1 0!important;min-height:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart.compact .axis-text{font-size:var(--v5-fs-body)!important;}

/* 5.2 六格总览：一张卡里六个无框 stat（竖线分隔） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-overview-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:0!important;margin:0!important;padding:18px 20px!important;background:var(--v5-panel)!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r)!important;box-shadow:var(--v5-shadow-soft)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-metric-card{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important;
  padding:2px 16px!important;margin:0!important;min-height:0!important;min-width:0!important;
  background:transparent!important;border:0!important;border-left:1px solid var(--v5-line)!important;border-radius:0!important;box-shadow:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-metric-card:first-child{padding-left:0!important;border-left:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-metric-card.clickable{cursor:pointer;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-metric-card.clickable:hover b{color:var(--v5-accent-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-metric-icon{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-metric-card>div:not(.stats-metric-icon){min-width:0!important;flex:1 1 auto!important;width:100%!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-metric-card span{display:block!important;font-size:var(--v5-fs-caption)!important;font-weight:500!important;color:var(--v5-ink-3)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-metric-card b{display:block!important;margin-top:4px!important;font-family:var(--v5-tech)!important;font-size:var(--v5-fs-display)!important;font-weight:700!important;line-height:1!important;color:var(--v5-ink)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-variant-numeric:tabular-nums;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-metric-card small{display:block!important;margin-top:6px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.4!important;}

/* 5.3 面板与图表 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 340px!important;gap:16px!important;align-items:start!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-main,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-side{display:flex!important;flex-direction:column!important;gap:16px!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-split{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;align-items:stretch!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-split>.stats-panel{display:flex!important;flex-direction:column!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-split>.stats-panel>.stats-panel-head{flex:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-split .stats-chart.compact{flex:none!important;height:270px!important;min-height:0!important;margin:auto 0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats #statsContentDistribution,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats #statsTimeHeatmap{flex:1 1 auto!important;display:flex!important;flex-direction:column!important;justify-content:center!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-donut-wrap{flex:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-panel{padding:20px!important;margin:0!important;min-height:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-range-tabs{display:flex!important;align-items:center!important;gap:6px!important;background:none!important;border:0!important;padding:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-range-tabs button{height:28px!important;min-height:28px!important;padding:0 10px!important;font-size:var(--v5-fs-caption)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart-legend{display:flex!important;align-items:center!important;gap:16px!important;margin:0 0 6px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart-legend i{width:16px!important;height:2px!important;border-radius:1px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart .grid-line{stroke:var(--v5-line)!important;stroke-dasharray:3 6!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart .axis-text{fill:var(--v5-ink-3)!important;font-family:var(--v5-tech)!important;font-size:var(--v5-fs-eyebrow)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart .line-words{stroke:var(--v5-accent)!important;stroke-width:2.2!important;filter:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart .line-minutes{stroke:var(--v5-ink-3)!important;stroke-width:1.4!important;stroke-dasharray:5 5!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart .area-words{fill:var(--v5-accent-soft)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart .dot-words{fill:var(--v5-accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart .dot-minutes{fill:var(--v5-ink-3)!important;}
/* 记忆轨道 7 站：同色不同透明度（§5 分段进度不用多色），毕业站只换金字 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .wsv5p-track{display:flex!important;align-items:flex-end!important;gap:8px!important;height:188px!important;padding:0 0 0 2px!important;margin:0!important;}
html.ws-v5 .wsv5p-track .wsv5p-tcol{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:5px;}
html.ws-v5 .wsv5p-track .wsv5p-tval{font-family:var(--v5-tech);font-size:var(--v5-fs-body);font-weight:600;color:var(--v5-ink-2);font-variant-numeric:tabular-nums;}
html.ws-v5 .wsv5p-track .wsv5p-tbar{width:100%;border-radius:3px 3px 0 0;background:linear-gradient(180deg,color-mix(in srgb,var(--v5-accent) 72%,transparent),color-mix(in srgb,var(--v5-accent) 22%,transparent));}
html.ws-v5 .wsv5p-track .wsv5p-tlab{font:500 var(--v5-fs-caption)/1.2 var(--cjk);color:var(--v5-ink-3);white-space:nowrap;}
html.ws-v5 .wsv5p-track .wsv5p-tcol.grad .wsv5p-tval,
html.ws-v5 .wsv5p-track .wsv5p-tcol.grad .wsv5p-tlab{color:var(--v5-gold-ink);}
html.ws-v5 .wsv5p-track .wsv5p-tcol.grad .wsv5p-tbar{background:linear-gradient(180deg,var(--v5-accent),color-mix(in srgb,var(--v5-accent) 32%,transparent));box-shadow:none;}
html.ws-v5 .wsv5p-trackfoot{display:flex;align-items:center;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--v5-line);font-size:var(--v5-fs-caption);color:var(--v5-ink-3);}
html.ws-v5 .wsv5p-trackfoot .wsv5p-fsp{flex:1 1 auto;}
html.ws-v5 .wsv5p-trackfoot b{font-family:var(--v5-tech);font-size:var(--v5-fs-body);color:var(--v5-ink);}
/* 右栏小卡 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-streak-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-streak-box{padding:12px 14px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-streak-box span{display:block!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-streak-box b{display:block!important;margin-top:2px!important;font-family:var(--v5-tech)!important;font-size:var(--v5-fs-section)!important;font-weight:700!important;color:var(--v5-ink)!important;font-variant-numeric:tabular-nums;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-streak-box small{display:block!important;margin-top:2px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-recent-list,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-learning-summary{display:flex!important;flex-direction:column!important;gap:8px!important;}
/* 「最近成就」：勋章 | 标题在上、说明在下（340 侧栏里三样挤一行标题会被压成「十四…」） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .achievement-mini{
  display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;grid-template-rows:auto auto!important;
  column-gap:11px!important;row-gap:1px!important;align-items:center!important;padding:10px 12px!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .achievement-mini>:first-child{grid-column:1!important;grid-row:1 / span 2!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .achievement-mini>b{grid-column:2!important;grid-row:1!important;align-self:end!important;min-width:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font:600 var(--v5-fs-body)/1.35 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .achievement-mini>small{grid-column:2!important;grid-row:2!important;align-self:start!important;min-width:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.4!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-export-btn{width:100%!important;margin-top:12px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-tip-head span{margin:0 0 8px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-tip-panel p{font-size:var(--v5-fs-body)!important;color:var(--v5-ink-2)!important;line-height:1.6!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-book-row{
  display:grid!important;grid-template-columns:minmax(0,1.6fr) repeat(2,minmax(0,.8fr)) minmax(0,1.2fr)!important;
  gap:8px!important;align-items:center!important;padding:9px 2px!important;
  border:0!important;border-bottom:1px solid var(--v5-line)!important;background:none!important;
  font-size:var(--v5-fs-body)!important;color:var(--v5-ink)!important;font-variant-numeric:tabular-nums;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-book-row.header{font:600 var(--v5-fs-eyebrow)/1.3 var(--cjk)!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-book-row.header>*{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-book-name{display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-book-name>span:last-child{min-width:0!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;line-height:1.45!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-book-cover{width:12px!important;height:17px!important;flex:none!important;border:0!important;border-radius:1px 2px 2px 1px!important;background:var(--v5-accent-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-heatmap{gap:4px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-heatmap-label{font:500 var(--v5-fs-eyebrow)/1 var(--v5-tech)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-heat-cell{border:0!important;border-radius:3px!important;background:color-mix(in srgb,var(--v5-accent) 8%,transparent)!important;box-shadow:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-heat-cell[data-lvl="1"]{background:color-mix(in srgb,var(--v5-accent) 24%,transparent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-heat-cell[data-lvl="2"]{background:color-mix(in srgb,var(--v5-accent) 44%,transparent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-heat-cell[data-lvl="3"]{background:color-mix(in srgb,var(--v5-accent) 64%,transparent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-heat-cell[data-lvl="4"]{background:var(--v5-accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-donut-wrap{display:flex!important;align-items:center!important;gap:16px!important;flex-wrap:wrap!important;justify-content:center!important;row-gap:14px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-donut{flex:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-donut-center{background:var(--v5-panel)!important;border:0!important;box-shadow:inset 0 0 0 1px var(--v5-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-donut-center b{font-family:var(--v5-tech)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-legend{flex:1 1 170px!important;min-width:170px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-legend-row{grid-template-columns:10px auto minmax(0,1fr)!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-legend-row b{color:var(--v5-ink)!important;font-weight:600!important;white-space:nowrap!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-legend-row span{white-space:nowrap!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;text-align:right!important;}

/* ==================== 6. 成就页 ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements.active{display:block!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-center{display:flex!important;flex-direction:column!important;gap:16px!important;margin:0!important;padding:0!important;max-width:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-center>*{grid-area:auto!important;grid-column:auto!important;grid-row:auto!important;order:0!important;inset:auto!important;position:relative!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-hero{display:flex!important;align-items:flex-end!important;gap:22px!important;padding:6px 2px 0!important;margin:0!important;min-height:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-hero>div:first-child{flex:1 1 auto!important;min-width:0!important;}
/* 四格总览：一张卡里四个无框 stat */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-summary-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;margin:0!important;padding:18px 20px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-summary-card{
  position:relative!important;isolation:auto!important;clip-path:none!important;display:block!important;
  padding:2px 18px!important;margin:0!important;min-height:0!important;min-width:0!important;
  background:transparent!important;border:0!important;border-left:1px solid var(--v5-line)!important;border-radius:0!important;box-shadow:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-summary-card:first-child{padding-left:0!important;border-left:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-summary-card span{display:block!important;font-size:var(--v5-fs-caption)!important;font-weight:500!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-summary-card b{display:block!important;margin-top:4px!important;font-family:var(--v5-tech)!important;font-size:var(--v5-fs-display)!important;font-weight:700!important;line-height:1!important;color:var(--v5-ink)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-variant-numeric:tabular-nums;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-summary-card small{display:block!important;margin-top:6px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;}
/* 「奖励与规则」六颗入口：3×2 等宽线框 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .wsv5p-achlinks .wsv5p-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .wsv5p-achlinks .wsv5p-chip{min-width:0!important;padding:0 10px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .wsv5p-achlinks .wsv5p-chip b{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;}
/* 筛选条 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-controls{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;padding:16px 20px!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-chip-row{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-sort{align-self:flex-start!important;width:184px!important;height:var(--v5-chip-h)!important;padding:0 12px!important;font:500 var(--v5-fs-body)/1 var(--cjk)!important;}
/* 成就卡网格：三列 .v5-card；勋章圆形；未解锁只压勋章 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card{display:flex!important;flex-direction:column!important;gap:10px!important;padding:18px 20px!important;margin:0!important;min-height:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card:hover{border-color:var(--v5-accent-line)!important;transform:var(--v5-lift)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card.locked{opacity:1!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card.locked .ach-card-medal{opacity:.5!important;filter:grayscale(.75)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card.locked .ach-meta h3{color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card.locked .ach-progress>i{opacity:.7!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card-top{display:flex!important;align-items:flex-start!important;gap:12px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card-medal{width:44px!important;height:44px!important;flex:none!important;border:0!important;border-radius:50%!important;box-shadow:none!important;clip-path:none!important;overflow:hidden!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-meta{flex:1 1 auto!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-meta h3{margin:0!important;font:600 var(--v5-fs-body-lg)/1.3 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-meta p{margin:3px 0 0!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.5!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-pill{
  flex:none!important;height:22px!important;padding:0 8px!important;display:inline-flex!important;align-items:center!important;
  border:0!important;border-radius:var(--v5-r-sm)!important;background:var(--v5-accent-soft)!important;box-shadow:none!important;
  color:var(--v5-accent-ink)!important;font:600 var(--v5-fs-eyebrow)/1 var(--cjk)!important;letter-spacing:.02em!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card-foot{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;margin:0!important;padding:10px 0 0!important;border:0!important;border-top:1px solid var(--v5-line)!important;background:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card-foot span{padding:0!important;margin:0!important;border:0!important;background:none!important;box-shadow:none!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;white-space:nowrap!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-card-foot span:first-child{font-family:var(--v5-tech)!important;color:var(--v5-ink-2)!important;font-variant-numeric:tabular-nums;}
/* 注入的等级卡：圆形徽章（accent-soft 底 + display 数字），无六边形无光 */
html.ws-v5 .wsv5p-lv{display:flex;align-items:center;gap:18px;}
html.ws-v5 .wsv5p-lv .wsv5p-hex{width:96px;height:96px;flex:none;display:grid;place-items:center;clip-path:none;border-radius:50%;background:var(--v5-accent-soft);box-shadow:inset 0 0 0 1px var(--v5-accent-line);}
html.ws-v5 .wsv5p-lv .wsv5p-hex span{font-family:var(--v5-tech);font-size:var(--v5-fs-display);font-weight:700;line-height:1;color:var(--v5-ink);}
html.ws-v5 .wsv5p-lv .wsv5p-hex small{display:block;margin-top:2px;font:600 var(--v5-fs-eyebrow)/1 var(--v5-tech);letter-spacing:.2em;color:var(--v5-ink-3);text-align:center;}
html.ws-v5 .wsv5p-lv .wsv5p-lvbody{flex:1 1 auto;min-width:0;}
html.ws-v5 .wsv5p-lv .wsv5p-lvbody h4{margin:0;font:700 var(--v5-fs-section)/1.25 var(--cjk);color:var(--v5-ink);}
html.ws-v5 .wsv5p-lv .wsv5p-lvbody h4 small{margin-left:8px;font:500 var(--v5-fs-caption)/1 var(--cjk);color:var(--v5-ink-3);}
html.ws-v5 .wsv5p-lv .wsv5p-lvxp{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:8px;font-size:var(--v5-fs-caption);color:var(--v5-ink-3);}
html.ws-v5 .wsv5p-lv .wsv5p-lvxp b{font-family:var(--v5-tech);font-size:var(--v5-fs-body-lg);color:var(--v5-ink);font-variant-numeric:tabular-nums;}

/* ==================== 7. 我的页 ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account.active{display:flex!important;flex-direction:column!important;gap:16px!important;align-items:stretch!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account.active>*{grid-area:auto!important;grid-column:auto!important;grid-row:auto!important;order:0!important;inset:auto!important;position:relative!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-settings-shell{display:none!important;}
/* 外层那张大 .card 退成透明容器 = 两列网格；#accountPanel / .account-grid 用 display:contents 打平（DOM 一个没搬，#accountPanel 会被整段重渲染）
     第 1-3 行 页头 / 绑定提示 / 资料卡（通栏）
     第 4-6 行 左 = 编辑个人资料（跨三行）；右 = 卷轴币与专属邀请 → 后端地址（高级）→ 应用图标
     之后   资产商城细条 / 六组功能 / 危险区 / 课堂入口（通栏） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account>.card{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:auto auto auto auto auto 1fr!important;
  gap:16px!important;align-items:start!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;margin:0!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account>.card::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account>.card::after{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account>.card>*{grid-column:1 / -1!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account>.card>.v5-pagehead{display:block!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account>.card>.v5-pagehead>.sec-desc{margin:6px 0 0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account>.card>.sec-title{font-family:var(--cjk)!important;font-size:var(--v5-fs-page)!important;font-weight:700!important;color:var(--v5-ink)!important;margin:0!important;padding:0!important;border:0!important;background:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account>.card>.sec-desc{font-size:var(--v5-fs-body)!important;color:var(--v5-ink-3)!important;line-height:1.5!important;margin:-8px 0 0!important;max-width:78ch!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account #accountPanel{display:contents!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account #accountPanel>*{grid-column:1 / -1!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account #accountPanel>.account-grid{display:contents!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account #accountPanel>.account-grid>.account-box:first-child{grid-column:1!important;grid-row:4 / span 3!important;align-self:stretch!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account #accountPanel>.account-grid>.account-box:nth-child(2){grid-column:2!important;grid-row:4!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account #accountPanel>.account-box.api-config{grid-column:2!important;grid-row:5!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account>.card>#appIconPanel{grid-column:2!important;grid-row:6!important;align-self:stretch!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account>.card>#appIconPanel .app-icon-switch{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
/* 绑定手机号内联卡（19 搬进来并标 .v5-notice；16 已定义皮）：通栏、不留额外外边距 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account>.card>#wsPhoneNudge.v5-notice{margin:0!important;}
/* 资料卡：头像 88 圆 + 昵称 title + 一句 + 六个无框 stat + 明细行 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-profile-card{display:flex!important;align-items:flex-start!important;gap:22px!important;padding:20px 24px!important;margin:0!important;min-height:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-profile-card>div:last-child{flex:1 1 auto!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .avatar-preview{
  width:88px!important;height:88px!important;flex:none!important;display:grid!important;place-items:center!important;
  border:1px solid var(--v5-accent-line)!important;border-radius:50%!important;box-shadow:none!important;overflow:hidden!important;clip-path:none!important;
  background:var(--v5-accent-soft)!important;font-family:var(--v5-word)!important;font-size:var(--v5-fs-display)!important;font-weight:700!important;color:var(--v5-accent-ink)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .avatar-preview img{width:100%!important;height:100%!important;object-fit:cover!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-profile-card .sec-title{font-family:var(--cjk)!important;font-size:var(--v5-fs-section)!important;font-weight:700!important;color:var(--v5-ink)!important;margin:0!important;padding:0!important;border:0!important;background:none!important;display:block!important;line-height:1.25!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-profile-card .sec-desc{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.5!important;margin:4px 0 0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .profile-stats{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:0!important;margin:16px 0 0!important;padding:14px 0 0!important;border-top:1px solid var(--v5-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .profile-stat{
  display:block!important;padding:0 16px!important;margin:0!important;min-height:0!important;min-width:0!important;
  border:0!important;border-left:1px solid var(--v5-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;text-align:left!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .profile-stat:first-child{padding-left:0!important;border-left:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .profile-stat b,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .profile-stat code{
  display:block!important;font-family:var(--v5-tech)!important;font-size:var(--v5-fs-section)!important;font-weight:700!important;
  line-height:1!important;color:var(--v5-ink)!important;background:none!important;padding:0!important;letter-spacing:.01em!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-variant-numeric:tabular-nums;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .profile-stat code{font-size:var(--v5-fs-title)!important;color:var(--v5-gold-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .profile-stat span{display:block!important;margin-top:4px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-detail-list{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:0 14px!important;margin:14px 0 0!important;padding:12px 0 0!important;border:0!important;border-top:1px solid var(--v5-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-detail-list>div{display:flex!important;flex-direction:column!important;gap:2px!important;padding:0!important;margin:0!important;border:0!important;background:none!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-detail-list span{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-detail-list b{font:600 var(--v5-fs-body)/1.4 var(--cjk)!important;color:var(--v5-ink)!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;align-items:start!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box{padding:20px!important;margin:0!important;min-height:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box h3{margin:0 0 10px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box h4{margin:0 0 6px!important;font:600 var(--v5-fs-body-lg)/1.3 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box p,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box small{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.6!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box p b{color:var(--v5-ink)!important;font-weight:600!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .auth-subbox{margin:14px 0 0!important;padding:14px 16px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .auth-form label{font:500 var(--v5-fs-caption)/1.4 var(--cjk)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .auth-form input{height:40px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-actions{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;margin-top:12px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .invite-note{margin:10px 0 0!important;padding:12px 14px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-2)!important;line-height:1.6!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .invite-note b{font-family:var(--v5-tech)!important;font-size:var(--v5-fs-title)!important;color:var(--v5-gold-ink)!important;letter-spacing:.06em!important;}
/* 邀请阶梯：「已领取 / 已达成」小字与大数字站点用裸 --accent（猫卷 2.56:1）→ --v5-accent-ink；小字收到 eyebrow 档 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-ilad-stops li i{color:var(--v5-accent-ink)!important;font-size:var(--v5-fs-eyebrow)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-ilad-top b em,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-ilad.near .ws-ilad-top span{color:var(--v5-accent-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-ilad{border:1px solid var(--v5-line)!important;border-radius:var(--v5-r-sm)!important;background:var(--v5-panel-2)!important;}
/* 邀请链接：只读输入框一行省略（超长 URL 不再溢出） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .share-link-box{display:block!important;width:100%!important;box-sizing:border-box!important;height:40px!important;margin:10px 0 0!important;padding:0 12px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-family:var(--v5-tech)!important;font-size:var(--v5-fs-body)!important;color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-strip,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .sync-status,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .invite-hint{margin:10px 0 0!important;padding:12px 14px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-2)!important;line-height:1.6!important;display:block!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .sync-status b{color:var(--v5-accent-ink)!important;font-weight:600!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .verified-pill{display:inline-flex!important;align-items:center!important;height:22px!important;padding:0 8px!important;border:0!important;border-radius:var(--v5-r-sm)!important;background:var(--v5-accent-soft)!important;color:var(--v5-accent-ink)!important;font:600 var(--v5-fs-eyebrow)/1 var(--v5-tech)!important;}
/* 「后端地址」= 高级设置：默认只露标题行，点进（hover / 焦点在内）才展开；入口不删 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config{padding:14px 20px!important;border-style:dashed!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config h3{margin:0!important;color:var(--v5-ink-3)!important;cursor:pointer;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config h3::before{content:"\9AD8\7EA7 \00B7 "!important;display:inline!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config h3::after{content:"\5C55\5F00 \203A";margin-left:auto;font:500 var(--v5-fs-caption)/1 var(--cjk);letter-spacing:0;text-transform:none;color:var(--v5-accent-ink);}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config>*:not(h3){display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config:hover>*:not(h3),
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config:focus-within>*:not(h3){display:block!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config:hover .account-actions,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config:focus-within .account-actions{display:flex!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config:hover h3,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config:focus-within h3{margin:0 0 10px!important;color:var(--v5-accent-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config:hover h3::after,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config:focus-within h3::after{content:"\6536\8D77";}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .account-box.api-config:focus-within{padding:20px!important;border-style:solid!important;}
/* 应用图标面板 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .app-icon-panel{padding:20px!important;margin:0!important;align-self:stretch!important;width:auto!important;max-width:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .app-icon-switch{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .app-icon-panel h3{margin:0 0 6px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .app-icon-panel p{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.6!important;margin:0 0 12px!important;}
/* 六组功能地图（DOM 与入口一条不少，只重新收纳） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-groups{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-group{display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;gap:12px!important;padding:16px 34px 16px 16px!important;margin:0!important;background:var(--v5-panel)!important;border-radius:var(--v5-r)!important;box-shadow:var(--v5-shadow-soft)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-group:hover{border-color:var(--v5-accent-line)!important;transform:var(--v5-lift)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-group::after{right:14px!important;font-size:var(--v5-fs-section)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-icon{width:40px!important;height:40px!important;border-radius:50%!important;background:var(--v5-accent-soft)!important;color:var(--v5-accent-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-group h3{margin:0!important;font:600 var(--v5-fs-body-lg)/1.3 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-group p{margin:3px 0 0!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.5!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-actions{display:flex!important;align-items:center!important;gap:6px 12px!important;flex-wrap:wrap!important;margin:10px 0 0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-actions button{
  height:auto!important;min-height:0!important;padding:0!important;margin:0!important;width:auto!important;
  border:0!important;border-radius:0!important;cursor:pointer;background:none!important;box-shadow:none!important;
  color:var(--v5-accent-ink)!important;font:600 var(--v5-fs-caption)/1.4 var(--cjk)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-actions button:hover{text-decoration:underline!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-lect-mobile-entry{display:block!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-lect-mobile-entry button{display:flex!important;align-items:center!important;gap:12px!important;width:100%!important;padding:14px 18px!important;margin:0!important;cursor:pointer;color:var(--v5-ink)!important;font:600 var(--v5-fs-body-lg)/1.3 var(--cjk)!important;text-align:left!important;background:var(--v5-panel)!important;border-radius:var(--v5-r)!important;box-shadow:var(--v5-shadow-soft)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-lect-mobile-entry button:hover{border-color:var(--v5-accent-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-lect-mobile-entry button span{flex:1 1 auto!important;font:500 var(--v5-fs-caption)/1.4 var(--cjk)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-lect-mobile-entry button em{font-style:normal!important;color:var(--v5-ink-3)!important;}
/* 资产 · 商城 · 社交细条：标题一行 + 七颗等宽线框 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-shopstrip{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important;padding:16px 20px!important;align-self:stretch!important;width:auto!important;max-width:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-shopstrip .wsv5-eyebrow{flex:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-shopstrip .wsv5p-row{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(116px,1fr))!important;gap:10px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-shopstrip .wsv5p-chip{min-width:0!important;gap:6px!important;padding:0 10px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-shopstrip .wsv5p-chip b{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-shopstrip .wsv5p-chip small{flex:none!important;}
/* 危险区：标题 · 两个按钮 · 说明排成一行 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-dangerzone{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;gap:10px 18px!important;padding:14px 20px!important;align-self:stretch!important;width:auto!important;max-width:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-dangerzone>.wsv5-eyebrow{flex:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-dangerzone .wsv5p-row{flex:none!important;gap:10px!important;flex-wrap:nowrap!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-dangerzone .wsv5p-chip{flex:0 1 auto!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-dangerzone>.wsv5p-note{flex:1 1 300px!important;min-width:0!important;margin:0!important;padding:0!important;border:0!important;}

/* ==================== 8. 设置页（整页滚动 + 保存栏粘底；分组列表） ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings.active{display:flex!important;flex-direction:column!important;gap:16px!important;align-items:stretch!important;height:auto!important;min-height:0!important;overflow:visible!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-shell>.settings-board{overflow:visible!important;min-height:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-board .settings-card{overflow:visible!important;flex:none!important;max-height:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings.active>*{grid-area:auto!important;grid-column:auto!important;grid-row:auto!important;order:0!important;inset:auto!important;position:relative!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-hero{display:flex!important;align-items:flex-end!important;gap:22px!important;padding:6px 2px 0!important;margin:0!important;min-height:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-hero-art{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-shell{display:grid!important;grid-template-columns:232px minmax(0,1fr)!important;gap:16px!important;align-items:start!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-subnav{display:flex!important;flex-direction:column!important;gap:2px!important;padding:10px!important;margin:0!important;position:sticky!important;top:96px!important;max-height:none!important;overflow:visible!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-subnav button{
  display:flex!important;align-items:center!important;gap:9px!important;justify-content:flex-start!important;
  width:100%!important;height:40px!important;min-height:40px!important;padding:0 12px!important;margin:0!important;
  border:0!important;border-radius:var(--v5-r-sm)!important;cursor:pointer;background:none!important;box-shadow:none!important;text-align:left!important;
  color:var(--v5-ink-2)!important;font:500 var(--v5-fs-body)/1 var(--cjk)!important;transition:background-color var(--v5-dur-fast),color var(--v5-dur-fast);
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-subnav button:hover{background:var(--v5-accent-soft)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-subnav button.active{background:var(--v5-accent-soft)!important;color:var(--v5-accent-ink)!important;font-weight:600!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-board{display:flex!important;flex-direction:column!important;gap:16px!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-card{padding:20px!important;margin:0!important;min-height:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-card h3{margin:0 0 6px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-card>p{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.6!important;margin:0 0 14px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-step-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:0 0 12px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-stepper{display:flex!important;align-items:center!important;gap:12px!important;padding:12px 14px!important;margin:0!important;min-height:48px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-stepper label{flex:1 1 auto!important;min-width:0!important;font:600 var(--v5-fs-body)/1.3 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-stepper label small{display:block!important;margin-top:2px!important;font-size:var(--v5-fs-caption)!important;font-weight:500!important;color:var(--v5-ink-3)!important;line-height:1.5!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-stepper-controls{display:flex!important;align-items:center!important;gap:6px!important;flex:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-stepper-controls input{width:72px!important;height:34px!important;background:var(--v5-panel)!important;font-family:var(--v5-tech)!important;font-size:var(--v5-fs-title)!important;font-weight:600!important;color:var(--v5-ink)!important;text-align:center!important;}
/* 分组列表：每行 48 高，右侧开关 / 值 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-toggle-list{display:flex!important;flex-direction:column!important;gap:8px!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-toggle-line{display:flex!important;align-items:center!important;gap:14px!important;min-height:48px!important;padding:10px 14px!important;margin:0!important;cursor:pointer;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-toggle-line:hover{border-color:var(--v5-accent-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-toggle-line>span{flex:1 1 auto!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-toggle-line b{display:block!important;font:600 var(--v5-fs-body)/1.3 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-toggle-line small{display:block!important;margin-top:2px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.5!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-toggle-line input[type="checkbox"]{accent-color:var(--v5-accent);width:18px;height:18px;flex:none;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-segment{display:inline-flex!important;align-items:center!important;gap:4px!important;padding:3px!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r-chip)!important;background:var(--v5-panel)!important;box-shadow:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-segment button{height:28px!important;min-height:28px!important;padding:0 12px!important;margin:0!important;width:auto!important;border:0!important;border-radius:var(--v5-r-chip)!important;cursor:pointer;background:none!important;box-shadow:none!important;color:var(--v5-ink-2)!important;font:500 var(--v5-fs-caption)/1 var(--cjk)!important;transition:background-color var(--v5-dur-fast),color var(--v5-dur-fast);}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-segment button.active{background:var(--v5-accent-soft)!important;color:var(--v5-accent-ink)!important;font-weight:600!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-control-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin:14px 0 0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-control-block{display:flex!important;flex-direction:column!important;gap:8px!important;padding:12px 14px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-control-block>span{font:600 var(--v5-fs-body)/1.3 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-switch{display:inline-flex!important;align-items:center!important;gap:8px!important;font:500 var(--v5-fs-caption)/1.3 var(--cjk)!important;color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-system{padding:16px!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-system-head{display:flex!important;align-items:center!important;gap:12px!important;margin:0 0 12px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-system-head>div{flex:1 1 auto!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-system-head b{display:block!important;font:600 var(--v5-fs-body-lg)/1.3 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-system-head small{display:block!important;margin-top:2px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.5!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-badge{flex:none!important;height:22px!important;padding:0 8px!important;display:inline-flex!important;align-items:center!important;border:0!important;border-radius:var(--v5-r-sm)!important;background:var(--v5-accent-soft)!important;box-shadow:none!important;color:var(--v5-gold-ink)!important;font:600 var(--v5-fs-eyebrow)/1 var(--cjk)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))!important;gap:10px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-card,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-icon-card{position:relative!important;display:flex!important;flex-direction:column!important;gap:6px!important;padding:10px!important;margin:0!important;min-height:0!important;cursor:pointer;background:var(--v5-panel)!important;transition:border-color var(--v5-dur-fast),transform var(--v5-dur) var(--v5-ease);}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-card:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-icon-card:hover{border-color:var(--v5-accent-line)!important;transform:var(--v5-lift)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-card.active,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-icon-card.active{border-color:var(--v5-accent)!important;box-shadow:0 0 0 1px var(--v5-accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-card b{font:600 var(--v5-fs-body)/1.3 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-card small{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;line-height:1.4!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-state{margin-top:auto!important;padding-top:4px!important;font:500 var(--v5-fs-eyebrow)/1.3 var(--cjk)!important;letter-spacing:.04em!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-preview{border-radius:var(--v5-r-sm)!important;border:1px solid var(--v5-line)!important;box-shadow:none!important;}
/* V5.2：所有主题都有新版，主题卡角标统一「新版」 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-card[data-settings-theme]::before{
  content:"\65B0\7248";position:absolute;right:7px;top:7px;z-index:2;padding:2px 6px;border-radius:var(--v5-r-sm);
  background:var(--v5-accent-soft);font:600 var(--v5-fs-eyebrow)/1.3 var(--cjk);letter-spacing:.02em;color:var(--v5-accent-ink);
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-icon-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-quick-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-quick-list button{display:flex!important;align-items:center!important;gap:12px!important;justify-content:space-between!important;width:auto!important;height:auto!important;min-height:48px!important;padding:12px 14px!important;margin:0!important;cursor:pointer;text-align:left!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-quick-list button:hover{border-color:var(--v5-accent-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-quick-list button b{display:block!important;font:600 var(--v5-fs-body)/1.3 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-quick-list button small{display:block!important;margin-top:2px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-quick-list #settingsAdvancedData{order:9!important;border-color:color-mix(in srgb,var(--v5-warn) 34%,var(--v5-line))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-quick-list #settingsAdvancedData b{color:var(--v5p-warn-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-sync-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin:12px 0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-sync-box{display:flex!important;flex-direction:column!important;gap:2px!important;padding:12px 14px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-sync-box span{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-sync-box b{font:600 var(--v5-fs-body)/1.4 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-action-row,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-study-actions,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-ear-row{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;margin-top:12px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-ear-label{flex:1 1 auto!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-ear-label b{display:block!important;font:600 var(--v5-fs-body)/1.3 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-ear-label small{display:block!important;margin-top:2px!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-study-actions .study-settings-status{margin-right:auto!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;}
/* 底栏贴底悬浮：内容长过一屏时浮在底部，滚到底回原位；唯一主按钮 = 保存设置 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;padding:12px 16px!important;margin:0!important;position:sticky!important;bottom:14px!important;z-index:6!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar button.primary{min-width:160px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar button:first-child{margin-right:auto!important;color:var(--v5-ink-2)!important;}
/* 界面版本 V5 / 旧版（第三处一键切回入口，分类轨最底下） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-subnav .wsv5p-railhr{display:block!important;flex:none!important;height:1px!important;margin:8px 2px!important;background:var(--v5-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .wsv5p-uiver{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;flex:none!important;padding:12px!important;margin:0!important;}
html.ws-v5 .wsv5p-uiver .wsv5p-uivbody{min-width:0;}
html.ws-v5 .wsv5p-uiver .wsv5p-uivbody b{display:block;font:600 var(--v5-fs-body)/1.3 var(--cjk);color:var(--v5-ink);}
html.ws-v5 .wsv5p-uiver .wsv5p-uivbody small{display:block;margin-top:3px;font-size:var(--v5-fs-caption);color:var(--v5-ink-3);line-height:1.5;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .wsv5p-uiseg{display:flex!important;align-items:center!important;gap:4px!important;flex:none!important;padding:3px!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r-chip)!important;background:var(--v5-panel)!important;box-shadow:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .wsv5p-uiseg button{flex:1 1 0!important;justify-content:center!important;height:30px!important;min-height:30px!important;padding:0 10px!important;margin:0!important;width:auto!important;border:0!important;border-radius:var(--v5-r-chip)!important;cursor:pointer;background:none!important;box-shadow:none!important;color:var(--v5-ink-2)!important;font:500 var(--v5-fs-caption)/1 var(--cjk)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .wsv5p-uiseg button.on{background:var(--v5-accent-soft)!important;color:var(--v5-accent-ink)!important;font-weight:600!important;}

/* ==================== 9. 完成页（仪式感只集中在印章这一个动作上；按主题性格：纸墨盖章 / 猫卷弹入 / 星穹展开） ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyBody .done{max-width:560px!important;text-align:center!important;margin:auto!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyBody .done .seal{
  position:relative!important;display:grid!important;place-items:center!important;
  width:128px!important;height:128px!important;margin:0 auto 8px!important;
  font-family:var(--v5-word)!important;font-size:var(--v5-fs-display)!important;line-height:1!important;color:var(--v5-gold-ink)!important;
  text-shadow:0 0 calc(20px * var(--v5-glow)) color-mix(in srgb,var(--v5-gold) 45%,transparent)!important;
  animation:var(--v5-enter) var(--v5-dur-slow) var(--v5-ease) both;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyBody .done .seal::before{content:"";position:absolute;left:50%;top:50%;width:128px;height:128px;margin:-64px 0 0 -64px;border-radius:50%;border:1px dashed color-mix(in srgb,var(--v5-gold) 50%,transparent);opacity:.9;animation:wsv5pSpin 26s linear infinite;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyBody .done .seal::after{content:"";position:absolute;left:50%;top:50%;width:100px;height:100px;margin:-50px 0 0 -50px;border-radius:50%;border:2px solid var(--v5-gold);opacity:.62;box-shadow:0 0 calc(20px * var(--v5-glow)) color-mix(in srgb,var(--v5-gold) 40%,transparent);animation:wsv5pStamp var(--v5-dur-slow) var(--v5-ease) both;}
@keyframes wsv5pSpin{to{transform:rotate(360deg)}}
@keyframes wsv5pStamp{0%{transform:scale(1.6);opacity:0}60%{opacity:.75}100%{transform:scale(1);opacity:.62}}
/* 纸墨：印章不转圈，只盖一下（先压后回） */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="light"] body #study.on #studyBody .done .seal::before,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="dark"] body #study.on #studyBody .done .seal::before,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="minimal-light"] body #study.on #studyBody .done .seal::before,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="minimal-dark"] body #study.on #studyBody .done .seal::before{animation:none;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyBody .done h2{font-family:var(--cjk)!important;font-size:var(--v5-fs-page)!important;font-weight:700!important;line-height:1.25!important;color:var(--v5-ink)!important;margin:10px 0 8px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyBody .done p{font-size:var(--v5-fs-body)!important;color:var(--v5-ink-2)!important;line-height:1.8!important;margin:0!important;text-wrap:pretty;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyBody .done p b{font-family:var(--v5-tech)!important;font-size:var(--v5-fs-title)!important;color:var(--v5-ink)!important;font-variant-numeric:tabular-nums;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyBody .done .achievement-unlock-list{margin:14px 0 0!important;padding:12px 14px!important;border:1px solid color-mix(in srgb,var(--v5-gold) 40%,var(--v5-line))!important;border-radius:var(--v5-r-sm)!important;background:var(--v5-panel-2)!important;box-shadow:none!important;font-size:var(--v5-fs-body)!important;color:var(--v5-gold-ink)!important;text-align:left!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyBody .done>div:not(.seal):not(.achievement-unlock-list){border:1px solid var(--v5-line)!important;border-radius:var(--v5-r-sm)!important;background:var(--v5-panel-2)!important;box-shadow:none!important;}
/* 完成页两颗次按钮（磨耳朵 / 单词填字）：线框；全页唯一主按钮仍是「回到首页」 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot #doneEarBtn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot #doneCwBtn{
  min-width:0!important;width:100%!important;height:var(--v5-btn-h)!important;min-height:var(--v5-btn-h)!important;
  background:transparent!important;color:var(--v5-accent-ink)!important;background-image:none!important;
  border:1px solid var(--v5-line-2)!important;border-radius:var(--v5-r-sm)!important;box-shadow:none!important;text-shadow:none!important;clip-path:none!important;filter:none!important;
  font:600 var(--v5-fs-body-lg)/1 var(--cjk)!important;letter-spacing:0!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot #doneEarBtn:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot #doneCwBtn:hover{background:var(--v5-accent-soft)!important;border-color:var(--v5-accent-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot>div:has(>#doneEarBtn){width:350px!important;max-width:100%!important;align-self:center!important;}
/* V7.4.2 完成页加「睡前复习」(第三颗线框按钮) +「再学一组新词」(线框两行按钮 + 5/10/20 小分段)；全页唯一主按钮仍是「回到首页」 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot #doneBedBtn,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot .ws-xg-host .ws-xg-go:not(#_){
  min-width:0!important;width:100%!important;height:var(--v5-btn-h)!important;min-height:var(--v5-btn-h)!important;
  background:transparent!important;color:var(--v5-accent-ink)!important;background-image:none!important;
  border:1px solid var(--v5-line-2)!important;border-radius:var(--v5-r-sm)!important;box-shadow:none!important;text-shadow:none!important;clip-path:none!important;filter:none!important;
  font:600 var(--v5-fs-body-lg)/1 var(--cjk)!important;letter-spacing:0!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot #doneBedBtn:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot .ws-xg-host .ws-xg-go:not([disabled]):hover:not(#_){background:var(--v5-accent-soft)!important;border-color:var(--v5-accent-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot>div:has(>#doneBedBtn){width:420px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot>div:has(>#doneBedBtn)>button{padding-left:8px!important;padding-right:8px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot>.ws-xg-host{width:420px!important;max-width:100%!important;align-self:center!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot .ws-xg-host .ws-xg-go:not(#_){height:auto!important;min-height:52px!important;padding:6px 10px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot .ws-xg-host .ws-xg-go:not(#_) b{font:600 var(--v5-fs-body-lg)/1.2 var(--cjk)!important;color:var(--v5-accent-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot .ws-xg-host .ws-xg-go:not(#_) small{font:400 var(--v5-fs-caption)/1.3 var(--cjk)!important;color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot .ws-xg-host .ws-xg-seg{border-color:var(--v5-line-2)!important;border-radius:var(--v5-r-sm)!important;background:transparent!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot .ws-xg-host .ws-xg-opt span{color:var(--v5-ink-2)!important;font-family:var(--v5-tech,inherit)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot .ws-xg-host .ws-xg-opt input:checked+span{background:var(--v5-accent-soft)!important;color:var(--v5-accent-ink)!important;box-shadow:inset 0 0 0 1px var(--v5-accent-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot .ws-xg-host .ws-xg-go:disabled:not(#_){opacity:1!important;cursor:default!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyFoot .ws-xg-host .ws-xg-go:disabled:not(#_) b{color:var(--v5-ink)!important;}

/* ==================== 10. 启动加载页 ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash{
  background:
    radial-gradient(1100px 680px at 76% -12%,color-mix(in srgb,var(--v5-accent) calc(12% * var(--v5-sky)),transparent),transparent 60%),
    radial-gradient(900px 620px at 8% 108%,color-mix(in srgb,var(--v5-accent) calc(8% * var(--v5-sky)),transparent),transparent 58%),
    var(--v5-paper)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .boot-box{
  width:min(620px,92vw)!important;position:relative!important;isolation:auto!important;clip-path:none!important;overflow:visible!important;
  padding:28px 30px 22px!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r)!important;box-shadow:var(--v5-shadow-soft)!important;background:var(--v5-panel)!important;
  animation:var(--v5-enter) var(--v5-dur-slow) var(--v5-ease) both;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .boot-box::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .boot-box::after{content:none!important;display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .wait-spinner{width:26px!important;height:26px!important;margin:0 auto 12px!important;border-width:2px!important;border-color:var(--v5-accent-line)!important;border-top-color:var(--v5-accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .wait-title{font-family:var(--cjk)!important;font-size:var(--v5-fs-section)!important;font-weight:700!important;color:var(--v5-ink)!important;text-align:center!important;margin:0 0 6px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .wait-desc{font-size:var(--v5-fs-body)!important;color:var(--v5-ink-3)!important;line-height:1.6!important;text-align:center!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .wait-ad{margin:16px 0 0!important;padding:12px 14px!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r-sm)!important;background:var(--v5-panel-2)!important;box-shadow:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .wait-ad b{display:block!important;margin:0 0 4px!important;font:600 var(--v5-fs-eyebrow)/1.2 var(--cjk)!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .wait-ad b::before{content:none!important;display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .wait-ad span{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-2)!important;line-height:1.6!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .wsv5p-boot7{display:block!important;position:relative!important;z-index:1!important;margin:2px 0 14px!important;}
html.ws-v5 .wsv5p-boot7 svg{display:block;width:100%;height:auto;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .wsv5p-bootad{display:flex!important;align-items:center!important;gap:10px!important;position:relative!important;z-index:1!important;height:44px!important;margin:14px 0 0!important;padding:0 2px!important;border:0!important;border-top:1px solid var(--v5-line)!important;background:none!important;}
html.ws-v5 .wsv5p-bootad .wsv5p-adtag{flex:none;padding:2px 6px;border-radius:var(--v5-r-sm);background:var(--v5-panel-2);border:1px solid var(--v5-line);font:500 var(--v5-fs-eyebrow)/1.3 var(--cjk);color:var(--v5-ink-3);}
html.ws-v5 .wsv5p-bootad .wsv5p-adtext{flex:1 1 auto;min-width:0;font-size:var(--v5-fs-caption);color:var(--v5-ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .wsv5p-bootad button{flex:none!important;border:0!important;background:none!important;box-shadow:none!important;padding:0!important;margin:0!important;width:auto!important;height:auto!important;min-height:0!important;font:600 var(--v5-fs-caption)/1.4 var(--cjk)!important;color:var(--v5-accent-ink)!important;cursor:pointer;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .wsv5p-bootfoot{display:flex!important;align-items:center!important;gap:10px!important;position:relative!important;z-index:1!important;margin:10px 0 0!important;font-size:var(--v5-fs-eyebrow)!important;color:var(--v5-ink-3)!important;}
html.ws-v5 .wsv5p-bootfoot .wsv5p-fsp{flex:1 1 auto;}

/* ==================== 10a. ≤1439px（1366 / 1280）：六格 / 四格总览的 display 数字降一档到 section（「0.1 小时」在 1366 宽被省略号截断，看图实测） ==================== */
@media(max-width:1439px){
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-metric-card b,
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-summary-card b,
  html.ws-v5 .wsv5p-herostat .wsv5p-hs b{font-size:var(--v5-fs-section)!important;}
}

/* ==================== 10b. ≤1279px 窄桌面（V7.0.0 起 769–1279 都走这里；769–1099 另有 P8）：改排法，不缩字 ==================== */
@media(max-width:1279px){
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-hero{grid-template-columns:minmax(0,1fr) 380px!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-hero-card{grid-template-columns:minmax(0,1fr) 240px!important;grid-template-rows:auto auto!important;gap:16px 24px!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-hero-card .wsv5p-herostat{grid-column:1 / -1!important;grid-row:2!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;}
  html.ws-v5 .wsv5p-herostat .wsv5p-hs:nth-child(odd){padding-left:16px;border-left:1px solid var(--v5-line);}
  html.ws-v5 .wsv5p-herostat .wsv5p-hs:first-child{padding-left:0;border-left:0;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;row-gap:16px!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-metric-card:nth-child(4){padding-left:0!important;border-left:0!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-layout{grid-template-columns:minmax(0,1fr)!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-side{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-side>*{grid-column:auto!important;grid-row:auto!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-side>#statsStreakRecord{grid-column:1!important;grid-row:1!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-side>.stats-tip-panel{grid-column:2!important;grid-row:1!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-side>.stats-recent-panel{grid-column:1!important;grid-row:2!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-side>.stats-export-panel{grid-column:2!important;grid-row:2!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .profile-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;row-gap:14px!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .profile-stat:nth-child(4){padding-left:0!important;border-left:0!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-metric-card strong b{font-size:var(--v5-fs-section)!important;}
}

/* ==================== 11. 尊重「减少动态效果」 ==================== */
@media(prefers-reduced-motion:reduce){
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar #planStartBtn,
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar #planStartBtn::after,
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar button.primary::after,
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyBody .done .seal,
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyBody .done .seal::before,
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #study.on #studyBody .done .seal::after,
  html.ws-v5.ws-v5.ws-v5.ws-v5 body .boot-splash .boot-box{animation:none!important;}
}

}
/* V7.0.0：二期从 769 起生效（769–1099 的缩窄见文件末尾 P8）；≤768 由 20/24 接管，注入节点（.wsv5p）在手机上不显示。 */

/* ==================== 11. 第 1 轮验收返修（2026-09-26）：一个入口一个家 / 对齐 / 字阶 / 主题性格 ==================== */
@media(min-width:769px){
/* 11.1 计划页：「完整计划表」只留计划表预览卡头那一颗；页头与本周卡头那两颗收起（节点不删） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan #planOpenFullHero,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan #planOpenFullWeek{display:none!important;}
/* 「今日计划详情」四张与顶部五格读数同一组数字 → 只留名目 + 说明 + 调整按钮 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-card>strong{display:none!important;}
/* 底部操作条浮在离底 14px 处，条下那 14px 会露出被盖住的内容 → 用一截纸色投影把缝补上（设置页同理） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-actions-bar,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar{box-shadow:var(--v5-shadow),0 15px 0 0 var(--v5-paper)!important;}
/* D-dp-13：「最近调整」列表 13px → body 档 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-adjust-card li,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-tip-card li{font-size:var(--v5-fs-body)!important;line-height:1.6!important;}

/* 11.2 统计页：主列去掉站点的 28.8px 左内边距，和页头 / 六格总览同一左缘（D-dstar-13） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-main{padding-left:0!important;padding-right:0!important;}
/* 时段热力图图例：渐变条走主题令牌（原来写死青绿，猫卷下与粉色格子对不上）；「少 / 多」贴在渐变条两端 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-heat-foot{display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;gap:4px!important;align-items:start!important;margin-top:10px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-heat-foot>div{min-width:0!important;width:auto!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-heat-scale{height:6px!important;width:100%!important;border-radius:var(--v5-r-pill)!important;border:0!important;box-shadow:none!important;
  background:linear-gradient(90deg,color-mix(in srgb,var(--v5-accent) 8%,transparent),var(--v5-accent))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-heat-foot small{display:flex!important;justify-content:space-between!important;width:100%!important;margin-top:4px!important;font-size:0!important;line-height:1!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-heat-foot small::before{content:"\5C11";font-size:var(--v5-fs-caption);color:var(--v5-ink-3);}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-heat-foot small::after{content:"\591A";font-size:var(--v5-fs-caption);color:var(--v5-ink-3);}

/* D-dp-13 统计页字阶：学习概览 13 / 18 → body 14 / title 17；词书进度百分比 11.67 → caption 12；最近成就徽章 19 → title 17 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats #statsLearningSummary span{font-size:var(--v5-fs-body)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats #statsLearningSummary b{font-size:var(--v5-fs-title)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-book-row small{font-size:var(--v5-fs-caption)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats #statsRecentAchievements .achievement-medal-core{font-size:var(--v5-fs-title)!important;}

/* 11.3 成就页：「奖励与规则」整张入口卡已撤（入口都在顶栏 / 侧栏 / 首页连胜标题行 / ⌘K）→ 等级卡独占一行 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .wsv5p-grid2:not(:has(>.wsv5p-achlinks)){grid-template-columns:minmax(0,1fr)!important;}
/* 「最近解锁」是成就名（中文）不是数字 → title 档，不再按 44px 大数字渲染 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-summary-card:nth-child(4) b{font-family:var(--cjk)!important;font-size:var(--v5-fs-section)!important;line-height:1.25!important;margin-top:10px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
/* 分类筛选：一行横滑，不再让「主题与个性化」一个人掉到第三排 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements #achievementCategoryFilters{flex-wrap:nowrap!important;overflow-x:auto!important;scrollbar-width:none!important;padding-bottom:2px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements #achievementCategoryFilters::-webkit-scrollbar{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements #achievementCategoryFilters>*{flex:none!important;}
/* 排序下拉：与筛选药丸同一种形（圆角随主题，去原生箭头，自画 ›） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements #achievementSort,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #hardbookSort{
  -webkit-appearance:none!important;appearance:none!important;border-radius:var(--v5-r-chip)!important;
  border:1px solid var(--v5-line)!important;background-color:var(--v5-panel)!important;color:var(--v5-ink-2)!important;box-shadow:none!important;
  background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%)!important;
  background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important;
  padding-right:30px!important;cursor:pointer;
}
/* D-dp-08：等级环里的小字「LV」ink-3 在四个主题不过 4.5 → ink-2 */
html.ws-v5 .wsv5p-lv .wsv5p-hex small{color:var(--v5-ink-2)!important;}

/* 11.4 我的页 */
/* D-dstar-07：功能地图钉在资料卡正下方（第 3 行），提示卡晚几秒插进来也不再把它挤到页面底部 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account>.card>.mobile-my-groups{grid-row:3!important;}
/* 「我的」页已有完整的绑定手机号卡，提示卡在这一页不再占位 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account>.card>#wsPhoneNudge{display:none!important;}
/* 一个入口一个家：功能地图只留顶栏 / 侧栏 / 页脚都没有的入口；和它们重复的链接与整组收起（节点不删，⌘K 全部可搜） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-group[data-mobile-action="streak-rewards"],
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-group[data-mobile-action="study-wordbook"],
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-group:has(button[data-mobile-action="feedback"]),
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-group:has(button[data-mobile-action="guide"]),
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-actions button:is([data-mobile-action="theme"],[data-mobile-action="share"],[data-mobile-action="guide"],[data-mobile-action="feedback"]){display:none!important;}
/* 剩下的组：说明行原本罗列了被收起的条目 → 只留组名 + 链接 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-group p{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .mobile-my-groups{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;}
/* 底部「课堂 Beta」入口与侧栏「课堂」重复 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account #wsLectMobileEntry{display:none!important;}
/* 头像字：中文一律系统黑体（词头才是唯一衬线） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .avatar-preview{font-family:var(--cjk)!important;}
/* 邀请阶梯：每一站竖排居中；「值 799 币」caption；「已领取」= 该列里的 .v5-tag.is-ok；「已邀 N 人」数字 title 档 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-ilad-stops li{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;gap:3px!important;position:relative!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-ilad-stops li small{display:block!important;font-size:var(--v5-fs-caption)!important;line-height:1.4!important;color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-ilad-stops li u{display:block!important;text-decoration:none!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-gold-ink)!important;margin-top:2px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-ilad-stops li i{
  position:static!important;display:inline-flex!important;align-items:center!important;height:22px!important;padding:0 8px!important;margin:4px 0 0!important;
  border-radius:var(--v5-r-sm)!important;font:600 var(--v5-fs-eyebrow)/1 var(--cjk)!important;font-style:normal!important;letter-spacing:.02em!important;
  background:color-mix(in srgb,var(--v5-ok) 14%,var(--card))!important;color:color-mix(in srgb,var(--v5-ok) 70%,var(--ink))!important;transform:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-ilad-top b em{font-family:var(--v5-tech)!important;font-size:var(--v5-fs-title)!important;font-style:normal!important;}

/* 11.5 词库页 */
/* 统一页头（19 号把「我的词库」标题 + 一行说明 + 导入按钮收进卡外的 .v5-pagehead） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.wsv5p-libhead{display:flex!important;margin:0 0 16px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.wsv5p-libhead .sec-title{font:700 var(--v5-fs-page)/1.2 var(--cjk)!important;color:var(--v5-ink)!important;margin:0!important;padding:0!important;border:0!important;background:none!important;letter-spacing:0!important;text-transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.wsv5p-libhead .sec-title::before{content:none!important;display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.wsv5p-libhead .mobile-import-entry{flex:none!important;width:auto!important;max-width:360px!important;margin:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.card.wsv5p-libcard>.sec-title,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.card.wsv5p-libcard>.mobile-import-entry{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.wsv5p-libhead{align-items:flex-end!important;justify-content:space-between!important;gap:16px!important;}
/* 书卡：次级动作（邀请同学 / 7 天挑战 / 清空这本进度）默认收进「⋯」；进度为 0 的书不显示「清空」 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib #bookSwitch .book-card:not(.wsv5p-more) .book-actions>:is(.book-share,.book-reset){display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib #bookSwitch .book-card.wsv5p-zero .book-actions>.book-reset{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib #bookSwitch .book-actions>.wsv5p-bookmore{
  flex:none!important;margin-left:auto!important;width:32px!important;height:28px!important;min-height:0!important;padding:0!important;display:inline-grid!important;place-items:center!important;
  border:1px solid var(--v5-line)!important;border-radius:var(--v5-r-sm)!important;background:transparent!important;box-shadow:none!important;
  color:var(--v5-ink-2)!important;font:600 var(--v5-fs-body)/1 var(--cjk)!important;cursor:pointer;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib #bookSwitch .book-actions>.wsv5p-bookmore:hover,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib #bookSwitch .book-card.wsv5p-more .book-actions>.wsv5p-bookmore{border-color:var(--v5-accent-line)!important;color:var(--v5-accent-ink)!important;background:var(--v5-accent-soft)!important;}
/* 「学习设置」卡：每日上限与导出 / 恢复 / 清空的家在设置页（设置 › 学习与复习 / 同步与备份 / 数据管理），这里收起，只留连胜保护卡两行 + 一条「去设置 ›」 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.card.wsv5p-libset>.setrow.wsv5p-dup,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.card.wsv5p-libset>.study-settings-actions{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.card.wsv5p-libset>.wsv5p-togo{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:12px 0 0!important;margin:4px 0 0!important;border-top:1px solid var(--v5-line)!important;font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.card.wsv5p-libset>.wsv5p-togo button{flex:none!important;border:0!important;background:none!important;box-shadow:none!important;padding:0!important;margin:0!important;min-height:0!important;height:auto!important;width:auto!important;cursor:pointer;color:var(--v5-accent-ink)!important;font:600 var(--v5-fs-body)/1.4 var(--cjk)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib>.card.wsv5p-libset>.wsv5p-togo button:hover{text-decoration:underline!important;}

/* 11.6 记录（难词本）页：左栏概览卡底部三颗（查看全部难词 / 导出难词本 / 筛选待巩固）与页签、工具行同屏重复 → 收起 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-side-actions{display:none!important;}
/* R-04：记录页接 V5 页规范。页头 = 19 号注入的 .v5-pagehead（眉题 + 标题 + 说明 + 右侧导出）；原 hero 卡（Georgia 标题 + 轴状插画）收起；
   工具行里的「导出难词本」与页头那颗是同一个动作 → 工具行那颗收起（一个入口一个家）。
   字：数字 = Barlow Condensed 正体（不再斜体 em），页签计数 = 黑体 caption，其余全部落回九档。 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-page>.wsv5p-rechead{display:flex!important;margin:0 0 16px!important;align-items:flex-end!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-page:has(>.wsv5p-rechead)>.hardbook-hero{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-page:has(>.wsv5p-rechead) #hardbookExportBtn{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-illustration{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records em{font-style:normal!important;}
/* 顶部 5 格读数 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-stat>i{font:600 var(--v5-fs-body)/1 var(--cjk)!important;font-style:normal!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-stat>div>span{font:500 var(--v5-fs-caption)/1.4 var(--cjk)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-stat>div>b{font:600 var(--v5-fs-caption)/1.1 var(--cjk)!important;color:var(--v5-ink-2)!important;font-style:normal!important;letter-spacing:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-stat>div>b em{font:700 var(--v5-fs-page)/1 var(--v5-tech)!important;color:var(--v5-ink)!important;font-variant-numeric:tabular-nums;margin-right:2px!important;letter-spacing:.01em!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-stat>div>small{font:400 var(--v5-fs-caption)/1.4 var(--cjk)!important;color:var(--v5-ink-3)!important;}
/* 左栏概览 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-side h3,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-insight h3{font:700 var(--v5-fs-title)/1.3 var(--cjk)!important;color:var(--v5-ink)!important;letter-spacing:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-side-row span{font:400 var(--v5-fs-body)/1.5 var(--cjk)!important;color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-side-row b{font:500 var(--v5-fs-caption)/1.2 var(--cjk)!important;color:var(--v5-ink-3)!important;font-style:normal!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-side-row b em{font:600 var(--v5-fs-body-lg)/1 var(--v5-tech)!important;color:var(--v5-ink)!important;margin-right:2px!important;}
/* 页签：黑体 body，计数黑体 caption */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordTabs button{font:600 var(--v5-fs-body)/1.2 var(--cjk)!important;letter-spacing:0!important;}
/* 计数原来再压 opacity:.85（纸墨浅 3.89 / 云阶白卷 4.03 / 猫卷 3.64）→ 不透明，颜色跟页签字走（V7.0.0 第三轮） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordTabs button b{font:600 var(--v5-fs-caption)/1 var(--cjk)!important;font-style:normal!important;margin-left:4px!important;font-variant-numeric:tabular-nums;}
/* 工具 / 批量 / 说明 / 空态 / 建议 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-batch,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-batch label,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #hardbookPageSummary{font:400 var(--v5-fs-caption)/1.4 var(--cjk)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-batch label{color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #hardbookViewTable,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #hardbookViewCards{font:600 var(--v5-fs-body)/1 var(--cjk)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordNote{font:400 var(--v5-fs-caption)/1.5 var(--cjk)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordList .empty-note{font:500 var(--v5-fs-body-lg)/1.6 var(--cjk)!important;color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-advice{font:400 var(--v5-fs-body)/1.6 var(--cjk)!important;color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-insight-go{font:600 var(--v5-fs-caption)/1.2 var(--cjk)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-insight .empty-note{font:500 var(--v5-fs-body)/1.6 var(--cjk)!important;color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #hardbookTrendChart .trend-bar span{font:500 var(--v5-fs-eyebrow)/1.2 var(--v5-tech)!important;color:var(--v5-ink-3)!important;}
/* 右栏：外层 aside 本身又是一张卡（卡套卡），且 grid 列按内容撑到 288 → 里面四张卡从右边溢出 7px。外层去卡面、列宽 minmax(0,1fr) */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-insights{grid-template-columns:minmax(0,1fr)!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;clip-path:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-insights::before,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-insights::after{content:none!important;display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-insights>.hardbook-insight{min-width:0!important;margin:0!important;}
/* D-rchk-03：右栏「学习统计折线图」。SVG 720×226 被拉伸成约 270×146（preserveAspectRatio=none）→ 刻度字 ~7px、圆点压成椭圆。
   19 号按 SVG 坐标叠一层 HTML（.wsv5p-lnov 圆点 + .wsv5p-lnaxis 日期）；叠好之后（:has）才藏 SVG 里的 text/circle，线宽 non-scaling-stroke。
   刻度字号 / 字体 / 颜色与同页「难词掌握趋势」.trend-bar span 完全一致（eyebrow · tech · ink-3） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD:has(>.wsv5p-lnov){display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;height:auto!important;min-height:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD:has(>.wsv5p-lnov)>.stats-chart-legend{grid-row:1!important;grid-column:1!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD:has(>.wsv5p-lnov)>svg{grid-row:2!important;grid-column:1!important;display:block!important;width:100%!important;height:120px!important;overflow:visible!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD:has(>.wsv5p-lnov)>svg :is(text,circle){display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD svg :is(.grid-line,.line-words,.line-minutes){vector-effect:non-scaling-stroke;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD svg .grid-line{stroke:var(--v5-line)!important;stroke-width:1!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD svg .line-words{stroke:var(--v5-accent)!important;stroke-width:2!important;fill:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD svg .line-minutes{stroke:var(--v5-gold)!important;stroke-width:1.5!important;fill:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD>.wsv5p-lnov{grid-row:2!important;grid-column:1!important;position:relative!important;pointer-events:none!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD .wsv5p-lndot{position:absolute!important;width:7px!important;height:7px!important;margin:-3.5px 0 0 -3.5px!important;border-radius:50%!important;background:var(--v5-accent)!important;box-shadow:0 0 0 2px var(--v5-panel)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD .wsv5p-lndot.is-min{width:5px!important;height:5px!important;margin:-2.5px 0 0 -2.5px!important;background:var(--v5-gold)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD>.wsv5p-lnaxis{grid-row:3!important;grid-column:1!important;position:relative!important;height:18px!important;margin:4px 0 0!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD .wsv5p-lnaxis>span{position:absolute!important;top:0!important;transform:translateX(-50%)!important;white-space:nowrap!important;font:500 var(--v5-fs-eyebrow)/1.2 var(--v5-tech)!important;color:var(--v5-ink-3)!important;font-variant-numeric:tabular-nums;letter-spacing:0!important;}
/* 六个页签：原来 flex 折行，最后一颗「全部掌握」独占第二行被拉满整宽 → 3×2 等宽 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordTabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordTabs>button{width:auto!important;min-width:0!important;margin:0!important;white-space:nowrap!important;}
/* ===== D-dstar-09 一个入口一个家（第 2 轮）：节点不删，只收起与顶栏 / 侧栏 / 本页另一处重复的入口 ===== */
/* 计划页：「计划规则」卡里的「设置规则」打开的是完整计划表弹窗 —— 与「计划表预览 · 完整计划表 ↗」同一个动作 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan #planOpenFullRules{display:none!important;}
/* 统计页：「最近成就 · 查看全部 ›」「词书进度对比 · 查看全部词书 ›」= 侧栏「成就」「词库」；六格里「学习成就」格的「查看全部成就 ›」小字同理 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats #statsAllAchievements,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats #statsViewLibrary,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats #statsOverviewGrid .stats-metric-card.clickable small{display:none!important;}
/* 统计页：「学习概览」五行与上方六格读数完全相同 → 收起；卡只留说明 + 「导出学习数据」 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .wsv5p-exppanel #statsLearningSummary{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .wsv5p-exppanel .wsv5p-expnote{display:block!important;margin:0 0 12px!important;font:400 var(--v5-fs-body)/1.6 var(--cjk)!important;color:var(--v5-ink-2)!important;}
/* 设置页：每日新词上限 / 学习总量的家在计划页 → 两格 + 「使用推荐」「保存学习设置」收起；只剩底栏一颗「保存设置」 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-stepper.wsv5p-dup,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings #settingsRecommendedStudySettings.wsv5p-dup,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings #settingsSaveStudySettings.wsv5p-dup{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .wsv5p-togoplan{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:10px 14px!important;margin:0 0 12px!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r-sm)!important;background:var(--v5-panel-2)!important;font:400 var(--v5-fs-body)/1.5 var(--cjk)!important;color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .wsv5p-togoplan button{flex:none!important;border:0!important;background:none!important;box-shadow:none!important;padding:0!important;margin:0!important;min-height:0!important;height:auto!important;width:auto!important;cursor:pointer;color:var(--v5-accent-ink)!important;font:600 var(--v5-fs-body)/1.4 var(--cjk)!important;border-radius:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .wsv5p-togoplan button:hover{text-decoration:underline!important;}
}

/* >>> PIXEL-V7 像素街机（V7.0.0）>>> */
/* ============================================================================
 * P. 像素街机 pixel（V7.0.0）· 其余桌面页（≥769）+ 完成页「STAGE CLEAR」（桌面与手机 V5 共用）
 * 只在 [data-theme="pixel"] 下生效。令牌（--v5p-clip / --v5p-cn* / --v5p-exp* / 素材 / 像素字体）定义在 20 号文件末尾「P0」。
 * 数字已由 16 号的像素令牌（--v5-tech = WS Pixel）自动换成像素字，这里只管形：面板切角 + 3px 描边、街机主键 / 次键、芯片、EXP 条。
 * ==========================================================================*/

/* ==================== P1. 完成页：STAGE CLEAR 像素横幅 + 12 颗像素方块炸开一次（手机 V5 与桌面 V5 所有宽度共用） ==================== */
@media all{
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #study.on #studyBody .done:not(#_){position:relative!important;}
/* 横幅：原来的 ✦ 印章字形收起（font-size:0），::before = STAGE CLEAR（WS Pixel Display 24 金）、::after = 中文一句；
   今天的计划没全部完成（只是这一轮背完，底部没有「磨耳朵」键）→ ROUND CLEAR / 这一轮通关，不虚报「全部通关」 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #study.on #studyBody .done .seal:not(#_){
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:10px!important;
  width:min(100%,420px)!important;height:auto!important;min-height:96px!important;margin:6px auto 12px!important;padding:18px 18px 21px!important;box-sizing:border-box!important;
  font-size:0!important;line-height:0!important;color:transparent!important;text-shadow:none!important;
  clip-path:var(--v5p-clip)!important;background:var(--v5p-cn-gold),var(--v5p-dots) 0 0/12px 12px repeat,var(--card-strong)!important;
  box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--amber) 70%,var(--card-strong)),inset 0 -6px 0 color-mix(in srgb,var(--amber) 35%,var(--paper-2))!important;
  animation:v5px-enter var(--v5-dur-slow) steps(3,end) both!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #study.on #studyBody .done .seal:not(#_)::before{
  content:"ROUND CLEAR"!important;position:static!important;display:block!important;inset:auto!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;opacity:1!important;animation:none!important;transform:none!important;
  font:400 24px/1.25 var(--v5p-disp)!important;letter-spacing:.02em!important;color:var(--amber)!important;
  text-shadow:3px 3px 0 color-mix(in srgb,var(--accent) 70%,var(--paper-2))!important;-webkit-font-smoothing:none;white-space:nowrap!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #study.on #studyBody .done .seal:not(#_)::after{
  content:"本轮通关"!important;position:static!important;display:block!important;inset:auto!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;opacity:1!important;animation:none!important;transform:none!important;
  font:700 var(--v5-fs-body)/1.4 var(--cjk,system-ui)!important;letter-spacing:.08em!important;color:var(--v5-ink)!important;white-space:normal!important;text-align:center!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #study.on:has(#studyFoot #doneEarBtn) #studyBody .done .seal:not(#_)::before{content:"STAGE CLEAR"!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #study.on:has(#studyFoot #doneEarBtn) #studyBody .done .seal:not(#_)::after{content:"今天的任务全部通关"!important;}
/* 12 颗像素方块（金 / 洋红 / 青 / 绿）从横幅中心炸开一次：一颗 6×6 方块 + 12 个 box-shadow，steps(6) 飞出后消失 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #study.on #studyBody .done:not(#_)::before{
  content:""!important;display:block!important;position:absolute!important;left:50%!important;top:60px!important;width:6px!important;height:6px!important;margin:-3px 0 0 -3px!important;
  background:transparent!important;border:0!important;pointer-events:none!important;z-index:2!important;opacity:0;
  animation:v5px-burst 600ms steps(6,start) 1 both;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #study.on #studyBody .done h2:not(#_){font-family:var(--cjk,system-ui)!important;}
/* 完成页句子里的数字（「今天完成 30 个词」）：句中小数字，不是 HUD 大数字 → 系统字（V7.0.0 口径：Pixelify 只给英文单词；原来是 Pixelify，5≈S） */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #study.on #studyBody .done p b:not(#_){font-family:var(--px-sys,var(--cjk))!important;font-variant-numeric:tabular-nums!important;color:var(--amber)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #study.on #studyBody .done .achievement-unlock-list:not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #study.on #studyBody .done>div:not(.seal):not(.achievement-unlock-list):not(#_){
  border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;background:var(--v5p-cn),var(--v5-panel)!important;box-shadow:var(--v5p-ring)!important;
}
@media(prefers-reduced-motion:reduce){
  /* 停在最后一帧：横幅静止在位，方块已散开消失 */
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #study.on #studyBody .done .seal:not(#_){animation:none!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #study.on #studyBody .done:not(#_)::before{animation:none!important;display:none!important;}
}
}

@media(min-width:769px){

/* ==================== P2. 面板：两级台阶切角 + inset 3px 描边 + 转角补格 ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-plan :is(.plan-metric-grid,.plan-panel,.plan-actions-bar):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-plan .plan-hero .wsv5p-curve:not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lib>.card:not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-stats :is(.stats-overview-grid,.stats-panel,.wsv5p-herostat):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-achievements :is(.ach-summary-grid,.ach-controls,.ach-card):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-account :is(.account-profile-card,.account-box,.app-icon-panel):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings :is(.settings-subnav,.settings-card,.settings-bottom-bar):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body .wsv5p-card:not(#_){
  border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;
  background:var(--v5p-cn),var(--v5-panel)!important;box-shadow:var(--v5p-ring)!important;transition:none!important;
}
/* 词书卡：当前词书 = 洋红描边；卡上的 hover 只提亮不位移 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lib .book-card:not(#_){
  border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;
  background:var(--v5p-cn),var(--card-strong)!important;box-shadow:var(--v5p-ring),inset 0 -6px 0 var(--line)!important;transform:none!important;transition:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lib .book-card:hover:not(#_){background:var(--v5p-cn),color-mix(in srgb,var(--card-strong) 92%,var(--ink))!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lib .book-card.active:not(#_){background:var(--v5p-cn-acc),var(--card-strong)!important;box-shadow:inset 0 0 0 3px var(--accent),inset 0 -6px 0 color-mix(in srgb,var(--accent) 45%,var(--paper-2))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lib .book-card .wsv5p-bookring svg:not(#_){shape-rendering:crispEdges;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-plan,#view-lib,#view-stats,#view-achievements,#view-account,#view-settings) :is(.plan-metric-card,.plan-detail-card,.stats-streak-box,.ach-summary-card,.profile-stat):hover:not(#_){transform:none!important;}
/* 卡内小格（计划详情四格 / 连胜两格）：HUD 格 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-plan .plan-detail-card:not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-stats .stats-streak-box:not(#_){
  border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;background:var(--v5p-cn),var(--card-strong)!important;box-shadow:var(--v5p-ring)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-plan .plan-metric-icon,#view-plan .plan-detail-card>span:first-child,#view-stats .stats-metric-icon,#view-achievements .ach-card-top>:first-child):not(#_){border-radius:0!important;clip-path:var(--v5p-clip)!important;}
/* 分隔线 1px → 3px */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-plan .plan-metric-card,#view-stats .stats-metric-card,#view-achievements .ach-summary-card,#view-account .profile-stat,#view-lib .libstat .pill):not(:first-child):not(#_){border-left-width:3px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-stats .stats-metric-card:not(#_){clip-path:none!important;box-shadow:none!important;background:transparent!important;}
/* 页头眉题前一个 6px 方块 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body .v5-pagehead .share-eyebrow:not(#_){display:inline-flex!important;align-items:center!important;gap:8px!important;letter-spacing:.08em!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body .v5-pagehead .share-eyebrow:not(#_)::before{content:""!important;display:block!important;width:6px!important;height:6px!important;background:currentColor!important;border-radius:0!important;box-shadow:none!important;}

/* ==================== P3. 按键：页主键 = 洋红街机键（hover 提亮不位移、按下沉 3px）；其余 = 深面描边次键 ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-plan .plan-actions-bar #planStartBtn:not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings .settings-bottom-bar button.primary:not(#_){
  clip-path:var(--v5p-clip)!important;filter:none!important;background:var(--v5-accent)!important;color:var(--v5-on-accent)!important;
  box-shadow:var(--v5p-side),var(--v5p-hi)!important;padding-bottom:3px!important;font-weight:800!important;letter-spacing:.06em!important;transition:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-plan .plan-actions-bar #planStartBtn:hover:not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings .settings-bottom-bar button.primary:hover:not(#_){background:color-mix(in srgb,var(--accent) 92%,var(--ink))!important;transform:none!important;filter:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-plan .plan-actions-bar #planStartBtn:active:not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings .settings-bottom-bar button.primary:active:not(#_){transform:translateY(3px)!important;box-shadow:var(--v5p-side-down),var(--v5p-hi)!important;padding-bottom:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-account .account-box .btn,#view-account .api-config .btn,#view-lib .setrow .btn,#view-lib .btnrow .btn,#view-lib .study-settings-actions .btn,#view-stats .stats-export-btn,#view-settings .settings-primary-btn,#view-settings .settings-soft-btn,#view-settings .settings-study-actions .btn,#view-settings .settings-bottom-bar button:not(.primary),#view-plan .plan-actions-bar #planResetBtn,#view-plan .plan-actions-bar #planSaveBtn,#view-plan .plan-detail-card>button,#view-lib .mobile-import-entry,#view-lib .book-actions button,#view-settings .settings-stepper-controls button):not(#_){
  border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;
  background:var(--v5p-cn-hi),var(--card-strong)!important;box-shadow:var(--v5p-ring-hi),inset 0 -6px 0 var(--line-strong)!important;padding-bottom:3px!important;transform:none!important;transition:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-account .account-box .btn,#view-account .api-config .btn,#view-lib .setrow .btn,#view-lib .btnrow .btn,#view-lib .study-settings-actions .btn,#view-stats .stats-export-btn,#view-settings .settings-primary-btn,#view-settings .settings-soft-btn,#view-settings .settings-study-actions .btn,#view-settings .settings-bottom-bar button:not(.primary),#view-plan .plan-actions-bar #planResetBtn,#view-plan .plan-actions-bar #planSaveBtn,#view-plan .plan-detail-card>button,#view-lib .mobile-import-entry,#view-lib .book-actions button,#view-settings .settings-stepper-controls button):hover:not(#_){background:var(--v5p-cn-hi),color-mix(in srgb,var(--card-strong) 90%,var(--ink))!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-account .account-box .btn,#view-account .api-config .btn,#view-lib .setrow .btn,#view-lib .btnrow .btn,#view-lib .study-settings-actions .btn,#view-stats .stats-export-btn,#view-settings .settings-primary-btn,#view-settings .settings-soft-btn,#view-settings .settings-study-actions .btn,#view-settings .settings-bottom-bar button:not(.primary),#view-plan .plan-actions-bar #planResetBtn,#view-plan .plan-actions-bar #planSaveBtn,#view-plan .plan-detail-card>button,#view-lib .mobile-import-entry,#view-lib .book-actions button,#view-settings .settings-stepper-controls button):active:not(#_){transform:translateY(3px)!important;box-shadow:var(--v5p-ring-hi),inset 0 -3px 0 var(--line-strong)!important;padding-bottom:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-lib .btn.danger,#view-plan .plan-actions-bar #planResetBtn):not(#_){box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--terra) 65%,var(--card-strong)),inset 0 -6px 0 color-mix(in srgb,var(--terra) 40%,var(--paper-2))!important;}

/* ==================== P4. 芯片 / 分段 / 设置分类 ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(.wsv5p-chip,#view-lib .lib-chip,#view-stats .stats-range-tabs button,#view-achievements .ach-chip-row button,#view-achievements .ach-pill):not(#_){
  border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;
  background:var(--v5p-cn),var(--v5-panel)!important;box-shadow:var(--v5p-ring)!important;transform:none!important;transition:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(.wsv5p-chip,#view-lib .lib-chip,#view-stats .stats-range-tabs button,#view-achievements .ach-chip-row button):hover:not(#_){background:var(--v5p-cn-hi),color-mix(in srgb,var(--v5-panel) 90%,var(--ink))!important;box-shadow:var(--v5p-ring-hi)!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(.wsv5p-chip,#view-lib .lib-chip,#view-stats .stats-range-tabs button,#view-achievements .ach-chip-row button):active:not(#_){transform:translateY(3px)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-lib .lib-chip.on,#view-stats .stats-range-tabs button.active,#view-achievements .ach-chip-row button.active):not(#_){
  background:var(--v5-accent)!important;color:var(--v5-on-accent)!important;box-shadow:inset 0 -3px 0 color-mix(in srgb,var(--accent) 55%,var(--paper-2))!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-lib .lib-chip.on,#view-stats .stats-range-tabs button.active,#view-achievements .ach-chip-row button.active) :is(i,small,span):not(#_){color:inherit!important;opacity:.85!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-settings .settings-segment,#view-settings .wsv5p-uiseg):not(#_){border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;background:var(--v5p-cn),var(--paper-2)!important;box-shadow:var(--v5p-ring)!important;padding:3px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-settings .settings-segment button,#view-settings .wsv5p-uiseg button):not(#_){border-radius:0!important;clip-path:var(--v5p-clip)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-settings .settings-segment button.active,#view-settings .wsv5p-uiseg button.on):not(#_){background:var(--v5-accent)!important;color:var(--v5-on-accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings .settings-subnav button:not(#_){border-radius:0!important;clip-path:var(--v5p-clip)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings .settings-subnav button.active:not(#_){background:var(--v5-accent)!important;color:var(--v5-on-accent)!important;box-shadow:inset 0 -3px 0 color-mix(in srgb,var(--accent) 55%,var(--paper-2))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings .settings-subnav button.active:not(#_)::before{background:var(--v5-on-accent)!important;}
/* 设置里的主题卡 / 图标卡：切角 + 描边；当前 = 洋红框；「新版」角标方块 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings :is(.settings-theme-card,.settings-icon-card):not(#_){border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;background:var(--v5p-cn),var(--card-strong)!important;box-shadow:var(--v5p-ring)!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings :is(.settings-theme-card,.settings-icon-card):hover:not(#_){background:var(--v5p-cn-hi),color-mix(in srgb,var(--card-strong) 92%,var(--ink))!important;box-shadow:var(--v5p-ring-hi)!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings :is(.settings-theme-card,.settings-icon-card).active:not(#_){background:var(--v5p-cn-acc),var(--card-strong)!important;box-shadow:inset 0 0 0 3px var(--accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings .settings-theme-card[data-settings-theme]:not(#_)::before{border-radius:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings .settings-theme-preview:not(#_){border:0!important;border-radius:0!important;box-shadow:inset 0 0 0 3px var(--line)!important;}
/* 复选框：像素方块 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings input[type="checkbox"]:not(#_){
  -webkit-appearance:none!important;appearance:none!important;width:21px!important;height:21px!important;margin:0!important;flex:none!important;cursor:pointer;
  border:0!important;border-radius:0!important;background:var(--paper-2)!important;box-shadow:inset 0 0 0 3px var(--line-strong)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings input[type="checkbox"]:checked:not(#_){
  background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 7' shape-rendering='crispEdges'><path d='M1 3h1v1H1zM2 4h1v1H2zM3 5h1v1H3zM4 4h1v1H4zM5 3h1v1H5zM6 2h1v1H6z' fill='%231A0612'/></svg>") center/15px 15px no-repeat,var(--v5-accent)!important;box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--accent) 55%,var(--paper-2))!important;image-rendering:pixelated;
}
/* 输入框 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-plan .plan-custom-settings input,#view-lib .setrow input[type="number"],#view-lib #importBox,#view-account .auth-form input,#view-settings .settings-stepper-controls input,#view-account .profile-edit input):not(#_){
  border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;background:var(--v5p-cn),var(--paper-2)!important;box-shadow:var(--v5p-ring)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-plan .plan-custom-settings input,#view-lib .setrow input,#view-account .auth-form input,#view-settings .settings-stepper-controls input):focus:not(#_){box-shadow:inset 0 0 0 3px var(--cyan)!important;}

html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lib .lib-scope-btn:not(#_){border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;background:var(--v5p-cn),var(--v5-panel)!important;box-shadow:var(--v5p-ring)!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lib .lib-scope-btn.on:not(#_){background:var(--v5-accent)!important;color:var(--v5-on-accent)!important;box-shadow:inset 0 -3px 0 color-mix(in srgb,var(--accent) 55%,var(--paper-2))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lib .lib-scope-btn.on *:not(#_){color:inherit!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-account :is(.mobile-my-group,.invite-note,.account-strip,.sync-status,.invite-hint,.ws-lect-mobile-entry button):not(#_){border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;background:var(--v5p-cn),var(--v5-panel)!important;box-shadow:var(--v5p-ring)!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-account .mobile-my-group:hover:not(#_){background:var(--v5p-cn-hi),color-mix(in srgb,var(--v5-panel) 92%,var(--ink))!important;box-shadow:var(--v5p-ring-hi)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-account .mobile-my-icon:not(#_){border-radius:0!important;clip-path:var(--v5p-clip)!important;box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--accent) 55%,var(--accent-soft))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-settings :is(.settings-stepper,.settings-toggle-line,.settings-control-block):not(#_){border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;background:var(--v5p-cn),var(--card-strong)!important;box-shadow:var(--v5p-ring)!important;}

/* ==================== P5. EXP 条 / 本周 7 格 / 强度台阶 ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-stats .stats-mini-bar,.wsv5p-bar,#view-plan .plan-metric-card i,#view-achievements .ach-progress):not(#_){height:12px!important;padding:3px!important;box-sizing:border-box!important;border:0!important;border-radius:0!important;overflow:hidden!important;background:var(--px-exp-empty) content-box,var(--paper-2)!important;box-shadow:inset 0 0 0 3px var(--line)!important;}   /* V7.0.0：轨道也分格（空格暗、亮格绿），与首页今日进度的 EXP 条同一种 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-stats .stats-mini-bar>i,.wsv5p-bar>i,#view-plan .plan-metric-card i>span,#view-achievements .ach-progress>i):not(#_){display:block!important;height:100%!important;border-radius:0!important;background:var(--v5p-exp)!important;box-shadow:none!important;transition:width var(--v5-dur-slow) steps(4,end)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-stats .stats-streak-next .stats-mini-bar>i:not(#_){background:var(--v5p-exp-gold)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-plan .plan-week-bar>b:not(#_){border-radius:0!important;clip-path:var(--v5p-clip)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-plan .plan-intensity-rail button:not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-plan .plan-intensity-rail button>span:not(#_){border-radius:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-plan .plan-intensity-rail button.active:not(#_){clip-path:var(--v5p-clip)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-plan .plan-preview-row .plan-status-dot:not(#_){border-radius:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-stats .stats-heat-cell:not(#_){border-radius:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-stats .stats-chart svg:not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body .wsv5p-ring svg:not(#_){shape-rendering:crispEdges;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-stats .stats-chart :is(.line-words,.line-minutes):not(#_){stroke-width:3px!important;stroke-linejoin:miter!important;stroke-linecap:square!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-stats .wsv5p-track .wsv5p-tbar:not(#_){border-radius:0!important;}

/* ==================== P6. 我的 / 成就：头像方块、等级六边形改成像素徽章、邀请阶梯 EXP ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-account .avatar-preview:not(#_){border-radius:0!important;clip-path:var(--v5p-clip)!important;box-shadow:inset 0 0 0 3px var(--accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-account .avatar-preview img:not(#_){border-radius:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-account .profile-stat:first-child b:not(#_){color:var(--amber)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-account .ws-ilad-track:not(#_){height:15px!important;padding:3px!important;box-sizing:border-box!important;border-radius:0!important;background:var(--paper-2)!important;box-shadow:var(--v5p-ring)!important;overflow:hidden!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-account .ws-ilad-track i:not(#_){border-radius:0!important;background:var(--v5p-exp-acc)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-account :is(.ws-ilad-stops li i,.verified-pill,.invite-note):not(#_){border-radius:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body .wsv5p-lv .wsv5p-hex:not(#_){border-radius:0!important;clip-path:var(--v5p-clip)!important;background:var(--v5p-cn-gold),var(--card-strong)!important;box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--amber) 65%,var(--card-strong)),inset 0 -6px 0 color-mix(in srgb,var(--amber) 35%,var(--paper-2))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body .wsv5p-lv .wsv5p-hex span:not(#_){color:var(--amber)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-achievements .ach-card.locked:not(#_){background:var(--v5p-cn),color-mix(in srgb,var(--v5-panel) 70%,var(--paper-2))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-achievements :is(.ach-card .achievement-medal,.ach-card .ach-medal,.ach-card-top .achievement-medal-core):not(#_){border-radius:0!important;}

/* 可读性底线（任何字 ≥ 12px）：计划页遗忘曲线的 SVG 刻度、邀请阶梯的小字（站点原值 10–11px） */
/* 计划页遗忘曲线的 SVG 刻度：原来这里钉 13 个单位，缩放后平板上只有 9px；V7.0.0 起 19 号 curveSvg(k) 按渲染比例把刻度补到屏幕上 ≥ 12.5px，所有主题同一套，这条撤掉 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-account .ws-ilad-stops li :is(span,small,u,i):not(#_){font-size:var(--v5-fs-caption)!important;}

@media(prefers-reduced-motion:reduce){
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-stats .stats-mini-bar>i,.wsv5p-bar>i,#view-plan .plan-metric-card i>span,#view-achievements .ach-progress>i):not(#_){transition:none!important;}
}
}
/* <<< PIXEL-V7 像素街机 <<< */

/* ==================== P7. 数字字体（V7.0.0 业主拍板；电脑 ≥769）====================
   ≥16px 的数字 = Press Start 2P（16 号的 --px-num；字号只取 16 / 24 / 32，字重 400 —— 这套字只有一个字重，合成粗体会把像素抹糊）；
   <16px 的数字走 --v5-tech（16 号已把像素主题的 --v5-tech 改成系统字）；Pixelify 只给英文单词。
   同一格里的汉字（「词」「天」「百词入门」）字体里没有，自动落到系统字。 */
@media(min-width:769px){
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-plan .plan-metric-card strong b,#view-stats .stats-metric-card b,#view-stats .stats-donut-center b,#view-achievements .ach-summary-card b,#view-account .profile-stat b,#view-records .hardbook-stat>div>b em,.wsv5p-herostat .wsv5p-hs b):not(#_):not(#_){
  font-family:var(--px-num)!important;font-weight:400!important;font-size:24px!important;line-height:1.15!important;letter-spacing:0!important;word-spacing:-.5em!important;-webkit-font-smoothing:none;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-plan .plan-detail-card strong b,#view-plan .plan-week-summary b,#view-lib .libstat .pill b,#view-stats .stats-streak-box b,#view-account .invite-note b,#view-account .ws-ilad-top b em,#view-account .profile-stat code,#view-settings .settings-stepper-controls input,#view-plan .plan-custom-settings input,#view-lib .setrow input[type="number"]):not(#_):not(#_){
  font-family:var(--px-num)!important;font-weight:400!important;font-size:16px!important;letter-spacing:0!important;word-spacing:-.5em!important;-webkit-font-smoothing:none;
}
/* 统计页双环中心的大百分比（19 号 SVG，viewBox 380 宽、最宽画成 280px）：64 单位 ≈ 40–47px 的街机大字 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-stats .wsv5p-ring svg>text:first-of-type:not(#_):not(#_){font-family:var(--px-num)!important;font-weight:400!important;font-size:64px!important;letter-spacing:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body .wsv5p-lv .wsv5p-hex span:not(#_):not(#_){font-family:var(--px-num)!important;font-weight:400!important;font-size:32px!important;letter-spacing:0!important;-webkit-font-smoothing:none;}
/* 等级卡标题「LV.7」（或站点给的中文等级名）：24px 街机字；字重留 700 给中文回落字，font-synthesis:none 不让街机字被合成加粗 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body .wsv5p-lv .wsv5p-lvbody h4:not(#_):not(#_){font-family:var(--px-num)!important;font-size:24px!important;font-weight:700!important;font-synthesis:none;letter-spacing:0!important;line-height:1.35!important;-webkit-font-smoothing:none;}
/* 六边形徽章下的「LV」小字：12px 英文标签，系统字 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body .wsv5p-lv .wsv5p-hex small:not(#_):not(#_){font-family:var(--px-sys)!important;font-weight:700!important;}
}

/* ==================== P8. 平板 / 窄窗口 769–1099（V7.0.0：电脑布局的缩窄版，16 号第 8 节的其余页部分）====================
   设置页：分类轨收窄；步进器（每日学习时长 / 显示数量）与「圆角 · 密度 · 动效」改单列 ——
   窄了以后原来两列 / 三列会把标签挤成一字一行的竖排、分段按钮挤成两行（820 实测）。1100 及以上一条不命中。 */
@media(min-width:769px) and (max-width:1099px){
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-shell{grid-template-columns:200px minmax(0,1fr)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-step-grid{grid-template-columns:minmax(0,1fr)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-control-grid{grid-template-columns:minmax(0,1fr)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-control-block{flex-direction:row!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-segment{flex-wrap:nowrap!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-segment button{white-space:nowrap!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-icon-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar button{white-space:nowrap!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar button.primary{min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .wsv5p-uiseg button{white-space:nowrap!important;padding:0 6px!important;}
}
@media(min-width:769px) and (max-width:959px){
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-shell{grid-template-columns:176px minmax(0,1fr)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-achievements .ach-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lib .book-switch{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-content-grid{grid-template-columns:minmax(0,1fr)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-content-grid>.plan-panel{grid-column:1 / -1!important;grid-row:auto!important;}   /* 本周概览 / 计划表预览原来钉在第 1 / 2 列第 2 行，单列时会被挤出一条隐式列 */
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-plan .plan-detail-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-achievements .ach-summary-card b,#view-stats .stats-metric-card b,.wsv5p-herostat .wsv5p-hs b):not(#_):not(#_){font-size:16px!important;}
}

/* ==================== 12. 小游戏页（磨耳朵 #earPage / 单词填字 #crosswordPage）· 电脑 ≥769（V7.0.0）====================
   以前这两页在新版电脑界面下还是旧皮（02 号 + 15 号 iOS 层），和新版首页 / 学习页不是一套。
   这里只换皮：顶条 = 学习页同款卡片条；舞台 / 棋盘 / 提示 = .v5-card；按钮 = .v5-btn-primary / .v5-btn；字号 ≥12；
   形状 / 动效全走 16 号第 1.6 节的性格令牌（星穹切角 + 发光、猫卷全圆 + 软阴影 + Q 弹、纸墨圆角气泡、极简无切角无位移、像素见下面 12b）。
   游戏逻辑、DOM、事件一个不动；#socialPage（好友 · 排行榜）由 22 号弹层皮负责，这里不碰。手机（≤768）不在这里。 */
@media(min-width:769px){
html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(#earPage,#crosswordPage).play-page{
  background:
    radial-gradient(1000px 560px at 80% -14%,color-mix(in srgb,var(--v5-accent) calc(9% * var(--v5-sky)),transparent),transparent 58%),
    var(--v5-paper)!important;
  color:var(--v5-ink)!important;
}
/* 顶条：58 高卡片条（与学习页 .study-top 同形），居中 1480 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(#earPage,#crosswordPage) .play-top{
  width:calc(100% - 40px)!important;max-width:1480px!important;margin:16px auto 0!important;box-sizing:border-box!important;
  height:58px!important;min-height:58px!important;padding:0 12px!important;grid-template-columns:44px 1fr auto!important;
  background:var(--v5-panel)!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r)!important;box-shadow:var(--v5-shadow)!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(#earPage,#crosswordPage) .play-title{font:600 var(--v5-fs-title)/1.25 var(--cjk)!important;letter-spacing:0!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(#earPage,#crosswordPage) .play-back{
  width:var(--v5-chip-h)!important;height:var(--v5-chip-h)!important;min-height:0!important;padding:0!important;
  border:1px solid var(--v5-line)!important;border-radius:var(--v5-r-sm)!important;background:var(--v5-panel-2)!important;box-shadow:none!important;
  color:var(--v5-ink-2)!important;font-size:var(--v5-fs-title)!important;cursor:pointer;
  transition:border-color var(--v5-dur-fast) var(--v5-ease),color var(--v5-dur-fast) var(--v5-ease),transform var(--v5-dur) var(--v5-ease)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(#earPage,#crosswordPage) .play-back:hover{border-color:var(--v5-accent-line)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(#earPage,#crosswordPage) .play-back:active{transform:var(--v5-press)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(#earPage,#crosswordPage) .play-body{padding:24px 20px 32px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(#earPage,#crosswordPage) .play-foot{
  width:calc(100% - 40px)!important;max-width:1480px!important;margin:0 auto 16px!important;box-sizing:border-box!important;padding:12px 16px!important;
  background:var(--v5-panel)!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r)!important;box-shadow:var(--v5-shadow)!important;
}

/* ---- 磨耳朵：舞台 = 卡片；词头 = 学习页同一种词头字；进度 = §5 进度条；读数 = chip；播放 = 唯一主按钮（圆形，性格按令牌） ---- */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-stage{
  width:min(100%,560px)!important;margin:8px auto 0!important;padding:32px 32px 28px!important;box-sizing:border-box!important;
  background:var(--v5-panel)!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r)!important;box-shadow:var(--v5-shadow-soft)!important;
  animation:var(--v5-enter) var(--v5-dur-slow) var(--v5-ease) backwards;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-eyebrow{
  display:inline-flex!important;align-items:center!important;height:24px!important;padding:0 10px!important;border-radius:var(--v5-r-chip)!important;
  background:var(--v5-accent-soft)!important;color:var(--v5-accent-ink)!important;font:600 var(--v5-fs-caption)/1 var(--cjk)!important;letter-spacing:.04em!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-eq i{background:color-mix(in srgb,var(--v5-accent) 55%,var(--v5-line-2))!important;border-radius:var(--v5-r-pill)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-stage.playing .ear-eq i{background:var(--v5-accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-word{font-family:var(--v5-word)!important;font-weight:700!important;font-size:min(var(--v5-fs-word),48px)!important;line-height:1.1!important;letter-spacing:-.01em!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-def{font:500 var(--v5-fs-title)/1.5 var(--cjk)!important;color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-prog{height:6px!important;border-radius:var(--v5-r-pill)!important;background:var(--v5-line)!important;margin:24px 0 14px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-prog i{background:var(--v5-accent)!important;border-radius:inherit!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-chips{gap:8px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-chip{
  display:inline-flex!important;align-items:center!important;height:28px!important;padding:0 12px!important;
  border:1px solid var(--v5-line)!important;border-radius:var(--v5-r-chip)!important;background:var(--v5-panel-2)!important;
  font:500 var(--v5-fs-caption)/1 var(--cjk)!important;color:var(--v5-ink-2)!important;gap:4px!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-chip b{color:var(--v5-ink)!important;font-family:var(--v5-tech)!important;font-variant-numeric:tabular-nums;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-play{
  width:72px!important;height:72px!important;margin:26px auto 0!important;border:0!important;border-radius:50%!important;
  background:var(--v5-accent)!important;background-image:none!important;color:var(--v5-on-accent)!important;box-shadow:var(--v5-shadow-soft)!important;
  filter:drop-shadow(0 0 calc(12px * var(--v5-glow)) color-mix(in srgb,var(--v5-accent) 45%,transparent));
  transition:transform var(--v5-dur) var(--v5-ease),filter var(--v5-dur-fast)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-play:hover{transform:var(--v5-lift)!important;filter:brightness(1.06) drop-shadow(0 0 calc(14px * var(--v5-glow)) color-mix(in srgb,var(--v5-accent) 50%,transparent));}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-play:active{transform:var(--v5-press)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-tip{max-width:460px!important;margin-top:20px!important;font:400 var(--v5-fs-caption)/1.6 var(--cjk)!important;color:var(--v5-ink-3)!important;}
/* 右上角「缩小为浮窗」：与返回键同一种小方钮 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-min-btn{color:var(--v5-ink-2)!important;}
/* 浮窗迷你播放器（离开磨耳朵页后在别的页面右下角）：卡片皮 + ≥12px 字 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earMini.ear-mini{
  background:var(--v5-panel)!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r)!important;
  box-shadow:var(--v5-shadow-soft)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earMini .ear-mini-text b{font:600 var(--v5-fs-body-lg)/1.25 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earMini .ear-mini-text small{font:400 var(--v5-fs-caption)/1.3 var(--cjk)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earMini .ear-mini-ring b{font:600 var(--v5-fs-caption)/1 var(--v5-tech)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earMini .ear-mini-ring .emr-bg{stroke:var(--v5-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earMini .ear-mini-ring .emr-fg{stroke:var(--v5-accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earMini .ear-mini-btn{background:var(--v5-accent)!important;color:var(--v5-on-accent)!important;border:0!important;box-shadow:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #earMini .ear-mini-close{background:var(--v5-panel-2)!important;color:var(--v5-ink-2)!important;border:1px solid var(--v5-line)!important;}

/* ---- 单词填字：关卡 = .v5-tag；棋盘 / 提示两栏 = 卡片；格子 = 输入格；按钮 = 主按钮 + 次按钮 ---- */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-head{margin:0 auto 16px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-level{
  display:inline-flex!important;align-items:center!important;height:24px!important;padding:0 10px!important;border-radius:var(--v5-r-chip)!important;
  background:var(--v5-accent-soft)!important;color:var(--v5-accent-ink)!important;font:600 var(--v5-fs-caption)/1 var(--cjk)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-sub{font:400 var(--v5-fs-caption)/1.5 var(--cjk)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-hearts{font-size:var(--v5-fs-body-lg)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-regen{font:400 var(--v5-fs-caption)/1.2 var(--cjk)!important;color:var(--v5-ink-3)!important;margin-top:4px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-board:not([style*="transparent"]){
  padding:16px!important;margin:0 auto 16px!important;
  background:var(--v5-panel)!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r)!important;box-shadow:var(--v5-shadow-soft)!important;
  animation:var(--v5-enter) var(--v5-dur-slow) var(--v5-ease) backwards;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-cell.box{background:var(--v5-panel-2)!important;border:1px solid var(--v5-line-2)!important;border-radius:calc(var(--v5-r-sm) / 2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-cell.box input{font-family:var(--cjk)!important;border-radius:inherit!important;box-sizing:border-box!important;padding:6px 0 0 3px!important;}   /* 字母往右下让 3/6px，给左上角 12px 的编号留位 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-cell.box.sel{background:var(--v5-accent-soft)!important;outline:2px solid var(--v5-accent)!important;outline-offset:-2px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-cell.box.given{background:var(--v5-accent-soft)!important;border-color:var(--v5-accent-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-cell.box.wrong,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-cell.box.answer{background:color-mix(in srgb,var(--v5-warn) 14%,var(--v5-panel-2))!important;border-color:color-mix(in srgb,var(--v5-warn) 55%,var(--v5-line-2))!important;}
/* 格角的编号：原来 8px（< 12px 红线）→ 12px；格子在电脑上一般是 34px（主脚本按列数算，封顶 34），字母已往右下让位（见上一条），一位数编号与字母不相交 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-cell .num{top:1px!important;left:2px!important;font:600 12px/1 var(--v5-tech)!important;letter-spacing:-.02em!important;color:var(--v5-ink-3)!important;z-index:1!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-clues{gap:16px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-cluecol{
  padding:16px 18px!important;background:var(--v5-panel)!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r)!important;box-shadow:var(--v5-shadow)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-cluecol h4{margin:0 0 10px!important;font:600 var(--v5-fs-caption)/1.2 var(--cjk)!important;letter-spacing:.08em!important;color:var(--v5-accent-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-clue{font:400 var(--v5-fs-body)/1.6 var(--cjk)!important;color:var(--v5-ink-2)!important;padding:4px 8px!important;border-radius:var(--v5-r-sm)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-clue.sel{background:var(--v5-accent-soft)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage :is(.cw-reveal,.cw-miss-chip,.cw-ans){font-size:var(--v5-fs-caption)!important;border-radius:var(--v5-r-chip)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-reveal{border:1px solid var(--v5-accent-line)!important;background:var(--v5-accent-soft)!important;color:var(--v5-accent-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-miss-chip{border:1px solid var(--v5-line-2)!important;background:var(--v5-panel-2)!important;color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-empty{font:400 var(--v5-fs-body-lg)/1.8 var(--cjk)!important;color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-actions{max-width:520px!important;gap:12px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-btn{
  min-height:var(--v5-btn-h-lg)!important;height:var(--v5-btn-h-lg)!important;padding:0 18px!important;
  border:1px solid var(--v5-line-2)!important;border-radius:var(--v5-r-btn)!important;background:transparent!important;box-shadow:none!important;
  color:var(--v5-ink)!important;font:600 var(--v5-fs-body-lg)/1 var(--cjk)!important;
  transition:transform var(--v5-dur) var(--v5-ease),background-color var(--v5-dur-fast),border-color var(--v5-dur-fast),filter var(--v5-dur-fast)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-btn:hover:not(:disabled){border-color:var(--v5-accent-line)!important;background:var(--v5-accent-soft)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-btn.primary{
  border:0!important;background:var(--v5-accent)!important;background-image:none!important;color:var(--v5-on-accent)!important;
  clip-path:var(--v5-btn-clip);box-shadow:var(--v5-shadow-soft)!important;
  filter:drop-shadow(0 0 calc(12px * var(--v5-glow)) color-mix(in srgb,var(--v5-accent) 45%,transparent));
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-btn.primary:hover:not(:disabled){background:var(--v5-accent)!important;transform:var(--v5-lift)!important;filter:brightness(1.06) drop-shadow(0 0 calc(14px * var(--v5-glow)) color-mix(in srgb,var(--v5-accent) 50%,transparent));}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-btn:active:not(:disabled){transform:var(--v5-press)!important;}
/* 易错本弹窗（填字页里点「易错本」）：卡片皮 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-miss-ov{background:var(--v5-veil)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-miss-card{background:var(--v5-panel)!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r)!important;box-shadow:var(--v5-shadow-soft)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-miss-sub,
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-miss-row span{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-miss-row{font-size:var(--v5-fs-body)!important;border-bottom:1px solid var(--v5-line)!important;}

/* ---- 12b. 像素街机：切角描边面板 / 洋红街机键 / 方格 / EXP 条（DESIGN-PIXEL §3–§4）；数字字体按 V7.0.0 口径 ---- */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#earPage,#crosswordPage) :is(.play-top,.play-foot,.ear-stage,.cw-board:not([style*="transparent"]),.cw-cluecol):not(#_){
  border:0!important;border-radius:0!important;clip-path:var(--v5-btn-clip)!important;
  background:var(--px-corners),var(--v5-panel)!important;box-shadow:var(--px-ol)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#earPage,#crosswordPage) .play-back:not(#_){border:0!important;border-radius:0!important;clip-path:var(--v5-btn-clip)!important;background:var(--v5-panel-2)!important;box-shadow:var(--px-cap)!important;padding-bottom:3px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#earPage,#crosswordPage) .play-back:active:not(#_){box-shadow:inset 0 3px 0 var(--px-hi)!important;padding-bottom:0!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#earPage,#crosswordPage) :is(.ear-eyebrow,.cw-level):not(#_){border-radius:0!important;clip-path:var(--px-clip-xs)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #earPage .ear-eq i:not(#_){border-radius:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #earPage .ear-word:not(#_){font-weight:600!important;font-size:40px!important;letter-spacing:.01em!important;-webkit-font-smoothing:none;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #earPage .ear-prog:not(#_){height:12px!important;padding:3px!important;box-sizing:border-box!important;border-radius:0!important;background:var(--px-exp-empty) content-box,var(--paper-2)!important;box-shadow:var(--px-ol)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #earPage .ear-prog i:not(#_){border-radius:0!important;background:var(--px-exp)!important;transition:width var(--v5-dur) steps(4,end)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #earPage .ear-chip:not(#_){border:0!important;border-radius:0!important;clip-path:var(--v5-btn-clip)!important;background:var(--v5-panel-2)!important;box-shadow:var(--px-cap)!important;padding-bottom:3px!important;}
/* 播放键 = 方形洋红街机键（底部 6px 侧面，按下沉 3px） */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #earPage .ear-play:not(#_){border-radius:0!important;clip-path:var(--v5-btn-clip)!important;filter:none!important;box-shadow:var(--px-key)!important;padding-bottom:6px!important;transition:transform var(--v5-dur-fast) var(--v5-ease)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #earPage .ear-play:hover:not(#_){background:var(--px-face-hover)!important;filter:none!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #earPage .ear-play:active:not(#_){box-shadow:var(--px-key-down)!important;padding-bottom:3px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #earMini.ear-mini:not(#_){border:0!important;border-radius:0!important;clip-path:var(--v5-btn-clip)!important;background:var(--px-corners),var(--v5-panel)!important;box-shadow:var(--px-ol)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #earMini :is(.ear-mini-btn,.ear-mini-main):not(#_){border-radius:0!important;clip-path:var(--v5-btn-clip)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #earMini .ear-mini-ring circle:not(#_){stroke-linecap:butt!important;shape-rendering:crispEdges;}
/* 填字：方格（0 圆角）、选中 = 洋红描边格、提示行选中 = 洋红块；按钮 = 洋红街机键 / 次键 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #crosswordPage .cw-cell.box:not(#_){border:0!important;border-radius:0!important;box-shadow:inset 0 0 0 2px var(--line-strong)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #crosswordPage .cw-cell.box.sel:not(#_){outline:0!important;box-shadow:inset 0 0 0 3px var(--accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #crosswordPage .cw-cell.box input:not(#_){font-family:var(--px-sys)!important;font-weight:700!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #crosswordPage .cw-clue:not(#_){border-radius:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #crosswordPage :is(.cw-reveal,.cw-miss-chip,.cw-ans):not(#_){border:0!important;border-radius:0!important;clip-path:var(--px-clip-xs)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #crosswordPage .cw-btn:not(#_){border:0!important;border-radius:0!important;clip-path:var(--v5-btn-clip)!important;background:var(--v5-panel-2)!important;box-shadow:var(--px-cap)!important;padding-bottom:3px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #crosswordPage .cw-btn:active:not(:disabled):not(#_){transform:none!important;box-shadow:inset 0 3px 0 var(--px-hi)!important;padding-bottom:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #crosswordPage .cw-btn.primary:not(#_){background:var(--v5-accent)!important;color:var(--v5-on-accent)!important;filter:none!important;box-shadow:var(--px-key)!important;padding-bottom:6px!important;font-weight:700!important;letter-spacing:.04em!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #crosswordPage .cw-btn.primary:hover:not(:disabled):not(#_){background:var(--px-face-hover)!important;transform:none!important;filter:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #crosswordPage .cw-btn.primary:active:not(:disabled):not(#_){box-shadow:var(--px-key-down)!important;padding-bottom:3px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #crosswordPage .cw-miss-card:not(#_){border:0!important;border-radius:0!important;clip-path:var(--v5-hero-clip)!important;background:var(--px-corners),var(--v5-panel)!important;box-shadow:var(--px-ol)!important;}
@media(prefers-reduced-motion:reduce){
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-stage,
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #crosswordPage .cw-board{animation:none!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body #earPage .ear-stage.playing .ear-eq i{animation:none!important;}
}
}

/* ==================== 13. 可读性底线（V7.0.0 顺查，所有主题，电脑 ≥769）====================
   统计页双环里「已掌握」「120 / 320 词」两行：19 号 SVG 写的是 14 个单位，环画成 240px（≤1279）/ 280px（≥1280）后
   只有 8.8 / 10.3px（< 12px 红线）→ 19 个单位 = 12 / 14px。行距（两行基线差 22 个单位）放得下。 */
@media(min-width:769px){
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .wsv5p-ring svg>text:nth-of-type(n+2){font-size:19px!important;}
/* 课堂页（lectures.css）的三级小字用裸 --ink-faint：Due today / Next 14 days / 配额 / 预测表日期在纸墨浅 3.46、极简浅 3.81、猫卷 3.89、纸墨深 3.70（< 4.5，平板与电脑同样）
   → 换成 V5 按主题实测过的三级字 --v5-ink-3；只改颜色，字号 / 字重 / 布局不动 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lectures :is(.lx-quota,.lx-label,.lx-fc-col):not(#_){color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-lectures .lx-fc-col b:not(#_){color:var(--v5-ink-2)!important;}
}

/* ==================== 14. 课堂页 · 像素街机（电脑 ≥769，V7.0.0）====================
   课堂页（lectures.css）只走主题令牌，各主题下本来就跟着换色；像素街机要的是「形」：切角描边面板 / 洋红街机键 / 分格 EXP 条 / 街机大数字。
   原来这套只在 26 号 Part B（新版 + 769–1099）里有，Part B 删掉后由这里接住，并且 ≥1100 也一样（以前 ≥1100 反而没有）。只换皮，课堂逻辑一个不碰。 */
@media(min-width:769px){
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures :is(.lx-card,.lx-course:not(.add),.lx-qcard,.lx-rcard,.lx-session):not(#_){
  border:0!important;border-radius:0!important;clip-path:var(--v5-btn-clip)!important;
  background:var(--px-corners),var(--v5-panel)!important;box-shadow:var(--px-ol)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures .lx-course.add:not(#_){border:3px dashed var(--line-strong)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures .lx-btn:not(#_){border:0!important;border-radius:0!important;clip-path:var(--v5-btn-clip)!important;background:var(--v5-panel-2)!important;box-shadow:var(--px-cap)!important;padding-bottom:12px!important;transition:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures .lx-btn:active:not(#_){box-shadow:inset 0 3px 0 var(--px-hi)!important;transform:translateY(3px)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures .lx-btn.primary:not(#_){background:var(--accent)!important;color:var(--on-accent)!important;box-shadow:var(--px-key)!important;font-weight:700!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures .lx-btn.primary:hover:not(#_){background:var(--px-face-hover)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures .lx-btn.primary:active:not(#_){box-shadow:var(--px-key-down)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures .lx-btn.rate.got:not(#_){color:var(--ok)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures .lx-btn.rate.fuzzy:not(#_){color:var(--amber)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures :is(.lx-btn.rate.forgot,.lx-btn.lx-danger):not(#_){color:var(--terra)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures :is(.lx-chip,.lx-badge):not(#_){border:0!important;border-radius:0!important;clip-path:var(--px-clip-xs)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures .lx-bar:not(#_){height:12px!important;padding:3px!important;box-sizing:border-box!important;border-radius:0!important;background:var(--px-exp-empty) content-box,var(--paper-2)!important;box-shadow:inset 0 0 0 3px var(--line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures .lx-bar i:not(#_){border-radius:0!important;background:var(--px-exp)!important;}
/* 「今天到期」大数字 = 街机大字（32，Press Start 2P 只取 16 / 24 / 32） */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures .lx-due-n:not(#_){font-family:var(--px-num)!important;font-weight:400!important;font-size:32px!important;line-height:1.2!important;letter-spacing:0!important;word-spacing:-.5em!important;color:var(--accent)!important;-webkit-font-smoothing:none;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures :is(input,textarea,select):not(#_){border-radius:0!important;}
@media(prefers-reduced-motion:reduce){
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-lectures .lx-btn:active:not(#_){transform:none!important;}
}
}

/* ============================================================================
 * S / F. 海盐汽水 soda · 森林书屋 forest（V7.0.0 新旗舰，release-packages/v7-themes/DESIGN-SODA-FOREST.md §3.3 / §3.5 / §3.7）
 * 令牌与 --sd-* / --fs-* 配方在 16 号第 1 / 1.6 节；每一条都挂 [data-theme="soda"|"forest"]，别的主题一个像素不变。
 * 普通面板本来就吃 --v5-r / --v5-shadow-soft（汽水 18 + 玻璃上沿高光、森林 10），这里只补按键 / 芯片 / 分段 / 进度 / 图表与完成页。
 * ==========================================================================*/

/* ==================== S1 / F1. 完成页（不挂 media：桌面与手机 V5 所有宽度共用） ==================== */
@media all{
/* ---- 汽水：完成章 = 一枚苏打蓝皇冠瓶盖（✦ 就是盖上的标），「啵」地弹开落定；两层气泡从卡底往上飘（各一次） ---- */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on #studyBody .done:not(#_){position:relative!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on #studyBody .done .seal:not(#_){
  width:112px!important;height:112px!important;border-radius:50%!important;
  background:var(--accent)!important;color:var(--on-accent)!important;font:700 40px/1 var(--v5-word)!important;text-shadow:none!important;
  -webkit-mask:var(--sd-cap-solid) center/100% 100% no-repeat;mask:var(--sd-cap-solid) center/100% 100% no-repeat;
  box-shadow:inset 0 0 0 10px color-mix(in srgb,var(--accent) 84%,var(--ink)),inset 0 0 0 12px color-mix(in srgb,var(--on-accent) 30%,transparent)!important;
  animation:v5sd-cap-pop .9s var(--v5-ease) .15s both!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on #studyBody .done .seal:not(#_)::before,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on #studyBody .done .seal:not(#_)::after{content:none!important;display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on #studyBody .done:not(#_)::before,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on #studyBody .done:not(#_)::after{content:""!important;display:block!important;position:absolute!important;left:0;right:0;bottom:0;height:100%;pointer-events:none!important;opacity:0;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on #studyBody .done:not(#_)::before{
  background:radial-gradient(circle at 14% 96%,color-mix(in srgb,var(--fizz) 26%,transparent) 0 6px,var(--sd-ring) 6px 7.4px,transparent 8px),
             radial-gradient(circle at 31% 99%,color-mix(in srgb,var(--fizz) 26%,transparent) 0 3.5px,var(--sd-ring) 3.5px 4.8px,transparent 5.4px),
             radial-gradient(circle at 57% 97%,color-mix(in srgb,var(--fizz) 26%,transparent) 0 8px,var(--sd-ring) 8px 9.4px,transparent 10px),
             radial-gradient(circle at 78% 98%,color-mix(in srgb,var(--fizz) 26%,transparent) 0 4.5px,var(--sd-ring) 4.5px 5.9px,transparent 6.5px),
             radial-gradient(circle at 92% 95%,color-mix(in srgb,var(--fizz) 26%,transparent) 0 3px,var(--sd-ring) 3px 4.3px,transparent 4.9px)!important;
  animation:v5sd-rise 2.4s cubic-bezier(.3,.6,.35,1) .25s 1 both!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on #studyBody .done:not(#_)::after{
  background:radial-gradient(circle at 22% 99%,color-mix(in srgb,var(--fizz) 26%,transparent) 0 4px,var(--sd-ring) 4px 5.3px,transparent 5.9px),
             radial-gradient(circle at 45% 96%,color-mix(in srgb,var(--fizz) 26%,transparent) 0 2.6px,var(--sd-ring) 2.6px 3.8px,transparent 4.4px),
             radial-gradient(circle at 68% 99%,color-mix(in srgb,var(--fizz) 26%,transparent) 0 5.5px,var(--sd-ring) 5.5px 6.9px,transparent 7.5px),
             radial-gradient(circle at 86% 97%,color-mix(in srgb,var(--fizz) 26%,transparent) 0 2.4px,var(--sd-ring) 2.4px 3.6px,transparent 4.2px)!important;
  animation:v5sd-rise-b 3s cubic-bezier(.3,.6,.35,1) .55s 1 both!important;}
/* 这一轮背完但今天没全部完成：瓶盖照弹、只飘一层（比全部完成克制一档，不虚报） */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on:not(:has(#studyFoot #doneEarBtn)) #studyBody .done:not(#_)::after{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on #studyBody .done>div:not(.seal):not(#_){box-shadow:var(--sd-hi)!important;border-color:color-mix(in srgb,var(--line) 85%,transparent)!important;border-radius:var(--v5-r-sm)!important;}

/* ---- 森林：上一页翻过去 + 三片落叶；完成章 = 淡叶底圆章 + 中间一片叶 ---- */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done:not(#_){position:relative!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done:not(#_)::before{
  content:""!important;display:block!important;position:absolute!important;inset:-1px;z-index:4;pointer-events:none!important;border-radius:12px;
  transform-origin:0 50%;backface-visibility:visible;box-shadow:0 1px 0 var(--line-strong);
  background:linear-gradient(90deg,color-mix(in srgb,var(--wood-deep) 14%,transparent),transparent 9%),
             repeating-linear-gradient(180deg,transparent 0 27px,color-mix(in srgb,var(--accent) 12%,transparent) 27px 28px),var(--card-strong)!important;
  animation:v5fs-flip 1.05s cubic-bezier(.45,.05,.25,1) .1s 1 both!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done .seal:not(#_){
  width:112px!important;height:112px!important;border-radius:50%!important;font-size:0!important;color:transparent!important;text-shadow:none!important;
  background:color-mix(in srgb,var(--leaf) 16%,var(--card))!important;
  box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent) 70%,var(--card)),inset 0 0 0 7px color-mix(in srgb,var(--leaf) 16%,var(--card)),inset 0 0 0 8px color-mix(in srgb,var(--accent) 35%,transparent)!important;
  animation:v5fs-seal .6s var(--v5-ease) .75s both!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done .seal:not(#_)::before{
  content:""!important;display:block!important;position:absolute!important;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border:0!important;border-radius:0!important;
  background:var(--accent)!important;transform:rotate(8deg);opacity:1!important;animation:none!important;
  -webkit-mask:var(--fs-leaf) center/contain no-repeat;mask:var(--fs-leaf) center/contain no-repeat;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done .seal:not(#_)::after{content:none!important;display:none!important;}
/* 三片叶：.done::after + h2::before + h2::after（h2 不定位 → 以 .done 为参照）；贴两侧走，不划过中间的按钮 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done:not(#_)::after,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done h2:not(#_)::before,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done h2:not(#_)::after{
  content:""!important;display:block!important;position:absolute!important;top:0;width:22px;height:22px;pointer-events:none!important;opacity:0;
  -webkit-mask:var(--fs-leaf) center/contain no-repeat;mask:var(--fs-leaf) center/contain no-repeat;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done:not(#_)::after{left:7%;background:var(--leaf);animation:v5fs-fall-a 2.6s cubic-bezier(.4,.1,.5,1) .9s 1 both!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done h2:not(#_)::before{left:86%;width:18px;height:18px;background:var(--accent);animation:v5fs-fall-b 3s cubic-bezier(.4,.1,.5,1) 1.15s 1 both!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done h2:not(#_)::after{left:74%;width:16px;height:16px;background:var(--amber);animation:v5fs-fall-a 2.8s cubic-bezier(.4,.1,.5,1) 1.5s 1 both!important;}
/* 这一轮背完但今天没全部完成：只翻页、不落叶 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on:not(:has(#studyFoot #doneEarBtn)) #studyBody .done:not(#_)::after,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on:not(:has(#studyFoot #doneEarBtn)) #studyBody .done h2:not(#_)::before,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on:not(:has(#studyFoot #doneEarBtn)) #studyBody .done h2:not(#_)::after{display:none!important;}
/* 完成页的附加块（成就 / 游客注册）= 书页 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done>div:not(.seal):not(#_){box-shadow:var(--fs-pages)!important;border-radius:var(--v5-r-sm)!important;}
/* 完成页的次按钮（磨耳朵 / 单词填字）：汽水 = 玻璃胶囊；森林 = 原木牌 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on #studyFoot :is(#doneEarBtn,#doneCwBtn,#doneBedBtn):not(#_){border:0!important;border-radius:999px!important;background:var(--sd-glass)!important;box-shadow:inset 0 0 0 1px var(--sd-glass-line),var(--sd-hi)!important;color:var(--v5-accent-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on #studyFoot :is(#doneEarBtn,#doneCwBtn,#doneBedBtn):hover:not(#_){background:color-mix(in srgb,var(--accent) 10%,var(--card))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyFoot :is(#doneEarBtn,#doneCwBtn,#doneBedBtn):not(#_){border:0!important;border-radius:8px!important;background:var(--fs-grain),var(--fs-wood-face)!important;box-shadow:var(--fs-plank)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyFoot :is(#doneEarBtn,#doneCwBtn,#doneBedBtn):hover:not(#_){background:var(--fs-grain),color-mix(in srgb,var(--wood) 40%,var(--card))!important;}
@media(prefers-reduced-motion:reduce){
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on #studyBody .done .seal:not(#_),
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done .seal:not(#_){animation:none!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on #studyBody .done:not(#_)::before,
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #study.on #studyBody .done:not(#_)::after,
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done:not(#_)::before,
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done:not(#_)::after,
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done h2:not(#_)::before,
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #study.on #studyBody .done h2:not(#_)::after{display:none!important;animation:none!important;}
}
}

@media(min-width:769px){
/* ==================== S2 / F2. 面板：汽水玻璃（令牌已给圆角 18 + 上沿高光，这里只把线放淡）；森林书页（页内主卡两层叠页） ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #view-plan :is(.plan-metric-grid,.plan-panel,.plan-actions-bar):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #view-lib>.card:not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #view-stats :is(.stats-overview-grid,.stats-panel,.wsv5p-herostat):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #view-achievements :is(.ach-summary-grid,.ach-controls,.ach-card):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #view-account :is(.account-profile-card,.account-box,.app-icon-panel):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #view-settings :is(.settings-subnav,.settings-card,.settings-bottom-bar):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #view-records :is(.hardbook-stat,.hardbook-side,.hardbook-insight,.hardbook-main):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body .wsv5p-card:not(#_){border-color:color-mix(in srgb,var(--line) 85%,transparent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-plan :is(.plan-panel,.plan-actions-bar):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-plan .plan-hero .wsv5p-curve:not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-lib>.card:not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-stats :is(.stats-panel,.wsv5p-herostat):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-achievements :is(.ach-summary-grid,.ach-controls):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-account :is(.account-profile-card,.account-box,.app-icon-panel):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-settings .settings-card:not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-records :is(.hardbook-side,.hardbook-insight,.hardbook-main):not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body .wsv5p-card:not(#_){box-shadow:var(--fs-pages),var(--v5-shadow)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-lib .book-card.active:not(#_){box-shadow:var(--fs-pages),inset 0 0 0 1.5px var(--accent)!important;}
/* 设置分类轨：森林 = 书架柱（顺纹原木色）；选中 = 叶绿书签 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-settings .settings-subnav:not(#_){background:var(--fs-grain),color-mix(in srgb,var(--paper-2) 80%,var(--wood))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-settings .settings-subnav button.active:not(#_){background:color-mix(in srgb,var(--accent) 20%,var(--card))!important;color:var(--v5-ink)!important;box-shadow:inset 3px 0 0 var(--accent)!important;border-radius:4px 0 0 4px!important;clip-path:var(--fs-ribbon-clip)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #view-settings .settings-subnav button.active:not(#_){border-radius:999px!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent)!important;}

/* ==================== S3 / F3. 按键：页主键 = 汽水泡胶囊 / 叶绿木牌；次键 = 玻璃胶囊 / 原木牌 ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body :is(#view-plan .plan-actions-bar #planStartBtn,#view-settings .settings-bottom-bar button.primary,#earPage .ear-play,#crosswordPage .cw-btn.primary):not(#_){background:var(--sd-gloss),var(--v5-accent)!important;box-shadow:var(--sd-key)!important;filter:none!important;border:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body :is(#view-plan .plan-actions-bar #planStartBtn,#view-settings .settings-bottom-bar button.primary,#earPage .ear-play,#crosswordPage .cw-btn.primary):hover:not(#_){background:var(--sd-gloss),color-mix(in srgb,var(--v5-accent) 90%,var(--ink))!important;filter:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-plan .plan-actions-bar #planStartBtn,#view-settings .settings-bottom-bar button.primary,#crosswordPage .cw-btn.primary):not(#_){background:var(--fs-grain-on),var(--v5-accent)!important;box-shadow:var(--fs-key)!important;filter:none!important;border:0!important;border-radius:8px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #earPage .ear-play:not(#_){background:var(--fs-grain-on),var(--v5-accent)!important;box-shadow:var(--fs-key)!important;filter:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-plan .plan-actions-bar #planStartBtn,#view-settings .settings-bottom-bar button.primary,#earPage .ear-play,#crosswordPage .cw-btn.primary):hover:not(#_){background:var(--fs-grain-on),color-mix(in srgb,var(--v5-accent) 90%,var(--ink))!important;filter:none!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-plan .plan-actions-bar #planStartBtn,#view-settings .settings-bottom-bar button.primary,#earPage .ear-play,#crosswordPage .cw-btn.primary):active:not(#_){box-shadow:var(--fs-key-down)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body :is(#view-account .account-box .btn,#view-account .api-config .btn,#view-lib .setrow .btn,#view-lib .btnrow .btn,#view-lib .study-settings-actions .btn,#view-stats .stats-export-btn,#view-settings .settings-primary-btn,#view-settings .settings-soft-btn,#view-settings .settings-study-actions .btn,#view-settings .settings-bottom-bar button:not(.primary),#view-plan .plan-actions-bar #planResetBtn,#view-plan .plan-actions-bar #planSaveBtn,#view-plan .plan-detail-card>button,#view-lib .mobile-import-entry,#view-lib .book-actions button,#view-settings .settings-stepper-controls button,#crosswordPage .cw-btn:not(.primary),:is(#earPage,#crosswordPage) .play-back):not(#_){
  border:0!important;background:var(--sd-glass)!important;box-shadow:inset 0 0 0 1px var(--sd-glass-line),var(--sd-hi)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body :is(#view-account .account-box .btn,#view-account .api-config .btn,#view-lib .setrow .btn,#view-lib .btnrow .btn,#view-lib .study-settings-actions .btn,#view-stats .stats-export-btn,#view-settings .settings-primary-btn,#view-settings .settings-soft-btn,#view-settings .settings-study-actions .btn,#view-settings .settings-bottom-bar button:not(.primary),#view-plan .plan-actions-bar #planResetBtn,#view-plan .plan-actions-bar #planSaveBtn,#view-plan .plan-detail-card>button,#view-lib .mobile-import-entry,#view-lib .book-actions button,#view-settings .settings-stepper-controls button,#crosswordPage .cw-btn:not(.primary),:is(#earPage,#crosswordPage) .play-back):hover:not(#_){background:color-mix(in srgb,var(--accent) 10%,var(--card))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-account .account-box .btn,#view-account .api-config .btn,#view-lib .setrow .btn,#view-lib .btnrow .btn,#view-lib .study-settings-actions .btn,#view-stats .stats-export-btn,#view-settings .settings-primary-btn,#view-settings .settings-soft-btn,#view-settings .settings-study-actions .btn,#view-settings .settings-bottom-bar button:not(.primary),#view-plan .plan-actions-bar #planResetBtn,#view-plan .plan-actions-bar #planSaveBtn,#view-plan .plan-detail-card>button,#view-lib .mobile-import-entry,#view-lib .book-actions button,#view-settings .settings-stepper-controls button,#crosswordPage .cw-btn:not(.primary),:is(#earPage,#crosswordPage) .play-back):not(#_){
  border:0!important;border-radius:8px!important;background:var(--fs-grain),var(--fs-wood-face)!important;box-shadow:var(--fs-plank)!important;color:var(--v5-ink)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-account .account-box .btn,#view-account .api-config .btn,#view-lib .setrow .btn,#view-lib .btnrow .btn,#view-lib .study-settings-actions .btn,#view-stats .stats-export-btn,#view-settings .settings-primary-btn,#view-settings .settings-soft-btn,#view-settings .settings-study-actions .btn,#view-settings .settings-bottom-bar button:not(.primary),#view-plan .plan-actions-bar #planResetBtn,#view-plan .plan-actions-bar #planSaveBtn,#view-plan .plan-detail-card>button,#view-lib .mobile-import-entry,#view-lib .book-actions button,#view-settings .settings-stepper-controls button,#crosswordPage .cw-btn:not(.primary),:is(#earPage,#crosswordPage) .play-back):hover:not(#_){background:var(--fs-grain),color-mix(in srgb,var(--wood) 40%,var(--card))!important;transform:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-lib .btn.danger,#view-plan .plan-actions-bar #planResetBtn):not(#_){box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--terra) 55%,var(--wood-deep)),inset 0 0 0 1px color-mix(in srgb,var(--terra) 30%,transparent)!important;}

/* ==================== S4 / F4. 芯片 / 分段 / 设置分类 ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body :is(.wsv5p-chip,#view-lib .lib-chip,#view-stats .stats-range-tabs button,#view-achievements .ach-chip-row button,#view-achievements .ach-pill,#view-lib .lib-scope-btn,#earPage .ear-chip):not(#_){
  border:0!important;border-radius:999px!important;background:var(--sd-glass)!important;box-shadow:inset 0 0 0 1px var(--sd-glass-line),var(--sd-hi)!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body :is(#view-lib .lib-chip.on,#view-stats .stats-range-tabs button.active,#view-achievements .ach-chip-row button.active,#view-lib .lib-scope-btn.on):not(#_){background:var(--accent-soft)!important;color:var(--v5-accent-ink)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 30%,var(--line)),var(--sd-hi)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body :is(#view-settings .settings-segment,#view-settings .wsv5p-uiseg):not(#_){border:0!important;border-radius:999px!important;background:var(--paper-2)!important;box-shadow:inset 0 1px 2px color-mix(in srgb,var(--ink) 8%,transparent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body :is(#view-settings .settings-segment button.active,#view-settings .wsv5p-uiseg button.on):not(#_){background:var(--card)!important;color:var(--v5-accent-ink)!important;box-shadow:var(--sd-hi),0 2px 6px -2px color-mix(in srgb,var(--accent) 40%,transparent)!important;border-radius:999px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(.wsv5p-chip,#view-lib .lib-chip,#view-stats .stats-range-tabs button,#view-achievements .ach-chip-row button,#view-achievements .ach-pill,#view-lib .lib-scope-btn,#earPage .ear-chip):not(#_){
  border:0!important;border-radius:4px 0 0 4px!important;background:var(--fs-bookmark)!important;clip-path:var(--fs-ribbon-clip)!important;padding-right:18px!important;box-shadow:none!important;transform:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(.wsv5p-chip,#view-lib .lib-chip,#view-stats .stats-range-tabs button,#view-achievements .ach-chip-row button,#view-lib .lib-scope-btn):hover:not(#_){background:color-mix(in srgb,var(--accent) 20%,var(--card))!important;}
/* 选中 = 叶绿书签：淡叶绿书签面 + 左缘 3px 叶绿 + 墨字（不做整颗叶绿实心：「一屏一个 accent 填充块」只留给页主键，量化门 accentFillsLE1） */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-lib .lib-chip.on,#view-stats .stats-range-tabs button.active,#view-achievements .ach-chip-row button.active,#view-lib .lib-scope-btn.on):not(#_){background:color-mix(in srgb,var(--accent) 20%,var(--card))!important;color:var(--v5-ink)!important;box-shadow:inset 3px 0 0 var(--accent)!important;font-weight:600!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-lib .lib-chip.on,#view-stats .stats-range-tabs button.active,#view-achievements .ach-chip-row button.active,#view-lib .lib-scope-btn.on) *:not(#_){color:inherit!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-settings .settings-segment,#view-settings .wsv5p-uiseg):not(#_){border:0!important;border-radius:6px!important;background:var(--paper-2)!important;box-shadow:inset 0 1px 2px color-mix(in srgb,var(--wood-deep) 22%,transparent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-settings .settings-segment button.active,#view-settings .wsv5p-uiseg button.on):not(#_){background:var(--fs-grain),var(--fs-wood-face)!important;color:var(--v5-ink)!important;box-shadow:var(--fs-plank)!important;border-radius:4px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-settings :is(.settings-theme-card,.settings-icon-card).active:not(#_){box-shadow:var(--fs-pages),inset 0 0 0 1.5px var(--accent)!important;}

/* ==================== S5 / F5. 计划页指标小条（其余进度条家族在 16 号第 9 / 10 节） ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #view-plan .plan-metric-card i:not(#_){height:10px!important;border-radius:999px!important;overflow:hidden!important;background:var(--paper-2)!important;box-shadow:inset 0 1px 2px color-mix(in srgb,var(--ink) 10%,transparent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #view-plan .plan-metric-card i>span:not(#_){display:block!important;height:100%!important;border-radius:0!important;background:var(--sd-liquid)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-plan .plan-metric-card i:not(#_){height:12px!important;border-radius:6px!important;overflow:visible!important;background:var(--fs-groove)!important;box-shadow:inset 0 1px 2px color-mix(in srgb,var(--wood-deep) 22%,transparent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-plan .plan-metric-card i>span:not(#_){position:relative!important;display:block!important;height:100%!important;background:none!important;border-radius:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-plan .plan-metric-card i>span:not(#_)::before{content:"";position:absolute;inset:0;background:var(--accent);-webkit-mask:var(--fs-vine) 0 50%/24px 12px repeat-x;mask:var(--fs-vine) 0 50%/24px 12px repeat-x;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #earPage .ear-prog:not(#_){height:10px!important;background:var(--paper-2)!important;overflow:hidden!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #earPage .ear-prog i:not(#_){background:var(--sd-liquid)!important;border-radius:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #earPage .ear-prog:not(#_){height:14px!important;border-radius:7px!important;background:var(--fs-groove)!important;overflow:visible!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #earPage .ear-prog i:not(#_){position:relative!important;display:block!important;background:none!important;border-radius:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #earPage .ear-prog i:not(#_)::before{content:"";position:absolute;inset:0;background:var(--accent);-webkit-mask:var(--fs-vine) 0 50%/28px 14px repeat-x;mask:var(--fs-vine) 0 50%/28px 14px repeat-x;}
/* 成就页 .ach-progress / 统计页 .stats-mini-bar（V7.0.0 第三轮 · 第二轮核查 #4）：本文件 2.4 节的基础规则带 #view-achievements / #view-stats 且 !important，
   压过了 16 号第 9 / 10 节不带 id 的进度条家族 → 这两根在汽水 / 森林下是 6px 实色条（§3.1 要求全部套上）。这里照 16 号同一份配方补回（:not(#_) 抬过基础规则）；
   前沿小波 / 藤尖嫩叶的动画只在 no-preference 里声明（reduce 下波形静止、嫩叶直接展开）。 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body :is(#view-achievements .ach-progress,#view-stats .stats-mini-bar):not(#_){height:10px!important;border-radius:999px!important;overflow:hidden!important;background:var(--paper-2)!important;box-shadow:inset 0 1px 2px color-mix(in srgb,var(--ink) 10%,transparent)!important;border:0!important;padding:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body :is(#view-achievements .ach-progress,#view-stats .stats-mini-bar)>i:not(#_){position:relative!important;display:block!important;height:100%!important;overflow:visible!important;border-radius:0!important;background:var(--sd-liquid)!important;box-shadow:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body :is(#view-achievements .ach-progress,#view-stats .stats-mini-bar)>i:not(#_)::before{content:""!important;display:block!important;position:absolute!important;left:0!important;right:0!important;top:1px!important;height:2px!important;border-radius:2px!important;background:color-mix(in srgb,var(--card) 38%,transparent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body :is(#view-achievements .ach-progress,#view-stats .stats-mini-bar)>i:not(#_)::after{content:""!important;display:block!important;position:absolute!important;left:100%!important;right:auto!important;top:-16px!important;bottom:-16px!important;width:6px!important;height:auto!important;margin:0!important;
  background:var(--accent)!important;border:0!important;border-radius:0!important;box-shadow:none!important;opacity:1!important;-webkit-mask:var(--sd-wave-v) 0 0/6px 16px repeat-y!important;mask:var(--sd-wave-v) 0 0/6px 16px repeat-y!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body :is(#view-achievements .ach-progress,#view-stats .stats-mini-bar)>i:is([style*="width: 0"],[style*="width:0"]):not(#_)::after{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-achievements .ach-progress,#view-stats .stats-mini-bar):not(#_){height:14px!important;border-radius:7px!important;overflow:visible!important;background:var(--fs-groove)!important;box-shadow:inset 0 1px 2px color-mix(in srgb,var(--wood-deep) 22%,transparent)!important;border:0!important;padding:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-achievements .ach-progress,#view-stats .stats-mini-bar)>i:not(#_){position:relative!important;display:block!important;height:100%!important;overflow:visible!important;border-radius:0!important;background:none!important;box-shadow:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-achievements .ach-progress,#view-stats .stats-mini-bar)>i:not(#_)::before{content:""!important;display:block!important;position:absolute!important;inset:0!important;background:var(--accent)!important;border-radius:0!important;-webkit-mask:var(--fs-vine) 0 50%/28px 14px repeat-x!important;mask:var(--fs-vine) 0 50%/28px 14px repeat-x!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-achievements .ach-progress,#view-stats .stats-mini-bar)>i:not(#_)::after{content:""!important;display:block!important;position:absolute!important;left:calc(100% - 3px)!important;right:auto!important;top:50%!important;bottom:auto!important;width:13px!important;height:13px!important;margin:-10px 0 0!important;
  background:var(--leaf)!important;border:0!important;border-radius:0!important;box-shadow:none!important;opacity:1!important;-webkit-mask:var(--fs-leaf) center/contain no-repeat!important;mask:var(--fs-leaf) center/contain no-repeat!important;transform-origin:0 100%;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-achievements .ach-progress,#view-stats .stats-mini-bar)>i:is([style*="width: 0"],[style*="width:0"],[style*="width: 1%"],[style*="width:1%"],[style*="width: 2%"],[style*="width:2%"]):not(#_)::after{display:none!important;}
@media(prefers-reduced-motion:no-preference){
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body :is(#view-achievements .ach-progress,#view-stats .stats-mini-bar)>i:not(#_)::after{animation:v5sd-slosh 1.2s linear 2!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body :is(#view-achievements .ach-progress,#view-stats .stats-mini-bar)>i:not(#_)::after{animation:v5fs-unfurl .7s var(--v5-ease) both!important;}
}

/* ==================== S6 / F6. 我的 / 成就：头像、等级徽章 ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #view-account .avatar-preview:not(#_){box-shadow:0 0 0 2px var(--card),0 0 0 3.5px var(--sd-ring)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-account .avatar-preview:not(#_){border-radius:10px!important;box-shadow:inset 0 -2px 0 var(--fs-wood-edge),0 0 0 2px var(--fs-wood-face)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-account .avatar-preview img:not(#_){border-radius:10px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body .wsv5p-lv .wsv5p-hex:not(#_){border-radius:50%!important;clip-path:none!important;background:var(--accent-soft)!important;box-shadow:inset 0 0 0 1.5px var(--sd-ring),var(--sd-hi)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body .wsv5p-lv .wsv5p-hex:not(#_){border-radius:8px!important;clip-path:none!important;background:var(--fs-grain),var(--fs-wood-face)!important;box-shadow:var(--fs-plank)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body .wsv5p-lv .wsv5p-hex span:not(#_){color:var(--v5-ink)!important;}

/* ==================== S7 / F7. 统计图（§3.7）：折线 2px；汽水面积 = 苏打蓝竖向渐变（液体感）；森林数据点只在悬停点 ==================== */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #view-stats .stats-chart .line-words:not(#_),
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #view-stats .stats-chart .line-words:not(#_){stroke-width:2!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body #view-stats .stats-chart :is(.area,.area-words,.chart-area):not(#_){fill:color-mix(in srgb,var(--accent) 18%,transparent)!important;}
}

/* ==================== PK 第二批（V7.0.0，新版电脑 ≥769）：「我的」页单词 PK 卡 / 天梯页签 / 名片 ====================
   卡由 19 号 mountPkMe 注入（.wsv5p-pkme）；天梯 #wsPkLadder 的 DOM 由 main 在 04 / index.html 生成，这里只穿新版皮（名片 #wsPkCard 的皮归 22 / 23）。 */
@media(min-width:769px){
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-pkme{display:flex!important;flex-direction:column!important;gap:14px!important;padding:18px 20px!important;margin:0 0 16px!important;grid-column:1 / -1!important;}
html.ws-v5 .wsv5p-pkme .wsv5p-ph{margin:0!important;}
html.ws-v5 .wsv5p-pkme-main{display:flex;align-items:center;gap:16px;min-width:0;}
html.ws-v5 .wsv5p-pkme-main>.ws-pk-badge{flex:none;}
html.ws-v5 .wsv5p-pkme-rank{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:8px;}
html.ws-v5 .wsv5p-pkme-rank>b{font:700 var(--v5-fs-section)/1.2 var(--cjk);color:var(--v5-ink);}
html.ws-v5 .wsv5p-pkme-rank>small{font:500 var(--v5-fs-caption)/1.4 var(--v5-tech);color:var(--v5-ink-3);font-variant-numeric:tabular-nums;}
html.ws-v5 .wsv5p-pkme-rank .wsv5p-bar{width:100%;max-width:420px;height:6px;border-radius:var(--v5-r-pill);background:var(--v5-line);overflow:hidden;}
html.ws-v5 .wsv5p-pkme-rank .wsv5p-bar>i{display:block;height:100%;border-radius:inherit;background:var(--v5-accent);}
html.ws-v5 .wsv5p-pkme-acts{flex:none;display:flex;align-items:center;gap:6px;}
html.ws-v5 .wsv5p-pkme-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-top:1px solid var(--v5-line);padding-top:12px;}
html.ws-v5 .wsv5p-pkme-stats .wsv5p-pkcell{display:flex;flex-direction:column;gap:4px;min-width:0;padding:0 14px;border-left:1px solid var(--v5-line);}
html.ws-v5 .wsv5p-pkme-stats .wsv5p-pkcell:first-child{padding-left:0;border-left:0;}
html.ws-v5 .wsv5p-pkme-stats .wsv5p-pkcell>span{font:500 var(--v5-fs-caption)/1.3 var(--cjk);color:var(--v5-ink-3);}
html.ws-v5 .wsv5p-pkme-stats .wsv5p-pkcell>b{display:flex;align-items:center;gap:6px;min-width:0;font:700 var(--v5-fs-title)/1.25 var(--v5-tech);color:var(--v5-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums;}
html.ws-v5 .wsv5p-pkme-stats .wsv5p-pkcell>small{font:400 var(--v5-fs-caption)/1.3 var(--cjk);color:var(--v5-ink-3);}
html.ws-v5 .wsv5p-pkme-hist{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;padding-top:10px;border-top:1px solid var(--v5-line);}
html.ws-v5 .wsv5p-pkme-hist .wsv5p-pkhist-k{font:600 var(--v5-fs-caption)/1.3 var(--cjk);color:var(--v5-ink-2);}
html.ws-v5 .wsv5p-pkme-hist>small{font:400 var(--v5-fs-caption)/1.5 var(--cjk);color:var(--v5-ink-3);}
html.ws-v5 .wsv5p-pkme-hist .wsv5p-pkhist-item{display:inline-flex;align-items:center;gap:6px;}
html.ws-v5 .wsv5p-pkme-hist .wsv5p-pkhist-item small{font:500 var(--v5-fs-caption)/1.3 var(--cjk);color:var(--v5-ink-2);}
/* 小段胜点条按主题 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body .wsv5p-pkme-rank .wsv5p-bar:not(#_){height:12px!important;padding:3px!important;box-sizing:border-box!important;border-radius:0!important;background:var(--px-exp-empty) content-box,var(--paper-2)!important;box-shadow:inset 0 0 0 3px var(--line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body .wsv5p-pkme-rank .wsv5p-bar>i:not(#_){border-radius:0!important;background:var(--px-exp)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body .wsv5p-pkme-rank>b:not(#_){font-family:var(--px-num)!important;font-size:24px!important;font-weight:400!important;letter-spacing:0!important;word-spacing:-.4em!important;-webkit-font-smoothing:none;}   /* 「黄金 II」「定级中 3/5」：罗马数字 / 数字走 24px 街机字，汉字自动回落系统字 */
/* 像素：卡里 ≥16px 的数字（场次 / 胜率 / 最长连胜）= 16px 街机字（业主口径，只取 16 / 24 / 32 / 48）；格里的段位徽章自带系统字 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body .wsv5p-pkme-stats .wsv5p-pkcell>b:not(#_){font-family:var(--px-num)!important;font-weight:400!important;font-size:16px!important;letter-spacing:0!important;-webkit-font-smoothing:none;line-height:1.5!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(.wsv5p-pkme-stats,.wsv5p-pkme-hist):not(#_){border-top:3px solid transparent!important;background:var(--v5p-rule,repeating-linear-gradient(90deg,var(--line) 0 3px,transparent 3px 6px)) left top/100% 3px no-repeat!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body .wsv5p-pkme-stats .wsv5p-pkcell:not(:first-child):not(#_){border-left:3px solid transparent!important;background:repeating-linear-gradient(180deg,var(--line) 0 3px,transparent 3px 6px) left top/3px 100% no-repeat border-box!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body .wsv5p-pkme-rank .wsv5p-bar:not(#_){height:10px!important;background:var(--paper-2)!important;box-shadow:inset 0 1px 2px color-mix(in srgb,var(--ink) 10%,transparent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body .wsv5p-pkme-rank .wsv5p-bar>i:not(#_){border-radius:0!important;background:var(--sd-liquid)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body .wsv5p-pkme-rank .wsv5p-bar:not(#_){height:14px!important;border-radius:7px!important;background:var(--fs-groove)!important;overflow:visible!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body .wsv5p-pkme-rank .wsv5p-bar>i:not(#_){position:relative!important;background:none!important;border-radius:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body .wsv5p-pkme-rank .wsv5p-bar>i:not(#_)::before{content:"";position:absolute;inset:0;background:var(--accent);-webkit-mask:var(--fs-vine) 0 50%/28px 14px repeat-x;mask:var(--fs-vine) 0 50%/28px 14px repeat-x;}

/* 天梯（排行榜「单词 PK 天梯」页签）：DOM 与排版（名次 · 头像 · 名字 + 徽章 · 胜点）在 04 / 28 号，这里只换新版的面、线、字色，不改栅格。
   「我」那一行 = 浅强调底；前三名名次用金字；范围切换（全服 / 好友 / 班级）= 新版药丸。 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #wsPkLadder .ws-pk-ladder__row{background:var(--v5-panel)!important;border:1px solid var(--v5-line)!important;border-radius:var(--v5-r-sm)!important;box-shadow:none!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #wsPkLadder .ws-pk-ladder__row[data-me="1"]{background:var(--v5-accent-soft)!important;border-color:var(--v5-accent-line)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #wsPkLadder .ws-pk-ladder__pos{font-family:var(--v5-tech)!important;font-size:var(--v5-fs-body-lg)!important;color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #wsPkLadder .ws-pk-ladder__row.is-top .ws-pk-ladder__pos{color:var(--v5-gold-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #wsPkLadder .ws-pk-ladder__name{font:600 var(--v5-fs-body)/1.35 var(--cjk)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #wsPkLadder .ws-pk-ladder__metag{font-size:var(--v5-fs-caption)!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #wsPkLadder .ws-pk-ladder__lp{font:600 var(--v5-fs-body)/1 var(--v5-tech)!important;color:var(--v5-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body [data-ladder-scope]{border:1px solid var(--v5-line)!important;border-radius:var(--v5-r-chip)!important;background:var(--v5-panel)!important;color:var(--v5-ink-2)!important;box-shadow:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body [data-ladder-scope].active{background:var(--v5-accent-soft)!important;border-color:var(--v5-accent-line)!important;color:var(--v5-accent-ink)!important;font-weight:600!important;}
/* 名片 #wsPkCard（点名字弹出）：V7.0.0 第三轮起皮只归弹层层 22 / 23（名片在所有宽度都是 .v5-dialog），这里原来那组 ≥769 的皮已删，免得两套皮互相压 */
/* 像素 / 汽水 / 森林：天梯「我」的行、范围切换按性格换形 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #wsPkLadder .ws-pk-ladder__row:not(#_){border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;background:var(--v5p-cn),var(--v5-panel)!important;box-shadow:var(--v5p-ring)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #wsPkLadder .ws-pk-ladder__row[data-me="1"]:not(#_){background:var(--v5p-cn-acc),var(--v5-accent-soft)!important;box-shadow:inset 0 0 0 3px var(--accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body [data-ladder-scope]:not(#_){border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;background:var(--v5-panel-2)!important;box-shadow:var(--px-cap)!important;padding-bottom:3px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body [data-ladder-scope].active:not(#_){background:var(--v5-accent)!important;color:var(--v5-on-accent)!important;box-shadow:inset 0 -3px 0 color-mix(in srgb,var(--accent) 55%,var(--paper-2))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body [data-ladder-scope]:not(#_){border:0!important;border-radius:999px!important;background:var(--sd-glass)!important;box-shadow:inset 0 0 0 1px var(--sd-glass-line),var(--sd-hi)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="soda"] body [data-ladder-scope].active:not(#_){background:var(--accent-soft)!important;color:var(--v5-accent-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body [data-ladder-scope]:not(#_){border:0!important;border-radius:4px 0 0 4px!important;background:var(--fs-bookmark)!important;clip-path:var(--fs-ribbon-clip)!important;padding-right:20px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body [data-ladder-scope].active:not(#_){background:var(--accent)!important;color:var(--on-accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="forest"] body #wsPkLadder .ws-pk-ladder__row[data-me="1"]:not(#_){box-shadow:var(--fs-pages)!important;}
}
@media(min-width:769px) and (max-width:1099px){
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-pkme-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;row-gap:12px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-pkme-stats .wsv5p-pkcell:nth-child(4){padding-left:0!important;border-left:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .wsv5p-pkme-main{flex-wrap:wrap!important;}
}

/* ==================== R2. 第一轮核查返修（V7.0.0 第二轮，v5-desktop） ==================== */
@media(min-width:769px){
/* R2-4 设置页「图标切换」卡片的说明小字：站点给的是 10.5px（< 12px 红线），所有宽度统一到 caption 12 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-icon-card small{font-size:var(--v5-fs-caption)!important;line-height:1.4!important;}
/* R2-4「我的」页邀请阶梯每一站的「1 人 / 3 人 / 5 人 / 10 人」：站点给的是 11px（< 12px 红线；原来只有像素主题补到 12），所有主题统一到 caption */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-account .ws-ilad-stops li span{font-size:var(--v5-fs-caption)!important;font-weight:600!important;color:var(--v5-ink-2)!important;}
/* R2-极简：统计页 / 记录页「学习时长」折线的颜色 = 图例色（04 号图例画的是 --ws-chart-2，27 号按主题给了值；原来折线是三级灰虚线，极简下和图例对不上）；
   「学习单词数」折线 = 图例的 --accent。虚线样式保留（区分两条线），只把颜色对齐。 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart .line-words{stroke:var(--accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart .line-minutes{stroke:var(--ws-chart-2,var(--amber))!important;stroke-width:1.6!important;}
/* 数据点也跟图例同色（V7.0.0 第三轮：折线对上了，「学习时长」的圆点还是三级灰） */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart .dot-words{fill:var(--accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart .dot-minutes{fill:var(--ws-chart-2,var(--amber))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD svg .line-words{stroke:var(--accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD svg .line-minutes{stroke:var(--ws-chart-2,var(--amber))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD .wsv5p-lndot.is-words{background:var(--accent)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordsStatsLineD .wsv5p-lndot.is-min{background:var(--ws-chart-2,var(--amber))!important;}
/* R2-6① 像素完成页句子里的数字（「今天完成 30 个词」的 30，渲染 17px）：业主口径「≥16px 的数字 = Press Start 2P」→ 16px 街机字（只取 16 / 24 / 32） */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #study.on #studyBody .done p b:not(#_):not(#_){font-family:var(--px-num)!important;font-weight:400!important;font-size:16px!important;letter-spacing:0!important;word-spacing:-.5em!important;-webkit-font-smoothing:none;vertical-align:-1px;}
/* R2-6② 像素统计环中心大百分比：19 号 fitRingText 按环的实际宽度把屏幕字号钉在 16 / 24 / 32 / 48（写在 --pxring 上），这里读变量 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-stats .wsv5p-ring svg>text:first-of-type:not(#_):not(#_):not(#_){font-size:var(--pxring,64px)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-stats .wsv5p-ring svg>text:first-of-type tspan:not(#_):not(#_){font-size:var(--pxring-pct,30px)!important;font-family:var(--px-num)!important;}
/* R2-4 统计页折线图的日期刻度：19 号 decorateStatsAxis 在图下叠一行 12px 的 HTML 刻度后，藏掉 SVG 里被拉伸压扁的刻度字（6–11px）；叠层不在就照旧显示 SVG 的 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart:has(>.wsv5p-lnaxis)>svg .axis-text{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart>.wsv5p-lnaxis{display:block!important;flex:none!important;position:relative!important;height:18px!important;margin:2px 0 0!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-stats .stats-chart>.wsv5p-lnaxis>span{position:absolute!important;top:0!important;transform:translateX(-50%)!important;white-space:nowrap!important;font:500 var(--v5-fs-caption)/1.2 var(--v5-tech)!important;color:var(--v5-ink-3)!important;font-variant-numeric:tabular-nums;letter-spacing:0!important;}
/* R2-2 记录页像素皮：这一页原来没进像素 P2 面板组（统计卡是圆角卡），补上 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-records :is(.hardbook-stat,.hardbook-side,.hardbook-insight,.hardbook-main):not(#_){border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;background:var(--v5p-cn),var(--v5-panel)!important;box-shadow:var(--v5p-ring)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body #view-records .hardbook-stat>i:not(#_){border-radius:0!important;clip-path:var(--px-clip-xs,none)!important;}
/* R3（V7.0.0 第三轮 · 第二轮核查 #7 + 任务 ⑦）：记录 / 难词本页与天梯的对比度（按「字色 alpha × 祖先 opacity」叠到真实底色上量，color-mix 底也算进去）。
   ① 统计卡图标方块的字：accent 当字 → --v5-accent-ink（16 号 §5.7 的规矩）；警示格（.warn）的 terra 往墨色收 25%（桃桃猫卷 56%，同 accent-ink 配方）——
      深色主题的墨是浅色，往墨收 = 变亮，同样拉开对比。改前：猫卷 2.37 / 2.65、云阶白卷 3.89、纸墨浅 4.01、纸墨深 4.22、像素 3.82、汽水 4.45。
   ② 页签「已学习 / 全部掌握」：index.html 给 .soft-tab 整颗 opacity:.72（计数再 ×.85 = .61）→ 七个主题 2.4–4.3；新版改成不透明 + 三级墨（仍比普通页签淡一档）。
   ③ 表 / 卡切换、「查看详细 ›」：accent 当字 → --v5-accent-ink。
   ④ 桃桃猫卷选中页签：站点 --solid 洋粉底白字只有 3.57 → 实心底换成 --v5-accent-ink（深一档的玫瑰色，白字 5.6），仍是「实心 = 选中」。 */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-stat:not(.warn):not(.done)>i{color:var(--v5-accent-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-stat.warn>i{color:var(--v5p-warn-ink,color-mix(in srgb,var(--terra) 75%,var(--ink)))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #view-records{--v5p-warn-ink:color-mix(in srgb,var(--terra) 44%,var(--ink));}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records #recordTabs .soft-tab:not(.active){opacity:1!important;color:var(--v5-ink-3)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records :is(#hardbookViewTable,#hardbookViewCards,.hardbook-insight-go){color:var(--v5-accent-ink)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #view-records #recordTabs button.active:not(#_){background:var(--v5-accent-ink)!important;border-color:var(--v5-accent-ink)!important;color:var(--solid-text,var(--card))!important;}
/* 天梯「我」那一行（浅强调底上）：「（我）」三级墨在纸墨深 3.73 / 云阶白卷 4.12 / 云阶墨卷 3.96 → 二级墨；前三名名次金字在云阶白卷 4.25 / 汽水 4.44 → 往墨收 25% */
html.ws-v5.ws-v5.ws-v5.ws-v5 body #wsPkLadder .ws-pk-ladder__row[data-me="1"] .ws-pk-ladder__metag{color:var(--v5-ink-2)!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body #wsPkLadder .ws-pk-ladder__row.is-top[data-me="1"] .ws-pk-ladder__pos{color:color-mix(in srgb,var(--v5-gold-ink) 75%,var(--v5-ink))!important;}
}
/* R2-2 记录 / 难词本页的缩窄版（769–1099；第一轮核查：5 张统计卡挤一行，标签一字一行、像素「0.0」伸出卡外）：
   ≥960 三列（3 + 2），769–959 两列（2 + 2 + 1，最后一张占整行）；图标格缩到 36、卡内边距收窄 */
@media(min-width:769px) and (max-width:1099px){
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-stat{padding:14px!important;gap:10px!important;min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-stat>i{width:36px!important;height:36px!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-stat>div{min-width:0!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-stat>div>span{white-space:nowrap!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-layout{grid-template-columns:minmax(0,1fr)!important;}
}
@media(min-width:769px) and (max-width:959px){
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-records .hardbook-stats>.hardbook-stat:last-child{grid-column:1 / -1!important;}
}
/* R2-5 设置页 769–1024 与 1025–1099 统一成「页签模式」（第一轮核查：≤1024 时 index.html 的 ≥1025 页签规则不生效 →
   全部分区平铺、点分类轨只是滚动；底部保存条缩成 375 宽的小条压在主题卡上）。
   这里照 index.html「ws-settings-onescreen-v570」的页签规则把 769–1024 补齐（一次只显示当前分区，data-active-section 由 04 号在点分类时写），
   页面仍是 V5 的整页滚动（不定高）；底部保存条整栏宽、粘在视口底。 */
@media(min-width:769px) and (max-width:1024px){
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-board>.settings-flow-column-v3{display:contents!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-board .settings-card{display:none!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings:not([data-active-section]) .settings-board [data-settings-panel="study"],
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings[data-active-section="study"] .settings-board [data-settings-panel="study"],
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings[data-active-section="appearance"] .settings-board [data-settings-panel="appearance"],
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings[data-active-section="icons"] .settings-board [data-settings-panel="icons"],
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings[data-active-section="reminder"] .settings-board [data-settings-panel="reminder"],
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings[data-active-section="sound"] .settings-board [data-settings-panel="sound"],
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings[data-active-section="sync"] .settings-board [data-settings-panel="sync"],
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings[data-active-section="data"] .settings-board [data-settings-panel="data"],
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings[data-active-section="about"] .settings-board [data-settings-panel="about"]{display:block!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-board>.settings-bottom-bar,
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-bottom-bar{
  position:sticky!important;left:auto!important;right:auto!important;top:auto!important;bottom:12px!important;transform:none!important;
  width:100%!important;max-width:none!important;box-sizing:border-box!important;margin:0!important;display:flex!important;align-self:stretch!important;grid-column:1 / -1!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5.ws-v5 body #view-settings .settings-theme-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;}
}

/* >>> CLASSIC-V707 V7.0.7 经典四主题性格 · 完成页一次性庆祝（≤ 1.2 秒；令牌 --ck-* 在 16 号 CLASSIC-V707 节；进度 release-packages/v707/PROGRESS-CT.md）>>>
 * 纸墨浅 / 纸墨深：印章从上方盖下（放大 → 压到 .92 → 回弹）+ 一圈印泥晕散开；这一轮背完印「卷」，今天全部完成印「成」（不虚报，同汽水口径 #doneEarBtn）
 * 云阶白卷：三级台阶先出，一朵带勾的云从下轻浮上来（登阶入云）
 * 星河夜卷：一颗四角星一闪亮起，外圈八颗小星随后浮现
 * 只动 transform / opacity；全部 1 次；reduced-motion 全关（本块末尾，特异性压过上面）。不挂 media：桌面与手机 V5 共用。 */
@media all{
@keyframes v5ck-stamp{0%{opacity:0;transform:rotate(-6deg) scale(1.55)}55%{opacity:1;transform:rotate(-6deg) scale(.92)}78%{transform:rotate(-6deg) scale(1.03)}100%{opacity:1;transform:rotate(-6deg) scale(1)}}
@keyframes v5ck-halo{0%{opacity:.55;transform:scale(.9)}100%{opacity:0;transform:scale(1.35)}}
@keyframes v5ck-float{from{opacity:0;transform:translateY(22px) scale(.9)}to{opacity:1;transform:none}}
@keyframes v5ck-steps{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes v5ck-star{0%{opacity:0;transform:scale(.3) rotate(-45deg)}60%{opacity:1;transform:scale(1.12) rotate(4deg)}100%{opacity:1;transform:none}}
@keyframes v5ck-twinkle{0%{opacity:0;transform:scale(.55) rotate(-20deg)}100%{opacity:.85;transform:none}}
/* ---- 纸墨：方印 ---- */
html.ws-v5.ws-v5.ws-v5.ws-v5:is([data-theme="light"],[data-theme="dark"]) body #study.on #studyBody .done .seal:not(#_){
  width:92px!important;height:92px!important;margin:10px auto 18px!important;border-radius:10px!important;
  background:var(--ck-seal)!important;color:transparent!important;font-size:0!important;text-shadow:none!important;
  box-shadow:inset 0 0 0 5px var(--ck-seal),inset 0 0 0 6.5px color-mix(in srgb,var(--ck-seal-ink) 60%,transparent)!important;
  transform:rotate(-6deg);animation:v5ck-stamp .62s cubic-bezier(.3,1.3,.5,1) .1s both!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5:is([data-theme="light"],[data-theme="dark"]) body #study.on #studyBody .done .seal:not(#_)::before{
  content:"卷"!important;position:absolute!important;inset:0!important;width:auto!important;height:auto!important;margin:0!important;
  display:grid!important;place-items:center!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;
  font:700 46px/1 "Songti SC","STSong","SimSun","Noto Serif CJK SC",serif!important;color:var(--ck-seal-ink)!important;
  opacity:1!important;transform:none!important;animation:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5:is([data-theme="light"],[data-theme="dark"]) body #study.on:has(#studyFoot #doneEarBtn) #studyBody .done .seal:not(#_)::before{content:"成"!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5:is([data-theme="light"],[data-theme="dark"]) body #study.on #studyBody .done .seal:not(#_)::after{
  content:""!important;position:absolute!important;left:50%!important;top:50%!important;width:92px!important;height:92px!important;margin:-46px 0 0 -46px!important;
  border:2px solid var(--ck-seal)!important;border-radius:14px!important;background:none!important;box-shadow:none!important;
  opacity:0;animation:v5ck-halo .66s ease-out .5s both!important;
}
/* ---- 云阶白卷：登阶入云 ---- */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="minimal-light"] body #study.on #studyBody .done .seal:not(#_){
  width:132px!important;height:100px!important;margin:6px auto 14px!important;border-radius:0!important;
  background:none!important;box-shadow:none!important;color:transparent!important;font-size:0!important;text-shadow:none!important;transform:none!important;animation:none!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="minimal-light"] body #study.on #studyBody .done .seal:not(#_)::before{
  content:""!important;position:absolute!important;left:50%!important;top:0!important;width:90px!important;height:60px!important;margin:0 0 0 -45px!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;background:var(--v5-accent)!important;opacity:1;
  -webkit-mask:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 84 56'><defs><mask id='m'><rect width='84' height='56' fill='white'/><path d='M30 33l8 8 16-16' fill='none' stroke='black' stroke-width='5' stroke-linecap='round' stroke-linejoin='round'/></mask></defs><g mask='url(%23m)'><circle cx='22' cy='36' r='15'/><circle cx='42' cy='25' r='20'/><circle cx='63' cy='36' r='14'/><rect x='22' y='30' width='41' height='21'/></g></svg>") center/contain no-repeat!important;
  mask:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 84 56'><defs><mask id='m'><rect width='84' height='56' fill='white'/><path d='M30 33l8 8 16-16' fill='none' stroke='black' stroke-width='5' stroke-linecap='round' stroke-linejoin='round'/></mask></defs><g mask='url(%23m)'><circle cx='22' cy='36' r='15'/><circle cx='42' cy='25' r='20'/><circle cx='63' cy='36' r='14'/><rect x='22' y='30' width='41' height='21'/></g></svg>") center/contain no-repeat!important;
  animation:v5ck-float .62s cubic-bezier(.2,.8,.2,1) .42s both!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="minimal-light"] body #study.on #studyBody .done .seal:not(#_)::after{
  --ck-step:color-mix(in srgb,var(--accent) 52%,var(--card));   /* 电脑学习页纸面本身是浅空色，30% 会融进去看不见 */
  content:""!important;position:absolute!important;left:50%!important;top:auto!important;bottom:0!important;width:100px!important;height:30px!important;margin:0 0 0 -50px!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;opacity:1;
  background:linear-gradient(var(--ck-step),var(--ck-step)) 0 100%/30px 10px no-repeat,linear-gradient(var(--ck-step),var(--ck-step)) 35px 100%/30px 20px no-repeat,linear-gradient(var(--ck-step),var(--ck-step)) 70px 100%/30px 30px no-repeat!important;
  animation:v5ck-steps .45s cubic-bezier(.2,.8,.2,1) .05s both!important;
}
/* ---- 星河夜卷：星芒 + 一圈小星 ---- */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="minimal-dark"] body #study.on #studyBody .done .seal:not(#_){
  width:120px!important;height:120px!important;margin:0 auto 10px!important;border-radius:50%!important;
  background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 24%,transparent),transparent)!important;box-shadow:none!important;
  color:transparent!important;font-size:0!important;text-shadow:none!important;transform:none!important;animation:v5-enter-fade .3s ease both!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="minimal-dark"] body #study.on #studyBody .done .seal:not(#_)::before{
  content:""!important;position:absolute!important;left:50%!important;top:50%!important;width:56px!important;height:56px!important;margin:-28px 0 0 -28px!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;background:var(--ink)!important;opacity:1;
  -webkit-mask:var(--ck-star) center/contain no-repeat!important;mask:var(--ck-star) center/contain no-repeat!important;
  animation:v5ck-star .8s cubic-bezier(.2,.8,.2,1) .1s both!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="minimal-dark"] body #study.on #studyBody .done .seal:not(#_)::after{
  content:""!important;position:absolute!important;left:50%!important;top:50%!important;width:4px!important;height:4px!important;margin:-2px 0 0 -2px!important;
  border:0!important;border-radius:50%!important;background:var(--ink)!important;opacity:.85;
  box-shadow:0 -52px 0 0 var(--ink),37px -37px 0 -1px var(--accent),52px 0 0 0 var(--ink),37px 37px 0 -1px var(--accent),0 52px 0 0 var(--ink),-37px 37px 0 -1px var(--accent),-52px 0 0 0 var(--ink),-37px -37px 0 -1px var(--accent)!important;
  animation:v5ck-twinkle .7s ease-out .4s both!important;
}
/* ---- 减少动态效果：直接落在最终状态（纸墨印泥晕本来就是 0，不出现） ---- */
@media(prefers-reduced-motion:reduce){
  html.ws-v5.ws-v5.ws-v5.ws-v5:is([data-theme="light"],[data-theme="dark"],[data-theme="minimal-light"],[data-theme="minimal-dark"]) body #study.on #studyBody .done .seal:not(#_),
  html.ws-v5.ws-v5.ws-v5.ws-v5:is([data-theme="light"],[data-theme="dark"],[data-theme="minimal-light"],[data-theme="minimal-dark"]) body #study.on #studyBody .done .seal:not(#_)::before,
  html.ws-v5.ws-v5.ws-v5.ws-v5:is([data-theme="light"],[data-theme="dark"],[data-theme="minimal-light"],[data-theme="minimal-dark"]) body #study.on #studyBody .done .seal:not(#_)::after{animation:none!important;}
}
}
/* <<< CLASSIC-V707 <<< */

/* >>> TWD-V709 V7.0.9 九主题拉到同一完成度 · 页面层（release-packages/v709/PROGRESS-TWD.md）>>>
 * TA  全站按下 / 释放 / 禁用（电脑 ≥769）：所有可点元素统一 :active{transform:var(--v5-press)}——值全走主题令牌
 *     （星穹 .98 / 猫卷 .94 弹簧回弹 / 纸墨 .97 盖章 / 像素沉 3px / 汽水 .965 / 森林沉 1px / 极简只压一档不透明度），
 *     释放按主题曲线回弹（transition 走 --v5-ease / --v5-dur）；禁用 .55 + not-allowed、按不下去。
 *     弹层（.modal / [role=dialog] / .wsv5-mask / .v5-dialog / .auth-modal）归 22/23（TWM），这里一律排除；开关行 / 公告圆点不压。
 *     :not(#_):not(#_) 只为抢过各页带 id 的 hover 规则（本楼既有写法）。
 * TE  完成庆祝补齐星穹 / 猫卷（不挂 media，与汽水 / 森林 / 像素 / 经典四主题同一处）：
 *     星穹 = 观测台「锁定」：印章切角揭开（1.3 → .96 → 1）+ 虚线外环倒转 90° 停住 + 实环收拢 + 一道扫光横过（全部一次；撤掉通用那条 26s 无限转圈）；
 *            今天全部完成再多一圈切角光环散开（不虚报，同汽水口径 #doneEarBtn）
 *     猫卷 = 肉球印章弹簧弹入（.3 → 1.08 → .97 → 1）+ 两只猫耳 + 三枚小脚印从左下走到印章跟前（一次，留在 .6）
 * TF  空态（电脑）：计划页 .plan-empty / 记录页 .empty-note / 填字 .cw-empty / 功能面板 .menu-panel-empty 统一成虚线卡 +
 *     主题打卡标记做图标（星 / 云 / 四角星 / 肉球 / 朱印 / 金印 / 像素星 / 瓶盖 / 叶，走 --v5-mark-done）+ 逐张入场；像素街机走切角描边面板。
 * 铁律：全部挂 html.ws-v5；只动 transform / opacity；全部一次性；reduced-motion 全关（本块末尾）；旧版零影响。 */
@media(min-width:769px){
/* ---- TA1. 过渡：transform 走主题曲线（释放回弹），颜色 / 阴影 / 不透明度走 fast（不带 !important：像素 P3 的 transition:none!important 仍以它为准 = 像素按下不滑） ---- */
html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(button,.btn,[role="button"],.v5-chip,.wsv5p-chip,.book-card,.ach-card,.settings-theme-card,.settings-icon-card,.today-game-btn,.wsv5-lvl,.wsv5-se):not(.v5-dialog *):not([role="dialog"] *):not(.modal *):not(.wsv5-mask *):not(.auth-modal *):not(.settings-toggle-line):not([role="switch"]):not(.ws-hn-dot){
  transition:transform var(--v5-dur) var(--v5-ease),background-color var(--v5-dur-fast),color var(--v5-dur-fast),border-color var(--v5-dur-fast),box-shadow var(--v5-dur-fast),opacity var(--v5-dur-fast),filter var(--v5-dur-fast);
}
/* ---- TA2. 按下：transform 取主题令牌（各主题在按钮自身上改过的 --v5-press 也照常生效，如纸墨 .94 盖章、极简主键 .985） ---- */
html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(button,.btn,[role="button"],.v5-chip,.wsv5p-chip,.book-card,.ach-card,.settings-theme-card,.settings-icon-card,.today-game-btn,.wsv5-lvl,.wsv5-se):not(#_):not(#_):not(:disabled):not([aria-disabled="true"]):not(.v5-dialog *):not([role="dialog"] *):not(.modal *):not(.wsv5-mask *):not(.auth-modal *):not(.settings-toggle-line):not([role="switch"]):not(.ws-hn-dot):not(.wsv5-nopress):is(:active,[data-wsv5-down]){
  transform:var(--v5-press)!important;transition-duration:var(--v5-dur-fast)!important;
}
/* 极简两款：性格表「按压：无」→ 不位移，只压一档不透明度，让手知道按到了 */
html.ws-v5.ws-v5.ws-v5.ws-v5:is([data-theme="minimal-light"],[data-theme="minimal-dark"]) body :is(button,.btn,[role="button"],.v5-chip,.wsv5p-chip,.book-card,.ach-card,.settings-theme-card,.settings-icon-card,.today-game-btn,.wsv5-lvl,.wsv5-se):not(#_):not(#_):not(:disabled):not([aria-disabled="true"]):not(.v5-dialog *):not([role="dialog"] *):not(.modal *):not(.wsv5-mask *):not(.auth-modal *):not(.settings-toggle-line):not([role="switch"]):not(.ws-hn-dot):not(.wsv5-nopress):is(:active,[data-wsv5-down]){opacity:.72;}
/* ---- TA3. 禁用：看得出、按不动（不带 !important，站点 / 各页自己写了禁用态的以它们为准） ---- */
html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(button,.btn):disabled:not(.v5-dialog *):not([role="dialog"] *):not(.modal *):not(.wsv5-mask *):not(.auth-modal *){opacity:.55;cursor:not-allowed;}
html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(button,.btn):disabled:not(#_):not(#_):active{transform:none!important;}
/* ---- TA4. .btn 的通用悬停（站点 .btn 原来 hover 没反应；各页已写的 !important 悬停仍以它们为准） ---- */
html.ws-v5.ws-v5.ws-v5.ws-v5 body .btn:not(.v5-dialog *):not([role="dialog"] *):not(.modal *):not(.wsv5-mask *):not(.auth-modal *):not(:disabled):hover{border-color:var(--v5-accent-line);background-color:var(--v5-accent-soft);}

/* ---- TF. 空态 ---- */
html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(#view-plan .plan-empty,#view-records .empty-note,#crosswordPage .cw-empty,.menu-panel-empty):not(#_){
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:10px!important;
  min-height:128px!important;padding:26px 20px!important;margin:6px 0!important;box-sizing:border-box!important;width:auto!important;
  border:1px dashed var(--v5-line-2)!important;border-radius:var(--v5-r)!important;background:color-mix(in srgb,var(--v5-panel-2) 55%,transparent)!important;
  color:var(--v5-ink-3)!important;font:500 var(--v5-fs-body)/1.6 var(--cjk)!important;text-align:center!important;letter-spacing:0!important;text-wrap:pretty;
  box-shadow:none!important;text-shadow:none!important;
  animation:var(--v5-enter-item) var(--v5-dur-slow) var(--v5-ease) both;
}
html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(#view-plan .plan-empty,#view-records .empty-note,#crosswordPage .cw-empty,.menu-panel-empty):not(#_)::before{
  content:""!important;display:block!important;position:static!important;width:28px!important;height:28px!important;margin:0!important;flex:none!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;background:var(--v5-mark-color)!important;opacity:.5!important;
  -webkit-mask:var(--v5-mark-done) center/contain no-repeat!important;mask:var(--v5-mark-done) center/contain no-repeat!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-plan .plan-empty,#view-records .empty-note,#crosswordPage .cw-empty,.menu-panel-empty):not(#_){
  border:0!important;border-radius:0!important;clip-path:var(--v5p-clip)!important;box-shadow:var(--v5p-ring)!important;background:var(--v5-panel)!important;animation-timing-function:steps(3,end);
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="pixel"] body :is(#view-plan .plan-empty,#view-records .empty-note,#crosswordPage .cw-empty,.menu-panel-empty):not(#_)::before{opacity:.8!important;-webkit-mask-size:21px 21px!important;mask-size:21px 21px!important;image-rendering:pixelated;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body :is(#view-plan .plan-empty,#view-records .empty-note,#crosswordPage .cw-empty,.menu-panel-empty):not(#_)::before{transform:rotate(-12deg);}
html.ws-v5.ws-v5.ws-v5.ws-v5:is([data-theme="light"],[data-theme="dark"]) body :is(#view-plan .plan-empty,#view-records .empty-note,#crosswordPage .cw-empty,.menu-panel-empty):not(#_)::before{width:22px!important;height:22px!important;background:var(--ck-seal,var(--v5-mark-color))!important;transform:rotate(-8deg);}
html.ws-v5.ws-v5.ws-v5.ws-v5:is([data-theme="minimal-light"],[data-theme="minimal-dark"]) body :is(#view-plan .plan-empty,#view-records .empty-note,#crosswordPage .cw-empty,.menu-panel-empty):not(#_){border-style:solid!important;}
@media(prefers-reduced-motion:reduce){
  html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(#view-plan .plan-empty,#view-records .empty-note,#crosswordPage .cw-empty,.menu-panel-empty):not(#_){animation:none!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5 body :is(button,.btn,[role="button"],.v5-chip,.wsv5p-chip,.book-card,.ach-card,.settings-theme-card,.settings-icon-card,.today-game-btn,.wsv5-lvl,.wsv5-se):not(#_):not(#_):not(#_):is(:active,[data-wsv5-down]){transform:none!important;opacity:1;}
}
}

/* ---- TE. 完成庆祝：星穹「锁定」/ 猫卷「肉球印」（不挂 media） ---- */
@media all{
@keyframes v5twd-lock{0%{opacity:0;transform:scale(1.3)}55%{opacity:1;transform:scale(.96)}100%{opacity:1;transform:none}}
@keyframes v5twd-ring{0%{opacity:0;transform:rotate(-90deg) scale(1.2)}100%{opacity:.9;transform:none}}
@keyframes v5twd-scan{0%{opacity:1;transform:translateX(-140%) skewX(-18deg)}100%{opacity:1;transform:translateX(320%) skewX(-18deg)}}
@keyframes v5twd-paw{0%{opacity:0;transform:scale(.3) rotate(-14deg)}60%{opacity:1;transform:scale(1.08) rotate(3deg)}80%{transform:scale(.97) rotate(-1deg)}100%{opacity:1;transform:none}}
@keyframes v5twd-pawin{0%{opacity:0;transform:rotate(-10deg) scale(.4)}100%{opacity:1;transform:rotate(-10deg) scale(1)}}
@keyframes v5twd-ears{0%{opacity:0;transform:translateY(10px) scale(.6)}100%{opacity:1;transform:none}}
@keyframes v5twd-step{0%{opacity:0;transform:translateY(-8px) scale(.6) rotate(var(--r,-20deg))}60%{opacity:.85;transform:scale(1.05) rotate(var(--r,-20deg))}100%{opacity:.6;transform:rotate(var(--r,-20deg))}}
/* 星穹 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="supreme"] body #study.on #studyBody .done:not(#_){position:relative!important;overflow:hidden!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="supreme"] body #study.on #studyBody .done .seal:not(#_){
  margin:14px auto 10px!important;
  clip-path:var(--v5-hero-clip)!important;background:color-mix(in srgb,var(--v5-accent) 9%,var(--v5-panel-2))!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--v5-accent) 35%,transparent)!important;
  animation:v5twd-lock .62s var(--v5-ease) both!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="supreme"] body #study.on #studyBody .done .seal:not(#_)::before{animation:v5twd-ring .9s var(--v5-ease) .12s both!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="supreme"] body #study.on #studyBody .done .seal:not(#_)::after{animation:wsv5pStamp .6s var(--v5-ease) .22s both!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="supreme"] body #study.on #studyBody .done:not(#_)::before{
  content:""!important;display:block!important;position:absolute!important;top:0!important;bottom:0!important;left:0!important;right:auto!important;width:36%!important;height:auto!important;margin:0!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;pointer-events:none!important;z-index:3!important;
  background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--v5-accent) 16%,transparent),transparent)!important;
  opacity:0;transform:translateX(-140%) skewX(-18deg);animation:v5twd-scan .9s var(--v5-ease) .55s 1 both!important;
}
/* 今天全部完成：再多一圈切角光环散开 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="supreme"] body #study.on:has(#studyFoot #doneEarBtn) #studyBody .done:not(#_)::after{
  content:""!important;display:block!important;position:absolute!important;left:50%!important;top:64px!important;width:128px!important;height:128px!important;margin:-64px 0 0 -64px!important;
  border:1px solid var(--v5-accent)!important;border-radius:0!important;clip-path:var(--v5-hero-clip)!important;background:none!important;box-shadow:none!important;pointer-events:none!important;z-index:2!important;
  opacity:0;animation:v5ck-halo .8s ease-out .7s 1 both!important;
}
/* 猫卷 */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done:not(#_){position:relative!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done .seal:not(#_){
  width:120px!important;height:120px!important;margin:18px auto 10px!important;border-radius:50%!important;overflow:visible!important;
  background:var(--v5-accent-soft)!important;color:transparent!important;font-size:0!important;text-shadow:none!important;
  box-shadow:var(--v5-shadow-soft),inset 0 0 0 2px color-mix(in srgb,var(--v5-accent) 30%,transparent)!important;
  animation:v5twd-paw .72s cubic-bezier(.34,1.56,.64,1) .08s both!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done .seal:not(#_)::before{
  content:""!important;position:absolute!important;left:50%!important;top:50%!important;width:62px!important;height:62px!important;margin:-31px 0 0 -31px!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;background:var(--v5-accent)!important;opacity:1!important;
  -webkit-mask:var(--v5-mark-done) center/contain no-repeat!important;mask:var(--v5-mark-done) center/contain no-repeat!important;
  transform:rotate(-10deg);animation:v5twd-pawin .5s cubic-bezier(.34,1.56,.64,1) .34s both!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done .seal:not(#_)::after{
  content:""!important;position:absolute!important;left:17px!important;top:-9px!important;width:26px!important;height:26px!important;margin:0!important;
  border:0!important;border-radius:70% 70% 14% 14%!important;background:var(--v5-accent-soft)!important;opacity:1;
  box-shadow:0 0 0 2px var(--v5-accent-line),60px 0 0 0 var(--v5-accent-soft),60px 0 0 2px var(--v5-accent-line)!important;
  transform:none;animation:v5twd-ears .5s cubic-bezier(.34,1.56,.64,1) .2s both!important;
}
/* 三枚小脚印：从左下走到印章跟前（h2 不定位 → 以 .done 为参照） */
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done:not(#_)::before,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done:not(#_)::after,
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done h2:not(#_)::before{
  content:""!important;display:block!important;position:absolute!important;width:16px!important;height:16px!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;pointer-events:none!important;opacity:0;
  background:var(--v5-accent)!important;-webkit-mask:var(--v5-mark-done) center/contain no-repeat!important;mask:var(--v5-mark-done) center/contain no-repeat!important;
  animation:v5twd-step .5s var(--v5-ease) both!important;
}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done:not(#_)::before{left:9%!important;top:112px!important;--r:-26deg;animation-delay:.5s!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done:not(#_)::after{left:17%!important;top:80px!important;--r:-14deg;animation-delay:.7s!important;}
html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done h2:not(#_)::before{left:26%!important;top:50px!important;--r:-4deg;animation-delay:.9s!important;}
@media(prefers-reduced-motion:reduce){
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="supreme"] body #study.on #studyBody .done .seal:not(#_),
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="supreme"] body #study.on #studyBody .done .seal:not(#_)::before,
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="supreme"] body #study.on #studyBody .done .seal:not(#_)::after,
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done .seal:not(#_),
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done .seal:not(#_)::before,
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done .seal:not(#_)::after{animation:none!important;opacity:1!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="supreme"] body #study.on #studyBody .done .seal:not(#_)::after{opacity:.62!important;}
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="supreme"] body #study.on #studyBody .done:not(#_)::before,
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="supreme"] body #study.on:has(#studyFoot #doneEarBtn) #studyBody .done:not(#_)::after,
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done:not(#_)::before,
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done:not(#_)::after,
  html.ws-v5.ws-v5.ws-v5.ws-v5[data-theme="cute-pink"] body #study.on #studyBody .done h2:not(#_)::before{display:none!important;animation:none!important;}
}
}
/* <<< TWD-V709 <<< */
