/* Legacy canvas runtime; matching source controls have also been removed. */
html body button:is([aria-label="切换到浅色主题"], [aria-label="切换到深色主题"], .canvas-theme-action) {
  display: none !important;
}

/* Canvas-only contrast: glass controls must carry their own legible ink. */
/* The image hover toolbar previously kept its light-theme ink over dark glass. */
html.font-sans body:has(.ant-app) :is(.canvas-node-hover-toolbar, .hide-scrollbar[class~="text-[#242529]"]) {
  background: linear-gradient(135deg, rgb(48 62 84 / 88%), rgb(20 28 43 / 92%)) !important;
  color: #f5f7fc !important;
  border-color: #a7bad377 !important;
  -webkit-backdrop-filter: blur(18px) saturate(125%);
  backdrop-filter: blur(18px) saturate(125%);
}
html.font-sans body :is(.canvas-node-hover-toolbar, .hide-scrollbar[class~="text-[#242529]"]) > button {
  color: #f5f7fc !important;
}
html.font-sans body :is(.canvas-node-hover-toolbar, .hide-scrollbar[class~="text-[#242529]"]) > button[aria-label="移除节点"] {
  color: #ffb4b4 !important;
}
html.font-sans body :is(.canvas-node-hover-toolbar, .hide-scrollbar[class~="text-[#242529]"]) > button:hover > span,
html.font-sans body :is(.canvas-node-hover-toolbar, .hide-scrollbar[class~="text-[#242529]"]) > button > span[class~="bg-[#eeeeef]"] {
  background: #445775 !important;
  color: inherit !important;
}
html.font-sans body :is(.canvas-node-hover-toolbar, .hide-scrollbar[class~="text-[#242529]"]) > button:focus-visible {
  outline: 2px solid #d5e4ff;
  outline-offset: -4px;
  border-radius: 10px;
}
html.font-sans body .ant-tooltip .ant-tooltip-inner {
  background: #243248 !important;
  color: #f5f7fc !important;
  border: 1px solid #9aabc366;
}
html.font-sans body .ant-tooltip { --antd-arrow-background-color: #243248 !important; }
html.font-sans.dark body {
  --foreground: #f5f7fc;
  --muted-foreground: #c5cedd;
  --popover-foreground: #f5f7fc;
  --card-foreground: #f5f7fc;
}
html.font-sans body .ant-btn:not(.ant-btn-text):not(.ant-btn-link):not(.ant-btn-primary) {
  color: #f5f7fc !important;
  background: linear-gradient(135deg, rgb(48 62 84 / 82%), rgb(25 34 50 / 88%)) !important;
  border-color: #8d9db477 !important;
}
html.font-sans body .ant-btn.ant-btn-primary:not(:disabled) {
  color: #142036 !important;
  background: linear-gradient(135deg, #e1e9ff, #b9ccef) !important;
  border-color: #e7eeff !important;
}
html.font-sans body .ant-btn.ant-btn-primary:not(:disabled):hover {
  background: linear-gradient(135deg, #f0f4ff, #d0ddf8) !important;
}
html.font-sans body .ant-btn:disabled {
  color: #aeb9ca !important;
  background: rgb(39 49 65 / 85%) !important;
  border-color: #71809a55 !important;
  opacity: 1 !important;
  cursor: not-allowed !important;
}
html.font-sans body .ant-btn.ant-btn-dangerous:not(:disabled) { color: #ffb4b4 !important; }
html.font-sans body :is(.ant-input, .ant-input-affix-wrapper, .canvas-compact-control, .canvas-composer-model-picker) {
  color: #f5f7fc !important;
  background-color: rgb(19 28 43 / 85%) !important;
  border-color: #8d9db477 !important;
}
html.font-sans body :is(input, textarea)::placeholder { color: #b8c4d8 !important; opacity: 1; }
html.font-sans body .ant-segmented {
  color: #d1daea !important;
  background: rgb(18 27 43 / 90%) !important;
}
html.font-sans body .ant-segmented .ant-segmented-item-selected {
  color: #142036 !important;
  background: #c3d3f5 !important;
}
html.font-sans body:has(.ant-app) :is(.canvas-appearance-panel, .canvas-agent-panel) {
  color: #f5f7fc !important;
  background: linear-gradient(135deg, rgb(48 62 84 / 78%), rgb(20 28 43 / 88%)) !important;
}
html.font-sans body .canvas-appearance-panel .opacity-50 { color: #c5cedd; opacity: 1; }
html.font-sans body :is(.ant-modal-content, .ant-popover-inner, .canvas-agent-panel) .ant-btn:focus-visible {
  outline: 2px solid #d5e4ff;
  outline-offset: 3px;
}

