/* ============================================================
   theme-win10.css — Windows 10 / Aero（Win32 经典控件）

   依据：2026-10-20 在 box-win（Windows 10 Enterprise 22H2 / build 19045，
   96 dpi、Aero.msstyles、主题字体 Microsoft YaHei UI 9pt）上，用 uxtheme 的
   DrawThemeBackground 逐 part/state 离屏渲染出来的原生状态矩阵。逐值对照在
   reference/shots/windows/win10-uxtheme/matrix/metrics-{light,dark}.txt，
   方法与已知差距在 docs/verification.md。

   两件事先说清楚：
   1. 这是 Win32 经典控件（aero.msstyles），不是 Win11 的 WinUI 3（Fluent 2）。
      两套控件体系不能互相搬值，Win11 主题仍是 theme-win11.css。
   2. 开关在 Win32/uxtheme 里没有对应部件，这里的开关取 Windows 10 UWP 的
      ToggleSwitch（Win10 桌面上真实存在的开关形态），来源见
      docs/win10-switch-evidence.md，属「跨控件体系借用」，已标注。
   ============================================================ */

[data-theme="win10"] {
  /* 桌面底色 = COLOR_BTNFACE；文字 = COLOR_WINDOWTEXT */
  --ui-surface: #f0f0f0;
  --ui-text: #000000;
  --ui-text-2: #6d6d6d; /* COLOR_GRAYTEXT */
  --ui-text-disabled: #6d6d6d;

  --ui-font: "Segoe UI", "Microsoft YaHei UI", "Selawik", system-ui,
    -apple-system, "Helvetica Neue", Arial, sans-serif;
  --ui-font-size: 12px; /* 9pt @96dpi */
  --ui-control-h: 23px;

  /* COLOR_HIGHLIGHT / COLOR_HOTLIGHT / 按下态深一档 */
  --ui-accent: #0078d7;
  --ui-accent-text: #ffffff;
  --ui-accent-hover: #0066cc;
  --ui-accent-active: #005499;

  /* 经典 Win32 控件没有过渡动画（实测原生只有即时切换） */
  --ui-duration: 0ms;
  --ui-ease: linear;

  /* 焦点：1px 点线、内缩 2px。真实 Win10 的点线是深色；矩阵里那张被
     DrawFocusRect 的 XOR 语义画成了近白点线，判断为采集伪影，见文档。 */
  --focus-ring: 0 0 0 0 transparent;
  --focus-outline: 1px dotted #000000;
  --focus-outline-offset: -3px;
  /* 原生勾选框 / 单选框的焦点框住整行，不是只框方块 */
  --choice-focus-outline: 1px dotted #000000;
  --choice-focus-offset: 2px;
  --choice-box-focus-outline: none;

  /* 按钮：填充 #E1E1E1、1px #ADADAD、方角；悬停浅蓝、按下蓝底 */
  --btn-bg: #e1e1e1;
  --btn-bg-hover: #e5f1fb;
  --btn-bg-active: #cce4f7;
  --btn-fg: #000000;
  --btn-border: #adadad;
  --btn-border-hover: #0078d7;
  --btn-border-active: #005499;
  --btn-border-w: 1px;
  --btn-radius: 0px;
  --btn-h: 23px;
  --btn-px: 10px;
  --btn-font-size: 12px;
  --btn-font-weight: 400;
  --btn-shadow: none;
  --btn-bottom-stroke: transparent;
  --btn-bg-disabled: #cccccc;
  --btn-border-disabled: #bfbfbf;
  --btn-fg-disabled: #838383;

  /* 主按钮 = Win32 的「默认按钮」：灰底 + 2px 蓝边（1px 边框 + 1px 内阴影） */
  --primary-bg: #e1e1e1;
  --primary-bg-hover: #e5f1fb;
  --primary-bg-active: #cce4f7;
  --primary-fg: #000000;
  --primary-border: #0078d7;
  --primary-border-active: #005499;
  --primary-shadow: inset 0 0 0 1px #0078d7;
  --primary-bottom-stroke: transparent;

  /* 输入框：白底 + 1px #ABADB3；聚焦只挪插入符，外观不变（实测如此） */
  --field-bg: #ffffff;
  --field-border: #abadb3;
  --field-border-w: 1px;
  --field-radius: 0px;
  --field-h: 23px;
  --field-px: 4px;
  --field-font-size: 12px;
  --field-shadow: none;
  --field-placeholder: #6d6d6d;
  --field-focus-border: #abadb3;
  --field-focus-shadow: none;
  --field-focus-outline: none;
  --field-underline-w: 0px;
  --field-underline-color: transparent;
  --field-label-size: 12px;
  --field-bg-disabled: #f0f0f0;
  --field-border-disabled: #abadb3;
  --field-fg-disabled: #6d6d6d;

  /* 多行输入：原生用 EP_EDITBORDER_NOSCROLL，边框比单行深 */
  --textarea-border: #7a7a7a;
  --textarea-focus-border: #0078d7;
  --textarea-disabled-border: #cccccc;
  --textarea-min-h: 80px;
  --textarea-py: 3px;
  --textarea-line-height: 1.25; /* 原生单行 15px */
  --textarea-resize: none; /* 原生 Win32 编辑框没有右下缩放手柄 */

  /* 复选框：13×13 白底、1px #333、深色勾；悬停描边变蓝、勾也变蓝 */
  --choice-gap: 5px;
  --check-size: 13px;
  --check-radius: 0px;
  --check-bg: #ffffff;
  --check-border: #333333;
  --check-border-w: 1px;
  --check-shadow: none;
  --check-bg-checked: #ffffff;
  --check-border-checked: #333333;
  --check-mark: #333333;
  --check-stroke: 2.6; /* viewBox 20 单位映射到 13px，勾线约 1.7px */
  --check-duration: 0ms;
  --check-bg-hover: #ffffff;
  --check-border-hover: #0078d7;
  --check-mark-hover: #0078d7;
  --check-bg-checked-hover: #ffffff;
  --check-border-checked-hover: #0078d7;
  --check-mark-checked-hover: #0078d7;
  --check-bg-active: #cce4f7;
  --check-border-active: #005499;
  --check-mark-active: #005499;
  /* 禁用：实测白底 + #CCCCCC 边，勾约 #B7B7B7。早前把勾的抗锯齿边 (#E2E2E2/#D4D4D4)
     当成了底色，禁用框就成了一整块灰，看着比普通框大一圈。 */
  --check-bg-disabled: #ffffff;
  --check-border-disabled: #cccccc;
  --check-mark-disabled: #b7b7b7;

  /* 单选框：13×13 圆环、1px #333、实心点 5px */
  --radio-size: 13px;
  --radio-bg: #ffffff;
  --radio-border: #333333;
  --radio-border-w: 1px;
  --radio-bg-checked: #ffffff;
  --radio-border-checked: #333333;
  --radio-dot: 7px;
  --radio-dot-color: #333333;
  --radio-border-hover: #0078d7;
  --radio-dot-hover: #0078d7;
  --radio-border-active: #005499;
  --radio-dot-active: #005499;
  --radio-bg-disabled: #ffffff; /* 实测禁用圆内是白底 */
  /* 实测：禁用单选的环是近黑 #0A090A（比常态 #333 还深），点变 #CCCCCC。照抄。 */
  --radio-border-disabled: #0a090a;
  --radio-dot-disabled: #cccccc;

  /* 开关：Win32/uxtheme 无此部件，取 Win10 UWP ToggleSwitch 的深色实测值
     （44×20 含 2px 描边、滑块 10×10、行程 24px），见 docs/win10-switch-evidence.md。
     浅色态没有实测，边框 / 滑块按同一套中性值推（估计）。 */
  --switch-w: 44px;
  --switch-h: 20px;
  --switch-knob: 10px;
  --switch-pad: 3px; /* 外框内缩 5px 减去 2px 描边 */
  --switch-border-w: 2px;
  --switch-bg: transparent;
  --switch-border: #767676; /* 估计 */
  --switch-bg-on: #0078d7;
  --switch-border-on: #0078d7;
  --switch-knob-bg: #767676; /* 估计 */
  --switch-knob-on-bg: #ffffff;
  --switch-knob-shadow: none;
  --switch-duration: 150ms; /* 估计：UWP 开关是滑过去的 */
  --switch-ease: cubic-bezier(0, 0, 0, 1);

  /* 下拉框（收起态）：灰底 + 17px 箭头格 + 1px 分隔线 */
  --select-h: 23px;
  --select-radius: 0px;
  --select-bg: #e1e1e1;
  --select-border: #adadad;
  --select-border-w: 1px;
  --select-px: 4px;
  --select-pr: 0px;
  --select-chevron: #000000;
  --select-chevron-size: 4px;
  --select-chevron-w: 1px;
  --select-arrow-w: 17px;
  --select-arrow-sep-w: 1px;
  --select-arrow-sep: #adadad;
  --select-arrow-pad: 0px;
  --select-bg-hover: #e5f1fb;
  --select-border-hover: #0078d7;
  --select-bg-active: #cce4f7;
  --select-border-active: #005499;
  --select-bg-disabled: #cccccc;
  --select-border-disabled: #bfbfbf;
  --select-chevron-disabled: #8b8b8b;
  --select-fg-disabled: #6d6d6d;

  /* 下拉菜单（展开层）：白底 1px #7A7A7A、方角、项高 16、整行蓝高亮 */
  --menu-min-w: 140px;
  --menu-bg: #ffffff;
  --menu-fg: #000000;
  --menu-border: #7a7a7a;
  --menu-border-w: 1px;
  --menu-radius: 0px;
  --menu-shadow: 0 2px 6px rgba(0, 0, 0, 0.18); /* 估计：原生阴影由 DWM 画 */
  --menu-pad: 0px;
  --menu-item-h: 16px;
  --menu-item-radius: 0px;
  --menu-item-pad-x: 4px;
  --menu-item-marker-space: 0px;
  --menu-item-hover-bg: #0078d7;
  --menu-item-hover-fg: #ffffff;
  --menu-item-selected-bg: #0078d7;
  --menu-item-selected-fg: #ffffff;
  --menu-item-marker: transparent;
  --menu-item-font-size: 12px;
  --menu-offset: 0px;
  /* 分隔线一条 1px 浅灰、内缩量按菜单项左缘对齐推；禁用文字取 Win32 的
     COLOR_GRAYTEXT（经典值 #6D6D6D）；快捷键和正文同色，不弱化。均标估计。 */
  --menu-sep-margin: 3px 4px;
  --menu-sep-color: #d7d7d7; /* 估计 */
  --menu-item-disabled-fg: #6d6d6d; /* 估计 */
  --menu-shortcut-opacity: 1; /* 估计：Win32 菜单不弱化快捷键 */

  /* 滑块：轨道 4px（#E7EAEA + 1px #D6D6D6 边）、滑块 11×19 竖条。
     经典 Win32 trackbar 没有强调色填充，填充段与轨道同色。 */
  --slider-h: 19px;
  --slider-track-h: 4px;
  --slider-track: #e7eaea;
  --slider-fill: #e7eaea;
  --slider-track-radius: 0px;
  --slider-track-edge-w: 1px;
  --slider-track-edge: #d6d6d6;
  --slider-thumb-w: 11px;
  --slider-thumb-h: 19px;
  --slider-thumb-radius: 3px;
  --slider-thumb-bg: #0078d7;
  --slider-thumb-border-w: 0px;
  --slider-thumb-shadow: none;
  --slider-thumb-bg-hover: #171717;
  --slider-thumb-bg-active: #cccccc;
  --slider-thumb-bg-disabled: #cccccc;
  /* 分段控件：Win10 没有原生分段控件。按 Win32 按钮组（BTNS_CHECKGROUP）拼：
     23 高、方角、#E1E1E1 + #ADADAD 边框，选中沿用按下色 #CCE4F7（估计）。 */
  --seg-h: 23px;
  --seg-radius: 0px;
  --seg-bg: #e1e1e1;
  --seg-border: #adadad;
  --seg-border-w: 1px;
  --seg-fg: #000000;
  --seg-font-size: 12px;
  --seg-item-pad-x: 10px;
  --seg-item-radius: 0px;
  --seg-selected-bg: #cce4f7;
  --seg-selected-fg: #000000;
  --seg-selected-shadow: inset 0 0 0 1px #005499;
  --seg-hover-bg: #e5f1fb;
  --seg-active-bg: #cce4f7;
  --seg-sep-color: #adadad;
  --seg-focus-outline: 1px dotted #000000;
  --seg-focus-offset: -3px;
  --seg-disabled-fg: #838383;
  /* 标签页：Win32 SysTabControl32 实测（box-win 22H2）：标签 18 高、左右留 6，
     未选中 #F0F0F0 + 1px #D9D9D9，选中白底无边框、比未选中高 2px 并与面板连通。
     没有悬停；焦点 1px 点线内缩 3px。 */
  --tabs-h: 18px;
  --tabs-gap: 0px;
  --tabs-tab-overlap: -1px;
  --tabs-selected-lift: 2px;
  --tabs-tab-radius: 0px;
  --tabs-pad-x: 6px;
  --tabs-font-size: 12px;
  --tabs-fg: #000000;
  --tabs-hover-bg: transparent;
  --tabs-hover-fg: #000000;
  --tabs-selected-bg: #ffffff;
  --tabs-selected-fg: #000000;
  --tabs-selected-border: #ffffff;
  --tabs-tab-border-w: 1px;
  --tabs-tab-border: #d9d9d9;
  --tabs-strip-border-w: 0px;
  --tabs-list-overlap: -1px;
  --tabs-panel-bg: #ffffff;
  --tabs-panel-border: #d9d9d9;
  --tabs-panel-border-w: 1px;
  --tabs-panel-radius: 0px;
  --tabs-panel-pad: 10px;
  --tabs-arrow-mode: select;
  --tabs-focus-outline: 1px dotted #000000;
  --tabs-focus-offset: -3px;
  --tabs-disabled-fg: #838383;
  /* 进度条：Win32 msctls_progress32（box-win uxtheme 实测）：绿色 #06B025 填充、
     #E6E6E6 槽、1px #BCBCBC 边、直角；part 最小高 14，实际布局常用 16。 */
  --progress-h: 16px;
  --progress-radius: 0px;
  --progress-track: #e6e6e6;
  --progress-border: #bcbcbc;
  --progress-border-w: 1px;
  --progress-fill: #06b025;
  --progress-fill-radius: 0px;
  --progress-indeterminate-duration: 1500ms;
  /* 提示气泡：Win32 系统 tooltip（box-win 实测）：白底、#575757 字、1px #767676 边、
     直角、无箭头。键盘 focus 不显示。 */
  --tooltip-bg: #ffffff;
  --tooltip-fg: #575757;
  --tooltip-border: #767676;
  --tooltip-border-w: 1px;
  --tooltip-radius: 0px;
  --tooltip-pad-y: 4px;
  --tooltip-pad-x: 8px;
  --tooltip-font-size: 12px;
  --tooltip-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  --tooltip-show-delay: 500ms;
  --tooltip-focus-show: 0;
}

/* ============================================================
   暗色：Win10 的 Win32 暗色只覆盖一部分控件（实测：按钮、输入框、
   多行输入、下拉框有暗色变体；勾选框、单选框、滑块没有，仍是浅色）。
   下面凡是标「估计」的，都是原生没有暗色资源、按同一套暗色中性值推的。
   ============================================================ */

[data-theme="win10"][data-mode="dark"] {
  --ui-surface: #202020; /* 估计：Win10 暗色窗口底 */
  --ui-text: #ffffff;
  --ui-text-2: #9b9b9b;
  --ui-text-disabled: #838383;

  --focus-outline: 1px dotted #f2f4f3; /* 估计：暗色底上反色点线 */
  --choice-focus-outline: 1px dotted #f2f4f3;

  /* 按钮：实测 #333 / #454545 / #666666，1px #9B9B9B */
  --btn-bg: #333333;
  --btn-bg-hover: #454545;
  --btn-bg-active: #666666;
  --btn-fg: #ffffff;
  --btn-border: #9b9b9b;
  --btn-border-hover: #9b9b9b;
  --btn-border-active: #9b9b9b;
  --btn-bg-disabled: #333333;
  --btn-border-disabled: #404040;
  --btn-fg-disabled: #838383;

  /* 默认按钮：暗色矩阵里和普通按钮画法一样（#333 底 + #9B9B9B 边，没有蓝圈），照抄 */
  --primary-bg: #333333;
  --primary-bg-hover: #454545;
  --primary-bg-active: #666666;
  --primary-fg: #ffffff;
  --primary-border: #9b9b9b;
  --primary-border-active: #9b9b9b;
  --primary-shadow: none;

  /* 输入框：实测 #383838 底、#9B9B9B 边、聚焦边 #FFFFFF */
  --field-bg: #383838;
  --field-border: #9b9b9b;
  --field-focus-border: #ffffff;
  --field-placeholder: #9b9b9b;
  --field-bg-disabled: #383838;
  --field-border-disabled: #404040;
  --field-fg-disabled: #9b9b9b;

  --textarea-border: #9b9b9b;
  --textarea-focus-border: #ffffff;
  --textarea-disabled-border: #404040;

  /* 勾选 / 单选：原生没有暗色资源，暗色矩阵里就是浅色那套（白底、#333 边、深色勾）。
     但 #333 描边画在深色面上会融进背景：常态框看着只有 11px，禁用框的 #CCC 边却还有轮廓，
     视觉上就成了「禁用大一圈」。这里只把暗色常态描边提亮到 #9B9B9B（估计值，非实测），
     让常态 / 选中 / 禁用读出来的框一样大；标签文字跟随 --ui-text 变白。 */
  --check-border: #9b9b9b;
  --check-border-checked: #9b9b9b;

  /* 下拉框：实测 #333 底、#9B9B9B 边、悬停 #454545、按下 #666666 */
  --select-bg: #333333;
  --select-border: #9b9b9b;
  --select-chevron: #ffffff;
  --select-arrow-sep: #9b9b9b;
  --select-bg-hover: #454545;
  --select-border-hover: #9b9b9b;
  --select-bg-active: #666666;
  --select-border-active: #9b9b9b;
  --select-bg-disabled: #333333;
  --select-border-disabled: #404040;
  --select-chevron-disabled: #9b9b9b;
  --select-fg-disabled: #9b9b9b;

  /* 下拉菜单：无原生暗色参考，按中性值推（估计） */
  --menu-bg: #2d2d2d;
  --menu-fg: #ffffff;
  --menu-border: #9b9b9b;
  --menu-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
  --menu-sep-color: #6a6a6a; /* 估计 */
  --menu-item-disabled-fg: #8c8c8c; /* 估计 */

  /* 滑块：暗色下原生没有变暗（实测仍是 #E7EAEA 轨道），照抄 */
  --slider-thumb-bg-hover: #171717;
  --slider-thumb-bg-active: #cccccc;
  --slider-thumb-bg-disabled: #cccccc;

  /* 开关：深色实测，轨道关态描边和滑块都是 #CCCCCC */
  --switch-border: #cccccc;
  --switch-knob-bg: #cccccc;
  --seg-bg: #333333;
  --seg-border: #9b9b9b;
  --seg-fg: #ffffff;
  --seg-selected-bg: #666666;
  --seg-selected-fg: #ffffff;
  --seg-selected-shadow: inset 0 0 0 1px #9b9b9b;
  --seg-hover-bg: #454545;
  --seg-active-bg: #666666;
  --seg-sep-color: #9b9b9b;
  --seg-focus-outline: 1px dotted #ffffff;
  --seg-disabled-fg: #9b9b9b;
  --tabs-fg: #ffffff;
  --tabs-hover-bg: transparent;
  --tabs-hover-fg: #ffffff;
  --tabs-selected-bg: #2d2d2d;
  --tabs-selected-fg: #ffffff;
  --tabs-selected-border: #2d2d2d;
  --tabs-tab-border: #6f6f6f; /* 估计：暗色 tab 未实测 */
  --tabs-panel-bg: #2d2d2d;
  --tabs-panel-border: #6f6f6f; /* 估计 */
  --tabs-focus-outline: 1px dotted #ffffff;
  --tabs-disabled-fg: #9b9b9b;
  /* Win32 进度条和 tooltip 都没有暗色资源，暗色模式沿用浅色值 */
}

/* 滚动条：窗口内容区用，避免默认浏览器滚动条破坏平台观感 */
[data-theme="win10"] {
  --scrollbar-size: 17px;
  --scrollbar-width: auto;
  --scrollbar-track: #f0f0f0;
  --scrollbar-thumb: #cdcdcd;
  --scrollbar-thumb-hover: #a6a6a6;
  --scrollbar-radius: 0px;
  --scrollbar-border: 0px;
  --scrollbar-buttons: block;
  --scrollbar-button-bg: #f0f0f0;
  --scrollbar-button-active-bg: #d0d0d0;
  --scrollbar-button-active-shadow: inset 0 0 0 1px #b8b8b8;
  --scrollbar-arrow-up: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath d='M4 2L7 6H1Z' fill='%23000000'/%3E%3C/svg%3E");
  --scrollbar-arrow-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath d='M4 6L1 2H7Z' fill='%23000000'/%3E%3C/svg%3E");
}

[data-theme="win10"][data-mode="dark"] {
  --scrollbar-track: #1f1f1f;
  --scrollbar-button-bg: #1f1f1f;
  --scrollbar-button-active-bg: #333333;
  --scrollbar-button-active-shadow: inset 0 0 0 1px #444444;
  --scrollbar-arrow-up: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath d='M4 2L7 6H1Z' fill='%23ffffff'/%3E%3C/svg%3E");
  --scrollbar-arrow-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath d='M4 6L1 2H7Z' fill='%23ffffff'/%3E%3C/svg%3E");
  --scrollbar-thumb: #5a5a5a;
  --scrollbar-thumb-hover: #7a7a7a;
}
