/* 数制云工单完整源码 v9 — 菜单、输入边框和按钮状态修正。
 * 仅 CSS；不改变事件、校验、权限、路由或 v-show 的 display:none。
 * #htmlRoot protects type/state rules from later lazy-loaded component CSS.
 */
html#htmlRoot { --szy-ui-controls-version: 9; }

/* BUTTONS: type, semantic color and state are independent dimensions. */
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn {
  --szy-btn-h: 35px;
  --szy-btn-accent: #302cbd;
  --szy-btn-hover: #252299;
  --szy-btn-fg: #59657b;
  --szy-btn-bg: #fff;
  --szy-btn-line: #dfe4ee;
  --szy-btn-hover-fg: var(--szy-btn-accent);
  --szy-btn-hover-bg: #fff;
  --szy-btn-hover-line: #9b98e8;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  gap: 4px;
  box-sizing: border-box;
  flex-shrink: 0;
  min-height: var(--szy-btn-h);
  height: auto;
  padding: 7px 14px;
  border-width: 1px;
  border-style: solid;
  border-radius: 6px;
  font-family: var(--szy-h5-font, "Microsoft YaHei", sans-serif);
  font-size: 12px;
  font-weight: 400;
  line-height: 19px;
  white-space: nowrap;
  color: var(--szy-btn-fg) !important;
  background: var(--szy-btn-bg) !important;
  border-color: var(--szy-btn-line) !important;
  box-shadow: none !important;
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn-primary {
  --szy-btn-fg: #fff; --szy-btn-bg: var(--szy-btn-accent); --szy-btn-line: var(--szy-btn-accent);
  --szy-btn-hover-fg: #fff; --szy-btn-hover-bg: var(--szy-btn-hover); --szy-btn-hover-line: var(--szy-btn-hover);
}
/* Retain H5's secondary toolbar actions without affecting their business type. */
html#htmlRoot:not([data-theme="dark"]) .jeecg-basic-table-header__tableTitle .ant-btn-primary {
  --szy-btn-fg: #59657b; --szy-btn-bg: #fff; --szy-btn-line: #dfe4ee;
  --szy-btn-hover-fg: var(--szy-btn-accent); --szy-btn-hover-bg: #fff; --szy-btn-hover-line: #9b98e8;
}
html#htmlRoot:not([data-theme="dark"]) .jeecg-basic-table-header__tableTitle > .ant-btn-primary:first-child,
html#htmlRoot:not([data-theme="dark"]) .jeecg-basic-table-header__tableTitle > :first-child > .ant-btn-primary {
  --szy-btn-fg: #fff; --szy-btn-bg: var(--szy-btn-accent); --szy-btn-line: var(--szy-btn-accent);
  --szy-btn-hover-fg: #fff; --szy-btn-hover-bg: var(--szy-btn-hover); --szy-btn-hover-line: var(--szy-btn-hover);
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn-dashed { border-style: dashed !important; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn:is(.ant-btn-link,.ant-btn-text) {
  --szy-btn-fg: var(--szy-btn-accent); --szy-btn-bg: transparent; --szy-btn-line: transparent;
  --szy-btn-hover-fg: var(--szy-btn-hover); --szy-btn-hover-bg: transparent; --szy-btn-hover-line: transparent;
  min-height: 27px; padding: 3px 9px; text-shadow: none;
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn:is(.ant-btn-dangerous,.ant-btn-danger,.ant-btn-error) {
  --szy-btn-accent: #e05f65; --szy-btn-hover: #c94950;
  --szy-btn-fg: var(--szy-btn-accent); --szy-btn-bg: #fffafa; --szy-btn-line: #f1cace;
  --szy-btn-hover-fg: var(--szy-btn-hover); --szy-btn-hover-bg: #fff3f3; --szy-btn-hover-line: var(--szy-btn-hover);
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn.ant-btn-success {
  --szy-btn-accent: #55d187; --szy-btn-hover: #3ab96d;
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn.ant-btn-warning {
  --szy-btn-accent: #efbd47; --szy-btn-hover: #d4a12c;
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn:is(.ant-btn-success,.ant-btn-warning,.ant-btn-error):not(.ant-btn-link):not(.ant-btn-text),
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn-primary:is(.ant-btn-dangerous,.ant-btn-danger) {
  --szy-btn-fg: #fff; --szy-btn-bg: var(--szy-btn-accent); --szy-btn-line: var(--szy-btn-accent);
  --szy-btn-hover-fg: #fff; --szy-btn-hover-bg: var(--szy-btn-hover); --szy-btn-hover-line: var(--szy-btn-hover);
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn:is(.ant-btn-link,.ant-btn-text):is(.ant-btn-dangerous,.ant-btn-danger,.ant-btn-success,.ant-btn-warning,.ant-btn-error) {
  --szy-btn-fg: var(--szy-btn-accent); --szy-btn-bg: transparent; --szy-btn-line: transparent;
  --szy-btn-hover-fg: var(--szy-btn-hover); --szy-btn-hover-bg: transparent; --szy-btn-hover-line: transparent;
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn.ant-btn-background-ghost {
  --szy-btn-fg: var(--szy-btn-accent); --szy-btn-bg: transparent; --szy-btn-line: var(--szy-btn-accent);
  --szy-btn-hover-fg: var(--szy-btn-hover); --szy-btn-hover-bg: transparent; --szy-btn-hover-line: var(--szy-btn-hover);
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn.ant-btn-background-ghost:is(.ant-btn-link,.ant-btn-text) { --szy-btn-line: transparent; --szy-btn-hover-line: transparent; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn:not(:disabled):not(.ant-btn-disabled):not(.is-disabled):not(.ant-btn-loading):is(:hover,:focus-visible) {
  color: var(--szy-btn-hover-fg) !important;
  background: var(--szy-btn-hover-bg) !important;
  border-color: var(--szy-btn-hover-line) !important;
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn:focus-visible { outline: 2px solid #8582f0; outline-offset: 2px; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn:is(:disabled,.ant-btn-disabled,.is-disabled) {
  color: #a5adbd !important; background: #f7f8fb !important; border-color: #e6e9f0 !important; cursor: not-allowed;
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn:is(.ant-btn-link,.ant-btn-text):is(:disabled,.ant-btn-disabled,.is-disabled) {
  background: transparent !important; border-color: transparent !important;
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn-sm { --szy-btn-h: 27px; padding: 3px 9px; font-size: 11px; line-height: 19px; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn-lg { --szy-btn-h: 40px; padding: 9px 18px; font-size: 13px; line-height: 20px; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn:is(.ant-btn-icon-only,.ant-btn-circle) {
  width: var(--szy-btn-h); min-width: var(--szy-btn-h); height: var(--szy-btn-h); min-height: var(--szy-btn-h); padding: 0 !important;
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn.ant-btn-circle { border-radius: 50% !important; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn.ant-btn-round { border-radius: 999px !important; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn-block { width: 100%; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn > :is(.anticon,.app-iconify) {
  display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; vertical-align: middle; line-height: 1;
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn > :is(.anticon,.app-iconify) + span { margin-left: 0; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn.ant-btn-loading { cursor: wait; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn-group { display: inline-flex; align-items: stretch; vertical-align: middle; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn-group > .ant-btn:not(:first-child) { border-top-left-radius: 0 !important; border-bottom-left-radius: 0 !important; margin-left: -1px; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-btn-group > .ant-btn:not(:last-child) { border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-input-search .ant-input-search-button { border-top-left-radius: 0 !important; border-bottom-left-radius: 0 !important; min-height: 32px; height: 100%; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-input-search > .ant-input-group > :is(.ant-input,.ant-input-affix-wrapper) { border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important; }
html#htmlRoot:not([data-theme="dark"]) .jeecg-basic-table-action .ant-btn { min-height: 24px; padding: 0 3px; }

/* PROFILE: input and actions share space; only the mobile input spans a whole row. */
html#htmlRoot:not([data-theme="dark"]) .szy-business--profile .info-item > .name:has(> .ant-btn) {
  display: flex; align-items: center; flex-wrap: nowrap; gap: 8px; min-width: 0;
}
html#htmlRoot:not([data-theme="dark"]) .szy-business--profile .info-item > .name:has(> .ant-btn) > :is(input.ant-input,.ant-input-affix-wrapper) {
  flex: 1 1 180px; width: 0 !important; min-width: 0; max-width: 100%;
}
html#htmlRoot:not([data-theme="dark"]) .szy-business--profile .info-item > .name > .ant-btn {
  display: inline-flex; flex: 0 0 auto; min-width: 56px; min-height: 32px; height: 32px;
  padding: 0 12px !important; margin: 0 !important;
}
@media(max-width:760px) {
  html#htmlRoot:not([data-theme="dark"]) .szy-business--profile .info-item > .name:has(> .ant-btn) { flex-wrap: wrap; }
  html#htmlRoot:not([data-theme="dark"]) .szy-business--profile .info-item > .name:has(> .ant-btn) > :is(input.ant-input,.ant-input-affix-wrapper) { flex: 0 0 100%; width: 100% !important; }
}

/* TEXTAREA: single-line affix resets must never strip the textarea's border. */
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) :is(.ant-input-textarea-affix-wrapper,.ant-input-affix-wrapper-textarea-with-clear-btn) {
  display: block; position: relative; width: 100%; min-height: 0 !important; height: auto !important;
  padding: 0 !important; border: 0 !important; border-radius: 6px !important; background: transparent !important; box-shadow: none !important;
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) textarea.ant-input:not([aria-hidden="true"]) {
  display: block; box-sizing: border-box; width: 100%; min-height: 84px;
  padding: 10px 11px; border: 1px solid #dfe4ee; border-radius: 6px !important;
  background: #fff; color: #59657b; font-size: 12px; line-height: 1.8; resize: vertical;
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) :is(.ant-input-textarea-affix-wrapper,.ant-input-affix-wrapper-textarea-with-clear-btn) > .ant-input-suffix {
  position: absolute; top: 11px; right: 11px; margin: 0; line-height: 16px;
}
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) :is(.ant-input-textarea-affix-wrapper,.ant-input-affix-wrapper-textarea-with-clear-btn) > textarea.ant-input { padding-right: 30px; }
/* Explicit borderless API remains borderless. Internal single-line input remains borderless. */
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) :is(.ant-input-borderless,.ant-input-affix-wrapper-borderless,.ant-input-number-borderless,.ant-picker-borderless),
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-select-borderless .ant-select-selector {
  border-color: transparent !important; background: transparent !important; box-shadow: none !important;
}
/* Semantic status borders (before disabled and intentionally-borderless exceptions). */
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) :is(.ant-input-status-error,.ant-input-affix-wrapper-status-error,.ant-picker-status-error,.ant-input-number-status-error),
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-form-item-has-error :is(input.ant-input,textarea.ant-input,.ant-input-affix-wrapper,.ant-picker,.ant-input-number,.ant-select-selector),
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-select-status-error .ant-select-selector { border-color: #e05f65 !important; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) :is(.ant-input-status-warning,.ant-input-affix-wrapper-status-warning,.ant-picker-status-warning,.ant-input-number-status-warning),
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-form-item-has-warning :is(input.ant-input,textarea.ant-input,.ant-input-affix-wrapper,.ant-picker,.ant-input-number,.ant-select-selector),
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-select-status-warning .ant-select-selector { border-color: #d99734 !important; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-input-affix-wrapper > input.ant-input { border: 0 !important; box-shadow: none !important; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) textarea.ant-input:disabled { background: #f6f7fb !important; color: #8f99ad !important; cursor: not-allowed; }
@media(prefers-reduced-motion:reduce) {
  html#htmlRoot .ant-btn, html#htmlRoot .jeecg-menu-submenu-title::after { transition: none !important; }
}

/* Ant Design Vue 3.2 uses the legacy clear-textarea wrapper and an affix ::before spacer. */
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) :is(.ant-input-textarea-affix-wrapper,.ant-input-affix-wrapper-textarea-with-clear-btn)::before { content: none !important; display: none; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) .ant-input-affix-wrapper-textarea-with-clear-btn > .ant-input-clear-icon { position: absolute; top: 11px; right: 11px; margin: 0; }
html#htmlRoot:not([data-theme="dark"]) body:has(:where(.jeecg-default-layout,.szy-business-v5,.szy-workbench)) :is(.ant-input-textarea-affix-wrapper,.ant-input-affix-wrapper-textarea-with-clear-btn).ant-input-affix-wrapper-borderless > textarea.ant-input { border-color: transparent !important; background: transparent !important; box-shadow: none !important; }
