/* 科技风只在已核验管理员主动选择后生效；与印章主题共用视觉语义层。 */
@layer debater-visual-system {
  .tech-theme-options {
    margin: 10px 8px 6px;
    padding: 12px 4px 4px;
    border-top: 1px solid var(--dv-line, #4b4035);
    color: var(--dv-text, #f6f1e8);
    font: 13px/1.5 var(--font-sans, sans-serif);
  }
  .tech-theme-options > p { display: flex; align-items: center; justify-content: space-between; margin: 0 8px 8px; font-weight: 600; }
  .tech-theme-options > p small { padding: 2px 6px; border: 1px solid var(--dv-line); border-radius: 4px; color: var(--dv-muted); font-size: 10px; font-weight: 400; }
  .tech-theme-options button {
    display: flex !important; align-items: center; gap: 12px; width: 100%; min-height: 52px !important;
    padding: 8px !important; border: 1px solid transparent !important; border-radius: 8px !important;
    color: inherit !important; background: transparent !important; text-align: left; cursor: pointer;
    font: inherit; box-shadow: none !important;
  }
  .tech-theme-options button:is(:hover, [aria-pressed='true']) { background: var(--dv-active, #29231e) !important; border-color: var(--dv-line) !important; }
  .tech-theme-options button:focus-visible { outline: 2px solid var(--dv-accent) !important; outline-offset: 2px; }
  .tech-theme-options button > i { flex: 0 0 30px; height: 30px; border-radius: 6px; background: linear-gradient(135deg, #0b1429 40%, #278bdb); box-shadow: inset 0 0 0 1px #57cdf06b; }
  .tech-theme-options button[data-tech-choice='light'] > i { background: linear-gradient(135deg, #eef7ff 40%, #2384dd); }
  .tech-theme-options button[data-tech-choice='seal'] > i { background: linear-gradient(135deg, #241a13 40%, #c1272d); box-shadow: inset 0 0 0 1px #cba66e66; }
  .tech-theme-options button > span { flex: 1; }
  .tech-theme-options button small { display: block; color: var(--dv-muted); font-size: 11px; font-weight: 400; }
  .tech-theme-options button[aria-pressed='true']::after { content: '✓'; color: var(--dv-accent); }

  /* 报告的原视觉层会异步追加；显式根选择器使科技令牌不受插入顺序影响。 */
  html:root[data-debater-tech='on'][data-tech-tone] {
    color-scheme: dark !important;
    --dv-bg: #0b0e14;
    --dv-surface: #121720;
    --dv-raised: #1c2533;
    --dv-input: #10151e;
    --dv-text: #eaf3ff;
    --dv-secondary: #b5c7e1;
    --dv-muted: #8fa9cb;
    --dv-line: #2b3749;
    --dv-accent: #a5c9ff;
    --dv-action: #1662c9;
    --dv-action-rgb: 22 98 201;
    --dv-accent-rgb: 165 201 255;
    --dv-gold: #88bcff;
    --dv-gold-rgb: 136 188 255;
    --dv-danger: #ffaaa8;
    --dv-on-action: #fff;
    --dv-font: Inter, 'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', system-ui, -apple-system, sans-serif;
    --dv-mono-font: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
    --dv-title-font: var(--dv-font);
    --dv-active: color-mix(in srgb, var(--dv-accent) 12%, var(--dv-surface));
    --dv-danger-tint: color-mix(in srgb, var(--dv-danger) 12%, var(--dv-surface));
    --dv-action-hover: color-mix(in srgb, var(--dv-action) 88%, #000);
    --dv-panel-radius: 10px;
    --dv-control-radius: 8px;
    --dv-shadow: 0 1px 0 rgb(210 228 255 / 3%), 0 12px 36px rgb(0 8 28 / 20%);
    --dv-scroll-thumb: #43516a;
    --dv-focus-ring: 0 0 0 3px rgb(165 201 255 / 14%);
  }
  html:root[data-debater-tech='on'][data-tech-tone='paper'] {
    color-scheme: light !important;
    --dv-bg: #f5f8fc;
    --dv-surface: #ffffff;
    --dv-raised: #e5effb;
    --dv-input: #ffffff;
    --dv-text: #132d50;
    --dv-secondary: #3d5778;
    --dv-muted: #526b88;
    --dv-line: #ccd9e9;
    --dv-accent: #0962ae;
    --dv-action: #155fca;
    --dv-action-rgb: 21 95 202;
    --dv-accent-rgb: 9 98 174;
    --dv-gold: #2164a9;
    --dv-gold-rgb: 33 100 169;
    --dv-danger: #b52f38;
    --dv-shadow: 0 1px 2px rgb(32 76 130 / 3%), 0 10px 32px rgb(32 76 130 / 6%);
    --dv-scroll-thumb: #a1b3cb;
    --dv-focus-ring: 0 0 0 3px rgb(9 98 174 / 12%);
  }
  html[data-debater-tech='on'] body {
    background-color: var(--dv-bg) !important;
    background-image: none !important;
  }
  html[data-debater-tech='on'] :is(#debater-function-wallpaper, .global-chinese-watermark, app-particles) { display: none !important; }
  html[data-debater-tech='on'] :is(nav[aria-label='主导航'], .admin-header, footer) {
    background: color-mix(in srgb, var(--dv-bg) 94%, transparent) !important;
    border-color: var(--dv-line) !important;
  }
  html[data-debater-tech='on'] {
    scrollbar-color: var(--dv-scroll-thumb) var(--dv-bg) !important;
  }
  html[data-debater-tech='on'] ::-webkit-scrollbar { width: 10px; height: 10px; }
  html[data-debater-tech='on'] ::-webkit-scrollbar-track { background: var(--dv-bg) !important; }
  html[data-debater-tech='on'] ::-webkit-scrollbar-thumb {
    background: var(--dv-scroll-thumb) !important;
    border: 3px solid var(--dv-bg) !important;
    border-radius: 10px !important;
  }
  html[data-debater-tech='on'] ::selection { color: var(--dv-text); background: var(--dv-active); }
  html[data-debater-tech='on'] nav[aria-label='主导航'] {
    background: color-mix(in srgb, var(--dv-bg) 92%, transparent) !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
    box-shadow: 0 1px 0 rgb(var(--dv-accent-rgb) / 3%) !important;
  }
  html[data-debater-tech='on'] nav[aria-label='主导航'] :is(.global-nav-link,.managed-nav-link) {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    color: var(--dv-secondary) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    transition: color 150ms ease, background-color 150ms ease;
  }
  html[data-debater-tech='on'] nav[aria-label='主导航'] :is(.global-nav-link,.managed-nav-link):is(:hover,[aria-current='page']) {
    color: var(--dv-accent) !important;
  }
  html[data-debater-tech='on'] nav[aria-label='主导航'] :is(.global-nav-link,.managed-nav-link)[aria-current='page'] {
    text-decoration: underline;
    text-underline-offset: 9px;
    text-decoration-thickness: 2px;
    text-decoration-color: color-mix(in srgb, var(--dv-accent) 70%, transparent);
  }
  html[data-debater-tech='on'] :is(.theme-picker-container > div,#site-navigation-tools,[aria-label='移动端菜单']) {
    background: var(--dv-surface) !important;
    border: 1px solid var(--dv-line) !important;
    box-shadow: var(--dv-shadow) !important;
  }
  html[data-debater-tech='on'] [aria-label='移动端菜单'] > a[aria-current='page'] {
    background: var(--dv-active) !important;
    color: var(--dv-accent) !important;
  }
  html[data-debater-tech='on'] [aria-label='移动端菜单'] .managed-mobile-links {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 4px 8px;
  }
  html[data-debater-tech='on'] [aria-label='移动端菜单'] .managed-mobile-links > a {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 10px 12px;
    color: var(--dv-secondary) !important;
    border: 1px solid transparent;
    border-radius: 8px;
  }
  html[data-debater-tech='on'] [aria-label='移动端菜单'] .managed-mobile-links > a:is(:hover,[aria-current='page']) {
    color: var(--dv-accent) !important;
    background: var(--dv-active) !important;
    border-color: var(--dv-line) !important;
  }
  html[data-debater-tech='on'] .theme-picker-container > button {
    color: var(--dv-secondary) !important;
    background: var(--dv-surface) !important;
    border-color: var(--dv-line) !important;
  }
  html[data-debater-tech='on'] :is([data-dv-control='button'],[data-dv-control='icon'],[data-dv-control='link']) {
    font-weight: 550;
    transition: background-color 150ms ease, border-color 150ms ease, box-shadow 150ms ease, color 150ms ease;
  }
  html[data-debater-tech='on'] [data-dv-field='true'] {
    transition: border-color 150ms ease, box-shadow 150ms ease;
  }
  html[data-debater-tech='on'] [data-dv-field='true']:focus:not([aria-invalid='true']) {
    border-color: var(--dv-accent) !important;
    box-shadow: var(--dv-focus-ring) !important;
  }
  html[data-debater-tech='on'] [data-dv-field='true'][aria-invalid='true']:focus { outline-color: var(--dv-danger) !important; }
  html[data-debater-tech='on'] footer {
    color: var(--dv-muted) !important;
    font-family: var(--dv-font) !important;
  }
  html[data-debater-tech='on'] footer a { color: var(--dv-muted) !important; transition: color 150ms ease; }
  html[data-debater-tech='on'] footer a:is(:hover,:focus-visible) { color: var(--dv-accent) !important; }
  @media (prefers-reduced-motion: reduce) {
    html[data-debater-tech='on'] :is(nav[aria-label='主导航'] *,[data-dv-control],[data-dv-field],footer a) { transition: none !important; }
  }
  html[data-debater-tech='on'] nav[aria-label='主导航'] [routerlink='/'] > div:first-child {
    background: linear-gradient(135deg, #207de3, #0f4a9e) !important;
    border: 1px solid #73d8ff66 !important; border-radius: 8px !important;
  }
  html[data-debater-tech='on'] nav[aria-label='主导航'] [routerlink='/'] span[class*='bg-gradient'] {
    color: var(--dv-secondary) !important; background: var(--dv-raised) !important; border-color: var(--dv-line) !important;
  }
  html[data-debater-tech='on'] .theme-picker-container > div > button { background: transparent !important; }
  html[data-debater-tech='on'] .theme-picker-container > div > button > span:last-child:has(+ svg),
  html[data-debater-tech='on'] .theme-picker-container > div > button > svg { display: none !important; }

  html[data-debater-tech='on'] :is(.apt-workbench, [data-product-tier], .apt-commentary-reader) {
    --apt-paper: var(--dv-surface) !important;
    --apt-input: var(--dv-input) !important;
    --apt-ink: var(--dv-text) !important;
    --apt-muted: var(--dv-muted) !important;
    --apt-line: var(--dv-line) !important;
    --apt-accent: var(--dv-accent) !important;
    --apt-action: var(--dv-action) !important;
  }
}
