@import url("/shared/theme-compat.css?v=1.0.0");
/* 新增的外观控件；不改动原有业务组件的尺寸、字体和排版。 */
.theme-tools {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  color: var(--theme-ui-text, #222);
  font: 12px/1.3 Inter, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
}
.theme-tools-login { position: absolute; z-index: 1; top: 16px; right: 16px; }
.theme-tools-sidebar { justify-content: center; margin: 6px 0; }
.theme-tools-mobile { display: none; }
.theme-tools .theme-switch {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  height: 34px;
  min-height: 34px;
  padding: 0 9px;
  flex: 0 0 auto;
  border: 1px solid var(--theme-ui-line, #d8dee8);
  border-radius: 6px;
  background: var(--theme-ui-surface, #fff);
  color: inherit;
  font: inherit;
  font-weight: 650;
  cursor: pointer;
}
.theme-switch svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.theme-switch-track { position: relative; width: 28px; height: 16px; border-radius: 9px; background: var(--theme-ui-track, #a2a9b1); }
.theme-switch-track::before { content: ""; position: absolute; top: 2px; left: 2px; width: 12px; height: 12px; border-radius: 50%; background: #fff; }
.theme-switch[aria-checked="true"] .theme-switch-track { background: var(--theme-brand); }
.theme-switch[aria-checked="true"] .theme-switch-track::before { transform: translateX(12px); }
.theme-tools .theme-mode-select { width: 88px; min-width: 88px; height: 34px; min-height: 34px; padding: 0 5px; border: 1px solid var(--theme-ui-line, #d8dee8); border-radius: 6px; background: var(--theme-ui-surface, #fff); color: inherit; font: inherit; cursor: pointer; }
.theme-tools .theme-switch:hover { border-color: var(--theme-brand); }
.theme-tools .theme-switch:focus-visible, .theme-tools .theme-mode-select:focus-visible { outline: 2px solid var(--theme-brand); outline-offset: 2px; }
@media (hover: hover) and (pointer: fine) {
  .app-shell:not(.sidebar-revealed):not(.sidebar-pinned) .theme-tools-sidebar .theme-switch { width: 46px; padding: 0; }
  .app-shell:not(.sidebar-revealed):not(.sidebar-pinned) .theme-tools-sidebar :is(.theme-switch-label, .theme-switch-track, .theme-mode-select) { display: none; }
  .app-shell:not(.sidebar-revealed):not(.sidebar-pinned) .theme-tools-sidebar .theme-switch[aria-checked="true"] { color: var(--theme-strong); border-color: var(--theme-brand); }
}
@media (max-width: 760px) {
  .theme-tools-mobile { display: flex; justify-content: flex-end; margin-bottom: 10px; }
}
@media (max-width: 600px) {
  .theme-tools-login { top: 10px; right: 10px; }
}
@media screen {
  :root[data-theme="dark"] :is(.operator-login-brand, .sidebar-brand-toggle, .workbench-sidebar .brand, .login-brand, .standalone-brand) img { background-color: #fff; }
  :root[data-theme="dark"] :is(input, textarea)::placeholder { color: #aeb2bd; opacity: 1; }
  :root[data-theme="dark"] .cm-empty .cm-button.primary:not(:hover) { color: #222; }
}
@media print { .theme-tools { display: none !important; } }
