/* Generated by node deploy/flagd/sync-panel-theme.mjs. */
/* ui-theme/base.css */
/* Base variables referenced by the token sheets and component CSS but defined
 * upstream (deepsuite theme/global.css) — supplied here so the composite
 * --dsw-font-* variables resolve and motion rides the upstream curve. Code
 * font stack deliberately omits a bare `monospace` tail (Windows CJK falls
 * back to SimSun otherwise). */
:root {
  --dsw-font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC',
    'Hiragino Sans GB', 'Microsoft YaHei', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  --ds-font-family-code: 'SF Mono', 'JetBrains Mono', 'Fira Code', Consolas,
    'Liberation Mono', Menlo, Courier, 'PingFang SC', 'Microsoft YaHei';
  --ds-ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  --ds-transition-duration: 0.2s;
  --ds-transition-duration-fast: 0.1s;
  --ds-transition-duration-slow: 0.3s;
}

/* ui-theme/corner-shape.css */
/* Smooth corner curvature for every rounded surface. Inside the support
 * guard, all corners curve along superellipse(1.5) — between a circular arc
 * (round = superellipse(1)) and a squircle (superellipse(2)) — instead of the
 * default arc; engines without corner-shape keep circular corners because the
 * token and the rule exist only inside the guard.
 *
 * corner-shape does not inherit, so the universal selector applies the token
 * to elements and their ::before/::after; other pseudo-elements (for example
 * the ::-webkit-scrollbar parts) stay circular.
 *
 * Full-round shapes opt out where they are declared: a superellipse deforms a
 * circle into a squircle and squares off capsule ends, so every effectively
 * uncapped radius (50%, 100%, or a pill radius far above the box size) pairs
 * `corner-shape: round` with its `border-radius` in the owning component
 * sheet. The corner-shape stylesheet spec enforces that pairing. */
@supports (corner-shape: superellipse(1.5)) {
  :root {
    --dsw-corner-shape: superellipse(1.5);
  }

  *,
  *::before,
  *::after {
    corner-shape: var(--dsw-corner-shape);
  }
}

/* ui-theme/design-platform.css */
/* Figma font-weight 510 (an SF Pro variable-font weight) always renders as
   font-weight: 500 in this UI — non-variable webfonts snap intermediate
   weights unpredictably across platforms. */
body {
  --dsw-static-amber-100: rgb(254, 245, 231);
  --dsw-static-amber-400: rgb(247, 173, 49);
  --dsw-static-amber-500: rgb(245, 158, 11);
  --dsw-static-amber-600: rgb(221, 134, 41);
  --dsw-static-amber-900: rgb(39, 36, 31);
  --dsw-static-blue-100: rgb(219, 234, 254);
  --dsw-static-blue-300: rgb(147, 197, 253);
  --dsw-static-blue-400: rgb(96, 165, 250);
  --dsw-static-blue-450: rgb(77, 147, 248);
  --dsw-static-blue-500: rgb(59, 130, 246);
  --dsw-static-blue-50: rgb(239, 246, 255);
  --dsw-static-blue-50p: rgb(234, 243, 255);
  --dsw-static-blue-600: rgb(37, 99, 235);
  --dsw-static-blue-75: rgb(229, 240, 255);
  --dsw-static-blue-800: rgb(30, 64, 175);
  --dsw-static-blue-900: rgb(14, 48, 116);
  --dsw-static-blue-950: rgb(23, 37, 84);
  --dsw-static-deepseek-100: rgb(228, 237, 253);
  --dsw-static-deepseek-200: rgb(211, 226, 255);
  --dsw-static-deepseek-300: rgb(183, 200, 254);
  --dsw-static-deepseek-400: rgb(103, 158, 254);
  --dsw-static-deepseek-450: rgb(86, 134, 254);
  --dsw-static-deepseek-500: rgb(65, 118, 230);
  --dsw-static-deepseek-50: rgb(237, 243, 254);
  --dsw-static-deepseek-600: rgb(72, 104, 178);
  --dsw-static-deepseek-700-delete: rgb(47, 76, 143);
  --dsw-static-deepseek-800: rgb(52, 65, 91);
  --dsw-static-deepseek-900: rgb(40, 49, 66);
  --dsw-static-green-100: rgb(230, 250, 237);
  --dsw-static-green-400: rgb(78, 209, 126);
  --dsw-static-green-500: rgb(34, 197, 94);
  --dsw-static-green-900: rgb(35, 60, 44);
  --dsw-static-neutral-00: rgb(255, 255, 255);
  --dsw-static-neutral-1000: rgb(0, 0, 0);
  --dsw-static-neutral-100: rgb(245, 245, 245);
  --dsw-static-neutral-150: rgb(237, 237, 237);
  --dsw-static-neutral-200: rgb(229, 229, 229);
  --dsw-static-neutral-250: rgb(220, 220, 220);
  --dsw-static-neutral-300: rgb(212, 212, 212);
  --dsw-static-neutral-400: rgb(162, 164, 166);
  --dsw-static-neutral-500: rgb(127, 130, 135);
  --dsw-static-neutral-50: rgb(250, 250, 250);
  --dsw-static-neutral-550: rgb(101, 103, 107);
  --dsw-static-neutral-600: rgb(84, 85, 87);
  --dsw-static-neutral-700: rgb(60, 60, 61);
  --dsw-static-neutral-800: rgb(41, 41, 41);
  --dsw-static-neutral-850: rgb(33, 33, 35);
  --dsw-static-neutral-900: rgb(15, 15, 15);
  --dsw-static-neutral-bluish-00: rgb(255, 255, 255);
  --dsw-static-neutral-bluish-1000: rgb(15, 17, 21);
  --dsw-static-neutral-bluish-100: rgb(235, 238, 242);
  --dsw-static-neutral-bluish-150: rgb(233, 236, 242);
  --dsw-static-neutral-bluish-200: rgb(225, 229, 238);
  --dsw-static-neutral-bluish-300: rgb(207, 211, 214);
  --dsw-static-neutral-bluish-400: rgb(173, 178, 184);
  --dsw-static-neutral-bluish-500: rgb(151, 157, 166);
  --dsw-static-neutral-bluish-50: rgb(249, 250, 251);
  --dsw-static-neutral-bluish-600: rgb(129, 133, 140);
  --dsw-static-neutral-bluish-60: rgb(245, 246, 247);
  --dsw-static-neutral-bluish-700: rgb(97, 102, 107);
  --dsw-static-neutral-bluish-750: rgb(67, 69, 74);
  --dsw-static-neutral-bluish-75: rgb(241, 243, 245);
  --dsw-static-neutral-bluish-800: rgb(53, 54, 56);
  --dsw-static-neutral-bluish-850: rgb(44, 44, 46);
  --dsw-static-neutral-bluish-875: rgb(35, 35, 36);
  --dsw-static-neutral-bluish-900: rgb(27, 27, 28);
  --dsw-static-neutral-bluish-950: rgb(21, 21, 23);
  --dsw-static-red-100: rgb(254, 226, 226);
  --dsw-static-red-400: rgb(242, 90, 90);
  --dsw-static-red-500: rgb(239, 68, 68);
  --dsw-static-red-50: rgb(254, 242, 242);
  --dsw-static-red-600: rgb(236, 19, 19);
  --dsw-static-red-900: rgb(87, 12, 12);
}

@media (prefers-color-scheme: dark) {
body {
  --dsw-static-amber-100: rgb(254, 245, 231);
  --dsw-static-amber-400: rgb(247, 173, 49);
  --dsw-static-amber-500: rgb(245, 158, 11);
  --dsw-static-amber-600: rgb(221, 134, 41);
  --dsw-static-amber-900: rgb(39, 36, 31);
  --dsw-static-blue-100: rgb(219, 234, 254);
  --dsw-static-blue-300: rgb(147, 197, 253);
  --dsw-static-blue-400: rgb(96, 165, 250);
  --dsw-static-blue-450: rgb(77, 147, 248);
  --dsw-static-blue-500: rgb(59, 130, 246);
  --dsw-static-blue-50: rgb(239, 246, 255);
  --dsw-static-blue-50p: rgb(234, 243, 255);
  --dsw-static-blue-600: rgb(37, 99, 235);
  --dsw-static-blue-75: rgb(229, 240, 255);
  --dsw-static-blue-800: rgb(30, 64, 175);
  --dsw-static-blue-900: rgb(14, 48, 116);
  --dsw-static-blue-950: rgb(23, 37, 84);
  --dsw-static-deepseek-100: rgb(228, 237, 253);
  --dsw-static-deepseek-200: rgb(211, 226, 255);
  --dsw-static-deepseek-300: rgb(183, 200, 254);
  --dsw-static-deepseek-400: rgb(103, 158, 254);
  --dsw-static-deepseek-450: rgb(86, 134, 254);
  --dsw-static-deepseek-500: rgb(65, 118, 230);
  --dsw-static-deepseek-50: rgb(237, 243, 254);
  --dsw-static-deepseek-600: rgb(72, 104, 178);
  --dsw-static-deepseek-700-delete: rgb(47, 76, 143);
  --dsw-static-deepseek-800: rgb(52, 65, 91);
  --dsw-static-deepseek-900: rgb(40, 49, 66);
  --dsw-static-green-100: rgb(230, 250, 237);
  --dsw-static-green-400: rgb(78, 209, 126);
  --dsw-static-green-500: rgb(34, 197, 94);
  --dsw-static-green-900: rgb(35, 60, 44);
  --dsw-static-neutral-00: rgb(255, 255, 255);
  --dsw-static-neutral-1000: rgb(0, 0, 0);
  --dsw-static-neutral-100: rgb(245, 245, 245);
  --dsw-static-neutral-150: rgb(237, 237, 237);
  --dsw-static-neutral-200: rgb(229, 229, 229);
  --dsw-static-neutral-250: rgb(220, 220, 220);
  --dsw-static-neutral-300: rgb(212, 212, 212);
  --dsw-static-neutral-400: rgb(162, 164, 166);
  --dsw-static-neutral-500: rgb(127, 130, 135);
  --dsw-static-neutral-50: rgb(250, 250, 250);
  --dsw-static-neutral-550: rgb(101, 103, 107);
  --dsw-static-neutral-600: rgb(84, 85, 87);
  --dsw-static-neutral-700: rgb(60, 60, 61);
  --dsw-static-neutral-800: rgb(41, 41, 41);
  --dsw-static-neutral-850: rgb(33, 33, 35);
  --dsw-static-neutral-900: rgb(15, 15, 15);
  --dsw-static-neutral-bluish-00: rgb(255, 255, 255);
  --dsw-static-neutral-bluish-1000: rgb(15, 17, 21);
  --dsw-static-neutral-bluish-100: rgb(235, 238, 242);
  --dsw-static-neutral-bluish-150: rgb(233, 236, 242);
  --dsw-static-neutral-bluish-200: rgb(225, 229, 238);
  --dsw-static-neutral-bluish-300: rgb(207, 211, 214);
  --dsw-static-neutral-bluish-400: rgb(173, 178, 184);
  --dsw-static-neutral-bluish-500: rgb(151, 157, 166);
  --dsw-static-neutral-bluish-50: rgb(249, 250, 251);
  --dsw-static-neutral-bluish-600: rgb(129, 133, 140);
  --dsw-static-neutral-bluish-60: rgb(249, 250, 251);
  --dsw-static-neutral-bluish-700: rgb(97, 102, 107);
  --dsw-static-neutral-bluish-750: rgb(67, 69, 74);
  --dsw-static-neutral-bluish-75: rgb(241, 243, 245);
  --dsw-static-neutral-bluish-800: rgb(53, 54, 56);
  --dsw-static-neutral-bluish-850: rgb(44, 44, 46);
  --dsw-static-neutral-bluish-875: rgb(35, 35, 36);
  --dsw-static-neutral-bluish-900: rgb(27, 27, 28);
  --dsw-static-neutral-bluish-950: rgb(21, 21, 23);
  --dsw-static-red-100: rgb(254, 226, 226);
  --dsw-static-red-400: rgb(242, 90, 90);
  --dsw-static-red-500: rgb(239, 68, 68);
  --dsw-static-red-50: rgb(254, 242, 242);
  --dsw-static-red-600: rgb(236, 19, 19);
  --dsw-static-red-900: rgb(87, 12, 12);
}
}

body {
  --dsw-alias-bg-base: var(--dsw-static-neutral-bluish-00);
  --dsw-alias-bg-document-preview: var(--dsw-static-neutral-bluish-750);
  --dsw-alias-label-document-preview: var(--dsw-static-neutral-bluish-200);
  --dsw-alias-bg-layer-1: var(--dsw-static-neutral-bluish-00);
  --dsw-alias-bg-layer-2: var(--dsw-static-neutral-bluish-00);
  --dsw-alias-bg-layer-3: var(--dsw-static-neutral-bluish-00);
  --dsw-alias-bg-mask-1: rgba(0, 0, 0, 0.24);
  --dsw-alias-bg-mask-2: rgba(0, 0, 0, 0.12);
  --dsw-alias-bg-mask-3: rgba(0, 0, 0, 0.48);
  --dsw-alias-bg-mask-photo: rgba(0, 0, 0, 0.88);
  --dsw-alias-bg-mask-drop: rgba(255, 255, 255, 0.7);
  --dsw-alias-bg-module-platform: var(--dsw-static-neutral-bluish-60);
  --dsw-alias-bg-multi-select: var(--dsw-static-neutral-bluish-60);
  --dsw-alias-bg-overlay: var(--dsw-static-neutral-bluish-150);
  --dsw-alias-bg-skeleton: rgba(0, 0, 0, 0.04);
  --dsw-alias-border-inverted2: rgba(0, 0, 0, 0);
  --dsw-alias-border-inverted: rgba(0, 0, 0, 0);
  --dsw-alias-border-l1: rgba(0, 0, 0, 0.04);
  --dsw-alias-border-l2-darkmode-thin: rgba(0, 0, 0, 0.1);
  --dsw-alias-border-l2: rgba(0, 0, 0, 0.1);
  --dsw-alias-border-l3: rgba(0, 0, 0, 0.12);
  --dsw-alias-border-l4: rgba(0, 0, 0, 0.16);
  --dsw-alias-brand-primary-invert: var(--dsw-static-neutral-bluish-1000);
  --dsw-alias-brand-primary-new-colorprimary-new-color: rgb(65, 118, 230);
  --dsw-alias-brand-primary: var(--dsw-static-neutral-bluish-1000);
  --dsw-alias-brand-text: var(--dsw-static-neutral-bluish-1000);
  --dsw-alias-button-contrast-fill: var(--dsw-static-neutral-bluish-700);
  --dsw-alias-button-elevated-fill: var(--dsw-static-neutral-bluish-00);
  --dsw-alias-button-floating-fill: var(--dsw-static-neutral-bluish-00);
  --dsw-alias-button-floating-hover: var(--dsw-static-neutral-bluish-75);
  --dsw-alias-button-ghost-active-border: var(--dsw-static-neutral-bluish-500);
  --dsw-alias-button-ghost-active-fill: var(--dsw-static-neutral-bluish-100);
  --dsw-alias-button-ghost-active-hover: var(--dsw-static-neutral-bluish-150);
  --dsw-alias-button-info-fill: var(--dsw-static-deepseek-500);
  --dsw-alias-button-info-hover: var(--dsw-static-deepseek-400);
  --dsw-alias-button-primary-dimmed: var(--dsw-static-neutral-bluish-100);
  --dsw-alias-button-primary-fill: var(--dsw-alias-brand-primary);
  --dsw-alias-button-primary-hover: var(--dsw-static-neutral-bluish-750);
  --dsw-alias-button-tool-bar-fill-invisible: rgba(31, 31, 31, 0.36);
  --dsw-alias-button-tool-bar-fill: rgba(84, 85, 87, 0.5);
  --dsw-alias-button-tool-bar-hover: rgba(84, 85, 87, 0.6);
  --dsw-alias-interactive-bg-active: rgba(38, 49, 72, 0.1);
  --dsw-alias-interactive-bg-hover-accent: rgba(38, 49, 72, 0.14);
  --dsw-alias-interactive-bg-hover-danger: rgba(236, 19, 19, 0.05);
  --dsw-alias-interactive-bg-hover-solid: var(--dsw-static-neutral-bluish-75);
  --dsw-alias-interactive-bg-hover: rgba(38, 49, 72, 0.06);
  --dsw-alias-label-caption: var(--dsw-static-neutral-bluish-400);
  --dsw-alias-label-dimmed: var(--dsw-static-neutral-bluish-200);
  --dsw-alias-label-primary-bluish: var(--dsw-static-blue-900);
  --dsw-alias-label-primary-dimmed: var(--dsw-static-neutral-bluish-950);
  --dsw-alias-label-primary-foreground: var(--dsw-static-neutral-bluish-00);
  --dsw-alias-label-primary-inverted: var(--dsw-static-neutral-bluish-00);
  --dsw-alias-label-primary: var(--dsw-static-neutral-bluish-1000);
  --dsw-alias-label-secondary: var(--dsw-static-neutral-bluish-700);
  --dsw-alias-label-tertiary: var(--dsw-static-neutral-bluish-600);
  --dsw-alias-link: var(--dsw-static-deepseek-500);
  --dsw-alias-markdown-citation: var(--dsw-static-neutral-bluish-100);
  --dsw-alias-markdown-code-block-banner: var(--dsw-static-neutral-bluish-50);
  --dsw-alias-markdown-code-block: var(--dsw-static-neutral-bluish-50);
  --dsw-alias-markdown-code-segment-selected: var(--dsw-static-neutral-bluish-00);
  --dsw-alias-markdown-code-segment-unselected: var(--dsw-static-neutral-bluish-75);
  --dsw-alias-markdown-inline-code: var(--dsw-static-neutral-50);
  --dsw-alias-markdown-placeholder: var(--dsw-static-neutral-bluish-60);
  --dsw-alias-markdown-tag: var(--dsw-static-neutral-bluish-75);
  --dsw-alias-scrollbar-bg-l1: var(--dsw-static-neutral-200);
  --dsw-alias-scrollbar-bg-l2: var(--dsw-static-neutral-200);
  --dsw-alias-scrollbar-hover-l1: var(--dsw-static-neutral-300);
  --dsw-alias-scrollbar-hover-l2: var(--dsw-static-neutral-300);
  --dsw-alias-state-business-primary: var(--dsw-static-deepseek-500);
  --dsw-alias-state-business-tertiary: var(--dsw-static-deepseek-100);
  --dsw-alias-state-error-primary: var(--dsw-static-red-600);
  --dsw-alias-state-error-secondary: var(--dsw-static-red-400);
  --dsw-alias-state-success-primary: var(--dsw-static-green-500);
  --dsw-alias-state-success-secondary: var(--dsw-static-green-400);
  --dsw-alias-state-success-tertiary: var(--dsw-static-green-100);
  --dsw-alias-state-warn-label: var(--dsw-static-amber-600);
  --dsw-alias-state-warn-primary: var(--dsw-static-amber-500);
  --dsw-alias-state-warn-secondary: var(--dsw-static-amber-400);
  --dsw-alias-state-warn-tertiary: var(--dsw-static-amber-100);
  --dsw-alias-toast-bg: var(--dsw-static-neutral-bluish-800);
  --dsw-alias-tooltip-bg: var(--dsw-static-neutral-bluish-850);
  --dsw-specific-bubble-highlight: var(--dsw-static-deepseek-200);
  --dsw-specific-bubble: var(--dsw-static-deepseek-50);
  --dsw-specific-input-major: var(--dsw-static-neutral-bluish-00);
  --dsw-specific-login-input: var(--dsw-static-neutral-bluish-50);
  --dsw-specific-menu: var(--dsw-alias-bg-layer-3);
  --dsw-specific-selector: var(--dsw-static-neutral-bluish-60);
  --dsw-specific-sidebar-fill: var(--dsw-static-neutral-bluish-50);
  --dsw-specific-sidebar-nav-item-active-accent: var(--dsw-static-deepseek-100);
  --dsw-specific-sidebar-nav-item-active: var(--dsw-static-neutral-bluish-100);
  --dsw-specific-sidebar-nav-item-hover: var(--dsw-static-neutral-bluish-75);
  --dsw-specific-tip: var(--dsw-static-neutral-bluish-60);

  background-color: var(--dsw-alias-bg-base);
}

@media (prefers-color-scheme: dark) {
body {
  --dsw-alias-bg-base: var(--dsw-static-neutral-bluish-950);
  --dsw-alias-bg-document-preview: var(--dsw-static-neutral-bluish-950);
  --dsw-alias-label-document-preview: var(--dsw-static-neutral-bluish-300);
  --dsw-alias-bg-layer-1: var(--dsw-static-neutral-bluish-875);
  --dsw-alias-bg-layer-2: var(--dsw-static-neutral-bluish-850);
  --dsw-alias-bg-layer-3: var(--dsw-static-neutral-bluish-800);
  --dsw-alias-bg-mask-1: rgba(0, 0, 0, 0.5);
  --dsw-alias-bg-mask-2: rgba(0, 0, 0, 0.2);
  --dsw-alias-bg-mask-3: rgba(0, 0, 0, 0.48);
  --dsw-alias-bg-mask-photo: rgba(0, 0, 0, 0.88);
  --dsw-alias-bg-mask-drop: rgba(39, 39, 48, 0.7);
  --dsw-alias-bg-module-platform: var(--dsw-static-neutral-bluish-800);
  --dsw-alias-bg-multi-select: var(--dsw-static-neutral-850);
  --dsw-alias-bg-overlay: var(--dsw-static-neutral-bluish-700);
  --dsw-alias-bg-skeleton: rgba(255, 255, 255, 0.08);
  --dsw-alias-border-inverted2: rgba(255, 255, 255, 0.08);
  --dsw-alias-border-inverted: rgba(255, 255, 255, 0.06);
  --dsw-alias-border-l1: rgba(255, 255, 255, 0.06);
  --dsw-alias-border-l2-darkmode-thin: rgba(255, 255, 255, 0.06);
  --dsw-alias-border-l2: rgba(255, 255, 255, 0.12);
  --dsw-alias-border-l3: rgba(255, 255, 255, 0.16);
  --dsw-alias-border-l4: rgba(255, 255, 255, 0.2);
  --dsw-alias-brand-primary-invert: var(--dsw-static-neutral-bluish-50);
  --dsw-alias-brand-primary-new-colorprimary-new-color: var(--dsw-static-deepseek-450);
  --dsw-alias-brand-primary: var(--dsw-static-neutral-bluish-50);
  --dsw-alias-brand-text: var(--dsw-static-neutral-bluish-50);
  --dsw-alias-button-contrast-fill: var(--dsw-static-neutral-bluish-50);
  --dsw-alias-button-elevated-fill: var(--dsw-static-neutral-bluish-750);
  --dsw-alias-button-floating-fill: var(--dsw-static-neutral-bluish-850);
  --dsw-alias-button-floating-hover: var(--dsw-static-neutral-bluish-800);
  --dsw-alias-button-ghost-active-border: var(--dsw-static-neutral-bluish-600);
  --dsw-alias-button-ghost-active-fill: var(--dsw-static-neutral-bluish-750);
  --dsw-alias-button-ghost-active-hover: var(--dsw-static-neutral-bluish-700);
  --dsw-alias-button-info-fill: var(--dsw-static-deepseek-400);
  --dsw-alias-button-info-hover: var(--dsw-static-deepseek-500);
  --dsw-alias-button-primary-dimmed: var(--dsw-static-neutral-bluish-750);
  --dsw-alias-button-primary-fill: var(--dsw-alias-brand-primary);
  --dsw-alias-button-primary-hover: var(--dsw-static-neutral-bluish-100);
  --dsw-alias-button-tool-bar-fill-invisible: rgba(31, 31, 31, 0.36);
  --dsw-alias-button-tool-bar-fill: rgba(84, 85, 87, 0.5);
  --dsw-alias-button-tool-bar-hover: rgba(84, 85, 87, 0.6);
  --dsw-alias-interactive-bg-active: rgba(255, 255, 255, 0.14);
  --dsw-alias-interactive-bg-hover-accent: rgba(255, 255, 255, 0.24);
  --dsw-alias-interactive-bg-hover-danger: rgba(242, 90, 90, 0.15);
  --dsw-alias-interactive-bg-hover-solid: var(--dsw-static-neutral-bluish-800);
  --dsw-alias-interactive-bg-hover: rgba(255, 255, 255, 0.08);
  --dsw-alias-label-caption: var(--dsw-static-neutral-bluish-600);
  --dsw-alias-label-dimmed: var(--dsw-static-neutral-bluish-750);
  --dsw-alias-label-primary-bluish: var(--dsw-static-neutral-bluish-50);
  --dsw-alias-label-primary-dimmed: var(--dsw-static-neutral-bluish-100);
  --dsw-alias-label-primary-foreground: var(--dsw-static-neutral-bluish-1000);
  --dsw-alias-label-primary-inverted: var(--dsw-static-neutral-bluish-800);
  --dsw-alias-label-primary: var(--dsw-static-neutral-bluish-50);
  --dsw-alias-label-secondary: var(--dsw-static-neutral-bluish-300);
  --dsw-alias-label-tertiary: var(--dsw-static-neutral-bluish-400);
  --dsw-alias-link: var(--dsw-static-deepseek-400);
  --dsw-alias-markdown-citation: var(--dsw-static-neutral-bluish-800);
  --dsw-alias-markdown-code-block-banner: var(--dsw-static-neutral-bluish-850);
  --dsw-alias-markdown-code-block: var(--dsw-static-neutral-bluish-900);
  --dsw-alias-markdown-code-segment-selected: var(--dsw-static-neutral-bluish-800);
  --dsw-alias-markdown-code-segment-unselected: var(--dsw-static-neutral-bluish-900);
  --dsw-alias-markdown-inline-code: var(--dsw-static-neutral-800);
  --dsw-alias-markdown-placeholder: var(--dsw-static-neutral-bluish-850);
  --dsw-alias-markdown-tag: var(--dsw-static-neutral-bluish-850);
  --dsw-alias-scrollbar-bg-l1: var(--dsw-static-neutral-700);
  --dsw-alias-scrollbar-bg-l2: var(--dsw-static-neutral-600);
  --dsw-alias-scrollbar-hover-l1: var(--dsw-static-neutral-600);
  --dsw-alias-scrollbar-hover-l2: var(--dsw-static-neutral-550);
  --dsw-alias-state-business-primary: var(--dsw-static-deepseek-400);
  --dsw-alias-state-business-tertiary: var(--dsw-static-deepseek-800);
  --dsw-alias-state-error-primary: var(--dsw-static-red-400);
  --dsw-alias-state-error-secondary: var(--dsw-static-red-400);
  --dsw-alias-state-success-primary: var(--dsw-static-green-500);
  --dsw-alias-state-success-secondary: var(--dsw-static-green-400);
  --dsw-alias-state-success-tertiary: var(--dsw-static-green-900);
  --dsw-alias-state-warn-label: var(--dsw-static-amber-600);
  --dsw-alias-state-warn-primary: var(--dsw-static-amber-500);
  --dsw-alias-state-warn-secondary: var(--dsw-static-amber-400);
  --dsw-alias-state-warn-tertiary: var(--dsw-static-amber-900);
  --dsw-alias-toast-bg: var(--dsw-static-neutral-bluish-750);
  --dsw-alias-tooltip-bg: var(--dsw-static-neutral-bluish-750);
  --dsw-specific-bubble-highlight: var(--dsw-static-neutral-bluish-750);
  --dsw-specific-bubble: var(--dsw-static-neutral-bluish-850);
  --dsw-specific-input-major: var(--dsw-static-neutral-bluish-850);
  --dsw-specific-login-input: var(--dsw-static-neutral-bluish-900);
  --dsw-specific-menu: var(--dsw-alias-bg-layer-3);
  --dsw-specific-selector: var(--dsw-static-neutral-bluish-800);
  --dsw-specific-sidebar-fill: var(--dsw-static-neutral-bluish-900);
  --dsw-specific-sidebar-nav-item-active-accent: var(--dsw-static-neutral-bluish-800);
  --dsw-specific-sidebar-nav-item-active: var(--dsw-static-neutral-bluish-750);
  --dsw-specific-sidebar-nav-item-hover: var(--dsw-static-neutral-bluish-850);
  --dsw-specific-tip: var(--dsw-static-neutral-bluish-800);
}
}

/* ui-theme/scrollbar.css */
/* Scrollbar skin: the sole consumer of the four --dsw-alias-scrollbar-*
 * tokens. Without it every scrolling region renders the UA scrollbar, which
 * ignores the theme — a light native bar over the dark palette.
 *
 * The rules sit on `body`, not `html`: design-platform.css declares the
 * --dsw-alias-* tokens on `body` (and the dark overrides on
 * `body[data-ds-dark-theme]`), and custom properties only inherit downward,
 * so an `html` rule resolves them to the guaranteed-invalid value and
 * `scrollbar-color` falls back to `auto`.
 *
 * Surfaces pick their elevation by rebinding --dsh-scrollbar-thumb{,-hover}:
 * the l1 pair here is the base-surface default, and an elevated surface
 * (menu, popover, dialog) rebinds to the l2 pair on its own container. A
 * scroll container may also rebind the three geometry variables below. */

body {
  --dsh-scrollbar-thumb: var(--dsw-alias-scrollbar-bg-l1);
  --dsh-scrollbar-thumb-hover: var(--dsw-alias-scrollbar-hover-l1);
  --dsh-scrollbar-thumb-border: 0px;
  --dsh-scrollbar-track-margin: 0px;
  /* The WebKit bar's layout width, mirrored by the ::-webkit-scrollbar rule
     below. A surface that must align itself beside a space-consuming bar
     (ConversationRoot's overlay composer seat) reads this instead of
     hardcoding the number. */
  --dsh-scrollbar-width: 8px;
}

/* The two paths are mutually exclusive, and the gate is load-bearing rather
   than defensive. A non-`auto` `scrollbar-width` or `scrollbar-color` makes
   Chromium and Safari drop every `::-webkit-scrollbar*` rule for that
   element, including `::-webkit-scrollbar-thumb:hover` — measured in chromium
   as an 8px `::-webkit-scrollbar` width taking effect on its own and being
   ignored as soon as `scrollbar-width: thin` is added. Declaring both
   unconditionally therefore leaves the hover tokens with no rendering at all,
   because the engines that implement the hover pseudo-element are exactly the
   ones the standard properties silence, and Firefox has no hover
   pseudo-element to fall back on.

   `not selector(::-webkit-scrollbar)` is true only where the pseudo-element
   is unimplemented, so Firefox takes the standard path and WebKit-based
   engines take the pseudo-element path. An engine too old for the
   `selector()` function makes the condition invalid, which evaluates false
   and selects the pseudo-element path — the correct side for the pre-16.4
   Safari that is the realistic case. */
@supports not selector(::-webkit-scrollbar) {
  /* Declared on every element rather than inherited from `body`. Inheriting
     would pass down the COLOUR already substituted at `body`, so a descendant
     rebinding --dsh-scrollbar-thumb could not change it; re-declaring makes
     each element substitute the variable as it sees it, which is what gives
     an elevated surface a working rebind. `scrollbar-width` is not an
     inherited property at all, so it needs the per-element declaration
     regardless.

     No hover counterpart exists on this path: `scrollbar-color` states one
     thumb colour and the engine derives its own hover treatment. */
  body,
  body * {
    scrollbar-width: thin;
    scrollbar-color: var(--dsh-scrollbar-thumb) transparent;
  }
}

/* Not gated in turn: an engine that does not implement these pseudo-elements
   drops the rules as unknown selectors, so the gate would only restate what
   selector matching already does. Not inherited either, hence the unscoped
   selectors. */
::-webkit-scrollbar {
  width: var(--dsh-scrollbar-width);
  height: var(--dsh-scrollbar-width);
}

/* Track stays transparent so the thumb reads against whatever surface scrolls
   under it; only the thumb carries a token colour. */
::-webkit-scrollbar-track {
  margin-block: var(--dsh-scrollbar-track-margin);
  background: transparent;
}

::-webkit-scrollbar-thumb {
  border: var(--dsh-scrollbar-thumb-border) solid transparent;
  border-radius: 999px;
  corner-shape: round;
  background: var(--dsh-scrollbar-thumb);
  background-clip: content-box;
}

::-webkit-scrollbar-thumb:hover {
  background-color: var(--dsh-scrollbar-thumb-hover);
}

/* Both scrollbars meeting in a corner: no separate token, so the corner
   matches the transparent track rather than the UA's opaque default. */
::-webkit-scrollbar-corner {
  background: transparent;
}

/* ui-theme/gradient-shadow-text.css */
body {
  --dsw-linear-gradient-think: linear-gradient(180deg, #fff 20.19%, rgba(255, 255, 255, 0) 100%);
  --dsw-linear-think-select: linear-gradient(180deg, #f5f6f7 20.19%, rgba(245, 246, 247, 0) 100%);
  /* 阴影 */
  --dsw-shadow-lv1: 0 2px 4px 0 rgba(0, 0, 0, 0.05);
  --dsw-shadow-lv1-blur: 0 4px 12px 0 rgba(0, 0, 0, 0.02);
  --dsw-shadow-lv2: 0 4px 12px 0 rgba(0, 0, 0, 0.02), 0 2px 8px 0 rgba(0, 0, 0, 0.04);
  --dsw-shadow-lv3:
    0 0 1px 0 rgba(0, 0, 0, 0.2), 0 0 4px 0 rgba(0, 0, 0, 0.02), 0 12px 32px 0 rgba(0, 0, 0, 0.08);
  /* Elevation：浮层/面板/面型按钮的描边+投影三件套。0.5px 发丝描边画在
     box-shadow 里（组件配 border: 0，不占布局），叠两层极淡柔光；深色主题下
     柔光几乎不可见，由描边承担分离。描边颜色经 --dsw-elevation-stroke-color
     间接，组件可重绑（菜单面重绑最浅的 l1、输入框重绑 l2，输入框的
     workspace-trigger 态置 transparent 只保留柔光）。soft 供输入框：更大
     模糊、更低透明度的柔光。默认色只声明在 body 上，让表面的重绑沿继承
     传给真正消费投影的后代。 */
  --dsw-elevation-stroke-color: var(--dsw-alias-border-l4);
  /* blur filter */
  --dsw-mask-blur: blur(2px);
}

/* 派生 elevation 值逐元素声明而非从 body 继承：继承传下来的是在 body 上就
   已替换完 var() 的值，组件重绑 --dsw-elevation-stroke-color 将无法进入
   var(--dsw-elevation-*)；逐元素声明让每个元素按自己看到的描边色重新替换
   （同 scrollbar.css 对 --dsh-scrollbar-thumb 的处理）。 */
body,
body * {
  --dsw-elevation-stroke: 0 0 0 0.5px var(--dsw-elevation-stroke-color);
  --dsw-elevation-panel:
    var(--dsw-elevation-stroke), 0 3px 8px 0 rgba(0, 0, 0, 0.03), 0 0 16px 0 rgba(0, 0, 0, 0.02);
  --dsw-elevation-prominent:
    var(--dsw-elevation-stroke), 0 3px 8px 0 rgba(0, 0, 0, 0.04), 0 0 20px 0 rgba(0, 0, 0, 0.05);
  --dsw-elevation-soft:
    var(--dsw-elevation-stroke), 0 4px 16px 0 rgba(0, 0, 0, 0.03), 0 0 24px 0 rgba(0, 0, 0, 0.03);
}

@media (prefers-color-scheme: dark) {
body {
  --dsw-linear-gradient-think: linear-gradient(180deg, #151517 20.19%, rgba(21, 21, 23, 0) 100%);
  --dsw-linear-think-select: linear-gradient(180deg, #232325 20.19%, rgba(35, 35, 37, 0) 100%);
}
}

/* ---------- 字体 ---------- */
/* 由 @deepseek-figma-plugin/custom-variable-name 插件导出 */
/* Markdown 阶梯整体按 0.875（正文 16 → 14）等比缩放，四舍五入到整数像素；
   重新从 Figma 导出时需要保留这一缩放。 */
/* 正文字号调节：--dsh-content-font-size 由主题 bootstrap 与 ThemePresenter
   写在 body 上（整数 px，12–17，默认 14）。标题与正文变体按同一像素增量
   （--dsh-content-font-delta）随动，保持层级。低一档文本（think、工具/bash
   行的标题与摘要、markdown 表格、流内次级说明等）统一读
   --dsh-content-font-size-secondary：设置 ≤14 时为设置值 −1，>14 时为
   设置值 −2（12→11、13→12、14→13、15→13、16→14、17→15）。式中
   max(13px,·) 的作用是让低设置取 −1 而非 −2，不是结果下限——12 设置下
   层级触底 11px。small、code 属于密集次级文本，保持固定。 */
body {
  --dsh-content-font-delta: calc(var(--dsh-content-font-size, 14px) - 14px);
  --dsh-content-font-size-secondary: min(calc(var(--dsh-content-font-size, 14px) - 1px), max(13px, calc(var(--dsh-content-font-size, 14px) - 2px)));
  --dsh-content-font-delta-secondary: calc(var(--dsh-content-font-size-secondary) - 13px);

  --dsw-font-markdown-h1: 700 calc(21px + var(--dsh-content-font-delta)) / calc(30px + var(--dsh-content-font-delta)) var(--dsw-font-family);
  --dsw-font-markdown-h1-font-family: var(--dsw-font-family);
  --dsw-font-markdown-h1-font-weight: 700;
  --dsw-font-markdown-h1-line-height: calc(30px + var(--dsh-content-font-delta));
  --dsw-font-markdown-h1-font-size: calc(21px + var(--dsh-content-font-delta));
  --dsw-font-markdown-h1-font-style: normal;

  --dsw-font-markdown-h2: 700 calc(19px + var(--dsh-content-font-delta)) / calc(28px + var(--dsh-content-font-delta)) var(--dsw-font-family);
  --dsw-font-markdown-h2-font-family: var(--dsw-font-family);
  --dsw-font-markdown-h2-font-weight: 700;
  --dsw-font-markdown-h2-line-height: calc(28px + var(--dsh-content-font-delta));
  --dsw-font-markdown-h2-font-size: calc(19px + var(--dsh-content-font-delta));
  --dsw-font-markdown-h2-font-style: normal;

  --dsw-font-markdown-h3: 700 calc(18px + var(--dsh-content-font-delta)) / calc(26px + var(--dsh-content-font-delta)) var(--dsw-font-family);
  --dsw-font-markdown-h3-font-family: var(--dsw-font-family);
  --dsw-font-markdown-h3-font-weight: 700;
  --dsw-font-markdown-h3-line-height: calc(26px + var(--dsh-content-font-delta));
  --dsw-font-markdown-h3-font-size: calc(18px + var(--dsh-content-font-delta));
  --dsw-font-markdown-h3-font-style: normal;

  --dsw-font-markdown-h4: 600 var(--dsh-content-font-size, 14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);
  --dsw-font-markdown-h4-font-family: var(--dsw-font-family);
  --dsw-font-markdown-h4-font-weight: 600;
  --dsw-font-markdown-h4-line-height: calc(24px + var(--dsh-content-font-delta));
  --dsw-font-markdown-h4-font-size: var(--dsh-content-font-size, 14px);
  --dsw-font-markdown-h4-font-style: normal;

  --dsw-font-markdown-base: var(--dsh-content-font-size, 14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);
  --dsw-font-markdown-base-font-family: var(--dsw-font-family);
  --dsw-font-markdown-base-font-weight: 400;
  --dsw-font-markdown-base-line-height: calc(24px + var(--dsh-content-font-delta));
  --dsw-font-markdown-base-font-size: var(--dsh-content-font-size, 14px);
  --dsw-font-markdown-base-font-style: normal;

  --dsw-font-markdown-base-strong: 600 var(--dsh-content-font-size, 14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);
  --dsw-font-markdown-base-strong-font-family: var(--dsw-font-family);
  --dsw-font-markdown-base-strong-font-weight: 600;
  --dsw-font-markdown-base-strong-line-height: calc(24px + var(--dsh-content-font-delta));
  --dsw-font-markdown-base-strong-font-size: var(--dsh-content-font-size, 14px);
  --dsw-font-markdown-base-strong-font-style: normal;

  --dsw-font-markdown-base-italic: italic var(--dsh-content-font-size, 14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);
  --dsw-font-markdown-base-italic-font-family: var(--dsw-font-family);
  --dsw-font-markdown-base-italic-font-weight: 400;
  --dsw-font-markdown-base-italic-line-height: calc(24px + var(--dsh-content-font-delta));
  --dsw-font-markdown-base-italic-font-size: var(--dsh-content-font-size, 14px);
  --dsw-font-markdown-base-italic-font-style: italic;

  --dsw-font-markdown-base-strong-italic: italic 600 var(--dsh-content-font-size, 14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);
  --dsw-font-markdown-base-strong-italic-font-family: var(--dsw-font-family);
  --dsw-font-markdown-base-strong-italic-font-weight: 600;
  --dsw-font-markdown-base-strong-italic-line-height: calc(24px + var(--dsh-content-font-delta));
  --dsw-font-markdown-base-strong-italic-font-size: var(--dsh-content-font-size, 14px);
  --dsw-font-markdown-base-strong-italic-font-style: italic;

  --dsw-font-markdown-table: var(--dsh-content-font-size-secondary, 13px)/calc(22px + var(--dsh-content-font-delta-secondary, 0px)) var(--dsw-font-family);
  --dsw-font-markdown-table-font-family: var(--dsw-font-family);
  --dsw-font-markdown-table-font-weight: 400;
  --dsw-font-markdown-table-line-height: calc(22px + var(--dsh-content-font-delta-secondary, 0px));
  --dsw-font-markdown-table-font-size: var(--dsh-content-font-size-secondary, 13px);
  --dsw-font-markdown-table-font-style: normal;

  --dsw-font-markdown-table-head: 500 var(--dsh-content-font-size-secondary, 13px)/calc(22px + var(--dsh-content-font-delta-secondary, 0px)) var(--dsw-font-family);
  --dsw-font-markdown-table-head-font-family: var(--dsw-font-family);
  --dsw-font-markdown-table-head-font-weight: 500;
  --dsw-font-markdown-table-head-line-height: calc(22px + var(--dsh-content-font-delta-secondary, 0px));
  --dsw-font-markdown-table-head-font-size: var(--dsh-content-font-size-secondary, 13px);
  --dsw-font-markdown-table-head-font-style: normal;

  --dsw-font-markdown-small: 12px/20px var(--dsw-font-family);
  --dsw-font-markdown-small-font-family: var(--dsw-font-family);
  --dsw-font-markdown-small-font-weight: 400;
  --dsw-font-markdown-small-line-height: 20px;
  --dsw-font-markdown-small-font-size: 12px;
  --dsw-font-markdown-small-font-style: normal;

  --dsw-font-markdown-small-strong: 600 12px/20px var(--dsw-font-family);
  --dsw-font-markdown-small-strong-font-family: var(--dsw-font-family);
  --dsw-font-markdown-small-strong-font-weight: 600;
  --dsw-font-markdown-small-strong-line-height: 20px;
  --dsw-font-markdown-small-strong-font-size: 12px;
  --dsw-font-markdown-small-strong-font-style: normal;

  --dsw-font-markdown-small-italic: italic 12px/20px var(--dsw-font-family);
  --dsw-font-markdown-small-italic-font-family: var(--dsw-font-family);
  --dsw-font-markdown-small-italic-font-weight: 400;
  --dsw-font-markdown-small-italic-line-height: 20px;
  --dsw-font-markdown-small-italic-font-size: 12px;
  --dsw-font-markdown-small-italic-font-style: italic;

  --dsw-font-markdown-small-strong-italic: italic 600 12px/20px var(--dsw-font-family);
  --dsw-font-markdown-small-strong-italic-font-family: var(--dsw-font-family);
  --dsw-font-markdown-small-strong-italic-font-weight: 600;
  --dsw-font-markdown-small-strong-italic-line-height: 20px;
  --dsw-font-markdown-small-strong-italic-font-size: 12px;
  --dsw-font-markdown-small-strong-italic-font-style: italic;

  --dsw-font-markdown-code: 12px/19px var(--ds-font-family-code);
  --dsw-font-markdown-code-font-family: var(--ds-font-family-code);
  --dsw-font-markdown-code-font-weight: 400;
  --dsw-font-markdown-code-line-height: 19px;
  --dsw-font-markdown-code-font-size: 12px;
  --dsw-font-markdown-code-font-style: normal;

  --dsw-font-markdown-code-block: 11px/19px var(--ds-font-family-code);
  --dsw-font-markdown-code-block-font-family: var(--ds-font-family-code);
  --dsw-font-markdown-code-block-font-weight: 400;
  --dsw-font-markdown-code-block-line-height: 19px;
  --dsw-font-markdown-code-block-font-size: 11px;
  --dsw-font-markdown-code-block-font-style: normal;

  /* 手工补充（非插件导出）：tool row 展开卡片内的小号 code 字体。 */
  --dsw-font-markdown-code-block-small: 11px/16px var(--ds-font-family-code);
  --dsw-font-markdown-code-block-small-font-family: var(--ds-font-family-code);
  --dsw-font-markdown-code-block-small-font-weight: 400;
  --dsw-font-markdown-code-block-small-line-height: 16px;
  --dsw-font-markdown-code-block-small-font-size: 11px;
  --dsw-font-markdown-code-block-small-font-style: normal;

  --dsw-font-xl-24: 600 24px/32px var(--dsw-font-family);
  --dsw-font-xl-24-font-family: var(--dsw-font-family);
  --dsw-font-xl-24-font-weight: 600;
  --dsw-font-xl-24-line-height: 32px;
  --dsw-font-xl-24-font-size: 24px;
  --dsw-font-xl-24-font-style: normal;

  --dsw-font-l-20: 500 20px/28px var(--dsw-font-family);
  --dsw-font-l-20-font-family: var(--dsw-font-family);
  --dsw-font-l-20-font-weight: 500;
  --dsw-font-l-20-line-height: 28px;
  --dsw-font-l-20-font-size: 20px;
  --dsw-font-l-20-font-style: normal;

  --dsw-font-m-18: 500 16px/28px var(--dsw-font-family);
  --dsw-font-m-18-font-family: var(--dsw-font-family);
  --dsw-font-m-18-font-weight: 500;
  --dsw-font-m-18-line-height: 28px;
  --dsw-font-m-18-font-size: 16px;
  --dsw-font-m-18-font-style: normal;

  --dsw-font-base-16: 16px/24px var(--dsw-font-family);
  --dsw-font-base-16-font-family: var(--dsw-font-family);
  --dsw-font-base-16-font-weight: 400;
  --dsw-font-base-16-line-height: 24px;
  --dsw-font-base-16-font-size: 16px;
  --dsw-font-base-16-font-style: normal;

  --dsw-font-base-strong-16: 500 16px/24px var(--dsw-font-family);
  --dsw-font-base-strong-16-font-family: var(--dsw-font-family);
  --dsw-font-base-strong-16-font-weight: 500;
  --dsw-font-base-strong-16-line-height: 24px;
  --dsw-font-base-strong-16-font-size: 16px;
  --dsw-font-base-strong-16-font-style: normal;

  --dsw-font-s-14: 14px/22px var(--dsw-font-family);
  --dsw-font-s-14-font-family: var(--dsw-font-family);
  --dsw-font-s-14-font-weight: 400;
  --dsw-font-s-14-line-height: 22px;
  --dsw-font-s-14-font-size: 14px;
  --dsw-font-s-14-font-style: normal;

  --dsw-font-s-strong-14: 500 14px/22px var(--dsw-font-family);
  --dsw-font-s-strong-14-font-family: var(--dsw-font-family);
  --dsw-font-s-strong-14-font-weight: 500;
  --dsw-font-s-strong-14-line-height: 22px;
  --dsw-font-s-strong-14-font-size: 14px;
  --dsw-font-s-strong-14-font-style: normal;

  --dsw-font-xs-13: 13px/20px var(--dsw-font-family);
  --dsw-font-xs-13-font-family: var(--dsw-font-family);
  --dsw-font-xs-13-font-weight: 400;
  --dsw-font-xs-13-line-height: 20px;
  --dsw-font-xs-13-font-size: 13px;
  --dsw-font-xs-13-font-style: normal;

  --dsw-font-xs-strong-13: 500 13px/20px var(--dsw-font-family);
  --dsw-font-xs-strong-13-font-family: var(--dsw-font-family);
  --dsw-font-xs-strong-13-font-weight: 500;
  --dsw-font-xs-strong-13-line-height: 20px;
  --dsw-font-xs-strong-13-font-size: 13px;
  --dsw-font-xs-strong-13-font-style: normal;

  --dsw-font-xxs-12: 12px/18px var(--dsw-font-family);
  --dsw-font-xxs-12-font-family: var(--dsw-font-family);
  --dsw-font-xxs-12-font-weight: 400;
  --dsw-font-xxs-12-line-height: 18px;
  --dsw-font-xxs-12-font-size: 12px;
  --dsw-font-xxs-12-font-style: normal;

  --dsw-font-xxs-strong-12: 500 12px/18px var(--dsw-font-family);
  --dsw-font-xxs-strong-12-font-family: var(--dsw-font-family);
  --dsw-font-xxs-strong-12-font-weight: 500;
  --dsw-font-xxs-strong-12-line-height: 18px;
  --dsw-font-xxs-strong-12-font-size: 12px;
  --dsw-font-xxs-strong-12-font-style: normal;

  --dsw-font-xxxs-11: 11px/14px var(--dsw-font-family);
  --dsw-font-xxxs-11-font-family: var(--dsw-font-family);
  --dsw-font-xxxs-11-font-weight: 400;
  --dsw-font-xxxs-11-line-height: 14px;
  --dsw-font-xxxs-11-font-size: 11px;
  --dsw-font-xxxs-11-font-style: normal;

  --dsw-font-xxxs-strong-11: 500 11px/14px var(--dsw-font-family);
  --dsw-font-xxxs-strong-11-font-family: var(--dsw-font-family);
  --dsw-font-xxxs-strong-11-font-weight: 500;
  --dsw-font-xxxs-strong-11-line-height: 14px;
  --dsw-font-xxxs-strong-11-font-size: 11px;
  --dsw-font-xxxs-strong-11-font-style: normal;
}

/* Account page layout. */
html { color-scheme: light; }
* { box-sizing: border-box; }
[hidden] { display: none !important; }
body {
  display: flex;
  min-height: 100dvh;
  margin: 0;
  color: var(--dsw-alias-label-primary);
  background: var(--dsw-alias-bg-base);
  font: 14px / 22px var(--dsw-font-family);
  -webkit-font-smoothing: antialiased;
  text-autospace: normal;
}
.brand-symbols { position: absolute; width: 0; height: 0; overflow: hidden; }
a { color: var(--dsw-alias-link); text-decoration: none; }
a:hover { text-decoration: underline dotted; text-underline-offset: 3px; }
button, input { font: inherit; }
button, .button { transition: background var(--ds-transition-duration-fast) var(--ds-ease-in-out); }
button:focus-visible, a:focus-visible, summary:focus-visible { outline: 2px solid var(--dsw-alias-state-business-primary); outline-offset: 3px; }
.sidebar {
  position: sticky;
  top: 0;
  display: flex;
  flex: 0 0 280px;
  min-width: 0;
  flex-direction: column;
  gap: 16px;
  height: 100dvh;
  padding: 16px 12px 12px;
  border-right: 0.5px solid var(--dsw-alias-border-l3);
  background: var(--dsw-specific-sidebar-fill);
}
.brand { display: flex; align-items: center; gap: 8px; min-height: 32px; color: var(--dsw-alias-label-primary); font-weight: 500; }
.brand:hover { text-decoration: none; }
.brand span span { color: var(--dsw-alias-label-tertiary); font-size: 12px; font-weight: 400; }
.brand-mark { flex: none; width: 24px; height: 18px; overflow: visible; fill: currentColor; }
.sidebar .brand { padding: 0 8px; margin-bottom: 10px; }
.sidebar nav { display: flex; flex-direction: column; gap: 4px; }
.sidebar nav a, .logout, .platform-link {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 8px 12px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: var(--dsw-alias-label-primary);
  text-align: left;
}
.sidebar nav a:hover, .sidebar .logout:hover:not(:disabled) { background: var(--dsw-alias-interactive-bg-hover); text-decoration: none; }
.sidebar nav a[aria-current="page"] { background: var(--dsw-specific-sidebar-nav-item-active); }
.sidebar svg:not(.brand-mark) { flex: none; width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.platform-link { justify-content: center; background: var(--dsw-alias-button-ghost-active-fill); border: 0.5px solid var(--dsw-alias-border-l3); }
.platform-link:hover { background: var(--dsw-alias-button-ghost-active-hover); text-decoration: none; }
.logout { width: 100%; margin-top: auto; cursor: pointer; }
.content { display: flex; flex: 1; flex-direction: column; min-width: 0; }
main { flex: 1; min-width: 0; padding: 32px 40px; }
.page { width: 100%; max-width: 960px; margin: 0 auto; }
h1 { margin: 4px 0 12px; font-size: 24px; line-height: 32px; font-weight: 500; }
h2 { margin: 28px 0 12px; font-size: 16px; line-height: 24px; font-weight: 500; }
p { margin: 0 0 12px; }
.eyebrow { margin-bottom: 4px; color: var(--dsw-alias-label-tertiary); font-size: 12px; line-height: 18px; }
.muted { max-width: 70ch; color: var(--dsw-alias-label-tertiary); font-size: 13px; line-height: 20px; }
label { display: block; color: var(--dsw-alias-label-secondary); }
input {
  display: block;
  width: 100%;
  height: 36px;
  margin-top: 8px;
  padding: 6px 10px;
  border: 0.5px solid var(--dsw-alias-border-l3);
  border-radius: 8px;
  outline: none;
  background: var(--dsw-alias-bg-layer-1);
  color: var(--dsw-alias-label-primary);
}
input::placeholder { color: var(--dsw-alias-label-tertiary); }
input:focus { border-color: var(--dsw-alias-state-business-primary); box-shadow: 0 0 0 2px var(--dsw-alias-state-business-tertiary); }
button, .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-height: 36px;
  padding: 6px 14px;
  border: 0;
  border-radius: 18px;
  corner-shape: round;
  background: var(--dsw-alias-button-primary-fill);
  color: var(--dsw-alias-label-primary-foreground);
  cursor: pointer;
}
button:hover:not(:disabled), .button:hover { background: var(--dsw-alias-button-primary-hover); text-decoration: none; }
button:disabled { opacity: 0.4; cursor: not-allowed; }
.quiet { border: 0.5px solid var(--dsw-alias-border-l3); background: transparent; color: var(--dsw-alias-label-primary); }
.quiet:hover:not(:disabled) { background: var(--dsw-alias-interactive-bg-hover); }
.page-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 24px 0 16px; }
body[data-page="login"] main { display: flex; align-items: center; padding: 48px 24px 24px; }
body[data-page="login"] .page { max-width: 400px; }
.login { text-align: center; }
.login-brand { justify-content: center; margin-bottom: 24px; font-size: 20px; line-height: 28px; }
.login-brand .brand-mark { width: 32px; height: 24px; }
.login h1 { font-size: 26px; line-height: 32px; }
.login > .muted { margin: 0 auto; }
.login-card {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 24px;
  padding: 24px;
  border: 0;
  border-radius: 22px;
  --dsw-elevation-stroke-color: var(--dsw-alias-border-l2);
  background: var(--dsw-specific-input-major);
  box-shadow: var(--dsw-elevation-soft);
  text-align: left;
}
.login-card > button { width: 100%; }
details { font-size: 13px; line-height: 20px; }
summary { color: var(--dsw-alias-label-secondary); cursor: pointer; }
details[open] summary { margin-bottom: 12px; }
details label { margin-top: 12px; }
.invite { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 12px; margin: 28px 0; }
.invite label { width: 290px; max-width: 100%; }
.notice { margin: 24px 0; padding: 20px; border: 0.5px solid var(--dsw-alias-state-success-primary); border-radius: 16px; background: var(--dsw-alias-bg-layer-1); }
.notice h2 { margin-top: 0; }
code { font-family: var(--ds-font-family-code); text-autospace: no-autospace; }
.notice code { display: block; padding: 12px 0; overflow-wrap: anywhere; font-size: 18px; line-height: 26px; }
.notice .muted { margin: 12px 0 0; }
.table-wrap { max-width: 100%; margin: 20px 0 28px; overflow-x: auto; border: 0.5px solid var(--dsw-alias-border-l3); border-radius: 12px; }
table { width: 100%; border-collapse: collapse; text-align: left; font-size: 13px; line-height: 20px; }
th { color: var(--dsw-alias-label-tertiary); font-size: 12px; line-height: 18px; font-weight: 500; background: var(--dsw-alias-bg-layer-1); }
th, td { padding: 12px; border-bottom: 0.5px solid var(--dsw-alias-border-l2); }
tr:last-child td { border-bottom: 0; }
td { white-space: nowrap; }
td:last-child { white-space: normal; }
td button { min-height: 28px; margin: 2px 4px 2px 0; padding: 4px 10px; border-radius: 14px; corner-shape: round; font-size: 12px; line-height: 18px; white-space: nowrap; }
.members { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr)); gap: 16px; margin-top: 28px; }
.member, .tile, .chart { min-width: 0; padding: 16px; border: 0.5px solid var(--dsw-alias-border-l3); border-radius: 12px; background: var(--dsw-alias-bg-layer-1); }
.member h2 { margin: 0 0 8px; }
.member ul { margin: 12px 0 0; padding-left: 18px; color: var(--dsw-alias-label-secondary); font-size: 13px; line-height: 22px; overflow-wrap: anywhere; }
.message { margin: 16px 0 0; padding: 12px 16px; border-radius: 12px; background: var(--dsw-alias-state-warn-tertiary); color: var(--dsw-alias-state-warn-label); white-space: pre-wrap; overflow-wrap: anywhere; }
.message:empty { display: none; }
footer { padding: 20px 24px; color: var(--dsw-alias-label-tertiary); text-align: center; font-size: 12px; line-height: 18px; }
.range { display: flex; flex-wrap: wrap; gap: 6px; margin: 24px 0; }
.range button { min-height: 28px; padding: 4px 10px; border-radius: 14px; corner-shape: round; font-size: 12px; line-height: 18px; }
.range button[aria-pressed="true"] { background: var(--dsw-alias-button-primary-fill); color: var(--dsw-alias-label-primary-foreground); }
.tiles, .charts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr)); gap: 12px; margin: 20px 0 28px; }
.tile p, .chart p { margin-bottom: 8px; }
.tile strong { display: block; font-size: 24px; line-height: 32px; font-weight: 500; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.tile.warning { border-color: var(--dsw-alias-state-warn-primary); }
.tile.critical { border-color: var(--dsw-alias-state-error-primary); }
.chart svg { display: block; width: 100%; height: 60px; color: var(--dsw-alias-link); }
.alerts { margin: 24px 0; padding: 16px 20px; border: 0.5px solid var(--dsw-alias-state-error-primary); border-radius: 12px; background: var(--dsw-alias-bg-layer-1); }
.alerts h2 { margin-top: 0; }
.alerts li.warning { color: var(--dsw-alias-state-warn-label); }
.alerts li.critical { color: var(--dsw-alias-state-error-primary); }
.log { padding-left: 20px; color: var(--dsw-alias-label-tertiary); font-size: 12px; line-height: 22px; }
@media (prefers-color-scheme: dark) {
  html { color-scheme: dark; }
}
@media (max-width: 1023px) {
  .sidebar { flex-basis: 56px; gap: 12px; padding: 18px 10px 8px; }
  .sidebar .brand { justify-content: center; padding: 0; margin: 0 0 8px; }
  .sidebar .brand-name, .sidebar nav a span, .platform-link span, .logout span { display: none; }
  .sidebar nav a, .platform-link, .logout { justify-content: center; width: 36px; height: 36px; min-height: 36px; padding: 0; }
  .sidebar nav { gap: 8px; }
  main { padding: 28px 24px; }
}
@media (max-width: 520px) {
  main { padding: 24px 16px; }
  h1 { font-size: 22px; line-height: 30px; }
  .login-card { padding: 20px; }
  .invite { align-items: stretch; flex-direction: column; }
  .invite label { width: 100%; }
  .invite button { align-self: flex-start; }
  .tiles, .charts { grid-template-columns: 1fr; }
  footer { padding: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  button, .button { transition: none; }
}

/* Deployment to another server. */
.deploy { margin-top: 36px; }
.deploy-form { align-items: flex-start; margin: 16px 0; }
.deploy-form select { width: 100%; padding: 8px 10px; border: 0.5px solid var(--dsw-alias-border-l3); border-radius: 8px; background: var(--dsw-alias-bg-layer-1); color: var(--dsw-alias-label-primary); font: inherit; }
.check { display: flex; align-items: center; gap: 8px; width: auto; }
.check input { width: auto; }
.wide { width: 100%; }
.actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 8px 0; }
.steps { margin: 12px 0; padding-left: 22px; color: var(--dsw-alias-label-secondary); }
.steps .running { color: var(--dsw-alias-state-business-primary); font-weight: 500; }
.steps .done { color: var(--dsw-alias-state-success-primary); }
.steps .failed { color: var(--dsw-alias-state-error-primary); font-weight: 500; }
.log-box { max-height: 280px; margin: 12px 0; padding: 12px; overflow: auto; border: 0.5px solid var(--dsw-alias-border-l3); border-radius: 12px; background: var(--dsw-alias-bg-layer-1); font: 12px / 18px var(--ds-font-family-code); white-space: pre-wrap; overflow-wrap: anywhere; }
