/* ============================================================
   tokens.css — 设计令牌的默认值 + 字体
   每个平台主题文件只覆盖 [data-theme="..."] 下的同名变量，
   组件 CSS 一个平台判断都不写。
   ============================================================ */

@font-face {
  font-family: "Cantarell Local";
  src: url("../fonts/cantarell-regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Cantarell Local";
  src: url("../fonts/cantarell-bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* Selawik：微软官方的 Segoe UI 等宽度替代字体（SIL OFL），
   非 Windows 机器上用它来顶替 Segoe UI，避免整块面板看着像 macOS。 */
@font-face {
  font-family: "Selawik";
  src: url("../fonts/selawik-regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Selawik";
  src: url("../fonts/selawik-semibold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

:root {
  /* 中性兜底：平台识别失败时用这一套，不会出现丑的默认样式 */
  --ui-surface: #fafafa;
  --ui-text: #1f2328;
  --ui-text-2: #5c6370;
  --ui-text-disabled: #9aa0a8;

  --ui-font: system-ui, -apple-system, "Segoe UI", sans-serif;
  --ui-font-size: 14px;
  --ui-control-h: 32px;

  --ui-accent: #3584e4;
  --ui-accent-text: #ffffff;
  --ui-accent-hover: #2f78d0;
  --ui-accent-active: #2a6cbd;

  --ui-duration: 160ms;
  --ui-ease: ease;

  /* 焦点：两套机制，主题二选一，另一边留空 */
  --focus-ring: 0 0 0 0 transparent;
  --focus-outline: none;
  --focus-outline-offset: 0px;

  /* 普通按钮 */
  --btn-bg: #ffffff;
  --btn-bg-hover: #f5f5f5;
  --btn-bg-active: #ececec;
  --btn-fg: #1f2328;
  --btn-border: rgba(0, 0, 0, 0.12);
  --btn-border-hover: var(--btn-border);
  --btn-border-w: 1px;
  --btn-radius: 6px;
  --btn-h: 32px;
  --btn-px: 12px;
  --btn-font-size: 14px;
  --btn-font-weight: 400;
  --btn-shadow: none;
  --btn-bottom-stroke: transparent;

  /* 主按钮 */
  --primary-bg: var(--ui-accent);
  --primary-bg-hover: var(--ui-accent-hover);
  --primary-bg-active: var(--ui-accent-active);
  --primary-fg: var(--ui-accent-text);
  --primary-border: transparent;
  --primary-shadow: none;
  --primary-bottom-stroke: transparent;

  /* 禁用 */
  --disabled-bg: rgba(0, 0, 0, 0.05);
  --disabled-fg: var(--ui-text-disabled);
  --disabled-border: rgba(0, 0, 0, 0.05);

  /* 输入框 */
  --field-bg: #ffffff;
  --field-border: rgba(0, 0, 0, 0.14);
  --field-border-w: 1px;
  --field-radius: 6px;
  --field-h: 32px;
  --field-px: 10px;
  --field-font-size: 14px;
  --field-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.04);
  --field-placeholder: #9aa0a8;
  --field-focus-border: var(--ui-accent);
  --field-focus-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.04);
  --field-underline-w: 0px;
  --field-underline-color: transparent;
  --field-label-size: 12px;

  /* 复选框 */
  --check-size: 20px;
  --check-radius: 4px;
  --check-bg: #ffffff;
  --check-border: rgba(0, 0, 0, 0.4);
  --check-border-w: 1px;
  --check-shadow: none;
  --check-bg-checked: var(--ui-accent);
  --check-border-checked: var(--ui-accent);
  --check-mark: #ffffff;
  /* 实测：macOS 的勾是一帧切换，没有描边动画。想加动画改这个值即可 */
  --check-duration: 0ms;
  --check-stroke: 2.4;

  /* 单选框 */
  --radio-size: 20px;
  --radio-bg: #ffffff;
  --radio-border: rgba(0, 0, 0, 0.4);
  --radio-border-w: 1px;
  --radio-bg-checked: transparent;
  --radio-border-checked: var(--ui-accent);
  --radio-dot: 10px;
  --radio-dot-color: var(--ui-accent);

  /* 开关 */
  --switch-w: 40px;
  --switch-h: 20px;
  --switch-knob: 12px;
  --switch-pad: 3px;
  --switch-border-w: 1px;
  --switch-bg: transparent;
  --switch-border: rgba(0, 0, 0, 0.45);
  --switch-bg-on: var(--ui-accent);
  --switch-border-on: var(--ui-accent);
  --switch-knob-bg: rgba(0, 0, 0, 0.45);
  --switch-knob-on-bg: #ffffff;
  --switch-knob-shadow: none;
  --switch-duration: var(--ui-duration);

  /* 下拉框（收起态） */
  --select-h: 32px;
  --select-radius: 4px;
  --select-bg: #ffffff;
  --select-fg: inherit;
  --select-border: rgba(0, 0, 0, 0.12);
  --select-border-w: 1px;
  --select-px: 10px;
  --select-chevron: currentColor;
  --select-chevron-up: none;   /* macOS 是上下双箭头 */

  /* 下拉菜单（展开层） */
  --menu-min-w: 140px;
  --menu-bg: #ffffff;
  --menu-fg: inherit;
  --menu-border: rgba(0, 0, 0, 0.12);
  --menu-border-w: 1px;
  --menu-radius: 8px;
  --menu-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);
  --menu-pad: 4px;
  --menu-item-h: 30px;
  --menu-item-radius: 4px;
  --menu-item-pad-x: 10px;
  --menu-item-hover-bg: rgba(0, 0, 0, 0.05);
  --menu-item-hover-fg: inherit;
  --menu-item-selected-bg: var(--ui-accent);
  --menu-item-selected-fg: #ffffff;
  --menu-item-marker: transparent;   /* 选中项左侧竖条，Windows 用 */
  --menu-offset: 4px;
  --menu-item-font-size: 13px;

  /* 菜单分隔线、禁用项、快捷键提示。默认按常见单线菜单给，
     各主题在自己的文件里按原生画法覆盖（XP 是两条蚀刻线）。 */
  --menu-sep-h: 1px;
  --menu-sep-margin: 4px 8px;
  --menu-sep-color: rgba(0, 0, 0, 0.12);
  --menu-sep-shadow: none;
  --menu-shortcut-fg: currentColor;
  --menu-shortcut-opacity: 0.55;

  /* 滑块 */
  --slider-h: 24px;
  --slider-track-h: 4px;
  --slider-track: rgba(0, 0, 0, 0.15);
  --slider-fill: var(--ui-accent);
  --slider-thumb: 20px;
  --slider-thumb-bg: #ffffff;
  --slider-thumb-border: rgba(0, 0, 0, 0.12);
  --slider-thumb-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  --slider-focus-mouse-outline: none;
  --slider-focus-mouse-ring: none;
  /* 按钮那种 -3px 内缩套在扁平的滑块上会把焦点框压得比轨道还窄，
     滑块默认贴着控件边缘画，主题可以再调 */
  --slider-focus-outline-offset: -1px;

  /* 多行输入 */
  --textarea-min-h: 76px;
  --textarea-py: 6px;
  --switch-ease: var(--ui-ease);
}

/* 分段控件：兜底用一套中性值，六个主题各自覆盖 */
:root {
  --seg-h: 28px;
  --seg-radius: 6px;
  --seg-pad: 0px;
  --seg-bg: rgba(0, 0, 0, 0.06);
  --seg-border: transparent;
  --seg-border-w: 0px;
  --seg-shadow: none;
  --seg-fg: var(--ui-text);
  --seg-font-size: 13px;
  --seg-font-weight: 400;
  --seg-item-radius: 4px;
  --seg-item-pad-x: 10px;
  --seg-item-min-w: 0px;
  --seg-selected-bg: var(--ui-accent);
  --seg-selected-fg: var(--ui-accent-text);
  --seg-selected-shadow: none;
      --seg-hover-bg: rgba(0, 0, 0, 0.05);
  --seg-hover-fg: inherit;
  --seg-active-bg: rgba(0, 0, 0, 0.08);
  --seg-sep-w: 1px;
  --seg-sep-color: rgba(0, 0, 0, 0.12);
  --seg-sep-inset: 0px;
  --seg-disabled-opacity: 1;
  --seg-focus-outline: none;
  --seg-focus-offset: -2px;
  --seg-focus-container: none;
  --seg-duration: 0ms;
}

/* 标签页：兜底用一套中性值，六个主题各自覆盖 */
:root {
  --tabs-h: 30px;
  --tabs-gap: 2px;
  --tabs-list-width: auto;
  --tabs-list-justify: flex-start;
  --tabs-list-pad-top: 0px;
  --tabs-list-pad-x: 0px;
  --tabs-list-pad-bottom: 0px;
  --tabs-list-radius: 0px;
  --tabs-tab-overlap: 0px;
  --tabs-selected-lift: 0px;
  --tabs-panel-inset-x: 0px;
  /* 键盘分档：select = 方向键直接切；focus = 只移焦点、空格/回车确认；
     none = 方向键不动（macOS 的 NSTabView 就是这样） */
  --tabs-arrow-mode: select;
  --tabs-list-focus: none;
  --tabs-tab-radius: 0px;
  --tabs-pad-x: 12px;
  --tabs-font-size: 13px;
  --tabs-font-weight: 400;
  --tabs-fg: var(--ui-text-2);
  --tabs-hover-bg: rgba(0, 0, 0, 0.04);
  --tabs-hover-fg: var(--ui-text);
  --tabs-selected-bg: transparent;
  --tabs-selected-fg: var(--ui-text);
  --tabs-selected-border: transparent;
  --tabs-selected-shadow: none;
      --tabs-tab-border: transparent;
  --tabs-tab-border-w: 0px;
  --tabs-tab-shadow: none;
  --tabs-strip-bg: transparent;
  --tabs-strip-border: rgba(0, 0, 0, 0.12);
  --tabs-strip-border-w: 1px;
  --tabs-list-overlap: 0px;
  --tabs-indicator-h: 0px;
  --tabs-indicator-color: var(--ui-accent);
  --tabs-panel-bg: transparent;
  --tabs-panel-border: rgba(0, 0, 0, 0.12);
  --tabs-panel-border-w: 0px;
  --tabs-panel-shadow: none;
  --tabs-panel-radius: 0px;
  --tabs-panel-radius-top: 0px;
  --tabs-panel-pad: 14px;
  --tabs-focus-outline: none;
  --tabs-focus-offset: -2px;
  --tabs-duration: 0ms;
}

/* 进度条：兜底中性值，六个主题各自覆盖 */
:root {
  --progress-h: 6px;
  --progress-radius: 999px;
  --progress-track: rgba(0, 0, 0, 0.12);
  --progress-track-shadow: none;
  --progress-track-image: none;
  --progress-border-w: 0px;
  --progress-border: transparent;
  --progress-fill: var(--ui-accent);
  --progress-fill-radius: var(--progress-radius);
  --progress-fill-shadow: none;
  --progress-fill-image: none;
  --progress-duration: 0ms;
  --progress-indeterminate-w: 30%;
  --progress-indeterminate-travel: 333%;
  --progress-indeterminate-duration: 1500ms;
  --progress-indeterminate-ease: ease-in-out;
}

/* 提示气泡：兜底中性值 */
:root {
  --tooltip-bg: rgba(32, 32, 32, 0.92);
  --tooltip-fg: #ffffff;
  --tooltip-border: transparent;
  --tooltip-border-w: 0px;
  --tooltip-radius: 6px;
  --tooltip-pad-y: 5px;
  --tooltip-pad-x: 8px;
  --tooltip-font-size: 12px;
  --tooltip-max-w: 320px;
  --tooltip-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
  --tooltip-offset: 8px;
  --tooltip-show-delay: 500ms;
  --tooltip-hide-delay: 100ms;
  --tooltip-duration: 0ms;
  /* 原生只有 Win11 的 XAML tooltip 会在键盘 focus 时显示，其余平台不显示 */
  --tooltip-focus-show: 1;
}
