/* 共享视觉契约：主页面与同源 PDF iframe 必须同时加载。
 * 参考 Apple Liquid Glass 的导航/内容分层及同心圆角原则。
 * 12/20/28px 是本 Web 应用的尺寸令牌，不是 Apple 规定的固定像素值。
 * 分段导航 20px 与内层选项 12px 相差 8px，对应导航的 8px 内边距。
 * 胶囊和圆形图标保留各自几何形状。
 */
:root {
  --radius-control: 12px;
  --radius-card: 20px;
  --radius-sheet: 28px;
  --radius-pill: 999px;
  --radius-circle: 50%;
  --layout-gap: 24px;
  --panel-padding: 20px;
  --layout-gap-compact: 16px;
  --ui-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  --ui-accent: #276bbe;
  --ui-ink: #1f2937;
  --ui-ink-secondary: #556274;
  --ui-border: #dce2ea;
  --ui-page-bg: #f3f6fb;
  --ui-content-bg: #ffffff;
  --ui-field-bg: #f8fafc;
  --ui-glass-solid: #f3f6fb;
  --ui-glass-bg: rgba(255, 255, 255, 0.82);
  --ui-glass-border: rgba(255, 255, 255, 0.9);
  --ui-glass-filter: blur(20px) saturate(145%);
  --ui-glass-shadow: 0 8px 28px rgba(28, 44, 68, 0.09), inset 0 1px 0 rgba(255, 255, 255, 0.8);
  --ui-content-shadow: 0 3px 16px rgba(28, 44, 68, 0.05);
  --ui-selection-fill: rgba(39, 107, 190, 0.12);
  --ui-focus-ring: 0 0 0 3px rgba(39, 107, 190, 0.25);
  --ui-motion: 180ms cubic-bezier(0.2, 0.7, 0.2, 1);
  color-scheme: light;
}

[data-bs-theme="dark"] {
  --ui-accent: #8fb9e8;
  --ui-ink: #e8edf5;
  --ui-ink-secondary: #b1bfd1;
  --ui-border: #43516a;
  --ui-page-bg: #101827;
  --ui-content-bg: #1b2436;
  --ui-field-bg: #141e30;
  --ui-glass-solid: #1b2436;
  --ui-glass-bg: rgba(25, 35, 53, 0.88);
  --ui-glass-border: rgba(170, 189, 214, 0.28);
  --ui-glass-shadow: 0 8px 28px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.08);
  --ui-content-shadow: 0 3px 16px rgba(0, 0, 0, 0.2);
  --ui-selection-fill: rgba(143, 185, 232, 0.16);
  --ui-focus-ring: 0 0 0 3px rgba(143, 185, 232, 0.4);
  color-scheme: dark;
}

/* 不支持背景模糊时使用实色，避免透明控件叠在复杂内容上。 */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  :root, [data-bs-theme="dark"] {
    --ui-glass-bg: var(--ui-glass-solid);
    --ui-glass-filter: none;
  }
}

@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
  :root, [data-bs-theme="dark"] {
    --ui-glass-bg: var(--ui-glass-solid);
    --ui-glass-border: var(--ui-border);
    --ui-glass-filter: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  :root { --ui-motion: 0ms; }
}

/* 页面级背景/卡片的留白统一响应断点，表单内部的语义间距独立保留。 */
@media (max-width: 991.98px) {
  :root {
    --layout-gap: var(--layout-gap-compact);
    --panel-padding: var(--layout-gap-compact);
  }
}
