/* Product action colors. Kept in public so source and deployed pages share
   exactly the same stylesheet, including portalled dialogs and SDK controls. */
:root {
  --action-primary: #a6450a;
  --action-primary-hover: #8c3807;
  --action-primary-active: #742e06;
  --action-on-primary: #ffffff;
  --action-surface: #ffffff;
  --action-surface-hover: #fff5ed;
  --action-text: #20282c;
  --action-border: #c5cdd3;
  --action-disabled-bg: #edf0f2;
  --action-disabled-text: #7b858e;
  --action-disabled-border: #d9dfe4;
  --action-link: #a6450a;
  --action-danger: #b42318;
  --action-danger-hover: #912018;
}
html.dark-mode {
  --action-surface: #20282f;
  --action-surface-hover: #2c363e;
  --action-text: #edf1f5;
  --action-border: #56626d;
  --action-disabled-bg: #2a333b;
  --action-disabled-text: #8e9aa5;
  --action-disabled-border: #46515c;
  --action-link: #ffb47c;
}
/* Specificity and !important intentionally bridge existing vendor themes and
   legacy page overrides. Do not recolor icons, tabs, selection or status tags. */
html body :is(.work88-btn-primary, .ant-btn-primary,
  .work88-btn-color-primary.work88-btn-variant-solid,
  .ant-btn-color-primary.ant-btn-variant-solid,
  .welcome-page .welcome-primary):not(:disabled):not([aria-disabled="true"]):not(.work88-btn-dangerous):not(.ant-btn-dangerous):not(.work88-btn-background-ghost):not(.ant-btn-background-ghost) {
  background: var(--action-primary) !important;
  border-color: var(--action-primary) !important;
  color: var(--action-on-primary) !important;
  box-shadow: none !important;
}
html body :is(.work88-btn-primary, .ant-btn-primary, .welcome-page .welcome-primary):not(:disabled):not([aria-disabled="true"]):not(.work88-btn-dangerous):not(.ant-btn-dangerous):not(.work88-btn-background-ghost):not(.ant-btn-background-ghost):hover {
  background: var(--action-primary-hover) !important;
  border-color: var(--action-primary-hover) !important;
  color: var(--action-on-primary) !important;
}
html body :is(.work88-btn-primary, .ant-btn-primary, .welcome-page .welcome-primary):not(:disabled):not([aria-disabled="true"]):not(.work88-btn-dangerous):not(.ant-btn-dangerous):not(.work88-btn-background-ghost):not(.ant-btn-background-ghost):active {
  background: var(--action-primary-active) !important;
  border-color: var(--action-primary-active) !important;
}
html body :is(.work88-btn-default, .ant-btn-default):not(:disabled):not([aria-disabled="true"]):not(.work88-btn-dangerous):not(.ant-btn-dangerous):not(.work88-btn-background-ghost):not(.ant-btn-background-ghost) {
  background: var(--action-surface) !important;
  border-color: var(--action-border) !important;
  color: var(--action-text) !important;
  box-shadow: none !important;
}
html body :is(.work88-btn-default, .ant-btn-default):not(:disabled):not([aria-disabled="true"]):not(.work88-btn-dangerous):not(.ant-btn-dangerous):hover {
  background: var(--action-surface-hover) !important;
  border-color: var(--action-link) !important;
  color: var(--action-link) !important;
}
html body :is(.work88-btn-link, .ant-btn-link):not(:disabled):not([aria-disabled="true"]):not(.work88-btn-dangerous):not(.ant-btn-dangerous) {
  color: var(--action-link) !important;
}
html body :is(.work88-btn-primary.work88-btn-dangerous, .ant-btn-primary.ant-btn-dangerous):not(:disabled) {
  background: var(--action-danger) !important;
  border-color: var(--action-danger) !important;
  color: #fff !important;
}
html body :is(.work88-btn-primary.work88-btn-dangerous, .ant-btn-primary.ant-btn-dangerous):not(:disabled):hover {
  background: var(--action-danger-hover) !important;
  border-color: var(--action-danger-hover) !important;
}
html body :is(.work88-btn.work88-btn, .ant-btn.ant-btn):is(:disabled, [aria-disabled="true"], .work88-btn-disabled, .ant-btn-disabled) {
  background: var(--action-disabled-bg) !important;
  color: var(--action-disabled-text) !important;
  border-color: var(--action-disabled-border) !important;
  box-shadow: none !important;
  cursor: not-allowed;
}
html body :is(.work88-btn-link, .ant-btn-link, .work88-btn-text, .ant-btn-text):is(:disabled, [aria-disabled="true"]) {
  background: transparent !important;
  border-color: transparent !important;
}
html body :is(.work88-btn, .ant-btn, .welcome-primary):focus-visible {
  outline: 2px solid var(--action-link) !important;
  outline-offset: 3px !important;
}

/* Dim unavailable file information; record deletion stays clearly actionable. */
section[aria-label="文件列表"] tr.file-unavailable > td:not(:last-child) { opacity: .45; }
section[aria-label="文件列表"] tr.file-unavailable .file-record-delete { opacity: 1; }
