/* Shared static liquid-glass controls. Keep the left navigation, geometry, behavior, and media untouched.
   CSS material is the fallback; the optional SVG lens only refracts the backdrop.
   Text disclosures and editable catalog titles remain plain; task rows retain their glass surface. */
:root, .dark, .infinite-canvas-dark {
  --control-glass-tint: rgba(147,170,208,.075);
  --control-glass-hover: rgba(177,199,232,.13);
  --control-glass-edge: rgba(215,231,255,.27);
  --control-glass-rim: rgba(245,250,255,.32);
  --control-glass-rim-low: rgba(190,217,255,.2);
  --control-glass-shade: rgba(0,4,12,.32);
  --control-glass-shadow: rgba(0,4,12,.24);
  --control-glass-reflection: rgba(237,246,255,.09);
  --control-glass-accent: rgba(123,104,227,.22);
  --control-glass-primary: rgba(120,98,232,.35);
  --control-glass-primary-text: #faf9ff;
  --control-glass-active-text: #e1d9ff;
  --control-glass-danger: rgba(190,59,82,.16);
  --control-glass-danger-text: #ffadb9;
  --control-glass-focus: #b7a5ff;
  --control-glass-solid: #243046;
  --menu-glass-bg: rgba(24,34,50,.28);
  --menu-glass-hover: rgba(42,55,77,.36);
  --menu-glass-selected: rgba(65,55,101,.42);
  --menu-glass-reflection: rgba(255,255,255,.04);
  --menu-glass-text: #ffffff;
  --menu-glass-muted: #edf2fa;
  --menu-glass-disabled: #8996ab;
  --menu-glass-edge: rgba(230,241,255,.5);
  --menu-glass-edge-top: rgba(255,255,255,.9);
  --menu-glass-optic: blur(16px) saturate(115%) brightness(.5);
}
html[data-theme="light"], html:not(.dark):not([data-theme="dark"]) #root, #canvasReactRoot:not(.dark), .infinite-canvas-light {
  --control-glass-tint: rgba(219,229,243,.72);
  --control-glass-hover: rgba(192,208,231,.88);
  --control-glass-edge: rgba(62,82,114,.68);
  --control-glass-rim: rgba(255,255,255,.88);
  --control-glass-rim-low: rgba(255,255,255,.64);
  --control-glass-shade: rgba(85,111,153,.14);
  --control-glass-shadow: rgba(53,77,116,.16);
  --control-glass-reflection: rgba(255,255,255,.4);
  --control-glass-accent: #e3daf7;
  --control-glass-primary: #5932ad;
  --control-glass-primary-text: #fff;
  --control-glass-active-text: #462184;
  --control-glass-danger: rgba(213,57,79,.09);
  --control-glass-danger-text: #b8203c;
  --control-glass-focus: #5932ad;
  --control-glass-solid: #edf2fa;
  --control-glass-disabled-opacity: .78;
  --menu-glass-bg: rgba(248,251,255,.82);
  --menu-glass-hover: rgba(212,224,242,.92);
  --menu-glass-selected: #e3daf7;
  --menu-glass-reflection: rgba(255,255,255,.12);
  --menu-glass-text: #1c2940;
  --menu-glass-muted: #29374b;
  --menu-glass-disabled: #617088;
  --menu-glass-edge: rgba(62,82,114,.68);
  --menu-glass-edge-top: rgba(255,255,255,.98);
  --menu-glass-optic: blur(16px) saturate(115%) contrast(.55) brightness(1.3);
}
:root { --control-glass-optic: blur(3px) saturate(115%); }
/* Native blur keeps controls stable across sizes, scrolling and shared surfaces. */
/* Keep the static glass tint/reflection on every task type, without a live backdrop
   surface that can flash a horizontal band during insertion, expansion or scrolling. */
html body .task-row-summary { --control-glass-optic: none; }
/* Task records have no enclosing frames or divider strokes; buttons, badges and focus stay intact. */
html body #tasksView :is(.task-surface, .task-row, .task-row-summary, .record-date, .record-pagination, .segmented) {
  border: 0 !important;
  box-shadow: none !important;
}
html body #tasksView .segmented { background: transparent; }
html body :is(
  button:not(:has(img, video, canvas)):not([role="switch"]):not([role="checkbox"]):not(.canvas-mini-map):not(.canvas-card-open):not(.canvas-project-title):not(.h-full.w-full),
  .canvas-composer-model-picker, .canvas-preference-control, .task-row-summary, .video-model-picker > summary, select:not(.enhanced-select-native), [role="tab"], .compact-dropzone, .voice-upload-stage, .restore-upload-stage,
  input[type="button"], input[type="submit"], input[type="reset"],
  .ant-select-selector, .ant-select-content, .ant-segmented-item,
  a.primary-button, a.secondary-button, a.subtle-button, a.danger-button
):not(.sidebar *, .sidebar-expand, aside[aria-label="工作台导航"] *, .canvas-preference-control *, [data-canvas-node-title] *, .source-channel-title button, .source-model-open, .source-branch-edit, .canvas-library-preview button) {
  background-color: var(--control-glass-tint) !important;
  background-image: linear-gradient(155deg, var(--control-glass-reflection), transparent 42%, transparent 68%, var(--control-glass-reflection)) !important;
  border-color: var(--control-glass-edge) !important;
  border-radius: 14px !important;
  box-shadow: inset 0 1px 1px var(--control-glass-rim),
    inset 1px 0 1px var(--control-glass-rim-low),
    inset -1px -1px 1px var(--control-glass-rim-low),
    inset 0 -2px 3px var(--control-glass-shade),
    0 0 0 1px var(--control-glass-edge),
    0 6px 12px -3px var(--control-glass-shadow),
    0 2px 3px -1px var(--control-glass-shade) !important;
  -webkit-backdrop-filter: var(--control-glass-optic) !important;
  backdrop-filter: var(--control-glass-optic) !important;
  /* Never animate a glass surface: loading icons inside it may still animate. */
  animation: none !important;
  transition: none !important;
}
html body :is(
  button:not(:has(img, video, canvas)):not([role="switch"]):not([role="checkbox"]):not(.canvas-mini-map):not(.canvas-card-open):not(.canvas-project-title):not(.h-full.w-full),
  .canvas-composer-model-picker, .canvas-preference-control, .task-row-summary, .video-model-picker > summary, select:not(.enhanced-select-native), [role="tab"], .compact-dropzone, .voice-upload-stage, .restore-upload-stage,
  input[type="button"], input[type="submit"], input[type="reset"],
  .ant-select-selector, .ant-select-content, .ant-segmented-item,
  a.primary-button, a.secondary-button, a.subtle-button, a.danger-button
):not(.sidebar *, .sidebar-expand, aside[aria-label="工作台导航"] *, .canvas-preference-control *, [data-canvas-node-title] *, .source-channel-title button, .source-model-open, .source-branch-edit, .canvas-library-preview button):is(:hover, [aria-expanded="true"]):not(:disabled):not([aria-disabled="true"]) {
  background-color: var(--control-glass-hover) !important;
}
html body :is(
  button:not(:has(img, video, canvas)):not([role="switch"]):not([role="checkbox"]):not(.canvas-mini-map):not(.canvas-card-open):not(.canvas-project-title):not(.h-full.w-full),
  .canvas-composer-model-picker, .canvas-preference-control, .task-row-summary, .video-model-picker > summary, select:not(.enhanced-select-native), [role="tab"], .compact-dropzone, .voice-upload-stage, .restore-upload-stage,
  input[type="button"], input[type="submit"], input[type="reset"],
  .ant-select-selector, .ant-select-content, .ant-segmented-item,
  a.primary-button, a.secondary-button, a.subtle-button, a.danger-button
):not(.sidebar *, .sidebar-expand, aside[aria-label="工作台导航"] *, .canvas-preference-control *, [data-canvas-node-title] *, .source-channel-title button, .source-model-open, .source-branch-edit, .canvas-library-preview button):is(.active, [aria-pressed="true"], [aria-selected="true"], [data-state="active"], .ant-segmented-item-selected) {
  --control-glass-edge: var(--control-glass-focus);
  background-color: var(--control-glass-accent) !important;
  border-color: var(--control-glass-focus) !important;
  color: var(--control-glass-active-text) !important;
  outline: 1px solid var(--control-glass-focus);
  outline-offset: -1px;
}
html body :is(
  button:not(:has(img, video, canvas)):not([role="switch"]):not([role="checkbox"]):not(.canvas-mini-map):not(.canvas-card-open):not(.canvas-project-title):not(.h-full.w-full),
  .canvas-composer-model-picker, .canvas-preference-control, .task-row-summary, .video-model-picker > summary, select:not(.enhanced-select-native), [role="tab"], .compact-dropzone, .voice-upload-stage, .restore-upload-stage,
  input[type="button"], input[type="submit"], input[type="reset"],
  .ant-select-selector, .ant-select-content, .ant-segmented-item,
  a.primary-button, a.secondary-button, a.subtle-button, a.danger-button
):not(.sidebar *, .sidebar-expand, aside[aria-label="工作台导航"] *, .canvas-preference-control *, [data-canvas-node-title] *, .source-channel-title button, .source-model-open, .source-branch-edit, .canvas-library-preview button):is(.primary-button, .dialog-confirm, .ant-btn-primary, [type="submit"]) {
  background-color: var(--control-glass-primary) !important;
  color: var(--control-glass-primary-text) !important;
}
html body :is(
  button:not(:has(img, video, canvas)):not([role="switch"]):not([role="checkbox"]):not(.canvas-mini-map):not(.canvas-card-open):not(.canvas-project-title):not(.h-full.w-full),
  .canvas-composer-model-picker, .canvas-preference-control, .task-row-summary, .video-model-picker > summary, select:not(.enhanced-select-native), [role="tab"], .compact-dropzone, .voice-upload-stage, .restore-upload-stage,
  input[type="button"], input[type="submit"], input[type="reset"],
  .ant-select-selector, .ant-select-content, .ant-segmented-item,
  a.primary-button, a.secondary-button, a.subtle-button, a.danger-button
):not(.sidebar *, .sidebar-expand, aside[aria-label="工作台导航"] *, .canvas-preference-control *, [data-canvas-node-title] *, .source-channel-title button, .source-model-open, .source-branch-edit, .canvas-library-preview button):is(.danger-button, .is-danger, .canvas-tool-danger, .ant-btn-dangerous, [class*="text-rose-"], [class*="bg-rose-"], [class*="text-red-"], [data-variant="destructive"]) {
  --control-glass-edge: var(--control-glass-danger-text);
  background-color: var(--control-glass-danger) !important;
  border-color: var(--control-glass-danger-text) !important;
  color: var(--control-glass-danger-text) !important;
}
html body :is(
  button:not(:has(img, video, canvas)):not([role="switch"]):not([role="checkbox"]):not(.canvas-mini-map):not(.canvas-card-open):not(.canvas-project-title):not(.h-full.w-full),
  .canvas-composer-model-picker, .canvas-preference-control, .task-row-summary, .video-model-picker > summary, select:not(.enhanced-select-native), [role="tab"], .compact-dropzone, .voice-upload-stage, .restore-upload-stage,
  input[type="button"], input[type="submit"], input[type="reset"],
  .ant-select-selector, .ant-select-content, .ant-segmented-item,
  a.primary-button, a.secondary-button, a.subtle-button, a.danger-button
):not(.sidebar *, .sidebar-expand, aside[aria-label="工作台导航"] *, .canvas-preference-control *, [data-canvas-node-title] *, .source-channel-title button, .source-model-open, .source-branch-edit, .canvas-library-preview button):focus-visible {
  outline: 2px solid var(--control-glass-focus) !important;
  outline-offset: 3px;
}
html body :is(
  button:not(:has(img, video, canvas)):not([role="switch"]):not([role="checkbox"]):not(.canvas-mini-map):not(.canvas-card-open):not(.canvas-project-title):not(.h-full.w-full),
  .canvas-composer-model-picker, .canvas-preference-control, .task-row-summary, .video-model-picker > summary, select:not(.enhanced-select-native), [role="tab"], .compact-dropzone, .voice-upload-stage, .restore-upload-stage,
  input[type="button"], input[type="submit"], input[type="reset"],
  .ant-select-selector, .ant-select-content, .ant-segmented-item,
  a.primary-button, a.secondary-button, a.subtle-button, a.danger-button
):not(.sidebar *, .sidebar-expand, aside[aria-label="工作台导航"] *, .canvas-preference-control *, [data-canvas-node-title] *, .source-channel-title button, .source-model-open, .source-branch-edit, .canvas-library-preview button):is(:disabled, [aria-disabled="true"]) {
  opacity: var(--control-glass-disabled-opacity, .45);
  cursor: not-allowed;
}
/* Pill pickers/tabs; compact icons and upload tiles keep their original size. */
html body :is(
  button:not(:has(img, video, canvas)):not([role="switch"]):not([role="checkbox"]):not(.canvas-mini-map):not(.canvas-card-open):not(.canvas-project-title):not(.h-full.w-full),
  .canvas-composer-model-picker, .canvas-preference-control, .task-row-summary, .video-model-picker > summary, select:not(.enhanced-select-native), [role="tab"], .compact-dropzone, .voice-upload-stage, .restore-upload-stage,
  input[type="button"], input[type="submit"], input[type="reset"],
  .ant-select-selector, .ant-select-content, .ant-segmented-item,
  a.primary-button, a.secondary-button, a.subtle-button, a.danger-button
):not(.sidebar *, .sidebar-expand, aside[aria-label="工作台导航"] *, .canvas-preference-control *, [data-canvas-node-title] *, .source-channel-title button, .source-model-open, .source-branch-edit, .canvas-library-preview button):is(.canvas-composer-model-picker, .canvas-preference-control, .polished-select, .select-control, .video-model-picker > summary, .nav-item, .feed-tabs button, .sidebar-toggle, .ant-select-selector, .ant-select-content) {
  border-radius: 999px !important;
}
html body :is(
  button:not(:has(img, video, canvas)):not([role="switch"]):not([role="checkbox"]):not(.canvas-mini-map):not(.canvas-card-open):not(.canvas-project-title):not(.h-full.w-full),
  .canvas-composer-model-picker, .canvas-preference-control, .task-row-summary, .video-model-picker > summary, select:not(.enhanced-select-native), [role="tab"], .compact-dropzone, .voice-upload-stage, .restore-upload-stage,
  input[type="button"], input[type="submit"], input[type="reset"],
  .ant-select-selector, .ant-select-content, .ant-segmented-item,
  a.primary-button, a.secondary-button, a.subtle-button, a.danger-button
):not(.sidebar *, .sidebar-expand, aside[aria-label="工作台导航"] *, .canvas-preference-control *, [data-canvas-node-title] *, .source-channel-title button, .source-model-open, .source-branch-edit, .canvas-library-preview button):is(.choice-option, .video-model-option, .dt-day) { border-radius: 9px !important; }
html body .polished-select > span:first-child { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
html body .choice-chevron { flex-shrink: 0; }
/* Retire the old sweeping highlight, not semantic checkmarks or loading icons. */
html body .primary-button::after { content: none !important; }
html body .primary-button:hover { filter: none; }
html body .compact-dropzone.unsupported { opacity: .45; cursor: not-allowed; }

/* Editable node names are text, not glass action buttons (including plugin nodes). */
html body [data-canvas-node-title] :is(button, input) {
  background: transparent !important;
  border-color: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  filter: none !important;
  animation: none !important;
}
html body [data-canvas-node-title] button:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}

/* An inner frame preserves the blue selection border and the media's geometry. */
html body .canvas-chat-media-output { position: relative; }
html body [data-canvas-media-cached="1"]::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 2px solid #50d6a0;
  border-radius: inherit;
  pointer-events: none;
  z-index: 35;
}

/* Option-only menus: no enclosing card behind the individual glass choices. */
html body :is(
  .choice-menu, .video-model-menu, .canvas-context-menu,
  .video-model-menu .video-model-list,
  .video-model-menu .video-channel-list,
  .video-model-menu .video-mode-list,
  [data-slot="select-content"], [data-slot="select-viewport"],
  .ant-select-dropdown, .ant-dropdown-menu,
  .canvas-model-floating-popover .ant-popover-container,
  .canvas-model-floating-popover .ant-popover-inner,
  .canvas-model-floating-popover .bg-popover
) {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
html body :is(.choice-menu, .video-model-menu, .canvas-context-menu, [data-slot="select-content"], .ant-select-dropdown, .ant-dropdown-menu) {
  padding: 4px !important;
}
/* Keep the focus indicator on the option, rather than drawing a second outer box. */
html body :is(.choice-option, .video-model-option, [role="option"]):focus-visible {
  outline-offset: -3px !important;
}

/* Thin glass shows the backdrop instead of a dense painted fill. Theme-specific
   backdrop luminance keeps labels readable; only the background is filtered. */
html body :is(
  .choice-option, .video-channel-option, .video-model-option,
  .canvas-model-floating-popover button, .canvas-context-menu button,
  [data-slot="select-item"], [data-slot="dropdown-menu-item"],
  .ant-select-item-option, .ant-cascader-menu-item, .ant-dropdown-menu-item
) {
  --control-glass-tint: var(--menu-glass-bg);
  --control-glass-reflection: var(--menu-glass-reflection);
  --control-glass-hover: var(--menu-glass-hover);
  --control-glass-accent: var(--menu-glass-selected);
  --control-glass-active-text: var(--menu-glass-text);
  --control-glass-edge: var(--menu-glass-edge);
  --control-glass-rim: var(--menu-glass-edge);
  --control-glass-optic: var(--menu-glass-optic);
  color: var(--menu-glass-text) !important;
  background-color: var(--control-glass-tint) !important;
  border-color: var(--menu-glass-edge) !important;
  box-shadow: inset 0 0 0 1px var(--menu-glass-edge), inset 0 1px 1px var(--menu-glass-edge-top), 0 4px 12px rgba(0,0,0,.18) !important;
  -webkit-backdrop-filter: var(--menu-glass-optic) !important;
  backdrop-filter: var(--menu-glass-optic) !important;
  font-weight: 500;
}
html body :is(
  .choice-option, .video-channel-option, .video-model-option,
  .canvas-model-floating-popover button, .canvas-context-menu button,
  [data-slot="select-item"], [data-slot="dropdown-menu-item"],
  .ant-select-item-option, .ant-cascader-menu-item, .ant-dropdown-menu-item
):is(:hover, :focus-visible, [data-highlighted], .ant-select-item-option-active) {
  --control-glass-tint: var(--menu-glass-hover);
}
html body :is(
  .choice-option, .video-channel-option, .video-model-option,
  .canvas-model-floating-popover button, .canvas-context-menu button,
  [data-slot="select-item"], [data-slot="dropdown-menu-item"],
  .ant-select-item-option, .ant-cascader-menu-item, .ant-dropdown-menu-item
):is([aria-pressed="true"], [aria-selected="true"], [aria-current="true"], [data-state="checked"], .bg-accent, .ant-select-item-option-selected, .ant-cascader-menu-item-active, .ant-dropdown-menu-item-selected) {
  --control-glass-tint: var(--menu-glass-selected);
  --control-glass-hover: var(--menu-glass-selected);
  font-weight: 600;
  outline: 2px solid var(--control-glass-focus);
  outline-offset: -2px;
}
html body :is(
  .choice-option, .video-channel-option, .video-model-option,
  .canvas-model-floating-popover button, .canvas-context-menu button,
  [data-slot="select-item"], [data-slot="dropdown-menu-item"],
  .ant-select-item-option, .ant-cascader-menu-item, .ant-dropdown-menu-item
) :is(small, .text-muted-foreground, [class*="opacity-"]) {
  color: var(--menu-glass-muted) !important;
  opacity: 1 !important;
}
html body :is(
  .choice-option, .video-channel-option, .video-model-option,
  .canvas-model-floating-popover button, .canvas-context-menu button,
  [data-slot="select-item"], [data-slot="dropdown-menu-item"],
  .ant-select-item-option, .ant-cascader-menu-item, .ant-dropdown-menu-item
):is(:disabled, [aria-disabled="true"], [data-disabled], .ant-select-item-option-disabled, .ant-cascader-menu-item-disabled, .ant-dropdown-menu-item-disabled) {
  /* Dim the label, not the whole glass layer: text below must remain obscured. */
  color: var(--menu-glass-disabled) !important;
  opacity: 1 !important;
  cursor: not-allowed;
}
html body .choice-option[aria-pressed="true"]::after,
html body .video-model-option[aria-pressed="true"] .video-model-check {
  color: var(--menu-glass-text);
  font-weight: 700;
}
/* The small video-menu heading also floats over the form, without an outer card. */
html body .video-model-toolbar {
  background: var(--menu-glass-bg);
  border: 0;
  border-radius: 12px;
  -webkit-backdrop-filter: var(--menu-glass-optic);
  backdrop-filter: var(--menu-glass-optic);
}
html body .video-model-toolbar strong { color: var(--menu-glass-text); }
html body .video-model-toolbar > div > span { color: var(--menu-glass-muted); }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  :root, .dark, .infinite-canvas-dark, html[data-theme="light"], html:not(.dark):not([data-theme="dark"]) #root, #canvasReactRoot:not(.dark), .infinite-canvas-light {
    --menu-glass-bg: var(--control-glass-solid);
    --menu-glass-hover: var(--control-glass-solid);
    --menu-glass-selected: var(--control-glass-solid);
  }
}
@media (prefers-reduced-transparency: reduce), (forced-colors: active) {
  :root, .dark, .infinite-canvas-dark, html[data-theme="light"], html:not(.dark):not([data-theme="dark"]) #root, #canvasReactRoot:not(.dark), .infinite-canvas-light {
    --menu-glass-bg: var(--control-glass-solid);
    --menu-glass-hover: var(--control-glass-solid);
    --menu-glass-selected: var(--control-glass-solid);
    --menu-glass-optic: none;
  }
}

/* Preferences have four equal, single-surface controls, including the logo button and number input. */
html body .canvas-preferences-panel .canvas-preference-control {
  width: 100%;
  min-width: 0;
  height: 36px !important;
  min-height: 36px;
  padding: 0 12px !important;
  border-width: 1px;
  border-style: solid;
  font-size: 14px !important;
  font-weight: 500;
  line-height: 22px;
  color: var(--foreground);
  text-align: left;
}
html body .canvas-preferences-panel .canvas-preference-control.ant-select :is(.ant-select-selector, .ant-select-content, input) {
  --glass-inset: transparent; /* Prevent the host input tint from drawing a second surface. */
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0 !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
html body .canvas-preferences-panel .canvas-preference-control.ant-select:focus-within {
  outline: 2px solid var(--control-glass-focus);
  outline-offset: 2px;
}

@media (prefers-reduced-transparency: reduce) {
  :root, .dark, .infinite-canvas-dark, html[data-theme="light"], html:not(.dark):not([data-theme="dark"]) #root, #canvasReactRoot:not(.dark), .infinite-canvas-light {
    --control-glass-tint: var(--control-glass-solid);
    --control-glass-hover: var(--control-glass-solid);
    --control-glass-accent: var(--control-glass-solid);
    --control-glass-primary: var(--control-glass-solid);
    --control-glass-danger: var(--control-glass-solid);
  }
  html body :is(
  button:not(:has(img, video, canvas)):not([role="switch"]):not([role="checkbox"]):not(.canvas-mini-map):not(.canvas-card-open):not(.canvas-project-title):not(.h-full.w-full),
  .canvas-composer-model-picker, .canvas-preference-control, .task-row-summary, .video-model-picker > summary, select:not(.enhanced-select-native), [role="tab"], .compact-dropzone, .voice-upload-stage, .restore-upload-stage,
  input[type="button"], input[type="submit"], input[type="reset"],
  .ant-select-selector, .ant-select-content, .ant-segmented-item,
  a.primary-button, a.secondary-button, a.subtle-button, a.danger-button
):not(.sidebar *, .sidebar-expand, aside[aria-label="工作台导航"] *, .canvas-preference-control *, [data-canvas-node-title] *, .source-channel-title button, .source-model-open, .source-branch-edit, .canvas-library-preview button) { background-color: var(--control-glass-solid) !important; background-image: none !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
}
@media (forced-colors: active) {
  html body :is(
  button:not(:has(img, video, canvas)):not([role="switch"]):not([role="checkbox"]):not(.canvas-mini-map):not(.canvas-card-open):not(.canvas-project-title):not(.h-full.w-full),
  .canvas-composer-model-picker, .canvas-preference-control, .task-row-summary, .video-model-picker > summary, select:not(.enhanced-select-native), [role="tab"], .compact-dropzone, .voice-upload-stage, .restore-upload-stage,
  input[type="button"], input[type="submit"], input[type="reset"],
  .ant-select-selector, .ant-select-content, .ant-segmented-item,
  a.primary-button, a.secondary-button, a.subtle-button, a.danger-button
):not(.sidebar *, .sidebar-expand, aside[aria-label="工作台导航"] *, .canvas-preference-control *, [data-canvas-node-title] *, .source-channel-title button, .source-model-open, .source-branch-edit, .canvas-library-preview button) { forced-color-adjust: auto; background: ButtonFace !important; color: ButtonText !important; border: 1px solid ButtonText !important; box-shadow: none !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
}

/* Shared mascot presets: settings preview and the real canvas use exactly the same color filters. */
:root{--ghost-color-shift:0deg;--ghost-color-tone:saturate(1) brightness(1) contrast(1)}
html[data-ghost-color="pink"]{--ghost-color-shift:60deg}
html[data-ghost-color="blue"]{--ghost-color-shift:315deg}
html[data-ghost-color="mint"]{--ghost-color-shift:240deg}
html[data-ghost-color="peach"]{--ghost-color-shift:110deg}
html[data-ghost-color="deep-purple"]{--ghost-color-shift:0deg;--ghost-color-tone:saturate(2) brightness(.76) contrast(1.12)}
html[data-ghost-color="deep-blue"]{--ghost-color-shift:315deg;--ghost-color-tone:saturate(2) brightness(.76) contrast(1.12)}

/* Keep canvas artwork faint behind conversations, without changing other glass surfaces. */
html body :is(#root, #canvasReactRoot) .canvas-router-agent-shell {
  --canvas-glass-surface: rgba(26,34,48,.92);
}
html body :is(#root, #canvasReactRoot) .canvas-router-agent-shell[data-theme="light"] {
  --canvas-glass-surface: rgba(255,255,255,.94);
}

/* A thicker recessed strength rail and raised knob, shared by both canvas hosts. */
html body .canvas-router-agent-panel .canvas-router-effort-menu {
  --effort-colors: linear-gradient(180deg, #67c5ff, #379ef4 42%, #2075d6);
  --effort-rest: #334052;
  --effort-focus: #65b7ff55;
  padding: 15px 18px 12px;
  border-color: #a8c9ff30;
  border-radius: 20px;
  background: radial-gradient(ellipse at 50% 0, #91b5f126, transparent 68%), linear-gradient(160deg, #26324633, #151d2b26), var(--router-panel-bg);
  box-shadow: inset 0 1px 0 #ffffff26, inset 0 -1px 0 #0005, 0 18px 38px #0006, 0 5px 12px #0004;
}
html body .canvas-router-agent-panel[data-theme="light"] .canvas-router-effort-menu {
  --effort-rest: #b8c6d9;
  border-color: #7993b74d;
  background: radial-gradient(ellipse at 50% 0, #fff6, transparent 70%), linear-gradient(160deg, #f8fbff33, #e2eaf626), var(--router-panel-bg);
  box-shadow: inset 0 1px 0 #fff, inset 0 -1px 0 #91a8c33b, 0 16px 32px #263d6326, 0 4px 10px #263d6314;
}
html body .canvas-router-agent-panel .canvas-router-effort-menu[data-maximum="true"] {
  --effort-colors: linear-gradient(180deg, #c3a2ff, #9670ea 42%, #6642b6);
  --effort-focus: #b99bff55;
}
html body .canvas-router-effort-menu .canvas-router-effort-value {
  font-weight: 600;
  text-shadow: 0 1px 0 #0005, 0 2px 8px #3499f226;
}
html body .canvas-router-agent-panel[data-theme="light"] .canvas-router-effort-value { text-shadow: 0 1px 0 #fff; }
html body .canvas-router-effort-menu .canvas-router-effort-rail {
  border-radius: 99px;
  box-shadow: inset 0 3px 6px #0005, 0 1px 0 #ffffff18;
}
html body .canvas-router-effort-menu .canvas-router-effort-slider {
  --effort-rail: linear-gradient(180deg, #ffffff20, transparent 45%, #0002), linear-gradient(to right, transparent var(--effort-fill), var(--effort-rest) var(--effort-fill)), var(--effort-colors);
  height: 36px;
}
html body .canvas-router-effort-menu .canvas-router-effort-slider:focus-visible { box-shadow: 0 0 0 2px var(--effort-focus), 0 0 12px var(--effort-focus); }
html body .canvas-router-effort-menu .canvas-router-effort-slider::-webkit-slider-runnable-track {
  height: 26px;
  background: var(--effort-rail);
  box-shadow: inset 0 3px 5px #0005, inset 0 -1px 1px #ffffff38, 0 1px 1px #0004;
}
html body .canvas-router-effort-menu .canvas-router-effort-slider::-moz-range-track {
  height: 26px;
  background: var(--effort-rail);
  box-shadow: inset 0 3px 5px #0005, inset 0 -1px 1px #ffffff38, 0 1px 1px #0004;
}
html body .canvas-router-effort-menu .canvas-router-effort-slider::-webkit-slider-thumb {
  margin-top: -1px;
  background: radial-gradient(circle at 36% 24%, #fff 0 24%, #f7faff 52%, #c3cede 100%);
  border-color: #fff;
  box-shadow: inset 0 1px 1px #fff, inset 0 -2px 3px #9baac44d, 0 3px 7px #0005, 0 7px 14px #0003, 0 0 0 1px #14203355;
  transform: scale(1.15);
}
html body .canvas-router-effort-menu .canvas-router-effort-slider::-moz-range-thumb {
  background: radial-gradient(circle at 36% 24%, #fff 0 24%, #f7faff 52%, #c3cede 100%);
  border-color: #fff;
  box-shadow: inset 0 1px 1px #fff, inset 0 -2px 3px #9baac44d, 0 3px 7px #0005, 0 7px 14px #0003, 0 0 0 1px #14203355;
  transform: scale(1.15);
}
html body .canvas-router-effort-menu .canvas-router-effort-marks > i { top: 16px; box-shadow: 0 1px 1px #0005; }
html body .canvas-router-agent-panel[data-theme="light"] .canvas-router-effort-marks > i { background: #344e7b88; }
html body .canvas-router-effort-menu .canvas-router-effort-sparkles { inset-block: 7px; }
html body .canvas-router-effort-menu .canvas-router-effort-scale { padding-top: 8px; font-weight: 500; }

/* Keep each glass button; remove only the enclosing canvas option/tool frame. */
html body .canvas-unframed-controls {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}


/* Match the adjacent node settings pill; compact composer controls keep their size. */
html body .canvas-composer-model-picker:has(+ span > button[class*="!h-10"]) {
  height: 40px !important;
  min-height: 40px !important;
}
