/* stylelint-disable */
html,
body {
  width: 100%;
  height: 100%;
}
input::-ms-clear,
input::-ms-reveal {
  display: none;
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
@-ms-viewport {
  width: device-width;
}
body {
  margin: 0;
}
[tabindex='-1']:focus {
  outline: none;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  margin-bottom: 0.5em;
  font-weight: 500;
}
p {
  margin-top: 0;
  margin-bottom: 1em;
}
abbr[title],
abbr[data-original-title] {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  border-bottom: 0;
  cursor: help;
}
address {
  margin-bottom: 1em;
  font-style: normal;
  line-height: inherit;
}
input[type='text'],
input[type='password'],
input[type='number'],
textarea {
  -webkit-appearance: none;
}
ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1em;
}
ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}
dt {
  font-weight: 500;
}
dd {
  margin-bottom: 0.5em;
  margin-left: 0;
}
blockquote {
  margin: 0 0 1em;
}
dfn {
  font-style: italic;
}
b,
strong {
  font-weight: bolder;
}
small {
  font-size: 80%;
}
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
pre,
code,
kbd,
samp {
  font-size: 1em;
  font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
}
pre {
  margin-top: 0;
  margin-bottom: 1em;
  overflow: auto;
}
figure {
  margin: 0 0 1em;
}
img {
  vertical-align: middle;
  border-style: none;
}
a,
area,
button,
[role='button'],
input:not([type='range']),
label,
select,
summary,
textarea {
  touch-action: manipulation;
}
table {
  border-collapse: collapse;
}
caption {
  padding-top: 0.75em;
  padding-bottom: 0.3em;
  text-align: left;
  caption-side: bottom;
}
input,
button,
select,
optgroup,
textarea {
  margin: 0;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  line-height: inherit;
}
button,
input {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
html [type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button;
}
button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
  padding: 0;
  border-style: none;
}
input[type='radio'],
input[type='checkbox'] {
  box-sizing: border-box;
  padding: 0;
}
input[type='date'],
input[type='time'],
input[type='datetime-local'],
input[type='month'] {
  -webkit-appearance: listbox;
}
textarea {
  overflow: auto;
  resize: vertical;
}
fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
legend {
  display: block;
  width: 100%;
  max-width: 100%;
  margin-bottom: 0.5em;
  padding: 0;
  color: inherit;
  font-size: 1.5em;
  line-height: inherit;
  white-space: normal;
}
progress {
  vertical-align: baseline;
}
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
  height: auto;
}
[type='search'] {
  outline-offset: -2px;
  -webkit-appearance: none;
}
[type='search']::-webkit-search-cancel-button,
[type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}
output {
  display: inline-block;
}
summary {
  display: list-item;
}
template {
  display: none;
}
[hidden] {
  display: none !important;
}
mark {
  padding: 0.2em;
  background-color: #feffe6;
}
:root {
  color: #0f1f3a;
  background: #f3f6fb;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

* {
  box-sizing: border-box;
}

html,
body,
#root {
  height: 100%;
}

body {
  margin: 0;
  min-width: 320px;
  min-height: 100vh;
  overflow: hidden;
  background: #f3f6fb;
}

button,
input,
textarea,
select {
  font: inherit;
}

.app-layout,
.cockpit-layout {
  height: 100dvh;
  min-height: 0;
  overflow: hidden;
}

.app-sider {
  height: 100dvh;
  flex: 0 0 auto;
  overflow: hidden;
  background: #f4f6fb !important;
  border-right: 1px solid #e2e8f2;
  box-shadow: none;
}

.side-search {
  height: 44px;
  padding: 4px 10px;
  display: flex;
  align-items: center;
}

.side-toolbar {
  min-height: 58px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 40px;
  align-items: center;
  gap: 4px;
  padding-right: 8px;
  flex: 0 0 auto;
}

.side-toolbar.is-collapsed {
  grid-template-columns: 1fr;
  justify-items: center;
  padding: 9px 0;
}

.sider-collapse-button {
  width: 40px !important;
  height: 40px !important;
  color: #52677f !important;
  font-size: 18px !important;
}

.sider-collapse-button:hover {
  color: var(--wms-accent) !important;
  background: #e6f4ff !important;
}

.app-main-layout {
  height: 100dvh;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}

/* Sidebar collapse must be immediate: animated width/height forces the data pages to reflow every frame. */
.app-layout > .tree-sider,
.app-layout > .tree-sider .ant-layout-sider-children,
.app-layout > .app-main-layout,
.tree-sider .ant-menu,
.tree-sider .ant-menu-item,
.tree-sider .ant-menu-submenu,
.tree-sider .ant-menu-submenu-title,
.tree-sider .ant-menu-title-content,
.tree-sider .ant-menu-sub {
  transition: none !important;
}

.tree-sider .ant-motion-collapse,
.tree-sider .ant-motion-collapse-appear,
.tree-sider .ant-motion-collapse-enter,
.tree-sider .ant-motion-collapse-leave {
  animation: none !important;
  transition: none !important;
}

.side-search .ant-input-affix-wrapper {
  height: 34px;
  background: transparent;
  color: #667085;
}

.app-brand,
.cockpit-brand {
  height: 44px;
  display: flex;
  align-items: center;
  padding: 0 18px;
  color: #0f1f3a;
  font-weight: 850;
  font-size: 17px;
  letter-spacing: 0;
  overflow: hidden;
  white-space: nowrap;
}

.app-brand-mark {
  display: none;
}

.app-header,
.cockpit-header {
  flex: 0 0 auto;
  height: 56px;
  padding: 0 18px;
  background: #fff;
  border-bottom: 1px solid #e2e8f2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-shadow: none;
}

.app-header-title {
  font-size: 16px;
  line-height: 24px;
  font-weight: 850;
  color: #0f1f3a;
}

.user-chip {
  color: #0f1f3a;
  font-weight: 650;
}

.app-content,
.cockpit-content {
  min-height: 0;
  overflow: auto;
  padding: 10px 12px 18px;
  background: #f3f6fb;
}

.workspace-tabs {
  --workspace-active-bg: var(--wms-surface);
  --workspace-active-text: var(--wms-accent-strong);
  flex: 0 0 auto;
  height: 44px;
  padding: 4px 12px 0;
  overflow: hidden;
  background: var(--wms-surface);
  border-bottom: 1px solid var(--wms-border);
}
.workspace-tabs .ant-tabs { height: 40px; }
.workspace-tabs .ant-tabs-nav { margin: 0; }
.workspace-tabs .ant-tabs-tab { max-width: 180px; padding: 7px 12px; }
.workspace-tabs .ant-tabs-tab-btn { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.workspace-tabs .ant-tabs-content-holder { display: none; }
/* 页签栏与页面共用主题变量，不能在深色模式下保留白底。 */
.workspace-tabs .ant-tabs-card > .ant-tabs-nav .ant-tabs-tab {
  background: var(--wms-surface-soft);
  border-color: var(--wms-border);
  color: var(--wms-text);
}
.workspace-tabs .ant-tabs-card > .ant-tabs-nav .ant-tabs-tab:hover {
  background: var(--workspace-active-bg);
  border-color: var(--workspace-active-text);
}
.workspace-tabs .ant-tabs-card > .ant-tabs-nav .ant-tabs-tab-active {
  background: var(--workspace-active-bg);
  border-color: var(--workspace-active-text);
}
.workspace-tabs .ant-tabs-card > .ant-tabs-nav .ant-tabs-tab-active .ant-tabs-tab-btn {
  color: var(--workspace-active-text) !important;
}
.workspace-tabs .ant-tabs-tab-remove { color: var(--wms-text-secondary); }
.workspace-tabs .ant-tabs-tab-remove:hover,
.workspace-tabs .ant-tabs-tab-remove:focus-visible { color: var(--workspace-active-text); }
.workspace-tabs .ant-tabs-nav-more { color: var(--wms-text); background: var(--wms-surface); }
.workspace-tabs .ant-tabs-nav-more:hover { background: var(--wms-surface-soft); }
[data-theme='dark'] .workspace-tabs {
  --workspace-active-bg: #1c3b5c;
  --workspace-active-text: #91caff;
}

.page-shell {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.page-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.cockpit-content > .page-shell > .page-title-row {
  position: sticky;
  top: -10px;
  z-index: 20;
  margin: -10px -12px 0;
  padding: 14px 12px 10px;
  background: color-mix(in srgb, #f3f6fb 94%, transparent);
  backdrop-filter: blur(8px);
}

/* 页面名称由顶部工作区页签统一展示，标题行只保留刷新、新增等操作。 */
.cockpit-content > .page-shell > .page-title-row .page-title,
.cockpit-content > .page-shell > .page-title-row .page-subtitle {
  display: none;
}
.cockpit-content > .page-shell > .page-title-row > div:has(.page-title) {
  display: none;
}
.cockpit-content > .page-shell > .page-title-row:has(.page-title):not(:has(button)):not(:has(.ant-tag)) {
  display: none;
}
.cockpit-content > .page-shell > .page-title-row {
  min-height: 0;
  height: 0;
  margin: 0;
  padding: 0;
  overflow: visible;
}
.cockpit-content > .page-shell > .page-title-row:has(button),
.cockpit-content > .page-shell > .page-title-row:has(.ant-tag) {
  min-height: 34px;
  height: 34px;
  padding-top: 0;
  padding-bottom: 0;
}
.cockpit-content > .page-shell > .page-title-row:has(.page-title) > div:empty {
  display: none;
}

.page-title {
  margin: 0;
  font-size: 26px;
  line-height: 36px;
  font-weight: 900;
  color: #0f1f3a;
}

.page-subtitle {
  margin-top: 4px;
  color: #667085;
  font-size: 15px;
  line-height: 24px;
  font-weight: 500;
}

.filter-panel,
.table-panel,
.form-panel,
.cockpit-card,
.quick-panel,
.inventory-card {
  background: #fff;
  border: 1px solid #e6edf6;
  border-radius: 6px;
  box-shadow: 0 2px 10px rgba(31, 44, 71, 0.04);
}

.filter-panel,
.table-panel,
.form-panel {
  padding: 20px;
}

.action-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.action-group {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.cockpit-page {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.cockpit-banner {
  position: relative;
  overflow: hidden;
  height: 80px;
  border-radius: 0;
  background: linear-gradient(105deg, #58a8f4 0%, #2f7beb 66%, #357cec 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}

.cockpit-banner::before {
  content: '';
  position: absolute;
  inset: 0 0 0 32%;
  background: rgba(255, 255, 255, 0.08);
  transform: skewX(18deg);
}

.banner-title {
  position: relative;
  z-index: 1;
  font-size: 30px;
  line-height: 40px;
  font-weight: 950;
}

.banner-watermark {
  position: absolute;
  right: 82px;
  top: 10px;
  color: rgba(255, 255, 255, 0.2);
  font-size: 54px;
  line-height: 60px;
  font-weight: 950;
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.45);
}

.quick-panel {
  min-height: 138px;
  padding: 26px 64px;
  display: grid;
  grid-template-columns: repeat(4, minmax(110px, 1fr));
  align-items: center;
  gap: 36px;
}

.quick-action {
  border: 0;
  background: transparent;
  padding: 4px 0;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  color: #0f1f3a;
  font-size: 16px;
  line-height: 24px;
  font-weight: 800;
  cursor: pointer;
}

.quick-icon {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: var(--quick-color, #1677ff);
  border-radius: 8px;
  font-size: 22px;
  box-shadow: 0 8px 20px color-mix(in srgb, var(--quick-color, #1677ff) 28%, transparent);
}

.cockpit-grid {
  display: grid;
  grid-template-columns: minmax(280px, 0.9fr) minmax(520px, 1.9fr) minmax(280px, 0.9fr);
  gap: 10px;
}

.cockpit-card {
  padding: 12px;
  min-height: 404px;
}

.card-title-row {
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
}

.card-title-row h2 {
  margin: 0;
  color: #0f1f3a;
  font-size: 16px;
  line-height: 24px;
  font-weight: 900;
}

.flow-card {
  display: flex;
  flex-direction: column;
}

.flow-head {
  height: 38px;
  padding: 0 14px;
  display: flex;
  align-items: center;
  gap: 12px;
  background: #f4f8fd;
  color: #0f1f3a;
  font-size: 15px;
  font-weight: 900;
}

.flow-icon {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #1677ff;
  background: #d8ecff;
}

.flow-list {
  flex: 1;
  padding: 10px 38px 0;
  background: #f8fbff;
}

.flow-item {
  color: #0f1f3a;
  font-size: 14px;
  line-height: 31px;
  font-weight: 650;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.brief-card {
  min-height: 404px;
}

.warehouse-tabs {
  display: grid;
  grid-template-columns: repeat(7, minmax(72px, 1fr));
  gap: 8px;
  margin: 4px 12px 18px;
}

.brief-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(160px, 1fr));
  gap: 12px;
}

.brief-cell {
  min-height: 138px;
  border-radius: 8px;
  background: #f1f7fd;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 22px;
  color: #0f1f3a;
}

.brief-cell span {
  font-size: 15px;
  line-height: 22px;
  font-weight: 800;
}

.brief-cell strong {
  color: #087bff;
  font-size: 26px;
  line-height: 34px;
  font-weight: 900;
}

.brief-cell em {
  font-style: normal;
  font-size: 15px;
  font-weight: 800;
}

.brief-cell.emphasis {
  background: #f7fbff;
  box-shadow: 0 12px 24px rgba(93, 77, 255, 0.12);
}

.brief-cell.emphasis strong,
.brief-cell:nth-child(6) strong {
  color: #6a48ff;
}

.inventory-card {
  padding: 10px 14px 16px;
}

.inventory-card .ant-tabs-nav {
  margin-bottom: 12px;
}

.inventory-card .ant-tabs-tab {
  padding: 10px 16px;
  font-weight: 850;
}

.inventory-body {
  display: grid;
  grid-template-columns: 240px repeat(4, minmax(180px, 1fr));
  gap: 12px;
  align-items: stretch;
}

.warehouse-filter,
.inventory-metric,
.inventory-progress {
  min-height: 118px;
  border-radius: 8px;
  background: #f6faff;
  padding: 16px;
}

.warehouse-filter h3 {
  margin: 0 0 12px;
  font-size: 15px;
  line-height: 22px;
  font-weight: 900;
}

.warehouse-buttons {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.inventory-metric {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
}

.inventory-metric span,
.progress-title span {
  color: #0f1f3a;
  font-size: 15px;
  line-height: 22px;
  font-weight: 800;
}

.inventory-metric strong,
.progress-title strong {
  color: #087bff;
  font-size: 25px;
  line-height: 34px;
  font-weight: 900;
}

.inventory-metric.warning strong {
  color: #f05656;
}

.inventory-progress {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.progress-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}

.stat-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
}

.stat-card {
  background: #fff;
  border: 1px solid #e6edf6;
  border-radius: 6px;
  padding: 20px;
  min-height: 126px;
  box-shadow: 0 2px 10px rgba(31, 44, 71, 0.04);
}

.stat-label {
  color: #667085;
  font-size: 14px;
  line-height: 22px;
  font-weight: 750;
}

.stat-value {
  margin-top: 8px;
  font-size: 30px;
  line-height: 40px;
  font-weight: 950;
  color: #0f1f3a;
}

.login-page {
  min-height: 100vh;
  display: grid;
  grid-template-columns: minmax(420px, 560px) 1fr;
  background: #f3f6fb;
}

.login-panel {
  padding: 64px 56px;
  background: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-right: 1px solid #e2e8f2;
}

.login-visual {
  min-height: 100%;
  background:
    linear-gradient(rgba(15, 23, 42, 0.64), rgba(15, 23, 42, 0.64)),
    url('/warehouse.jpg');
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: end;
  padding: 56px;
  color: #fff;
}

.login-visual h1 {
  margin: 0 0 12px;
  font-size: 42px;
  line-height: 52px;
  font-weight: 950;
  letter-spacing: 0;
}

.login-visual p {
  margin: 0;
  max-width: 620px;
  color: rgba(255, 255, 255, 0.84);
  font-size: 17px;
  line-height: 28px;
  font-weight: 650;
}

.pda-shell {
  width: 100%;
  max-width: none;
  margin: 0;
}

.pda-workspace {
  width: 100%;
  max-width: 680px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.pda-scan-input .ant-input {
  height: 56px;
  font-size: 22px;
  font-weight: 800;
}

.ant-menu {
  background: transparent !important;
  padding: 0 8px;
}

.ant-menu-title-content,
.ant-menu-item,
.ant-menu-submenu-title {
  font-weight: 800;
}

.ant-menu-item-selected {
  background: #dfe3eb !important;
  color: #0f1f3a !important;
}

.ant-table-thead > tr > th {
  font-weight: 850 !important;
}

.ant-table-tbody > tr > td {
  font-weight: 550;
}

@media (max-width: 1280px) {
  .cockpit-grid,
  .inventory-body {
    grid-template-columns: 1fr;
  }

  .warehouse-tabs {
    grid-template-columns: repeat(3, 1fr);
  }

  .brief-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 860px) {
  .login-page {
    grid-template-columns: 1fr;
  }

  .login-visual {
    display: none;
  }

  .app-content,
  .cockpit-content {
    padding: 10px;
  }

  .quick-panel,
  .brief-grid,
  .warehouse-tabs {
    grid-template-columns: 1fr;
  }

  .banner-watermark {
    display: none;
  }
}

.tree-sider {
  width: 272px;
  min-width: 272px;
  display: flex;
  flex-direction: column;
  background: #f4f6fb !important;
}

.tree-sider.is-collapsed {
  width: 72px;
  min-width: 72px;
}

.compact-nav {
  min-height: 0;
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 2px 10px 16px;
  overflow-x: hidden;
  overflow-y: auto;
}

.compact-nav-button {
  width: 48px;
  height: 46px;
  display: grid;
  place-items: center;
  padding: 0;
  color: #405a76;
  background: transparent;
  border: 0;
  border-radius: 4px;
  cursor: pointer;
}

.compact-nav-button:hover {
  color: var(--wms-accent);
  background: #edf4fb;
}

.compact-nav-button.is-active {
  color: var(--wms-accent);
  background: #e6f4ff;
  box-shadow: inset 3px 0 0 var(--wms-accent);
}

.compact-nav-button .tree-img-icon,
.compact-nav-button .tree-icon {
  margin: 0;
}

.compact-nav-popup .ant-popover-inner {
  width: 236px;
  padding: 6px;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(207, 220, 235, 0.96);
  border-radius: 6px;
  box-shadow: 0 8px 20px rgba(24, 40, 61, 0.14);
  backdrop-filter: blur(8px) saturate(1.04);
  -webkit-backdrop-filter: blur(8px) saturate(1.04);
}

.compact-nav-popup .ant-popover-inner-content,
.compact-nav-popup .ant-menu {
  padding: 0;
  background: transparent !important;
}

.compact-nav-popup-title {
  min-height: 40px;
  display: flex;
  align-items: center;
  padding: 8px 12px;
  color: #18283d;
  border-bottom: 1px solid rgba(207, 220, 235, 0.96);
  font-size: 15px;
  line-height: 22px;
  font-weight: 700;
}

.compact-nav-popup .ant-menu {
  padding-top: 4px;
}

.compact-nav-popup .ant-menu-item {
  min-height: 42px;
  height: auto !important;
  display: flex;
  align-items: center;
  margin: 2px 0 !important;
  padding: 8px 10px !important;
  line-height: 22px !important;
  white-space: normal;
}

.compact-nav-popup-label {
  display: block;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.tree-sider .ant-layout-sider-children {
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-right: 1px solid #e3e8f1;
}

.tree-sider .ant-menu {
  flex: 1;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0 8px 18px;
  border-inline-end: 0 !important;
}

.tree-sider.ant-layout-sider-collapsed .ant-menu-inline-collapsed {
  width: 100%;
  padding-inline: 8px;
}

.tree-sider.ant-layout-sider-collapsed .ant-menu-item,
.tree-sider.ant-layout-sider-collapsed .ant-menu-submenu-title {
  padding-inline: calc(50% - 12px) !important;
}

.ant-menu-submenu-popup {
  min-width: 224px !important;
}

.ant-menu-submenu-popup .ant-menu {
  min-width: 224px;
  padding: 6px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  border: 1px solid rgba(207, 220, 235, 0.96);
  border-radius: 6px;
  box-shadow: 0 8px 20px rgba(24, 40, 61, 0.14) !important;
  backdrop-filter: blur(8px) saturate(1.04);
  -webkit-backdrop-filter: blur(8px) saturate(1.04);
}

.ant-menu-submenu-popup.ant-menu-submenu-hidden .ant-menu {
  box-shadow: none !important;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.ant-menu-submenu-popup .ant-menu-item {
  height: 42px !important;
  line-height: 42px !important;
  margin: 2px 0 !important;
  color: #263b54 !important;
  background: transparent !important;
  border-radius: 4px !important;
  font-size: 15px;
  font-weight: 550;
}

.ant-menu-submenu-popup .ant-menu-item:hover {
  color: #18283d !important;
  background: #eef2f6 !important;
}

.ant-menu-submenu-popup .ant-menu-item-selected {
  color: #0958d9 !important;
  background: #e6f4ff !important;
  font-weight: 650;
}

.ant-tooltip {
  max-width: min(420px, calc(100vw - 24px)) !important;
}

.ant-tooltip .ant-tooltip-inner {
  min-height: 30px;
  padding: 6px 10px;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
  line-height: 20px;
}

.tree-sider .ant-menu-item,
.tree-sider .ant-menu-submenu-title {
  height: 40px !important;
  line-height: 40px !important;
  margin: 4px 0 !important;
  padding-inline: 12px !important;
  border-radius: 6px !important;
  color: #0f1f3a;
  font-size: 15px;
  font-weight: 800;
}

.tree-sider .ant-menu-sub .ant-menu-item,
.tree-sider .ant-menu-sub .ant-menu-submenu-title {
  height: 38px !important;
  line-height: 38px !important;
  margin: 2px 0 !important;
  padding-left: 32px !important;
  font-size: 14px;
  font-weight: 750;
}

.tree-sider .ant-menu-item-selected {
  background: #dfe3eb !important;
  color: #0f1f3a !important;
}

.tree-sider .ant-menu-item-active,
.tree-sider .ant-menu-submenu-title:hover {
  background: #e9edf4 !important;
}

.tree-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  font-size: 16px;
}

.tree-icon-home {
  color: #28a8ff;
}

.tree-icon-app {
  color: #1fa8ff;
}

.tree-icon-folder {
  color: #f4ad2d;
}

.tree-icon-chart {
  color: #7d6dff;
}

.tip-icon {
  margin-left: 4px;
  color: #f5bf26;
}

.tree-sider {
  background: linear-gradient(180deg, #f7f9fd 0%, #eef3f9 100%) !important;
}

.tree-sider .ant-layout-sider-children {
  border-right: 1px solid #dbe4f0;
  box-shadow: 6px 0 18px rgba(30, 54, 90, 0.05);
}

.side-search {
  height: 50px;
  padding: 8px 12px 6px;
}

.side-search .ant-input-affix-wrapper {
  height: 36px;
  padding: 0 8px;
  border-radius: 8px;
  background: var(--wms-surface);
  border: 1px solid var(--wms-border);
  box-shadow: none;
}
/* 输入区不得覆盖外框边缘，深色模式也由外层统一绘制背景。 */
.side-search .ant-input-affix-wrapper > input.ant-input { min-height: 0; background: transparent !important; }
.side-search .ant-input-affix-wrapper:focus-within { border-color: var(--wms-accent); box-shadow: 0 0 0 2px #1677ff20; }

.side-search .ant-input,
.side-search .ant-input::placeholder,
.side-search .anticon {
  color: #7b8798;
  font-weight: 600;
}

.tree-sider .ant-menu {
  padding: 0 10px 18px;
  background: transparent !important;
  border-inline-end: 0 !important;
}

.tree-sider .ant-menu-item,
.tree-sider .ant-menu-submenu-title {
  height: 42px !important;
  line-height: 42px !important;
  margin: 4px 0 !important;
  padding-inline: 12px !important;
  border-radius: 7px !important;
  color: #10223f;
  font-size: 15px;
  font-weight: 850;
}

.tree-sider .ant-menu-sub .ant-menu-item,
.tree-sider .ant-menu-sub .ant-menu-submenu-title {
  height: 38px !important;
  line-height: 38px !important;
  margin: 3px 0 !important;
  padding-left: 34px !important;
  font-size: 14px;
  font-weight: 800;
}

.tree-sider .ant-menu-item-selected {
  background: linear-gradient(90deg, #dbeaff 0%, #eef5ff 100%) !important;
  color: #0b63ce !important;
  box-shadow: inset 3px 0 0 #1677ff;
}

.tree-sider .ant-menu-item-active,
.tree-sider .ant-menu-submenu-title:hover {
  background: #e9eff8 !important;
  color: #0b63ce !important;
}

.tree-sider .ant-menu-submenu-open > .ant-menu-submenu-title {
  color: #1677ff !important;
}

.tree-sider .ant-menu-submenu-arrow {
  color: #7b8798;
  font-weight: 900;
}

.tree-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  font-size: 16px;
}

.tree-icon .anticon {
  color: inherit !important;
}

.tree-icon-home {
  color: #169bff !important;
}

.tree-icon-app {
  color: #2b7de9 !important;
}

.tree-icon-folder {
  color: #f5ae2f !important;
}

.tree-icon-chart {
  color: #7a6cff !important;
}

.tree-sider .ant-menu-item-selected .tree-icon,
.tree-sider .ant-menu-submenu-open > .ant-menu-submenu-title .tree-icon {
  filter: saturate(1.2);
}

.tip-icon {
  margin-left: 4px;
  color: #f5bf26 !important;
}

.tree-img-icon {
  width: 21px;
  height: 21px;
  object-fit: contain;
  display: inline-block;
  flex: 0 0 auto;
}

.tree-home-img {
  filter: drop-shadow(0 2px 3px rgba(35, 95, 160, 0.16));
}

.tree-folder-img {
  filter: drop-shadow(0 2px 3px rgba(255, 139, 92, 0.2));
}

.tree-warehouse-img {
  width: 20px;
  height: 20px;
}

.tree-sider .ant-menu-item-selected .tree-img-icon,
.tree-sider .ant-menu-submenu-open > .ant-menu-submenu-title .tree-img-icon {
  filter: drop-shadow(0 3px 5px rgba(22, 119, 255, 0.2)) saturate(1.08);
}

.tree-sider .ant-menu-item-selected {
  box-shadow: none !important;
}

/* 大屏驾驶舱尺寸修正：放大布局，降低过重字重 */
.app-header,
.cockpit-header {
  height: 64px;
  padding: 0 24px;
}

.app-header-title {
  font-size: 19px;
  line-height: 28px;
  font-weight: 700;
}

.app-content,
.cockpit-content {
  padding: 16px 18px 24px;
}

.side-search {
  height: 58px;
  padding: 10px 14px 8px;
}

.side-search .ant-input-affix-wrapper {
  height: 40px;
  border-radius: 8px;
}

.tree-sider .ant-menu-item,
.tree-sider .ant-menu-submenu-title {
  height: 46px !important;
  line-height: 46px !important;
  margin: 5px 0 !important;
  font-size: 16px;
  font-weight: 650;
}

.tree-sider .ant-menu-sub .ant-menu-item,
.tree-sider .ant-menu-sub .ant-menu-submenu-title {
  height: 42px !important;
  line-height: 42px !important;
  margin: 4px 0 !important;
  padding-left: 36px !important;
  font-size: 15px;
  font-weight: 620;
}

.tree-img-icon {
  width: 23px;
  height: 23px;
}

.tree-icon {
  width: 21px;
  height: 21px;
  font-size: 18px;
}

.cockpit-page {
  gap: 14px;
}

.cockpit-banner {
  height: 104px;
  border-radius: 4px;
}

.banner-title {
  font-size: 34px;
  line-height: 46px;
  font-weight: 760;
}

.banner-watermark {
  top: 16px;
  right: 88px;
  font-size: 64px;
  line-height: 70px;
  font-weight: 760;
}

.quick-panel {
  min-height: 168px;
  padding: 34px 72px;
  gap: 42px;
}

.quick-action {
  gap: 14px;
  font-size: 18px;
  line-height: 28px;
  font-weight: 650;
}

.quick-icon {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  font-size: 25px;
}

.cockpit-grid {
  gap: 14px;
}

.cockpit-card {
  padding: 16px;
  min-height: 460px;
}

.card-title-row {
  height: 34px;
  margin-bottom: 12px;
}

.card-title-row h2 {
  font-size: 18px;
  line-height: 28px;
  font-weight: 700;
}

.flow-head {
  height: 46px;
  padding: 0 18px;
  font-size: 17px;
  font-weight: 680;
}

.flow-icon {
  width: 32px;
  height: 32px;
  font-size: 17px;
}

.flow-list {
  padding: 14px 42px 0;
}

.flow-item {
  font-size: 16px;
  line-height: 38px;
  font-weight: 560;
}

.warehouse-tabs {
  gap: 10px;
  margin: 8px 12px 20px;
}

.warehouse-tabs .ant-btn {
  height: 38px;
  font-size: 15px;
  font-weight: 620;
}

.brief-grid {
  gap: 14px;
}

.brief-cell {
  min-height: 158px;
  gap: 24px;
}

.brief-cell span {
  font-size: 16px;
  line-height: 24px;
  font-weight: 620;
}

.brief-cell strong {
  font-size: 30px;
  line-height: 40px;
  font-weight: 720;
}

.brief-cell em {
  font-size: 16px;
  font-weight: 620;
}

.inventory-card {
  padding: 14px 18px 20px;
}

.inventory-card .ant-tabs-tab {
  padding: 12px 18px;
  font-size: 16px;
  font-weight: 650;
}

.inventory-body {
  gap: 14px;
}

.warehouse-filter,
.inventory-metric,
.inventory-progress {
  min-height: 138px;
  padding: 20px;
}

.warehouse-filter h3,
.inventory-metric span,
.progress-title span {
  font-size: 16px;
  line-height: 24px;
  font-weight: 620;
}

.inventory-metric strong,
.progress-title strong {
  font-size: 30px;
  line-height: 40px;
  font-weight: 720;
}

.page-title {
  font-size: 30px;
  line-height: 40px;
  font-weight: 720;
}

.filter-panel,
.table-panel,
.form-panel {
  padding: 24px;
}

/* 业务节点页面尺寸：更大、更舒展，字重适中 */
.page-shell {
  gap: 20px;
}

.page-title {
  font-size: 32px;
  line-height: 44px;
  font-weight: 680;
}

.filter-panel,
.table-panel,
.form-panel {
  padding: 28px;
  border-radius: 8px;
}

.filter-panel .ant-form-item-label > label,
.form-panel .ant-form-item-label > label,
.ant-modal .ant-form-item-label > label {
  font-size: 16px;
  line-height: 24px;
  font-weight: 520;
  color: #0f1f3a;
}

.filter-panel .ant-input,
.filter-panel .ant-select-selector,
.ant-modal .ant-input,
.ant-modal .ant-input-number,
.ant-modal .ant-select-selector {
  min-height: 42px;
  font-size: 15px;
}

.filter-panel .ant-form-item,
.ant-modal .ant-form-item {
  margin-bottom: 20px;
}

.ant-btn {
  min-height: 38px;
  padding-inline: 18px;
  font-size: 15px;
  font-weight: 560;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.22s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.22s cubic-bezier(0.16, 1, 0.3, 1), color 0.22s cubic-bezier(0.16, 1, 0.3, 1), transform 0.16s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.22s cubic-bezier(0.16, 1, 0.3, 1);
}

.ant-btn:active:not(:disabled) {
  transform: translateY(1px) scale(0.98);
}

.ant-btn-sm {
  min-height: 32px;
  padding-inline: 12px;
  font-size: 14px;
  font-weight: 540;
}

.ant-table-wrapper .ant-table {
  font-size: 15px;
}

.ant-table-thead > tr > th {
  padding: 17px 16px !important;
  font-size: 15px;
  font-weight: 620 !important;
  vertical-align: middle;
}

.ant-table-tbody > tr > td {
  padding: 18px 16px !important;
  font-size: 15px;
  font-weight: 480;
  vertical-align: middle;
}

.ant-pagination {
  margin-top: 22px !important;
  font-size: 15px;
}

.ant-modal .ant-modal-content {
  border-radius: 8px;
  padding: 28px 32px 24px;
  box-shadow: 0 20px 60px rgba(15, 31, 58, 0.18);
}

.ant-modal .ant-modal-header {
  margin-bottom: 22px;
  padding-bottom: 16px;
  border-bottom: 1px solid #e9eff7;
  text-align: left;
}

.ant-modal .ant-modal-title {
  font-size: 20px;
  line-height: 30px;
  font-weight: 640;
  color: #0f1f3a;
  letter-spacing: 0;
}

.ant-modal .ant-modal-body {
  display: block;
}

.ant-modal .ant-form {
  width: 100%;
}

.ant-modal .ant-modal-footer {
  margin-top: 22px;
  padding-top: 16px;
  border-top: 1px solid #e9eff7;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}

.ant-modal .ant-modal-footer .ant-btn {
  min-width: 96px;
  height: 40px;
  border-radius: 8px;
  font-weight: 560;
}

.ant-modal .ant-modal-footer .ant-btn-primary {
  background: #2f6f9f;
  border-color: #2f6f9f;
  box-shadow: none;
}

.ant-modal .ant-modal-footer .ant-btn-primary:hover {
  background: #285f88;
  border-color: #285f88;
  box-shadow: 0 5px 12px rgba(35, 77, 112, 0.14);
  transform: translateY(-1px);
}

.ant-modal .ant-modal-footer .ant-btn-default:hover {
  border-color: #2f6f9f;
  color: #2f6f9f;
}

/* 左侧树字体最终调整：更大，不要过粗 */
.tree-sider .ant-menu-title-content {
  font-size: inherit !important;
  font-weight: 500 !important;
}

.tree-sider .ant-menu-item,
.tree-sider .ant-menu-submenu-title {
  height: 50px !important;
  line-height: 50px !important;
  margin: 5px 0 !important;
  font-size: 18px !important;
  font-weight: 500 !important;
}

.tree-sider .ant-menu-sub .ant-menu-item,
.tree-sider .ant-menu-sub .ant-menu-submenu-title {
  height: 46px !important;
  line-height: 46px !important;
  margin: 4px 0 !important;
  padding-left: 38px !important;
  font-size: 17px !important;
  font-weight: 500 !important;
}

.tree-sider .ant-menu-item-selected,
.tree-sider .ant-menu-item-selected .ant-menu-title-content {
  font-weight: 560 !important;
}

.tree-img-icon {
  width: 24px;
  height: 24px;
}

.tree-icon {
  width: 22px;
  height: 22px;
  font-size: 19px;
}

/* 首页业务看板 */
.home-page {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.home-top-grid {
  display: grid;
  grid-template-columns: minmax(360px, 1.05fr) minmax(560px, 1.35fr) minmax(300px, 0.7fr);
  gap: 12px;
}

.home-panel {
  background: #fbfffe;
  border: 1px solid #c7f0df;
  border-radius: 10px;
  box-shadow: 0 4px 16px rgba(26, 128, 104, 0.05);
}

.home-panel-title {
  margin: 0;
  padding: 16px 18px 8px;
  font-size: 18px;
  line-height: 28px;
  font-weight: 600;
  color: #0f1f3a;
}

.entry-panel {
  min-height: 260px;
}

.entry-grid {
  padding: 18px 28px 26px;
  display: grid;
  grid-template-columns: repeat(3, minmax(110px, 1fr));
  gap: 22px 26px;
}

.wms-entry-grid {
  grid-template-columns: repeat(3, minmax(120px, 1fr));
}

.entry-item {
  border: 0;
  background: transparent;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  color: #0f1f3a;
  font-size: 17px;
  line-height: 26px;
  font-weight: 520;
  cursor: pointer;
  border-radius: 8px;
  padding: 8px 10px;
}

.entry-item:hover {
  background: #eef9f6;
}

.entry-icon {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 18px;
  box-shadow: 0 8px 18px rgba(30, 140, 120, 0.12);
}

.trend-panel {
  min-height: 260px;
  overflow: hidden;
}

.trend-svg {
  display: block;
  width: 100%;
  height: 230px;
  padding: 0 18px 10px;
}

.trend-grid-line {
  stroke: #dfeeea;
  stroke-dasharray: 4 4;
  stroke-width: 1;
}

.trend-area {
  fill: url('#trendGradient');
}

.trend-svg .trend-area {
  fill: rgba(0, 184, 148, 0.16);
}

.trend-line {
  fill: none;
  stroke: #00b894;
  stroke-width: 3;
  stroke-linejoin: round;
  stroke-linecap: round;
}

.trend-dot {
  fill: #00a98b;
  stroke: #fff;
  stroke-width: 2;
}

.trend-value {
  fill: #0f1f3a;
  font-size: 15px;
  font-weight: 520;
}

.trend-axis-text {
  fill: #42526b;
  font-size: 14px;
  font-weight: 450;
}

.flow-panel {
  min-height: 260px;
  padding-bottom: 12px;
}

.home-flow-block {
  margin: 8px 14px 12px;
  border-radius: 8px;
  background: #f6fbff;
  overflow: hidden;
}

.home-flow-head {
  height: 48px;
  padding: 0 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #0f1f3a;
  font-size: 17px;
  line-height: 26px;
  font-weight: 560;
}

.home-flow-lines {
  padding: 2px 38px 14px;
  color: #1f2f4a;
  font-size: 15px;
  line-height: 30px;
  font-weight: 450;
  max-height: 112px;
  overflow: hidden;
}

.home-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(220px, 1fr));
  gap: 12px;
}

.home-stat-card {
  min-height: 176px;
  background: #fbfffe;
  border: 1px solid #c7f0df;
  border-radius: 10px;
  padding: 28px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-shadow: 0 4px 16px rgba(26, 128, 104, 0.05);
}

.home-stat-card span {
  display: block;
  color: #0f1f3a;
  font-size: 17px;
  line-height: 26px;
  font-weight: 520;
}

.home-stat-card strong {
  display: block;
  margin-top: 26px;
  color: #00a98b;
  font-size: 38px;
  line-height: 48px;
  font-weight: 520;
  letter-spacing: 0;
}

.home-stat-card em {
  font-style: normal;
  font-size: 18px;
  font-weight: 480;
}

.home-stat-card > .anticon {
  color: #20b8b2;
  font-size: 70px;
  opacity: 0.75;
}

.tracking-panel {
  padding: 0 12px 16px;
}

.tracking-panel .ant-tabs-nav {
  margin: 0;
}

.tracking-panel .ant-tabs-tab {
  padding: 16px 14px 12px;
  font-size: 16px;
  font-weight: 560;
}

.tracking-filter-row {
  padding: 16px 8px 18px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  align-items: end;
}

.tracking-filter-row label {
  display: block;
  margin-bottom: 8px;
  color: #0f1f3a;
  font-size: 16px;
  line-height: 24px;
  font-weight: 520;
}

.tag-buttons {
  display: grid;
  grid-template-columns: repeat(3, minmax(90px, 1fr));
  gap: 8px;
}

.tracking-filter-row .ant-input-affix-wrapper,
.tracking-filter-row .ant-select-selector,
.tag-buttons .ant-btn {
  height: 42px !important;
  font-size: 15px;
  font-weight: 480;
}

.tracking-table-title {
  height: 46px;
  padding: 0 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #0f1f3a;
  font-size: 16px;
  line-height: 24px;
  font-weight: 560;
}

.home-progress-row {
  margin-top: 14px;
  padding: 0 8px;
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 16px;
  align-items: center;
  color: #0f1f3a;
  font-size: 16px;
  font-weight: 520;
}

@media (max-width: 1440px) {
  .home-top-grid {
    grid-template-columns: 1fr;
  }

  .home-stat-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .tracking-filter-row {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 860px) {
  .entry-grid,
  .wms-entry-grid,
  .home-stat-grid,
  .tracking-filter-row {
    grid-template-columns: 1fr;
  }
}

/* 仪表盘 */
.dashboard-page {
  display: flex;
  flex-direction: column;
  gap: 18px;
  color: var(--wms-text);
}

.dashboard-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 54px;
  padding: 2px 2px 0;
}

.dashboard-header h1 { margin: 0; color: var(--wms-text); font-size: 26px; line-height: 34px; font-weight: 720; }
.dashboard-subtitle { margin: 5px 0 0; color: var(--wms-text-secondary); font-size: 14px; line-height: 22px; }
.dashboard-header-actions { display: inline-flex; align-items: center; gap: 12px; }
.dashboard-header-actions > span { color: var(--wms-text-secondary); font-size: 12px; }
.dashboard-header-actions .ant-btn { min-width: 76px; }
.dashboard-alert { margin-bottom: -2px; }

.dashboard-section-heading,
.dashboard-panel-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.dashboard-section-heading { min-height: 30px; }
.dashboard-section-heading > div,
.dashboard-panel-heading > div { display: flex; align-items: baseline; gap: 10px; min-width: 0; }
.dashboard-section-heading h2,
.dashboard-panel-heading h2 { margin: 0; color: var(--wms-text); font-size: 17px; line-height: 26px; font-weight: 680; }
.dashboard-section-heading span,
.dashboard-panel-heading span { color: var(--wms-text-secondary); font-size: 12px; white-space: nowrap; }

.dashboard-todo-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 10px;
  overflow: hidden;
  border: 1px solid var(--wms-border);
  border-radius: 7px;
  background: var(--wms-surface);
}

.dashboard-todo-card {
  position: relative;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 16px;
  align-items: center;
  gap: 12px;
  min-height: 104px;
  padding: 14px 16px;
  border: 0;
  border-right: 1px solid var(--wms-border);
  border-radius: 0;
  background: transparent;
  color: var(--wms-text);
  text-align: left;
  cursor: pointer;
  transition: background .18s ease, color .18s ease;
}

.dashboard-todo-card:last-child { border-right: 0; }
.dashboard-todo-card::before { position: absolute; inset: 0 auto 0 0; width: 3px; background: transparent; content: ''; }
.dashboard-todo-card.is-green::before { background: #52a66b; }
.dashboard-todo-card.is-blue::before { background: #4b88d9; }
.dashboard-todo-card.is-orange::before { background: #d99637; }
.dashboard-todo-card.is-red::before { background: #d2655a; }
.dashboard-todo-card:hover { background: var(--wms-surface-soft); }
.dashboard-todo-icon { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 7px; font-size: 18px; }
.dashboard-todo-card.is-green .dashboard-todo-icon { color: #15803d; background: #eaf8ef; }
.dashboard-todo-card.is-blue .dashboard-todo-icon { color: #1677ff; background: #eaf3ff; }
.dashboard-todo-card.is-orange .dashboard-todo-icon { color: #d97706; background: #fff5df; }
.dashboard-todo-card.is-red .dashboard-todo-icon { color: #d4380d; background: #fff0ed; }
.dashboard-todo-copy { display: grid; min-width: 0; gap: 2px; }
.dashboard-todo-copy small { color: var(--wms-text-secondary); font-size: 13px; }
.dashboard-todo-copy strong { color: var(--wms-text); font-size: 26px; line-height: 30px; font-variant-numeric: tabular-nums; }
.dashboard-todo-copy em { overflow: hidden; color: var(--wms-text-secondary); font-size: 11px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-todo-arrow,
.dashboard-task-arrow,
.dashboard-feed-item > .anticon { color: #9aa7b7; font-size: 12px; }

.dashboard-visual-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr); gap: 14px; }
.dashboard-visual-panel { min-width: 0; padding: 18px; border: 1px solid var(--wms-border); border-top: 3px solid #91caff; border-radius: 7px; background: var(--wms-surface); }
.dashboard-operation-bars { display: grid; gap: 18px; padding: 16px 4px 4px; }
.dashboard-operation-bar { display: grid; gap: 5px; }
.dashboard-operation-bar > div { display: flex; align-items: center; justify-content: space-between; color: var(--wms-text); font-size: 13px; }
.dashboard-operation-bar strong { font-size: 18px; font-variant-numeric: tabular-nums; }
.dashboard-operation-bar .ant-progress { margin: 0; }
.dashboard-operation-bar small { color: var(--wms-text-secondary); font-size: 11px; }
.dashboard-inventory-total { display: flex; align-items: baseline; gap: 7px; padding: 16px 4px 10px; }
.dashboard-inventory-total strong { color: var(--wms-text); font-size: 30px; line-height: 34px; font-variant-numeric: tabular-nums; }
.dashboard-inventory-total span { color: var(--wms-text-secondary); font-size: 12px; }
.dashboard-inventory-stack { display: flex; height: 12px; gap: 2px; overflow: hidden; border-radius: 3px; background: var(--wms-surface-soft); }
.dashboard-inventory-stack span { min-width: 0; transition: width .25s ease; }
.dashboard-inventory-legend { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px 20px; padding: 13px 4px 0; }
.dashboard-inventory-legend > div { display: grid; grid-template-columns: 8px minmax(0, 1fr) auto; align-items: center; gap: 6px; color: var(--wms-text-secondary); font-size: 11px; }
.dashboard-inventory-legend i { width: 8px; height: 8px; border-radius: 2px; }
.dashboard-inventory-legend strong { color: var(--wms-text); font-size: 12px; font-variant-numeric: tabular-nums; }
.dashboard-workspace-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(352px, .8fr); gap: 14px; align-items: stretch; }
.dashboard-panel { min-width: 0; padding: 18px; border: 1px solid var(--wms-border); border-radius: 7px; background: var(--wms-surface); }
.dashboard-task-panel,
.dashboard-warehouse-panel { min-height: 350px; }
.dashboard-panel-heading { min-height: 30px; padding-bottom: 12px; border-bottom: 1px solid var(--wms-border); }
.dashboard-panel-heading .ant-btn-link { padding-inline: 0; font-size: 13px; }
.dashboard-task-list { display: grid; }
.dashboard-task-item { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto 14px; align-items: center; gap: 10px; min-height: 60px; padding: 9px 2px; border: 0; border-bottom: 1px solid color-mix(in srgb, var(--wms-border) 72%, transparent); background: transparent; color: var(--wms-text); text-align: left; cursor: pointer; }
.dashboard-task-item:last-child { border-bottom: 0; }
.dashboard-task-item:hover .dashboard-task-main strong { color: var(--wms-accent-strong); }
.dashboard-task-mark,
.dashboard-feed-dot { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 6px; font-size: 14px; }
.dashboard-task-mark.is-inbound,
.dashboard-feed-dot.is-inbound { color: #15803d; background: #eaf8ef; }
.dashboard-task-mark.is-outbound,
.dashboard-feed-dot.is-outbound { color: #1677ff; background: #eaf3ff; }
.dashboard-task-mark.is-return,
.dashboard-feed-dot.is-return { color: #ad6800; background: #fff7e6; }
.dashboard-task-main { display: grid; min-width: 0; gap: 1px; }
.dashboard-task-main strong { overflow: hidden; font-size: 14px; font-weight: 630; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-task-main small { color: var(--wms-text-secondary); font-size: 12px; }
.dashboard-task-main em { color: var(--wms-text-secondary); font-size: 11px; font-style: normal; }
.dashboard-task-item .ant-tag { margin: 0; }

.dashboard-warehouse-stats { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0; margin-top: 4px; border-bottom: 1px solid var(--wms-border); }
.dashboard-warehouse-stats > div { display: grid; grid-template-columns: 1fr auto; align-items: baseline; gap: 4px; padding: 11px 4px 11px 0; background: var(--wms-surface); }
.dashboard-warehouse-stats > div:nth-child(even) { padding-left: 14px; border-left: 1px solid var(--wms-border); }
.dashboard-warehouse-stats > div:nth-child(n + 3) { border-top: 1px solid var(--wms-border); }
.dashboard-warehouse-stats small { grid-column: 1 / -1; color: var(--wms-text-secondary); font-size: 11px; }
.dashboard-warehouse-stats strong { color: var(--wms-text); font-size: 20px; line-height: 26px; font-variant-numeric: tabular-nums; }
.dashboard-warehouse-stats strong.is-danger { color: var(--wms-danger); }
.dashboard-warehouse-stats span { color: var(--wms-text-secondary); font-size: 11px; }
.dashboard-warehouse-usage { margin-top: 17px; }
.dashboard-warehouse-usage > div { display: flex; justify-content: space-between; margin-bottom: 7px; color: var(--wms-text-secondary); font-size: 12px; }
.dashboard-warehouse-usage strong { color: var(--wms-text); font-size: 18px; font-variant-numeric: tabular-nums; }
.dashboard-warehouse-usage .ant-progress { margin: 0; }
.dashboard-warehouse-usage small { display: block; margin-top: 4px; color: var(--wms-text-secondary); font-size: 11px; text-align: right; }
.dashboard-warehouse-links { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 15px; }
.dashboard-warehouse-links button { display: flex; align-items: center; justify-content: space-between; min-height: 36px; padding: 0 10px; border: 1px solid var(--wms-border); border-radius: 5px; background: var(--wms-surface-soft); color: var(--wms-text); font-size: 12px; cursor: pointer; }
.dashboard-warehouse-links button:hover { border-color: var(--wms-accent); color: var(--wms-accent-strong); }
.dashboard-warehouse-links button span { display: inline-flex; align-items: center; gap: 6px; }

.dashboard-feed-panel { padding-bottom: 4px; }
.dashboard-feed-list { display: grid; grid-template-columns: 1fr; }
.dashboard-feed-item { display: grid; grid-template-columns: 28px minmax(0, 1fr) auto 128px 12px; align-items: center; gap: 10px; min-width: 0; min-height: 48px; padding: 6px 2px; border: 0; border-bottom: 1px solid color-mix(in srgb, var(--wms-border) 72%, transparent); background: transparent; color: var(--wms-text); text-align: left; cursor: pointer; }
.dashboard-feed-item:hover .dashboard-feed-copy strong { color: var(--wms-accent-strong); }
.dashboard-feed-copy { display: grid; min-width: 0; gap: 2px; }
.dashboard-feed-copy strong { overflow: hidden; font-size: 12px; font-weight: 580; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-feed-copy small { overflow: hidden; color: var(--wms-text-secondary); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-feed-item .ant-tag { margin: 0; font-size: 11px; }
.dashboard-feed-item time { color: var(--wms-text-secondary); font-size: 11px; text-align: right; }
.dashboard-empty { display: grid; justify-items: center; gap: 5px; padding: 54px 16px; color: var(--wms-text-secondary); text-align: center; }
.dashboard-empty > .anticon { margin-bottom: 3px; color: var(--wms-success); font-size: 28px; }
.dashboard-empty strong { color: var(--wms-text); font-size: 14px; }
.dashboard-empty span { font-size: 12px; }

@media (max-width: 1100px) {
  .dashboard-todo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-visual-grid { grid-template-columns: 1fr; }
  .dashboard-workspace-grid { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
  .dashboard-header { align-items: flex-start; flex-direction: column; }
  .dashboard-header-actions { align-self: flex-start; }
  .dashboard-todo-grid,
  .dashboard-feed-list { grid-template-columns: 1fr; }
  .dashboard-inventory-legend { gap: 8px; }
  .dashboard-todo-card { min-height: 98px; border-right: 0; border-bottom: 1px solid var(--wms-border); }
  .dashboard-todo-card:nth-last-child(-n + 2) { border-bottom: 0; }
  .dashboard-feed-item { grid-template-columns: 28px minmax(0, 1fr) auto 12px; }
  .dashboard-feed-item time { display: none; }
  .dashboard-warehouse-links { grid-template-columns: 1fr; }
}

.dashboard-cockpit { --cockpit-bg:#0b1726; --cockpit-panel:#101f31; --cockpit-line:#203a55; --cockpit-text:#e4f0ff; --cockpit-muted:#7892ac; gap:14px; min-height:100%; padding:20px; border:1px solid #203a55; border-radius:8px; background:radial-gradient(circle at 80% -20%,rgba(39,111,141,.17),transparent 36%),var(--cockpit-bg); color:var(--cockpit-text); }
.cockpit-header { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; padding-bottom:14px; border-bottom:1px solid var(--cockpit-line); }.cockpit-brand { display:grid; gap:3px; }.cockpit-kicker,.cockpit-panel-code { color:#5f9db4; font:600 10px/16px ui-monospace,SFMono-Regular,Consolas,monospace; letter-spacing:.08em; }.cockpit-brand h1 { margin:0; color:var(--cockpit-text); font-size:27px; font-weight:700; letter-spacing:.02em; }.cockpit-clock { display:inline-flex; align-items:center; gap:6px; color:var(--cockpit-muted); font-size:11px; }.cockpit-header-tools { display:flex; align-items:center; gap:8px; }.cockpit-header-tools .ant-btn { border-color:var(--cockpit-line); background:var(--cockpit-panel); color:#a9c2da; }.cockpit-header-tools .ant-btn:hover { border-color:#42d6d2; color:#42d6d2; }.cockpit-select { min-width:150px; }.cockpit-select .ant-select-selector { border-color:var(--cockpit-line)!important; background:var(--cockpit-panel)!important; color:var(--cockpit-text)!important; }.cockpit-live { display:inline-flex; align-items:center; gap:7px; padding:0 8px; color:#65d391; font-size:11px; white-space:nowrap; }.cockpit-live i,.map-footer .is-live { width:7px; height:7px; border-radius:50%; background:#65d391; box-shadow:0 0 0 3px rgba(101,211,145,.12); }.cockpit-alert { margin:0; }
.cockpit-kpi-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; }.cockpit-kpi { display:grid; grid-template-columns:34px minmax(0,1fr) 12px; align-items:center; gap:10px; min-width:0; padding:13px 14px; border:1px solid var(--cockpit-line); border-radius:5px; background:var(--cockpit-panel); color:var(--cockpit-text); text-align:left; cursor:pointer; transition:border-color .2s ease,transform .2s ease; }.cockpit-kpi:hover { border-color:#3e718c; transform:translateY(-1px); }.cockpit-kpi-icon { display:grid; place-items:center; width:32px; height:32px; border:1px solid currentColor; border-radius:4px; font-size:16px; }.cockpit-kpi>span:nth-child(2) { display:grid; gap:2px; min-width:0; }.cockpit-kpi small { color:var(--cockpit-muted); font-size:11px; }.cockpit-kpi strong { font:700 24px/27px ui-monospace,SFMono-Regular,Consolas,monospace; }.cockpit-kpi strong em { margin-left:4px; color:var(--cockpit-muted); font:11px/1 sans-serif; font-style:normal; }.cockpit-kpi i { overflow:hidden; color:var(--cockpit-muted); font-size:10px; font-style:normal; text-overflow:ellipsis; white-space:nowrap; }.cockpit-kpi>.anticon { color:#577490; font-size:11px; }.cockpit-kpi.is-cyan { color:#42d6d2; }.cockpit-kpi.is-green { color:#65d391; }.cockpit-kpi.is-blue { color:#4b9cff; }.cockpit-kpi.is-amber { color:#f4b454; }.cockpit-kpi.is-red { color:#ef6b73; }
.cockpit-main-grid,.cockpit-chart-grid,.cockpit-bottom-grid { display:grid; gap:10px; }.cockpit-main-grid { grid-template-columns:minmax(0,1.65fr) minmax(300px,.8fr); }.cockpit-chart-grid { grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr); }.cockpit-bottom-grid { grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); }.cockpit-panel { min-width:0; overflow:hidden; border:1px solid var(--cockpit-line); border-radius:5px; background:var(--cockpit-panel); }.cockpit-panel-head { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:48px; padding:10px 14px; border-bottom:1px solid var(--cockpit-line); }.cockpit-panel-head h2 { margin:1px 0 0; color:var(--cockpit-text); font-size:16px; font-weight:650; }.cockpit-panel-head .ant-btn-link { padding-inline:0; color:#72b8ca; font-size:11px; }.cockpit-panel-head .ant-tag { margin:0; font-size:10px; }
.warehouse-map { position:relative; min-height:340px; margin:12px; overflow:hidden; border:1px solid #1c3a55; background:linear-gradient(90deg,rgba(47,114,143,.07) 1px,transparent 1px),linear-gradient(rgba(47,114,143,.07) 1px,transparent 1px),#0d1b2b; background-size:28px 28px; }.warehouse-map:before { position:absolute; inset:14% 12%; border:1px solid #214763; background:rgba(32,74,96,.14); content:''; transform:skewY(-2deg); }.warehouse-zone { position:absolute; display:grid; grid-template-columns:10px 1fr; grid-template-rows:auto auto auto; gap:2px 7px; width:130px; min-height:72px; padding:9px 10px; border:1px solid #2a5570; border-radius:3px; background:rgba(16,40,61,.92); color:var(--cockpit-text); text-align:left; cursor:pointer; transition:border-color .2s ease,background .2s ease; }.warehouse-zone:hover { border-color:#42d6d2; background:#153550; }.warehouse-zone>span { grid-row:1/4; width:7px; height:7px; margin-top:3px; border-radius:50%; box-shadow:0 0 0 4px rgba(66,214,210,.1); }.warehouse-zone>small { color:#8eabc3; font-size:10px; }.warehouse-zone>strong { font:700 20px/21px ui-monospace,SFMono-Regular,Consolas,monospace; }.warehouse-zone>em { color:#63839d; font-size:9px; font-style:normal; }.warehouse-zone>i { position:absolute; top:0; right:0; width:3px; height:100%; opacity:.8; }.zone-receiving { top:13%; left:8%; }.zone-quality { top:13%; left:42%; }.zone-storage { top:37%; left:26%; width:170px; }.zone-picking { top:66%; left:13%; }.zone-shipping { top:66%; right:12%; }.zone-exception { top:37%; right:10%; }.map-route { position:absolute; z-index:1; height:1px; border-top:1px dashed #39768b; opacity:.7; transform-origin:left; }.route-a { top:39%; left:25%; width:20%; transform:rotate(24deg); }.route-b { top:62%; left:48%; width:22%; transform:rotate(18deg); }.route-c { top:46%; left:52%; width:19%; transform:rotate(-20deg); }.map-compass { position:absolute; top:14px; right:14px; display:grid; place-items:center; width:32px; height:32px; border:1px solid #28516a; color:#6d9ab1; font:11px ui-monospace,monospace; }.map-compass b { color:#42d6d2; font-size:15px; }.map-footer { position:absolute; right:12px; bottom:10px; left:12px; display:flex; justify-content:space-between; color:#68859d; font-size:10px; }.map-footer span { display:inline-flex; align-items:center; gap:5px; }.map-footer .is-live { display:inline-block; }
.exception-list { min-height:190px; padding:5px 12px; }.exception-item { display:grid; grid-template-columns:30px minmax(0,1fr) auto 12px; align-items:center; gap:9px; width:100%; padding:10px 2px; border:0; border-bottom:1px solid #1c334b; background:transparent; color:var(--cockpit-text); text-align:left; cursor:pointer; }.exception-item:hover strong { color:#42d6d2; }.exception-icon { display:grid; place-items:center; width:27px; height:27px; border-radius:3px; background:rgba(239,107,115,.12); color:#ef6b73; }.exception-item>span:nth-child(2) { display:grid; gap:2px; min-width:0; }.exception-item strong { font-size:12px; }.exception-item small { overflow:hidden; color:var(--cockpit-muted); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }.exception-item b { color:#ef6b73; font:700 18px ui-monospace,monospace; }.exception-item b em { margin-left:2px; font:10px sans-serif; font-style:normal; }.exception-item>.anticon { color:#577490; font-size:11px; }.exception-capacity { margin:0 14px 14px; padding-top:13px; border-top:1px solid var(--cockpit-line); }.exception-capacity>div { display:flex; justify-content:space-between; color:var(--cockpit-muted); font-size:11px; }.exception-capacity b { color:var(--cockpit-text); font:700 18px ui-monospace,monospace; }.exception-capacity .ant-progress { margin:7px 0 0; }.exception-capacity small { display:block; margin-top:4px; color:var(--cockpit-muted); font-size:10px; text-align:right; }.cockpit-empty { display:grid; justify-items:center; gap:6px; padding:52px 12px; color:var(--cockpit-muted); text-align:center; }.cockpit-empty strong { color:var(--cockpit-text); font-size:13px; }.cockpit-empty small { font-size:10px; }.empty-check { display:grid; place-items:center; width:28px; height:28px; border:1px solid #65d391; border-radius:50%; color:#65d391; }
.chart-panel { padding-bottom:4px; }.inventory-chart-body { display:flex; align-items:center; min-height:190px; padding:0 8px; }.inventory-legend { display:grid; flex:1; gap:10px; padding-right:12px; }.inventory-legend>div { display:grid; grid-template-columns:7px 1fr auto; align-items:center; gap:7px; color:var(--cockpit-muted); font-size:11px; }.inventory-legend i { width:7px; height:7px; border-radius:1px; }.inventory-legend b { color:var(--cockpit-text); font:600 12px ui-monospace,monospace; }.cockpit-feed { padding:4px 12px; }.cockpit-feed-item { display:grid; grid-template-columns:28px minmax(0,1fr) auto 115px 10px; align-items:center; gap:8px; width:100%; min-height:45px; padding:5px 2px; border:0; border-bottom:1px solid #1c334b; background:transparent; color:var(--cockpit-text); text-align:left; cursor:pointer; }.cockpit-feed-item:hover strong { color:#42d6d2; }.feed-mark { display:grid; place-items:center; width:27px; height:27px; border-radius:3px; font-size:13px; }.feed-mark.is-inbound { background:rgba(101,211,145,.12); color:#65d391; }.feed-mark.is-outbound { background:rgba(75,156,255,.12); color:#4b9cff; }.feed-mark.is-return { background:rgba(244,180,84,.12); color:#f4b454; }.cockpit-feed-item>span:nth-child(2) { display:grid; gap:1px; min-width:0; }.cockpit-feed-item strong { overflow:hidden; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }.cockpit-feed-item small,.cockpit-feed-item time { color:var(--cockpit-muted); font-size:10px; }.cockpit-feed-item time { text-align:right; }.cockpit-feed-item .ant-tag { margin:0; font-size:10px; }.workload-row { padding:13px 16px 0; }.workload-row>div { display:flex; justify-content:space-between; color:var(--cockpit-text); font-size:12px; }.workload-row>div span { display:inline-flex; align-items:center; gap:5px; }.workload-row b { font:700 16px ui-monospace,monospace; }.workload-row .ant-progress { margin:7px 0 2px; }.workload-row small { color:var(--cockpit-muted); font-size:10px; }.workload-stat { display:grid; grid-template-columns:repeat(2,1fr); gap:0; margin:15px 16px 16px; border-top:1px solid var(--cockpit-line); }.workload-stat span { display:flex; justify-content:space-between; padding:10px 4px 0 0; color:var(--cockpit-muted); font-size:10px; }.workload-stat span:nth-child(even) { padding-left:10px; border-left:1px solid var(--cockpit-line); }.workload-stat b { color:var(--cockpit-text); font:600 13px ui-monospace,monospace; }
@media (max-width:1100px) { .cockpit-kpi-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.cockpit-main-grid,.cockpit-chart-grid,.cockpit-bottom-grid { grid-template-columns:1fr; } }
@media (max-width:700px) { .dashboard-cockpit { padding:12px; }.cockpit-header { align-items:flex-start; flex-direction:column; }.cockpit-header-tools { width:100%; flex-wrap:wrap; }.cockpit-select { flex:1; min-width:130px; }.cockpit-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.cockpit-kpi { padding:10px; }.cockpit-kpi strong { font-size:20px; }.warehouse-map { min-height:430px; }.warehouse-zone { width:114px; }.zone-receiving { left:4%; }.zone-quality { left:auto; right:4%; }.zone-storage { left:50%; transform:translateX(-50%); }.zone-picking { left:4%; }.zone-shipping { right:4%; }.zone-exception { right:4%; }.map-footer { flex-wrap:wrap; gap:5px 12px; }.cockpit-feed-item { grid-template-columns:28px minmax(0,1fr) auto 10px; }.cockpit-feed-item time { display:none; } }

/* 智慧仓储驾驶舱视觉修订 */
.app-header.cockpit-header { align-items: center; gap: 0; padding: 0 18px; border-bottom: 1px solid #e2e8f2; }
.dashboard-cockpit { gap: 16px; padding: 24px; border: 0; border-radius: 0; background: linear-gradient(135deg, #0b1726 0%, #0d1b2b 45%, #101c2c 100%); }
.dashboard-cockpit:fullscreen { width: 100vw; height: 100dvh; overflow: auto; padding: 28px 38px; background: linear-gradient(135deg, #0b1726 0%, #0d1b2b 45%, #101c2c 100%); }
.dashboard-cockpit .dashboard-cockpit-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 72px; padding: 4px 0 18px; border-bottom: 1px solid rgba(105, 157, 190, .22); }
.dashboard-cockpit .cockpit-brand { display: grid; gap: 4px; height: auto; padding: 0; color: var(--cockpit-text); overflow: visible; white-space: normal; }
.dashboard-cockpit .cockpit-brand h1 { font-size: 28px; font-weight: 720; letter-spacing: 0; }
.dashboard-cockpit .cockpit-kicker { color: #67bac8; font-size: 10px; }
.dashboard-cockpit .cockpit-header-tools { padding: 5px; border: 1px solid rgba(105, 157, 190, .2); border-radius: 8px; background: rgba(20, 40, 61, .6); }
.dashboard-cockpit .cockpit-kpi-grid { gap: 12px; }
.dashboard-cockpit .cockpit-kpi { min-height: 100px; padding: 15px 16px; border-color: rgba(105, 157, 190, .22); border-radius: 8px; background: linear-gradient(135deg, rgba(25, 49, 74, .95), rgba(16, 32, 49, .95)); }
.dashboard-cockpit .cockpit-kpi:hover { border-color: rgba(66, 214, 210, .7); background: linear-gradient(135deg, rgba(30, 62, 85, .96), rgba(17, 40, 58, .96)); }
.dashboard-cockpit .cockpit-kpi strong { color: #edf7ff; }
.dashboard-cockpit .cockpit-main-grid, .dashboard-cockpit .cockpit-chart-grid, .dashboard-cockpit .cockpit-bottom-grid { gap: 12px; }
.dashboard-cockpit .cockpit-panel { border-color: rgba(105, 157, 190, .2); border-radius: 8px; background: linear-gradient(145deg, rgba(20, 40, 61, .98), rgba(14, 30, 47, .98)); box-shadow: inset 0 1px 0 rgba(153, 207, 232, .03); }
.dashboard-cockpit .cockpit-panel-head { min-height: 58px; padding: 12px 16px; border-bottom-color: rgba(105, 157, 190, .18); }
.dashboard-cockpit .cockpit-panel-code { color: #66abbc; }.dashboard-cockpit .cockpit-panel-head h2 { font-size: 17px; letter-spacing: 0; }
.dashboard-cockpit .warehouse-map { min-height: 364px; margin: 14px; border-color: rgba(70, 137, 168, .28); border-radius: 6px; background: linear-gradient(90deg, rgba(55, 139, 165, .055) 1px, transparent 1px), linear-gradient(rgba(55, 139, 165, .055) 1px, transparent 1px), linear-gradient(135deg, #0c1b2b, #10243a); background-size: 34px 34px, 34px 34px, auto; }
.dashboard-cockpit .warehouse-map:before { inset: 13% 11%; border-color: rgba(76, 153, 184, .32); background: linear-gradient(120deg, rgba(56, 126, 151, .11), rgba(20, 55, 83, .04)); }
.dashboard-cockpit .warehouse-zone { z-index: 2; width: 142px; min-height: 78px; padding: 11px 12px; border-color: rgba(95, 167, 197, .42); border-radius: 6px; background: linear-gradient(140deg, rgba(29, 65, 88, .98), rgba(18, 42, 63, .98)); box-shadow: 0 8px 20px rgba(1, 9, 18, .18); }
.dashboard-cockpit .warehouse-zone:hover { border-color: #59d8d0; background: linear-gradient(140deg, rgba(34, 82, 105, .99), rgba(18, 53, 76, .99)); }.dashboard-cockpit .zone-storage { width: 182px; }.dashboard-cockpit .warehouse-zone>strong { color: #edf7ff; font-size: 21px; }.dashboard-cockpit .warehouse-zone>small { color: #a9c9dc; }.dashboard-cockpit .warehouse-zone>em { color: #759bb5; }.dashboard-cockpit .map-footer { right: 16px; bottom: 12px; left: 16px; }.dashboard-cockpit .map-compass { border-radius: 50%; background: rgba(12, 30, 46, .75); }
.dashboard-cockpit .exception-list { padding: 7px 16px; }.dashboard-cockpit .exception-item { padding: 12px 0; border-bottom-color: rgba(105, 157, 190, .17); }.dashboard-cockpit .exception-capacity { margin: 0 16px 16px; border-top-color: rgba(105, 157, 190, .18); }.dashboard-cockpit .chart-panel { min-height: 286px; }.dashboard-cockpit .cockpit-feed { padding: 5px 16px; }.dashboard-cockpit .cockpit-feed-item { border-bottom-color: rgba(105, 157, 190, .16); }.dashboard-cockpit .workload-row { padding: 15px 18px 0; }.dashboard-cockpit .workload-stat { margin: 17px 18px 18px; }
@media (max-width: 700px) { .dashboard-cockpit .dashboard-cockpit-header { align-items: flex-start; flex-direction: column; }.dashboard-cockpit .cockpit-header-tools { width: 100%; }.dashboard-cockpit:fullscreen { padding: 16px; } }

/* 仪表盘：运营工作台，颜色由页面主题变量统一驱动 */
.dashboard-cockpit {
  --dashboard-bg: #f5f7fa;
  --dashboard-panel: #ffffff;
  --dashboard-panel-soft: #f8fafc;
  --dashboard-line: #e2e8f0;
  --dashboard-text: #172033;
  --dashboard-muted: #68758a;
  --dashboard-accent: #1677ff;
  --dashboard-map: #f2f6fa;
  --dashboard-zone: #ffffff;
  --dashboard-zone-line: #cbd8e6;
  gap: 18px;
  padding: 22px;
  border: 1px solid var(--dashboard-line);
  border-radius: 8px;
  background: var(--dashboard-bg);
  color: var(--dashboard-text);
}
[data-theme='dark'] .dashboard-cockpit {
  --dashboard-bg: #111821;
  --dashboard-panel: #17212d;
  --dashboard-panel-soft: #1c2735;
  --dashboard-line: #2b3a4d;
  --dashboard-text: #e7edf5;
  --dashboard-muted: #9aa9bb;
  --dashboard-accent: #69a8e8;
  --dashboard-map: #141f2b;
  --dashboard-zone: #1b2a3a;
  --dashboard-zone-line: #39506a;
}
.dashboard-cockpit:fullscreen { width: 100vw; height: 100dvh; overflow: auto; padding: 26px 34px; border: 0; border-radius: 0; background: var(--dashboard-bg); }
.dashboard-cockpit .dashboard-cockpit-header { min-height: 64px; padding: 0 0 16px; border-bottom-color: var(--dashboard-line); }
.dashboard-cockpit .cockpit-brand { color: var(--dashboard-text); }
.dashboard-cockpit .cockpit-brand h1 { color: var(--dashboard-text); font-size: 26px; font-weight: 700; }
.dashboard-cockpit .cockpit-kicker, .dashboard-cockpit .cockpit-panel-code { color: var(--dashboard-accent); font-size: 10px; letter-spacing: .06em; }
.dashboard-cockpit .cockpit-clock { color: var(--dashboard-muted); font-size: 12px; }
.dashboard-cockpit .cockpit-header-tools { padding: 0; border: 0; border-radius: 0; background: transparent; }
.dashboard-cockpit .cockpit-header-tools .ant-btn { border-color: var(--dashboard-line); background: var(--dashboard-panel); color: var(--dashboard-muted); }
.dashboard-cockpit .cockpit-header-tools .ant-btn:hover { border-color: var(--dashboard-accent); color: var(--dashboard-accent); }
.dashboard-cockpit .cockpit-select .ant-select-selector { border-color: var(--dashboard-line) !important; background: var(--dashboard-panel) !important; color: var(--dashboard-text) !important; }
.dashboard-cockpit .cockpit-live { color: #159c57; font-size: 12px; }
.dashboard-cockpit .cockpit-live i, .dashboard-cockpit .map-footer .is-live { background: #16a34a; box-shadow: 0 0 0 3px rgba(22, 163, 74, .12); }
.dashboard-cockpit .cockpit-kpi-grid { gap: 12px; }
.dashboard-cockpit .cockpit-kpi { min-height: 104px; padding: 16px; border-color: var(--dashboard-line); border-radius: 7px; background: var(--dashboard-panel); color: var(--dashboard-text); box-shadow: none; }
.dashboard-cockpit .cockpit-kpi:hover { border-color: var(--dashboard-accent); background: var(--dashboard-panel); transform: translateY(-2px); }
.dashboard-cockpit .cockpit-kpi small, .dashboard-cockpit .cockpit-kpi i { color: var(--dashboard-muted); }
.dashboard-cockpit .cockpit-kpi strong { color: var(--dashboard-text); font-family: inherit; font-size: 26px; line-height: 30px; }
.dashboard-cockpit .cockpit-kpi strong em { color: var(--dashboard-muted); }
.dashboard-cockpit .cockpit-kpi > .anticon { color: var(--dashboard-muted); }
.dashboard-cockpit .cockpit-kpi.is-cyan { color: #0f9f9b; }.dashboard-cockpit .cockpit-kpi.is-green { color: #16a34a; }.dashboard-cockpit .cockpit-kpi.is-blue { color: #1677ff; }.dashboard-cockpit .cockpit-kpi.is-amber { color: #d97706; }.dashboard-cockpit .cockpit-kpi.is-red { color: #dc3f45; }
[data-theme='dark'] .dashboard-cockpit .cockpit-kpi.is-cyan { color: #4ed4ce; } [data-theme='dark'] .dashboard-cockpit .cockpit-kpi.is-green { color: #5ed39b; } [data-theme='dark'] .dashboard-cockpit .cockpit-kpi.is-blue { color: #69a8e8; } [data-theme='dark'] .dashboard-cockpit .cockpit-kpi.is-amber { color: #e9b45c; } [data-theme='dark'] .dashboard-cockpit .cockpit-kpi.is-red { color: #ee7880; }
.dashboard-cockpit .cockpit-main-grid, .dashboard-cockpit .cockpit-chart-grid, .dashboard-cockpit .cockpit-bottom-grid { gap: 14px; }
.dashboard-cockpit .cockpit-panel { border-color: var(--dashboard-line); border-radius: 8px; background: var(--dashboard-panel); box-shadow: none; }
.dashboard-cockpit .cockpit-panel-head { min-height: 58px; padding: 12px 16px; border-bottom-color: var(--dashboard-line); }
.dashboard-cockpit .cockpit-panel-head h2 { color: var(--dashboard-text); font-size: 16px; font-weight: 680; }
.dashboard-cockpit .cockpit-panel-head .ant-btn-link { color: var(--dashboard-accent); font-size: 12px; }
.dashboard-cockpit .warehouse-map { min-height: 356px; margin: 14px; border-color: var(--dashboard-line); border-radius: 6px; background: var(--dashboard-map); }
.dashboard-cockpit .warehouse-map::before { border-color: var(--dashboard-zone-line); background: transparent; transform: none; }
.dashboard-cockpit .warehouse-map::after { position: absolute; inset: 26% 18% 24%; border-top: 1px dashed var(--dashboard-zone-line); border-bottom: 1px dashed var(--dashboard-zone-line); content: ''; opacity: .75; }
.dashboard-cockpit .warehouse-zone { z-index: 2; width: 142px; min-height: 78px; padding: 11px 12px; border-color: var(--dashboard-zone-line); border-radius: 6px; background: var(--dashboard-zone); color: var(--dashboard-text); box-shadow: 0 5px 14px rgba(15, 35, 60, .06); }
.dashboard-cockpit .zone-storage { width: 182px; }
.dashboard-cockpit .warehouse-zone:hover { border-color: var(--dashboard-accent); background: var(--dashboard-panel); }
.dashboard-cockpit .warehouse-zone > small, .dashboard-cockpit .warehouse-zone > em, .dashboard-cockpit .map-footer { color: var(--dashboard-muted); }
.dashboard-cockpit .warehouse-zone > strong { color: var(--dashboard-text); font-family: inherit; font-size: 21px; }
.dashboard-cockpit .map-route { border-top-color: var(--dashboard-zone-line); }.dashboard-cockpit .map-compass { border-color: var(--dashboard-zone-line); background: var(--dashboard-panel); color: var(--dashboard-muted); }.dashboard-cockpit .map-compass b { color: var(--dashboard-accent); }
.dashboard-cockpit .exception-list { padding: 7px 16px; }.dashboard-cockpit .exception-item { padding: 12px 0; border-bottom-color: var(--dashboard-line); color: var(--dashboard-text); }.dashboard-cockpit .exception-item:hover strong { color: var(--dashboard-accent); }.dashboard-cockpit .exception-item small, .dashboard-cockpit .exception-capacity > div, .dashboard-cockpit .exception-capacity small { color: var(--dashboard-muted); }.dashboard-cockpit .exception-item > .anticon { color: var(--dashboard-muted); }.dashboard-cockpit .exception-capacity { margin: 0 16px 16px; border-top-color: var(--dashboard-line); }.dashboard-cockpit .exception-capacity b, .dashboard-cockpit .cockpit-empty strong { color: var(--dashboard-text); }.dashboard-cockpit .cockpit-empty { color: var(--dashboard-muted); }.dashboard-cockpit .empty-check { border-color: #16a34a; color: #16a34a; }
.dashboard-cockpit .chart-panel { min-height: 286px; }.dashboard-cockpit .inventory-chart-body { min-height: 208px; }.dashboard-cockpit .inventory-legend > div { color: var(--dashboard-muted); }.dashboard-cockpit .inventory-legend b { color: var(--dashboard-text); font-family: inherit; }.dashboard-cockpit .cockpit-feed { padding: 5px 16px; }.dashboard-cockpit .cockpit-feed-item { border-bottom-color: var(--dashboard-line); color: var(--dashboard-text); }.dashboard-cockpit .cockpit-feed-item:hover strong { color: var(--dashboard-accent); }.dashboard-cockpit .cockpit-feed-item small, .dashboard-cockpit .cockpit-feed-item time, .dashboard-cockpit .workload-row small { color: var(--dashboard-muted); }.dashboard-cockpit .workload-row > div { color: var(--dashboard-text); }.dashboard-cockpit .workload-stat { border-top-color: var(--dashboard-line); }.dashboard-cockpit .workload-stat span { color: var(--dashboard-muted); }.dashboard-cockpit .workload-stat span:nth-child(even) { border-left-color: var(--dashboard-line); }.dashboard-cockpit .workload-stat b { color: var(--dashboard-text); font-family: inherit; }
@media (max-width: 700px) { .dashboard-cockpit { padding: 14px; gap: 14px; }.dashboard-cockpit:fullscreen { padding: 14px; }.dashboard-cockpit .warehouse-map { min-height: 430px; }.dashboard-cockpit .warehouse-zone { width: 114px; }.dashboard-cockpit .zone-storage { width: 150px; }.dashboard-cockpit .cockpit-kpi { min-height: 96px; padding: 12px; } }

/* 仪表盘业务总览 */
.dashboard-summary-grid,
.dashboard-work-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 14px; }
.dashboard-stock-panel,
.dashboard-capacity-panel,
.dashboard-work-panel,
.dashboard-progress-panel { min-width: 0; }
.dashboard-inventory-total { display: flex; align-items: baseline; gap: 8px; padding: 20px 18px 12px; }
.dashboard-inventory-total strong { color: var(--dashboard-text); font-size: 32px; line-height: 36px; font-variant-numeric: tabular-nums; }
.dashboard-inventory-total span { color: var(--dashboard-muted); font-size: 13px; }
.dashboard-inventory-stack { display: flex; height: 10px; gap: 2px; margin: 0 18px; overflow: hidden; border-radius: 3px; background: var(--dashboard-panel-soft); }
.dashboard-inventory-stack span { min-width: 0; }
.dashboard-inventory-legend { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 22px; padding: 16px 18px 18px; }
.dashboard-inventory-legend > div { display: grid; grid-template-columns: 8px minmax(0, 1fr) auto; align-items: center; gap: 8px; color: var(--dashboard-muted); font-size: 12px; }
.dashboard-inventory-legend i { width: 8px; height: 8px; border-radius: 2px; }
.dashboard-inventory-legend strong { color: var(--dashboard-text); font-size: 13px; font-variant-numeric: tabular-nums; }
.dashboard-capacity-content { display: grid; gap: 10px; padding: 18px; }
.dashboard-capacity-content > div { display: grid; grid-template-columns: 1fr auto; align-items: baseline; gap: 4px 12px; }
.dashboard-capacity-content > div span { color: var(--dashboard-muted); font-size: 13px; }
.dashboard-capacity-content > div strong { color: var(--dashboard-text); font-size: 28px; line-height: 32px; font-variant-numeric: tabular-nums; }
.dashboard-capacity-content > div small { grid-column: 1 / -1; color: var(--dashboard-muted); font-size: 12px; }
.dashboard-capacity-content .ant-progress { margin: 0; }
.dashboard-capacity-content dl { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin: 8px 0 0; border-top: 1px solid var(--dashboard-line); }
.dashboard-capacity-content dl div { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; padding-top: 14px; }
.dashboard-capacity-content dl div + div { padding-left: 16px; border-left: 1px solid var(--dashboard-line); }
.dashboard-capacity-content dt { color: var(--dashboard-muted); font-size: 12px; }.dashboard-capacity-content dd { margin: 0; color: var(--dashboard-text); font-size: 18px; font-weight: 650; font-variant-numeric: tabular-nums; }
.dashboard-work-items { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 4px 16px 12px; }
.dashboard-work-items button { display: grid; grid-template-columns: minmax(0, 1fr) auto 12px; align-items: center; gap: 8px; min-height: 52px; padding: 8px 2px; border: 0; border-bottom: 1px solid var(--dashboard-line); background: transparent; color: var(--dashboard-text); text-align: left; cursor: pointer; }
.dashboard-work-items button:nth-child(odd) { padding-right: 14px; }.dashboard-work-items button:nth-child(even) { padding-left: 14px; border-left: 1px solid var(--dashboard-line); }
.dashboard-work-items button:nth-last-child(-n + 2) { border-bottom: 0; }.dashboard-work-items span { display: inline-flex; align-items: center; gap: 7px; min-width: 0; color: var(--dashboard-muted); font-size: 12px; }.dashboard-work-items strong { color: var(--dashboard-text); font-size: 18px; font-variant-numeric: tabular-nums; }.dashboard-work-items .anticon:last-child { color: var(--dashboard-muted); font-size: 11px; }.dashboard-work-items button:hover span { color: var(--dashboard-accent); }
.dashboard-cockpit .cockpit-task-panel { min-height: 0; }.dashboard-cockpit .cockpit-task-panel .cockpit-panel-head { border-bottom-color: var(--dashboard-line); }
.dashboard-activity-panel { min-width: 0; }
.dashboard-activity-panel .cockpit-panel-head > div:first-child { display: flex; align-items: baseline; gap: 10px; }
.dashboard-activity-panel .cockpit-panel-head > div:first-child > span { color: var(--dashboard-muted); font-size: 12px; }
.dashboard-activity-legend { display: inline-flex; align-items: center; gap: 4px; color: var(--dashboard-muted); font-size: 10px; }
.dashboard-activity-legend i { width: 11px; height: 11px; border: 1px solid var(--dashboard-line); border-radius: 2px; }
.dashboard-activity-body { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 10px; padding: 18px 20px 20px; }
.dashboard-week-labels { display: grid; grid-template-rows: repeat(7, 11px); align-content: start; gap: 4px; padding-top: 1px; color: var(--dashboard-muted); font-size: 10px; line-height: 11px; }
.dashboard-activity-grid { display: grid; grid-template-rows: repeat(7, 11px); grid-auto-flow: column; grid-auto-columns: 11px; gap: 4px; overflow-x: auto; padding-bottom: 2px; }
.activity-cell { display: block; width: 11px; height: 11px; border: 1px solid var(--dashboard-line); border-radius: 2px; }
.activity-cell.level-0, .dashboard-activity-legend .level-0 { background: var(--dashboard-panel-soft); }
.activity-cell.level-1, .dashboard-activity-legend .level-1 { border-color: #b7e4c5; background: #dcf6e5; }
.activity-cell.level-2, .dashboard-activity-legend .level-2 { border-color: #65c98a; background: #86dba4; }
.activity-cell.level-3, .dashboard-activity-legend .level-3 { border-color: #168344; background: #27ae60; }
[data-theme='dark'] .activity-cell.level-1, [data-theme='dark'] .dashboard-activity-legend .level-1 { border-color: #245b3a; background: #174b2f; }
[data-theme='dark'] .activity-cell.level-2, [data-theme='dark'] .dashboard-activity-legend .level-2 { border-color: #2f8a51; background: #297443; }
[data-theme='dark'] .activity-cell.level-3, [data-theme='dark'] .dashboard-activity-legend .level-3 { border-color: #4fca78; background: #3caa63; }
@media (max-width: 900px) { .dashboard-summary-grid, .dashboard-work-grid { grid-template-columns: 1fr; } }
@media (max-width: 620px) { .dashboard-work-items { grid-template-columns: 1fr; }.dashboard-work-items button:nth-child(even) { padding-left: 2px; border-left: 0; }.dashboard-work-items button:nth-last-child(-n + 2) { border-bottom: 1px solid var(--dashboard-line); }.dashboard-work-items button:last-child { border-bottom: 0; }.dashboard-inventory-legend { gap: 10px 14px; }.dashboard-activity-panel .cockpit-panel-head { align-items: flex-start; flex-direction: column; }.dashboard-activity-body { padding-inline: 14px; } }

/* 参考图式工作台布局 */
.dashboard-showcase-layout { display: grid; grid-template-columns: minmax(0, 1fr) 244px; gap: 24px; align-items: start; }
.dashboard-main-column { display: grid; gap: 18px; min-width: 0; }
.dashboard-showcase-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.showcase-stat { position: relative; display: grid; min-height: 118px; align-content: center; gap: 4px; padding: 18px 20px; overflow: hidden; border-radius: 10px; color: #243046; }
.showcase-stat span { font-size: 13px; font-weight: 600; }.showcase-stat strong { font-size: 31px; line-height: 36px; font-weight: 720; font-variant-numeric: tabular-nums; }.showcase-stat small { color: rgba(36, 48, 70, .6); font-size: 11px; }.showcase-stat > .anticon { position: absolute; right: 17px; top: 17px; width: 27px; height: 27px; display: grid; place-items: center; border-radius: 8px; background: rgba(255,255,255,.68); color: currentColor; font-size: 14px; }
.stat-violet { border: 1px solid #d9dcf8; background: #f1f2ff; color: #555aa6; }.stat-orange { border: 1px solid #f6dcc6; background: #fff6ed; color: #c96d28; }.stat-green { border: 1px solid #d0e9d5; background: #f1faef; color: #3f8a52; }
.dashboard-showcase-row { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(250px, .6fr); gap: 18px; }.dashboard-showcase-row.lower { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); }
.showcase-chart-panel, .showcase-performance-panel, .showcase-inventory-panel, .showcase-activity-panel, .showcase-feed-panel { min-width: 0; background: var(--dashboard-panel); border: 1px solid var(--dashboard-line); border-radius: 10px; }
.showcase-panel-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 58px; padding: 13px 17px; border-bottom: 1px solid var(--dashboard-line); }.showcase-panel-title > div { min-width: 0; }.showcase-panel-title h2 { margin: 0; color: var(--dashboard-text); font-size: 16px; font-weight: 680; }.showcase-panel-title span { display: block; margin-top: 3px; color: var(--dashboard-muted); font-size: 11px; }.showcase-panel-title .ant-btn-link { padding-inline: 0; color: var(--dashboard-accent); font-size: 12px; }
.showcase-bar-chart { display: flex; align-items: flex-end; justify-content: space-around; height: 190px; gap: 8px; padding: 18px 18px 0; background: repeating-linear-gradient(to bottom, transparent 0, transparent 37px, var(--dashboard-line) 38px); }.showcase-bar-item { display: grid; flex: 1; grid-template-rows: 16px 1fr 18px; align-items: end; min-width: 0; height: 100%; text-align: center; }.showcase-bar-value { color: var(--dashboard-muted); font-size: 10px; font-variant-numeric: tabular-nums; }.showcase-bars { display: flex; align-items: flex-end; justify-content: center; height: 100%; gap: 3px; }.showcase-bars i { display: block; width: min(17px, 30%); min-height: 2px; border-radius: 4px 4px 1px 1px; }.showcase-bar-item small { color: var(--dashboard-muted); font-size: 10px; }.showcase-chart-legend { display: flex; gap: 16px; padding: 8px 18px 15px; color: var(--dashboard-muted); font-size: 11px; }.showcase-chart-legend span { display: inline-flex; align-items: center; gap: 5px; }.showcase-chart-legend i { width: 7px; height: 7px; border-radius: 2px; }
.showcase-performance-panel { display: grid; align-content: start; }.showcase-gauge { --gauge-value: 0deg; position: relative; display: grid; place-items: center; width: 142px; height: 142px; margin: 24px auto 12px; border-radius: 50%; background: conic-gradient(#65bfb0 var(--gauge-value), var(--dashboard-line) 0); }.showcase-gauge::before { position: absolute; inset: 12px; border-radius: 50%; background: var(--dashboard-panel); content: ''; }.showcase-gauge > div { position: relative; display: grid; gap: 3px; text-align: center; }.showcase-gauge strong { color: var(--dashboard-text); font-size: 27px; line-height: 30px; }.showcase-gauge span { color: var(--dashboard-muted); font-size: 11px; }.showcase-performance-note { display: block; color: var(--dashboard-muted); font-size: 11px; text-align: center; }.showcase-performance-panel > .ant-btn { justify-self: center; margin: 7px 0 13px; }
.showcase-inventory-list { display: grid; gap: 14px; padding: 17px; }.showcase-inventory-list > div { display: grid; grid-template-columns: minmax(0, 1fr) 55px; gap: 6px 10px; align-items: center; }.showcase-inventory-list span { display: inline-flex; align-items: center; gap: 7px; color: var(--dashboard-muted); font-size: 12px; }.showcase-inventory-list span i { width: 8px; height: 8px; border-radius: 2px; }.showcase-inventory-list strong { color: var(--dashboard-text); font-size: 13px; text-align: right; }.showcase-inventory-list .ant-progress { grid-column: 1 / -1; margin: 0; }
.showcase-activity-panel .dashboard-activity-body { padding: 17px; }.showcase-feed-panel .cockpit-feed { padding: 5px 17px; }.showcase-feed-panel .cockpit-feed-item { border-bottom-color: var(--dashboard-line); color: var(--dashboard-text); }.showcase-feed-panel .cockpit-feed-item:hover strong { color: var(--dashboard-accent); }.showcase-feed-panel .cockpit-feed-item small, .showcase-feed-panel .cockpit-feed-item time { color: var(--dashboard-muted); }
.dashboard-side-column { display: grid; gap: 18px; min-width: 0; }.side-profile, .side-calendar, .side-todo { padding: 18px; border: 1px solid var(--dashboard-line); border-radius: 10px; background: var(--dashboard-panel); }.side-profile { display: grid; justify-items: center; gap: 5px; text-align: center; }.side-profile-mark { display: grid; place-items: center; width: 58px; height: 58px; margin-bottom: 5px; border: 2px solid #65bfb0; border-radius: 50%; background: #e4f4f1; color: #318c7b; font-size: 22px; font-weight: 700; }.side-profile strong { color: var(--dashboard-text); font-size: 14px; }.side-profile span { color: var(--dashboard-muted); font-size: 11px; }.side-section-title { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; margin-bottom: 14px; }.side-section-title h2 { margin: 0; color: var(--dashboard-text); font-size: 15px; font-weight: 680; }.side-section-title span { color: var(--dashboard-muted); font-size: 11px; }
.calendar-week, .calendar-days { display: grid; grid-template-columns: repeat(7, 1fr); gap: 5px; text-align: center; }.calendar-week { margin-bottom: 8px; color: var(--dashboard-muted); font-size: 10px; }.calendar-days { color: var(--dashboard-text); font-size: 11px; }.calendar-days span, .calendar-days i { display: grid; place-items: center; height: 24px; font-style: normal; }.calendar-days .is-today { border-radius: 50%; background: #65bfb0; color: #fff; font-weight: 700; }
.side-todo { padding-bottom: 10px; }.side-todo-item { display: grid; grid-template-columns: 18px minmax(0, 1fr) auto; align-items: center; gap: 8px; width: 100%; min-height: 42px; padding: 5px 0; border: 0; border-bottom: 1px solid var(--dashboard-line); background: transparent; color: var(--dashboard-text); text-align: left; cursor: pointer; }.side-todo-item:last-child { border-bottom: 0; }.side-todo-item > span:nth-child(2) { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }.side-todo-item strong { color: var(--dashboard-muted); font-size: 12px; }.todo-check { display: grid; place-items: center; width: 14px; height: 14px; border: 1px solid #8ba0b5; border-radius: 3px; color: transparent; font-size: 9px; }.todo-check.is-pending { border-color: #e38d55; background: #fff0df; color: #d47a32; }
[data-theme='dark'] .showcase-stat { color: #edf2f7; }.showcase-stat small { color: var(--dashboard-muted); }[data-theme='dark'] .stat-violet { border-color: #3b416d; background: #2a2e4c; color: #a9afff; }[data-theme='dark'] .stat-orange { border-color: #654634; background: #4a3628; color: #f0a767; }[data-theme='dark'] .stat-green { border-color: #365b48; background: #263f35; color: #80cf91; }.showcase-stat > .anticon { background: rgba(255,255,255,.1); }.side-profile-mark { background: #1b3d3a; color: #7ed5c8; }.todo-check.is-pending { background: #4a3628; }
@media (max-width: 1100px) { .dashboard-showcase-layout { grid-template-columns: 1fr; }.dashboard-side-column { grid-template-columns: repeat(3, minmax(0, 1fr)); }.side-profile { align-content: center; } }
@media (max-width: 760px) { .dashboard-showcase-cards, .dashboard-showcase-row, .dashboard-showcase-row.lower, .dashboard-side-column { grid-template-columns: 1fr; }.showcase-bar-chart { height: 165px; }.dashboard-showcase-layout { gap: 16px; }.showcase-performance-panel { min-height: 280px; } }

/* 退货处理 */
.return-page-header { padding: 14px 16px 12px; border: 1px solid var(--wms-border); border-top: 3px solid #91caff; border-radius: 6px; background: var(--wms-surface); }
.return-summary-row { margin: 0 !important; }
.return-summary-row > .ant-col { display: flex; }
.return-summary-card { position: relative; display: grid; flex: 1; grid-template-columns: 1fr auto; align-items: center; gap: 3px 10px; min-height: 94px; padding: 14px 16px; border: 1px solid var(--wms-border); border-top: 3px solid; border-radius: 6px; background: var(--wms-surface); }
.return-summary-card.is-gold { border-top-color: #d89614; }
.return-summary-card.is-blue { border-top-color: #4096ff; }
.return-summary-card.is-green { border-top-color: #52c41a; }
.return-summary-card.is-total { border-top-color: #91caff; }
.return-summary-card span { grid-column: 1 / -1; color: var(--wms-text-secondary); font-size: 13px; }
.return-summary-card strong { color: var(--wms-text); font-size: 28px; line-height: 30px; font-variant-numeric: tabular-nums; }
.return-summary-card small { color: var(--wms-text-secondary); font-size: 11px; text-align: right; }
.return-list-panel { border-top: 3px solid #91caff; }
.return-filter-row { display: grid; grid-template-columns: minmax(220px, 1.3fr) 150px 150px auto; gap: 10px; align-items: center; margin-bottom: 12px; }
.return-filter-row .ant-input-affix-wrapper,
.return-filter-row .ant-select-selector,
.return-filter-row .ant-btn { height: 36px !important; }
.return-form-section { display: flex; align-items: baseline; gap: 9px; margin: 0 0 14px; padding-bottom: 8px; border-bottom: 1px solid var(--wms-border); }
.return-form-section strong { color: var(--wms-text); font-size: 15px; }
.return-form-section span { color: var(--wms-text-secondary); font-size: 12px; }
.return-items-heading { align-items: center; justify-content: space-between; }
.return-items-heading > div { display: inline-flex; align-items: baseline; gap: 9px; }
.return-items-list { max-height: 280px; overflow-x: auto; overflow-y: auto; padding-right: 3px; }
.return-item-row { display: grid; grid-template-columns: minmax(120px, 1.05fr) minmax(150px, 1.2fr) minmax(130px, 1fr) 100px 120px 62px; min-width: 750px; align-items: start; gap: 9px; padding: 10px 10px 1px; border: 1px solid var(--wms-border); border-radius: 6px; background: var(--wms-surface-soft); }
.return-item-row + .return-item-row { margin-top: 8px; }
.return-item-row .ant-form-item { min-width: 0; margin-bottom: 9px; }
.return-item-row .ant-input-number,
.return-item-row .ant-select { width: 100%; }
.return-sn-material.ant-input[disabled] { color: var(--wms-text-secondary); background: var(--wms-surface-soft); border-color: var(--wms-border); cursor: not-allowed; }
.return-item-remove { align-self: center; justify-self: center; margin: 0; padding-inline: 0; white-space: nowrap; }
.return-detail-status { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; padding: 14px 16px; border: 1px solid var(--wms-border); border-left: 3px solid #91caff; border-radius: 6px; background: var(--wms-surface-soft); }
.return-detail-status div { display: grid; gap: 5px; }
.return-detail-status span { color: var(--wms-text-secondary); font-size: 13px; }
.return-detail-status strong { color: var(--wms-text); font-size: 22px; }
.return-detail-actions { display: flex; justify-content: flex-end; margin-top: 18px; }
.return-batch-skus { display: grid; gap: 3px; }
.return-detail-items { display: grid; gap: 8px; }
.return-detail-item { display: grid; gap: 2px; padding-bottom: 7px; border-bottom: 1px solid var(--wms-border); }
.return-detail-item:last-child { padding-bottom: 0; border-bottom: 0; }
.return-detail-item span { color: var(--wms-text); font-weight: 600; }
.return-detail-item small { color: var(--wms-text-secondary); }
.return-assemble-hint { margin: 8px 0 14px; }
.return-assemble-layout { display: grid; grid-template-columns: minmax(0, 1fr) 390px; gap: 20px; }
.return-assemble-source { min-width: 0; }
.return-assemble-side { min-width: 0; padding-left: 20px; border-left: 1px solid var(--wms-border); }
.return-assembly-modal-toolbar { display: grid; grid-template-columns: minmax(280px, 1fr) minmax(280px, 1fr) auto minmax(250px, .7fr); gap: 12px; margin-bottom: 14px; }
.return-assembly-modal .ant-modal-content { display: flex; max-height: calc(100vh - 48px); flex-direction: column; }
.return-assembly-modal .ant-modal-body { height: calc(100vh - 190px); min-height: 0; max-height: calc(100vh - 190px); overflow: hidden; }
.return-assembly-modal .ant-modal-footer { flex: 0 0 auto; }
.return-assembly-footer { display: flex; align-items: center; justify-content: space-between; width: 100%; gap: 16px; }
.return-assembly-footer .ant-pagination { margin: 0 !important; }
.return-assembly-modal-toolbar .ant-input-prefix { color: var(--wms-text-secondary); }
.return-assembly-modal-layout { display: flex; align-items: flex-start; gap: 16px; }
.return-assembly-modal-layout > .return-assembly-source { flex: 1 1 auto; min-width: 0; }
.return-assembly-selected { width: 440px; flex: 0 0 440px; min-width: 0; max-height: calc(100vh - 360px); display: grid; align-content: start; gap: 10px; overflow-y: auto; padding-left: 16px; border-left: 1px solid var(--wms-border); color: var(--wms-text-secondary); }
.return-assembly-source .ant-table-body { max-height: calc(100vh - 360px) !important; }
.return-assembly-pagination { display: flex; justify-content: flex-end; min-height: 54px; padding-top: 14px; border-top: 1px solid var(--wms-border); }
.return-assembly-pagination .ant-pagination { margin: 0 !important; }
.return-assembly-selected > strong { color: var(--wms-text); font-size: 16px; }
.return-assembly-selected > span { color: var(--wms-accent-strong); }
.return-assembly-selected > div { display: grid !important; grid-template-columns: minmax(0, 1fr) 42px !important; align-items: center; gap: 10px; min-width: 0; min-height: 44px; padding: 8px 0; border-bottom: 1px solid var(--wms-border); color: var(--wms-text); }
.return-assembly-selected > div > span { display: block; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap !important; }
.return-assembly-selected > div .ant-btn { justify-self: end; width: 42px; min-width: 42px; padding-inline: 0; white-space: nowrap; }
.return-assembly-selected em { padding: 30px 0; color: var(--wms-text-secondary); font-style: normal; text-align: center; }
.return-quantity-modal { display: grid; gap: 16px; }
.return-quantity-label { color: var(--wms-text); font-size: 16px; }
@media (max-width: 900px) {
  .return-assembly-modal-toolbar { grid-template-columns: 1fr 1fr; }
  .return-assembly-modal-layout { display: block; }
  .return-assembly-selected { width: auto; max-height: none; margin-top: 16px; padding: 14px 0 0; border-top: 1px solid var(--wms-border); border-left: 0; }
}
@media (max-width: 680px) {
  .return-assembly-modal .ant-modal { max-width: calc(100vw - 24px); margin: 12px auto; }
  .return-assembly-modal .ant-modal-body { height: calc(100vh - 170px); max-height: calc(100vh - 170px); }
  .return-assembly-source .ant-table-body { max-height: calc(100vh - 330px) !important; }
  .return-assembly-modal-toolbar { grid-template-columns: 1fr; gap: 8px; }
  .return-assembly-footer { align-items: stretch; flex-direction: column; }
  .return-assembly-footer .ant-pagination { align-self: flex-start; }
  .return-assembly-footer > .ant-space { justify-content: flex-end; }
}
@media (max-width: 1000px) {
  .return-assemble-layout { grid-template-columns: 1fr; }
  .return-assemble-side { padding-left: 0; border-top: 1px solid var(--wms-border); border-left: 0; padding-top: 16px; }
}

[data-theme='dark'] .return-page-header,
[data-theme='dark'] .return-list-panel { border-top-color: #5d9edb; }
[data-theme='dark'] .return-summary-card.is-gold { border-top-color: #d8a84e; }
[data-theme='dark'] .return-summary-card.is-blue { border-top-color: #69a8e8; }
[data-theme='dark'] .return-summary-card.is-green { border-top-color: #73d13d; }
[data-theme='dark'] .return-summary-card.is-total { border-top-color: #5d9edb; }
[data-theme='dark'] .return-detail-status { border-left-color: #5d9edb; }

@media (max-width: 720px) {
  .return-page-header { align-items: flex-start; flex-direction: column; }
  .return-filter-row { grid-template-columns: 1fr 1fr; }
  .return-filter-row .ant-input-affix-wrapper { grid-column: 1 / -1; }
}

@media (max-width: 900px) {
  .return-item-row { grid-template-columns: minmax(120px, 1.05fr) minmax(150px, 1.2fr) minmax(130px, 1fr) 100px 120px 62px; }
}

/* 退货上架 */
.return-putaway-header { padding: 14px 16px 12px; border: 1px solid var(--wms-border); border-top: 3px solid #91caff; border-radius: 6px; background: var(--wms-surface); }
.return-putaway-summary { display: grid; grid-template-columns: 1fr 1fr 1.4fr; gap: 1px; overflow: hidden; border: 1px solid var(--wms-border); border-radius: 6px; background: var(--wms-border); }
.return-putaway-summary > div { display: flex; min-height: 82px; flex-direction: column; justify-content: center; gap: 3px; padding: 12px 17px; background: var(--wms-surface); }
.return-putaway-summary > div:first-child { border-top: 3px solid #d89614; }
.return-putaway-summary > div:nth-child(2) { border-top: 3px solid #4096ff; }
.return-putaway-summary > div:nth-child(3) { border-top: 3px solid #91caff; }
.return-putaway-summary span { color: var(--wms-text-secondary); font-size: 12px; }
.return-putaway-summary strong { overflow: hidden; color: var(--wms-text); font-size: 24px; line-height: 28px; text-overflow: ellipsis; white-space: nowrap; }
.return-putaway-summary strong small { color: var(--wms-text-secondary); font-size: 12px; font-weight: 500; }
.return-putaway-summary .anticon { color: #d89614; font-size: 17px; }
.return-putaway-panel { border-top: 3px solid #91caff; }
.return-putaway-filter { display: flex; justify-content: flex-end; gap: 9px; margin-bottom: 12px; }
.return-putaway-filter .ant-select { width: 150px; }
.return-putaway-modal { display: grid; gap: 16px; }
.return-putaway-goods { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 3px 12px; padding: 13px 15px; border: 1px solid var(--wms-border); border-left: 3px solid #91caff; border-radius: 6px; background: var(--wms-surface-soft); }
.return-putaway-goods span { overflow: hidden; color: var(--wms-text); font-size: 14px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.return-putaway-goods strong { color: var(--wms-accent-strong); font-size: 15px; }
.return-putaway-goods small { color: var(--wms-text-secondary); font-size: 12px; }
.return-allocation-row { display: flex; width: 100%; gap: 10px; }
.return-allocation-row .ant-form-item { margin-bottom: 10px; }
.return-allocation-row .ant-form-item:first-child { flex: 0 0 430px; width: 430px; }
.return-allocation-row .ant-form-item:first-child .ant-select { width: 430px; }
.return-allocation-row .ant-input-number { width: 120px; }
.return-goods-tags { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.return-location-tags { display: flex; flex-wrap: wrap; gap: 4px; align-items: center; }
.return-location-tags .ant-tag { margin: 0; }
.return-goods-entry { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px; }
.return-goods-tag { margin: 0; border-color: #91caff; background: #e6f4ff; color: #0958d9; font-size: 14px; }
.return-goods-tag-sn { border-color: #87e8de; background: #e6fffb; color: #006d75; }
.return-goods-tag-sn { cursor: help; }
.return-detail-goods-list { display: grid; gap: 8px; width: 100%; }
.return-detail-goods-item { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; padding: 9px 10px; border: 1px solid var(--wms-border); border-radius: 6px; background: var(--wms-surface-soft); }
.return-detail-goods-item strong { color: var(--wms-text); }
.return-detail-goods-item span { color: var(--wms-text-secondary); }
.return-sn-tag { margin: 0; border-color: #adc6ff; background: #f0f5ff; color: #1d39c4; font-size: 12px; }
.return-sn-popover { display: grid; width: 250px; gap: 8px; }
.return-sn-list { display: grid; max-height: 180px; gap: 4px; overflow-y: auto; color: var(--wms-text); font-family: Consolas, 'Courier New', monospace; font-size: 12px; }
.return-sn-list div { padding: 5px 7px; border-radius: 4px; background: var(--wms-surface-soft); }
.return-sn-list span { padding: 8px 0; color: var(--wms-text-secondary); font-family: inherit; text-align: center; }
[data-theme='dark'] .return-goods-tag { border-color: #3d6fa8; background: #102a43; color: #91caff; }
[data-theme='dark'] .return-goods-tag-sn { border-color: #247d78; background: #103b3b; color: #87e8de; }

[data-theme='dark'] .return-putaway-header,
[data-theme='dark'] .return-putaway-panel { border-top-color: #5d9edb; }
[data-theme='dark'] .return-putaway-summary { background: var(--wms-border); border-color: var(--wms-border); }
[data-theme='dark'] .return-putaway-summary > div { background: var(--wms-surface); }
[data-theme='dark'] .return-putaway-summary > div:nth-child(3) { border-top-color: #5d9edb; }
[data-theme='dark'] .return-putaway-goods { border-left-color: #5d9edb; }

@media (max-width: 720px) {
  .return-putaway-header { align-items: flex-start; flex-direction: column; }
  .return-putaway-header > .ant-space { width: 100%; }
  .return-putaway-header .ant-select { flex: 1; }
  .return-putaway-summary { grid-template-columns: 1fr 1fr; }
  .return-putaway-summary > div:last-child { grid-column: 1 / -1; }
  .return-allocation-row { flex-wrap: wrap; }
  .return-allocation-row .ant-form-item:first-child { flex: 1 1 100%; width: 100%; min-width: 0; }
  .return-allocation-row .ant-form-item:first-child .ant-select { width: 100%; }
}

/* 右上角用户区 */
.user-chip {
  min-height: 38px;
  padding: 3px 8px 3px 4px;
  border: 1px solid transparent;
  border-radius: 7px;
  background: transparent;
  color: #0f1f3a;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: inherit;
  text-align: left;
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.user-chip:hover {
  border-color: #dde3ea;
  background: #f7f8fa;
}

.user-chip:active {
  transform: scale(0.98);
}

.user-chip:focus-visible {
  outline: 2px solid #91caff;
  outline-offset: 2px;
}

.user-chip .ant-avatar {
  flex: 0 0 auto;
  background: #e8edf2;
  color: #34465a;
  font-size: 13px;
  font-weight: 650;
  box-shadow: inset 0 0 0 1px #d9e0e8;
}

.user-chip-name {
  max-width: 132px;
  overflow: hidden;
  color: #263548;
  font-size: 14px;
  line-height: 20px;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.user-chip-arrow {
  color: #98a2b0;
  font-size: 10px;
}

.ant-dropdown .ant-dropdown-menu {
  min-width: 136px;
  padding: 8px;
  border-radius: 10px;
  box-shadow: 0 12px 32px rgba(15, 31, 58, 0.14);
}

.ant-dropdown .ant-dropdown-menu-item {
  height: 40px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 15px;
  font-weight: 520;
}

.ant-dropdown .ant-dropdown-menu-item-danger:hover {
  background: #fff1f0 !important;
}

.user-account-dropdown .ant-dropdown-menu {
  min-width: 220px;
  padding: 6px;
  border: 1px solid #e1e6ec;
  border-radius: 8px;
  box-shadow: 0 10px 24px rgba(35, 48, 65, 0.12);
}

.user-account-dropdown .ant-dropdown-menu-item {
  justify-content: flex-start;
  padding-inline: 12px;
}

.user-account-dropdown .user-account-summary-item {
  height: auto;
  padding: 8px 10px 9px;
  cursor: default;
  opacity: 1;
}

.user-account-dropdown .user-account-summary-item:hover {
  background: transparent;
}

.user-account-summary {
  width: 100%;
}

.user-account-summary-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.user-account-summary-copy strong,
.user-account-summary-copy span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.user-account-summary-copy strong {
  color: #263548;
  font-size: 14px;
  line-height: 20px;
  font-weight: 620;
}

.user-account-summary-copy span {
  color: #7a8797;
  font-size: 12px;
  line-height: 17px;
}

.user-account-dropdown .ant-dropdown-menu-item-divider {
  margin: 5px 4px;
  background: #e8edf3;
}

.user-account-dropdown .ant-dropdown-menu-item-danger {
  color: #b42318 !important;
  background: transparent !important;
  font-size: 14px;
  font-weight: 550;
}

.user-account-dropdown .ant-dropdown-menu-item-danger:hover,
.user-account-dropdown .ant-dropdown-menu-item-danger:active,
.user-account-dropdown .ant-dropdown-menu-item-danger.ant-dropdown-menu-item-active,
.user-account-dropdown .ant-dropdown-menu-item-danger.ant-dropdown-menu-item-selected {
  color: #b42318 !important;
  background: #fff5f4 !important;
}

.user-account-dropdown .ant-dropdown-menu-item-danger .anticon,
.user-account-dropdown .ant-dropdown-menu-item-danger:hover .anticon,
.user-account-dropdown .ant-dropdown-menu-item-danger.ant-dropdown-menu-item-active .anticon {
  color: #b42318 !important;
}

.user-account-dropdown .ant-dropdown-menu-item-danger:focus-visible {
  color: #b42318 !important;
  background: #fff5f4 !important;
  outline: 2px solid #fda29b;
  outline-offset: -2px;
}

@media (max-width: 640px) {
  .user-chip-name,
  .user-chip-arrow {
    display: none;
  }

  .user-chip {
    min-width: 40px;
    min-height: 36px;
    padding: 3px;
    justify-content: center;
  }
}

/* 登录页优化 */
.refined-login {
  grid-template-columns: minmax(480px, 560px) 1fr;
  background: #f5f8fc;
}

.refined-login .login-panel {
  padding: 52px;
  background:
    radial-gradient(circle at 18% 14%, rgba(0, 184, 148, 0.1), transparent 30%),
    #fff;
  border-right: 1px solid #e2e8f2;
}

.login-card {
  width: 100%;
  max-width: 420px;
  margin: 0 auto;
  padding: 34px 32px 36px;
  border: 1px solid #e2eaf4;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 18px 42px rgba(31, 44, 71, 0.08);
}

.login-logo-row {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 28px;
  color: #0f1f3a;
  font-size: 20px;
  line-height: 30px;
  font-weight: 620;
}

.login-logo {
  width: 42px;
  height: 42px;
  border-radius: 11px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #1677ff, #00b894);
  color: #fff;
  font-size: 22px;
  font-weight: 700;
  box-shadow: 0 10px 24px rgba(22, 119, 255, 0.22);
}

.login-card .ant-typography h1,
.login-card h1.ant-typography {
  margin: 0;
  color: #0f1f3a;
  font-size: 36px;
  line-height: 48px;
  font-weight: 650;
}

.login-card .ant-typography + .ant-typography,
.login-card p.ant-typography {
  margin: 8px 0 30px;
  color: #65758b;
  font-size: 16px;
  line-height: 26px;
  font-weight: 450;
}

.login-form .ant-form-item-label > label {
  font-size: 16px;
  line-height: 24px;
  font-weight: 520;
}

.login-form .ant-input-affix-wrapper,
.login-form .ant-input-password {
  height: 48px;
  border-radius: 8px;
}

.login-form .ant-input {
  font-size: 16px;
}

.login-form .ant-btn {
  height: 48px;
  margin-top: 6px;
  border: 0;
  border-radius: 8px;
  background: linear-gradient(90deg, #1677ff, #00a98b);
  font-size: 17px;
  font-weight: 600;
  box-shadow: 0 12px 22px rgba(22, 119, 255, 0.18);
}

.refined-login .login-visual {
  position: relative;
  padding: 72px;
  background:
    linear-gradient(90deg, rgba(10, 20, 36, 0.48), rgba(10, 20, 36, 0.22)),
    url('/warehouse.jpg');
  background-size: cover;
  background-position: center;
}

.login-visual-copy {
  max-width: 660px;
}

.login-visual-copy h1 {
  font-size: 46px;
  line-height: 58px;
  font-weight: 680;
  text-shadow: 0 8px 28px rgba(0, 0, 0, 0.28);
}

.login-visual-copy p {
  max-width: 560px;
  font-size: 18px;
  line-height: 30px;
  font-weight: 480;
}

/* Logistics, manifest, exception stock and organization workspaces */
.route-loading { min-height: 55vh; display: grid; place-items: center; }
.workflow-stat-row { margin-bottom: 12px; }
.workflow-overview {
  display: grid;
  grid-template-columns: repeat(5, minmax(150px, 1fr));
  margin-bottom: 14px;
  border: 1px solid var(--wms-border);
  border-radius: 6px;
  background: #fff;
  overflow: hidden;
}
.workflow-step {
  display: grid;
  grid-template-columns: 34px 1fr;
  align-items: center;
  gap: 10px;
  min-height: 76px;
  padding: 12px 16px;
  border: 0;
  border-right: 1px solid var(--wms-border);
  background: transparent;
  color: var(--wms-text);
  text-align: left;
  cursor: pointer;
  transition: background-color .2s ease, transform .2s ease;
}
.workflow-step:last-child { border-right: 0; }
.workflow-step:hover { background: #f0f7ff; }
.workflow-step:active { transform: translateY(1px); }
.workflow-step-index { color: var(--wms-accent); font-size: 12px; font-weight: 700; }
.workflow-step-copy { display: grid; gap: 3px; }
.workflow-step-copy small { color: var(--wms-text-secondary); font-size: 13px; }
.workflow-step-copy strong { font-size: 22px; line-height: 1; }
.page-subtitle { margin-top: 4px; color: var(--wms-text-secondary); font-size: 13px; }
.workflow-tabs > .ant-tabs-nav { margin-bottom: 0; }

@media (max-width: 900px) {
  .workflow-overview { grid-template-columns: 1fr 1fr; }
  .workflow-step { border-bottom: 1px solid var(--wms-border); }
}
.workflow-stat-row .ant-card { height: 100%; border-radius: 6px; }
.workflow-stat-row .ant-statistic-title { font-size: 13px; }
.workflow-stat-row .ant-statistic-content { font-size: 22px; }
.table-context { color: #607089; font-size: 13px; }
.photo-field { display: grid; grid-template-columns: 132px minmax(120px, 1fr); gap: 12px; align-items: center; }
.photo-field .ant-image, .photo-placeholder { width: 132px; height: 88px; }
.photo-field .ant-image-img { width: 132px; height: 88px; object-fit: cover; border: 1px solid #d9e2ef; border-radius: 6px; }
.photo-placeholder { display: grid; place-content: center; justify-items: center; gap: 5px; color: #8b98aa; background: #f6f8fb; border: 1px dashed #b9c5d5; border-radius: 6px; }
.photo-placeholder .anticon { font-size: 22px; }
.modal-section-title { margin-bottom: 10px; color: #14243d; font-size: 15px; font-weight: 700; }
.modal-field { display: grid; grid-template-columns: 90px 1fr; gap: 12px; align-items: start; margin-top: 16px; }
.modal-field > span { padding-top: 6px; color: #44536a; }
.modal-loading { padding: 42px; text-align: center; color: #607089; }
.full-width { width: 100%; }
.detail-photo-row { display: grid; grid-template-columns: repeat(2, minmax(0, 220px)); gap: 18px; }
.detail-photo-row > div, .single-detail-photo { display: grid; gap: 7px; color: #44536a; font-size: 13px; }
.detail-photo-row .ant-image-img, .single-detail-photo .ant-image-img { width: 220px; height: 140px; object-fit: cover; border: 1px solid #d9e2ef; border-radius: 6px; }
.manifest-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 10px; }
.manifest-toolbar .modal-section-title { margin: 0; }
.manifest-logistics-form .ant-form-item-label { padding-bottom: 7px; text-align: left; }
.manifest-logistics-form .ant-select,
.manifest-logistics-form .ant-select-selector { width: 100%; height: 38px !important; }
.manifest-logistics-form .ant-select-single .ant-select-selector { display: flex; align-items: center; }
.form-hint { margin-top: 10px; color: #6b788c; font-size: 14px; }
.danger-number { color: #cf1322; }
.modal-summary { margin-bottom: 18px; }
.organization-workspace { min-height: 620px; display: grid; grid-template-columns: 250px minmax(0, 1fr); overflow: hidden; background: #fff; border: 1px solid #dfe6f0; border-radius: 6px; }
.organization-tree-panel { padding: 14px 10px; border-right: 1px solid #e4eaf2; background: #f8fafc; }
.organization-member-panel { min-width: 0; padding: 14px; }
.panel-heading { min-height: 36px; display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 0 6px 10px; color: #14243d; font-weight: 700; }
.panel-heading > div { display: flex; align-items: baseline; gap: 8px; }
.panel-heading small { color: #7d899a; font-size: 12px; font-weight: 400; }
.organization-tree-panel .ant-tree { background: transparent; }
.organization-tree-panel .ant-tree-node-content-wrapper { min-height: 34px; line-height: 34px; }
.member-name { display: grid; line-height: 1.35; }
.member-name span { color: #7d899a; font-size: 12px; }
.member-avatar-fallback { color: #244b6b; background: #dce8f2; font-weight: 700; }
.member-avatar-large { font-size: 28px; }
.member-profile-header { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; padding: 14px 18px; background: #f6f8fb; border: 1px solid #e4eaf2; border-radius: 6px; }
.member-profile-header > div { display: grid; gap: 4px; }
.member-profile-header strong { font-size: 17px; }
.member-profile-header span { color: #68768a; font-size: 13px; }
.permission-warning { margin-bottom: 14px; padding: 9px 12px; color: #9f2d22; background: #fff2f0; border: 1px solid #ffccc7; border-radius: 6px; }
.permission-groups { width: 100%; display: grid; gap: 16px; }
.permission-group { padding-bottom: 14px; border-bottom: 1px solid #edf0f5; }
.permission-group > strong { display: block; margin-bottom: 10px; color: #14243d; }

@media (max-width: 900px) {
  .organization-workspace { grid-template-columns: 1fr; }
  .organization-tree-panel { max-height: 280px; overflow: auto; border-right: 0; border-bottom: 1px solid #e4eaf2; }
  .detail-photo-row { grid-template-columns: 1fr; }
  .permission-group .ant-col { flex: 0 0 50%; max-width: 50%; }
}

@media (max-width: 600px) {
  .photo-field, .modal-field { grid-template-columns: 1fr; }
  .manifest-toolbar { align-items: flex-start; flex-direction: column; }
  .permission-group .ant-col { flex: 0 0 100%; max-width: 100%; }
}

/* Refined organization workspace */
.organization-overview {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  background: #fff;
  border: 1px solid #dfe6f0;
  border-radius: 6px;
}

.organization-overview > div {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
  border-right: 1px solid #edf0f5;
}

.organization-overview > div:last-child { border-right: 0; }
.organization-overview p { display: grid; gap: 3px; margin: 0; }
.organization-overview small { color: #6f7d91; font-size: 13px; }
.organization-overview strong { color: #12233d; font-size: 22px; line-height: 1; }
.overview-icon { width: 36px; height: 36px; display: grid; place-items: center; flex: 0 0 auto; color: #2f6f9f; background: #eaf1f7; border-radius: 6px; font-size: 18px; }

.organization-workspace { min-height: 480px; grid-template-columns: 270px minmax(0, 1fr); }
.organization-tree-panel { padding: 14px 12px; background: #fbfcfe; }
.organization-member-panel { padding: 16px 18px; }
.member-panel-heading { min-height: 44px; }
.member-panel-heading .ant-input-affix-wrapper { width: 250px; height: 36px; font-weight: 400; }
.department-tree-title { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.department-tree-title em { min-width: 24px; padding: 1px 7px; color: #728097; background: #edf1f6; border-radius: 8px; font-size: 11px; line-height: 18px; text-align: center; font-style: normal; }
.organization-tree-panel .ant-tree-treenode { width: 100%; padding: 2px 0; }
.organization-tree-panel .ant-tree-node-content-wrapper { width: calc(100% - 48px); padding-inline: 7px; }
.organization-tree-panel .ant-tree-node-selected { color: #0958d9; background: #e6f1ff !important; }

/* Organization dialogs use dedicated content layouts. */
.organization-member-modal .ant-modal-body,
.organization-permission-modal .ant-modal-body { display: block; }
.organization-member-modal .ant-modal-content,
.organization-permission-modal .ant-modal-content { padding: 24px 28px 20px; border-radius: 8px; }
.organization-member-modal .ant-modal-header,
.organization-permission-modal .ant-modal-header { margin-bottom: 18px; padding-bottom: 14px; }
.organization-member-modal .ant-modal-title,
.organization-permission-modal .ant-modal-title { font-size: 19px; letter-spacing: 0; }
.organization-member-modal .ant-modal-footer,
.organization-permission-modal .ant-modal-footer { margin-top: 18px; padding-top: 14px; }
.organization-member-modal .ant-modal-footer .ant-btn-primary,
.organization-permission-modal .ant-modal-footer .ant-btn-primary { background: #2f6f9f; box-shadow: none; }

.member-editor-layout { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 28px; }
.member-profile-summary { display: flex; flex-direction: column; align-items: center; min-width: 0; padding: 24px 18px 18px; background: #f6f8fb; border-right: 1px solid #e4eaf2; border-radius: 6px 0 0 6px; }
.member-profile-summary > strong { margin-top: 12px; color: #12233d; font-size: 17px; }
.member-profile-summary > span { max-width: 100%; margin-top: 2px; overflow: hidden; color: #718096; font-size: 13px; text-overflow: ellipsis; }
.member-profile-summary > .ant-tag { margin: 12px 0 14px; }
.member-profile-summary .ant-upload-wrapper { width: 100%; }
.member-profile-summary .ant-btn { width: 100%; }
.member-profile-summary dl { width: 100%; display: grid; gap: 10px; margin: 22px 0 0; padding-top: 16px; border-top: 1px solid #dfe6ef; }
.member-profile-summary dl > div { min-width: 0; }
.member-profile-summary dt { margin-bottom: 2px; color: #8190a5; font-size: 12px; }
.member-profile-summary dd { margin: 0; overflow: hidden; color: #34445c; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.member-editor-form { min-width: 0; padding-top: 6px; }
.member-editor-form .ant-form-item { margin-bottom: 18px; }
.member-editor-form .ant-form-item-label > label { height: auto; color: #34445c; font-size: 14px; font-weight: 600; }
.member-editor-form .ant-select-selector { min-height: 40px !important; }
.member-admin-rule { display: flex; gap: 10px; align-items: flex-start; margin-top: 4px; padding: 12px 14px; color: #5c4a24; background: #fff9e8; border: 1px solid #f1d890; border-radius: 6px; }
.member-admin-rule > .anticon { margin-top: 3px; color: #c4860a; }
.member-admin-rule > div { display: grid; gap: 3px; }
.member-admin-rule strong { color: #4b3b19; font-size: 13px; }
.member-admin-rule span { font-size: 12px; line-height: 20px; }

.permission-member-bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 12px; padding: 10px 12px; background: #f6f8fb; border: 1px solid #e4eaf2; border-radius: 6px; }
.permission-member-bar .ant-space > div { display: grid; }
.permission-member-bar strong { color: #12233d; font-size: 14px; }
.permission-member-bar span { color: #718096; font-size: 12px; }
.permission-warning { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; padding: 9px 12px; }
.permission-warning .anticon { flex: 0 0 auto; }
.permission-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; color: #5c6b80; font-size: 13px; }
.permission-toolbar strong { color: #2f6f9f; }
.organization-permission-modal .ant-modal-body { max-height: 66vh; overflow-y: auto; padding-right: 4px; }
.permission-groups { display: block; }
.permission-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.permission-group { padding: 13px 14px 14px; background: #fbfcfe; border: 1px solid #e4eaf2; border-radius: 6px; }
.permission-group { transition: border-color 0.22s cubic-bezier(0.16, 1, 0.3, 1), transform 0.22s cubic-bezier(0.16, 1, 0.3, 1); }
.permission-group:hover { border-color: #bccddd; transform: translateY(-1px); }
.permission-group > strong { margin-bottom: 10px; color: #223550; font-size: 13px; }
.permission-group > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px 12px; }
.permission-group .ant-checkbox-wrapper { min-width: 0; margin-inline-start: 0; color: #384a63; font-size: 13px; line-height: 19px; }

@media (max-width: 900px) {
  .organization-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .organization-overview > div:nth-child(2) { border-right: 0; }
  .organization-overview > div:nth-child(-n + 2) { border-bottom: 1px solid #edf0f5; }
  .member-editor-layout { grid-template-columns: 190px minmax(0, 1fr); gap: 20px; }
  .permission-grid { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
  .organization-overview { grid-template-columns: 1fr; }
  .organization-overview > div { border-right: 0; border-bottom: 1px solid #edf0f5; }
  .organization-overview > div:last-child { border-bottom: 0; }
  .member-panel-heading { align-items: flex-start; flex-direction: column; }
  .member-panel-heading .ant-input-affix-wrapper { width: 100%; }
  .member-editor-layout { grid-template-columns: 1fr; }
  .member-profile-summary { border-right: 0; border-bottom: 1px solid #e4eaf2; border-radius: 6px 6px 0 0; }
  .member-editor-form .ant-col { flex: 0 0 100%; max-width: 100%; }
  .permission-group > div { grid-template-columns: 1fr; }
}

/* Quiet system navigation and organization workbench */
.tree-sider .ant-menu-item::after { display: none !important; }
.tree-sider .ant-menu-item,
.tree-sider .ant-menu-submenu-title {
  height: 46px !important;
  line-height: 46px !important;
  margin: 3px 0 !important;
  border-radius: 4px !important;
  font-size: 16px !important;
}

.tree-sider .ant-menu-sub .ant-menu-item,
.tree-sider .ant-menu-sub .ant-menu-submenu-title {
  height: 42px !important;
  line-height: 42px !important;
  margin: 2px 0 !important;
  padding-left: 40px !important;
  font-size: 15px !important;
}

.tree-sider .ant-menu-submenu-open > .ant-menu-submenu-title {
  color: #263b54 !important;
  background: transparent !important;
}

.tree-sider .ant-menu-item-selected {
  position: relative;
  color: #2f6f9f !important;
  background: #eaf0f5 !important;
  box-shadow: none !important;
}

.tree-sider .ant-menu-item-selected::before {
  position: absolute;
  top: 11px;
  bottom: 11px;
  left: 0;
  width: 3px;
  background: #2f6f9f;
  border-radius: 0 3px 3px 0;
  content: '';
}

.tree-sider .ant-menu-item-active,
.tree-sider .ant-menu-submenu-title:hover {
  color: #263b54 !important;
  background: #f0f3f6 !important;
}

.organization-page { gap: 14px; }
.organization-page .page-title-row { min-height: 34px; }
.organization-page .page-title { font-size: 24px; line-height: 34px; font-weight: 680; }
.organization-page .page-title-row > .ant-tag { margin: 0; padding: 2px 8px; border-radius: 4px; }
.organization-overview { grid-template-columns: 1.2fr 1fr 1fr 1fr; animation: organization-reveal 0.36s cubic-bezier(0.16, 1, 0.3, 1) both; }
.organization-overview > div { padding: 13px 18px; }
.organization-overview strong { font-variant-numeric: tabular-nums; }
.organization-workspace { min-height: 460px; animation: organization-reveal 0.42s 0.05s cubic-bezier(0.16, 1, 0.3, 1) both; }
.organization-tree-panel { background: #f8fafc; }
.organization-tree-panel .ant-skeleton { padding: 6px 8px; }
.organization-tree-panel .ant-skeleton-paragraph > li { height: 26px; margin-top: 12px; border-radius: 4px; }
.organization-member-panel > .ant-skeleton { padding: 8px 6px; }
.organization-member-panel > .ant-skeleton .ant-skeleton-paragraph > li { height: 34px; margin-top: 13px; border-radius: 4px; }
.organization-member-panel .ant-table-thead > tr > th { padding-block: 13px !important; background: #f7f9fb !important; color: #40536c; font-size: 13px; }
.organization-member-panel .ant-table-tbody > tr > td { padding-block: 13px !important; font-size: 14px; transition: background-color 0.18s ease; }
.organization-member-panel .ant-table-tbody > tr:hover > td { background: #f5f8fa !important; }
.organization-display-table .ant-table-tbody > tr { cursor: pointer; }
.organization-display-table .ant-table-tbody > tr:hover > td { background: #edf6ff !important; }
.organization-view-user { display: inline-flex; align-items: center; gap: 5px; color: var(--wms-accent); font-weight: 600; white-space: nowrap; opacity: 0.78; transition: opacity 0.18s ease; }
.organization-display-table .ant-table-tbody > tr:hover .organization-view-user { opacity: 1; }
.user-row-highlighted > td { color: #12355b !important; background-color: #e6f4ff; font-weight: 600 !important; animation: user-row-focus 0.7s ease-in-out 5; }
.user-row-highlighted > td:first-child { box-shadow: inset 4px 0 0 var(--wms-accent); animation: user-row-focus 0.7s ease-in-out 5, user-row-focus-border 0.7s ease-in-out 5; }
.user-row-highlighted .member-name strong { animation: user-name-focus 0.7s ease-in-out 5; }
.user-row-highlighted:hover > td { background: #d9edff !important; }
@keyframes user-row-focus {
  0%, 100% { background-color: #e6f4ff; }
  50% { background-color: #91caff; }
}
@keyframes user-row-focus-border {
  0%, 100% { box-shadow: inset 4px 0 0 #1677ff; }
  50% { box-shadow: inset 9px 0 0 #69b1ff; }
}
@keyframes user-name-focus {
  0%, 100% { color: #12355b; }
  50% { color: #0958d9; }
}

@keyframes organization-reveal {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
  .organization-overview,
  .organization-workspace { animation: none; }
  .user-row-highlighted > td,
  .user-row-highlighted .member-name strong { animation: none; }
  .permission-group,
  .ant-btn { transition: none; }
}

@media (max-width: 900px) {
  .organization-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  .organization-overview { grid-template-columns: 1fr; }
  .organization-page .page-title-row { align-items: flex-start; }
}

/* Unified WMS workbench theme */
:root {
  --wms-accent: #1677ff;
  --wms-accent-strong: #0958d9;
  --wms-success: #16a34a;
  --wms-warning: #f59e0b;
  --wms-danger: #e5484d;
  --wms-info: #0ea5e9;
  --wms-canvas: #f3f5f7;
  --wms-surface: #ffffff;
  --wms-surface-soft: #f7f9fb;
  --wms-border: #dfe5ec;
  --wms-text: #18283d;
  --wms-text-secondary: #66758a;
}

body { color: var(--wms-text); background: var(--wms-canvas); font-size: 16px; }
.app-sider { background: #f7f9fb !important; border-color: var(--wms-border); }
.app-header, .cockpit-header { height: 54px; padding-inline: 20px; border-color: var(--wms-border); }
.app-header-title { color: var(--wms-text); font-size: 15px; font-weight: 680; }
.app-content, .cockpit-content { padding: 16px 18px 22px; background: var(--wms-canvas); }
.page-shell { gap: 14px; }
.page-title { color: var(--wms-text); font-size: 24px; line-height: 34px; font-weight: 680; letter-spacing: 0; }
.page-subtitle { color: var(--wms-text-secondary); font-size: 14px; line-height: 22px; }

.filter-panel,
.table-panel,
.form-panel,
.cockpit-card,
.quick-panel,
.inventory-card,
.home-panel,
.ant-card {
  background: var(--wms-surface);
  border-color: var(--wms-border);
  border-radius: 6px;
  box-shadow: none;
}

.filter-panel,
.table-panel,
.form-panel { padding: 16px 18px; }
.action-row { gap: 10px; }
.action-group { gap: 8px; }
.filter-panel .ant-form-item { margin-bottom: 12px; }
.filter-panel .ant-form-item-label > label,
.form-panel .ant-form-item-label > label,
.ant-modal .ant-form-item-label > label { color: #34465e; font-size: 15px; line-height: 22px; font-weight: 600; }
.filter-panel .ant-input,
.filter-panel .ant-select-selector,
.ant-modal .ant-input,
.ant-modal .ant-input-number,
.ant-modal .ant-select-selector { min-height: 40px; font-size: 15px; }

/* SN 列表搜索框：固定高度，文字与图标垂直居中，与右侧“搜索”按钮对齐 */
.ant-modal .sn-list-search.ant-input-affix-wrapper {
  box-sizing: border-box;
  height: 36px;
  min-height: 36px;
  padding-top: 0;
  padding-bottom: 0;
  align-items: center;
}
.ant-modal .sn-list-search.ant-input-affix-wrapper .ant-input {
  min-height: 0;
  height: auto;
  font-size: 14px;
  line-height: 22px;
  padding-top: 0;
  padding-bottom: 0;
}
.ant-modal .sn-list-search-btn.ant-btn {
  height: 36px;
}

.ant-table-wrapper .ant-table { color: #26384f; font-size: 15px; }
.ant-table-thead > tr > th { padding: 13px 14px !important; color: #43556c; background: var(--wms-surface-soft) !important; font-size: 14px; font-weight: 650 !important; }
.ant-table-tbody > tr > td { padding: 14px !important; font-size: 15px; font-weight: 450; }
.ant-table-tbody > tr:hover > td { background: #f5f8fa !important; }
.ant-table-tbody > tr.scan-hit > td { background: #fff7e6 !important; }
.ant-table-tbody > tr.scan-hit > td:first-child { box-shadow: inset 3px 0 0 #fa8c16; }
.ant-table-thead > tr > th.col-last { padding-right: 80px !important; }
.ant-table-tbody > tr > td.col-last { padding-right: 80px !important; }
.ant-table-wrapper .ant-table-container { border-color: var(--wms-border); }
.ant-pagination { margin-top: 16px !important; font-size: 14px; }
.ant-pagination .ant-pagination-item { border-radius: 4px; }
.ant-pagination .ant-pagination-item-active { border-color: var(--wms-accent); }
.ant-pagination .ant-pagination-item-active a { color: var(--wms-accent); }

.ant-btn { min-height: 38px; padding-inline: 15px; border-radius: 6px; font-size: 15px; font-weight: 600; }
.ant-btn-sm { min-height: 32px; padding-inline: 10px; font-size: 14px; }
.ant-tag { border-radius: 4px; }
.ant-card .ant-card-body { padding: 16px; }
.ant-statistic .ant-statistic-title { color: var(--wms-text-secondary); font-size: 14px; }
.ant-statistic .ant-statistic-content { color: var(--wms-text); font-variant-numeric: tabular-nums; }

.ant-modal .ant-modal-content { padding: 24px 28px 20px; border: 1px solid rgba(223, 229, 236, 0.9); box-shadow: 0 22px 54px rgba(31, 49, 70, 0.15); }
.ant-modal .ant-modal-header { margin-bottom: 18px; padding-bottom: 13px; border-color: var(--wms-border); }
.ant-modal .ant-modal-title { color: var(--wms-text); font-size: 18px; line-height: 26px; font-weight: 680; }
.ant-modal .ant-form-item { margin-bottom: 16px; }
.ant-modal .ant-modal-footer { margin-top: 18px; padding-top: 14px; border-color: var(--wms-border); }
.ant-modal .ant-modal-footer .ant-btn { min-width: 88px; height: 38px; border-radius: 6px; }

.home-panel { border-color: var(--wms-border); }
.home-panel-title { color: var(--wms-text); font-size: 16px; font-weight: 680; }
.quick-icon { background: var(--wms-accent); box-shadow: none; }
.quick-action { color: var(--wms-text); font-size: 14px; font-weight: 650; transition: color 0.2s ease, transform 0.2s cubic-bezier(0.16, 1, 0.3, 1); }
.quick-action:hover { color: var(--wms-accent); transform: translateY(-2px); }
.quick-action:active { transform: translateY(0) scale(0.98); }
.cockpit-banner { background: #356b94; }
.cockpit-banner::before { display: none; }

@media (max-width: 768px) {
  .app-content, .cockpit-content { padding: 12px; }
  .filter-panel, .table-panel, .form-panel { padding: 14px; }
  .page-title { font-size: 21px; line-height: 30px; }
  .ant-modal .ant-modal-content { padding: 20px; }
}

/* Vivid business color layer */
.page-title { position: relative; padding-left: 13px; }
.page-title::before { position: absolute; top: 6px; bottom: 6px; left: 0; width: 4px; background: var(--wms-accent); border-radius: 3px; content: ''; }
.app-header { justify-content: flex-end; border-bottom-color: #cfe1f7; }
.app-header > .ant-space > .anticon { color: var(--wms-accent); }

.ant-btn-primary:not(:disabled) { color: #fff; background: var(--wms-accent); border-color: var(--wms-accent); box-shadow: 0 5px 13px rgba(22, 119, 255, 0.2); }
.ant-btn-primary:not(:disabled):hover { background: var(--wms-accent-strong) !important; border-color: var(--wms-accent-strong) !important; box-shadow: 0 7px 16px rgba(22, 119, 255, 0.27); transform: translateY(-1px); }
.ant-btn-primary:not(:disabled):active { box-shadow: 0 2px 7px rgba(22, 119, 255, 0.18); transform: translateY(1px) scale(0.98); }
.ant-btn-default:not(:disabled):hover { color: var(--wms-accent); border-color: #69b1ff; background: #f0f7ff; }
.ant-switch.ant-switch-checked { background: var(--wms-accent); }
.ant-checkbox-checked .ant-checkbox-inner { background: var(--wms-accent); border-color: var(--wms-accent); }
.ant-tabs .ant-tabs-tab-active .ant-tabs-tab-btn { color: var(--wms-accent) !important; }

.ant-table-thead > tr > th { background: #f0f6ff !important; border-bottom-color: #cfe1f7 !important; }
.ant-pagination .ant-pagination-item-active { background: #e6f4ff; }
.filter-panel { border-top: 3px solid #91caff; }
.table-panel { border-top: 3px solid #69b1ff; }
.ant-modal .ant-modal-header { border-bottom-color: #cfe1f7; }
.ant-modal .ant-modal-footer .ant-btn-primary,
.organization-member-modal .ant-modal-footer .ant-btn-primary,
.organization-permission-modal .ant-modal-footer .ant-btn-primary { background: var(--wms-accent); border-color: var(--wms-accent); }

.tree-sider .ant-menu-item-selected { color: var(--wms-accent) !important; background: #e6f4ff !important; }
.tree-sider .ant-menu-item-selected::before { background: var(--wms-accent); }
.tree-sider .ant-menu-item-selected .tree-icon { color: var(--wms-accent) !important; }
.tree-sider .ant-menu-submenu-open > .ant-menu-submenu-title .tree-icon { color: var(--wms-info) !important; }

.quick-icon { background: var(--quick-color, var(--wms-accent)); box-shadow: 0 7px 15px color-mix(in srgb, var(--quick-color, var(--wms-accent)) 24%, transparent); }
.entry-icon { box-shadow: 0 6px 14px color-mix(in srgb, currentColor 22%, transparent); }
.entry-item { transition: color 0.2s ease, background-color 0.2s ease, transform 0.2s cubic-bezier(0.16, 1, 0.3, 1); }
.entry-item:hover { color: var(--wms-accent); background: #eaf4ff; transform: translateY(-2px); }
.cockpit-banner { background: var(--wms-accent); }

.home-stat-card { min-height: 154px; padding: 22px 26px; background: #f5f9ff; border: 1px solid #b8d8ff; border-top: 4px solid var(--wms-accent); border-radius: 6px; box-shadow: 0 7px 18px rgba(22, 119, 255, 0.08); }
.home-stat-card strong { margin-top: 18px; color: var(--wms-accent); font-size: 34px; font-weight: 680; }
.home-stat-card > .anticon { width: 52px; height: 52px; display: grid; place-items: center; color: var(--wms-accent); background: #dcecff; border-radius: 8px; font-size: 28px; opacity: 1; }
.home-stat-card:nth-child(2) { background: #f2fbf5; border-color: #b7e4c5; border-top-color: var(--wms-success); box-shadow: 0 7px 18px rgba(22, 163, 74, 0.08); }
.home-stat-card:nth-child(2) strong, .home-stat-card:nth-child(2) > .anticon { color: var(--wms-success); }
.home-stat-card:nth-child(2) > .anticon { background: #dcf6e5; }
.home-stat-card:nth-child(3) { background: #fff9ed; border-color: #f7d58b; border-top-color: var(--wms-warning); box-shadow: 0 7px 18px rgba(245, 158, 11, 0.09); }
.home-stat-card:nth-child(3) strong, .home-stat-card:nth-child(3) > .anticon { color: #d97706; }
.home-stat-card:nth-child(3) > .anticon { background: #ffedc3; }
.home-stat-card:nth-child(4) { background: #fff5f5; border-color: #f1b8bb; border-top-color: var(--wms-danger); box-shadow: 0 7px 18px rgba(229, 72, 77, 0.09); }
.home-stat-card:nth-child(4) strong, .home-stat-card:nth-child(4) > .anticon { color: var(--wms-danger); }
.home-stat-card:nth-child(4) > .anticon { background: #ffe1e2; }

.workflow-stat-row > .ant-col .ant-card { border-top: 3px solid var(--wms-accent); box-shadow: 0 5px 14px rgba(22, 119, 255, 0.07); }
.workflow-stat-row > .ant-col:nth-child(2) .ant-card { border-top-color: var(--wms-warning); }
.workflow-stat-row > .ant-col:nth-child(3) .ant-card { border-top-color: var(--wms-info); }
.workflow-stat-row > .ant-col:nth-child(4) .ant-card { border-top-color: #14b8a6; }
.workflow-stat-row > .ant-col:nth-child(5) .ant-card { border-top-color: var(--wms-success); }
.workflow-stat-row > .ant-col:nth-child(6) .ant-card { border-top-color: #f97316; }

.overview-icon { color: var(--wms-accent); background: #dcecff; }
.organization-overview > div:nth-child(2) .overview-icon { color: var(--wms-success); background: #dcf6e5; }
.organization-overview > div:nth-child(3) .overview-icon { color: var(--wms-danger); background: #ffe1e2; }
.organization-overview > div:nth-child(4) .overview-icon { color: var(--wms-info); background: #dff5ff; }
.organization-tree-panel .ant-tree-node-selected { color: var(--wms-accent); background: #e6f4ff !important; }
.member-avatar-fallback { color: #0958d9; background: #dcecff; }
.permission-toolbar strong { color: var(--wms-accent); }

/* Merged warehouse and access-management workbenches */
.warehouse-stat-icon {
  width: 24px;
  height: 24px;
  display: inline-block;
  object-fit: contain;
  vertical-align: -5px;
}

.warehouse-card-link {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  cursor: pointer;
  border-color: #c9d6e5;
  border-top: 3px solid #91caff;
  transition: transform 0.18s ease, border-color 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease;
}
.warehouse-card-grid { align-items: stretch; }
.warehouse-card-grid > .ant-col { display: flex; }
.warehouse-card-link .ant-card-head { min-height: 52px; padding-inline: 16px; }
.warehouse-card-link .ant-card-head-title { min-width: 0; padding-block: 12px; transition: color 0.18s ease; }
.warehouse-card-link .ant-card-body { display: flex; flex: 1; flex-direction: column; gap: 12px; padding: 14px 16px 16px; }
.warehouse-card-title { min-width: 0; display: flex; align-items: center; gap: 8px; }
.warehouse-card-title .ant-tag { flex: 0 0 auto; margin: 0; font-weight: 650; }
.warehouse-card-title strong { overflow: hidden; font-size: 17px; line-height: 24px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.warehouse-card-title .ant-tag { font-size: 13px; }
.warehouse-card-address { min-width: 0; display: flex; align-items: center; gap: 7px; color: #5f7086; font-size: 14px; line-height: 22px; }
.warehouse-card-address > .anticon { flex: 0 0 auto; color: #59799d; }
.warehouse-card-address > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.warehouse-card-metrics { margin-top: 1px; }
.warehouse-card-metric { min-height: 68px; padding: 9px 11px; background: #f4f8fd; border: 1px solid #dce8f5; border-left: 3px solid var(--wms-accent); border-radius: 4px; }
.warehouse-card-metrics > .ant-col:nth-child(2) .warehouse-card-metric { background: #f3faf7; border-color: #d8ece2; border-left-color: var(--wms-success); }
.warehouse-card-metric > span { display: block; margin-bottom: 5px; color: #5c6f86; font-size: 13px; line-height: 18px; font-weight: 600; }
.warehouse-card-metric > strong { color: #132943; font-size: 18px; line-height: 24px; font-weight: 700; font-variant-numeric: tabular-nums; }
.warehouse-card-metric small { color: #53677f; font-size: 13px; font-weight: 600; }
.warehouse-card-usage { padding-top: 1px; }
.warehouse-card-usage-head,
.warehouse-card-capacity { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.warehouse-card-usage-head { margin-bottom: 4px; color: #34465e; font-size: 14px; font-weight: 650; }
.warehouse-card-usage-head strong { font-size: 17px; font-weight: 700; font-variant-numeric: tabular-nums; }
.warehouse-card-capacity { margin-top: 3px; color: #728298; font-size: 13px; }
.warehouse-card-capacity strong { color: #52647a; font-weight: 600; font-variant-numeric: tabular-nums; }
.warehouse-card-contact { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 10px 18px; margin: auto -16px -16px; padding: 9px 16px; color: #52647a; background: #f7f9fc; border-top: 1px solid #e5eaf1; font-size: 13px; font-weight: 550; transition: background-color 0.18s ease; }
.warehouse-location-detail .ant-card-head-title { font-size: 15px; font-weight: 650; }
.warehouse-card-contact > span { min-width: 0; display: inline-flex; align-items: center; gap: 5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.warehouse-card-contact .anticon { flex: 0 0 auto; color: #6482a5; }
.warehouse-card-link:hover,
.warehouse-card-link:focus-visible {
  background: #f3f8ff;
  border-color: var(--wms-accent) !important;
  box-shadow: 0 8px 20px rgba(22, 119, 255, 0.16) !important;
  transform: translateY(-2px);
}
.warehouse-card-link:hover .ant-card-head,
.warehouse-card-link:focus-visible .ant-card-head { border-bottom-color: #b7d6ff; }
.warehouse-card-link:hover .ant-card-head-title,
.warehouse-card-link:focus-visible .ant-card-head-title { color: var(--wms-accent); }
.warehouse-card-link:hover .warehouse-card-contact,
.warehouse-card-link:focus-visible .warehouse-card-contact { background: #eaf3ff; }
.warehouse-card-link:focus-visible { outline: 2px solid rgba(22, 119, 255, 0.3); outline-offset: 2px; }
.warehouse-card-link:active { box-shadow: 0 3px 10px rgba(22, 119, 255, 0.14) !important; transform: translateY(0); }
.warehouse-back-fab {
  position: fixed;
  right: 30px;
  bottom: 28px;
  z-index: 20;
  width: 48px !important;
  min-width: 48px;
  height: 48px !important;
  min-height: 48px;
  padding: 0;
  box-shadow: 0 8px 22px rgba(22, 119, 255, 0.3);
}
.merged-tabs > .ant-tabs-nav {
  margin: 0;
  padding: 0 18px;
  background: var(--wms-surface);
  border: 1px solid var(--wms-border);
  border-radius: 6px;
}
.merged-tabs > .ant-tabs-content-holder { padding-top: 14px; }
.merged-page > .page-shell > .page-title-row { display: none; }
.merged-page > .page-shell { gap: 14px; }

.form-grid {
  display: grid;
  gap: 0 16px;
}

.form-grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.form-grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.form-grid-span-2 {
  grid-column: span 2;
}

.form-section-title {
  margin: 2px 0 14px;
  color: #14243d;
  font-size: 15px;
  font-weight: 700;
}

.order-form-section + .order-form-section {
  margin-top: 4px;
  padding-top: 4px;
}

.order-create-modal .ant-modal-body {
  max-height: none;
  overflow-y: visible;
  overflow-x: hidden;
  padding: 10px 24px 2px;
}
.order-create-form .ant-form-item { margin-bottom: 4px; }
.order-create-form .ant-form-item-label { padding-bottom: 2px; }
.order-create-form .ant-form-item-label > label { font-size: 14px; line-height: 20px; }
.order-create-form .form-section-title { margin: 0 0 4px; font-size: 14px; }
.order-detail-scroll {
  --order-detail-cols: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.35fr) 32px;
  max-height: 120px;
  overflow-y: auto;
  margin-bottom: 10px;
  padding: 2px 6px 2px 0;
  scrollbar-gutter: stable;
}
.order-detail-entry {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 8px 12px;
  border: 1px solid #dbe7f4;
  border-radius: 6px;
  background: #f8fbff;
}
.order-detail-entry .form-section-title { margin: 0 0 2px; }
.order-detail-entry span { color: #71839a; font-size: 12px; }
.order-detail-modal .ant-modal-body { padding: 16px 18px 8px; }
.order-detail-modal .order-detail-scroll { max-height: 300px; overflow-y: auto; overflow-x: hidden; margin-bottom: 8px; padding-right: 6px; }
.order-detail-modal .ant-modal-footer { margin-top: 12px; }

.order-line-row {
  display: grid;
  grid-template-columns: var(--order-detail-cols);
  gap: 10px;
  align-items: start;
  box-sizing: border-box;
  margin-bottom: 2px;
  padding: 10px;
  border: 1px solid #dbe7f4;
  background: #f8fbff;
}

.inbound-forecast-lines-scroll {
  max-height: min(340px, calc(100vh - 520px));
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 2px 6px 2px 0;
  scrollbar-gutter: stable;
}

.inbound-forecast-lines-scroll .order-line-row {
  margin-right: 2px;
}

.inbound-check-line {
  display: grid;
  grid-template-columns: minmax(130px, 1.2fr) minmax(190px, 1.8fr) minmax(130px, 1.2fr) repeat(3, minmax(90px, 0.8fr)) minmax(130px, 1.2fr) 48px;
  gap: 10px;
  align-items: end;
  margin-bottom: 8px;
  padding: 10px;
  border: 1px solid #dbe7f4;
  background: #f8fbff;
}

.inbound-check-line .ant-form-item { margin-bottom: 0; }

.receiving-summary { margin-bottom: 18px; }
.receiving-photo-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.receiving-photo-grid .photo-field { grid-template-columns: 132px 1fr; }
.inbound-check-review-line {
  display: grid;
  grid-template-columns: minmax(150px, 1.25fr) minmax(100px, 0.7fr) minmax(120px, 0.9fr) minmax(120px, 0.9fr) minmax(130px, 1fr);
  gap: 10px;
  align-items: end;
  margin-bottom: 8px;
  padding: 10px;
  border: 1px solid #dbe7f4;
  background: #f8fbff;
}
.inbound-check-review-line .ant-form-item { margin-bottom: 0; }

.selected-sn-count {
  color: #1677ff;
  white-space: nowrap;
  cursor: help;
  border-bottom: 1px dashed #91caff;
}
.selected-sn-count:focus-visible {
  outline: 2px solid #91caff;
  outline-offset: 2px;
}
.selected-sn-list {
  width: 260px;
  max-height: 300px;
  overflow-y: auto;
  color: #334155;
  font-family: "JetBrains Mono", "SFMono-Regular", Consolas, monospace;
  font-size: 12px;
  line-height: 24px;
  font-variant-numeric: tabular-nums;
}
.selected-sn-list > div + div { border-top: 1px solid #eef2f7; }
.quantity-action-field {
  display: grid;
  gap: 8px;
  margin-top: 18px;
}
.quantity-action-field label {
  color: #334155;
  font-weight: 700;
}

.order-detail-head {
  --order-detail-cols: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.35fr) 32px;
  display: grid;
  grid-template-columns: var(--order-detail-cols);
  gap: 10px;
  align-items: center;
  min-height: 24px;
  padding: 0 10px 5px;
  color: #405a77;
  font-size: 12px;
  font-weight: 700;
  box-sizing: border-box;
}
.order-detail-head i { color: #e65050; font-style: normal; }
.order-line-row .ant-form-item { display: block; margin: 0; min-width: 0; width: 100%; }
.order-line-row > .ant-form-item { height: auto; min-height: 0; }
.order-line-row > .ant-form-item .ant-form-item-control,
.order-line-row > .ant-form-item .ant-form-item-control-input,
.order-line-row > .ant-form-item .ant-form-item-control-input-content { height: auto; min-height: 40px; }
.order-line-row > .ant-form-item .ant-form-item-control-input { min-height: 40px; }
.order-line-row .ant-form-item-control,
.order-line-row .ant-form-item-control-input,
.order-line-row .ant-form-item-control-input-content { min-width: 0; width: 100%; }
.order-line-row .ant-select,
.order-line-row .ant-input-number,
.order-line-row .ant-input { width: 100%; }

.order-line-row > .ant-btn {
  margin-bottom: 4px;
}

.modal-footer-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 8px;
  padding-top: 0;
}

@media (max-width: 900px) {
  .form-grid-2,
  .form-grid-3 { grid-template-columns: 1fr; }
  .form-grid-span-2 { grid-column: auto; }
  .order-detail-head { display: none; }
  .order-line-row { grid-template-columns: 1fr; gap: 4px; padding: 8px; }
  .order-line-row > .ant-btn { justify-self: end; }
  .order-detail-entry { align-items: flex-start; flex-direction: column; }
  .inbound-check-line { grid-template-columns: 1fr 1fr; }
  .receiving-photo-grid { grid-template-columns: 1fr; }
  .inbound-check-review-line { grid-template-columns: 1fr 1fr; }
}
.quantity-difference { font-variant-numeric: tabular-nums; }
.quantity-difference.is-different { color: var(--wms-danger); font-weight: 700; }
.difference-input .ant-input-number-input { color: var(--wms-danger); font-weight: 700; }

@media (prefers-reduced-motion: reduce) {
  .entry-item,
  .quick-action,
  .warehouse-card-link,
  .ant-btn { transform: none !important; }
}

/* Alignment pass: tree, forms, search bars and dashboard filters */
.search-panel-grid { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px; align-items: end; }
.search-panel-fields { min-width: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; align-items: end; }
.search-panel-grid .ant-form-item { min-width: 0; margin-bottom: 0 !important; }
.search-panel-grid .ant-form-item-label { padding-bottom: 7px; }
.search-panel-grid .ant-input-affix-wrapper,
.search-panel-grid .ant-select,
.search-panel-grid .ant-picker,
.search-panel-grid .ant-select-selector {
  width: 100%;
  height: 42px !important;
  min-height: 42px !important;
  box-sizing: border-box;
}
.search-panel-grid .ant-input-affix-wrapper,
.search-panel-grid .ant-picker {
  padding-top: 0;
  padding-bottom: 0;
}
.search-panel-grid .ant-input-affix-wrapper > .ant-input {
  height: auto !important;
  min-height: 0 !important;
  padding-top: 0;
  padding-bottom: 0;
  line-height: 40px;
}
.search-panel-grid .ant-select-single {
  height: 42px !important;
}
.search-panel-grid .ant-select-single .ant-select-selector {
  display: flex;
  align-items: center;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.search-panel-grid .ant-select-single .ant-select-selection-item,
.search-panel-grid .ant-select-single .ant-select-selection-placeholder {
  line-height: 40px;
}
.search-panel-grid .ant-select-single .ant-select-selection-search-input {
  height: 40px !important;
}
.search-panel-actions { height: 42px; display: flex; align-items: stretch; gap: 8px; padding-bottom: 0; white-space: nowrap; }
.search-panel-actions .ant-btn { height: 42px; min-height: 42px; }

.organization-tree-panel .ant-tree { font-size: 14px; }
.organization-tree-panel .ant-tree-indent-unit { width: 18px; }
.organization-tree-panel .ant-tree-treenode { min-height: 38px; align-items: center; padding: 1px 0; }
.organization-tree-panel .ant-tree-switcher { width: 22px; height: 38px; display: inline-grid; place-items: center; line-height: 38px; }
.organization-tree-panel .ant-tree-node-content-wrapper { width: calc(100% - 24px); min-width: 0; min-height: 36px; display: inline-flex; align-items: center; padding: 0 7px; line-height: 36px; }
.organization-tree-panel .ant-tree-title { min-width: 0; flex: 1; }
.department-tree-title { min-width: 0; height: 36px; }
.department-tree-label { min-width: 0; display: inline-flex; align-items: center; gap: 8px; }
.department-tree-label > .anticon { flex: 0 0 auto; color: #44617f; font-size: 14px; }
.department-tree-label > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.department-tree-title em { flex: 0 0 auto; color: #3f6285; background: #e4edf6; }
.organization-tree-panel .ant-tree-node-selected .department-tree-label > .anticon { color: var(--wms-accent); }

.member-editor-layout { grid-template-columns: 190px minmax(0, 1fr); gap: 24px; align-items: start; }
.member-profile-summary { width: 190px; align-self: start; padding: 20px 16px; border: 1px solid #d8e4f0; border-radius: 6px; }
.member-profile-summary .ant-upload-wrapper,
.member-profile-summary .ant-upload-select { width: 100%; display: block; }
.member-profile-summary .ant-upload-select .ant-btn { width: 100%; justify-content: center; }
.member-editor-form { padding-top: 0; }
.member-editor-form .ant-row { align-items: start; }
.member-editor-form .ant-form-item-label { padding-bottom: 7px; }
.member-editor-form .ant-form-item { margin-bottom: 16px; }
.member-editor-form .ant-select,
.member-editor-form .ant-select-selector { width: 100%; }

.permission-grid { grid-auto-rows: 1fr; align-items: stretch; }
.permission-group { height: 100%; }
.permission-toolbar .ant-btn { min-width: 54px; }
.permission-member-bar { min-height: 50px; }

.user-editor-modal .ant-modal-body { display: block; }
.user-editor-modal .ant-form-item { margin-bottom: 16px; }
.user-editor-modal .ant-form-item-label { padding-bottom: 7px; }
.user-editor-modal .ant-input,
.user-editor-modal .ant-select,
.user-editor-modal .ant-select-selector { width: 100%; }

.tracking-filter-row { grid-template-columns: minmax(420px, 1.45fr) minmax(170px, 0.55fr) minmax(260px, 1fr) auto; gap: 12px; align-items: end; padding: 14px 8px; }
.tracking-filter-row > div { min-width: 0; }
.tracking-filter-row label { margin-bottom: 7px; font-size: 15px; line-height: 22px; }
.tracking-filter-row .ant-input-affix-wrapper,
.tracking-filter-row .ant-select,
.tracking-filter-row .ant-select-selector,
.tracking-filter-row .tag-buttons .ant-btn,
.tracking-refresh-field .ant-btn { height: 38px !important; font-size: 15px; }
.tracking-filter-row .ant-input-affix-wrapper { padding-top: 0; padding-bottom: 0; }
.tracking-filter-row .ant-input-affix-wrapper > .ant-input {
  height: auto !important;
  min-height: 0 !important;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 15px;
  line-height: 36px;
}
.tracking-filter-row .ant-select-single .ant-select-selector {
  display: flex;
  align-items: center;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.tracking-filter-row .ant-select-single .ant-select-selection-item,
.tracking-filter-row .ant-select-single .ant-select-selection-placeholder { line-height: 36px; }
.tracking-filter-row .ant-select-single .ant-select-selection-search-input { height: 36px !important; }
.tracking-type-select { width: 100%; }
.tag-buttons { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
.tracking-refresh-field { align-self: end; }
.tracking-refresh-field .ant-btn { min-width: 84px; }
.tracking-table-title { height: 40px; justify-content: flex-start; padding-inline: 8px; }

@media (max-width: 1180px) {
  .tracking-filter-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tracking-refresh-field { justify-self: end; }
}

@media (max-width: 760px) {
  .search-panel-grid { grid-template-columns: 1fr; }
  .search-panel-fields { grid-template-columns: 1fr; }
  .search-panel-actions { justify-content: flex-end; }
  .tracking-filter-row { grid-template-columns: 1fr; }
  .tracking-refresh-field { width: 100%; justify-self: stretch; }
  .tracking-refresh-field .ant-btn { width: 100%; }
  .warehouse-back-fab { right: 18px; bottom: 18px; }
  .member-profile-summary { width: 100%; }
}

/* Outbound workbench: keep the operator's next action visually dominant. */
.outbound-work-modal-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-right: 22px;
}
.outbound-work-modal-title > div { display: grid; gap: 2px; }
.outbound-kicker {
  color: #71839a;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.outbound-work-modal-title strong { color: #102b4e; font-size: 18px; }
.outbound-work-form { padding-top: 2px; }
.outbound-work-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-bottom: 16px;
  overflow: hidden;
  border: 1px solid #dbe6f1;
  background: #dbe6f1;
  border-radius: 6px;
}
.outbound-work-summary > div {
  display: grid;
  gap: 5px;
  min-height: 64px;
  padding: 11px 14px;
  background: #f8fbff;
}
.outbound-work-summary span { color: #71839a; font-size: 12px; }
.outbound-work-summary strong { color: #123258; font-size: 15px; }
.outbound-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 20px 0 10px;
}
.outbound-section-heading > div { display: grid; gap: 2px; }
.outbound-section-heading span { color: #123258; font-size: 16px; font-weight: 800; }
.outbound-section-heading small { color: #71839a; font-size: 12px; }
.outbound-pick-lines { display: grid; gap: 10px; }
.outbound-pick-line {
  padding: 14px 16px 8px;
  border: 1px solid #dbe6f1;
  border-radius: 6px;
  background: #fff;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.outbound-pick-line:focus-within {
  border-color: #8eb8e8;
  box-shadow: 0 4px 14px rgba(34, 89, 145, .08);
}
.outbound-pick-line-head,
.outbound-pick-line-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.outbound-pick-line-head > div { display: grid; gap: 3px; min-width: 0; }
.outbound-pick-line-head strong { overflow: hidden; color: #17385f; text-overflow: ellipsis; white-space: nowrap; }
.outbound-pick-line-head span { color: #71839a; font-family: "JetBrains Mono", Consolas, monospace; font-size: 12px; }
.outbound-pick-line-meta { justify-content: flex-start; flex-wrap: wrap; margin: 11px 0 3px; color: #687d96; font-size: 12px; }
.outbound-pick-line-meta span { display: inline-flex; align-items: center; gap: 4px; }
.outbound-pick-line-meta b { color: #17385f; font-weight: 800; }
.outbound-difference { color: #c94545 !important; }
.outbound-pick-line .ant-progress { margin: 0 0 10px; }
.outbound-pick-inputs {
  display: grid;
  grid-template-columns: minmax(130px, .55fr) minmax(250px, 1.45fr) minmax(180px, 1fr);
  gap: 12px;
  align-items: end;
}
.outbound-pick-inputs .ant-form-item { margin-bottom: 8px; }
.outbound-pick-inputs .ant-form-item-label { padding-bottom: 5px; }
.outbound-pick-inputs .ant-form-item-label > label { color: #4d6682; font-size: 12px; font-weight: 700; }
.outbound-sn-field .anticon { margin-right: 4px; color: #3378d4; }
.outbound-no-sn-hint {
  display: grid;
  align-content: center;
  min-height: 66px;
  padding: 10px 12px;
  border: 1px dashed #cbd8e6;
  border-radius: 5px;
  background: #f8fbff;
}
.outbound-no-sn-hint span { color: #49647f; font-size: 13px; font-weight: 700; }
.outbound-no-sn-hint small { color: #8293a7; font-size: 12px; }

.outbound-allocation-caption { margin-bottom: 12px; color: #61758d; font-size: 13px; }
.outbound-allocation-caption strong { color: #17385f; }
.shipping-check-section + .shipping-check-section { margin-top: 18px; }
.shipping-check-heading { margin-bottom: 9px; color: #17385f; font-size: 14px; font-weight: 800; }
.shipping-submit-section { padding-top: 2px; }
.shipping-submit-section .form-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.shipping-submit-section .form-grid-2 > .ant-form-item { width: 100%; min-width: 0; }
.shipping-submit-section .form-grid-2 .ant-form-item-control,
.shipping-submit-section .form-grid-2 .ant-form-item-control-input,
.shipping-submit-section .form-grid-2 .ant-form-item-control-input-content,
.shipping-submit-section .form-grid-2 .ant-input,
.shipping-submit-section .form-grid-2 .ant-picker { width: 100%; }
.shipping-submit-section .shipping-date-item,
.shipping-submit-section .shipping-date-item .ant-form-item-control,
.shipping-submit-section .shipping-date-picker { min-width: 0; width: 100% !important; }
.shipping-submit-section .shipping-date-picker { height: 40px; box-sizing: border-box; }
.review-order-modal .ant-modal-content {
  max-height: calc(100vh - 24px);
  display: flex;
  flex-direction: column;
}
.review-order-modal .ant-modal-body {
  min-height: 0;
  overflow-y: auto;
}
.review-order-modal,
.shipping-check-modal {
  max-width: calc(100vw - 32px);
}
.review-order-modal .ant-table-wrapper,
.shipping-check-modal .ant-table-wrapper {
  overflow-x: hidden;
}
.review-order-modal .ant-table-thead > tr > th,
.shipping-check-modal .ant-table-thead > tr > th {
  white-space: nowrap;
}

@media (max-width: 760px) {
  .outbound-work-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .outbound-pick-inputs { grid-template-columns: 1fr; gap: 4px; }
  .outbound-pick-line-head,
  .outbound-pick-line-meta { align-items: flex-start; flex-direction: column; }
  .shipping-check-section .ant-descriptions-item-label,
  .shipping-check-section .ant-descriptions-item-content { padding: 8px; }
}
.order-create-footer {
  margin: 0;
  padding: 8px 22px 0;
}

.table-progress {
  display: grid;
  gap: 2px;
  min-width: 0;
  line-height: 18px;
}
.table-progress > span,
.table-progress > small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.table-progress > small { color: #8293a7; font-size: 12px; }
.putaway-assemble-layout {
  display: flex;
  gap: 16px;
  align-items: flex-start;
}
.putaway-source-panel { flex: 1 1 auto; min-width: 0; }
.putaway-side-panel {
  width: 340px;
  flex: 0 0 340px;
  min-width: 0;
  padding-left: 16px;
  border-left: 1px solid #f0f0f0;
}
.putaway-pagination {
  display: flex;
  min-height: 52px;
  align-items: center;
  justify-content: flex-end;
  padding-top: 12px;
  border-top: 1px solid var(--wms-border);
}
.putaway-location-tag { margin-inline-end: 0; }
.putaway-goods-tags { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.putaway-goods-tags .ant-tag { margin: 0; }
.putaway-target-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
  padding: 10px 12px;
  border: 1px solid var(--wms-border);
  border-left: 3px solid #91caff;
  border-radius: 6px;
  background: var(--wms-surface-soft);
}
.putaway-target-summary span { color: var(--wms-text-secondary); font-size: 13px; }
.putaway-target-summary strong { color: var(--wms-text); }
.putaway-container-goods {
  display: grid;
  gap: 8px;
  margin-bottom: 14px;
  padding: 10px 12px;
  border: 1px solid var(--wms-border);
  border-radius: 6px;
  background: var(--wms-surface-soft);
}
.putaway-container-goods > span { color: var(--wms-text-secondary); font-size: 13px; }
.wms-responsive-table,
.wms-responsive-table .ant-table-container,
.wms-responsive-table .ant-table-content {
  min-width: 0;
  max-width: 100%;
  overflow-x: hidden !important;
}
.wms-responsive-table .ant-table {
  table-layout: fixed;
}
.wms-responsive-table .ant-table-cell {
  overflow: hidden;
  text-overflow: ellipsis;
}

.warehouse-console-summary { margin: 0 !important; }
.warehouse-console-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
  min-width: 0;
  padding: 4px 0;
  position: sticky;
  top: -16px;
  z-index: 20;
  background: var(--wms-canvas);
}
.warehouse-console-toolbar > .ant-select { flex: 0 1 360px; min-width: 0; height: 36px; }
.warehouse-console-toolbar > .ant-btn { flex: 0 0 36px; width: 36px; height: 36px; min-height: 36px; padding: 0; }
.warehouse-console-page > .table-panel {
  border-top: 3px solid #91caff;
}
.warehouse-console-metric {
  display: flex;
  min-height: 76px;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 16px;
  background: var(--wms-surface);
  border: 1px solid var(--wms-border);
  border-top: 3px solid #91caff;
  border-radius: 6px;
}
.warehouse-console-metric span { color: var(--wms-text-secondary); font-size: 14px; }
.warehouse-console-metric strong { color: var(--wms-text); font-size: 24px; line-height: 1; font-variant-numeric: tabular-nums; }
.warehouse-console-detail { min-width: 0; }
.warehouse-console-detail-actions { display: flex; justify-content: flex-end; gap: 8px; margin: 14px 0 18px; }
.warehouse-console-detail .form-section-title { margin: 0 0 10px; color: var(--wms-text); font-size: 15px; font-weight: 680; }
.warehouse-console-map { display: flex; flex-direction: column; gap: 18px; margin-top: 18px; }
.warehouse-console-map-legend { display: flex; flex-wrap: wrap; gap: 12px 18px; color: var(--wms-text-secondary); font-size: 13px; }
.warehouse-console-map-legend > span { display: inline-flex; align-items: center; gap: 6px; }
.warehouse-location-swatch { width: 12px; height: 12px; border: 1px solid transparent; border-radius: 3px; }
.warehouse-location-swatch.is-free, .warehouse-console-location.is-free { background: #f0f5ff; border-color: #adc6ff; }
.warehouse-location-swatch.is-normal, .warehouse-console-location.is-normal { background: #f6ffed; border-color: #b7eb8f; }
.warehouse-location-swatch.is-warning, .warehouse-console-location.is-warning { background: #fff7e6; border-color: #ffd591; }
.warehouse-location-swatch.is-danger, .warehouse-console-location.is-danger { background: #fff1f0; border-color: #ffa39e; }
.warehouse-location-swatch.is-frozen, .warehouse-console-location.is-frozen { background: #fff7e6; border-color: #d3adf7; }
.warehouse-console-zone { padding-top: 2px; }
.warehouse-console-zone + .warehouse-console-zone { border-top: 1px solid var(--wms-border); padding-top: 18px; }
.warehouse-console-zone-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; color: var(--wms-text-secondary); font-size: 13px; }
.warehouse-console-zone-heading > div { display: flex; align-items: center; gap: 8px; }
.warehouse-console-zone-heading strong { color: var(--wms-text); font-size: 16px; }
.warehouse-console-location-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(132px, 1fr)); gap: 10px; }
.warehouse-console-location { display: flex; min-height: 84px; flex-direction: column; align-items: flex-start; justify-content: center; gap: 4px; padding: 10px 12px; border: 1px solid; border-radius: 5px; color: var(--wms-text); cursor: pointer; text-align: left; transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease; }
.warehouse-console-location:hover { transform: translateY(-2px); box-shadow: 0 5px 14px rgba(31, 44, 71, 0.11); }
.warehouse-console-location:focus-visible { outline: 2px solid var(--wms-accent); outline-offset: 2px; }
.warehouse-console-location strong { overflow: hidden; max-width: 100%; color: #17385f; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.warehouse-console-location span { color: #40536c; font-size: 16px; font-weight: 700; line-height: 18px; }
.warehouse-console-location small { overflow: hidden; max-width: 100%; color: #718198; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.warehouse-console-location.is-disabled { background: #f5f5f5; border-color: #d9d9d9; color: #8c8c8c; cursor: default; }
.warehouse-console-location.is-disabled strong, .warehouse-console-location.is-disabled span { color: #8c8c8c; }
.warehouse-console-location.is-selected { border-color: var(--wms-accent); box-shadow: 0 0 0 2px rgba(22, 119, 255, 0.18); }
.warehouse-console-map-empty { padding: 56px 20px; color: var(--wms-text-secondary); text-align: center; }

.theme-toggle-button { width: 40px; height: 40px; margin-right: 8px; color: var(--wms-text-secondary); border-radius: 6px; font-size: 18px; }
.theme-toggle-button:hover { color: var(--wms-accent) !important; background: color-mix(in srgb, var(--wms-accent) 10%, transparent) !important; }

[data-theme='dark'] {
  --wms-canvas: #111821;
  --wms-surface: #17212d;
  --wms-surface-soft: #1c2735;
  --wms-border: #2b3949;
  --wms-text: #e6edf5;
  --wms-text-secondary: #9aaabd;
}
[data-theme='dark'] body { color: var(--wms-text); background: var(--wms-canvas); }
[data-theme='dark'] .app-layout,
[data-theme='dark'] .app-main-layout,
[data-theme='dark'] .app-content,
[data-theme='dark'] .cockpit-content { background: var(--wms-canvas); }
[data-theme='dark'] .app-header,
[data-theme='dark'] .cockpit-header { background: #151e2a !important; border-bottom-color: var(--wms-border); }
[data-theme='dark'] .app-sider { background: #111a24 !important; border-right-color: var(--wms-border); }
[data-theme='dark'] .tree-sider .ant-menu,
[data-theme='dark'] .tree-sider .ant-menu-submenu-title { background: transparent; color: #c6d2df; }
[data-theme='dark'] .tree-sider .ant-menu-item:hover,
[data-theme='dark'] .tree-sider .ant-menu-submenu-title:hover { background: #1b2a3a; color: #e6edf5; }
[data-theme='dark'] .tree-sider .ant-menu-item-selected { background: #1c3b5c !important; color: #91caff !important; }
[data-theme='dark'] .tree-sider .ant-menu-item-selected .tree-icon { color: #91caff !important; }
[data-theme='dark'] .side-search { background: transparent; border-color: var(--wms-border); }
[data-theme='dark'] .side-search .ant-input { color: var(--wms-text); }
[data-theme='dark'] .side-search .ant-input::placeholder { color: #718198; }
[data-theme='dark'] .filter-panel,
[data-theme='dark'] .table-panel,
[data-theme='dark'] .form-panel,
[data-theme='dark'] .cockpit-card,
[data-theme='dark'] .quick-panel,
[data-theme='dark'] .inventory-card,
[data-theme='dark'] .home-panel,
[data-theme='dark'] .ant-card { background: var(--wms-surface); border-color: var(--wms-border); }
[data-theme='dark'] .ant-table,
[data-theme='dark'] .ant-table-container,
[data-theme='dark'] .ant-table-thead > tr > th,
[data-theme='dark'] .ant-table-tbody > tr > td { border-color: var(--wms-border); }
[data-theme='dark'] .ant-table-thead > tr > th { background: #1c2735 !important; color: #dce6f0; }
[data-theme='dark'] .ant-table-tbody > tr > td { background: var(--wms-surface); color: #d1dbe7; }
[data-theme='dark'] .ant-table-tbody > tr:hover > td { background: #223247 !important; }
[data-theme='dark'] .ant-input,
[data-theme='dark'] .ant-input-number,
[data-theme='dark'] .ant-select-selector,
[data-theme='dark'] .ant-picker,
[data-theme='dark'] .ant-input-affix-wrapper { background: #1a2633 !important; border-color: #3a4a5d !important; color: var(--wms-text); }
[data-theme='dark'] .ant-input::placeholder,
[data-theme='dark'] .ant-select-selection-placeholder { color: #7f91a6; }
[data-theme='dark'] .ant-form-item-label > label,
[data-theme='dark'] .ant-descriptions-item-label { color: #aebdcd; }
[data-theme='dark'] .ant-descriptions-bordered .ant-descriptions-item-label,
[data-theme='dark'] .ant-descriptions-bordered .ant-descriptions-item-content { border-color: var(--wms-border); }
[data-theme='dark'] .ant-descriptions-bordered .ant-descriptions-item-label { background: #1c2735; }
[data-theme='dark'] .ant-descriptions-bordered .ant-descriptions-item-content { background: var(--wms-surface); color: #dce6f0; }
[data-theme='dark'] .ant-modal-content,
[data-theme='dark'] .ant-drawer-content,
[data-theme='dark'] .ant-drawer-header,
[data-theme='dark'] .ant-drawer-body { background: var(--wms-surface); border-color: var(--wms-border); }
[data-theme='dark'] .ant-modal-header,
[data-theme='dark'] .ant-modal-footer,
[data-theme='dark'] .ant-drawer-header { border-color: var(--wms-border); }
[data-theme='dark'] .ant-dropdown,
[data-theme='dark'] .ant-select-dropdown,
[data-theme='dark'] .ant-picker-dropdown,
[data-theme='dark'] .ant-popover-inner { background: #1a2633; border-color: var(--wms-border); }
[data-theme='dark'] .ant-dropdown-menu,
[data-theme='dark'] .ant-select-item { background: transparent; color: #dce6f0; }
[data-theme='dark'] .ant-dropdown-menu-item:hover,
[data-theme='dark'] .ant-select-item-option-active { background: #26394d; }
[data-theme='dark'] .ant-tabs-tab { color: #9aaabd; }
[data-theme='dark'] .ant-tabs-tab-active .ant-tabs-tab-btn { color: #91caff !important; }
[data-theme='dark'] .ant-pagination-item { background: var(--wms-surface); border-color: var(--wms-border); }
[data-theme='dark'] .ant-pagination-item a { color: #c6d2df; }
[data-theme='dark'] .warehouse-console-metric { background: var(--wms-surface); border-color: var(--wms-border); }
[data-theme='dark'] .warehouse-console-page > .page-title-row,
[data-theme='dark'] .warehouse-console-page > .table-panel { border-top-color: #5d9edb; }
[data-theme='dark'] .warehouse-console-metric { border-top-color: #5d9edb; }
[data-theme='dark'] .warehouse-console-zone + .warehouse-console-zone { border-color: var(--wms-border); }
[data-theme='dark'] .warehouse-console-zone-heading strong,
[data-theme='dark'] .warehouse-console-location strong { color: #17385f; }
[data-theme='dark'] .compact-nav-popup-content { background: #1a2633; border-color: var(--wms-border); }

/* Sidebar text has several legacy !important rules, so these selectors intentionally
   carry the dark-mode override at the same priority. */
[data-theme='dark'] .tree-sider .ant-menu-item,
[data-theme='dark'] .tree-sider .ant-menu-submenu-title,
[data-theme='dark'] .tree-sider .ant-menu-title-content,
[data-theme='dark'] .tree-sider .ant-menu-sub .ant-menu-item,
[data-theme='dark'] .tree-sider .ant-menu-sub .ant-menu-submenu-title { color: #dce6f0 !important; }
[data-theme='dark'] .tree-sider .ant-menu-submenu-open > .ant-menu-submenu-title,
[data-theme='dark'] .tree-sider .ant-menu-submenu-open > .ant-menu-submenu-title .ant-menu-title-content { color: #91caff !important; }
[data-theme='dark'] .tree-sider .ant-menu-item-selected,
[data-theme='dark'] .tree-sider .ant-menu-item-selected .ant-menu-title-content { color: #b7d9ff !important; background: #1c3b5c !important; }
[data-theme='dark'] .tree-sider .ant-menu-item-selected::before { background: #69b1ff !important; }
[data-theme='dark'] .tree-sider .ant-menu-item-active,
[data-theme='dark'] .tree-sider .ant-menu-submenu-title:hover { color: #e6edf5 !important; background: #25384d !important; }
[data-theme='dark'] .tree-sider .ant-menu-submenu-arrow { color: #9aaabd !important; }
[data-theme='dark'] .sider-collapse-button { color: #b7c6d7 !important; }
[data-theme='dark'] .sider-collapse-button:hover { color: #91caff !important; background: #1c3b5c !important; }
[data-theme='dark'] .side-search .ant-input-affix-wrapper { background: #1a2633 !important; border-color: #3a4a5d !important; }
[data-theme='dark'] .side-search .ant-input-affix-wrapper:focus-within { border-color: #91caff !important; box-shadow: 0 0 0 2px #91caff20; }
[data-theme='dark'] .side-search .ant-input,
[data-theme='dark'] .side-search .ant-input::placeholder,
[data-theme='dark'] .side-search .anticon { color: #b7c6d7 !important; }
[data-theme='dark'] .compact-nav-button { color: #b7c6d7; }
[data-theme='dark'] .compact-nav-button:hover { color: #91caff; background: #25384d; }
[data-theme='dark'] .compact-nav-button.is-active { color: #b7d9ff; background: #1c3b5c; box-shadow: inset 3px 0 0 #69b1ff; }
[data-theme='dark'] .compact-nav-popup .ant-popover-inner { background: #1a2633 !important; border-color: #3a4a5d !important; }
[data-theme='dark'] .compact-nav-popup-title { color: #e6edf5; border-bottom-color: #3a4a5d; }
[data-theme='dark'] .compact-nav-popup .ant-menu-item,
[data-theme='dark'] .compact-nav-popup .ant-menu-title-content { color: #dce6f0 !important; }
[data-theme='dark'] .compact-nav-popup .ant-menu-item:hover { color: #e6edf5 !important; background: #25384d !important; }
[data-theme='dark'] .compact-nav-popup .ant-menu-item-selected { color: #b7d9ff !important; background: #1c3b5c !important; }

/* Dark mode compatibility layer for legacy page-specific surfaces. */
[data-theme='dark'] .app-layout,
[data-theme='dark'] .app-main-layout,
[data-theme='dark'] .app-header,
[data-theme='dark'] .app-sider,
[data-theme='dark'] .app-content,
[data-theme='dark'] .page-shell,
[data-theme='dark'] .filter-panel,
[data-theme='dark'] .table-panel,
[data-theme='dark'] .form-panel,
[data-theme='dark'] .ant-card,
[data-theme='dark'] .ant-modal-content,
[data-theme='dark'] .ant-drawer-content,
[data-theme='dark'] .ant-dropdown,
[data-theme='dark'] .ant-popover-inner {
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, box-shadow 180ms ease;
}
[data-theme='dark'] .warehouse-card-link { background: var(--wms-surface) !important; border-color: var(--wms-border); border-top-color: #5d9edb; }
[data-theme='dark'] .warehouse-card-title strong,
[data-theme='dark'] .warehouse-card-metric > strong,
[data-theme='dark'] .warehouse-card-usage-head,
[data-theme='dark'] .warehouse-card-capacity strong { color: #e6edf5; }
[data-theme='dark'] .warehouse-card-address,
[data-theme='dark'] .warehouse-card-metric > span,
[data-theme='dark'] .warehouse-card-metric small,
[data-theme='dark'] .warehouse-card-capacity { color: #9aaabd; }
[data-theme='dark'] .warehouse-card-metric,
[data-theme='dark'] .warehouse-card-metrics > .ant-col:nth-child(2) .warehouse-card-metric { background: #1c2a38 !important; border-color: #34485d; }
[data-theme='dark'] .warehouse-card-contact { color: #aebdcd; background: #1b2735; border-top-color: var(--wms-border); }
[data-theme='dark'] .warehouse-card-link:hover,
[data-theme='dark'] .warehouse-card-link:focus-visible { background: #1d3044 !important; }
[data-theme='dark'] .warehouse-card-link:hover .warehouse-card-contact,
[data-theme='dark'] .warehouse-card-link:focus-visible .warehouse-card-contact { background: #243c55; }
[data-theme='dark'] .user-chip { color: #e6edf5; }
[data-theme='dark'] .user-chip:hover { border-color: #3a4a5d; background: #1b2a3a; }
[data-theme='dark'] .user-chip .ant-avatar { background: #29384a; color: #dce6f0; box-shadow: inset 0 0 0 1px #43556c; }
[data-theme='dark'] .user-chip-name { color: #e6edf5; }
[data-theme='dark'] .user-account-dropdown .ant-dropdown-menu { background: #1a2633; border-color: var(--wms-border); }
[data-theme='dark'] .user-account-summary-copy strong { color: #e6edf5; }
[data-theme='dark'] .user-account-summary-copy span { color: #9aaabd; }
[data-theme='dark'] .user-account-dropdown .ant-dropdown-menu-item-divider { background: var(--wms-border); }
[data-theme='dark'] .user-account-dropdown .ant-dropdown-menu-item-danger,
[data-theme='dark'] .user-account-dropdown .ant-dropdown-menu-item-danger .anticon { color: #ff7875 !important; }
[data-theme='dark'] .user-account-dropdown .ant-dropdown-menu-item-danger:hover,
[data-theme='dark'] .user-account-dropdown .ant-dropdown-menu-item-danger:active { background: #402328 !important; }
[data-theme='dark'] .home-stat-card,
[data-theme='dark'] .home-stat-card:nth-child(2),
[data-theme='dark'] .home-stat-card:nth-child(3),
[data-theme='dark'] .home-stat-card:nth-child(4) { background: #1b2735; border-color: #34485d; }
[data-theme='dark'] .home-stat-card > .anticon { background: #263c55; }
[data-theme='dark'] .home-stat-card:nth-child(2) > .anticon { background: #1e4434; }
[data-theme='dark'] .home-stat-card:nth-child(3) > .anticon { background: #4a3a1e; }
[data-theme='dark'] .home-stat-card:nth-child(4) > .anticon { background: #4a252b; }
[data-theme='dark'] .organization-workspace,
[data-theme='dark'] .organization-tree-panel,
[data-theme='dark'] .organization-member-panel,
[data-theme='dark'] .member-profile-header,
[data-theme='dark'] .member-profile-summary,
[data-theme='dark'] .permission-member-bar,
[data-theme='dark'] .permission-group,
[data-theme='dark'] .organization-overview > div { background: var(--wms-surface); border-color: var(--wms-border); }
[data-theme='dark'] .organization-tree-panel,
[data-theme='dark'] .permission-group { background: #1a2633; }
[data-theme='dark'] .panel-heading,
[data-theme='dark'] .organization-overview strong,
[data-theme='dark'] .member-profile-summary > strong,
[data-theme='dark'] .permission-member-bar strong,
[data-theme='dark'] .permission-group > strong,
[data-theme='dark'] .form-section-title,
[data-theme='dark'] .modal-section-title { color: #e6edf5; }
[data-theme='dark'] .organization-overview small,
[data-theme='dark'] .member-profile-summary > span,
[data-theme='dark'] .member-profile-summary dt,
[data-theme='dark'] .member-profile-summary dd,
[data-theme='dark'] .permission-member-bar span,
[data-theme='dark'] .form-hint,
[data-theme='dark'] .table-context,
[data-theme='dark'] .table-muted { color: #9aaabd; }
[data-theme='dark'] .organization-member-panel .ant-table-thead > tr > th { background: #1c2735 !important; color: #dce6f0; }
[data-theme='dark'] .organization-member-panel .ant-table-tbody > tr:hover > td { background: #223247 !important; }
[data-theme='dark'] .order-detail-entry,
[data-theme='dark'] .order-line-row,
[data-theme='dark'] .inbound-check-line,
[data-theme='dark'] .inbound-check-review-line { background: #1a2633; border-color: #34485d; }
[data-theme='dark'] .order-detail-entry span,
[data-theme='dark'] .order-detail-head,
[data-theme='dark'] .selected-sn-list,
[data-theme='dark'] .quantity-action-field label { color: #aebdcd; }
[data-theme='dark'] .selected-sn-list > div + div { border-top-color: var(--wms-border); }
[data-theme='dark'] .photo-placeholder { background: #1a2633; border-color: #43556c; color: #9aaabd; }
[data-theme='dark'] .workflow-step,
[data-theme='dark'] .workflow-step:hover { background: #1a2633; border-color: var(--wms-border); }
[data-theme='dark'] .permission-warning { color: #ffb3ad; background: #402328; border-color: #6b3438; }
[data-theme='dark'] .member-admin-rule { color: #f3d18b; background: #3a301d; border-color: #665126; }
[data-theme='dark'] .member-admin-rule strong { color: #ffe7ad; }
[data-theme='dark'] .refined-login { background: #111821; }
[data-theme='dark'] .refined-login .login-panel { background: #151e2a; border-right-color: var(--wms-border); }
[data-theme='dark'] .login-card { background: #17212d; border-color: var(--wms-border); }
[data-theme='dark'] .login-logo-row { color: #e6edf5; }
[data-theme='dark'] .ant-alert,
[data-theme='dark'] .ant-list-item,
[data-theme='dark'] .ant-timeline-item-content { color: #dce6f0; border-color: var(--wms-border); }
[data-theme='dark'] .ant-empty-description { color: #9aaabd; }
[data-theme='dark'] .ant-btn-default { color: #dce6f0; background: #1a2633; border-color: #3a4a5d; }
[data-theme='dark'] .ant-btn-default:hover { color: #91caff !important; background: #25384d !important; border-color: #69b1ff !important; }
[data-theme='dark'] .ant-btn-text,
[data-theme='dark'] .ant-btn-link { color: #9fc8f5; }
[data-theme='dark'] .ant-btn-text:hover,
[data-theme='dark'] .ant-btn-link:hover { color: #b7d9ff !important; background: #25384d !important; }
[data-theme='dark'] .ant-segmented { background: #1a2633; color: #aebdcd; }
[data-theme='dark'] .ant-segmented-item-selected { color: #e6edf5; background: #2b4c6c; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.28); }
[data-theme='dark'] .ant-select-selection-item,
[data-theme='dark'] .ant-input-number-input,
[data-theme='dark'] .ant-picker-input > input { color: #e6edf5 !important; }
[data-theme='dark'] .ant-select-arrow,
[data-theme='dark'] .ant-input-number-handler-wrap { color: #9aaabd; }
[data-theme='dark'] .ant-modal-title,
[data-theme='dark'] .ant-drawer-title { color: #e6edf5; }
[data-theme='dark'] .ant-modal-close,
[data-theme='dark'] .ant-drawer-close { color: #9aaabd; }
[data-theme='dark'] .ant-modal-close:hover,
[data-theme='dark'] .ant-drawer-close:hover { color: #e6edf5; background: #25384d; }
[data-theme='dark'] .ant-tabs-nav::before { border-bottom-color: var(--wms-border); }
[data-theme='dark'] .ant-table-placeholder .ant-empty { color: #9aaabd; }
[data-theme='dark'] .ant-tooltip-inner { color: #e6edf5; background: #26394d; }
[data-theme='dark'] .ant-popover-arrow::before,
[data-theme='dark'] .ant-popover-arrow::after { background: #1a2633; }
[data-theme='dark'] .warehouse-location-detail .ant-card .ant-card-body .ant-col > div { background: #1c2a38 !important; border-color: #34485d !important; color: #dce6f0 !important; }
[data-theme='dark'] .warehouse-location-detail .ant-card .ant-card-body .ant-col > div > div:last-child { color: #91caff !important; }
[data-theme='dark'] .warehouse-location-detail .ant-card .ant-card-body .ant-col > div > div:first-child { color: #dce6f0 !important; }

[data-theme='dark'] .dashboard-eyebrow { color: #91caff; }
[data-theme='dark'] .dashboard-panel,
[data-theme='dark'] .dashboard-todo-card { background: var(--wms-surface); border-color: var(--wms-border); }
[data-theme='dark'] .dashboard-visual-panel { background: var(--wms-surface); border-color: var(--wms-border); border-top-color: #5d9edb; }
[data-theme='dark'] .dashboard-todo-card:hover { border-color: #5588b7; box-shadow: 0 8px 20px rgba(0, 0, 0, .18); }
[data-theme='dark'] .dashboard-todo-card.is-green .dashboard-todo-icon,
[data-theme='dark'] .dashboard-task-mark.is-inbound,
[data-theme='dark'] .dashboard-feed-dot.is-inbound { color: #8bd6a5; background: #1d3a2a; }
[data-theme='dark'] .dashboard-todo-card.is-blue .dashboard-todo-icon,
[data-theme='dark'] .dashboard-task-mark.is-outbound,
[data-theme='dark'] .dashboard-feed-dot.is-outbound { color: #91caff; background: #1c3650; }
[data-theme='dark'] .dashboard-task-mark.is-return,
[data-theme='dark'] .dashboard-feed-dot.is-return { color: #f3c56b; background: #44361f; }
[data-theme='dark'] .dashboard-todo-card.is-orange .dashboard-todo-icon { color: #f3c56b; background: #44361f; }
[data-theme='dark'] .dashboard-todo-card.is-red .dashboard-todo-icon { color: #ff9c8f; background: #45252b; }
[data-theme='dark'] .dashboard-warehouse-stats { background: var(--wms-border); border-color: var(--wms-border); }
[data-theme='dark'] .dashboard-warehouse-stats > div { background: var(--wms-surface); }
[data-theme='dark'] .dashboard-warehouse-links button { background: var(--wms-surface-soft); border-color: var(--wms-border); }
[data-theme='dark'] .dashboard-warehouse-links button:hover { border-color: #69b1ff; color: #91caff; }

/* Unified scrollbars for the page shell, navigation, tables, drawers and dialogs. */
html,
* {
  scrollbar-width: thin;
  scrollbar-color: #b8c5d4 transparent;
}
*::-webkit-scrollbar { width: 8px; height: 8px; }
*::-webkit-scrollbar-track { background: transparent; }
*::-webkit-scrollbar-thumb {
  min-height: 36px;
  background: #b8c5d4;
  border: 2px solid transparent;
  border-radius: 8px;
  background-clip: content-box;
}
*::-webkit-scrollbar-thumb:hover { background: #91a4b9; background-clip: content-box; }
*::-webkit-scrollbar-corner { background: transparent; }
[data-theme='dark'],
[data-theme='dark'] * {
  scrollbar-color: #60758b transparent;
}
[data-theme='dark'] *::-webkit-scrollbar-track { background: transparent; }
[data-theme='dark'] *::-webkit-scrollbar-thumb { background: #60758b; background-clip: content-box; }
[data-theme='dark'] *::-webkit-scrollbar-thumb:hover { background: #8ca4bc; background-clip: content-box; }

@media (prefers-reduced-motion: reduce) {
  [data-theme='dark'] .app-layout,
  [data-theme='dark'] .app-main-layout,
  [data-theme='dark'] .app-header,
  [data-theme='dark'] .app-sider,
  [data-theme='dark'] .app-content,
  [data-theme='dark'] .page-shell,
  [data-theme='dark'] .filter-panel,
  [data-theme='dark'] .table-panel,
  [data-theme='dark'] .form-panel,
  [data-theme='dark'] .ant-card,
  [data-theme='dark'] .ant-modal-content,
  [data-theme='dark'] .ant-drawer-content { transition: none; }
}

/* Theme changes reveal from the toggle button instead of flashing the whole page. */
::view-transition-old(root),
::view-transition-new(root) { animation: none; mix-blend-mode: normal; }
::view-transition-new(root) {
  position: relative;
  z-index: 1;
  clip-path: circle(0 at var(--theme-transition-x) var(--theme-transition-y));
  animation: theme-radial-reveal 420ms cubic-bezier(0.22, 1, 0.36, 1) both;
}
@keyframes theme-radial-reveal {
  to { clip-path: circle(var(--theme-transition-radius) at var(--theme-transition-x) var(--theme-transition-y)); }
}
@media (prefers-reduced-motion: reduce) {
  ::view-transition-old(root),
  ::view-transition-new(root) { animation: none !important; }
}

@media (max-width: 768px) {
  .warehouse-console-page .page-title-row { align-items: flex-start; flex-direction: column; }
  .warehouse-console-page .page-title-row > .ant-space { width: 100%; }
  .warehouse-console-page .page-title-row .ant-select { flex: 1; }
  .warehouse-console-page .action-row > .ant-space { width: 100%; }
  .warehouse-console-page .action-row > .ant-space > * { flex: 1; min-width: 0; }
  .warehouse-console-page .action-row .ant-input { width: 100% !important; }
  .warehouse-console-detail-actions { justify-content: flex-start; flex-wrap: wrap; }
  .warehouse-console-location-grid { grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); gap: 8px; }
}

@media (max-width: 1200px) {
  .putaway-assemble-layout { display: block; }
  .putaway-side-panel {
    width: auto;
    margin-top: 18px;
    padding-top: 14px;
    padding-left: 0;
    border-top: 1px solid #f0f0f0;
    border-left: 0;
  }
}

@media (max-width: 768px) {
  .putaway-side-panel { margin-top: 12px; }
  .putaway-pagination { justify-content: center; overflow-x: auto; }
  .putaway-target-summary { align-items: flex-start; flex-direction: column; gap: 4px; }
  .wms-responsive-table .ant-table-cell { padding-inline: 8px !important; }
}

/* 统一工作台密度：页面头部和工具区固定，数据区域承担滚动。 */
.cockpit-content { display: flex; flex-direction: column; min-height: 0; }
.cockpit-content > .page-shell { flex: 1 1 auto; min-height: 0; gap: 10px; }
.cockpit-content > .page-shell > .ant-tabs { margin-bottom: 0; }
.cockpit-content > .page-shell > .filter-panel,
.cockpit-content > .page-shell > .table-panel,
.cockpit-content > .page-shell > .form-panel { padding: 12px; }
.cockpit-content > .page-shell > .filter-panel .ant-form-item { margin-bottom: 0; }
.cockpit-content > .page-shell > .table-panel { min-height: 0; }

/* 退货工作区：顶部业务操作固定，刷新悬浮在内容区域右下角。 */
.cockpit-content:has(> :is(.return-processing-page, .warehouse-workspace)) { overflow: hidden; }
.cockpit-content > :is(.return-processing-page, .warehouse-workspace) {
  position: relative;
  flex: 1 1 0;
  min-width: 0;
  overflow: hidden;
}
.page-refresh { position: absolute; right: 4px; bottom: 4px; z-index: 30; }
.page-refresh .ant-btn { width: 36px; height: 36px; min-height: 36px; padding: 0; box-shadow: 0 2px 8px #00000018; }
.reverse-data-panel {
  display: flex;
  flex-direction: column;
  flex: 1 1 0;
  min-height: 0;
  min-width: 0;
  gap: 8px;
  padding-inline: 12px;
  overflow: hidden;
  background: var(--wms-surface);
}
.reverse-data-panel > :not(.work-table) { flex: 0 0 auto; min-width: 0; }
.reverse-data-panel > .ant-tabs .ant-tabs-nav { margin: 0; }
.reverse-data-panel > .ant-tabs .ant-tabs-content-holder { display: none; }
.consumable-page .reverse-data-panel > .ant-tabs { display: flex; flex: 1 1 0; flex-direction: column; min-height: 0; }
.consumable-page .reverse-data-panel > .ant-tabs .ant-tabs-content-holder { display: flex; flex: 1 1 0; min-height: 0; }
.consumable-page .reverse-data-panel > .ant-tabs .ant-tabs-content { display: flex; flex: 1 1 0; min-height: 0; }
.consumable-page .reverse-data-panel > .ant-tabs .ant-tabs-tabpane-active { display: flex; flex: 1 1 0; flex-direction: column; min-height: 0; }
/* 包装耗材筛选项从左到右排列，避免通用 space-between 把补货按钮推到最右侧。 */
.consumable-page .ant-tabs-tabpane-active > .action-row { justify-content: flex-start; padding-inline: 0; }
.consumable-page .consumable-stock-table .ant-table-container,
.consumable-page .consumable-flow-table .ant-table-container { min-width: 0; }
.consumable-page .consumable-stock-table .ant-table,
.consumable-page .consumable-flow-table .ant-table { width: 100%; table-layout: fixed; }
.consumable-page .consumable-stock-table .ant-table-cell,
.consumable-page .consumable-flow-table .ant-table-cell { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.consumable-page .consumable-stock-scroll { flex: 1 1 0; min-height: 0; overflow-y: auto; }
.consumable-stock-pagination { display: flex; justify-content: flex-end; min-height: 44px; align-items: center; padding: 8px 0; }
.reverse-data-panel > .action-row,
.reverse-query-filter { padding: 4px 0; }
.return-processing-page .return-list-panel { border: 0; }
.return-processing-page .return-filter-row { grid-template-columns: minmax(180px, 1fr) 140px 140px auto auto; margin: 0; }
.return-processing-page .return-summary-row { flex: 0 0 auto; }
.return-processing-page .return-summary-card { min-height: 58px; padding: 8px 12px; gap: 2px 8px; border-top-width: 2px; }
.return-processing-page .return-summary-card strong { font-size: 22px; line-height: 24px; }
.return-processing-page .return-summary-card small { display: none; }
.reverse-scan-panel { flex: 0 0 auto; min-width: 0; padding-inline: 12px; }
.reverse-scan-form { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)) auto; align-items: end; gap: 8px; }
.reverse-scan-form .ant-form-item { min-width: 0; margin: 0; }
.reverse-scan-form .ant-form-item-label { padding-bottom: 4px; }

/* Ant Table 各层传递剩余高度，禁止数据把整个路由页面撑高。 */
.work-table,
.work-table > .ant-spin-nested-loading,
.work-table > .ant-spin-nested-loading > .ant-spin-container,
.work-table .ant-table,
.work-table .ant-table-container {
  display: flex;
  flex-direction: column;
  flex: 1 1 0;
  min-height: 0;
  min-width: 0;
}
.work-table .ant-table-header { flex: 0 0 auto; }
.work-table .ant-table-body { flex: 1 1 auto; min-height: 0; overflow: auto !important; }
.work-table .ant-table-pagination { flex: 0 0 auto; margin: 8px 0 0 !important; }
.return-processing-page .work-table .ant-table-pagination,
.warehouse-workspace .work-table .ant-table-pagination { min-height: 44px; align-items: center; padding-right: 48px; }
.work-table .ant-table-cell { overflow-wrap: anywhere; }
.work-table .ant-table-thead > tr > th,
.work-table .ant-table-tbody > tr > td { padding: 8px 10px !important; font-size: 14px; }
.work-table .ant-table-measure-row > td { padding: 0 !important; }

/* 仓储作业沿用同一工作区，复合页面的各数据面板分别滚动。 */
.warehouse-workspace > :not(.table-panel):not(.page-refresh) { flex: 0 0 auto; min-width: 0; }
.cockpit-content > .page-shell.warehouse-workspace > .table-panel {
  display: flex;
  flex-direction: column;
  flex: 1 1 0;
  gap: 8px;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  padding: 0 12px;
  border: 0;
  border-radius: 0;
}
.warehouse-workspace > .table-panel > :not(.work-table):not(.putaway-assemble-layout):not(.warehouse-console-map) { flex: 0 0 auto; min-width: 0; }
.warehouse-workspace > .table-panel > .work-table { flex: 1 1 0; min-height: 0; }
.warehouse-workspace > .filter-panel { padding: 8px 12px !important; border: 0; box-shadow: none; }
.warehouse-workspace .search-panel-fields { grid-template-columns: repeat(auto-fit, minmax(160px, 260px)); gap: 8px; }
.warehouse-workspace .search-panel-grid { gap: 8px; }
.warehouse-workspace .search-panel-actions { height: 36px; }
.warehouse-workspace .search-panel-actions .ant-btn { height: 36px; min-height: 36px; }
.warehouse-workspace .ant-tabs-nav { margin-bottom: 0; }
.warehouse-workspace > .ant-tabs .ant-tabs-nav { padding-inline: 12px; }
.warehouse-workspace > .ant-tabs .ant-tabs-content-holder { display: none; }
.warehouse-workspace .putaway-assemble-layout { display: flex; flex: 1 1 0; min-height: 0; align-items: stretch; gap: 12px; }
.warehouse-workspace .putaway-source-panel,
.warehouse-workspace .putaway-side-panel { display: flex; flex-direction: column; min-height: 0; gap: 8px; overflow: hidden; }
.warehouse-workspace .putaway-side-panel { margin: 0; padding: 0 0 0 12px; border-top: 0; border-left: 1px solid var(--wms-border); }
.warehouse-workspace .putaway-side-section { display: flex; flex-direction: column; flex: 1 1 0; min-width: 0; min-height: 0; gap: 8px; }
.warehouse-workspace .putaway-side-section > .form-section-title { flex: 0 0 auto; margin: 0; font-size: 14px; }
.warehouse-workspace > .table-panel > .form-section-title { margin: 0; font-size: 14px; }
/* 待组装右侧也是数据区，刷新避让至页签右侧，不覆盖容器操作。 */
.putaway-workspace.is-assemble > .page-refresh { top: 8px; bottom: auto; }
.putaway-workspace.is-assemble > .workflow-tabs { padding-right: 48px; }
.warehouse-workspace .putaway-pagination { min-height: 44px; padding: 0 48px 0 0; border: 0; flex: 0 0 auto; }
.warehouse-workspace .putaway-pagination .ant-pagination { margin: 0 !important; }
.warehouse-workspace .warehouse-console-map { flex: 1 1 0; min-height: 0; overflow: auto; margin: 0; padding: 8px 0 44px; }
.warehouse-workspace .warehouse-console-metric { min-height: 56px; padding: 8px 12px; }
.warehouse-workspace .warehouse-console-toolbar { position: static; padding: 0 12px; }
.warehouse-workspace .warehouse-console-summary { flex: 0 0 auto; }
@media (max-width: 1100px) {
  .warehouse-workspace .putaway-assemble-layout { flex-direction: column; }
  .warehouse-workspace .putaway-source-panel { flex: 1 1 0; }
  .warehouse-workspace .putaway-side-panel { flex: 1 1 0; width: 100%; padding: 0; border: 0; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: minmax(0, 1fr); }
}
@media (max-width: 600px) {
  .warehouse-workspace .search-panel-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .warehouse-workspace .search-panel-grid { grid-template-columns: 1fr; }
  .warehouse-workspace .putaway-pagination .ant-pagination-total-text { width: 100%; }
  .warehouse-workspace .warehouse-console-toolbar .ant-select { max-width: 100%; }
  .warehouse-console-page .action-row > .ant-space > .ant-space-item { flex: 0 1 auto; max-width: 100%; }
  .warehouse-console-page .action-row > .ant-space:last-child > .ant-space-item { flex: 0 0 auto; }
}
@media (max-width: 1100px) {
  .return-processing-page .return-filter-row { grid-template-columns: minmax(120px, 1fr) 110px 110px auto auto; gap: 6px; }
  .reverse-scan-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .reverse-scan-form > .ant-btn { justify-self: start; }
}
@media (max-width: 600px) {
  .return-processing-page .return-filter-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .return-processing-page .return-filter-row > .ant-input-affix-wrapper { grid-column: 1 / -1; }
  .reverse-query-filter > .ant-space-item { max-width: 100%; }
  .reverse-query-filter .ant-input-affix-wrapper { max-width: 100%; }
  .work-table .ant-pagination-total-text { width: 100%; }
}
.cockpit-content > .page-shell > .table-panel .ant-table-wrapper { min-height: 0; }

.form-readonly-line,
.drawer-detail-line {
  margin-bottom: 8px;
  color: #52677f;
  font-size: 14px;
  line-height: 22px;
}

.form-list-title {
  margin: 12px 0 8px;
  color: #0f1f3a;
  font-weight: 750;
}

.full-width {
  display: flex;
  width: 100%;
}

.form-list-grow {
  flex: 1;
  min-width: 0;
}

.repair-material-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 112px 36px;
  align-items: start;
  gap: 10px;
  width: 100%;
}

.repair-material-row .ant-form-item {
  min-width: 0;
  margin-bottom: 12px;
}

.repair-material-row .ant-input-number,
.repair-material-row .ant-select { width: 100%; }

.repair-material-option {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.repair-material-summary {
  min-width: 230px;
}

.repair-material-summary > div {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding: 6px 0;
  color: #405a76;
  font-size: 14px;
  line-height: 22px;
}

.repair-material-summary > div + div {
  border-top: 1px solid #edf1f6;
}

.repair-material-summary > div span:nth-child(2) {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.repair-material-summary strong {
  color: #0f1f3a;
  font-weight: 750;
}

.return-putaway-search {
  flex: 0 1 360px;
  width: min(360px, 100%);
  min-width: 0;
}

/* 搜索输入框和右侧图标按钮必须作为一个连续控件，保持同高且居中。 */
.return-putaway-search .ant-input-group {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 40px;
  width: 100%;
}

.return-putaway-search .ant-input-affix-wrapper {
  min-width: 0;
  min-height: 40px;
  height: 40px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.return-putaway-search .ant-input-group-addon {
  display: block;
  min-width: 0;
  padding: 0;
  border: 0;
}

.return-putaway-search .ant-input-search-button {
  width: 40px;
  min-height: 40px;
  height: 40px;
  padding: 0;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.repair-order-qty {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 18px;
  color: #34465e;
  font-weight: 600;
}

.repair-order-qty .ant-input-number {
  width: 180px;
}

.repair-material-delete {
  width: 36px;
  height: 32px;
  margin-top: 1px;
}

.repair-config-modal .ant-modal-body {
  max-height: min(58vh, 560px);
  padding-right: 12px;
  overflow-y: auto;
}

.timeline-subtext {
  margin-top: 2px;
  color: #667085;
  font-size: 13px;
  line-height: 20px;
}

/* 工时库存明细：汇总、表格和分页独立分区，统一继承浅色/深色主题变量。 */
.work-time-inventory-modal .ant-modal-content { overflow: hidden; }
.work-time-inventory-modal .ant-modal-header { margin: 0; padding: 18px 28px 14px; border-bottom: 1px solid var(--wms-border); }
.work-time-inventory-modal .ant-modal-body { padding: 20px 28px 24px; }
.work-time-inventory-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 18px;
  overflow: hidden;
  border: 1px solid var(--wms-border);
  border-radius: 6px;
  background: var(--wms-surface-soft);
}
.work-time-inventory-summary-cell {
  display: grid;
  min-width: 0;
  min-height: 76px;
  padding: 14px 16px;
  place-content: center;
  gap: 7px;
  text-align: center;
}
.work-time-inventory-summary-cell + .work-time-inventory-summary-cell { border-left: 1px solid var(--wms-border); }
.work-time-inventory-summary-cell > span { color: var(--wms-text-secondary); font-size: 13px; line-height: 18px; font-weight: 600; }
.work-time-inventory-summary-cell > strong { color: var(--wms-text); font-size: 17px; line-height: 24px; font-weight: 750; }
.work-time-inventory-table .ant-table { overflow: hidden; border: 1px solid var(--wms-border); border-radius: 6px; }
.work-time-inventory-table .ant-table-thead > tr > th { text-align: center; }
.work-time-inventory-table .ant-table-tbody > tr > td { height: 46px; }
.work-time-inventory-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 58px;
  padding: 14px 4px 0;
  color: var(--wms-text-secondary);
  border-top: 1px solid var(--wms-border);
  font-size: 14px;
}
.work-time-inventory-pagination > span { font-weight: 650; white-space: nowrap; }
.work-time-inventory-pagination .ant-pagination { margin: 0 !important; }

[data-theme='dark'] .work-time-inventory-modal .ant-modal-content { border-color: var(--wms-border); }
[data-theme='dark'] .work-time-inventory-summary { background: #1c2735; }
[data-theme='dark'] .work-time-inventory-table .ant-table { background: var(--wms-surface); }

@media (max-width: 760px) {
  .work-time-inventory-modal .ant-modal-body { padding: 16px; }
  .work-time-inventory-modal .ant-modal-header { padding: 16px; }
  .work-time-inventory-summary-cell { min-height: 68px; padding: 10px 8px; }
  .work-time-inventory-pagination { align-items: flex-start; flex-direction: column; gap: 10px; }
}

[data-theme='dark'] .form-readonly-line,
[data-theme='dark'] .drawer-detail-line,
[data-theme='dark'] .timeline-subtext { color: #9aaabd; }

[data-theme='dark'] .repair-material-summary > div + div { border-top-color: #34485d; }
[data-theme='dark'] .repair-material-summary strong { color: #e6edf5; }

@media (max-width: 480px) {
  .repair-material-row { grid-template-columns: minmax(0, 1fr) 92px 32px; gap: 8px; }
  .repair-material-delete { width: 32px; }
  .return-putaway-search { width: 100%; }
  .repair-order-qty { align-items: flex-start; flex-direction: column; gap: 8px; }
  .repair-order-qty .ant-input-number { width: 100%; }
}

/* 所有业务页面统一紧凑布局，数据列表在内容区域内滚动。 */
.cockpit-content { display: flex; flex-direction: column; min-height: 0; }
.cockpit-content > .page-shell { flex: 1 1 auto; min-height: 0; gap: 10px; }
.cockpit-content > .page-shell > .filter-panel,
.cockpit-content > .page-shell > .table-panel,
.cockpit-content > .page-shell > .form-panel { padding: 12px; }
.cockpit-content > .page-shell > .filter-panel .ant-form-item { margin-bottom: 0; }
.cockpit-content > .page-shell > .table-panel { min-height: 0; }
/* Enterprise workspace. The remaining index.css rules support business-specific operations. */
:root {
  --wms-accent: #176b66;
  --wms-text: #263a39;
  --wms-text-secondary: #71817f;
  --wms-surface: #fff;
  --wms-surface-soft: #f5f8f7;
  --wms-border: #e2e9e6;
  --workspace-background: #f3f5f5;
  --workspace-nav: #fff;
  color: var(--wms-text);
  background: var(--workspace-background);
}
[data-theme='dark'] {
  color-scheme: dark;
  --wms-accent: #36dbb7;
  --wms-text: #edf4fc;
  --wms-text-secondary: #a1b2c9;
  --wms-surface: #121f32;
  --wms-surface-soft: #182941;
  --wms-border: #2b3c54;
  --wms-canvas: #0b1423;
  --workspace-background: #0b1423;
  --workspace-nav: #101c2e;
}
body { background: var(--workspace-background); }
button { -webkit-tap-highlight-color: transparent; }
button:focus-visible, a:focus-visible { outline: 2px solid var(--wms-accent); outline-offset: 3px; }
.enterprise-app { height: 100dvh; min-height: 0; display: flex; flex-direction: column; color: var(--wms-text); font-size: 15px; }
.enterprise-header { height: 64px; flex: 0 0 64px; display: flex; align-items: center; gap: 30px; padding: 0 24px; border-bottom: 1px solid var(--wms-border); background: var(--workspace-nav); z-index: 40; }
.enterprise-brand { display: flex; align-items: center; gap: 11px; padding: 0; background: none; border: 0; color: var(--wms-text); font-size: 20px; font-weight: 700; letter-spacing: 1px; cursor: pointer; white-space: nowrap; }
.enterprise-brand b { margin-left: 5px; color: var(--wms-text-secondary); font-size: 14px; font-weight: 500; letter-spacing: 1.4px; }
.brand-symbol { display: grid; grid-template-columns: repeat(3, 7px); gap: 3px; align-items: center; height: 30px; width: 30px; transform: skewY(-8deg); }
.brand-symbol > span { display: block; height: 21px; border-radius: 1px; background: #176b66; }
.brand-symbol > span:nth-child(2) { height: 29px; background: #4d9486; }
.brand-symbol > span:nth-child(3) { height: 17px; background: #99bfb0; }
.enterprise-modules { display: flex; align-self: stretch; gap: 5px; min-width: 0; }
.enterprise-modules button { position: relative; padding: 0 17px; border: 0; background: none; color: var(--wms-text-secondary); font-size: 15px; cursor: pointer; white-space: nowrap; }
.enterprise-modules button:hover { color: var(--wms-accent); background: var(--wms-surface-soft); }
.enterprise-modules button.is-active { color: var(--wms-accent); font-weight: 600; }
.enterprise-modules button.is-active::after { content: ''; position: absolute; height: 3px; bottom: 0; left: 17px; right: 17px; background: var(--wms-accent); border-radius: 3px 3px 0 0; }
.enterprise-account { margin-left: auto; display: flex; align-items: center; gap: 12px; }
.workspace-search-trigger { display: flex; align-items: center; gap: 9px; border: 1px solid var(--wms-border); background: var(--wms-surface-soft); color: var(--wms-text-secondary); height: 32px; padding: 0 10px; border-radius: 5px; cursor: pointer; font-size: 14px; white-space: nowrap; }
.workspace-search-trigger kbd { margin-left: 12px; font-size: 12px; border-left: 1px solid var(--wms-border); padding-left: 8px; }
.enterprise-user { display: flex; align-items: center; gap: 9px; border: 0; background: none; color: var(--wms-text); cursor: pointer; font-size: 15px; white-space: nowrap; }
.enterprise-user .ant-avatar { background: #e3eeea; color: #37655b; font-size: 14px; border-radius: 6px; }
.enterprise-user > .anticon { font-size: 11px; color: var(--wms-text-secondary); }
.enterprise-body { flex: 1; display: flex; min-height: 0; }
.enterprise-sidebar { width: 208px; flex: 0 0 208px; display: flex; flex-direction: column; background: var(--workspace-nav); border-right: 1px solid var(--wms-border); padding: 20px 12px 16px; min-height: 0; }
.module-caption { display: flex; align-items: center; justify-content: space-between; padding: 0 8px 16px; color: var(--wms-text-secondary); font-size: 13px; letter-spacing: 1px; }
.module-caption .ant-btn { color: var(--wms-text-secondary); }
.enterprise-sidebar nav { display: flex; flex-direction: column; gap: 5px; overflow-y: auto; }
.enterprise-sidebar nav button { display: flex; gap: 12px; align-items: center; position: relative; width: 100%; min-height: 40px; padding: 9px 13px; background: none; border: 0; border-radius: 5px; color: var(--wms-text-secondary); text-align: left; cursor: pointer; font-size: 15px; }
.enterprise-sidebar nav button > .anticon { font-size: 17px; }
.enterprise-sidebar nav button:hover { color: var(--wms-text); background: var(--wms-surface-soft); }
.enterprise-sidebar nav button.is-active { background: color-mix(in srgb, var(--wms-accent) 9%, var(--wms-surface)); color: var(--wms-accent); font-weight: 600; }
.enterprise-sidebar nav button.is-active::after { content: ''; width: 3px; height: 16px; position: absolute; left: 0; border-radius: 3px; background: var(--wms-accent); }
.sidebar-bottom { display: flex; align-items: center; gap: 16px; padding: 18px 10px 0; border-top: 1px solid var(--wms-border); margin-top: auto; color: var(--wms-text-secondary); }
.sidebar-version { display: flex; align-items: center; gap: 10px; font-size: 13px; }
.sidebar-version > .anticon { font-size: 18px; }
.sidebar-version small { display: block; margin-top: 3px; font-size: 11px; letter-spacing: .8px; opacity: .7; }
.sidebar-indicator { width: 5px; height: 5px; background: #4d9486; border-radius: 50%; margin-left: auto; }
.enterprise-sidebar.is-collapsed { width: 64px; flex-basis: 64px; padding-inline: 8px; }
.enterprise-sidebar.is-collapsed .module-caption { justify-content: center; padding-inline: 0; }
.enterprise-sidebar.is-collapsed .module-caption > span, .enterprise-sidebar.is-collapsed nav button > span:not(.anticon), .enterprise-sidebar.is-collapsed .sidebar-version > span:not(.anticon), .enterprise-sidebar.is-collapsed .sidebar-indicator { display: none; }
.enterprise-sidebar.is-collapsed nav button { justify-content: center; padding-inline: 0; }
.enterprise-sidebar.is-collapsed .sidebar-bottom { justify-content: center; padding-inline: 0; }
.enterprise-workspace { flex: 1; min-width: 0; min-height: 0; display: flex; flex-direction: column; }
.workspace-path { display: flex; align-items: center; justify-content: space-between; min-height: 43px; padding: 0 28px; border-bottom: 1px solid var(--wms-border); }
.workspace-path .ant-breadcrumb { font-size: 13px; }
.density-button { display: flex; align-items: center; gap: 9px; border: 0; background: none; color: var(--wms-text-secondary); font-size: 13px; cursor: pointer; }
.density-button > .anticon { font-size: 8px; }
.workspace-page-heading { display: flex; align-items: center; justify-content: space-between; padding: 23px 28px 20px; gap: 20px; flex: 0 0 auto; }
.workspace-page-heading h1 { margin: 0; color: var(--wms-text); font-size: 23px; font-weight: 600; letter-spacing: .3px; line-height: 32px; }
.workspace-page-heading p { margin: 5px 0 0; color: var(--wms-text-secondary); font-size: 14px; }
.workspace-section-code { color: var(--wms-text-secondary); font-size: 12px; letter-spacing: 2px; opacity: .6; padding-bottom: 15px; }
.enterprise-content.cockpit-content { padding: 0 28px 24px; flex: 1; min-height: 0; overflow: auto; background: var(--workspace-background); }
.enterprise-content > .page-shell { gap: 16px; }
.enterprise-content > .page-shell > .page-title-row { position: static; background: none; backdrop-filter: none; }
.enterprise-content > .page-shell > .page-title-row:has(button) { height: auto; min-height: 36px; }
.enterprise-content > .page-shell > .filter-panel { padding: 18px 20px; border-radius: 6px; box-shadow: none; border-color: var(--wms-border); }
.enterprise-content > .page-shell > .table-panel { padding: 0; border-radius: 6px; box-shadow: none; border-color: var(--wms-border); overflow: hidden; }
.enterprise-content .table-panel > .action-row { padding: 14px 18px; border-bottom: 1px solid var(--wms-border); min-height: 62px; }
.enterprise-content .table-panel > .ant-table-wrapper { margin-top: 0 !important; }
.enterprise-content .ant-table-wrapper .ant-table { background: var(--wms-surface); border-radius: 0; color: var(--wms-text); font-size: 15px; }
.enterprise-content .ant-table-wrapper .ant-table-thead > tr > th { background: var(--wms-surface-soft); color: var(--wms-text-secondary); font-size: 14px; font-weight: 500; }
.enterprise-content .ant-table-wrapper .ant-table-tbody > tr > td { border-bottom-color: var(--wms-border); font-variant-numeric: tabular-nums; }
.enterprise-content .ant-table-wrapper .ant-table-tbody .ant-btn:not(.ant-btn-primary):not(.ant-btn-dangerous) { border-color: transparent; background: transparent; box-shadow: none; color: var(--wms-accent); }
.enterprise-content .ant-table-wrapper .ant-table-tbody .ant-btn:disabled { color: var(--wms-text-secondary) !important; opacity: .45; }
.enterprise-content .ant-table-pagination { margin: 14px 18px !important; }
.enterprise-content .ant-tag { border-radius: 3px; font-weight: 400; }
.enterprise-content .ant-tabs-nav::before { border-color: var(--wms-border); }
.enterprise-content .workflow-tabs { padding: 0 18px; background: var(--wms-surface); border: 1px solid var(--wms-border); border-radius: 6px; flex: 0 0 auto; }
.enterprise-content .workflow-tabs > .ant-tabs-nav { margin-bottom: 0; }
.enterprise-content .workflow-tabs > .ant-tabs-nav::before { border: 0; }
.enterprise-content .workflow-tabs .ant-tabs-tab { padding-block: 13px; }
.enterprise-content .search-panel-grid { display: flex; align-items: flex-end; justify-content: flex-start; gap: 10px 12px; flex-wrap: wrap; }
.enterprise-content .search-panel-fields { flex: 0 1 auto; display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px 12px; min-width: 0; }
.enterprise-content .search-panel-fields .ant-form-item { flex: 0 0 200px; width: 200px; margin: 0; min-width: 0; }
.enterprise-content .search-panel-fields .ant-form-item-hidden { display: none; }
.enterprise-content .search-panel-fields .ant-form-item-label { padding-bottom: 6px; }
.enterprise-content .search-panel-actions { display: flex; gap: 6px; padding-bottom: 0; flex-wrap: wrap; }
.enterprise-content .warehouse-workspace > .filter-panel { padding: 14px 18px; }
.enterprise-content .warehouse-workspace .search-panel-fields { grid-template-columns: repeat(3, minmax(130px, 220px)); }
.enterprise-content .warehouse-workspace, .enterprise-content .return-processing-page { min-height: 0; }
.enterprise-content:has(> :is(.warehouse-workspace, .return-processing-page)) { overflow: hidden; }
.enterprise-content .warehouse-workspace > .table-panel { padding: 0; }
.enterprise-content .warehouse-workspace > .table-panel > .work-table { padding: 0; }
.enterprise-content .reverse-data-panel, .enterprise-content .reverse-scan-panel, .enterprise-content .return-list-panel { border: 1px solid var(--wms-border); border-radius: 6px; background: var(--wms-surface); }
.enterprise-content .reverse-data-panel { padding: 12px 16px 0; }
.enterprise-content .reverse-scan-panel { padding: 18px; }
.enterprise-content .return-summary-card { box-shadow: none; border-top-width: 1px; border-color: var(--wms-border); border-radius: 5px; background: var(--wms-surface); }
.enterprise-content .return-summary-card strong { color: var(--wms-text); font-weight: 600; }
.enterprise-content .page-refresh { right: 6px; bottom: 6px; }
.enterprise-content .page-refresh .ant-btn { border-radius: 5px; box-shadow: none; }
.enterprise-content .form-panel, .enterprise-content .warehouse-console-metric { box-shadow: none; border-color: var(--wms-border); }
.enterprise-app[data-density='compact'] .ant-table-tbody > tr > td { padding-block: 7px !important; }
.enterprise-app[data-density='compact'] .filter-panel { padding-block: 12px !important; }
.enterprise-app[data-density='compact'] .workspace-page-heading { padding-block: 14px; }
.enterprise-app[data-density='compact'] .page-shell { gap: 10px; }
.stock-list-layout { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 18px; min-width: 0; }
.stock-list-layout.has-detail { grid-template-columns: minmax(0, 1fr) 360px; }
.stock-list-layout > .table-panel { padding: 0; overflow: hidden; box-shadow: none; border-color: var(--wms-border); }
.stock-inline-detail { border: 1px solid var(--wms-border); border-radius: 6px; background: var(--wms-surface); overflow: auto; max-height: calc(100dvh - 240px); }
.stock-detail-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; border-bottom: 1px solid var(--wms-border); padding: 12px 18px; font-size: 15px; font-weight: 500; }
.stock-detail-product { padding: 20px 18px 4px; }
.stock-detail-product h2 { margin: 12px 0 5px; color: var(--wms-text); font-size: 17px; font-weight: 600; }
.stock-detail-product > span { font-size: 13px; color: var(--wms-text-secondary); }
.stock-detail-quantity { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 18px 0; padding: 14px; gap: 20px; background: var(--wms-surface-soft); border-radius: 4px; }
.stock-detail-quantity > span { font-size: 13px; color: var(--wms-text-secondary); }
.stock-detail-quantity strong { display: block; margin-top: 5px; color: var(--wms-text); font-size: 24px; line-height: 30px; font-weight: 500; font-variant-numeric: tabular-nums; }
.stock-inline-detail > .ant-descriptions { padding: 0 18px 18px; }
.stock-inline-detail .ant-descriptions-bordered .ant-descriptions-item-label { padding: 10px !important; width: 90px; font-size: 13px; }
.stock-inline-detail .ant-descriptions-bordered .ant-descriptions-item-content { padding: 10px !important; font-size: 14px; }
.is-selected-record > td { background: color-mix(in srgb, var(--wms-accent) 7%, var(--wms-surface)) !important; }
/* Shared list layout, aligned with the inventory page. */
.enterprise-content.cockpit-content > .page-shell.warehouse-workspace > .operations-layout,
.enterprise-content.cockpit-content > .page-shell.return-processing-page > .operations-layout { flex: 1 1 0; min-height: 0; min-width: 0; }
.operations-layout.operations-canvas { display: flex; flex-direction: column; gap: 12px; min-height: 0; min-width: 0; overflow: hidden; background: transparent; border: 0; }
.operations-canvas-heading { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: flex-start; gap: 12px 16px; padding: 14px 16px; border: 1px solid var(--wms-border); border-radius: 6px; background: var(--wms-surface); flex: 0 0 auto; }
.operations-status-control { display: grid; grid-template-columns: 200px; align-items: center; gap: 4px 10px; flex: 0 0 auto; }
.operations-status-control > label { grid-column: 1/-1; color: var(--wms-text-secondary); font-size: 14px; line-height: 20px; }
.operations-status-control > .ant-select { width: 200px; }
.operations-status-control > span { font-size: 14px; color: var(--wms-text-secondary); white-space: nowrap; }
.operations-inline-filters { flex: 0 1 auto; min-width: 0; }
.enterprise-content .operations-inline-filters .filter-panel { padding: 0; margin: 0; border: 0; border-top: 0; border-radius: 0; background: transparent; box-shadow: none; width: auto; }
.operations-header-actions { display: flex; align-items: center; gap: 8px; margin-left: auto; padding-bottom: 0; }
.enterprise-content .operations-canvas > .table-panel { flex: 1 1 0; display: flex; flex-direction: column; min-height: 0; padding: 0; border: 1px solid var(--wms-border); box-shadow: none; border-radius: 6px; overflow: hidden; }
.operations-canvas > .table-panel > .work-table { flex: 1 1 0; min-height: 0; }
.collection-workspace { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.enterprise-content .collection-toolbar .filter-panel { margin: 0; padding: 14px 16px; border: 1px solid var(--wms-border); border-radius: 6px; background: var(--wms-surface); box-shadow: none; }
.collection-results { min-width: 0; background: var(--wms-surface); border: 1px solid var(--wms-border); border-radius: 6px; overflow: hidden; }
.collection-results-heading { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 10px 16px; border-bottom: 1px solid var(--wms-border); }
.collection-results-heading h2 { margin: 0; color: var(--wms-text); font-size: 15px; font-weight: 600; }
.collection-results-heading > span { font-size: 14px; color: var(--wms-text-secondary); }
.enterprise-content .collection-results > .table-panel { padding: 0; border: 0; border-radius: 0; box-shadow: none; }
.operations-canvas > .reverse-data-panel { flex: 1 1 0; min-height: 0; border: 0; border-radius: 0; padding: 0; }
.enterprise-content .return-processing-page .return-filter-row { display: grid; grid-template-columns: minmax(180px, 240px) 144px auto; justify-content: start; gap: 10px; margin: 0; padding: 12px 16px; border-bottom: 1px solid var(--wms-border); }
@media (max-width: 767px) { .operations-canvas-heading { gap: 10px; padding: 12px; } .operations-inline-filters { flex-basis: 100%; order: 2; } .operations-header-actions { margin-left: auto; } .enterprise-content .return-processing-page .return-filter-row { grid-template-columns: minmax(0, 1fr) 120px auto; padding: 12px; } .enterprise-content .return-processing-page .return-filter-row > .ant-input-affix-wrapper { grid-column: auto; } }
@media (max-width: 1200px) { .stock-list-layout.has-detail { grid-template-columns: minmax(0, 1fr); } .stock-inline-detail { max-height: none; } }
/* Chart-led home with restrained labels. */
.workstation-page { display: flex; flex-direction: column; gap: 12px; padding-bottom: 4px; }
.workstation-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.workstation-toolbar > span { display: flex; align-items: center; gap: 10px; color: var(--wms-text-secondary); font-size: 14px; }
.workstation-toolbar i { height: 10px; width: 1px; background: var(--wms-border); }
.dashboard-chart { min-width: 0; border: 1px solid var(--wms-border); border-radius: 6px; background: var(--wms-surface); overflow: hidden; }
.dashboard-chart > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 16px; min-height: 45px; border-bottom: 1px solid var(--wms-border); }
.dashboard-chart h2 { margin: 0; font-size: 15px; font-weight: 600; color: var(--wms-text); }
.dashboard-chart > header > span { font-size: 13px; color: var(--wms-text-secondary); }
.dashboard-chart > .ant-skeleton { padding: 20px; }
.dashboard-chart > .ant-empty { padding: 40px 16px; }
.dashboard-chart-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 12px; }
@media (max-width: 767px) { .dashboard-chart-grid { grid-template-columns: minmax(0, 1fr); } .workstation-toolbar > span { gap: 6px; font-size: 13px; } }
/* Task sheets replace the former centered forms. */
.enterprise-task-panel .ant-drawer-header { padding: 22px 28px; border-bottom: 1px solid var(--wms-border); }
.task-panel-eyebrow { color: var(--wms-text-secondary); font-size: 12px; letter-spacing: 1px; }
.task-panel-title h2 { margin: 5px 0 0; font-size: 20px; line-height: 30px; font-weight: 600; color: var(--wms-text); }
.enterprise-task-panel .ant-drawer-body { padding: 26px 28px 32px; background: var(--wms-surface-soft); }
.enterprise-task-panel .ant-drawer-body > .ant-form, .enterprise-task-panel .ant-drawer-body > .ant-space, .enterprise-task-panel .ant-drawer-body > .ant-descriptions { padding: 24px; background: var(--wms-surface); border: 1px solid var(--wms-border); border-radius: 6px; }
.enterprise-task-panel .ant-form-item-label > label { color: var(--wms-text-secondary); font-size: 15px; }
.enterprise-task-panel .ant-drawer-footer { padding: 16px 28px; }
.task-panel-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.task-panel-footer > span { font-size: 13px; color: var(--wms-text-secondary); }
.task-panel-footer > div { display: flex; gap: 10px; margin-left: auto; }
.enterprise-task-panel .form-hint { background: color-mix(in srgb, var(--wms-accent) 5%, var(--wms-surface)); border-left: 2px solid var(--wms-accent); border-radius: 0; padding: 12px 16px; color: var(--wms-text-secondary); }
.enterprise-task-panel .ant-table-wrapper { margin-top: 16px; }
.enterprise-task-panel .modal-summary { margin-bottom: 22px; }
.enterprise-task-panel .ant-descriptions-view { border-color: var(--wms-border); }
.enterprise-task-panel.is-wide .ant-form-horizontal > .ant-form-item > .ant-row { display: grid; grid-template-columns: 120px minmax(0, 1fr); }
.enterprise-task-panel.is-wide .ant-form-horizontal > .ant-form-item > .ant-row > .ant-col { max-width: none; }
.sku-edit-section-title { margin: 2px 0 20px; padding-bottom: 12px; border-bottom: 1px solid var(--wms-border); font-size: 15px; font-weight: 600; color: var(--wms-text); }
.sku-editor-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px; }
.sku-editor-grid .full-span { grid-column: 1/-1; }
.enterprise-task-panel .sku-editor { padding: 24px; }
.workspace-command .ant-modal-content { padding: 24px; }
.command-results { margin-top: 14px; max-height: 380px; overflow: auto; }
.command-results > button { display: flex; align-items: center; gap: 14px; width: 100%; padding: 12px 10px; background: none; border: 0; border-bottom: 1px solid var(--wms-border); text-align: left; color: var(--wms-text); cursor: pointer; border-radius: 4px; }
.command-results > button:hover { background: var(--wms-surface-soft); }
.command-results > button > span:nth-child(2) { flex: 1; }
.command-results strong { font-size: 15px; font-weight: 500; }
.command-results small { display: block; color: var(--wms-text-secondary); font-size: 13px; margin-top: 3px; }
.command-results > button > .anticon:first-child { color: var(--wms-accent); font-size: 18px; }
.command-results > button > .anticon:last-child { transform: rotate(180deg); font-size: 13px; color: var(--wms-text-secondary); }
/* Login shares the same identity, with a static warehouse illustration. */
.workspace-login { display: grid; grid-template-columns: minmax(360px, .95fr) minmax(440px, 1.05fr); min-height: 100dvh; background: var(--wms-surface); overflow: auto; }
.login-story { position: relative; overflow: hidden; background: #193d38; color: #f2f6f4; padding: 44px 60px; display: flex; flex-direction: column; min-height: 100dvh; }
.login-story-brand { display: flex; gap: 12px; align-items: center; font-size: 21px; font-weight: 500; letter-spacing: 1px; }
.login-story-brand .brand-symbol > span { background: #9bbfb0; }
.login-story-brand .brand-symbol > span:nth-child(2) { background: #e3eee7; }
.login-story-brand .brand-symbol > span:nth-child(3) { background: #5d9481; }
.login-story-copy { margin-top: clamp(55px, 10vh, 130px); z-index: 1; }
.login-eyebrow { font-family: 'Segoe UI', sans-serif; font-size: 12px; letter-spacing: 2.5px; }
.login-story .login-eyebrow { color: #99b6a9; }
.login-story-copy h1 { margin: 26px 0 22px; font-size: clamp(30px, 3.2vw, 48px); font-weight: 400; line-height: 1.55; letter-spacing: 2px; }
.login-story-copy p { font-size: 15px; line-height: 2; color: #b6ccc1; }
.warehouse-illustration { margin: 45px 0 36px; width: 100%; max-width: 510px; opacity: .75; }
.warehouse-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; transform: skewY(-8deg); padding-block: 10px; }
.warehouse-grid > span { display: flex; align-items: end; gap: 5px; justify-content: center; height: 47px; border: 1px solid #53776b; padding: 9px; }
.warehouse-grid i { display: block; width: 40%; height: 21px; border: 1px solid #53776b; }
.warehouse-grid .is-filled { background: #446f5d; border-color: #8bab90; }
.warehouse-grid .is-filled i { background: #9bb389; border-color: #9bb389; }
.warehouse-route { display: flex; align-items: center; gap: 12px; color: #a6bfb0; font-size: 12px; margin-top: 42px; white-space: nowrap; }
.warehouse-route i { flex: 1; height: 1px; background: #53776b; }
.login-story-footer { margin-top: auto; color: #90aea0; font-size: 12px; letter-spacing: 1px; }
.login-entry { display: flex; align-items: center; justify-content: center; padding: 60px; position: relative; }
.login-entry-card { width: 100%; max-width: 350px; }
.login-entry-card > .login-eyebrow { color: var(--wms-accent); }
.login-entry-card h2 { margin: 18px 0 8px; font-size: 27px; font-weight: 500; color: var(--wms-text); }
.login-entry-card > p { color: var(--wms-text-secondary); font-size: 15px; margin: 0 0 40px; }
.login-entry .ant-input-affix-wrapper-lg { padding-block: 10px; font-size: 15px; }
.login-entry .ant-input-prefix { margin-right: 12px; color: var(--wms-text-secondary); }
.login-entry .ant-btn-lg { height: 44px; margin-top: 8px; font-size: 15px; }
.login-entry .ant-btn-lg > .anticon { margin-left: auto; }
.login-entry-note { display: flex; justify-content: center; align-items: center; gap: 7px; margin-top: 28px; color: var(--wms-text-secondary); font-size: 13px; }
.login-entry-note > span { width: 4px; height: 4px; background: var(--wms-accent); border-radius: 50%; }
.login-entry footer { position: absolute; bottom: 28px; color: var(--wms-text-secondary); font-size: 12px; letter-spacing: 1px; }
@media (min-width: 1600px) { .enterprise-header { padding-inline: 30px; gap: 50px; } .enterprise-modules { gap: 12px; } .enterprise-sidebar { width: 220px; flex-basis: 220px; } .workstation-grid { grid-template-columns: minmax(0, 1fr) 310px; } }
@media (max-width: 1250px) { .enterprise-header { gap: 20px; padding-inline: 18px; } .enterprise-modules button { padding-inline: 12px; } .workspace-search-trigger > span, .workspace-search-trigger kbd { display: none; } .workspace-search-trigger { border: 0; background: none; padding: 0; } .enterprise-account { gap: 8px; } .workstation-grid { grid-template-columns: minmax(0, 1fr) 240px; } .enterprise-content .search-panel-grid { flex-wrap: wrap; } .enterprise-content .search-panel-actions { margin-left: 0; } }
@media (max-width: 1000px) { .enterprise-user > span:not(.ant-avatar), .enterprise-brand b { display: none; } .enterprise-header { gap: 16px; } .enterprise-modules { gap: 0; } .enterprise-modules button { padding-inline: 10px; } .workstation-grid { grid-template-columns: minmax(0, 1fr); } .workstation-aside { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; } .workspace-path, .workspace-page-heading { padding-inline: 20px; } .enterprise-content.cockpit-content { padding-inline: 20px; } .enterprise-content .search-panel-fields { grid-template-columns: repeat(2, minmax(120px, 1fr)); } .login-story { padding-inline: 36px; } .login-entry { padding: 40px; } }
@media (max-width: 767px) { .enterprise-header { height: auto; min-height: 58px; flex-wrap: wrap; padding: 12px 16px 0; gap: 0; } .enterprise-brand { font-size: 18px; } .enterprise-account { order: 1; } .enterprise-modules { order: 2; width: calc(100% + 32px); margin: 10px -16px 0; flex-basis: calc(100% + 32px); overflow-x: auto; height: 42px; padding-inline: 6px; } .enterprise-modules button { flex: 1; padding-inline: 12px; font-size: 15px; } .enterprise-sidebar { display: none; } .workspace-path { padding-inline: 16px; min-height: 35px; } .workspace-page-heading { padding: 16px; } .workspace-page-heading h1 { font-size: 20px; } .workspace-page-heading p { font-size: 13px; } .workspace-section-code { display: none; } .enterprise-content.cockpit-content { padding: 0 12px 16px; } .workstation-queues { grid-template-columns: repeat(2, minmax(0, 1fr)); padding-block: 0; } .workstation-queues > button { padding: 16px 18px; } .workstation-queues > button:nth-child(2) { border-right: 0; } .workstation-queues > button:nth-child(-n+2) { border-bottom: 1px solid var(--wms-border); } .workstation-queues strong { font-size: 29px; margin-top: 5px; } .workstation-aside { grid-template-columns: 1fr; } .workstation-toolbar > span { font-size: 12px; gap: 7px; } .section-caption { display: none; } .enterprise-content .search-panel-fields { grid-template-columns: minmax(0, 1fr); } .enterprise-content .search-panel-grid { display: block; } .enterprise-content .search-panel-actions { margin-top: 14px; } .enterprise-content > .page-shell > .filter-panel { padding: 16px; } .enterprise-content .warehouse-workspace .search-panel-fields { grid-template-columns: minmax(0, 1fr); } .enterprise-task-panel .ant-drawer-header, .enterprise-task-panel .ant-drawer-body, .enterprise-task-panel .ant-drawer-footer { padding: 16px; } .enterprise-task-panel .ant-drawer-body > .ant-form { padding: 16px; } .task-panel-title h2 { font-size: 17px; } .task-panel-footer > span { display: none; } .sku-editor-grid { grid-template-columns: 1fr; } .enterprise-task-panel.is-wide .ant-form-horizontal > .ant-form-item > .ant-row { grid-template-columns: minmax(0, 1fr); } .workspace-login { grid-template-columns: minmax(0, 1fr); } .login-story { display: none; } .login-entry { min-height: 100dvh; padding: 36px; } }
@media (prefers-reduced-motion: reduce) { .enterprise-app *, .enterprise-task-panel * { scroll-behavior: auto !important; animation-duration: 0s !important; transition-duration: 0s !important; } }

.enterprise-content .search-panel-grid .ant-form-item-label { padding: 0 0 4px; text-align: left; }
.enterprise-content .search-panel-grid .ant-form-item-label > label { font-size: 14px; font-weight: 400; height: 20px; color: var(--wms-text-secondary); }
.enterprise-content .search-panel-actions { height: 36px; align-items: center; margin-left: 0; }
.enterprise-content .search-panel-grid .ant-input-affix-wrapper, .enterprise-content .search-panel-grid .ant-select, .enterprise-content .search-panel-grid .ant-select-selector, .enterprise-content .search-panel-actions .ant-btn { height: 36px !important; min-height: 36px !important; }
.enterprise-content .search-panel-grid .ant-input-affix-wrapper { padding: 4px 11px !important; }
.enterprise-content .search-panel-grid .ant-input-affix-wrapper > .ant-input { height: 24px !important; min-height: 0 !important; line-height: 24px !important; font-size: 15px; }
.enterprise-content .search-panel-grid .ant-select-single .ant-select-selection-item, .enterprise-content .search-panel-grid .ant-select-single .ant-select-selection-placeholder { line-height: 32px !important; }
.enterprise-content .search-panel-grid .ant-select-selection-search-input { height: 32px !important; }
.enterprise-app .ant-btn, .enterprise-task-panel .ant-btn, .workspace-login .ant-btn { font-weight: 500; box-shadow: none; }
.enterprise-content .filter-panel { border-top-color: var(--wms-border); }
.enterprise-content .operations-inline-filters .filter-panel::before, .enterprise-content .operations-inline-filters .filter-panel::after { display: none; }
.enterprise-content .table-panel > .action-row { padding: 10px 16px; min-height: 48px; }
.workspace-page-heading { padding-block: 16px; }
@media (max-width: 767px) { .enterprise-content .search-panel-fields { display: flex; width: 100%; } .enterprise-content .search-panel-fields .ant-form-item { flex: 1 1 145px; width: auto; } .enterprise-content .search-panel-grid { display: flex; } .enterprise-content .search-panel-actions { margin-top: 0; } }

.workspace-view-switch { display: flex; flex-direction: column; gap: 12px; min-height: 0; min-width: 0; }
.workspace-view-control { display: flex; align-items: center; flex: 0 0 auto; }
.workspace-view-control > .ant-select { width: 184px; }
.workspace-view-content { min-height: 0; min-width: 0; }
.workspace-view-content[hidden] { display: none; }
.workspace-view-switch.merged-tabs { flex: 1; }
.merged-tabs > .workspace-view-content { flex: 1; overflow: auto; }
.enterprise-content .page-subtitle { display: none; }
.enterprise-sidebar nav { margin-bottom: auto; }
.task-panel-title h2 { margin-top: 0; font-size: 18px; }
[data-theme='dark'] .enterprise-content .ant-table-wrapper .ant-table-thead > tr > th { background: #182941 !important; color: #b4c4da; }
[data-theme='dark'] .enterprise-content .ant-table-tbody > tr:hover > td { background: #1a3443 !important; }
[data-theme='dark'] .enterprise-content .ant-table-tbody > tr > td { color: #e0eaf6; }
[data-theme='dark'] .enterprise-brand .brand-symbol > span { background: #22c9a6; }
[data-theme='dark'] .enterprise-brand .brand-symbol > span:nth-child(2) { background: #75ebca; }
[data-theme='dark'] .enterprise-brand .brand-symbol > span:nth-child(3) { background: #277c83; }
[data-theme='dark'] .enterprise-user .ant-avatar { background: #194640; color: #8debd3; }
[data-theme='dark'] .enterprise-app .ant-btn-primary, [data-theme='dark'] .enterprise-task-panel .ant-btn-primary, [data-theme='dark'] .workspace-login .ant-btn-primary { background: #22c9a6; border-color: #22c9a6; color: #071b1b; }
[data-theme='dark'] .enterprise-app .ant-btn-primary:hover { background: #56dfbf; border-color: #56dfbf; }
[data-theme='dark'] .login-story { background: #0e2630; }
[data-theme='dark'] .login-entry { background: #101c2e; }

/* Every dashboard region expands with the available workspace. */
.enterprise-content > .chart-workstation { flex: 1; min-height: 0; display: grid; grid-template-rows: auto minmax(200px, .85fr) minmax(260px, 1fr); gap: 12px; }
.chart-workstation:has(> .ant-alert) { grid-template-rows: auto auto minmax(200px, .85fr) minmax(260px, 1fr); }
.dashboard-chart { display: flex; flex-direction: column; }
.dashboard-chart > header { flex: 0 0 auto; }
.dashboard-chart > .echarts-for-react { flex: 1 1 0; min-height: 150px; height: auto !important; }
.dashboard-chart-grid { min-height: 0; align-items: stretch; }
.enterprise-app, .enterprise-task-panel { font-family: 'Segoe UI', 'Microsoft YaHei UI', 'Microsoft YaHei', sans-serif; }
.enterprise-app .ant-table-cell { font-family: 'Segoe UI', 'Microsoft YaHei UI', 'Microsoft YaHei', sans-serif !important; }
.enterprise-content > .page-shell > .collection-workspace { flex: 1; min-height: 0; }
.enterprise-content .collection-workspace .collection-results { flex: 1; }
.enterprise-content .operations-canvas > .reverse-data-panel { background: var(--wms-surface); border: 1px solid var(--wms-border); border-radius: 6px; }
.enterprise-content .consumable-page .reverse-data-panel > .workspace-view-switch { flex: 1 1 0; min-height: 0; }
.consumable-page .workspace-view-content:not([hidden]) { display: flex; flex-direction: column; flex: 1; min-height: 0; }
@media (max-width: 767px) { .enterprise-content > .chart-workstation { display: flex; min-height: auto; } .dashboard-chart { min-height: 270px; } .dashboard-chart-grid { display: flex; flex-direction: column; } .operations-status-control { grid-template-columns: 160px; } .operations-status-control > .ant-select { width: 160px; } }

/* Data changes must never move neighboring filters or actions. */
.collection-results-heading > span { display: inline-block; flex: 0 0 15ch; min-width: 15ch; white-space: nowrap; font-variant-numeric: tabular-nums; }
.enterprise-content .action-row .table-context { min-width: 18ch; white-space: nowrap; font-variant-numeric: tabular-nums; }
.operations-canvas-heading .operations-header-actions > .ant-btn-primary { min-width: 136px; }
.enterprise-content .table-row-actions { display: flex; align-items: center; flex-wrap: nowrap; gap: 6px; white-space: nowrap; }
.enterprise-content .table-row-actions .ant-btn { padding: 2px 4px; height: 28px; min-height: 28px; border: 0; box-shadow: none; background: transparent; font-size: 14px; }
.enterprise-content .table-row-actions .ant-btn-primary { color: var(--wms-accent); background: transparent; }
[data-theme='dark'] .enterprise-content .table-row-actions .ant-btn-primary { color: #36dbb7; background: transparent; border-color: transparent; }
.enterprise-content .table-row-actions .ant-btn:hover { background: var(--wms-surface-soft); }

/* One spacing scale for every business form, including task drawers. */
.enterprise-task-panel .ant-drawer-header { padding: 16px 24px; }
.enterprise-task-panel .ant-drawer-body { padding: 20px 24px; }
.enterprise-task-panel .ant-drawer-body > .ant-form { padding: 20px; }
.enterprise-task-panel .ant-drawer-footer { padding: 12px 24px; }
.enterprise-task-panel .ant-form-item, .enterprise-content .form-panel .ant-form-item { margin-bottom: 16px; }
.enterprise-task-panel .ant-form-vertical .ant-form-item-label, .enterprise-content .ant-form-vertical:not(.filter-panel .ant-form) .ant-form-item-label { padding-bottom: 6px; }
.enterprise-task-panel .ant-form-item-label > label, .enterprise-content .form-panel .ant-form-item-label > label { height: auto; min-height: 20px; font-size: 15px; line-height: 20px; font-weight: 400; color: var(--wms-text-secondary); }
.enterprise-task-panel .ant-form-item-control-input { min-height: 36px; }
.enterprise-task-panel .form-grid, .enterprise-task-panel .sku-editor-grid { column-gap: 16px; row-gap: 0; align-items: start; }
.enterprise-task-panel .ant-form-item .ant-input-number, .enterprise-task-panel .ant-form-item .ant-picker { width: 100%; }
.enterprise-task-panel .order-form-section + .order-form-section { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--wms-border); }
.enterprise-task-panel .form-section-title, .enterprise-task-panel .sku-edit-section-title { margin: 0 0 12px; padding-bottom: 10px; font-size: 15px; font-weight: 600; color: var(--wms-text); }
.enterprise-task-panel .order-line-row { gap: 12px; padding: 12px; margin-bottom: 10px; border-color: var(--wms-border); background: var(--wms-surface-soft); }
.enterprise-task-panel .order-line-row .ant-form-item, .enterprise-task-panel .inbound-check-line .ant-form-item, .enterprise-task-panel .return-item-row .ant-form-item { margin-bottom: 0; }
.enterprise-task-panel .order-line-row > .ant-form-item .ant-form-item-control-input, .enterprise-task-panel .order-line-row > .ant-form-item .ant-form-item-control-input-content { min-height: 36px; }
.enterprise-task-panel .order-line-row > .ant-btn { align-self: end; margin-bottom: 0; }
.enterprise-task-panel .return-item-row { grid-template-columns: repeat(2, minmax(0, 1fr)); min-width: 0; gap: 16px; padding: 16px; }
.enterprise-task-panel .return-items-list { overflow: visible; }
.enterprise-task-panel .return-form-section { margin-block: 16px 12px; }
.enterprise-task-panel .ant-form-item-explain-error { font-size: 14px; line-height: 20px; }
.enterprise-task-panel .ant-form-horizontal > .ant-form-item > .ant-row { align-items: start; }
.enterprise-task-panel .ant-form-horizontal .ant-form-item-label { padding-right: 12px; }
[data-theme='dark'] .organization-tree-panel .ant-tree-node-content-wrapper.ant-tree-node-selected { background: #194640; color: #8debd3; }
[data-theme='dark'] .organization-tree-panel .ant-tree-node-selected .department-tree-label { color: #e0f8f2; }
@media (max-width: 767px) { .enterprise-task-panel .ant-drawer-header, .enterprise-task-panel .ant-drawer-body, .enterprise-task-panel .ant-drawer-footer { padding: 16px; } .enterprise-task-panel .ant-drawer-body > .ant-form { padding: 16px; } .enterprise-task-panel .return-item-row { grid-template-columns: minmax(0, 1fr); } .enterprise-task-panel .form-grid-2, .enterprise-task-panel .form-grid-3 { grid-template-columns: minmax(0, 1fr); } .enterprise-task-panel .form-grid-span-2 { grid-column: auto; } }

/* Consistent spacing for every list table, not just input forms. */
.enterprise-content .ant-table-wrapper .ant-table-thead > tr > th,
.enterprise-task-panel .ant-table-wrapper .ant-table-thead > tr > th { height: 42px; padding: 10px 16px !important; font-size: 14px; line-height: 20px; font-weight: 500; white-space: nowrap; vertical-align: middle; }
.enterprise-content .ant-table-wrapper .ant-table-tbody > tr > td,
.enterprise-task-panel .ant-table-wrapper .ant-table-tbody > tr > td { height: 56px; padding: 10px 16px !important; font-size: 15px; line-height: 20px; vertical-align: middle; font-variant-numeric: tabular-nums; }
.enterprise-content .ant-table-wrapper .ant-table-measure-row > td,
.enterprise-task-panel .ant-table-wrapper .ant-table-measure-row > td { height: 0; padding: 0 !important; line-height: 0; }
.enterprise-content .ant-table-cell .table-progress { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; line-height: 20px; }
.enterprise-content .ant-table-cell .table-progress > small { line-height: 18px; font-size: 14px; color: var(--wms-text-secondary); }
.enterprise-content .ant-table-cell .ant-tag { margin-inline-end: 0; padding-inline: 7px; line-height: 20px; white-space: nowrap; }
.enterprise-content .ant-table-cell .ant-space { gap: 6px !important; }
.enterprise-content .ant-table-cell .ant-btn { font-size: 14px; }
.enterprise-content .ant-table-cell .table-row-actions { gap: 6px; min-height: 28px; }
.enterprise-content .ant-table-cell .table-row-actions .ant-btn { padding-inline: 3px; font-size: 14px; gap: 4px; }
.enterprise-content .ant-table-wrapper .ant-table-pagination { padding: 12px 16px; margin: 0 !important; min-height: 52px; align-items: center; }
.enterprise-app[data-density='compact'] .ant-table-wrapper .ant-table-tbody > tr > td { height: 44px; padding: 6px 12px !important; }
.enterprise-app[data-density='compact'] .ant-table-wrapper .ant-table-thead > tr > th { height: 36px; padding: 8px 12px !important; }
@media (max-width: 767px) { .enterprise-content .ant-table-wrapper .ant-table-thead > tr > th, .enterprise-content .ant-table-wrapper .ant-table-tbody > tr > td { padding-inline: 12px !important; } }

/* Readable body text across legacy business views and task panels. */
.enterprise-app, .enterprise-task-panel, .workspace-login { font-size: 15px; }
.enterprise-content .ant-input, .enterprise-content .ant-select, .enterprise-content .ant-input-number-input,
.enterprise-task-panel .ant-input, .enterprise-task-panel .ant-select, .enterprise-task-panel .ant-input-number-input { font-size: 15px; }
.enterprise-content .ant-table-cell small, .enterprise-content .table-muted { font-size: 13px; }
.enterprise-content .ant-table-cell .ant-tag { font-size: 13px; }
.enterprise-sidebar nav button { font-size: 15px; min-height: 42px; }
.enterprise-modules button { font-size: 15px; }
.enterprise-content .ant-table-wrapper .ant-table-tbody > tr > td { line-height: 22px; }

/* List pages reserve fixed tools, header and pagination; only rows scroll. */
.enterprise-content.cockpit-content:has(.fixed-list-page) { overflow: hidden; }
.enterprise-content .page-shell.fixed-list-page { flex: 1 1 0; min-height: 0; min-width: 0; overflow: hidden; }
.fixed-list-page > .filter-panel, .fixed-list-page > .page-title-row, .collection-toolbar, .collection-results-heading { flex: 0 0 auto; }
.fixed-list-page > .table-panel,
.fixed-list-page .collection-results > .table-panel,
.fixed-list-page .stock-list-layout > .table-panel { display: flex; flex-direction: column; flex: 1 1 0; min-height: 0; min-width: 0; overflow: hidden; }
.fixed-list-page .table-panel > .action-row { flex: 0 0 auto; }
.fixed-list-page .table-panel > .work-table { flex: 1 1 0; min-height: 0; min-width: 0; margin-top: 0 !important; }
.fixed-list-page .collection-workspace { flex: 1 1 0; min-height: 0; overflow: hidden; }
.fixed-list-page .collection-results { display: flex; flex-direction: column; flex: 1 1 0; min-height: 0; }
.fixed-list-page .stock-list-layout { flex: 1 1 0; min-height: 0; grid-template-rows: minmax(0, 1fr); align-items: stretch; overflow: hidden; }
.fixed-list-page .stock-inline-detail { min-height: 0; max-height: 100%; overflow: auto; }
.workspace-view-content:not([hidden]):has(.fixed-list-page), .merged-page:has(> .fixed-list-page) { display: flex; flex-direction: column; flex: 1 1 0; min-height: 0; overflow: hidden; }
.merged-page:has(> .fixed-list-page) { height: 100%; }
.operations-return-filters { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px; }
.operations-filter-field { display: flex; flex-direction: column; gap: 4px; width: 200px; min-width: 0; }
.operations-filter-field > label { font-size: 14px; line-height: 20px; color: var(--wms-text-secondary); }
.operations-filter-field > .ant-select { width: 100%; }
.enterprise-content .return-processing-page .return-list-panel { gap: 0; }
@media (max-width: 1200px) { .fixed-list-page .stock-list-layout.has-detail { grid-template-rows: minmax(180px, 1fr) minmax(0, .8fr); } }
@media (max-width: 767px) { .operations-return-filters { gap: 10px; } .operations-filter-field { flex: 1 1 140px; width: auto; } }

.audit-list-page > .ant-row, .audit-summary-details { flex: 0 0 auto; }
.audit-summary-details .ant-collapse-content-box { max-height: 180px; overflow: auto; }
@media (max-width: 767px) { .audit-list-page > .ant-row .ant-statistic-content { font-size: 18px !important; } .audit-list-page > .ant-row .ant-card-body { padding: 8px; } }

/* Warm light palette, shared by every surface including portaled controls. */
:root:not([data-theme='dark']), [data-theme='light'] {
  color-scheme: light;
  --wms-accent: #616161; --wms-text: #303030; --wms-text-secondary: #707070;
  --wms-surface: #ffffff; --wms-surface-soft: #f4f4f4; --wms-border: #e1e1e1;
  --workspace-background: #f1f1f1; --workspace-nav: #ebebeb; --wms-canvas: #f1f1f1;
}
[data-theme='light'] .enterprise-brand .brand-symbol > span { background: #616161; }
[data-theme='light'] .enterprise-brand .brand-symbol > span:nth-child(2) { background: #b19575; }
[data-theme='light'] .enterprise-brand .brand-symbol > span:nth-child(3) { background: #d4bea2; }
[data-theme='light'] .enterprise-user .ant-avatar { background: #e3e3e3; color: #4a4a4a; }
[data-theme='light'] :is(.filter-panel,.table-panel,.form-panel,.ant-card,.reverse-data-panel,.reverse-scan-panel,.organization-tree-panel,.warehouse-console-metric) { background: var(--wms-surface); border-color: var(--wms-border); box-shadow: none; }
[data-theme='light'] :is(.ant-input,.ant-input-affix-wrapper,.ant-input-number,.ant-picker,.ant-select-selector) { background: #ffffff; border-color: #d4d4d4; }
[data-theme='light'] :is(.ant-drawer-content,.ant-modal-content,.ant-select-dropdown,.ant-dropdown-menu,.ant-popover-inner) { background: #ffffff; }
[data-theme='light'] .ant-drawer-header, [data-theme='light'] .ant-drawer-footer { background: #fafafa; border-color: var(--wms-border); }
[data-theme='light'] .ant-descriptions-bordered .ant-descriptions-item-label { background: #f6f6f6; color: #616161; }
[data-theme='light'] .ant-table-thead > tr > th { background: #f7f7f7 !important; color: #616161 !important; border-color: var(--wms-border); }
[data-theme='light'] .ant-table-tbody > tr > td { background: #ffffff; color: #303030; border-color: var(--wms-border); }
[data-theme='light'] .ant-table-tbody > tr:hover > td { background: #f6f6f6 !important; }
[data-theme='light'] .ant-table-tbody > .ant-table-row-selected > td { background: #e8f3ef !important; }
[data-theme='light'] .ant-btn-default:not(:disabled) { background: #ffffff; border-color: #d4d4d4; }
[data-theme='light'] .ant-progress-inner { background: #e5e5e5; }
[data-theme='light'] .workspace-login, [data-theme='light'] .login-entry { background: #f1f1f1; }
[data-theme='light'] .login-story { background: #e8e8e8; color: #303030; }
[data-theme='light'] .warehouse-console-location { background: #f3f3f3; border-color: #cdbda5; color: #534432; }
[data-theme='light'] .warehouse-console-location.is-warning { background: #f7e8ca; border-color: #d1ac68; }
[data-theme='light'] .warehouse-console-location.is-danger { background: #f4ddd2; border-color: #cb927b; }

/* Inventory and reverse pages have one control strip and one data region. */
.enterprise-content[data-module='inventory'], .enterprise-content[data-module='reverse'] { --list-gap: 12px; }
.enterprise-content:is([data-module='inventory'],[data-module='reverse'],[data-module='business'],[data-module='system']) .collection-results-heading { display: none; }
.enterprise-content:is([data-module='inventory'],[data-module='reverse'],[data-module='business'],[data-module='system']) .page-subtitle { display: none; }
.enterprise-content:is([data-module='inventory'],[data-module='reverse'],[data-module='business'],[data-module='system']) .filter-panel { padding: 14px 16px !important; border-top-width: 1px; }
.enterprise-content:is([data-module='inventory'],[data-module='reverse'],[data-module='business'],[data-module='system']) .table-panel { border-top-width: 1px; }
.enterprise-content:is([data-module='inventory'],[data-module='reverse'],[data-module='business'],[data-module='system']) .collection-workspace { gap: 12px; }
.list-toolbar { display: flex; flex: 0 0 auto; align-items: center; gap: 12px; padding: 12px 16px; border-bottom: 1px solid var(--wms-border); background: var(--wms-surface); min-width: 0; }
.list-toolbar-controls { display: flex; flex: 1; align-items: center; gap: 10px; flex-wrap: wrap; min-width: 0; }
.list-toolbar-controls > .ant-input-affix-wrapper { width: 260px; }
.list-toolbar-controls > .ant-select { width: 170px; }
.list-toolbar-controls > .workspace-view-switch { flex: 0 0 auto; margin: 0; }
.list-toolbar-controls .workspace-view-control { padding: 0; border: 0; background: transparent; }
.list-toolbar-controls .reverse-query-filter { padding: 0; }
.enterprise-content .refined-list-page > .reverse-data-panel { padding: 0; border: 1px solid var(--wms-border); border-radius: 6px; overflow: hidden; }
.refined-list-page > .reverse-scan-panel { padding: 14px 16px; }
.refined-list-page > .reverse-data-panel > .work-table { margin-top: 0; }
.list-toolbar .return-putaway-search { width: 280px; }
.list-toolbar .action-group { display: contents; }
.enterprise-content .list-metrics-strip { margin: 0 !important; padding: 10px 16px; border: 1px solid var(--wms-border); border-radius: 6px; background: var(--wms-surface); flex: 0 0 auto; gap: 8px 0; }
.list-metrics-strip > .ant-col { flex: 1; max-width: none; padding: 0 16px !important; border-left: 1px solid var(--wms-border); }
.list-metrics-strip > .ant-col:first-child { border-left: 0; padding-left: 0 !important; }
.list-metrics-strip .ant-card { border: 0; background: transparent; box-shadow: none; }
.list-metrics-strip .ant-card-body { padding: 0; }
.list-metrics-strip .ant-statistic { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.list-metrics-strip .ant-statistic-title { margin: 0; font-size: 14px; color: var(--wms-text-secondary); white-space: nowrap; }
.list-metrics-strip .ant-statistic-content { font-size: 21px; line-height: 30px; color: var(--wms-text) !important; white-space: nowrap; }
.list-metrics-strip .ant-statistic-content-prefix { display: none; }
.warehouse-overview-page .warehouse-card-grid { margin: 0 !important; padding: 16px; }
.warehouse-overview-page .ant-card-head { min-height: 56px; padding-inline: 18px; }
.warehouse-overview-page .warehouse-card-metrics { margin-top: 0; }
.warehouse-overview-page .warehouse-card-contact { margin-top: 14px; padding-top: 12px; }
.location-overview-page > .table-panel > .ant-card { margin: 12px 16px; }
.location-overview-page .table-panel { padding-bottom: 4px !important; }
.enterprise-content .warehouse-console-summary .warehouse-console-metric { min-height: 60px; display: flex; flex-direction: row; align-items: center; justify-content: space-between; padding: 12px 16px; }
.enterprise-content .warehouse-console-summary .warehouse-console-metric strong { font-size: 23px; }
@media (max-width: 767px) {
  .list-toolbar { padding: 12px; align-items: flex-start; }
  .list-toolbar-controls > .ant-input-affix-wrapper, .list-toolbar .return-putaway-search { width: 100%; }
  .list-toolbar-controls > .ant-select { flex: 1; min-width: 140px; }
  .list-metrics-strip { flex-wrap: wrap; }
  .list-metrics-strip > .ant-col { flex: 1 1 45%; }
  .list-metrics-strip .ant-statistic-content { font-size: 18px; }
  .warehouse-overview-page .warehouse-card-grid { padding: 12px; }
}

/* Warm warehouse summaries stay neutral; color is reserved for status. */
.list-metrics-strip .ant-statistic-content-prefix { display: none !important; }
[data-theme='light'] .warehouse-card-metric { background: #f5f5f5 !important; border-color: #e2e2e2 !important; color: #616161; }
[data-theme='light'] .warehouse-card-metric :is(span,strong,small), [data-theme='light'] .warehouse-card-capacity { color: #616161; }
[data-theme='light'] .warehouse-card-contact { background: #f5f5f5; border-color: #e2e2e2; color: #616161; }
[data-theme='light'] .warehouse-card-title .ant-tag { background: #eee1cf; border-color: #d9c4a6; color: #616161; }
.warehouse-overview-page .warehouse-card-grid .ant-card-body { padding: 14px 16px; }
.warehouse-overview-page .warehouse-card-metric { padding: 10px 12px; border-left-width: 1px; }
.warehouse-overview-page .warehouse-card-usage { margin-top: 12px; }
.warehouse-overview-page .warehouse-card-contact { padding: 10px 16px; margin-top: 12px; margin-bottom: -14px; }
.warehouse-overview-page .ant-card-head { min-height: 50px; }
.enterprise-content .refined-list-page .ant-table-header .ant-table-cell { border-radius: 0; }
.enterprise-content .refined-list-page .work-table { padding-top: 0; }
[data-theme='light'] .enterprise-task-panel .form-readonly-line { background: #f6f6f6; color: #616161; border-color: #e1e1e1; }
[data-theme='light'] .enterprise-task-panel .work-time-inventory-summary-cell { background: #f6f6f6; border-color: #e1e1e1; }

/* Vivid accents on warm cream: actions, navigation and semantic status. */
[data-theme='light'] .enterprise-modules button.is-active { color: #147d64; }
[data-theme='light'] .enterprise-modules button.is-active::after, [data-theme='light'] .enterprise-sidebar nav button.is-active::after { background: #147d64; }
[data-theme='light'] .warehouse-card-metrics > .ant-col:first-child .warehouse-card-metric { border-left: 3px solid #168e81 !important; }
[data-theme='light'] .warehouse-card-metrics > .ant-col:last-child .warehouse-card-metric { border-left: 3px solid #d99b35 !important; }
.enterprise-content .warehouse-overview-page { flex: 1 1 0; min-height: 0; overflow: hidden; }
.enterprise-content .warehouse-overview-page > .table-panel { display: flex; flex-direction: column; flex: 1 1 0; min-height: 0; }
.enterprise-content .warehouse-overview-page .warehouse-card-grid { flex: 1 1 0; min-height: 0; overflow: auto; align-content: flex-start; }
[data-theme='light'] .list-metrics-strip > .ant-col:nth-child(1) .ant-statistic-content { color: #147d64 !important; }
[data-theme='light'] .list-metrics-strip > .ant-col:nth-child(2) .ant-statistic-content { color: #326db1 !important; }
[data-theme='light'] .list-metrics-strip > .ant-col:nth-child(3) .ant-statistic-content { color: #b77c1e !important; }
[data-theme='light'] .list-metrics-strip > .ant-col:nth-child(4) .ant-statistic-content { color: #c25c50 !important; }
[data-theme='light'] .ant-btn-dangerous { color: #c64c55; border-color: #e7b1af; }
[data-theme='light'] { --wms-accent: #147d64; }
[data-theme='light'] .enterprise-brand .brand-symbol > span { background: #078d7c; }
[data-theme='light'] .enterprise-brand .brand-symbol > span:nth-child(2) { background: #35bb9a; }
[data-theme='light'] .enterprise-brand .brand-symbol > span:nth-child(3) { background: #e5ac54; }
[data-theme='light'] .enterprise-user .ant-avatar { background: #d9eee4; color: #087b65; }
[data-theme='light'] .enterprise-sidebar nav button.is-active { background: #dcefe6; color: #147d64; }
[data-theme='light'] .enterprise-app .ant-btn-primary, [data-theme='light'] .enterprise-task-panel .ant-btn-primary { background: #147d64; border-color: #147d64; color: #fffdf8; }
[data-theme='light'] .enterprise-app .ant-btn-primary:hover, [data-theme='light'] .enterprise-task-panel .ant-btn-primary:hover { background: #208b70; border-color: #208b70; }
[data-theme='light'] .enterprise-app .ant-btn-primary:disabled, [data-theme='light'] .enterprise-task-panel .ant-btn-primary:disabled { background: #e4e1d7; border-color: #ded9ce; color: #928b80; }
[data-theme='light'] .ant-tag-blue, [data-theme='light'] .ant-tag-processing { background: #e1efff; color: #205db7; border-color: #adcdf3; }
[data-theme='light'] .ant-tag-cyan { background: #dff3f1; color: #087a76; border-color: #9cd6ce; }
[data-theme='light'] .ant-tag-green, [data-theme='light'] .ant-tag-success { background: #e2f3e6; color: #23734a; border-color: #a8d9b7; }
[data-theme='light'] .ant-tag-orange, [data-theme='light'] .ant-tag-gold, [data-theme='light'] .ant-tag-warning { background: #fff0cf; color: #9b5a00; border-color: #eac374; }
[data-theme='light'] .ant-tag-red, [data-theme='light'] .ant-tag-error { background: #fce3df; color: #b53f40; border-color: #e9b0a7; }
[data-theme='light'] .ant-tag-purple { background: #eee4f6; color: #7851a1; border-color: #ccb4e4; }
[data-theme='light'] .ant-pagination-item-active { border-color: #147d64; background: #e1f1e6; }
[data-theme='light'] .ant-select-item-option-selected:not(.ant-select-item-option-disabled) { background: #dcf2e8; color: #08715d; }
[data-theme='light'] .ant-radio-button-wrapper-checked, [data-theme='light'] .ant-segmented-item-selected { color: #147d64; background: #e0f1e7; }
[data-theme='light'] .enterprise-content .ant-table-tbody > .is-selected-record > td { background: #e7f3e9 !important; }
[data-theme='light'] .enterprise-content .ant-table-tbody > tr:hover > td { background: #eef5e9 !important; }
[data-theme='light'] .warehouse-card-metric:first-child { border-left: 3px solid #168e81 !important; }
[data-theme='light'] .warehouse-card-metric:last-child { border-left: 3px solid #d99b35 !important; }
[data-theme='light'] .warehouse-card-title .ant-tag { background: #e0f0e7; border-color: #a9cdbd; color: #087b65; }
[data-theme='light'] .warehouse-console-location.is-free { background: #e6f2eb; border-color: #87bda5; color: #276b50; }
[data-theme='light'] .warehouse-console-location.is-normal { background: #e0f1ef; border-color: #81bbb0; color: #176c61; }
[data-theme='light'] .warehouse-console-location.is-frozen { background: #e4ebf8; border-color: #9aafd1; color: #43618d; }
.enterprise-content .reverse-scan-form.with-refresh { grid-template-columns: repeat(4, minmax(0, 1fr)) auto auto; }
.enterprise-content .warehouse-console-page > .list-toolbar { border: 1px solid var(--wms-border); border-radius: 6px; flex: 0 0 auto; }
@media (max-width: 1100px) { .enterprise-content .reverse-scan-form.with-refresh { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* Business and administration use the same compact data workspace. */
.enterprise-content:is([data-module='business'],[data-module='system']) .fixed-list-page .table-panel { padding: 0 !important; }
.enterprise-content .organization-page { flex: 1 1 0; min-height: 0; overflow: hidden; }
.merged-page:has(> .organization-page), .workspace-view-content:not([hidden]):has(.organization-page) { display: flex; flex-direction: column; flex: 1 1 0; min-height: 0; overflow: hidden; }
.merged-page:has(> .organization-page) { height: 100%; }
.enterprise-content .organization-overview { flex: 0 0 auto; grid-template-columns: repeat(4,minmax(0,1fr)); background: var(--wms-surface); border-color: var(--wms-border); }
.enterprise-content .organization-overview > div { padding: 10px 16px; border-color: var(--wms-border); background: transparent; }
.enterprise-content .organization-overview .overview-icon { display: none; }
.enterprise-content .organization-overview p { display: flex; flex: 1; align-items: center; justify-content: space-between; gap: 10px; }
.enterprise-content .organization-overview small { color: var(--wms-text-secondary); font-size: 14px; }
.enterprise-content .organization-overview strong { color: var(--wms-accent); }
.enterprise-content .organization-workspace { flex: 1 1 0; min-height: 0; background: var(--wms-surface); border-color: var(--wms-border); grid-template-columns: 230px minmax(0,1fr); }
.enterprise-content .organization-tree-panel { min-height: 0; overflow: auto; background: var(--wms-surface-soft); border-color: var(--wms-border); }
.enterprise-content .organization-member-panel { display: flex; flex-direction: column; min-height: 0; padding: 12px 16px 0; }
.enterprise-content .organization-member-panel .panel-heading { flex: 0 0 auto; }
.enterprise-content .organization-member-panel .work-table { flex: 1 1 0; min-height: 0; }
[data-theme='light'] .organization-tree-panel .ant-tree-node-selected { background: #dcefe6 !important; color: #147d64; }
.enterprise-content .report-page { gap: 12px; }
.report-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.report-toolbar span { color: var(--wms-text-secondary); font-size: 14px; }
.report-chart-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.report-chart-grid .ant-card { min-width: 0; }
.report-chart-grid .ant-card-head { min-height: 46px; padding-inline: 16px; font-size: 15px; }
.report-chart-grid .ant-card-body { padding: 8px; }
@media(max-width:767px) {
 .enterprise-content .organization-overview { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .enterprise-content .organization-workspace { grid-template-columns: minmax(0,1fr); grid-template-rows: 135px minmax(0,1fr); }
 .enterprise-content .organization-tree-panel { border-right: 0; border-bottom: 1px solid var(--wms-border); }
 .enterprise-content .organization-member-panel { padding: 10px 12px 0; }
 .enterprise-content .member-panel-heading { flex-wrap: wrap; gap: 8px; }
 .enterprise-content .member-panel-heading > .ant-input-affix-wrapper { width: 100%; }
 .report-chart-grid { grid-template-columns: minmax(0,1fr); }
 .list-metrics-strip .ant-statistic { flex-wrap: wrap; gap: 2px 8px; }
}

/* Team management: direct section navigation and a full-width member directory. */
.enterprise-content .team-management-page { flex: 1 1 0; min-height: 0; overflow: hidden; }
.team-management-tabs { display: flex; flex-direction: column; flex: 1 1 0; min-height: 0; }
.team-management-tabs > .ant-tabs-nav { flex: 0 0 auto; margin: 0 0 12px; background: var(--wms-surface); border: 1px solid var(--wms-border); border-radius: 6px; padding: 0 18px; }
.team-management-tabs > .ant-tabs-nav::before { border: 0; }
.team-management-tabs .ant-tabs-tab { padding: 13px 2px; font-size: 15px; }
.team-management-tabs .ant-tabs-tab + .ant-tabs-tab { margin-left: 32px; }
.team-management-tabs > .ant-tabs-content-holder, .team-management-tabs > .ant-tabs-content-holder > .ant-tabs-content { display: flex; flex-direction: column; flex: 1 1 0; min-height: 0; overflow: hidden; }
.team-management-tabs .ant-tabs-tabpane-active { display: flex; flex-direction: column; flex: 1 1 0; min-height: 0; }
.team-management-content { display: flex; flex-direction: column; flex: 1 1 0; min-height: 0; overflow: hidden; }
.team-management-content > .page-shell { height: 100%; }
.team-management-content > .page-shell > .page-title-row { display: none; }
.team-members-workspace { display: flex; flex-direction: column; flex: 1 1 0; min-height: 0; overflow: hidden; border: 1px solid var(--wms-border); border-radius: 6px; background: var(--wms-surface); }
.team-member-filters { display: grid; grid-template-columns: 240px minmax(220px,360px) auto; justify-content: start; gap: 12px; padding: 16px; flex: 0 0 auto; border-bottom: 1px solid var(--wms-border); }
.team-member-summary { display: flex; align-items: center; gap: 16px; padding: 12px 16px; flex: 0 0 auto; font-size: 14px; color: var(--wms-text-secondary); }
.team-member-summary strong { font-size: 15px; color: var(--wms-text); font-weight: 600; }
.team-member-summary span { font-variant-numeric: tabular-nums; }
.team-members-workspace > .work-table { flex: 1 1 0; min-height: 0; }
.team-members-workspace .ant-table-pagination { padding-inline: 16px; }
.team-member-role { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.team-member-role .ant-tag { margin: 0; font-size: 12px; }
.team-members-page .member-name strong { font-size: 15px; }
.team-members-page .member-name span { font-size: 13px; }
/* Centered compact search, charcoal header and anchored sidebar navigation. */
.enterprise-header { display: grid; grid-template-columns: minmax(180px,1fr) minmax(240px,380px) minmax(180px,1fr); height: 64px; min-height: 64px; flex: 0 0 64px; gap: 24px; padding: 0 24px; background: #1b1b1b; border-color: #303030; color: #f5f5f5; }
.enterprise-header .enterprise-brand { color: #f5f5f5; justify-self: start; }
.enterprise-header .enterprise-brand b { color: #a8a8a8; }
.header-search-slot { min-width: 0; width: 100%; }
.enterprise-header .workspace-search-trigger { display: flex; width: 100%; height: 38px; padding: 0 12px; border: 1px solid #4a4a4a; border-radius: 9px; background: #303030; color: #bdbdbd; box-shadow: inset 0 1px 0 #ffffff08; }
.enterprise-header .workspace-search-trigger > span { display: inline; }
.enterprise-header .workspace-search-trigger kbd { display: block; margin-left: auto; padding: 1px 5px; border: 0; border-radius: 4px; background: #424242; color: #c5c5c5; font-family: inherit; font-size: 11px; }
.enterprise-header .workspace-search-trigger:hover { border-color: #747474; background: #363636; }
.enterprise-header .enterprise-account { justify-self: end; margin-left: 0; gap: 10px; }
.enterprise-header .enterprise-account > .ant-btn { color: #d6d6d6; font-size: 18px; width: 34px; height: 34px; padding: 0; }
.enterprise-header .enterprise-account > .ant-btn:hover { background: #343434 !important; color: #fff !important; }
.enterprise-header .enterprise-user { color: #ededed; gap: 8px; padding: 4px 0 4px 8px; }
.enterprise-header .enterprise-user > span:not(.ant-avatar) { display: inline; font-size: 14px; max-width: 130px; overflow: hidden; text-overflow: ellipsis; }
.enterprise-header .enterprise-user > .anticon { color: #bdbdbd; }
.enterprise-header .enterprise-user .ant-avatar { background: #19d873; color: #053c1e; border-radius: 8px; }
.enterprise-header .ant-badge .anticon { color: #d6d6d6; font-size: 19px; }
.mobile-navigation-trigger { display: none; }
.enterprise-sidebar { padding: 14px 12px 12px; }
.enterprise-sidebar .module-caption { padding-bottom: 12px; letter-spacing: 0; }
.sidebar-navigation-scroll { flex: 1 1 0; min-height: 0; overflow: auto; }
.enterprise-sidebar nav, .workspace-mobile-nav nav { margin: 0; overflow: visible; }
.sidebar-module-group { min-width: 0; }
.enterprise-sidebar .sidebar-module-links { padding: 4px 0 6px 15px; }
.enterprise-sidebar .sidebar-module-links button { min-height: 36px; padding: 7px 10px; font-size: 14px; gap: 9px; }
.enterprise-sidebar .sidebar-module-links button > .anticon { font-size: 15px; }
.enterprise-sidebar .sidebar-module-button { font-weight: 500; }
.enterprise-sidebar .sidebar-module-button.is-active::after { display: none; }
.settings-context-links { margin-top: 12px !important; padding-top: 12px; border-top: 1px solid var(--wms-border); }
.sidebar-settings { flex: 0 0 auto; margin-top: 12px; padding-top: 10px; border-top: 1px solid var(--wms-border); }
.sidebar-settings button { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 42px; padding: 10px 13px; border: 0; border-radius: 6px; background: transparent; color: var(--wms-text); cursor: pointer; font-size: 15px; text-align: left; }
.sidebar-settings button .anticon { font-size: 17px; }
.sidebar-settings button:hover { background: var(--wms-surface); }
.sidebar-settings button.is-active { background: var(--wms-surface); color: var(--wms-accent); font-weight: 600; }
.enterprise-sidebar.is-collapsed .sidebar-settings button { justify-content: center; padding-inline: 0; }
.enterprise-sidebar.is-collapsed .sidebar-settings button > span:not(.anticon) { display: none; }
.enterprise-sidebar.is-collapsed .sidebar-module-links { padding-left: 0; }
[data-theme='light'] .enterprise-sidebar nav .sidebar-module-button.is-active { background: #fff; color: #303030; }
[data-theme='light'] .enterprise-sidebar nav .sidebar-module-links button.is-active { background: #dcefe7; color: #147d64; }
.workspace-path .ant-breadcrumb a { color: var(--wms-text-secondary); border-radius: 3px; padding: 2px 3px; }
.workspace-path .ant-breadcrumb a:hover { background: var(--wms-surface); color: var(--wms-accent); }
.work-notifications { width: min(300px,calc(100vw - 56px)); }
.work-notifications header { display: flex; align-items: center; justify-content: space-between; padding: 0 0 10px; margin-bottom: 4px; border-bottom: 1px solid var(--wms-border); }
.work-notifications > button { display: flex; align-items: center; gap: 14px; width: 100%; padding: 12px 6px; border: 0; border-radius: 4px; background: transparent; color: var(--wms-text); cursor: pointer; text-align: left; font-size: 14px; }
.work-notifications > button:hover { background: var(--wms-surface-soft); }
.work-notifications > button b { margin-left: auto; font-variant-numeric: tabular-nums; color: var(--wms-accent); }
.work-notifications > button > .anticon { font-size: 11px; color: var(--wms-text-secondary); }
.workspace-mobile-navigation .ant-drawer-body { display: flex; padding: 12px; }
.workspace-mobile-nav { display: flex; flex: 1; min-height: 0; flex-direction: column; }
.workspace-mobile-nav .module-caption { padding: 0 12px 12px; }
.workspace-mobile-nav .desktop-sidebar-toggle { display: none; }
.workspace-mobile-nav nav { display: flex; flex-direction: column; gap: 5px; }
.workspace-mobile-nav nav button { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 40px; padding: 9px 12px; border: 0; border-radius: 5px; background: transparent; color: var(--wms-text); text-align: left; font-size: 15px; cursor: pointer; }
.workspace-mobile-nav nav button.is-active { background: var(--wms-surface-soft); color: var(--wms-accent); }
.workspace-mobile-nav .sidebar-module-links { padding-left: 15px; }
.workspace-mobile-nav .sidebar-module-links button { font-size: 14px; }
@media(max-width:1000px) {
 .enterprise-header { grid-template-columns: minmax(110px,1fr) minmax(200px,320px) minmax(120px,1fr); gap: 16px; padding-inline: 18px; }
 .enterprise-header .enterprise-user > span:not(.ant-avatar) { display: none; }
}
@media(max-width:767px) {
 .enterprise-header { grid-template-columns: 28px 34px minmax(80px,1fr) auto; padding: 0 12px; gap: 8px; flex-wrap: nowrap; }
 .mobile-navigation-trigger { display: inline-flex; color: #ddd !important; width: 28px; padding: 0; }
 .enterprise-header .enterprise-brand > span:last-child { display: none; }
 .enterprise-header .enterprise-account { gap: 3px; order: initial; }
 .enterprise-header .enterprise-account > .ant-btn { width: 29px; }
 .enterprise-header .enterprise-user { padding-left: 2px; }
 .enterprise-header .enterprise-user > .anticon { display: none; }
 .enterprise-header .workspace-search-trigger { height: 34px; padding-inline: 9px; border-radius: 7px; gap: 7px; }
 .enterprise-header .workspace-search-trigger > span { font-size: 13px; }
 .enterprise-header .workspace-search-trigger kbd { display: none; }
 .enterprise-sidebar { display: none; }
}
@media(max-width:767px) {
 .team-management-tabs > .ant-tabs-nav { padding: 0 12px; }
 .team-management-tabs .ant-tabs-tab { font-size: 14px; }
 .team-management-tabs .ant-tabs-tab + .ant-tabs-tab { margin-left: 22px; }
 .team-member-filters { grid-template-columns: minmax(0,1fr) auto; gap: 10px; padding: 12px; }
 .team-member-filters > .ant-select { grid-column: 1 / -1; }
 .team-member-summary { gap: 12px; padding: 10px 12px; }
}

/* Compact neutral navigation with one selected item and quiet hierarchy. */
[data-theme='light'] { --workspace-nav: #f5f5f5; --wms-border: #e2e4e6; --wms-text: #292b2e; --wms-text-secondary: #6b7076; }
.enterprise-sidebar { padding: 18px 12px 12px; }
.enterprise-sidebar nav, .workspace-mobile-nav nav { gap: 3px; }
.enterprise-sidebar nav .sidebar-module-button, .workspace-mobile-nav nav .sidebar-module-button { min-height: 38px; padding: 9px 12px; gap: 11px; border-radius: 7px; font-size: 14px; font-weight: 500; line-height: 20px; }
.enterprise-sidebar nav .sidebar-module-button > .anticon:first-child, .workspace-mobile-nav nav .sidebar-module-button > .anticon:first-child { flex: 0 0 18px; font-size: 17px; color: var(--wms-text-secondary); }
.enterprise-sidebar nav .sidebar-module-chevron, .workspace-mobile-nav nav .sidebar-module-chevron { margin-left: auto; font-size: 10px; color: #91969b; transform: rotate(-90deg); }
.enterprise-sidebar nav .sidebar-module-chevron.is-open, .workspace-mobile-nav nav .sidebar-module-chevron.is-open { transform: rotate(0); }
.enterprise-sidebar nav .sidebar-module-button.is-active, [data-theme='light'] .enterprise-sidebar nav .sidebar-module-button.is-active, .workspace-mobile-nav nav .sidebar-module-button.is-active { background: transparent; color: var(--wms-text); font-weight: 600; }
.enterprise-sidebar nav .sidebar-module-button.is-home.is-active, [data-theme='light'] .enterprise-sidebar nav .sidebar-module-button.is-home.is-active, .workspace-mobile-nav nav .sidebar-module-button.is-home.is-active { background: var(--wms-surface); box-shadow: 0 1px 3px #00000008; }
.enterprise-sidebar .sidebar-module-links, .workspace-mobile-nav .sidebar-module-links { margin: 2px 0 8px 21px; padding: 0 0 0 12px; border-left: 1px solid var(--wms-border); }
.enterprise-sidebar .sidebar-module-links button, .workspace-mobile-nav .sidebar-module-links button { min-height: 34px; padding: 7px 10px; border-radius: 6px; font-size: 13px; line-height: 20px; color: var(--wms-text-secondary); }
.enterprise-sidebar .sidebar-module-links button > .anticon, .workspace-mobile-nav .sidebar-module-links button > .anticon { display: none; }
.enterprise-sidebar nav .sidebar-module-links button.is-active, [data-theme='light'] .enterprise-sidebar nav .sidebar-module-links button.is-active, .workspace-mobile-nav nav .sidebar-module-links button.is-active { background: var(--wms-surface); color: var(--wms-text); font-weight: 600; box-shadow: 0 1px 3px #00000008; }
.enterprise-sidebar nav .sidebar-module-links button.is-active::after { display: none; }
.sidebar-footer { display: flex; flex: 0 0 auto; align-items: center; gap: 6px; border-top: 1px solid var(--wms-border); padding-top: 10px; margin-top: 12px; }
.sidebar-footer .sidebar-settings { flex: 1; min-width: 0; padding: 0; margin: 0; border: 0; }
.sidebar-footer .sidebar-settings button { min-height: 36px; padding: 8px 12px; font-size: 14px; gap: 11px; border-radius: 7px; }
.sidebar-footer .desktop-sidebar-toggle { flex: 0 0 28px; color: var(--wms-text-secondary); }
.enterprise-sidebar.is-collapsed .sidebar-footer { flex-direction: column; }
.enterprise-sidebar.is-collapsed .sidebar-footer .sidebar-settings { flex: none; width: 100%; }
.enterprise-sidebar.is-collapsed nav .sidebar-module-chevron { display: none; }
.enterprise-sidebar.is-collapsed .sidebar-module-links { margin: 2px 0 8px; padding: 0; border: 0; }
.enterprise-sidebar.is-collapsed .sidebar-module-links button > .anticon { display: inline-flex; }
.enterprise-sidebar.is-collapsed nav .sidebar-module-button { padding-inline: 0; }
.enterprise-sidebar.is-collapsed .sidebar-footer .sidebar-settings button { padding-inline: 0; }
.enterprise-content > .page-shell > .page-title-row { display: none !important; }
.enterprise-content.cockpit-content { padding-top: 18px; }
.workspace-path { min-height: 42px; border-bottom: 0; }
.workspace-path .ant-breadcrumb { font-size: 13px; }
.enterprise-content :is(.filter-panel,.table-panel,.operations-canvas-heading,.reverse-data-panel,.reverse-scan-panel,.team-members-workspace,.team-management-tabs > .ant-tabs-nav) { border-radius: 9px !important; }
.enterprise-content .ant-table-thead > tr > th { font-weight: 500; }
[data-theme='light'] .enterprise-header { background: #fafafa; border-bottom-color: #e0e2e4; color: #292b2e; }
[data-theme='light'] .enterprise-header .enterprise-brand { color: #292b2e; }
[data-theme='light'] .enterprise-header .enterprise-brand b { color: #777d84; }
[data-theme='light'] .enterprise-header .enterprise-brand .brand-symbol > span { background: #1c7c67; }
[data-theme='light'] .enterprise-header .enterprise-brand .brand-symbol > span:nth-child(2) { background: #4c9b84; }
[data-theme='light'] .enterprise-header .enterprise-brand .brand-symbol > span:nth-child(3) { background: #95bfac; }
[data-theme='light'] .enterprise-header .workspace-search-trigger { background: #f0f1f2; border-color: #dedfe1; color: #70757b; box-shadow: none; }
[data-theme='light'] .enterprise-header .workspace-search-trigger:hover { background: #ebedee; border-color: #b8bdc2; }
[data-theme='light'] .enterprise-header .workspace-search-trigger kbd { background: #e3e5e7; color: #7b8187; }
[data-theme='light'] .enterprise-header .enterprise-account > .ant-btn, [data-theme='light'] .enterprise-header .ant-badge .anticon { color: #686e74; }
[data-theme='light'] .enterprise-header .enterprise-account > .ant-btn:hover { background: #e9ecee !important; color: #343a40 !important; }
[data-theme='light'] .enterprise-header .enterprise-user { color: #343a40; }
[data-theme='light'] .enterprise-header .enterprise-user > .anticon { color: #777d84; }
[data-theme='light'] .enterprise-header .enterprise-user .ant-avatar { background: #d8e9e0; color: #28654e; }
[data-theme='light'] .enterprise-header .mobile-navigation-trigger { color: #535a62 !important; }
[data-theme='light'] .enterprise-app .ant-btn-primary:hover, [data-theme='light'] .enterprise-task-panel .ant-btn-primary:hover { background: #208b70; border-color: #208b70; }
[data-theme='dark'] .enterprise-header { background: #121b28; border-color: #2b3645; }
[data-theme='dark'] .enterprise-header .workspace-search-trigger { background: #1c2838; border-color: #354354; color: #a7b5c7; box-shadow: none; }
[data-theme='dark'] .enterprise-header .workspace-search-trigger kbd { background: #2c3a4b; color: #a9b8ca; }
[data-theme='dark'] .enterprise-header .enterprise-user .ant-avatar { background: #22483f; color: #8dd4b5; }
[data-theme='dark'] .enterprise-sidebar { background: #101c2e; }
[data-theme='dark'] .enterprise-sidebar nav .sidebar-module-links button.is-active { background: #203349; }
@media(max-width:767px) {
 .enterprise-content.cockpit-content { padding-top: 12px; }
 .workspace-mobile-nav { padding-top: 4px; }
 .workspace-mobile-nav .sidebar-footer { gap: 0; }
}
/* shadcn/ui behavior, styled with project-owned semantic classes. */
.ui-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; white-space: nowrap; border: 1px solid transparent; border-radius: 7px; font: inherit; font-size: 14px; font-weight: 500; cursor: pointer; text-decoration: none; transition: background-color 140ms, color 140ms; }
.ui-button:focus-visible { outline: 2px solid var(--sc-primary); outline-offset: 2px; }
.ui-button:disabled { pointer-events: none; opacity: .5; }
.ui-button svg, .ui-icon { width: 16px; height: 16px; flex-shrink: 0; pointer-events: none; }
.ui-button-primary { background: var(--sc-primary); color: var(--sc-primary-foreground); }
.ui-button-primary:hover, .ui-button-destructive:hover { filter: brightness(.94); }
.ui-button-destructive { background: #c64750; color: #fff; }
.ui-button-outline { border-color: var(--sc-border); background: var(--sc-background); color: var(--sc-foreground); }
.ui-button-secondary { background: var(--sc-muted); color: var(--sc-foreground); }
.ui-button-ghost { background: transparent; color: var(--sc-foreground); }
.ui-button-outline:hover, .ui-button-secondary:hover, .ui-button-ghost:hover { background: var(--sc-accent); }
.ui-button-link { background: transparent; color: var(--sc-primary); text-underline-offset: 4px; }
.ui-button-link:hover { text-decoration: underline; }
.ui-button-default { height: 36px; padding: 8px 16px; }
.ui-button-small { height: 32px; padding: 0 12px; font-size: 12px; }
.ui-button-large { height: 40px; padding: 0 32px; }
.ui-button-icon { height: 36px; width: 36px; padding: 0; }
.ui-breadcrumb-list { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; overflow-wrap: anywhere; color: var(--sc-muted-foreground); font-size: 14px; list-style: none; padding: 0; margin: 0; }
.ui-breadcrumb-item { display: inline-flex; align-items: center; gap: 6px; }
.ui-breadcrumb-link { color: inherit; text-decoration: none; }
.ui-breadcrumb-link:hover, .ui-breadcrumb-page { color: var(--sc-foreground); }
.ui-breadcrumb-page { font-weight: 400; }
.ui-breadcrumb-separator > svg { width: 14px; height: 14px; }
.ui-breadcrumb-ellipsis { display: flex; height: 36px; width: 36px; align-items: center; justify-content: center; }
.ui-visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.ui-menu-content { z-index: 1200; max-height: var(--radix-dropdown-menu-content-available-height); min-width: 128px; overflow: auto; padding: 4px; border: 1px solid var(--sc-border); border-radius: 8px; background: var(--sc-popover); color: var(--sc-foreground); box-shadow: 0 8px 28px #00000015; transform-origin: var(--radix-dropdown-menu-content-transform-origin); }
.ui-menu-item, .ui-menu-sub-trigger, .ui-menu-choice { position: relative; display: flex; align-items: center; gap: 8px; padding: 6px 8px; border-radius: 5px; font-size: 14px; cursor: default; user-select: none; outline: none; }
.ui-menu-item[data-highlighted], .ui-menu-sub-trigger[data-highlighted], .ui-menu-sub-trigger[data-state='open'], .ui-menu-choice[data-highlighted] { background: var(--sc-accent); }
.ui-menu-item[data-disabled], .ui-menu-choice[data-disabled] { pointer-events: none; opacity: .5; }
.ui-menu-item svg, .ui-menu-sub-trigger svg { width: 16px; height: 16px; flex-shrink: 0; pointer-events: none; }
.ui-menu-choice, .ui-menu-inset { padding-left: 32px; }
.ui-menu-indicator { position: absolute; left: 8px; display: flex; align-items: center; justify-content: center; width: 14px; height: 14px; }
.ui-menu-radio-dot { width: 8px; height: 8px; fill: currentColor; }
.ui-menu-label { padding: 6px 8px; font-size: 14px; font-weight: 600; }
.ui-menu-label.ui-menu-inset { padding-left: 32px; }
.ui-menu-separator { height: 1px; margin: 4px -4px; background: var(--sc-border); }
.ui-menu-chevron, .ui-menu-shortcut { margin-left: auto; }
.ui-menu-shortcut { font-size: 12px; letter-spacing: 1px; opacity: .6; }
.ui-tooltip { z-index: 1250; overflow: hidden; padding: 6px 12px; border-radius: 6px; background: var(--sc-foreground); color: var(--sc-background); font-size: 12px; transform-origin: var(--radix-tooltip-content-transform-origin); }
.sc-logout-item { color: #c64750; }
@keyframes ui-popover-enter { from { opacity: 0; transform: scale(.97); } to { opacity: 1; transform: scale(1); } }
@media (prefers-reduced-motion: no-preference) { .ui-menu-content[data-state='open'], .ui-tooltip[data-state='delayed-open'] { animation: ui-popover-enter 120ms ease-out; } }
:root, [data-theme='light'] {
  --sc-background: #ffffff;
  --sc-foreground: #25282d;
  --sc-muted: #f0f1f3;
  --sc-muted-foreground: #717780;
  --sc-popover: #ffffff;
  --sc-primary: #18795f;
  --sc-primary-foreground: #ffffff;
  --sc-accent: #e9ecef;
  --sc-border: #e0e3e7;
  --sc-sidebar: #f7f8f9;
  --sc-canvas: #f1f2f4;
  --sc-active: #e8eeeb;
}
[data-theme='dark'] {
  --sc-background: #1c1e22;
  --sc-foreground: #eaedf0;
  --sc-muted: #24272c;
  --sc-muted-foreground: #9aa2ae;
  --sc-popover: #22252a;
  --sc-primary: #75c9ac;
  --sc-primary-foreground: #102a22;
  --sc-accent: #2c3036;
  --sc-border: #32363e;
  --sc-sidebar: #181a1e;
  --sc-canvas: #131519;
  --sc-active: #25352e;
}

/* Navigation and business surfaces share the same theme tokens. */
.sc-ui-menu { z-index: 1200; min-width: 208px; padding: 5px; color: var(--sc-foreground); background: var(--sc-popover); border: 1px solid var(--sc-border); border-radius: 9px; box-shadow: 0 8px 28px #00000015; }
.sc-ui-menu [role='menuitem'] { min-height: 34px; cursor: pointer; border-radius: 5px; }
.sc-ui-menu [role='menuitem'][data-highlighted] { background: var(--sc-accent); }
.sc-ui-menu svg { width: 16px; height: 16px; }
.sc-tooltip { z-index: 1250; color: var(--sc-background); background: var(--sc-foreground); font-size: 12px; }
.enterprise-app.shadcn-workspace { background: var(--sc-canvas); color: var(--sc-foreground); }
.enterprise-header.shadcn-shell-header { background: var(--sc-background); border-bottom: 1px solid var(--sc-border); grid-template-columns: minmax(190px,1fr) minmax(240px,380px) minmax(190px,1fr); gap: 24px; padding-inline: 24px; height: 60px; min-height: 60px; flex-basis: 60px; }
.sc-brand { display: inline-flex; align-items: center; gap: 11px; justify-self: start; background: transparent; border: 0; padding: 0; color: var(--sc-foreground); font-size: 20px; font-weight: 650; cursor: pointer; white-space: nowrap; }
.sc-brand .brand-symbol { height: 25px; transform: none; grid-template-columns: repeat(3,6px); gap: 3px; }
.sc-brand .brand-symbol span { border-radius: 2px; background: var(--sc-primary); height: 19px; }
.sc-brand .brand-symbol span:nth-child(2) { height: 25px; opacity: .7; }
.sc-brand .brand-symbol span:nth-child(3) { height: 15px; opacity: .4; }
.sc-brand b { color: var(--sc-muted-foreground); font-weight: 500; font-size: 12px; margin-left: 6px; letter-spacing: 1px; }
.shadcn-shell-header .workspace-search-trigger { height: 35px !important; width: 100%; justify-content: flex-start; gap: 9px; padding: 0 11px !important; border: 1px solid var(--sc-border) !important; border-radius: 7px !important; background: var(--sc-muted) !important; color: var(--sc-muted-foreground) !important; box-shadow: none !important; font-size: 13px; }
.shadcn-shell-header .workspace-search-trigger svg { width: 15px; height: 15px; }
.shadcn-shell-header .workspace-search-trigger kbd { margin-left: auto; border: 1px solid var(--sc-border); padding: 0 4px; background: var(--sc-background) !important; color: var(--sc-muted-foreground) !important; border-radius: 4px; font-size: 10px; line-height: 18px; }
.sc-header-actions { display: flex; align-items: center; gap: 5px; justify-self: end; }
.sc-icon-button { display: inline-flex; align-items: center; justify-content: center; width: 33px; height: 33px; padding: 0; border: 0; background: transparent; color: var(--sc-muted-foreground); border-radius: 7px; cursor: pointer; }
.sc-icon-button:hover { background: var(--sc-accent); color: var(--sc-foreground); }
.sc-icon-button svg { width: 17px; height: 17px; stroke-width: 1.7; }
.sc-account-trigger { display: inline-flex; align-items: center; gap: 9px; height: 37px; margin-left: 5px; padding: 3px 7px 3px 4px; border: 1px solid transparent; background: transparent; border-radius: 7px; color: var(--sc-foreground); font-size: 13px; cursor: pointer; }
.sc-account-trigger:hover, .sc-account-trigger[data-state='open'] { border-color: var(--sc-border); background: var(--sc-muted); }
.sc-account-trigger > svg { width: 12px; height: 12px; color: var(--sc-muted-foreground); }
.sc-avatar { display: inline-grid; place-items: center; flex: 0 0 27px; width: 27px; height: 27px; border-radius: 6px; background: var(--sc-active); color: var(--sc-primary); font-weight: 600; overflow: hidden; }
.sc-avatar img { width: 100%; height: 100%; object-fit: cover; }
.sc-account-label { display: flex; flex-direction: column; gap: 3px; padding: 6px 4px; }
.sc-account-label span { font-size: 12px; font-weight: 400; color: var(--sc-muted-foreground); }
.sc-sidebar.enterprise-sidebar { flex-basis: 214px; width: 214px; padding: 14px 10px 10px; background: var(--sc-sidebar); border-color: var(--sc-border); }
.sc-sidebar.enterprise-sidebar.is-collapsed { flex-basis: 60px; width: 60px; padding-inline: 8px; }
.sc-sidebar-inner { display: flex; flex-direction: column; width: 100%; flex: 1; min-height: 0; }
.sc-sidebar-scroll { flex: 1 1 0; min-height: 0; overflow: auto; scrollbar-width: thin; }
.sc-sidebar-menu { display: flex; flex-direction: column; gap: 3px; margin: 0; padding: 0; list-style: none; }
.sc-sidebar-inner .sc-nav-trigger { display: flex; align-items: center; justify-content: flex-start; gap: 10px; width: 100%; min-height: 36px; height: 36px; padding: 0 10px; border: 0; border-radius: 6px; background: transparent; color: var(--sc-muted-foreground); font-size: 14px; font-weight: 500; line-height: 20px; cursor: pointer; box-shadow: none; text-decoration: none; }
.sc-sidebar-inner .sc-nav-trigger:hover { background: var(--sc-accent); color: var(--sc-foreground); }
.sc-sidebar-inner .sc-nav-trigger[data-active='true'] { color: var(--sc-foreground); }
.sc-sidebar-inner .sc-nav-trigger[data-home='true'][data-active='true'] { background: var(--sc-background); box-shadow: 0 1px 3px #00000009; }
.sc-sidebar-inner .sc-nav-trigger > svg { flex: 0 0 17px; width: 17px; height: 17px; stroke-width: 1.7; }
.sc-sidebar-inner .sc-nav-trigger > .sc-chevron { margin-left: auto; flex-basis: 13px; width: 13px; height: 13px; color: var(--sc-muted-foreground); transform: rotate(-90deg); }
.sc-sidebar-inner .sc-nav-trigger[data-state='open'] > .sc-chevron { transform: rotate(0); }
.sc-sidebar-sub { display: flex; flex-direction: column; gap: 2px; padding: 3px 0 5px 14px; margin: 2px 0 4px 18px; border-left: 1px solid var(--sc-border); }
.sc-sidebar-inner .sc-nav-link { display: flex; align-items: center; width: 100%; min-height: 32px; padding: 5px 9px; color: var(--sc-muted-foreground); border: 1px solid transparent; border-radius: 5px; font-size: 13px; line-height: 20px; text-decoration: none; }
.sc-sidebar-inner .sc-nav-link:hover { color: var(--sc-foreground); background: var(--sc-accent); }
.sc-sidebar-inner .sc-nav-link[data-active='true'] { background: var(--sc-background); color: var(--sc-foreground); border-color: var(--sc-border); font-weight: 600; box-shadow: 0 1px 2px #00000005; }
.sc-sidebar-system { display: flex; flex-direction: column; gap: 3px; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--sc-border); }
.sc-sidebar-footer { display: flex; align-items: center; gap: 3px; flex: 0 0 auto; padding-top: 8px; margin-top: 10px; border-top: 1px solid var(--sc-border); }
.sc-sidebar-footer > a { flex: 1; min-width: 0; }
.sc-sidebar-footer .sc-icon-button { flex: 0 0 28px; width: 28px; }
.sc-sidebar-inner[data-collapsed='true'] .sc-nav-trigger { padding: 0; justify-content: center; }
.sc-sidebar-inner[data-collapsed='true'] .sc-nav-label, .sc-sidebar-inner[data-collapsed='true'] .sc-chevron, .sc-sidebar-inner[data-collapsed='true'] .sc-sidebar-sub { display: none; }
.sc-sidebar-inner[data-collapsed='true'] .sc-sidebar-footer { flex-direction: column; }
.sc-sidebar-inner[data-collapsed='true'] .sc-sidebar-footer > a { flex: none; width: 100%; }
.shadcn-workspace .workspace-path { min-height: 48px; padding-inline: 24px; flex: 0 0 auto; }
.sc-breadcrumb ol { display: flex; align-items: center; gap: 9px; margin: 0; padding: 0; list-style: none; font-size: 13px; }
.sc-breadcrumb li { display: inline-flex; align-items: center; }
.sc-breadcrumb a { color: var(--sc-muted-foreground); padding: 3px 0; text-decoration: none; }
.sc-breadcrumb a:hover { color: var(--sc-foreground); background: transparent; }
.sc-breadcrumb a[aria-current='page'] { color: var(--sc-foreground); font-weight: 500; }
.sc-breadcrumb li[role='presentation'] { color: var(--sc-muted-foreground); opacity: .6; }
.sc-breadcrumb svg { width: 13px; height: 13px; }
.sc-breadcrumb a[aria-haspopup='menu'] { border-radius: 4px; }
.sc-breadcrumb a[aria-haspopup='menu']:hover, .sc-breadcrumb a[data-state='open'] { color: var(--sc-primary); }
.sc-breadcrumb-menu { min-width: 160px; max-width: min(260px, calc(100vw - 24px)); }
.sc-breadcrumb-option { justify-content: space-between; gap: 24px; color: var(--sc-foreground); text-decoration: none; }
.sc-breadcrumb-option[data-current='true'] { color: var(--sc-primary); background: var(--sc-active); }
.sc-breadcrumb-option > svg { width: 14px; height: 14px; }
.shadcn-workspace .enterprise-content.cockpit-content { padding: 0 24px 22px; background: var(--sc-canvas); }
.shadcn-mobile-trigger { display: none; }
.shadcn-mobile-navigation .ant-drawer-body { display: flex; padding: 12px; background: var(--sc-sidebar); }
.shadcn-mobile-navigation .sc-sidebar-footer .sc-icon-button { display: none; }
@media(max-width:1000px) {
  .enterprise-header.shadcn-shell-header { grid-template-columns: minmax(100px,1fr) minmax(200px,320px) minmax(100px,1fr); padding-inline: 18px; gap: 16px; }
  .sc-account-name { display: none; }
}
@media(max-width:767px) {
  .enterprise-header.shadcn-shell-header { grid-template-columns: 28px 30px minmax(80px,1fr) auto; padding-inline: 12px; gap: 7px; }
  .shadcn-mobile-trigger { display: inline-flex; }
  .sc-brand > span:last-child { display: none; }
  .shadcn-shell-header .workspace-search-trigger kbd { display: none; }
  .sc-header-actions { gap: 1px; }
  .sc-header-actions > .sc-icon-button, .sc-header-actions > .ant-btn { width: 28px; }
  .sc-account-trigger { padding: 2px; margin-left: 3px; }
  .sc-account-trigger > svg { display: none; }
  .shadcn-workspace .workspace-path { padding-inline: 13px; min-height: 42px; }
  .shadcn-workspace .enterprise-content.cockpit-content { padding: 0 12px 14px; }
}

/* Shared palette for business screens and the navigation shell. */
:root, [data-theme='light'], [data-theme='dark'] {
  --wms-accent: var(--sc-primary);
  --wms-text: var(--sc-foreground);
  --wms-text-secondary: var(--sc-muted-foreground);
  --wms-surface: var(--sc-background);
  --wms-surface-soft: var(--sc-muted);
  --wms-border: var(--sc-border);
  --wms-canvas: var(--sc-canvas);
  --workspace-background: var(--sc-canvas);
  --workspace-nav: var(--sc-sidebar);
}
[data-theme] .enterprise-header.shadcn-shell-header { background: var(--sc-background); border-color: var(--sc-border); }
[data-theme] .sc-sidebar.enterprise-sidebar { background: var(--sc-sidebar); }
.shadcn-workspace .enterprise-content.cockpit-content { padding-top: 16px; }
.sc-header-actions .ant-badge { color: inherit; line-height: 1; }
.sc-sidebar-inner a, .sc-sidebar-inner button, .sc-ui-menu { font-family: inherit; }
.sc-sidebar-inner a:focus-visible, .sc-sidebar-inner button:focus-visible { outline: 2px solid var(--sc-primary); outline-offset: -2px; }
.sc-nav-trigger:active, .sc-icon-button:active { transform: translateY(1px); }
@media(max-width:767px) { .shadcn-workspace .enterprise-content.cockpit-content { padding-top: 12px; } }
